@industry-theme/repository-composition-panels 0.7.3 → 0.7.4

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.
Files changed (29) hide show
  1. package/dist/{BufferResource-BscnQCBn.js → BufferResource-BySfSNUb.js} +2 -2
  2. package/dist/{BufferResource-BscnQCBn.js.map → BufferResource-BySfSNUb.js.map} +1 -1
  3. package/dist/{CanvasRenderer-DXt8RTfi.js → CanvasRenderer-DHF2Dl6A.js} +3 -3
  4. package/dist/{CanvasRenderer-DXt8RTfi.js.map → CanvasRenderer-DHF2Dl6A.js.map} +1 -1
  5. package/dist/{Filter-DUJ3jI7H.js → Filter-BcZawFFP.js} +2 -2
  6. package/dist/{Filter-DUJ3jI7H.js.map → Filter-BcZawFFP.js.map} +1 -1
  7. package/dist/{RenderTargetSystem-D5QkA2zW.js → RenderTargetSystem-CcUjlcEn.js} +3 -3
  8. package/dist/{RenderTargetSystem-D5QkA2zW.js.map → RenderTargetSystem-CcUjlcEn.js.map} +1 -1
  9. package/dist/{WebGLRenderer-B_nBw2ba.js → WebGLRenderer-B9IXLBU3.js} +4 -4
  10. package/dist/{WebGLRenderer-B_nBw2ba.js.map → WebGLRenderer-B9IXLBU3.js.map} +1 -1
  11. package/dist/{WebGPURenderer-B2Pmx2Hh.js → WebGPURenderer-CKeryiWg.js} +4 -4
  12. package/dist/{WebGPURenderer-B2Pmx2Hh.js.map → WebGPURenderer-CKeryiWg.js.map} +1 -1
  13. package/dist/{browserAll-CiG96Bal.js → browserAll-Dvjnb3Ss.js} +3 -3
  14. package/dist/{browserAll-CiG96Bal.js.map → browserAll-Dvjnb3Ss.js.map} +1 -1
  15. package/dist/{index-D-SkQLOk.js → index-BL0L_jZJ.js} +213 -19
  16. package/dist/{index-D-SkQLOk.js.map → index-BL0L_jZJ.js.map} +1 -1
  17. package/dist/{init-DBllvWLw.js → init-NfYaoDuU.js} +3 -3
  18. package/dist/{init-DBllvWLw.js.map → init-NfYaoDuU.js.map} +1 -1
  19. package/dist/panels/PackageCompositionPanel.d.ts.map +1 -1
  20. package/dist/panels/components/PackageLoadingGraph.d.ts +3 -0
  21. package/dist/panels/components/PackageLoadingGraph.d.ts.map +1 -0
  22. package/dist/panels/components/index.d.ts +1 -0
  23. package/dist/panels/components/index.d.ts.map +1 -1
  24. package/dist/panels.bundle.js +1 -1
  25. package/dist/webworkerAll-q1iOXUTF.js +3 -0
  26. package/dist/webworkerAll-q1iOXUTF.js.map +1 -0
  27. package/package.json +1 -1
  28. package/dist/webworkerAll-ApBSWfHO.js +0 -3
  29. package/dist/webworkerAll-ApBSWfHO.js.map +0 -1
