@module-federation/devtools 0.0.0-chore-bump-node-22-20260710161714

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 (164) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +11 -0
  3. package/dist/es/App.css +13 -0
  4. package/dist/es/App.js +498 -0
  5. package/dist/es/App.module.js +5 -0
  6. package/dist/es/App_module.css +307 -0
  7. package/dist/es/component/DependencyGraph/index.js +204 -0
  8. package/dist/es/component/DependencyGraph/index.module.js +5 -0
  9. package/dist/es/component/DependencyGraph/index_module.css +100 -0
  10. package/dist/es/component/DependencyGraphItem/index.js +95 -0
  11. package/dist/es/component/DependencyGraphItem/index.module.js +5 -0
  12. package/dist/es/component/DependencyGraphItem/index_module.css +95 -0
  13. package/dist/es/component/Form/index.js +363 -0
  14. package/dist/es/component/Form/index.module.js +5 -0
  15. package/dist/es/component/Form/index_module.css +198 -0
  16. package/dist/es/component/LanguageSwitch.js +50 -0
  17. package/dist/es/component/Layout/index.js +470 -0
  18. package/dist/es/component/Layout/index.module.js +5 -0
  19. package/dist/es/component/Layout/index_module.css +68 -0
  20. package/dist/es/component/LoadingTrace/index.js +944 -0
  21. package/dist/es/component/LoadingTrace/index.module.js +5 -0
  22. package/dist/es/component/LoadingTrace/index_module.css +876 -0
  23. package/dist/es/component/ModuleInfo/index.js +313 -0
  24. package/dist/es/component/ModuleInfo/index.module.js +5 -0
  25. package/dist/es/component/ModuleInfo/index_module.css +184 -0
  26. package/dist/es/component/SharedDepsExplorer/FocusResultDisplay.js +35 -0
  27. package/dist/es/component/SharedDepsExplorer/FocusResultDisplay.module.js +5 -0
  28. package/dist/es/component/SharedDepsExplorer/FocusResultDisplay_module.css +45 -0
  29. package/dist/es/component/SharedDepsExplorer/index.js +636 -0
  30. package/dist/es/component/SharedDepsExplorer/index.module.js +5 -0
  31. package/dist/es/component/SharedDepsExplorer/index_module.css +467 -0
  32. package/dist/es/component/SharedDepsExplorer/share-utils.js +222 -0
  33. package/dist/es/component/ThemeToggle.js +19 -0
  34. package/dist/es/component/ThemeToggle.module.js +5 -0
  35. package/dist/es/component/ThemeToggle_module.css +12 -0
  36. package/dist/es/hooks/useDevtoolsTheme.js +77 -0
  37. package/dist/es/i18n/index.js +688 -0
  38. package/dist/es/init.js +8 -0
  39. package/dist/es/template/constant.js +51 -0
  40. package/dist/es/template/index.js +1 -0
  41. package/dist/es/utils/chrome/fast-refresh.js +342 -0
  42. package/dist/es/utils/chrome/index.js +284 -0
  43. package/dist/es/utils/chrome/messages.js +12 -0
  44. package/dist/es/utils/chrome/observability-plugin.js +93 -0
  45. package/dist/es/utils/chrome/observability-shared.js +99 -0
  46. package/dist/es/utils/chrome/observability.js +208 -0
  47. package/dist/es/utils/chrome/override-remote.js +2 -0
  48. package/dist/es/utils/chrome/post-message-init.js +5 -0
  49. package/dist/es/utils/chrome/post-message-listener.js +39 -0
  50. package/dist/es/utils/chrome/post-message-start.js +10 -0
  51. package/dist/es/utils/chrome/post-message.js +71 -0
  52. package/dist/es/utils/chrome/safe-post-message.js +124 -0
  53. package/dist/es/utils/chrome/snapshot-plugin.js +2 -0
  54. package/dist/es/utils/chrome/storage.js +50 -0
  55. package/dist/es/utils/data/index.js +59 -0
  56. package/dist/es/utils/index.js +4 -0
  57. package/dist/es/utils/sdk/graph.js +190 -0
  58. package/dist/es/utils/sdk/index.js +70 -0
  59. package/dist/es/utils/types/common.js +0 -0
  60. package/dist/es/utils/types/index.js +1 -0
  61. package/dist/es/vendor/basic-proxy-core.js +155 -0
  62. package/dist/es/worker/index.js +187 -0
  63. package/dist/lib/App.css +13 -0
  64. package/dist/lib/App.js +519 -0
  65. package/dist/lib/App.module.js +24 -0
  66. package/dist/lib/App_module.css +307 -0
  67. package/dist/lib/component/DependencyGraph/index.js +225 -0
  68. package/dist/lib/component/DependencyGraph/index.module.js +24 -0
  69. package/dist/lib/component/DependencyGraph/index_module.css +100 -0
  70. package/dist/lib/component/DependencyGraphItem/index.js +124 -0
  71. package/dist/lib/component/DependencyGraphItem/index.module.js +24 -0
  72. package/dist/lib/component/DependencyGraphItem/index_module.css +95 -0
  73. package/dist/lib/component/Form/index.js +372 -0
  74. package/dist/lib/component/Form/index.module.js +24 -0
  75. package/dist/lib/component/Form/index_module.css +198 -0
  76. package/dist/lib/component/LanguageSwitch.js +79 -0
  77. package/dist/lib/component/Layout/index.js +471 -0
  78. package/dist/lib/component/Layout/index.module.js +24 -0
  79. package/dist/lib/component/Layout/index_module.css +68 -0
  80. package/dist/lib/component/LoadingTrace/index.js +953 -0
  81. package/dist/lib/component/LoadingTrace/index.module.js +24 -0
  82. package/dist/lib/component/LoadingTrace/index_module.css +876 -0
  83. package/dist/lib/component/ModuleInfo/index.js +342 -0
  84. package/dist/lib/component/ModuleInfo/index.module.js +24 -0
  85. package/dist/lib/component/ModuleInfo/index_module.css +184 -0
  86. package/dist/lib/component/SharedDepsExplorer/FocusResultDisplay.js +64 -0
  87. package/dist/lib/component/SharedDepsExplorer/FocusResultDisplay.module.js +24 -0
  88. package/dist/lib/component/SharedDepsExplorer/FocusResultDisplay_module.css +45 -0
  89. package/dist/lib/component/SharedDepsExplorer/index.js +638 -0
  90. package/dist/lib/component/SharedDepsExplorer/index.module.js +24 -0
  91. package/dist/lib/component/SharedDepsExplorer/index_module.css +467 -0
  92. package/dist/lib/component/SharedDepsExplorer/share-utils.js +252 -0
  93. package/dist/lib/component/ThemeToggle.js +48 -0
  94. package/dist/lib/component/ThemeToggle.module.js +24 -0
  95. package/dist/lib/component/ThemeToggle_module.css +12 -0
  96. package/dist/lib/hooks/useDevtoolsTheme.js +100 -0
  97. package/dist/lib/i18n/index.js +721 -0
  98. package/dist/lib/init.js +8 -0
  99. package/dist/lib/template/constant.js +84 -0
  100. package/dist/lib/template/index.js +21 -0
  101. package/dist/lib/utils/chrome/fast-refresh.js +329 -0
  102. package/dist/lib/utils/chrome/index.js +321 -0
  103. package/dist/lib/utils/chrome/messages.js +39 -0
  104. package/dist/lib/utils/chrome/observability-plugin.js +85 -0
  105. package/dist/lib/utils/chrome/observability-shared.js +125 -0
  106. package/dist/lib/utils/chrome/observability.js +233 -0
  107. package/dist/lib/utils/chrome/override-remote.js +17 -0
  108. package/dist/lib/utils/chrome/post-message-init.js +5 -0
  109. package/dist/lib/utils/chrome/post-message-listener.js +36 -0
  110. package/dist/lib/utils/chrome/post-message-start.js +10 -0
  111. package/dist/lib/utils/chrome/post-message.js +91 -0
  112. package/dist/lib/utils/chrome/safe-post-message.js +147 -0
  113. package/dist/lib/utils/chrome/snapshot-plugin.js +17 -0
  114. package/dist/lib/utils/chrome/storage.js +71 -0
  115. package/dist/lib/utils/data/index.js +83 -0
  116. package/dist/lib/utils/index.js +27 -0
  117. package/dist/lib/utils/sdk/graph.js +213 -0
  118. package/dist/lib/utils/sdk/index.js +104 -0
  119. package/dist/lib/utils/types/common.js +15 -0
  120. package/dist/lib/utils/types/index.js +21 -0
  121. package/dist/lib/vendor/basic-proxy-core.js +147 -0
  122. package/dist/lib/worker/index.js +175 -0
  123. package/dist/types/src/App.d.ts +7 -0
  124. package/dist/types/src/component/DependencyGraph/index.d.ts +6 -0
  125. package/dist/types/src/component/DependencyGraphItem/index.d.ts +9 -0
  126. package/dist/types/src/component/Form/index.d.ts +21 -0
  127. package/dist/types/src/component/LanguageSwitch.d.ts +2 -0
  128. package/dist/types/src/component/Layout/index.d.ts +15 -0
  129. package/dist/types/src/component/LoadingTrace/index.d.ts +6 -0
  130. package/dist/types/src/component/ModuleInfo/index.d.ts +8 -0
  131. package/dist/types/src/component/SharedDepsExplorer/FocusResultDisplay.d.ts +15 -0
  132. package/dist/types/src/component/SharedDepsExplorer/index.d.ts +6 -0
  133. package/dist/types/src/component/SharedDepsExplorer/share-utils.d.ts +45 -0
  134. package/dist/types/src/component/ThemeToggle.d.ts +8 -0
  135. package/dist/types/src/hooks/useDevtoolsTheme.d.ts +2 -0
  136. package/dist/types/src/i18n/index.d.ts +5 -0
  137. package/dist/types/src/index.d.ts +1 -0
  138. package/dist/types/src/init.d.ts +12 -0
  139. package/dist/types/src/template/constant.d.ts +21 -0
  140. package/dist/types/src/template/index.d.ts +1 -0
  141. package/dist/types/src/utils/chrome/fast-refresh.d.ts +1 -0
  142. package/dist/types/src/utils/chrome/index.d.ts +19 -0
  143. package/dist/types/src/utils/chrome/messages.d.ts +5 -0
  144. package/dist/types/src/utils/chrome/observability-plugin.d.ts +1 -0
  145. package/dist/types/src/utils/chrome/observability-shared.d.ts +41 -0
  146. package/dist/types/src/utils/chrome/observability.d.ts +110 -0
  147. package/dist/types/src/utils/chrome/override-remote.d.ts +1 -0
  148. package/dist/types/src/utils/chrome/post-message-init.d.ts +1 -0
  149. package/dist/types/src/utils/chrome/post-message-listener.d.ts +1 -0
  150. package/dist/types/src/utils/chrome/post-message-start.d.ts +1 -0
  151. package/dist/types/src/utils/chrome/post-message.d.ts +1 -0
  152. package/dist/types/src/utils/chrome/safe-post-message.d.ts +1 -0
  153. package/dist/types/src/utils/chrome/snapshot-plugin.d.ts +1 -0
  154. package/dist/types/src/utils/chrome/storage.d.ts +5 -0
  155. package/dist/types/src/utils/data/index.d.ts +10 -0
  156. package/dist/types/src/utils/index.d.ts +4 -0
  157. package/dist/types/src/utils/sdk/graph.d.ts +46 -0
  158. package/dist/types/src/utils/sdk/index.d.ts +11 -0
  159. package/dist/types/src/utils/types/common.d.ts +22 -0
  160. package/dist/types/src/utils/types/index.d.ts +1 -0
  161. package/dist/types/src/worker/index.d.ts +1 -0
  162. package/dist/types/stories/index.stories.d.ts +9 -0
  163. package/install-deps.bash +23 -0
  164. package/package.json +108 -0
