@module-federation/devtools 0.21.6 → 0.22.1

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 (100) hide show
  1. package/dist/es/App.css +12 -0
  2. package/dist/es/App.js +330 -22
  3. package/dist/es/App.module.js +1 -1
  4. package/dist/es/App_module.css +291 -5
  5. package/dist/es/component/DependencyGraph/index.js +205 -0
  6. package/dist/es/component/DependencyGraph/index.module.js +5 -0
  7. package/dist/es/component/DependencyGraph/index_module.css +97 -0
  8. package/dist/es/component/{GraphItem → DependencyGraphItem}/index.js +15 -6
  9. package/dist/es/component/DependencyGraphItem/index.module.js +5 -0
  10. package/dist/es/component/DependencyGraphItem/index_module.css +95 -0
  11. package/dist/es/component/Form/index.js +191 -109
  12. package/dist/es/component/Form/index.module.js +1 -1
  13. package/dist/es/component/Form/index_module.css +179 -25
  14. package/dist/es/component/Layout/index.js +300 -49
  15. package/dist/es/component/Layout/index.module.js +1 -1
  16. package/dist/es/component/Layout/index_module.css +52 -32
  17. package/dist/es/component/ModuleInfo/index.js +289 -0
  18. package/dist/es/component/ModuleInfo/index.module.js +5 -0
  19. package/dist/es/component/ModuleInfo/index_module.css +183 -0
  20. package/dist/es/component/SharedDepsExplorer/FocusResultDisplay.js +33 -0
  21. package/dist/es/component/SharedDepsExplorer/FocusResultDisplay.module.js +5 -0
  22. package/dist/es/component/SharedDepsExplorer/FocusResultDisplay_module.css +45 -0
  23. package/dist/es/component/SharedDepsExplorer/index.js +506 -0
  24. package/dist/es/component/SharedDepsExplorer/index.module.js +5 -0
  25. package/dist/es/component/SharedDepsExplorer/index_module.css +457 -0
  26. package/dist/es/component/SharedDepsExplorer/share-utils.js +206 -0
  27. package/dist/es/template/constant.js +3 -19
  28. package/dist/es/utils/chrome/index.js +91 -38
  29. package/dist/es/utils/chrome/messages.js +6 -0
  30. package/dist/es/utils/chrome/override-remote.js +42 -0
  31. package/dist/es/utils/chrome/post-message-listener.js +2 -1
  32. package/dist/es/utils/chrome/post-message-start.js +10 -2
  33. package/dist/es/utils/chrome/storage.js +6 -1
  34. package/dist/es/utils/sdk/graph.js +25 -4
  35. package/dist/es/utils/sdk/index.js +9 -0
  36. package/dist/es/worker/index.js +168 -1
  37. package/dist/lib/App.css +12 -0
  38. package/dist/lib/App.js +321 -18
  39. package/dist/lib/App.module.js +1 -1
  40. package/dist/lib/App_module.css +291 -5
  41. package/dist/lib/component/DependencyGraph/index.js +227 -0
  42. package/dist/lib/component/{GraphItem → DependencyGraph}/index.module.js +1 -1
  43. package/dist/lib/component/DependencyGraph/index_module.css +97 -0
  44. package/dist/lib/component/{GraphItem → DependencyGraphItem}/index.js +18 -9
  45. package/dist/lib/component/{Graph → DependencyGraphItem}/index.module.js +1 -1
  46. package/dist/lib/component/DependencyGraphItem/index_module.css +95 -0
  47. package/dist/lib/component/Form/index.js +188 -107
  48. package/dist/lib/component/Form/index.module.js +1 -1
  49. package/dist/lib/component/Form/index_module.css +179 -25
  50. package/dist/lib/component/Layout/index.js +294 -47
  51. package/dist/lib/component/Layout/index.module.js +1 -1
  52. package/dist/lib/component/Layout/index_module.css +52 -32
  53. package/dist/lib/component/ModuleInfo/index.js +319 -0
  54. package/dist/lib/component/ModuleInfo/index.module.js +25 -0
  55. package/dist/lib/component/ModuleInfo/index_module.css +183 -0
  56. package/dist/lib/component/SharedDepsExplorer/FocusResultDisplay.js +63 -0
  57. package/dist/lib/component/SharedDepsExplorer/FocusResultDisplay.module.js +25 -0
  58. package/dist/lib/component/SharedDepsExplorer/FocusResultDisplay_module.css +45 -0
  59. package/dist/lib/component/SharedDepsExplorer/index.js +513 -0
  60. package/dist/lib/component/SharedDepsExplorer/index.module.js +25 -0
  61. package/dist/lib/component/SharedDepsExplorer/index_module.css +457 -0
  62. package/dist/lib/component/SharedDepsExplorer/share-utils.js +237 -0
  63. package/dist/lib/template/constant.js +4 -17
  64. package/dist/lib/utils/chrome/index.js +94 -38
  65. package/dist/lib/utils/chrome/messages.js +31 -0
  66. package/dist/lib/utils/chrome/override-remote.js +65 -0
  67. package/dist/lib/utils/chrome/post-message-listener.js +2 -1
  68. package/dist/lib/utils/chrome/post-message-start.js +10 -2
  69. package/dist/lib/utils/chrome/storage.js +5 -0
  70. package/dist/lib/utils/sdk/graph.js +25 -4
  71. package/dist/lib/utils/sdk/index.js +10 -0
  72. package/dist/lib/worker/index.js +156 -1
  73. package/dist/types/src/App.d.ts +2 -1
  74. package/dist/types/src/component/{Graph → DependencyGraph}/index.d.ts +0 -1
  75. package/dist/types/src/component/{GraphItem → DependencyGraphItem}/index.d.ts +0 -1
  76. package/dist/types/src/component/Form/index.d.ts +2 -0
  77. package/dist/types/src/component/Layout/index.d.ts +0 -1
  78. package/dist/types/src/component/ModuleInfo/index.d.ts +8 -0
  79. package/dist/types/src/component/SharedDepsExplorer/FocusResultDisplay.d.ts +15 -0
  80. package/dist/types/src/component/SharedDepsExplorer/index.d.ts +6 -0
  81. package/dist/types/src/component/SharedDepsExplorer/share-utils.d.ts +44 -0
  82. package/dist/types/src/init.d.ts +0 -1
  83. package/dist/types/src/template/constant.d.ts +2 -5
  84. package/dist/types/src/utils/chrome/index.d.ts +5 -3
  85. package/dist/types/src/utils/chrome/messages.d.ts +2 -0
  86. package/dist/types/src/utils/chrome/override-remote.d.ts +1 -0
  87. package/dist/types/src/utils/chrome/storage.d.ts +5 -4
  88. package/dist/types/src/utils/sdk/graph.d.ts +2 -1
  89. package/dist/types/src/utils/sdk/index.d.ts +1 -0
  90. package/dist/types/src/utils/types/common.d.ts +4 -0
  91. package/dist/types/src/worker/index.d.ts +1 -0
  92. package/package.json +16 -14
  93. package/dist/es/component/Graph/index.js +0 -127
  94. package/dist/es/component/Graph/index.module.js +0 -5
  95. package/dist/es/component/Graph/index_module.css +0 -12
  96. package/dist/es/component/GraphItem/index.module.js +0 -5
  97. package/dist/es/component/GraphItem/index_module.css +0 -61
  98. package/dist/lib/component/Graph/index.js +0 -149
  99. package/dist/lib/component/Graph/index_module.css +0 -12
  100. package/dist/lib/component/GraphItem/index_module.css +0 -61