@@ -1272,7 +1272,7 @@ const RustIcon = ({ size }) => /* @__PURE__ */ jsxs(
1272
1272
  width: size,
1273
1273
  height: size,
1274
1274
  viewBox: "0 0 24 24",
1275
- fill: "#000000",
1275
+ fill: "#DEA584",
1276
1276
  role: "img",
1277
1277
  xmlns: "http://www.w3.org/2000/svg",
1278
1278
  children: [
@@ -1567,6 +1567,211 @@ const InfoItem = ({ badge, title, description, theme: theme2 }) => /* @__PURE__
1567
1567
  ]
1568
1568
  }
1569
1569
  );
1570
+ const PM_COLORS = {
1571
+ npm: "#CB3837",
1572
+ yarn: "#2C8EBB",
1573
+ pnpm: "#F69220",
1574
+ bun: "#FBF0DF",
1575
+ pip: "#3776AB",
1576
+ poetry: "#60A5FA",
1577
+ cargo: "#DEA584"
1578
+ };
1579
+ const PackageLoadingGraph = () => {
1580
+ const { theme: theme2 } = useTheme();
1581
+ const dropDuration = 1;
1582
+ const staggerDelay = 0.7;
1583
+ const pauseDuration = 4;
1584
+ const fadeDuration = 0.4;
1585
+ const boxes = [
1586
+ // Bottom row - drops first, left to right (no bounce)
1587
+ { id: "pkg-1", x: 20, finalY: 78, delay: 0, size: "md", bounce: [0, 0, 0], pm: "npm" },
1588
+ { id: "pkg-2", x: 40, finalY: 78, delay: staggerDelay * 1, size: "md", bounce: [0, 0, 0], pm: "yarn" },
1589
+ { id: "pkg-3", x: 60, finalY: 78, delay: staggerDelay * 2, size: "md", bounce: [0, 0, 0], pm: "pnpm" },
1590
+ { id: "pkg-4", x: 80, finalY: 78, delay: staggerDelay * 3, size: "md", bounce: [0, 0, 0], pm: "cargo" },
1591
+ // Middle row - stacks on top (bounces)
1592
+ { id: "pkg-5", x: 35, finalY: 50, delay: staggerDelay * 4, size: "md", bounce: [9, 4, 0], pm: "pip" },
1593
+ { id: "pkg-6", x: 65, finalY: 50, delay: staggerDelay * 5, size: "md", bounce: [11, 5, 0], pm: "poetry" },
1594
+ // Top - crown of the pyramid (bounces + wobbles!)
1595
+ { id: "pkg-7", x: 50, finalY: 22, delay: staggerDelay * 6, size: "lg", bounce: [15, 7, 6], pm: "bun" }
1596
+ ];
1597
+ const bounceDuration = 0.6;
1598
+ const lastDropEnd = boxes[boxes.length - 1].delay + dropDuration + bounceDuration;
1599
+ const totalCycleDuration = lastDropEnd + pauseDuration + fadeDuration;
1600
+ const sizeMap = {
1601
+ sm: { width: 42, height: 38, iconSize: 18 },
1602
+ md: { width: 54, height: 48, iconSize: 24 },
1603
+ lg: { width: 68, height: 60, iconSize: 30 }
1604
+ };
1605
+ return /* @__PURE__ */ jsxs(
1606
+ "div",
1607
+ {
1608
+ style: {
1609
+ height: "100%",
1610
+ display: "flex",
1611
+ flexDirection: "column",
1612
+ alignItems: "center",
1613
+ justifyContent: "center",
1614
+ color: theme2.colors.textSecondary,
1615
+ padding: theme2.space[5]
1616
+ },
1617
+ children: [
1618
+ /* @__PURE__ */ jsx("style", { children: `
1619
+ ${boxes.map((box, index2) => {
1620
+ const [bounce1, bounce2, wobble] = box.bounce;
1621
+ const dropStart = box.delay / totalCycleDuration * 100;
1622
+ const landPoint = (box.delay + dropDuration * 0.6) / totalCycleDuration * 100;
1623
+ const bounce1Up = (box.delay + dropDuration * 0.7) / totalCycleDuration * 100;
1624
+ const bounce1Down = (box.delay + dropDuration * 0.8) / totalCycleDuration * 100;
1625
+ const bounce2Up = (box.delay + dropDuration * 0.9) / totalCycleDuration * 100;
1626
+ const settlePoint = (box.delay + dropDuration + bounceDuration) / totalCycleDuration * 100;
1627
+ const fadeStart = (lastDropEnd + pauseDuration) / totalCycleDuration * 100;
1628
+ return `
1629
+ @keyframes boxDrop-${index2} {
1630
+ 0% {
1631
+ opacity: 0;
1632
+ transform: translate(-50%, -50%) translateY(-120px) rotate(-5deg);
1633
+ }
1634
+ ${dropStart}% {
1635
+ opacity: 0;
1636
+ transform: translate(-50%, -50%) translateY(-120px) rotate(-5deg);
1637
+ }
1638
+ ${landPoint}% {
1639
+ opacity: 1;
1640
+ transform: translate(-50%, -50%) translateY(4px) rotate(${wobble}deg);
1641
+ }
1642
+ ${bounce1Up}% {
1643
+ opacity: 1;
1644
+ transform: translate(-50%, -50%) translateY(-${bounce1}px) rotate(${-wobble * 0.5}deg);
1645
+ }
1646
+ ${bounce1Down}% {
1647
+ opacity: 1;
1648
+ transform: translate(-50%, -50%) translateY(2px) rotate(${wobble * 0.3}deg);
1649
+ }
1650
+ ${bounce2Up}% {
1651
+ opacity: 1;
1652
+ transform: translate(-50%, -50%) translateY(-${bounce2}px) rotate(${-wobble * 0.2}deg);
1653
+ }
1654
+ ${settlePoint}% {
1655
+ opacity: 1;
1656
+ transform: translate(-50%, -50%) translateY(0) rotate(0deg);
1657
+ }
1658
+ ${fadeStart}% {
1659
+ opacity: 1;
1660
+ transform: translate(-50%, -50%) translateY(0) rotate(0deg);
1661
+ }
1662
+ 100% {
1663
+ opacity: 0;
1664
+ transform: translate(-50%, -50%) translateY(20px) rotate(0deg);
1665
+ }
1666
+ }
1667
+ `;
1668
+ }).join("")}
1669
+
1670
+ @keyframes shadowPulse {
1671
+ 0%, 100% {
1672
+ opacity: 0.1;
1673
+ transform: translateX(-50%) scaleX(0.5);
1674
+ }
1675
+ 50% {
1676
+ opacity: 0.2;
1677
+ transform: translateX(-50%) scaleX(1);
1678
+ }
1679
+ }
1680
+ ` }),
1681
+ /* @__PURE__ */ jsxs(
1682
+ "div",
1683
+ {
1684
+ style: {
1685
+ position: "relative",
1686
+ width: "100%",
1687
+ maxWidth: "400px",
1688
+ height: "220px",
1689
+ marginBottom: theme2.space[4]
1690
+ },
1691
+ children: [
1692
+ boxes.map((box) => {
1693
+ const { width } = sizeMap[box.size];
1694
+ const color2 = PM_COLORS[box.pm];
1695
+ return /* @__PURE__ */ jsx(
1696
+ "div",
1697
+ {
1698
+ style: {
1699
+ position: "absolute",
1700
+ left: `${box.x}%`,
1701
+ top: `${box.finalY + 12}%`,
1702
+ width: width * 0.8,
1703
+ height: 6,
1704
+ borderRadius: "50%",
1705
+ backgroundColor: color2,
1706
+ opacity: 0.2,
1707
+ transform: "translateX(-50%)",
1708
+ animation: `shadowPulse ${totalCycleDuration}s ease-in-out infinite`,
1709
+ animationDelay: `${box.delay}s`
1710
+ }
1711
+ },
1712
+ `shadow-${box.id}`
1713
+ );
1714
+ }),
1715
+ boxes.map((box, index2) => {
1716
+ const { width, height, iconSize } = sizeMap[box.size];
1717
+ const color2 = PM_COLORS[box.pm];
1718
+ return /* @__PURE__ */ jsx(
1719
+ "div",
1720
+ {
1721
+ style: {
1722
+ position: "absolute",
1723
+ left: `${box.x}%`,
1724
+ top: `${box.finalY}%`,
1725
+ width,
1726
+ height,
1727
+ borderRadius: theme2.radii[2],
1728
+ backgroundColor: theme2.colors.backgroundSecondary,
1729
+ border: `2px solid ${color2}`,
1730
+ display: "flex",
1731
+ alignItems: "center",
1732
+ justifyContent: "center",
1733
+ opacity: 0,
1734
+ boxShadow: `0 4px 12px ${color2}40`,
1735
+ animation: `boxDrop-${index2} ${totalCycleDuration}s ease-out infinite`
1736
+ },
1737
+ children: /* @__PURE__ */ jsx(PackageManagerIcon, { packageManager: box.pm, size: iconSize })
1738
+ },
1739
+ box.id
1740
+ );
1741
+ })
1742
+ ]
1743
+ }
1744
+ ),
1745
+ /* @__PURE__ */ jsx(
1746
+ "div",
1747
+ {
1748
+ style: {
1749
+ fontSize: theme2.fontSizes[2],
1750
+ fontFamily: theme2.fonts.body,
1751
+ fontWeight: theme2.fontWeights.medium,
1752
+ color: theme2.colors.text,
1753
+ textAlign: "center",
1754
+ marginBottom: theme2.space[2]
1755
+ },
1756
+ children: "Loading packages..."
1757
+ }
1758
+ ),
1759
+ /* @__PURE__ */ jsx(
1760
+ "div",
1761
+ {
1762
+ style: {
1763
+ fontSize: theme2.fontSizes[1],
1764
+ fontFamily: theme2.fonts.body,
1765
+ color: theme2.colors.textSecondary,
1766
+ textAlign: "center"
1767
+ },
1768
+ children: "Discovering dependencies and configurations"
1769
+ }
1770
+ )
1771
+ ]
1772
+ }
1773
+ );
1774
+ };
1570
1775
  const typeLabels = {
1571
1776
  production: "prod",
1572
1777
  development: "dev",
@@ -4412,18 +4617,7 @@ const PackageCompositionPanelContent = ({
4412
4617
  return packages.find((p2) => p2.id === selectedPackageId) || null;
4413
4618
  }, [selectedPackageId, packages]);
4414
4619
  if (isLoading) {
4415
- return /* @__PURE__ */ jsx(
4416
- "div",
4417
- {
4418
- style: {
4419
- padding: "20px",
4420
- textAlign: "center",
4421
- color: theme2.colors.textSecondary,
4422
- fontFamily: theme2.fonts.body
4423
- },
4424
- children: "Loading packages..."
4425
- }
4426
- );
4620
+ return /* @__PURE__ */ jsx(PackageLoadingGraph, {});
4427
4621
  }
4428
4622
  if (packages.length === 0) {
4429
4623
  return /* @__PURE__ */ jsx(EmptyDependencies, {});
@@ -105994,7 +106188,7 @@ const browserExt = {
105994
106188
  },
105995
106189
  test: () => true,
105996
106190
  load: async () => {
105997
- await import("./browserAll-CiG96Bal.js");
106191
+ await import("./browserAll-Dvjnb3Ss.js");
105998
106192
  }
105999
106193
  };
106000
106194
  const webworkerExt = {
@@ -106005,7 +106199,7 @@ const webworkerExt = {
106005
106199
  },
106006
106200
  test: () => typeof self !== "undefined" && self.WorkerGlobalScope !== void 0,
106007
106201
  load: async () => {
106008
- await import("./webworkerAll-ApBSWfHO.js");
106202
+ await import("./webworkerAll-q1iOXUTF.js");
106009
106203
  }
106010
106204
  };
106011
106205
  class ObservablePoint {
@@ -118248,19 +118442,19 @@ async function autoDetectRenderer(options) {
118248
118442
  for (let i2 = 0; i2 < preferredOrder.length; i2++) {
118249
118443
  const rendererType = preferredOrder[i2];
118250
118444
  if (rendererType === "webgpu" && await isWebGPUSupported()) {
118251
- const { WebGPURenderer } = await import("./WebGPURenderer-B2Pmx2Hh.js");
118445
+ const { WebGPURenderer } = await import("./WebGPURenderer-CKeryiWg.js");
118252
118446
  RendererClass = WebGPURenderer;
118253
118447
  finalOptions = { ...options, ...options.webgpu };
118254
118448
  break;
118255
118449
  } else if (rendererType === "webgl" && isWebGLSupported(
118256
118450
  options.failIfMajorPerformanceCaveat ?? AbstractRenderer.defaultOptions.failIfMajorPerformanceCaveat
118257
118451
  )) {
118258
- const { WebGLRenderer } = await import("./WebGLRenderer-B_nBw2ba.js");
118452
+ const { WebGLRenderer } = await import("./WebGLRenderer-B9IXLBU3.js");
118259
118453
  RendererClass = WebGLRenderer;
118260
118454
  finalOptions = { ...options, ...options.webgl };
118261
118455
  break;
118262
118456
  } else if (rendererType === "canvas") {
118263
- const { CanvasRenderer } = await import("./CanvasRenderer-DXt8RTfi.js");
118457
+ const { CanvasRenderer } = await import("./CanvasRenderer-DHF2Dl6A.js");
118264
118458
  RendererClass = CanvasRenderer;
118265
118459
  finalOptions = { ...options, ...options.canvasOptions };
118266
118460
  break;
@@ -138421,4 +138615,4 @@ export {
138421
138615
  UPDATE_PRIORITY as y,
138422
138616
  removeItems as z
138423
138617
  };
138424
- //# sourceMappingURL=index-D-SkQLOk.js.map
138618
+ //# sourceMappingURL=index-BL0L_jZJ.js.map