@@ -0,0 +1,636 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ var __async = (__this, __arguments, generator) => {
33
+ return new Promise((resolve, reject) => {
34
+ var fulfilled = (value) => {
35
+ try {
36
+ step(generator.next(value));
37
+ } catch (e) {
38
+ reject(e);
39
+ }
40
+ };
41
+ var rejected = (value) => {
42
+ try {
43
+ step(generator.throw(value));
44
+ } catch (e) {
45
+ reject(e);
46
+ }
47
+ };
48
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
49
+ step((generator = generator.apply(__this, __arguments)).next());
50
+ });
51
+ };
52
+ import { jsx, jsxs } from "react/jsx-runtime";
53
+ import { useEffect, useMemo, useState } from "react";
54
+ import {
55
+ Box,
56
+ Layers,
57
+ Network,
58
+ Package2,
59
+ Repeat,
60
+ Search,
61
+ Server,
62
+ Info
63
+ } from "lucide-react";
64
+ import {
65
+ Card,
66
+ Tag,
67
+ Table,
68
+ Input,
69
+ Select,
70
+ Collapse,
71
+ Popover,
72
+ Button,
73
+ Tooltip
74
+ } from "@arco-design/web-react";
75
+ import { useTranslation } from "react-i18next";
76
+ import {
77
+ normalizeShareData,
78
+ computeShareStats,
79
+ getFilterOptions,
80
+ groupByProviderScopePackage,
81
+ findPackageProvider
82
+ } from "./share-utils";
83
+ import FocusResultDisplay from "./FocusResultDisplay";
84
+ import styles from "./index.module";
85
+ const ALL_VALUE = "__all__";
86
+ function HoverTag(_a) {
87
+ var _b = _a, { tooltip, children } = _b, tagProps = __objRest(_b, ["tooltip", "children"]);
88
+ return /* @__PURE__ */ jsx(Popover, { trigger: "hover", position: "top", content: tooltip != null ? tooltip : children, children: /* @__PURE__ */ jsx(Tag, __spreadProps(__spreadValues({}, tagProps), { children })) });
89
+ }
90
+ function SharedDepsExplorer({
91
+ shareData: shareDataProp
92
+ }) {
93
+ const { t } = useTranslation();
94
+ const [normalized, setNormalized] = useState([]);
95
+ const [loadingState, setLoadingState] = useState("idle");
96
+ const [errorMessage, setErrorMessage] = useState(null);
97
+ const loadedStatusLabelLocal = (status) => {
98
+ if (status === "loaded") {
99
+ return t("sharedDeps.status.loaded");
100
+ }
101
+ if (status === "loading") {
102
+ return t("sharedDeps.status.loading");
103
+ }
104
+ if (status === "t-loaded") {
105
+ return t("sharedDeps.status.tLoaded");
106
+ }
107
+ if (status === "t-loading") {
108
+ return t("sharedDeps.status.tLoading");
109
+ }
110
+ return t("sharedDeps.status.notLoaded");
111
+ };
112
+ const [selectedProvider, setSelectedProvider] = useState("");
113
+ const [selectedPackage, setSelectedPackage] = useState("");
114
+ const [selectedVersion, setSelectedVersion] = useState("");
115
+ const [selectedMode, setSelectedMode] = useState("");
116
+ const [searchText, setSearchText] = useState("");
117
+ const [chartScope, setChartScope] = useState("default");
118
+ const [focusPackage, setFocusPackage] = useState("react");
119
+ const [focusVersion, setFocusVersion] = useState("");
120
+ useEffect(() => {
121
+ let cancelled = false;
122
+ function bootstrap() {
123
+ return __async(this, null, function* () {
124
+ if (shareDataProp && Object.keys(shareDataProp).length > 0) {
125
+ const versions = normalizeShareData(shareDataProp);
126
+ if (!cancelled) {
127
+ setNormalized(versions);
128
+ setLoadingState("idle");
129
+ setErrorMessage(null);
130
+ }
131
+ return;
132
+ }
133
+ if (!cancelled) {
134
+ setLoadingState("idle");
135
+ setErrorMessage(null);
136
+ }
137
+ });
138
+ }
139
+ bootstrap();
140
+ return () => {
141
+ cancelled = true;
142
+ };
143
+ }, [shareDataProp]);
144
+ const stats = useMemo(() => computeShareStats(normalized), [normalized]);
145
+ const filterOptions = useMemo(
146
+ () => getFilterOptions(normalized),
147
+ [normalized]
148
+ );
149
+ useEffect(() => {
150
+ const { scopes } = filterOptions;
151
+ if (!scopes.length) {
152
+ return;
153
+ }
154
+ if (!scopes.includes(chartScope)) {
155
+ if (scopes.includes("default")) {
156
+ setChartScope("default");
157
+ } else {
158
+ setChartScope(scopes[0]);
159
+ }
160
+ }
161
+ }, [filterOptions.scopes, chartScope]);
162
+ const filteredVersions = useMemo(() => {
163
+ const keyword = searchText.trim().toLowerCase();
164
+ return normalized.filter((v) => {
165
+ if (selectedProvider && v.from !== selectedProvider) {
166
+ return false;
167
+ }
168
+ if (selectedPackage && v.packageName !== selectedPackage) {
169
+ return false;
170
+ }
171
+ if (selectedVersion && v.version !== selectedVersion) {
172
+ return false;
173
+ }
174
+ if (selectedMode && v.treeShakingMode !== selectedMode) {
175
+ return false;
176
+ }
177
+ if (keyword && !v.packageName.toLowerCase().includes(keyword)) {
178
+ return false;
179
+ }
180
+ return true;
181
+ });
182
+ }, [
183
+ normalized,
184
+ selectedProvider,
185
+ selectedPackage,
186
+ selectedVersion,
187
+ selectedMode,
188
+ searchText
189
+ ]);
190
+ const tree = useMemo(
191
+ () => groupByProviderScopePackage(filteredVersions),
192
+ [filteredVersions]
193
+ );
194
+ const versionsForSelectedPackage = useMemo(() => {
195
+ if (!selectedPackage) {
196
+ return [];
197
+ }
198
+ const set = /* @__PURE__ */ new Set();
199
+ normalized.forEach((v) => {
200
+ if (v.packageName === selectedPackage) {
201
+ set.add(v.version);
202
+ }
203
+ });
204
+ return Array.from(set).sort();
205
+ }, [normalized, selectedPackage]);
206
+ const modesForSelectedPackage = useMemo(() => {
207
+ if (!selectedPackage) {
208
+ return [];
209
+ }
210
+ const set = /* @__PURE__ */ new Set();
211
+ normalized.forEach((v) => {
212
+ if (v.packageName === selectedPackage && v.treeShakingMode) {
213
+ set.add(v.treeShakingMode);
214
+ }
215
+ });
216
+ return Array.from(set).sort();
217
+ }, [normalized, selectedPackage]);
218
+ const focusVersionsForPackage = useMemo(() => {
219
+ if (!focusPackage) {
220
+ return [];
221
+ }
222
+ const set = /* @__PURE__ */ new Set();
223
+ normalized.forEach((v) => {
224
+ if (v.packageName === focusPackage) {
225
+ set.add(v.version);
226
+ }
227
+ });
228
+ return Array.from(set).sort();
229
+ }, [normalized, focusPackage]);
230
+ const focusResult = useMemo(() => {
231
+ if (!focusPackage) {
232
+ return null;
233
+ }
234
+ return findPackageProvider(
235
+ normalized,
236
+ focusPackage,
237
+ focusVersion || void 0
238
+ );
239
+ }, [normalized, focusPackage, focusVersion]);
240
+ const hasData = normalized.length > 0;
241
+ const columns = [
242
+ {
243
+ title: t("sharedDeps.table.columns.packageVersion"),
244
+ width: "28%",
245
+ render: (_, item) => /* @__PURE__ */ jsxs("div", { className: styles.cellCol, children: [
246
+ /* @__PURE__ */ jsx("div", { className: styles.packageName, children: item.packageName }),
247
+ /* @__PURE__ */ jsxs("div", { className: styles.version, children: [
248
+ "v",
249
+ item.version
250
+ ] })
251
+ ] })
252
+ },
253
+ {
254
+ title: t("sharedDeps.table.columns.providerScope"),
255
+ width: "20%",
256
+ render: (_, item) => /* @__PURE__ */ jsxs("div", { className: styles.cellColGap, children: [
257
+ /* @__PURE__ */ jsx("span", { className: styles.truncate, title: item.from, children: t("sharedDeps.table.providerPrefix", { name: item.from }) }),
258
+ /* @__PURE__ */ jsx("span", { className: styles.scopeText, children: t("sharedDeps.table.scopePrefix", { scope: item.scope }) })
259
+ ] })
260
+ },
261
+ {
262
+ title: t("sharedDeps.table.columns.status"),
263
+ width: "22%",
264
+ render: (_, item) => /* @__PURE__ */ jsxs("div", { className: styles.cellColGap, children: [
265
+ ["loaded", "loading", "t-loaded", "t-loading"].includes(
266
+ item.loadedStatus
267
+ ) ? /* @__PURE__ */ jsx(
268
+ HoverTag,
269
+ {
270
+ size: "small",
271
+ className: `${styles.tagContainer} loaded-status-tag`,
272
+ tooltip: loadedStatusLabelLocal(item.loadedStatus),
273
+ children: loadedStatusLabelLocal(item.loadedStatus)
274
+ }
275
+ ) : null,
276
+ item.treeShakingMode ? /* @__PURE__ */ jsx(
277
+ HoverTag,
278
+ {
279
+ size: "small",
280
+ className: styles.tagContainer,
281
+ tooltip: item.treeShakingMode,
282
+ children: item.treeShakingMode
283
+ }
284
+ ) : null,
285
+ /* @__PURE__ */ jsxs("div", { className: styles.configTags, children: [
286
+ item.shareConfig.singleton && /* @__PURE__ */ jsx(
287
+ HoverTag,
288
+ {
289
+ size: "small",
290
+ className: styles.scale90,
291
+ tooltip: "singleton",
292
+ children: "singleton"
293
+ }
294
+ ),
295
+ item.shareConfig.eager && /* @__PURE__ */ jsx(HoverTag, { size: "small", className: styles.scale90, tooltip: "eager", children: "eager" }),
296
+ item.shareConfig.strictVersion && /* @__PURE__ */ jsx(
297
+ HoverTag,
298
+ {
299
+ size: "small",
300
+ className: styles.scale90,
301
+ tooltip: "strictVersion",
302
+ children: "strictVersion"
303
+ }
304
+ ),
305
+ item.shareConfig.requiredVersion && /* @__PURE__ */ jsxs(
306
+ HoverTag,
307
+ {
308
+ size: "small",
309
+ className: styles.scale90,
310
+ tooltip: `requiredVersion: ${item.shareConfig.requiredVersion}`,
311
+ children: [
312
+ "requiredVersion: ",
313
+ item.shareConfig.requiredVersion
314
+ ]
315
+ }
316
+ )
317
+ ] })
318
+ ] })
319
+ },
320
+ {
321
+ title: t("sharedDeps.table.columns.consumers"),
322
+ width: "18%",
323
+ render: (_, item) => /* @__PURE__ */ jsx(
324
+ Popover,
325
+ {
326
+ trigger: "click",
327
+ position: "right",
328
+ content: /* @__PURE__ */ jsxs("div", { className: styles.popoverContent, children: [
329
+ /* @__PURE__ */ jsx("div", { className: styles.popoverTitle, children: t("sharedDeps.consumersPopover.title") }),
330
+ item.useIn.length === 0 ? /* @__PURE__ */ jsx("p", { className: styles.scopeText, children: t("sharedDeps.consumersPopover.empty") }) : /* @__PURE__ */ jsx("ul", { className: styles.consumerList, children: item.useIn.map((c) => /* @__PURE__ */ jsxs("li", { className: styles.consumerItem, children: [
331
+ /* @__PURE__ */ jsx("span", { className: styles.dot }),
332
+ /* @__PURE__ */ jsx("span", { className: styles.packageName, children: c })
333
+ ] }, c)) })
334
+ ] }),
335
+ children: /* @__PURE__ */ jsx(Button, { size: "mini", type: "secondary", children: /* @__PURE__ */ jsxs("div", { className: styles.btnContent, children: [
336
+ /* @__PURE__ */ jsx(Network, { className: styles.mr1, size: 12 }),
337
+ /* @__PURE__ */ jsx("span", { children: t("sharedDeps.consumersPopover.button", {
338
+ count: item.useIn.length || 0
339
+ }) })
340
+ ] }) })
341
+ }
342
+ )
343
+ },
344
+ {
345
+ title: t("sharedDeps.table.columns.strategy"),
346
+ width: "12%",
347
+ render: (_, item) => {
348
+ var _a;
349
+ return /* @__PURE__ */ jsx(HoverTag, { size: "small", color: "gray", children: (_a = item.strategy) != null ? _a : t("sharedDeps.table.strategyFallback") });
350
+ }
351
+ }
352
+ ];
353
+ return /* @__PURE__ */ jsxs("div", { className: styles.container, children: [
354
+ /* @__PURE__ */ jsxs("section", { className: styles.heroSection, children: [
355
+ /* @__PURE__ */ jsx("p", { className: styles.heroSubtitle, children: t("sharedDeps.hero.subtitle") }),
356
+ /* @__PURE__ */ jsx("h1", { className: styles.heroTitle, children: t("sharedDeps.hero.title") })
357
+ ] }),
358
+ /* @__PURE__ */ jsx("section", { children: /* @__PURE__ */ jsxs("div", { className: styles.statsGrid, children: [
359
+ /* @__PURE__ */ jsxs(Card, { className: styles.cardWithPadding, children: [
360
+ /* @__PURE__ */ jsx("div", { className: styles.cardHeader, children: /* @__PURE__ */ jsxs("div", { className: styles.statSpace, children: [
361
+ /* @__PURE__ */ jsx("div", { className: styles.statLabel, children: t("sharedDeps.stats.providers.title") }),
362
+ /* @__PURE__ */ jsxs("div", { className: styles.statValue, children: [
363
+ /* @__PURE__ */ jsx(Server, { className: styles.icon }),
364
+ /* @__PURE__ */ jsx("span", { children: stats.totalProviders })
365
+ ] })
366
+ ] }) }),
367
+ /* @__PURE__ */ jsx("p", { className: styles.statDescription, children: t("sharedDeps.stats.providers.description") })
368
+ ] }),
369
+ /* @__PURE__ */ jsxs(Card, { className: styles.cardWithPadding, children: [
370
+ /* @__PURE__ */ jsx("div", { className: styles.cardHeader, children: /* @__PURE__ */ jsxs("div", { className: styles.statSpace, children: [
371
+ /* @__PURE__ */ jsx("div", { className: styles.statLabel, children: t("sharedDeps.stats.scopes.title") }),
372
+ /* @__PURE__ */ jsxs("div", { className: styles.statValue, children: [
373
+ /* @__PURE__ */ jsx(Layers, { className: styles.icon }),
374
+ /* @__PURE__ */ jsx("span", { children: stats.totalScopes }),
375
+ /* @__PURE__ */ jsx("span", { className: styles.statSubtext, children: t("sharedDeps.stats.scopes.badge") })
376
+ ] })
377
+ ] }) }),
378
+ /* @__PURE__ */ jsxs("div", { className: styles.cardFooter, children: [
379
+ /* @__PURE__ */ jsx("span", { className: `${styles.truncate} ${styles.mr2}`, children: t("sharedDeps.stats.scopes.description") }),
380
+ /* @__PURE__ */ jsxs("span", { className: styles.badgeGroup, children: [
381
+ /* @__PURE__ */ jsx(Box, { className: styles.iconSmall }),
382
+ /* @__PURE__ */ jsxs("span", { children: [
383
+ stats.totalPackages,
384
+ t("sharedDeps.stats.scopes.packagesBadge", {
385
+ count: stats.totalPackages
386
+ })
387
+ ] })
388
+ ] })
389
+ ] })
390
+ ] }),
391
+ /* @__PURE__ */ jsxs(Card, { className: styles.cardWithPadding, children: [
392
+ /* @__PURE__ */ jsx("div", { className: styles.cardHeader, children: /* @__PURE__ */ jsxs("div", { className: styles.statSpace, children: [
393
+ /* @__PURE__ */ jsx("div", { className: styles.statLabel, children: t("sharedDeps.stats.versions.title") }),
394
+ /* @__PURE__ */ jsxs("div", { className: styles.statValue, children: [
395
+ /* @__PURE__ */ jsx(Package2, { className: styles.icon }),
396
+ /* @__PURE__ */ jsx("span", { children: stats.totalVersions })
397
+ ] })
398
+ ] }) }),
399
+ /* @__PURE__ */ jsx("div", { className: styles.statusTags, children: /* @__PURE__ */ jsxs("div", { className: styles.tagRow, children: [
400
+ /* @__PURE__ */ jsx(
401
+ HoverTag,
402
+ {
403
+ className: `${styles.tagContent} loaded-status-tag`,
404
+ tooltip: `Loaded: ${stats.loadedCount}`,
405
+ children: /* @__PURE__ */ jsxs("div", { className: styles.tagContent, children: [
406
+ /* @__PURE__ */ jsx(Network, { className: `${styles.iconSmall} ${styles.mr1}` }),
407
+ /* @__PURE__ */ jsx("span", { children: t("sharedDeps.stats.versions.loadedLabel") }),
408
+ /* @__PURE__ */ jsx("span", { className: styles.tagValue, children: stats.loadedCount })
409
+ ] })
410
+ }
411
+ ),
412
+ /* @__PURE__ */ jsx(
413
+ HoverTag,
414
+ {
415
+ className: `${styles.tagContent} reused-status-tag`,
416
+ tooltip: `Reused: ${stats.reusedCount}`,
417
+ children: /* @__PURE__ */ jsxs("div", { className: styles.tagContent, children: [
418
+ /* @__PURE__ */ jsx(Repeat, { className: `${styles.iconSmall} ${styles.mr1}` }),
419
+ /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx("span", { children: t("sharedDeps.stats.versions.reusedLabel") }) }),
420
+ /* @__PURE__ */ jsx("span", { className: styles.tagValue, children: stats.reusedCount })
421
+ ] })
422
+ }
423
+ )
424
+ ] }) })
425
+ ] })
426
+ ] }) }),
427
+ /* @__PURE__ */ jsx("section", { className: styles.rightPanels, children: /* @__PURE__ */ jsx("div", { className: styles.panelStack, children: /* @__PURE__ */ jsxs(
428
+ Card,
429
+ {
430
+ className: styles.card,
431
+ title: /* @__PURE__ */ jsxs("div", { className: styles.cardTitle, children: [
432
+ /* @__PURE__ */ jsx(Box, { className: styles.iconMedium }),
433
+ t("sharedDeps.focusPanel.title", { package: focusPackage })
434
+ ] }),
435
+ children: [
436
+ /* @__PURE__ */ jsxs("div", { className: styles.controlsGrid, children: [
437
+ /* @__PURE__ */ jsxs("div", { className: styles.inputGroup, children: [
438
+ /* @__PURE__ */ jsx("div", { className: styles.inputLabel, children: t("sharedDeps.focusPanel.packageLabel") }),
439
+ /* @__PURE__ */ jsx(
440
+ Select,
441
+ {
442
+ showSearch: true,
443
+ value: focusPackage,
444
+ onChange: (value) => {
445
+ setFocusPackage(value);
446
+ setFocusVersion("");
447
+ },
448
+ placeholder: t("sharedDeps.focusPanel.packagePlaceholder"),
449
+ className: styles.fullWidth,
450
+ children: filterOptions.packages.map((name) => /* @__PURE__ */ jsx(Select.Option, { value: name, children: name }, name))
451
+ }
452
+ )
453
+ ] }),
454
+ /* @__PURE__ */ jsxs("div", { className: styles.inputGroup, children: [
455
+ /* @__PURE__ */ jsx("div", { className: styles.inputLabel, children: t("sharedDeps.focusPanel.versionLabel") }),
456
+ /* @__PURE__ */ jsxs(
457
+ Select,
458
+ {
459
+ showSearch: true,
460
+ value: focusVersion || ALL_VALUE,
461
+ onChange: (value) => setFocusVersion(value === ALL_VALUE ? "" : value),
462
+ placeholder: t("sharedDeps.focusPanel.versionPlaceholder"),
463
+ className: styles.fullWidth,
464
+ children: [
465
+ /* @__PURE__ */ jsx(Select.Option, { value: ALL_VALUE, children: t("sharedDeps.focusPanel.versionAllOption") }),
466
+ focusVersionsForPackage.map((v) => /* @__PURE__ */ jsx(Select.Option, { value: v, children: v }, v))
467
+ ]
468
+ }
469
+ )
470
+ ] })
471
+ ] }),
472
+ /* @__PURE__ */ jsx("div", { className: styles.resultBox, children: /* @__PURE__ */ jsx(
473
+ FocusResultDisplay,
474
+ {
475
+ focusResult,
476
+ hasData,
477
+ loadedStatusLabel: loadedStatusLabelLocal
478
+ }
479
+ ) })
480
+ ]
481
+ }
482
+ ) }) }),
483
+ /* @__PURE__ */ jsx("section", { children: /* @__PURE__ */ jsxs(
484
+ Card,
485
+ {
486
+ className: styles.card,
487
+ title: /* @__PURE__ */ jsxs("div", { className: styles.cardTitle, children: [
488
+ /* @__PURE__ */ jsx(Search, { className: styles.iconMedium }),
489
+ t("sharedDeps.filters.cardTitle")
490
+ ] }),
491
+ children: [
492
+ /* @__PURE__ */ jsxs("div", { className: styles.filterGrid, children: [
493
+ /* @__PURE__ */ jsxs("div", { className: `${styles.inputGroup} ${styles.padding2}`, children: [
494
+ /* @__PURE__ */ jsx("div", { className: styles.inputLabel, children: t("sharedDeps.filters.providerLabel") }),
495
+ /* @__PURE__ */ jsx(
496
+ Select,
497
+ {
498
+ value: selectedProvider || void 0,
499
+ onChange: (value) => setSelectedProvider(value === ALL_VALUE ? "" : value),
500
+ placeholder: t("sharedDeps.filters.providerPlaceholder"),
501
+ className: styles.fullWidth,
502
+ allowClear: true,
503
+ children: filterOptions.providers.map((p) => /* @__PURE__ */ jsx(Select.Option, { value: p, children: p }, p))
504
+ }
505
+ )
506
+ ] }),
507
+ /* @__PURE__ */ jsxs("div", { className: `${styles.inputGroup} ${styles.padding2}`, children: [
508
+ /* @__PURE__ */ jsx("div", { className: styles.inputLabel, children: t("sharedDeps.filters.packageLabel") }),
509
+ /* @__PURE__ */ jsx(
510
+ Select,
511
+ {
512
+ value: selectedPackage || void 0,
513
+ onChange: (value) => setSelectedPackage(value === ALL_VALUE ? "" : value),
514
+ placeholder: t("sharedDeps.filters.packagePlaceholder"),
515
+ className: styles.fullWidth,
516
+ allowClear: true,
517
+ children: filterOptions.packages.map((name) => /* @__PURE__ */ jsx(Select.Option, { value: name, children: name }, name))
518
+ }
519
+ )
520
+ ] }),
521
+ /* @__PURE__ */ jsxs("div", { className: `${styles.inputGroup} ${styles.padding2}`, children: [
522
+ /* @__PURE__ */ jsx("div", { className: styles.inputLabel, children: t("sharedDeps.filters.versionLabel") }),
523
+ /* @__PURE__ */ jsx(
524
+ Select,
525
+ {
526
+ value: selectedVersion || void 0,
527
+ onChange: (value) => setSelectedVersion(value === ALL_VALUE ? "" : value),
528
+ placeholder: t("sharedDeps.filters.versionPlaceholder"),
529
+ className: styles.fullWidth,
530
+ disabled: !selectedPackage,
531
+ allowClear: true,
532
+ children: versionsForSelectedPackage.map((v) => /* @__PURE__ */ jsx(Select.Option, { value: v, children: v }, v))
533
+ }
534
+ )
535
+ ] }),
536
+ /* @__PURE__ */ jsxs("div", { className: `${styles.inputGroup} ${styles.padding2}`, children: [
537
+ /* @__PURE__ */ jsxs(
538
+ "div",
539
+ {
540
+ className: styles.inputLabel,
541
+ style: { display: "flex", alignItems: "center", gap: 4 },
542
+ children: [
543
+ "Mode",
544
+ /* @__PURE__ */ jsx(Tooltip, { content: "Shared Tree Shaking Mode, options: server-calc | runtime-infer", children: /* @__PURE__ */ jsx(
545
+ Info,
546
+ {
547
+ size: 14,
548
+ style: { cursor: "help", color: "#86909c" }
549
+ }
550
+ ) })
551
+ ]
552
+ }
553
+ ),
554
+ /* @__PURE__ */ jsx(
555
+ Select,
556
+ {
557
+ value: selectedMode || void 0,
558
+ onChange: (value) => setSelectedMode(value === ALL_VALUE ? "" : value),
559
+ placeholder: "All Modes",
560
+ className: styles.fullWidth,
561
+ disabled: !selectedPackage || modesForSelectedPackage.length === 0,
562
+ allowClear: true,
563
+ children: modesForSelectedPackage.map((v) => /* @__PURE__ */ jsx(Select.Option, { value: v, children: v }, v))
564
+ }
565
+ )
566
+ ] })
567
+ ] }),
568
+ /* @__PURE__ */ jsxs("div", { className: styles.searchGrid, children: [
569
+ /* @__PURE__ */ jsxs("div", { className: styles.inputGroup, children: [
570
+ /* @__PURE__ */ jsx("div", { className: styles.inputLabel, children: t("sharedDeps.filters.keywordLabel") }),
571
+ /* @__PURE__ */ jsx(
572
+ Input,
573
+ {
574
+ prefix: /* @__PURE__ */ jsx(Search, { className: styles.iconMedium }),
575
+ className: styles.searchInput,
576
+ placeholder: t("sharedDeps.filters.keywordPlaceholder"),
577
+ value: searchText,
578
+ onChange: (val) => setSearchText(val)
579
+ }
580
+ )
581
+ ] }),
582
+ /* @__PURE__ */ jsx("div", { className: styles.matchCount, children: /* @__PURE__ */ jsxs("span", { children: [
583
+ t("sharedDeps.filters.matchCountLabel"),
584
+ /* @__PURE__ */ jsx("span", { className: styles.matchValue, children: filteredVersions.length })
585
+ ] }) })
586
+ ] }),
587
+ !hasData && loadingState === "loading" && /* @__PURE__ */ jsx("div", { className: styles.loadingText, children: t("sharedDeps.messages.loading") }),
588
+ loadingState === "error" && /* @__PURE__ */ jsx("div", { className: styles.errorText, children: errorMessage ? t("sharedDeps.messages.error", { message: errorMessage }) : t("sharedDeps.messages.errorUnknown") }),
589
+ hasData && Object.keys(tree).length === 0 && /* @__PURE__ */ jsx("div", { className: styles.noMatchText, children: t("sharedDeps.messages.noMatch") }),
590
+ hasData && Object.keys(tree).length > 0 && /* @__PURE__ */ jsx("div", { className: styles.treeContainer, children: /* @__PURE__ */ jsx("div", { className: styles.collapseWrapper, children: /* @__PURE__ */ jsx(Collapse, { children: Object.entries(tree).map(([provider, scopes]) => /* @__PURE__ */ jsx(
591
+ Collapse.Item,
592
+ {
593
+ name: provider,
594
+ header: /* @__PURE__ */ jsxs("div", { className: styles.providerHeader, children: [
595
+ /* @__PURE__ */ jsxs("div", { className: styles.providerTitle, children: [
596
+ /* @__PURE__ */ jsx(Server, { className: styles.iconMedium }),
597
+ /* @__PURE__ */ jsx("span", { children: provider })
598
+ ] }),
599
+ /* @__PURE__ */ jsx("div", { className: styles.providerMeta, children: /* @__PURE__ */ jsx("span", { children: t("sharedDeps.filters.scopeCount", {
600
+ count: Object.keys(scopes).length
601
+ }) }) })
602
+ ] }),
603
+ children: /* @__PURE__ */ jsx("div", { className: styles.scopeList, children: Object.entries(scopes).map(([scopeName, packages]) => {
604
+ const list = Object.values(packages).flat();
605
+ return /* @__PURE__ */ jsxs("div", { className: styles.scopeItem, children: [
606
+ /* @__PURE__ */ jsxs("div", { className: styles.scopeHeader, children: [
607
+ /* @__PURE__ */ jsx(Layers, { className: styles.iconSmall }),
608
+ /* @__PURE__ */ jsx("span", { children: t("sharedDeps.filters.scopePrefix", {
609
+ name: scopeName
610
+ }) })
611
+ ] }),
612
+ /* @__PURE__ */ jsx("div", { className: styles.tableContainer, children: /* @__PURE__ */ jsx(
613
+ Table,
614
+ {
615
+ columns,
616
+ data: list,
617
+ pagination: false,
618
+ rowKey: "id",
619
+ border: false,
620
+ size: "small"
621
+ }
622
+ ) })
623
+ ] }, scopeName);
624
+ }) })
625
+ },
626
+ provider
627
+ )) }) }) })
628
+ ]
629
+ }
630
+ ) })
631
+ ] });
632
+ }
633
+ var SharedDepsExplorer_default = SharedDepsExplorer;
634
+ export {
635
+ SharedDepsExplorer_default as default
636
+ };
@@ -0,0 +1,5 @@
1
+ import "./index_module.css";
2
+ var index_module_default = { "container": "container_967de", "heroSection": "heroSection_967de", "heroSubtitle": "heroSubtitle_967de", "heroTitle": "heroTitle_967de", "statsGrid": "statsGrid_967de", "card": "card_967de", "cardWithPadding": "cardWithPadding_967de", "cardHeader": "cardHeader_967de", "statSpace": "statSpace_967de", "statLabel": "statLabel_967de", "statValue": "statValue_967de", "icon": "icon_967de", "iconSmall": "iconSmall_967de", "iconMedium": "iconMedium_967de", "statDescription": "statDescription_967de", "statSubtext": "statSubtext_967de", "cardFooter": "cardFooter_967de", "truncate": "truncate_967de", "mr2": "mr2_967de", "badgeGroup": "badgeGroup_967de", "statusTags": "statusTags_967de", "tagRow": "tagRow_967de", "tagContent": "tagContent_967de", "tagValue": "tagValue_967de", "mr1": "mr1_967de", "rightPanels": "rightPanels_967de", "panelStack": "panelStack_967de", "cardTitle": "cardTitle_967de", "controlsGrid": "controlsGrid_967de", "inputGroup": "inputGroup_967de", "inputLabel": "inputLabel_967de", "fullWidth": "fullWidth_967de", "resultBox": "resultBox_967de", "filterGrid": "filterGrid_967de", "padding2": "padding2_967de", "searchGrid": "searchGrid_967de", "searchInput": "searchInput_967de", "matchCount": "matchCount_967de", "matchValue": "matchValue_967de", "loadingText": "loadingText_967de", "errorText": "errorText_967de", "noMatchText": "noMatchText_967de", "treeContainer": "treeContainer_967de", "collapseWrapper": "collapseWrapper_967de", "providerHeader": "providerHeader_967de", "providerTitle": "providerTitle_967de", "providerMeta": "providerMeta_967de", "scopeList": "scopeList_967de", "scopeItem": "scopeItem_967de", "scopeHeader": "scopeHeader_967de", "tableContainer": "tableContainer_967de", "cellCol": "cellCol_967de", "packageName": "packageName_967de", "version": "version_967de", "cellColGap": "cellColGap_967de", "scopeText": "scopeText_967de", "tagContainer": "tagContainer_967de", "configTags": "configTags_967de", "scale90": "scale90_967de", "popoverContent": "popoverContent_967de", "popoverTitle": "popoverTitle_967de", "consumerList": "consumerList_967de", "consumerItem": "consumerItem_967de", "dot": "dot_967de", "btnContent": "btnContent_967de" };
3
+ export {
4
+ index_module_default as default
5
+ };