@@ -0,0 +1,319 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var ModuleInfo_exports = {};
30
+ __export(ModuleInfo_exports, {
31
+ default: () => ModuleInfo_default
32
+ });
33
+ module.exports = __toCommonJS(ModuleInfo_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_react = require("react");
36
+ var import_web_react = require("@arco-design/web-react");
37
+ var import_index = __toESM(require("./index.module"));
38
+ const renderValue = (value) => {
39
+ if (value === void 0 || value === null) {
40
+ return null;
41
+ }
42
+ if (Array.isArray(value)) {
43
+ if (!value.length) {
44
+ return null;
45
+ }
46
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.pillGroup, children: value.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: import_index.default.pill, children: typeof item === "string" ? item : JSON.stringify(item) }, index)) });
47
+ }
48
+ if (typeof value === "object") {
49
+ if (Object.keys(value).length === 0) {
50
+ return null;
51
+ }
52
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex flex-col gap-3", children: Object.entries(value).map(([key, val]) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
53
+ "div",
54
+ {
55
+ className: "flex flex-col border-b border-zinc-100 pb-2 last:border-0 last:pb-0",
56
+ children: [
57
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "font-medium text-zinc-700 text-xs mb-1", children: key }),
58
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-zinc-600 text-xs break-all font-mono bg-zinc-50 p-2 rounded border border-zinc-100", children: (() => {
59
+ if (Array.isArray(val)) {
60
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex flex-col gap-1", children: val.map((item, idx) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
61
+ "div",
62
+ {
63
+ className: "border-b border-zinc-200 last:border-0 pb-1 last:pb-0",
64
+ children: typeof item === "object" ? JSON.stringify(item) : String(item)
65
+ },
66
+ idx
67
+ )) });
68
+ }
69
+ return typeof val === "object" ? JSON.stringify(val) : String(val);
70
+ })() })
71
+ ]
72
+ },
73
+ key
74
+ )) });
75
+ }
76
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: import_index.default.valueText, children: String(value) });
77
+ };
78
+ const RemotesTable = ({ data }) => {
79
+ if (!data || Object.keys(data).length === 0) {
80
+ return null;
81
+ }
82
+ const dataSource = Object.entries(data).map(([key, val]) => ({
83
+ key,
84
+ name: key,
85
+ type: val.type || val.remoteType || "-",
86
+ version: val.version || val.matchedVersion || "-",
87
+ scmVersion: val.scmVersion || val.buildVersion || "-"
88
+ }));
89
+ const columns = [
90
+ { title: "Name", dataIndex: "name" },
91
+ { title: "Type", dataIndex: "type" },
92
+ { title: "Version", dataIndex: "version" },
93
+ { title: "SCM Version", dataIndex: "scmVersion" }
94
+ ];
95
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
96
+ import_web_react.Table,
97
+ {
98
+ columns,
99
+ data: dataSource,
100
+ pagination: false,
101
+ border: false,
102
+ rowKey: "key",
103
+ className: "bg-zinc-50 rounded border border-zinc-200"
104
+ }
105
+ );
106
+ };
107
+ const ExposesTable = ({ data }) => {
108
+ if (!Array.isArray(data) || data.length === 0) {
109
+ return null;
110
+ }
111
+ const dataSource = data.map((item, index) => ({
112
+ key: index,
113
+ name: item.name || item.moduleName || item.expose || "-",
114
+ path: item.path || item.file || "-",
115
+ shared: Array.isArray(item.requires) ? item.requires.join(", ") : item.requires || "None"
116
+ }));
117
+ const columns = [
118
+ { title: "Module Name", dataIndex: "name" },
119
+ { title: "File Path", dataIndex: "path" },
120
+ { title: "Shared Dependencies", dataIndex: "shared" }
121
+ ];
122
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
123
+ import_web_react.Table,
124
+ {
125
+ columns,
126
+ data: dataSource,
127
+ pagination: false,
128
+ border: false,
129
+ rowKey: "key",
130
+ className: "bg-zinc-50 rounded border border-zinc-200"
131
+ }
132
+ );
133
+ };
134
+ const ConsumersTable = ({ data }) => {
135
+ if (!Array.isArray(data) || data.length === 0) {
136
+ return null;
137
+ }
138
+ const dataSource = data.map((item, index) => ({
139
+ key: index,
140
+ name: item.name || item.consumerName || "-",
141
+ type: item.type || "-",
142
+ version: item.version || "-",
143
+ moduleName: item.moduleName || "-",
144
+ usedIn: Array.isArray(item.usedIn) ? item.usedIn.join(", ") : item.usedIn || "-",
145
+ time: item.time || "-"
146
+ }));
147
+ const columns = [
148
+ { title: "Consumer Name", dataIndex: "name" },
149
+ { title: "Consumer Type", dataIndex: "type" },
150
+ { title: "Consumer Version", dataIndex: "version" },
151
+ { title: "Consumed Module Name", dataIndex: "moduleName" },
152
+ { title: "Used In", dataIndex: "usedIn" },
153
+ { title: "Time", dataIndex: "time" }
154
+ ];
155
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
156
+ import_web_react.Table,
157
+ {
158
+ columns,
159
+ data: dataSource,
160
+ pagination: false,
161
+ border: false,
162
+ rowKey: "key",
163
+ className: "bg-zinc-50 rounded border border-zinc-200"
164
+ }
165
+ );
166
+ };
167
+ const SharedTable = ({
168
+ data
169
+ }) => {
170
+ if (!data || Array.isArray(data) && data.length === 0) {
171
+ return null;
172
+ }
173
+ const dataSource = Object.entries(data).map(([key, val]) => ({
174
+ key,
175
+ name: val.sharedName,
176
+ version: val.version || "-"
177
+ }));
178
+ const columns = [
179
+ { title: "Dependency Name", dataIndex: "name" },
180
+ { title: "Version", dataIndex: "version" },
181
+ { title: "Required Version", dataIndex: "requiredVersion" },
182
+ { title: "Singleton", dataIndex: "singleton" },
183
+ { title: "Eager", dataIndex: "eager" }
184
+ ];
185
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
186
+ import_web_react.Table,
187
+ {
188
+ columns,
189
+ data: dataSource,
190
+ pagination: false,
191
+ border: false,
192
+ rowKey: "key",
193
+ className: "bg-zinc-50 rounded border border-zinc-200"
194
+ }
195
+ );
196
+ };
197
+ const extractDetailSections = (moduleSnapshot) => {
198
+ if (!moduleSnapshot) {
199
+ return [];
200
+ }
201
+ const sections = [];
202
+ const remoteEntry = moduleSnapshot.remoteEntry || moduleSnapshot.entry || moduleSnapshot.version;
203
+ if (remoteEntry) {
204
+ sections.push({
205
+ label: "Remote Entry",
206
+ value: remoteEntry
207
+ });
208
+ }
209
+ if (moduleSnapshot.version) {
210
+ sections.push({
211
+ label: "Version",
212
+ value: moduleSnapshot.version
213
+ });
214
+ }
215
+ if (moduleSnapshot.consumerList) {
216
+ sections.push({
217
+ label: "Consumers",
218
+ value: moduleSnapshot.consumerList
219
+ });
220
+ }
221
+ if (moduleSnapshot.modules) {
222
+ sections.push({
223
+ label: "Exposes",
224
+ value: moduleSnapshot.modules
225
+ });
226
+ }
227
+ if (moduleSnapshot.remotesInfo) {
228
+ sections.push({
229
+ label: "Remotes",
230
+ value: moduleSnapshot.remotesInfo
231
+ });
232
+ }
233
+ if (moduleSnapshot.shared) {
234
+ sections.push({
235
+ label: "Shared",
236
+ value: moduleSnapshot.shared
237
+ });
238
+ }
239
+ if (!sections.length) {
240
+ sections.push({
241
+ label: "Snapshot",
242
+ value: moduleSnapshot
243
+ });
244
+ }
245
+ return sections;
246
+ };
247
+ const Home = (props) => {
248
+ const { moduleInfo, selectedModuleId, onSelectModule } = props;
249
+ const moduleEntries = (0, import_react.useMemo)(
250
+ () => Object.entries(moduleInfo || {}).filter(([key]) => key !== "extendInfos"),
251
+ [moduleInfo]
252
+ );
253
+ const [currentModuleId, currentSnapshot] = (0, import_react.useMemo)(() => {
254
+ if (!moduleEntries.length) {
255
+ return [null, null];
256
+ }
257
+ const entry = moduleEntries.find(([moduleId]) => moduleId === selectedModuleId) || moduleEntries[0];
258
+ return entry;
259
+ }, [moduleEntries, selectedModuleId]);
260
+ const detailSections = (0, import_react.useMemo)(
261
+ () => extractDetailSections(currentSnapshot),
262
+ [currentSnapshot]
263
+ );
264
+ if (!moduleEntries.length || !currentModuleId) {
265
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.emptyState, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web_react.Empty, { description: "No ModuleInfo Detected" }) });
266
+ }
267
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: import_index.default.home, children: [
268
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
269
+ import_web_react.Select,
270
+ {
271
+ className: import_index.default.moduleSelect,
272
+ placeholder: "Select MF module",
273
+ style: { width: "100%" },
274
+ allowClear: true,
275
+ showSearch: true,
276
+ autoWidth: true,
277
+ onChange: onSelectModule,
278
+ children: moduleEntries.map(([moduleId, snapshot]) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_web_react.Select.Option, { value: moduleId, children: [
279
+ snapshot && "remotesInfo" in snapshot && Object.keys(snapshot.remotesInfo).length ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web_react.Tag, { color: "pinkpurple", children: "Consumer" }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web_react.Tag, { color: "cyan", children: "Provider" }),
280
+ " ",
281
+ moduleId
282
+ ] }, moduleId))
283
+ }
284
+ ),
285
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.moduleSelector, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: import_index.default.moduleDetail, children: [
286
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.detailHeader, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-2", children: [
287
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: import_index.default.detailTitle, children: currentModuleId }),
288
+ currentSnapshot && "remotesInfo" in currentSnapshot && Object.keys(currentSnapshot.remotesInfo).length ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web_react.Tag, { color: "pinkpurple", children: "Consumer" }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web_react.Tag, { color: "cyan", children: "Provider" })
289
+ ] }) }),
290
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.detailBody, children: detailSections.map((section) => {
291
+ let content;
292
+ switch (section.label) {
293
+ case "Remotes":
294
+ content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RemotesTable, { data: section.value });
295
+ break;
296
+ case "Exposes":
297
+ content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ExposesTable, { data: section.value });
298
+ break;
299
+ case "Consumers":
300
+ content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ConsumersTable, { data: section.value });
301
+ break;
302
+ case "Shared":
303
+ content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SharedTable, { data: section.value });
304
+ break;
305
+ default:
306
+ content = renderValue(section.value);
307
+ }
308
+ if (!content) {
309
+ return null;
310
+ }
311
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: import_index.default.detailRow, children: [
312
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.detailLabel, children: section.label }),
313
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: import_index.default.detailValue, children: content })
314
+ ] }, section.label);
315
+ }) })
316
+ ] }) })
317
+ ] });
318
+ };
319
+ var ModuleInfo_default = Home;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var index_module_exports = {};
20
+ __export(index_module_exports, {
21
+ default: () => index_module_default
22
+ });
23
+ module.exports = __toCommonJS(index_module_exports);
24
+ var import_index_module = require("./index_module.css");
25
+ var index_module_default = { "home": "home_cde89", "moduleSelector": "moduleSelector_cde89", "moduleList": "moduleList_cde89", "moduleItem": "moduleItem_cde89", "moduleItemActive": "moduleItemActive_cde89", "moduleName": "moduleName_cde89", "moduleDetail": "moduleDetail_cde89", "detailHeader": "detailHeader_cde89", "detailTitle": "detailTitle_cde89", "detailBody": "detailBody_cde89", "detailRow": "detailRow_cde89", "detailLabel": "detailLabel_cde89", "detailValue": "detailValue_cde89", "valueText": "valueText_cde89", "pillGroup": "pillGroup_cde89", "pill": "pill_cde89", "jsonBlock": "jsonBlock_cde89", "emptyState": "emptyState_cde89" };
@@ -0,0 +1,183 @@
1
+ .home_cde89 {
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: 20px;
5
+ height: 100%;
6
+ }
7
+
8
+ .moduleSelector_cde89 {
9
+ display: flex;
10
+ gap: clamp(12px, 2vw, 20px);
11
+ flex: 1 1;
12
+ min-height: 0;
13
+ }
14
+
15
+ .moduleList_cde89 {
16
+ width: clamp(220px, 28%, 320px);
17
+ max-width: 40%;
18
+ padding: 12px;
19
+ border-radius: 16px;
20
+ border: 1px solid rgba(96, 165, 250, 0.3);
21
+ background: rgba(255, 255, 255, 0.9);
22
+ display: flex;
23
+ flex-direction: column;
24
+ gap: 8px;
25
+ overflow-y: auto;
26
+ }
27
+
28
+ .moduleItem_cde89 {
29
+ border: 1px solid transparent;
30
+ border-radius: 12px;
31
+ padding: 10px 12px;
32
+ background: rgba(243, 244, 246, 0.4);
33
+ color: #1f2937;
34
+ font-size: 13px;
35
+ text-align: left;
36
+ cursor: pointer;
37
+ transition: all 0.15s ease;
38
+ }
39
+
40
+ .moduleItem_cde89:hover {
41
+ border-color: rgba(34, 197, 94, 0.5);
42
+ background: rgba(243, 244, 246, 0.6);
43
+ }
44
+
45
+ .moduleItemActive_cde89 {
46
+ border-color: rgba(34, 197, 94, 0.6);
47
+ background: rgba(243, 244, 246, 0.8);
48
+ box-shadow: 0 10px 22px rgba(34, 197, 94, 0.2);
49
+ }
50
+
51
+ .moduleName_cde89 {
52
+ display: block;
53
+ overflow: hidden;
54
+ text-overflow: ellipsis;
55
+ white-space: nowrap;
56
+ }
57
+
58
+ .moduleDetail_cde89 {
59
+ flex: 1 1;
60
+ display: flex;
61
+ flex-direction: column;
62
+ min-height: 0;
63
+ padding: 16px 20px;
64
+ border-radius: 20px;
65
+ border: 1px solid rgba(228, 228, 231, 0.5);
66
+ background: rgba(255, 255, 255, 0.9);
67
+ }
68
+
69
+ .detailHeader_cde89 {
70
+ display: flex;
71
+ justify-content: space-between;
72
+ align-items: center;
73
+ margin-bottom: 16px;
74
+ }
75
+
76
+ .detailTitle_cde89 {
77
+ font-size: 16px;
78
+ font-weight: 600;
79
+ color: #1f2937;
80
+ word-break: break-word;
81
+ }
82
+
83
+ .detailBody_cde89 {
84
+ flex: 1 1;
85
+ overflow-y: auto;
86
+ display: flex;
87
+ flex-direction: column;
88
+ gap: 12px;
89
+ }
90
+
91
+ .detailRow_cde89 {
92
+ display: flex;
93
+ flex-direction: column;
94
+ gap: 6px;
95
+ padding: 12px;
96
+ border-radius: 14px;
97
+ background: rgba(243, 244, 246, 0.4);
98
+ border: 1px solid rgba(228, 228, 231, 0.5);
99
+ }
100
+
101
+ .detailLabel_cde89 {
102
+ font-size: 12px;
103
+ letter-spacing: 0.08em;
104
+ text-transform: uppercase;
105
+ color: #4b5563;
106
+ }
107
+
108
+ .detailValue_cde89 {
109
+ font-size: 13px;
110
+ color: #1f2937;
111
+ }
112
+
113
+ .valueText_cde89 {
114
+ word-break: break-word;
115
+ }
116
+
117
+ .pillGroup_cde89 {
118
+ display: flex;
119
+ flex-wrap: wrap;
120
+ gap: 6px;
121
+ }
122
+
123
+ .pill_cde89 {
124
+ padding: 4px 8px;
125
+ border-radius: 999px;
126
+ background: rgba(243, 244, 246, 0.4);
127
+ border: 1px solid rgba(96, 165, 250, 0.3);
128
+ font-size: 11px;
129
+ color: #1f2937;
130
+ max-width: 100%;
131
+ text-overflow: ellipsis;
132
+ overflow: hidden;
133
+ }
134
+
135
+ .jsonBlock_cde89 {
136
+ margin: 0;
137
+ padding: 12px;
138
+ border-radius: 12px;
139
+ background: rgba(243, 244, 246, 0.4);
140
+ border: 1px solid rgba(96, 165, 250, 0.3);
141
+ font-size: 12px;
142
+ color: #1f2937;
143
+ overflow-x: auto;
144
+ }
145
+
146
+ .emptyState_cde89 {
147
+ flex: 1 1;
148
+ display: flex;
149
+ align-items: center;
150
+ justify-content: center;
151
+ border-radius: 18px;
152
+ border: 1px dashed rgba(96, 165, 250, 0.3);
153
+ background: rgba(255, 255, 255, 0.9);
154
+ }
155
+
156
+ @media (max-width: 960px) {
157
+ .moduleSelector_cde89 {
158
+ flex-direction: column;
159
+ }
160
+ .moduleList_cde89 {
161
+ width: 100%;
162
+ max-width: none;
163
+ flex-direction: row;
164
+ flex-wrap: nowrap;
165
+ overflow-x: auto;
166
+ padding: 10px;
167
+ }
168
+ .moduleItem_cde89 {
169
+ min-width: 180px;
170
+ }
171
+ .moduleDetail_cde89 {
172
+ width: 100%;
173
+ padding: 14px 18px;
174
+ }
175
+ }
176
+ @media (max-width: 640px) {
177
+ .moduleItem_cde89 {
178
+ min-width: 150px;
179
+ }
180
+ .detailRow_cde89 {
181
+ padding: 10px;
182
+ }
183
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var FocusResultDisplay_exports = {};
30
+ __export(FocusResultDisplay_exports, {
31
+ default: () => FocusResultDisplay_default
32
+ });
33
+ module.exports = __toCommonJS(FocusResultDisplay_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_web_react = require("@arco-design/web-react");
36
+ var import_FocusResultDisplay = __toESM(require("./FocusResultDisplay.module"));
37
+ const FocusResultDisplay = ({
38
+ focusResult,
39
+ hasData,
40
+ loadedStatusLabel
41
+ }) => {
42
+ if (focusResult) {
43
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: import_FocusResultDisplay.default.container, children: [
44
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: import_FocusResultDisplay.default.header, children: [
45
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: import_FocusResultDisplay.default.packageInfo, children: [
46
+ focusResult.packageName,
47
+ "@",
48
+ focusResult.version
49
+ ] }),
50
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web_react.Tag, { size: "small", className: "loaded-status-tag", children: loadedStatusLabel(focusResult.status) })
51
+ ] }),
52
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: import_FocusResultDisplay.default.providers, children: [
53
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: import_FocusResultDisplay.default.label, children: "Provider: " }),
54
+ focusResult.providers.map((p) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: import_FocusResultDisplay.default.providerTag, children: p }, p))
55
+ ] })
56
+ ] });
57
+ }
58
+ if (hasData) {
59
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: import_FocusResultDisplay.default.emptyText, children: "No version matching the criteria was found in the current shared data. Please check if the package name / version is correct." });
60
+ }
61
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: import_FocusResultDisplay.default.emptyText, children: "No shared dependency data loaded yet." });
62
+ };
63
+ var FocusResultDisplay_default = FocusResultDisplay;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var FocusResultDisplay_module_exports = {};
20
+ __export(FocusResultDisplay_module_exports, {
21
+ default: () => FocusResultDisplay_module_default
22
+ });
23
+ module.exports = __toCommonJS(FocusResultDisplay_module_exports);
24
+ var import_FocusResultDisplay_module = require("./FocusResultDisplay_module.css");
25
+ var FocusResultDisplay_module_default = { "container": "container_ee3c9", "header": "header_ee3c9", "packageInfo": "packageInfo_ee3c9", "providers": "providers_ee3c9", "label": "label_ee3c9", "providerTag": "providerTag_ee3c9", "emptyText": "emptyText_ee3c9" };
@@ -0,0 +1,45 @@
1
+ .container_ee3c9 {
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: 4px;
5
+ }
6
+
7
+ .header_ee3c9 {
8
+ display: flex;
9
+ flex-wrap: wrap;
10
+ align-items: center;
11
+ gap: 8px;
12
+ }
13
+
14
+ .packageInfo_ee3c9 {
15
+ font-family: monospace;
16
+ font-size: 11px;
17
+ }
18
+
19
+ .providers_ee3c9 {
20
+ display: flex;
21
+ flex-wrap: wrap;
22
+ align-items: center;
23
+ gap: 4px;
24
+ font-size: 11px;
25
+ color: #374151; /* text-zinc-700 */
26
+ }
27
+
28
+ .label_ee3c9 {
29
+ color: #71717a; /* text-zinc-500 */
30
+ }
31
+
32
+ .providerTag_ee3c9 {
33
+ border-radius: 4px;
34
+ background-color: white;
35
+ padding: 2px 6px;
36
+ font-weight: 500;
37
+ color: #27272a; /* text-zinc-800 */
38
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
39
+ }
40
+
41
+ .emptyText_ee3c9 {
42
+ font-size: 11px;
43
+ color: #71717a; /* text-zinc-500 */
44
+ margin: 0;
45
+ }