@rsdoctor/components 1.5.3 → 1.5.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 (163) hide show
  1. package/dist/common/imgs/connection-point.mjs +1 -1
  2. package/dist/common/imgs/rsdoctor-navbar.mjs +1 -1
  3. package/dist/common/imgs/webpack.mjs +1 -1
  4. package/dist/common/svg/bundle-size.mjs +1 -1
  5. package/dist/common/svg/cursor.mjs +1 -1
  6. package/dist/common/svg/error.mjs +1 -1
  7. package/dist/common/svg/file-css.mjs +1 -1
  8. package/dist/common/svg/file-html.mjs +1 -1
  9. package/dist/common/svg/file-image.mjs +1 -1
  10. package/dist/common/svg/file-js.mjs +1 -1
  11. package/dist/common/svg/file-unknown.mjs +1 -1
  12. package/dist/common/svg/file.mjs +1 -1
  13. package/dist/common/svg/files/css.mjs +1 -1
  14. package/dist/common/svg/files/html.mjs +1 -1
  15. package/dist/common/svg/files/image.mjs +1 -1
  16. package/dist/common/svg/files/js.mjs +1 -1
  17. package/dist/common/svg/files/unkown-file.mjs +1 -1
  18. package/dist/common/svg/loader/input.mjs +1 -1
  19. package/dist/common/svg/loader/output.mjs +1 -1
  20. package/dist/common/svg/loader/step.mjs +1 -1
  21. package/dist/common/svg/navbar/bundle-size-active.mjs +1 -1
  22. package/dist/common/svg/navbar/bundle-size-inactive.mjs +1 -1
  23. package/dist/common/svg/navbar/compile-analysis-active.mjs +1 -1
  24. package/dist/common/svg/navbar/compile-analysis-inactive.mjs +1 -1
  25. package/dist/common/svg/navbar/overall-active.mjs +1 -1
  26. package/dist/common/svg/navbar/overall-inactive.mjs +1 -1
  27. package/dist/common/svg/output.mjs +1 -1
  28. package/dist/common/svg/source-size.mjs +1 -1
  29. package/dist/common/svg/source.mjs +1 -1
  30. package/dist/common/svg/total-size.mjs +1 -1
  31. package/dist/common/svg/trae.mjs +1 -1
  32. package/dist/common/svg/version.mjs +1 -1
  33. package/dist/common/svg/vscode.mjs +1 -1
  34. package/dist/components/Alert/change.mjs.map +1 -1
  35. package/dist/components/Alert/ecma-version-check.mjs +1 -1
  36. package/dist/components/Alert/ecma-version-check.mjs.map +1 -1
  37. package/dist/components/Alert/ecma-version-check.module.mjs +1 -1
  38. package/dist/components/Alert/package-relation.module.mjs +1 -1
  39. package/dist/components/Alert/view.mjs.map +1 -1
  40. package/dist/components/Alerts/bundle-alert.mjs +37 -2
  41. package/dist/components/Alerts/bundle-alert.mjs.map +1 -1
  42. package/dist/components/Alerts/bundle-alert.module.mjs +1 -1
  43. package/dist/components/Alerts/collapse-cjs-require.d.ts +6 -0
  44. package/dist/components/Alerts/collapse-cjs-require.mjs +142 -0
  45. package/dist/components/Alerts/collapse-cjs-require.mjs.map +1 -0
  46. package/dist/components/Alerts/collapse-cross-chunks.mjs +2 -23
  47. package/dist/components/Alerts/collapse-cross-chunks.mjs.map +1 -1
  48. package/dist/components/Alerts/collapse-module-mixed-chunks.mjs +2 -23
  49. package/dist/components/Alerts/collapse-module-mixed-chunks.mjs.map +1 -1
  50. package/dist/components/Alerts/collapse-shared.d.ts +9 -0
  51. package/dist/components/Alerts/collapse-shared.mjs +90 -0
  52. package/dist/components/Alerts/collapse-shared.mjs.map +1 -0
  53. package/dist/components/Alerts/collapse-side-effects-only-imports.d.ts +6 -0
  54. package/dist/components/Alerts/collapse-side-effects-only-imports.mjs +131 -0
  55. package/dist/components/Alerts/collapse-side-effects-only-imports.mjs.map +1 -0
  56. package/dist/components/Alerts/collapse.mjs +2 -23
  57. package/dist/components/Alerts/collapse.mjs.map +1 -1
  58. package/dist/components/Alerts/collapse.module.mjs +1 -1
  59. package/dist/components/Alerts/list.module.mjs +1 -1
  60. package/dist/components/Alerts/overlay.mjs.map +1 -1
  61. package/dist/components/Alerts/overlay.module.mjs +1 -1
  62. package/dist/components/Card/diff.mjs.map +1 -1
  63. package/dist/components/Card/index.mjs +1 -1
  64. package/dist/components/Card/size.mjs +2 -2
  65. package/dist/components/Card/size.mjs.map +1 -1
  66. package/dist/components/Card/size.module.mjs +1 -1
  67. package/dist/components/Charts/TimelineCharts/index.mjs +1 -1
  68. package/dist/components/Charts/TimelineCharts/index.mjs.map +1 -1
  69. package/dist/components/Charts/TreeMap.mjs +1 -1
  70. package/dist/components/Charts/TreeMap.mjs.map +1 -1
  71. package/dist/components/Charts/constants.mjs +1 -1
  72. package/dist/components/Charts/loader.mjs +2 -2
  73. package/dist/components/Charts/loader.mjs.map +1 -1
  74. package/dist/components/Charts/treemap.module.mjs +1 -1
  75. package/dist/components/Configuration/builder.module.mjs +1 -1
  76. package/dist/components/FileTree/css.mjs +1 -1
  77. package/dist/components/FileTree/html.mjs +1 -1
  78. package/dist/components/FileTree/image.mjs +1 -1
  79. package/dist/components/FileTree/index.mjs +1 -1
  80. package/dist/components/FileTree/index.mjs.map +1 -1
  81. package/dist/components/FileTree/js.mjs +1 -1
  82. package/dist/components/FileTree/unkown-file.mjs +1 -1
  83. package/dist/components/Keyword/style.module.mjs +1 -1
  84. package/dist/components/Layout/bundle-size-icon.mjs +1 -1
  85. package/dist/components/Layout/compile-icon.mjs +1 -1
  86. package/dist/components/Layout/index.mjs.map +1 -1
  87. package/dist/components/Layout/overall-icon.mjs +1 -1
  88. package/dist/components/Layout/project-info-context.mjs.map +1 -1
  89. package/dist/components/Loader/Analysis/input.mjs +1 -1
  90. package/dist/components/Loader/Analysis/output.mjs +1 -1
  91. package/dist/components/Loader/Analysis/style.module.mjs +1 -1
  92. package/dist/components/Loader/executions.mjs.map +1 -1
  93. package/dist/components/Loader/step.mjs +1 -1
  94. package/dist/components/Manifest/api.mjs.map +1 -1
  95. package/dist/components/Overall/DataSummary.module.mjs +1 -1
  96. package/dist/components/Overall/bundle.mjs +1 -1
  97. package/dist/components/Overall/bundle.mjs.map +1 -1
  98. package/dist/components/Overall/bundle.module.mjs +1 -1
  99. package/dist/components/Overall/card.module.mjs +1 -1
  100. package/dist/components/Overall/compile.mjs.map +1 -1
  101. package/dist/components/Overall/compile.module.mjs +1 -1
  102. package/dist/components/Overall/help-center.module.mjs +1 -1
  103. package/dist/components/Overall/list.module.mjs +1 -1
  104. package/dist/components/Overall/overview.mjs +2 -1
  105. package/dist/components/Overall/overview.module.mjs +1 -1
  106. package/dist/components/Overall/project.module.mjs +1 -1
  107. package/dist/components/Resolver/analysis.mjs +2 -2
  108. package/dist/components/Resolver/analysis.mjs.map +1 -1
  109. package/dist/components/Select/index.mjs.map +1 -1
  110. package/dist/components/Status/failed.mjs.map +1 -1
  111. package/dist/components/TextDrawer/duplicate.mjs.map +1 -1
  112. package/dist/components/TextDrawer/index.mjs +1 -1
  113. package/dist/components/base/CodeViewer/index.mjs +2 -2
  114. package/dist/components/base/CodeViewer/index.mjs.map +1 -1
  115. package/dist/components/base/CodeViewer/index.module.mjs +1 -1
  116. package/dist/components/base/DiffViewer/index.mjs +2 -2
  117. package/dist/components/base/DiffViewer/index.mjs.map +1 -1
  118. package/dist/components/base/DiffViewer/index.module.mjs +1 -1
  119. package/dist/components/index.mjs +1 -2
  120. package/dist/config.mjs.map +1 -1
  121. package/dist/constants.mjs +1 -1
  122. package/dist/pages/BundleSize/components/asset.mjs +2 -2
  123. package/dist/pages/BundleSize/components/asset.mjs.map +1 -1
  124. package/dist/pages/BundleSize/components/card.module.mjs +1 -1
  125. package/dist/pages/BundleSize/components/cards.mjs +2 -2
  126. package/dist/pages/BundleSize/components/cards.mjs.map +1 -1
  127. package/dist/pages/BundleSize/components/index.mjs +1 -1
  128. package/dist/pages/BundleSize/components/index.mjs.map +1 -1
  129. package/dist/pages/BundleSize/components/index.module.mjs +1 -1
  130. package/dist/pages/BundleSize/components/search-modal.mjs +1 -1
  131. package/dist/pages/BundleSize/components/search-modal.mjs.map +1 -1
  132. package/dist/pages/BundleSize/config.mjs.map +1 -1
  133. package/dist/pages/BundleSize/constants.mjs +1 -1
  134. package/dist/pages/BundleSize/index.mjs +1 -1
  135. package/dist/pages/ModuleAnalyze/constants.mjs +1 -1
  136. package/dist/pages/ModuleAnalyze/dependency.mjs +1 -1
  137. package/dist/pages/ModuleResolve/index.mjs +1 -1
  138. package/dist/pages/Overall/index.mjs +1 -1
  139. package/dist/pages/Overall/index.module.mjs +1 -1
  140. package/dist/pages/Resources/BundleDiff/DiffContainer/assets.mjs.map +1 -1
  141. package/dist/pages/Resources/BundleDiff/DiffContainer/changes.mjs.map +1 -1
  142. package/dist/pages/Resources/BundleDiff/DiffContainer/modules.mjs.map +1 -1
  143. package/dist/pages/Resources/BundleDiff/DiffContainer/packages.mjs.map +1 -1
  144. package/dist/pages/Resources/BundleDiff/constants.mjs.map +1 -1
  145. package/dist/pages/Resources/BundleDiff/index.mjs +2 -2
  146. package/dist/pages/Resources/RuleIndex/index.mjs +1 -1
  147. package/dist/pages/TreeShaking/index.mjs +1 -1
  148. package/dist/pages/TreeShaking/open-tag.mjs +1 -1
  149. package/dist/pages/TreeShaking/table.mjs.map +1 -1
  150. package/dist/pages/Uploader/index.mjs +1 -1
  151. package/dist/pages/WebpackLoaders/Analysis/index.mjs +2 -2
  152. package/dist/pages/WebpackLoaders/Analysis/index.mjs.map +1 -1
  153. package/dist/pages/WebpackLoaders/Overall/index.mjs +1 -1
  154. package/dist/pages/WebpackPlugins/index.mjs +1 -1
  155. package/dist/pages/index.mjs +1 -1
  156. package/dist/utils/i18n/cn.mjs +1 -1
  157. package/dist/utils/i18n/en.mjs +1 -1
  158. package/dist/utils/i18n/index.mjs +1 -1
  159. package/dist/utils/loader.mjs +1 -1
  160. package/dist/utils/loader.mjs.map +1 -1
  161. package/dist/utils/time.mjs +1 -1
  162. package/dist/utils/time.mjs.map +1 -1
  163. package/package.json +8 -8
@@ -0,0 +1,142 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Collapse, Space, Tag } from "antd";
3
+ import overview from "../Overall/overview.mjs";
4
+ import collapse_module from "./collapse.module.mjs";
5
+ import { beautifyPath } from "../../utils/file.mjs";
6
+ import { IdeIcons, LabelComponent } from "./collapse-shared.mjs";
7
+ const { innerWidth: collapse_cjs_require_innerWidth } = window;
8
+ const CjsRequireAlertCollapse = (props)=>{
9
+ const { data, extraData } = props;
10
+ const { cwd } = extraData;
11
+ const groupMap = new Map();
12
+ for (const d of data){
13
+ const item = d;
14
+ const key = item.requiredModule.path;
15
+ if (!groupMap.has(key)) groupMap.set(key, {
16
+ requiredPath: key,
17
+ issuers: []
18
+ });
19
+ groupMap.get(key).issuers.push({
20
+ issuerPath: item.issuerModule.path,
21
+ request: item.request
22
+ });
23
+ }
24
+ const groups = Array.from(groupMap.values());
25
+ const items = groups.map((group)=>{
26
+ const requiredDisplayPath = beautifyPath(group.requiredPath, cwd);
27
+ const issuerCount = group.issuers.length;
28
+ const ChildComponent = ()=>/*#__PURE__*/ jsx("div", {
29
+ className: collapse_module.collapseContainer,
30
+ children: /*#__PURE__*/ jsx(overview, {
31
+ style: {
32
+ backgroundColor: '#fff'
33
+ },
34
+ title: /*#__PURE__*/ jsxs(Space, {
35
+ align: "center",
36
+ children: [
37
+ /*#__PURE__*/ jsx("span", {
38
+ style: {
39
+ fontSize: 13,
40
+ fontWeight: 500,
41
+ color: 'rgba(28, 31, 35, 0.85)'
42
+ },
43
+ children: "Required Module:"
44
+ }),
45
+ /*#__PURE__*/ jsx("span", {
46
+ style: {
47
+ fontSize: 12,
48
+ color: 'rgba(28, 31, 35, 0.6)',
49
+ fontWeight: 300,
50
+ maxWidth: collapse_cjs_require_innerWidth > 1500 ? 900 : 700,
51
+ overflow: 'hidden',
52
+ textOverflow: 'ellipsis',
53
+ whiteSpace: 'nowrap',
54
+ display: 'inline-block'
55
+ },
56
+ children: requiredDisplayPath
57
+ })
58
+ ]
59
+ }),
60
+ description: /*#__PURE__*/ jsxs("div", {
61
+ className: collapse_module.collapseChild,
62
+ children: [
63
+ /*#__PURE__*/ jsx("div", {
64
+ style: {
65
+ marginBottom: 8,
66
+ fontWeight: 500,
67
+ color: 'rgba(28, 31, 35, 0.85)'
68
+ },
69
+ children: "CJS Require Callers:"
70
+ }),
71
+ group.issuers.map((issuer, idx)=>/*#__PURE__*/ jsxs("div", {
72
+ style: {
73
+ display: 'flex',
74
+ marginBottom: 4,
75
+ alignItems: 'center'
76
+ },
77
+ children: [
78
+ /*#__PURE__*/ jsx("div", {
79
+ className: collapse_module.attribute,
80
+ children: "require"
81
+ }),
82
+ /*#__PURE__*/ jsxs("div", {
83
+ className: collapse_module.iconContainer,
84
+ children: [
85
+ /*#__PURE__*/ jsx("span", {
86
+ className: collapse_module.data,
87
+ children: beautifyPath(issuer.issuerPath, cwd)
88
+ }),
89
+ /*#__PURE__*/ jsx(Tag, {
90
+ style: {
91
+ marginLeft: 8,
92
+ backgroundColor: '#EAEDF1',
93
+ borderRadius: '2px',
94
+ fontSize: 11,
95
+ fontFamily: 'Menlo'
96
+ },
97
+ children: `require('${issuer.request}')`
98
+ }),
99
+ /*#__PURE__*/ jsx(IdeIcons, {
100
+ file: issuer.issuerPath
101
+ })
102
+ ]
103
+ })
104
+ ]
105
+ }, idx))
106
+ ]
107
+ })
108
+ })
109
+ });
110
+ return {
111
+ key: requiredDisplayPath,
112
+ label: /*#__PURE__*/ jsx(LabelComponent, {
113
+ title: /*#__PURE__*/ jsx(Space, {
114
+ size: 4,
115
+ align: "center",
116
+ children: /*#__PURE__*/ jsx(Tag, {
117
+ style: {
118
+ backgroundColor: '#EAEDF1',
119
+ borderRadius: '2px'
120
+ },
121
+ children: /*#__PURE__*/ jsx("span", {
122
+ className: collapse_module.pkgName,
123
+ children: requiredDisplayPath
124
+ })
125
+ })
126
+ }),
127
+ description: `cannot be tree-shaken — required via CJS \`require()\` by ${issuerCount} caller(s).`
128
+ }),
129
+ children: /*#__PURE__*/ jsx(ChildComponent, {})
130
+ };
131
+ });
132
+ return /*#__PURE__*/ jsx(Collapse, {
133
+ style: {
134
+ width: '100%'
135
+ },
136
+ defaultActiveKey: items.map((item)=>item.key),
137
+ items: items
138
+ });
139
+ };
140
+ export { CjsRequireAlertCollapse };
141
+
142
+ //# sourceMappingURL=collapse-cjs-require.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components/Alerts/collapse-cjs-require.mjs","sources":["../../../src/components/Alerts/collapse-cjs-require.tsx"],"sourcesContent":["import { Collapse, Space, Tag } from 'antd';\n\nimport Overview from '../Overall/overview';\nimport styles from './collapse.module.scss';\nimport { beautifyPath } from '../../utils/file';\nimport { LabelComponent, IdeIcons } from './collapse-shared';\n\nimport type { Rule } from '@rsdoctor/types';\nimport type { AlertProps } from '../Alert/types';\n\nconst { innerWidth } = window;\n\nexport const CjsRequireAlertCollapse = (props: {\n data: Array<Rule.RuleStoreDataItem>;\n extraData: Omit<AlertProps, 'data'>;\n}) => {\n const { data, extraData } = props;\n const { cwd } = extraData;\n\n // Group by required module path\n const groupMap = new Map<\n string,\n {\n requiredPath: string;\n issuers: Array<{ issuerPath: string; request: string }>;\n }\n >();\n\n for (const d of data) {\n const item = d as Rule.CjsRequireRuleStoreData;\n const key = item.requiredModule.path;\n if (!groupMap.has(key)) {\n groupMap.set(key, { requiredPath: key, issuers: [] });\n }\n groupMap.get(key)!.issuers.push({\n issuerPath: item.issuerModule.path,\n request: item.request,\n });\n }\n\n const groups = Array.from(groupMap.values());\n\n const items = groups.map((group) => {\n const requiredDisplayPath = beautifyPath(group.requiredPath, cwd);\n const issuerCount = group.issuers.length;\n\n const ChildComponent = () => (\n <div className={styles.collapseContainer}>\n <Overview\n style={{ backgroundColor: '#fff' }}\n title={\n <Space align=\"center\">\n <span\n style={{\n fontSize: 13,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n Required Module:\n </span>\n <span\n style={{\n fontSize: 12,\n color: 'rgba(28, 31, 35, 0.6)',\n fontWeight: 300,\n maxWidth: innerWidth > 1500 ? 900 : 700,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n display: 'inline-block',\n }}\n >\n {requiredDisplayPath}\n </span>\n </Space>\n }\n description={\n <div className={styles.collapseChild}>\n <div\n style={{\n marginBottom: 8,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n CJS Require Callers:\n </div>\n {group.issuers.map((issuer, idx) => (\n <div\n key={idx}\n style={{\n display: 'flex',\n marginBottom: 4,\n alignItems: 'center',\n }}\n >\n <div className={styles.attribute}>require</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>\n {beautifyPath(issuer.issuerPath, cwd)}\n </span>\n <Tag\n style={{\n marginLeft: 8,\n backgroundColor: '#EAEDF1',\n borderRadius: '2px',\n fontSize: 11,\n fontFamily: 'Menlo',\n }}\n >\n {`require('${issuer.request}')`}\n </Tag>\n <IdeIcons file={issuer.issuerPath} />\n </div>\n </div>\n ))}\n </div>\n }\n />\n </div>\n );\n\n return {\n key: requiredDisplayPath,\n label: (\n <LabelComponent\n title={\n <Space size={4} align=\"center\">\n <Tag style={{ backgroundColor: '#EAEDF1', borderRadius: '2px' }}>\n <span className={styles.pkgName}>{requiredDisplayPath}</span>\n </Tag>\n </Space>\n }\n description={`cannot be tree-shaken — required via CJS \\`require()\\` by ${issuerCount} caller(s).`}\n />\n ),\n children: <ChildComponent />,\n };\n });\n\n return (\n <Collapse\n style={{ width: '100%' }}\n defaultActiveKey={items.map((item) => item.key)}\n items={items}\n />\n );\n};\n"],"names":["innerWidth","window","CjsRequireAlertCollapse","props","data","extraData","cwd","groupMap","Map","d","item","key","groups","Array","items","group","requiredDisplayPath","beautifyPath","issuerCount","ChildComponent","styles","Overview","Space","issuer","idx","Tag","IdeIcons","LabelComponent","Collapse"],"mappings":";;;;;;AAUA,MAAM,EAAEA,YAAAA,+BAAU,EAAE,GAAGC;AAEhB,MAAMC,0BAA0B,CAACC;IAItC,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGF;IAC5B,MAAM,EAAEG,GAAG,EAAE,GAAGD;IAGhB,MAAME,WAAW,IAAIC;IAQrB,KAAK,MAAMC,KAAKL,KAAM;QACpB,MAAMM,OAAOD;QACb,MAAME,MAAMD,KAAK,cAAc,CAAC,IAAI;QACpC,IAAI,CAACH,SAAS,GAAG,CAACI,MAChBJ,SAAS,GAAG,CAACI,KAAK;YAAE,cAAcA;YAAK,SAAS,EAAE;QAAC;QAErDJ,SAAS,GAAG,CAACI,KAAM,OAAO,CAAC,IAAI,CAAC;YAC9B,YAAYD,KAAK,YAAY,CAAC,IAAI;YAClC,SAASA,KAAK,OAAO;QACvB;IACF;IAEA,MAAME,SAASC,MAAM,IAAI,CAACN,SAAS,MAAM;IAEzC,MAAMO,QAAQF,OAAO,GAAG,CAAC,CAACG;QACxB,MAAMC,sBAAsBC,aAAaF,MAAM,YAAY,EAAET;QAC7D,MAAMY,cAAcH,MAAM,OAAO,CAAC,MAAM;QAExC,MAAMI,iBAAiB,kBACrB,IAAC;gBAAI,WAAWC,gBAAAA,iBAAwB;0BACtC,kBAACC,UAAQA;oBACP,OAAO;wBAAE,iBAAiB;oBAAO;oBACjC,qBACE,KAACC,OAAKA;wBAAC,OAAM;;0CACX,IAAC;gCACC,OAAO;oCACL,UAAU;oCACV,YAAY;oCACZ,OAAO;gCACT;0CACD;;0CAGD,IAAC;gCACC,OAAO;oCACL,UAAU;oCACV,OAAO;oCACP,YAAY;oCACZ,UAAUtB,kCAAa,OAAO,MAAM;oCACpC,UAAU;oCACV,cAAc;oCACd,YAAY;oCACZ,SAAS;gCACX;0CAECgB;;;;oBAIP,2BACE,KAAC;wBAAI,WAAWI,gBAAAA,aAAoB;;0CAClC,IAAC;gCACC,OAAO;oCACL,cAAc;oCACd,YAAY;oCACZ,OAAO;gCACT;0CACD;;4BAGAL,MAAM,OAAO,CAAC,GAAG,CAAC,CAACQ,QAAQC,MAAAA,WAAAA,GAC1B,KAAC;oCAEC,OAAO;wCACL,SAAS;wCACT,cAAc;wCACd,YAAY;oCACd;;sDAEA,IAAC;4CAAI,WAAWJ,gBAAAA,SAAgB;sDAAE;;sDAClC,KAAC;4CAAI,WAAWA,gBAAAA,aAAoB;;8DAClC,IAAC;oDAAK,WAAWA,gBAAAA,IAAW;8DACzBH,aAAaM,OAAO,UAAU,EAAEjB;;8DAEnC,IAACmB,KAAGA;oDACF,OAAO;wDACL,YAAY;wDACZ,iBAAiB;wDACjB,cAAc;wDACd,UAAU;wDACV,YAAY;oDACd;8DAEC,CAAC,SAAS,EAAEF,OAAO,OAAO,CAAC,EAAE,CAAC;;8DAEjC,IAACG,UAAQA;oDAAC,MAAMH,OAAO,UAAU;;;;;mCAvB9BC;;;;;QAiCnB,OAAO;YACL,KAAKR;YACL,OAAO,WAAP,GACE,IAACW,gBAAcA;gBACb,qBACE,IAACL,OAAKA;oBAAC,MAAM;oBAAG,OAAM;8BACpB,kBAACG,KAAGA;wBAAC,OAAO;4BAAE,iBAAiB;4BAAW,cAAc;wBAAM;kCAC5D,kBAAC;4BAAK,WAAWL,gBAAAA,OAAc;sCAAGJ;;;;gBAIxC,aAAa,CAAC,0DAA0D,EAAEE,YAAY,WAAW,CAAC;;YAGtG,UAAU,WAAV,GAAU,IAACC,gBAAAA,CAAAA;QACb;IACF;IAEA,OAAO,WAAP,GACE,IAACS,UAAQA;QACP,OAAO;YAAE,OAAO;QAAO;QACvB,kBAAkBd,MAAM,GAAG,CAAC,CAACJ,OAASA,KAAK,GAAG;QAC9C,OAAOI;;AAGb"}
@@ -4,30 +4,9 @@ import { Collapse, Space, Tag, Typography } from "antd";
4
4
  import overview from "../Overall/overview.mjs";
5
5
  import collapse_module from "./collapse.module.mjs";
6
6
  import total_size from "../../common/svg/total-size.mjs";
7
- const { Text } = Typography;
7
+ import { LabelComponent } from "./collapse-shared.mjs";
8
+ const { Text: Text } = Typography;
8
9
  const { innerWidth: collapse_cross_chunks_innerWidth } = window;
9
- const LabelComponent = (props)=>{
10
- const { title, description, extra } = props;
11
- return /*#__PURE__*/ jsxs("div", {
12
- className: collapse_module.label,
13
- children: [
14
- /*#__PURE__*/ jsxs("div", {
15
- className: collapse_module.labelContent,
16
- children: [
17
- /*#__PURE__*/ jsx("div", {
18
- children: title
19
- }),
20
- /*#__PURE__*/ jsx("div", {
21
- children: description
22
- })
23
- ]
24
- }),
25
- /*#__PURE__*/ jsx("div", {
26
- children: extra
27
- })
28
- ]
29
- });
30
- };
31
10
  const CrossChunksAlertCollapse = (props)=>{
32
11
  const { data } = props;
33
12
  const items = data.map((d)=>{
@@ -1 +1 @@
1
- {"version":3,"file":"components/Alerts/collapse-cross-chunks.mjs","sources":["../../../src/components/Alerts/collapse-cross-chunks.tsx"],"sourcesContent":["import Icon from '@ant-design/icons';\nimport { Collapse, Space, Tag, Typography } from 'antd';\nimport { ReactNode } from 'react';\n\nimport Overview from '../Overall/overview';\nimport styles from './collapse.module.scss';\nimport TotalSizeSvg from '../../common/svg/total-size.svg';\n\nimport type { Rule } from '@rsdoctor/types';\nimport type { AlertProps } from '../Alert/types';\n\nconst { Text } = Typography;\nconst { innerWidth } = window;\n\nconst LabelComponent = (props: {\n title: string | ReactNode;\n description: string;\n extra?: ReactNode;\n}) => {\n const { title, description, extra } = props;\n return (\n <div className={styles.label}>\n <div className={styles.labelContent}>\n <div>{title}</div>\n <div>{description}</div>\n </div>\n <div>{extra}</div>\n </div>\n );\n};\n\nexport const CrossChunksAlertCollapse = (props: {\n data: Array<Rule.RuleStoreDataItem>;\n extraData: Omit<AlertProps, 'data'>;\n}) => {\n const { data } = props;\n\n const items = data.map((d) => {\n const { package: dupPackage, chunks } =\n d as Rule.CrossChunksPackageRuleStoreData;\n\n const ChildComponent = () => {\n return chunks.map(({ chunks, module }) => {\n return (\n <div className={styles.collapseContainer}>\n <Overview\n style={{ backgroundColor: '#fff' }}\n title={\n <Space>\n <Icon style={{ fontSize: '18px' }} component={TotalSizeSvg} />\n <Text style={{ width: innerWidth > 1500 ? 900 : 700 }}>\n Module:{' '}\n <Text\n style={{\n fontSize: 12,\n color: 'rgba(28, 31, 35, 0.6)',\n fontWeight: 300,\n }}\n >\n {module.path}\n </Text>\n </Text>\n </Space>\n }\n description={\n <div className={styles.collapseChild}>\n {chunks.map((chunk) => (\n <div style={{ display: 'flex' }}>\n <div className={styles.attribute}>Chunk</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>{chunk.name}</span>\n </div>\n </div>\n ))}\n </div>\n }\n />\n </div>\n );\n });\n };\n\n return {\n key: `${dupPackage.name}@${dupPackage.version}`,\n label: (\n <LabelComponent\n title={\n <Tag style={{ backgroundColor: '#EAEDF1', borderRadius: '2px' }}>\n <span\n className={styles.pkgName}\n >{`${dupPackage.name}@${dupPackage.version}`}</span>\n </Tag>\n }\n description={`has duplicates bundled into multiple chunks.`}\n />\n ),\n children: <ChildComponent />,\n };\n });\n\n return (\n <Collapse\n style={{ width: '100%' }}\n defaultActiveKey={['E1005']}\n items={items}\n />\n );\n};\n"],"names":["Text","Typography","innerWidth","window","LabelComponent","props","title","description","extra","styles","CrossChunksAlertCollapse","data","items","d","dupPackage","chunks","ChildComponent","module","Overview","Space","Icon","TotalSizeSvg","chunk","Tag","Collapse"],"mappings":";;;;;;AAWA,MAAM,EAAEA,IAAI,EAAE,GAAGC;AACjB,MAAM,EAAEC,YAAU,kCAAE,GAAGC;AAEvB,MAAMC,iBAAiB,CAACC;IAKtB,MAAM,EAAEC,KAAK,EAAEC,WAAW,EAAEC,KAAK,EAAE,GAAGH;IACtC,OAAO,WAAP,GACE,KAAC;QAAI,WAAWI,gBAAAA,KAAY;;0BAC1B,KAAC;gBAAI,WAAWA,gBAAAA,YAAmB;;kCACjC,IAAC;kCAAKH;;kCACN,IAAC;kCAAKC;;;;0BAER,IAAC;0BAAKC;;;;AAGZ;AAEO,MAAME,2BAA2B,CAACL;IAIvC,MAAM,EAAEM,IAAI,EAAE,GAAGN;IAEjB,MAAMO,QAAQD,KAAK,GAAG,CAAC,CAACE;QACtB,MAAM,EAAE,SAASC,UAAU,EAAEC,MAAM,EAAE,GACnCF;QAEF,MAAMG,iBAAiB,IACdD,OAAO,GAAG,CAAC,CAAC,EAAEA,MAAM,EAAEE,MAAM,EAAE,GAC5B,WAAP,GACE,IAAC;oBAAI,WAAWR,gBAAAA,iBAAwB;8BACtC,kBAACS,UAAQA;wBACP,OAAO;4BAAE,iBAAiB;wBAAO;wBACjC,qBACE,KAACC,OAAKA;;8CACJ,IAACC,OAAIA;oCAAC,OAAO;wCAAE,UAAU;oCAAO;oCAAG,WAAWC;;8CAC9C,KAACrB,MAAAA;oCAAK,OAAO;wCAAE,OAAOE,mCAAa,OAAO,MAAM;oCAAI;;wCAAG;wCAC7C;sDACR,IAACF,MAAAA;4CACC,OAAO;gDACL,UAAU;gDACV,OAAO;gDACP,YAAY;4CACd;sDAECiB,OAAO,IAAI;;;;;;wBAKpB,2BACE,IAAC;4BAAI,WAAWR,gBAAAA,aAAoB;sCACjCM,OAAO,GAAG,CAAC,CAACO,QAAAA,WAAAA,GACX,KAAC;oCAAI,OAAO;wCAAE,SAAS;oCAAO;;sDAC5B,IAAC;4CAAI,WAAWb,gBAAAA,SAAgB;sDAAE;;sDAClC,IAAC;4CAAI,WAAWA,gBAAAA,aAAoB;sDAClC,kBAAC;gDAAK,WAAWA,gBAAAA,IAAW;0DAAGa,MAAM,IAAI;;;;;;;;QAY7D,OAAO;YACL,KAAK,GAAGR,WAAW,IAAI,CAAC,CAAC,EAAEA,WAAW,OAAO,EAAE;YAC/C,OAAO,WAAP,GACE,IAACV,gBAAAA;gBACC,qBACE,IAACmB,KAAGA;oBAAC,OAAO;wBAAE,iBAAiB;wBAAW,cAAc;oBAAM;8BAC5D,kBAAC;wBACC,WAAWd,gBAAAA,OAAc;kCACzB,GAAGK,WAAW,IAAI,CAAC,CAAC,EAAEA,WAAW,OAAO,EAAE;;;gBAGhD,aAAa;;YAGjB,UAAU,WAAV,GAAU,IAACE,gBAAAA,CAAAA;QACb;IACF;IAEA,OAAO,WAAP,GACE,IAACQ,UAAQA;QACP,OAAO;YAAE,OAAO;QAAO;QACvB,kBAAkB;YAAC;SAAQ;QAC3B,OAAOZ;;AAGb"}
1
+ {"version":3,"file":"components/Alerts/collapse-cross-chunks.mjs","sources":["../../../src/components/Alerts/collapse-cross-chunks.tsx"],"sourcesContent":["import Icon from '@ant-design/icons';\nimport { Collapse, Space, Tag, Typography } from 'antd';\n\nimport Overview from '../Overall/overview';\nimport styles from './collapse.module.scss';\nimport TotalSizeSvg from '../../common/svg/total-size.svg';\nimport { LabelComponent } from './collapse-shared';\n\nimport type { Rule } from '@rsdoctor/types';\nimport type { AlertProps } from '../Alert/types';\n\nconst { Text } = Typography;\nconst { innerWidth } = window;\n\nexport const CrossChunksAlertCollapse = (props: {\n data: Array<Rule.RuleStoreDataItem>;\n extraData: Omit<AlertProps, 'data'>;\n}) => {\n const { data } = props;\n\n const items = data.map((d) => {\n const { package: dupPackage, chunks } =\n d as Rule.CrossChunksPackageRuleStoreData;\n\n const ChildComponent = () => {\n return chunks.map(({ chunks, module }) => {\n return (\n <div className={styles.collapseContainer}>\n <Overview\n style={{ backgroundColor: '#fff' }}\n title={\n <Space>\n <Icon style={{ fontSize: '18px' }} component={TotalSizeSvg} />\n <Text style={{ width: innerWidth > 1500 ? 900 : 700 }}>\n Module:{' '}\n <Text\n style={{\n fontSize: 12,\n color: 'rgba(28, 31, 35, 0.6)',\n fontWeight: 300,\n }}\n >\n {module.path}\n </Text>\n </Text>\n </Space>\n }\n description={\n <div className={styles.collapseChild}>\n {chunks.map((chunk) => (\n <div style={{ display: 'flex' }}>\n <div className={styles.attribute}>Chunk</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>{chunk.name}</span>\n </div>\n </div>\n ))}\n </div>\n }\n />\n </div>\n );\n });\n };\n\n return {\n key: `${dupPackage.name}@${dupPackage.version}`,\n label: (\n <LabelComponent\n title={\n <Tag style={{ backgroundColor: '#EAEDF1', borderRadius: '2px' }}>\n <span\n className={styles.pkgName}\n >{`${dupPackage.name}@${dupPackage.version}`}</span>\n </Tag>\n }\n description={`has duplicates bundled into multiple chunks.`}\n />\n ),\n children: <ChildComponent />,\n };\n });\n\n return (\n <Collapse\n style={{ width: '100%' }}\n defaultActiveKey={['E1005']}\n items={items}\n />\n );\n};\n"],"names":["Text","Typography","innerWidth","window","CrossChunksAlertCollapse","props","data","items","d","dupPackage","chunks","ChildComponent","module","styles","Overview","Space","Icon","TotalSizeSvg","chunk","LabelComponent","Tag","Collapse"],"mappings":";;;;;;;AAWA,MAAM,EAAEA,MAAAA,IAAI,EAAE,GAAGC;AACjB,MAAM,EAAEC,YAAAA,gCAAU,EAAE,GAAGC;AAEhB,MAAMC,2BAA2B,CAACC;IAIvC,MAAM,EAAEC,IAAI,EAAE,GAAGD;IAEjB,MAAME,QAAQD,KAAK,GAAG,CAAC,CAACE;QACtB,MAAM,EAAE,SAASC,UAAU,EAAEC,MAAM,EAAE,GACnCF;QAEF,MAAMG,iBAAiB,IACdD,OAAO,GAAG,CAAC,CAAC,EAAEA,MAAM,EAAEE,MAAM,EAAE,GAC5B,WAAP,GACE,IAAC;oBAAI,WAAWC,gBAAAA,iBAAwB;8BACtC,kBAACC,UAAQA;wBACP,OAAO;4BAAE,iBAAiB;wBAAO;wBACjC,qBACE,KAACC,OAAKA;;8CACJ,IAACC,OAAIA;oCAAC,OAAO;wCAAE,UAAU;oCAAO;oCAAG,WAAWC;;8CAC9C,KAACjB,MAAIA;oCAAC,OAAO;wCAAE,OAAOE,mCAAa,OAAO,MAAM;oCAAI;;wCAAG;wCAC7C;sDACR,IAACF,MAAIA;4CACH,OAAO;gDACL,UAAU;gDACV,OAAO;gDACP,YAAY;4CACd;sDAECY,OAAO,IAAI;;;;;;wBAKpB,2BACE,IAAC;4BAAI,WAAWC,gBAAAA,aAAoB;sCACjCH,OAAO,GAAG,CAAC,CAACQ,QAAAA,WAAAA,GACX,KAAC;oCAAI,OAAO;wCAAE,SAAS;oCAAO;;sDAC5B,IAAC;4CAAI,WAAWL,gBAAAA,SAAgB;sDAAE;;sDAClC,IAAC;4CAAI,WAAWA,gBAAAA,aAAoB;sDAClC,kBAAC;gDAAK,WAAWA,gBAAAA,IAAW;0DAAGK,MAAM,IAAI;;;;;;;;QAY7D,OAAO;YACL,KAAK,GAAGT,WAAW,IAAI,CAAC,CAAC,EAAEA,WAAW,OAAO,EAAE;YAC/C,OAAO,WAAP,GACE,IAACU,gBAAcA;gBACb,qBACE,IAACC,KAAGA;oBAAC,OAAO;wBAAE,iBAAiB;wBAAW,cAAc;oBAAM;8BAC5D,kBAAC;wBACC,WAAWP,gBAAAA,OAAc;kCACzB,GAAGJ,WAAW,IAAI,CAAC,CAAC,EAAEA,WAAW,OAAO,EAAE;;;gBAGhD,aAAa;;YAGjB,UAAU,WAAV,GAAU,IAACE,gBAAAA,CAAAA;QACb;IACF;IAEA,OAAO,WAAP,GACE,IAACU,UAAQA;QACP,OAAO;YAAE,OAAO;QAAO;QACvB,kBAAkB;YAAC;SAAQ;QAC3B,OAAOd;;AAGb"}
@@ -5,30 +5,9 @@ import overview from "../Overall/overview.mjs";
5
5
  import collapse_module from "./collapse.module.mjs";
6
6
  import total_size from "../../common/svg/total-size.mjs";
7
7
  import { beautifyPath } from "../../utils/file.mjs";
8
- const { Text } = Typography;
8
+ import { LabelComponent } from "./collapse-shared.mjs";
9
+ const { Text: Text } = Typography;
9
10
  const { innerWidth: collapse_module_mixed_chunks_innerWidth } = window;
10
- const LabelComponent = (props)=>{
11
- const { title, description, extra } = props;
12
- return /*#__PURE__*/ jsxs("div", {
13
- className: collapse_module.label,
14
- children: [
15
- /*#__PURE__*/ jsxs("div", {
16
- className: collapse_module.labelContent,
17
- children: [
18
- /*#__PURE__*/ jsx("div", {
19
- children: title
20
- }),
21
- /*#__PURE__*/ jsx("div", {
22
- children: description
23
- })
24
- ]
25
- }),
26
- /*#__PURE__*/ jsx("div", {
27
- children: extra
28
- })
29
- ]
30
- });
31
- };
32
11
  const ModuleMixedChunksAlertCollapse = (props)=>{
33
12
  const { data, extraData } = props;
34
13
  const { cwd } = extraData;
@@ -1 +1 @@
1
- {"version":3,"file":"components/Alerts/collapse-module-mixed-chunks.mjs","sources":["../../../src/components/Alerts/collapse-module-mixed-chunks.tsx"],"sourcesContent":["import Icon from '@ant-design/icons';\nimport { Collapse, Space, Tag, Typography } from 'antd';\nimport { ReactNode } from 'react';\n\nimport Overview from '../Overall/overview';\nimport styles from './collapse.module.scss';\nimport TotalSizeSvg from '../../common/svg/total-size.svg';\nimport { beautifyPath } from '../../utils/file';\n\nimport type { Rule } from '@rsdoctor/types';\nimport type { AlertProps } from '../Alert/types';\n\nconst { Text } = Typography;\nconst { innerWidth } = window;\n\nconst LabelComponent = (props: {\n title: string | ReactNode;\n description: string;\n extra?: ReactNode;\n}) => {\n const { title, description, extra } = props;\n return (\n <div className={styles.label}>\n <div className={styles.labelContent}>\n <div>{title}</div>\n <div>{description}</div>\n </div>\n <div>{extra}</div>\n </div>\n );\n};\n\nexport const ModuleMixedChunksAlertCollapse = (props: {\n data: Array<Rule.RuleStoreDataItem>;\n extraData: Omit<AlertProps, 'data'>;\n}) => {\n const { data, extraData } = props;\n const { cwd } = extraData;\n\n const items = data.map((d) => {\n const { module, initialChunks, asyncChunks } =\n d as Rule.ModuleMixedChunksRuleStoreData;\n\n const modulePath = beautifyPath(module.path, cwd);\n\n const ChildComponent = () => {\n return (\n <div className={styles.collapseContainer}>\n <Overview\n style={{ backgroundColor: '#fff' }}\n title={\n <Space>\n <Icon style={{ fontSize: '18px' }} component={TotalSizeSvg} />\n <Text style={{ width: innerWidth > 1500 ? 900 : 700 }}>\n Module:{' '}\n <Text\n style={{\n fontSize: 12,\n color: 'rgba(28, 31, 35, 0.6)',\n fontWeight: 300,\n }}\n >\n {modulePath}\n </Text>\n </Text>\n </Space>\n }\n description={\n <div className={styles.collapseChild}>\n {initialChunks.length > 0 && (\n <div style={{ marginBottom: 16 }}>\n <div\n style={{\n marginBottom: 8,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n Initial Chunks:\n </div>\n {initialChunks.map((chunk) => (\n <div\n key={chunk.id}\n style={{ display: 'flex', marginBottom: 4 }}\n >\n <div className={styles.attribute}>Chunk</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>\n {chunk.name || `chunk-${chunk.id}`}\n </span>\n </div>\n </div>\n ))}\n </div>\n )}\n {asyncChunks.length > 0 && (\n <div>\n <div\n style={{\n marginBottom: 8,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n Async Chunks:\n </div>\n {asyncChunks.map((chunk) => (\n <div\n key={chunk.id}\n style={{ display: 'flex', marginBottom: 4 }}\n >\n <div className={styles.attribute}>Chunk</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>\n {chunk.name ||\n `(no chunk name, ChunkId: ${chunk.id})`}\n </span>\n </div>\n </div>\n ))}\n </div>\n )}\n </div>\n }\n />\n </div>\n );\n };\n\n return {\n key: modulePath,\n label: (\n <LabelComponent\n title={\n <Tag style={{ backgroundColor: '#EAEDF1', borderRadius: '2px' }}>\n <span className={styles.pkgName}>{modulePath}</span>\n </Tag>\n }\n description={`is included in both initial and async chunks.`}\n />\n ),\n children: <ChildComponent />,\n };\n });\n\n return (\n <Collapse\n style={{ width: '100%' }}\n defaultActiveKey={items.map((item) => item.key)}\n items={items}\n />\n );\n};\n"],"names":["Text","Typography","innerWidth","window","LabelComponent","props","title","description","extra","styles","ModuleMixedChunksAlertCollapse","data","extraData","cwd","items","d","module","initialChunks","asyncChunks","modulePath","beautifyPath","ChildComponent","Overview","Space","Icon","TotalSizeSvg","chunk","Tag","Collapse","item"],"mappings":";;;;;;;AAYA,MAAM,EAAEA,IAAI,EAAE,GAAGC;AACjB,MAAM,EAAEC,YAAU,yCAAE,GAAGC;AAEvB,MAAMC,iBAAiB,CAACC;IAKtB,MAAM,EAAEC,KAAK,EAAEC,WAAW,EAAEC,KAAK,EAAE,GAAGH;IACtC,OAAO,WAAP,GACE,KAAC;QAAI,WAAWI,gBAAAA,KAAY;;0BAC1B,KAAC;gBAAI,WAAWA,gBAAAA,YAAmB;;kCACjC,IAAC;kCAAKH;;kCACN,IAAC;kCAAKC;;;;0BAER,IAAC;0BAAKC;;;;AAGZ;AAEO,MAAME,iCAAiC,CAACL;IAI7C,MAAM,EAAEM,IAAI,EAAEC,SAAS,EAAE,GAAGP;IAC5B,MAAM,EAAEQ,GAAG,EAAE,GAAGD;IAEhB,MAAME,QAAQH,KAAK,GAAG,CAAC,CAACI;QACtB,MAAM,EAAEC,MAAM,EAAEC,aAAa,EAAEC,WAAW,EAAE,GAC1CH;QAEF,MAAMI,aAAaC,aAAaJ,OAAO,IAAI,EAAEH;QAE7C,MAAMQ,iBAAiB,IACd,WAAP,GACE,IAAC;gBAAI,WAAWZ,gBAAAA,iBAAwB;0BACtC,kBAACa,UAAQA;oBACP,OAAO;wBAAE,iBAAiB;oBAAO;oBACjC,qBACE,KAACC,OAAKA;;0CACJ,IAACC,OAAIA;gCAAC,OAAO;oCAAE,UAAU;gCAAO;gCAAG,WAAWC;;0CAC9C,KAACzB,MAAAA;gCAAK,OAAO;oCAAE,OAAOE,0CAAa,OAAO,MAAM;gCAAI;;oCAAG;oCAC7C;kDACR,IAACF,MAAAA;wCACC,OAAO;4CACL,UAAU;4CACV,OAAO;4CACP,YAAY;wCACd;kDAECmB;;;;;;oBAKT,2BACE,KAAC;wBAAI,WAAWV,gBAAAA,aAAoB;;4BACjCQ,cAAc,MAAM,GAAG,KAAK,WAAL,GACtB,KAAC;gCAAI,OAAO;oCAAE,cAAc;gCAAG;;kDAC7B,IAAC;wCACC,OAAO;4CACL,cAAc;4CACd,YAAY;4CACZ,OAAO;wCACT;kDACD;;oCAGAA,cAAc,GAAG,CAAC,CAACS,QAAAA,WAAAA,GAClB,KAAC;4CAEC,OAAO;gDAAE,SAAS;gDAAQ,cAAc;4CAAE;;8DAE1C,IAAC;oDAAI,WAAWjB,gBAAAA,SAAgB;8DAAE;;8DAClC,IAAC;oDAAI,WAAWA,gBAAAA,aAAoB;8DAClC,kBAAC;wDAAK,WAAWA,gBAAAA,IAAW;kEACzBiB,MAAM,IAAI,IAAI,CAAC,MAAM,EAAEA,MAAM,EAAE,EAAE;;;;2CANjCA,MAAM,EAAE;;;4BAapBR,YAAY,MAAM,GAAG,KAAK,WAAL,GACpB,KAAC;;kDACC,IAAC;wCACC,OAAO;4CACL,cAAc;4CACd,YAAY;4CACZ,OAAO;wCACT;kDACD;;oCAGAA,YAAY,GAAG,CAAC,CAACQ,QAAAA,WAAAA,GAChB,KAAC;4CAEC,OAAO;gDAAE,SAAS;gDAAQ,cAAc;4CAAE;;8DAE1C,IAAC;oDAAI,WAAWjB,gBAAAA,SAAgB;8DAAE;;8DAClC,IAAC;oDAAI,WAAWA,gBAAAA,aAAoB;8DAClC,kBAAC;wDAAK,WAAWA,gBAAAA,IAAW;kEACzBiB,MAAM,IAAI,IACT,CAAC,yBAAyB,EAAEA,MAAM,EAAE,CAAC,CAAC,CAAC;;;;2CAPxCA,MAAM,EAAE;;;;;;;QAqBjC,OAAO;YACL,KAAKP;YACL,OAAO,WAAP,GACE,IAACf,gBAAAA;gBACC,qBACE,IAACuB,KAAGA;oBAAC,OAAO;wBAAE,iBAAiB;wBAAW,cAAc;oBAAM;8BAC5D,kBAAC;wBAAK,WAAWlB,gBAAAA,OAAc;kCAAGU;;;gBAGtC,aAAa;;YAGjB,UAAU,WAAV,GAAU,IAACE,gBAAAA,CAAAA;QACb;IACF;IAEA,OAAO,WAAP,GACE,IAACO,UAAQA;QACP,OAAO;YAAE,OAAO;QAAO;QACvB,kBAAkBd,MAAM,GAAG,CAAC,CAACe,OAASA,KAAK,GAAG;QAC9C,OAAOf;;AAGb"}
1
+ {"version":3,"file":"components/Alerts/collapse-module-mixed-chunks.mjs","sources":["../../../src/components/Alerts/collapse-module-mixed-chunks.tsx"],"sourcesContent":["import Icon from '@ant-design/icons';\nimport { Collapse, Space, Tag, Typography } from 'antd';\n\nimport Overview from '../Overall/overview';\nimport styles from './collapse.module.scss';\nimport TotalSizeSvg from '../../common/svg/total-size.svg';\nimport { beautifyPath } from '../../utils/file';\nimport { LabelComponent } from './collapse-shared';\n\nimport type { Rule } from '@rsdoctor/types';\nimport type { AlertProps } from '../Alert/types';\n\nconst { Text } = Typography;\nconst { innerWidth } = window;\n\nexport const ModuleMixedChunksAlertCollapse = (props: {\n data: Array<Rule.RuleStoreDataItem>;\n extraData: Omit<AlertProps, 'data'>;\n}) => {\n const { data, extraData } = props;\n const { cwd } = extraData;\n\n const items = data.map((d) => {\n const { module, initialChunks, asyncChunks } =\n d as Rule.ModuleMixedChunksRuleStoreData;\n\n const modulePath = beautifyPath(module.path, cwd);\n\n const ChildComponent = () => {\n return (\n <div className={styles.collapseContainer}>\n <Overview\n style={{ backgroundColor: '#fff' }}\n title={\n <Space>\n <Icon style={{ fontSize: '18px' }} component={TotalSizeSvg} />\n <Text style={{ width: innerWidth > 1500 ? 900 : 700 }}>\n Module:{' '}\n <Text\n style={{\n fontSize: 12,\n color: 'rgba(28, 31, 35, 0.6)',\n fontWeight: 300,\n }}\n >\n {modulePath}\n </Text>\n </Text>\n </Space>\n }\n description={\n <div className={styles.collapseChild}>\n {initialChunks.length > 0 && (\n <div style={{ marginBottom: 16 }}>\n <div\n style={{\n marginBottom: 8,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n Initial Chunks:\n </div>\n {initialChunks.map((chunk) => (\n <div\n key={chunk.id}\n style={{ display: 'flex', marginBottom: 4 }}\n >\n <div className={styles.attribute}>Chunk</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>\n {chunk.name || `chunk-${chunk.id}`}\n </span>\n </div>\n </div>\n ))}\n </div>\n )}\n {asyncChunks.length > 0 && (\n <div>\n <div\n style={{\n marginBottom: 8,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n Async Chunks:\n </div>\n {asyncChunks.map((chunk) => (\n <div\n key={chunk.id}\n style={{ display: 'flex', marginBottom: 4 }}\n >\n <div className={styles.attribute}>Chunk</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>\n {chunk.name ||\n `(no chunk name, ChunkId: ${chunk.id})`}\n </span>\n </div>\n </div>\n ))}\n </div>\n )}\n </div>\n }\n />\n </div>\n );\n };\n\n return {\n key: modulePath,\n label: (\n <LabelComponent\n title={\n <Tag style={{ backgroundColor: '#EAEDF1', borderRadius: '2px' }}>\n <span className={styles.pkgName}>{modulePath}</span>\n </Tag>\n }\n description={`is included in both initial and async chunks.`}\n />\n ),\n children: <ChildComponent />,\n };\n });\n\n return (\n <Collapse\n style={{ width: '100%' }}\n defaultActiveKey={items.map((item) => item.key)}\n items={items}\n />\n );\n};\n"],"names":["Text","Typography","innerWidth","window","ModuleMixedChunksAlertCollapse","props","data","extraData","cwd","items","d","module","initialChunks","asyncChunks","modulePath","beautifyPath","ChildComponent","styles","Overview","Space","Icon","TotalSizeSvg","chunk","LabelComponent","Tag","Collapse","item"],"mappings":";;;;;;;;AAYA,MAAM,EAAEA,MAAAA,IAAI,EAAE,GAAGC;AACjB,MAAM,EAAEC,YAAAA,uCAAU,EAAE,GAAGC;AAEhB,MAAMC,iCAAiC,CAACC;IAI7C,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGF;IAC5B,MAAM,EAAEG,GAAG,EAAE,GAAGD;IAEhB,MAAME,QAAQH,KAAK,GAAG,CAAC,CAACI;QACtB,MAAM,EAAEC,MAAM,EAAEC,aAAa,EAAEC,WAAW,EAAE,GAC1CH;QAEF,MAAMI,aAAaC,aAAaJ,OAAO,IAAI,EAAEH;QAE7C,MAAMQ,iBAAiB,IACd,WAAP,GACE,IAAC;gBAAI,WAAWC,gBAAAA,iBAAwB;0BACtC,kBAACC,UAAQA;oBACP,OAAO;wBAAE,iBAAiB;oBAAO;oBACjC,qBACE,KAACC,OAAKA;;0CACJ,IAACC,OAAIA;gCAAC,OAAO;oCAAE,UAAU;gCAAO;gCAAG,WAAWC;;0CAC9C,KAACrB,MAAIA;gCAAC,OAAO;oCAAE,OAAOE,0CAAa,OAAO,MAAM;gCAAI;;oCAAG;oCAC7C;kDACR,IAACF,MAAIA;wCACH,OAAO;4CACL,UAAU;4CACV,OAAO;4CACP,YAAY;wCACd;kDAECc;;;;;;oBAKT,2BACE,KAAC;wBAAI,WAAWG,gBAAAA,aAAoB;;4BACjCL,cAAc,MAAM,GAAG,KAAK,WAAL,GACtB,KAAC;gCAAI,OAAO;oCAAE,cAAc;gCAAG;;kDAC7B,IAAC;wCACC,OAAO;4CACL,cAAc;4CACd,YAAY;4CACZ,OAAO;wCACT;kDACD;;oCAGAA,cAAc,GAAG,CAAC,CAACU,QAAAA,WAAAA,GAClB,KAAC;4CAEC,OAAO;gDAAE,SAAS;gDAAQ,cAAc;4CAAE;;8DAE1C,IAAC;oDAAI,WAAWL,gBAAAA,SAAgB;8DAAE;;8DAClC,IAAC;oDAAI,WAAWA,gBAAAA,aAAoB;8DAClC,kBAAC;wDAAK,WAAWA,gBAAAA,IAAW;kEACzBK,MAAM,IAAI,IAAI,CAAC,MAAM,EAAEA,MAAM,EAAE,EAAE;;;;2CANjCA,MAAM,EAAE;;;4BAapBT,YAAY,MAAM,GAAG,KAAK,WAAL,GACpB,KAAC;;kDACC,IAAC;wCACC,OAAO;4CACL,cAAc;4CACd,YAAY;4CACZ,OAAO;wCACT;kDACD;;oCAGAA,YAAY,GAAG,CAAC,CAACS,QAAAA,WAAAA,GAChB,KAAC;4CAEC,OAAO;gDAAE,SAAS;gDAAQ,cAAc;4CAAE;;8DAE1C,IAAC;oDAAI,WAAWL,gBAAAA,SAAgB;8DAAE;;8DAClC,IAAC;oDAAI,WAAWA,gBAAAA,aAAoB;8DAClC,kBAAC;wDAAK,WAAWA,gBAAAA,IAAW;kEACzBK,MAAM,IAAI,IACT,CAAC,yBAAyB,EAAEA,MAAM,EAAE,CAAC,CAAC,CAAC;;;;2CAPxCA,MAAM,EAAE;;;;;;;QAqBjC,OAAO;YACL,KAAKR;YACL,OAAO,WAAP,GACE,IAACS,gBAAcA;gBACb,qBACE,IAACC,KAAGA;oBAAC,OAAO;wBAAE,iBAAiB;wBAAW,cAAc;oBAAM;8BAC5D,kBAAC;wBAAK,WAAWP,gBAAAA,OAAc;kCAAGH;;;gBAGtC,aAAa;;YAGjB,UAAU,WAAV,GAAU,IAACE,gBAAAA,CAAAA;QACb;IACF;IAEA,OAAO,WAAP,GACE,IAACS,UAAQA;QACP,OAAO;YAAE,OAAO;QAAO;QACvB,kBAAkBhB,MAAM,GAAG,CAAC,CAACiB,OAASA,KAAK,GAAG;QAC9C,OAAOjB;;AAGb"}
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const LabelComponent: (props: {
3
+ title: string | ReactNode;
4
+ description: string;
5
+ extra?: ReactNode;
6
+ }) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const IdeIcons: ({ file }: {
8
+ file: string;
9
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,90 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Space, Tooltip } from "antd";
3
+ import vscode from "../../common/svg/vscode.mjs";
4
+ import cursor from "../../common/svg/cursor.mjs";
5
+ import trae from "../../common/svg/trae.mjs";
6
+ import { openCursor, openTrae, openVSCode } from "../Opener/index.mjs";
7
+ import collapse_module from "./collapse.module.mjs";
8
+ const LabelComponent = (props)=>{
9
+ const { title, description, extra } = props;
10
+ return /*#__PURE__*/ jsxs("div", {
11
+ className: collapse_module.label,
12
+ children: [
13
+ /*#__PURE__*/ jsxs("div", {
14
+ className: collapse_module.labelContent,
15
+ children: [
16
+ /*#__PURE__*/ jsx("div", {
17
+ children: title
18
+ }),
19
+ /*#__PURE__*/ jsx("div", {
20
+ children: description
21
+ })
22
+ ]
23
+ }),
24
+ /*#__PURE__*/ jsx("div", {
25
+ children: extra
26
+ })
27
+ ]
28
+ });
29
+ };
30
+ const IdeIcons = ({ file })=>/*#__PURE__*/ jsxs(Space, {
31
+ size: 4,
32
+ style: {
33
+ marginLeft: 8,
34
+ flexShrink: 0,
35
+ marginTop: 5
36
+ },
37
+ children: [
38
+ /*#__PURE__*/ jsx(Tooltip, {
39
+ title: "Open in VSCode",
40
+ children: /*#__PURE__*/ jsx(vscode, {
41
+ style: {
42
+ width: 16,
43
+ height: 16,
44
+ cursor: 'pointer'
45
+ },
46
+ onClick: (e)=>{
47
+ e.stopPropagation();
48
+ openVSCode({
49
+ file
50
+ });
51
+ }
52
+ })
53
+ }),
54
+ /*#__PURE__*/ jsx(Tooltip, {
55
+ title: "Open in Cursor",
56
+ children: /*#__PURE__*/ jsx(cursor, {
57
+ style: {
58
+ width: 16,
59
+ height: 16,
60
+ cursor: 'pointer'
61
+ },
62
+ onClick: (e)=>{
63
+ e.stopPropagation();
64
+ openCursor({
65
+ file
66
+ });
67
+ }
68
+ })
69
+ }),
70
+ /*#__PURE__*/ jsx(Tooltip, {
71
+ title: "Open in Trae",
72
+ children: /*#__PURE__*/ jsx(trae, {
73
+ style: {
74
+ width: 16,
75
+ height: 16,
76
+ cursor: 'pointer'
77
+ },
78
+ onClick: (e)=>{
79
+ e.stopPropagation();
80
+ openTrae({
81
+ file
82
+ });
83
+ }
84
+ })
85
+ })
86
+ ]
87
+ });
88
+ export { IdeIcons, LabelComponent };
89
+
90
+ //# sourceMappingURL=collapse-shared.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components/Alerts/collapse-shared.mjs","sources":["../../../src/components/Alerts/collapse-shared.tsx"],"sourcesContent":["import { Space, Tooltip } from 'antd';\nimport { ReactNode } from 'react';\n\nimport VSCodeIcon from '../../common/svg/vscode.svg';\nimport CursorIcon from '../../common/svg/cursor.svg';\nimport TraeIcon from '../../common/svg/trae.svg';\nimport { openVSCode, openCursor, openTrae } from '../Opener';\n\nimport styles from './collapse.module.scss';\n\nexport const LabelComponent = (props: {\n title: string | ReactNode;\n description: string;\n extra?: ReactNode;\n}) => {\n const { title, description, extra } = props;\n return (\n <div className={styles.label}>\n <div className={styles.labelContent}>\n <div>{title}</div>\n <div>{description}</div>\n </div>\n <div>{extra}</div>\n </div>\n );\n};\n\nexport const IdeIcons = ({ file }: { file: string }) => (\n <Space size={4} style={{ marginLeft: 8, flexShrink: 0, marginTop: 5 }}>\n <Tooltip title=\"Open in VSCode\">\n <VSCodeIcon\n style={{ width: 16, height: 16, cursor: 'pointer' }}\n onClick={(e: React.MouseEvent) => {\n e.stopPropagation();\n openVSCode({ file });\n }}\n />\n </Tooltip>\n <Tooltip title=\"Open in Cursor\">\n <CursorIcon\n style={{ width: 16, height: 16, cursor: 'pointer' }}\n onClick={(e: React.MouseEvent) => {\n e.stopPropagation();\n openCursor({ file });\n }}\n />\n </Tooltip>\n <Tooltip title=\"Open in Trae\">\n <TraeIcon\n style={{ width: 16, height: 16, cursor: 'pointer' }}\n onClick={(e: React.MouseEvent) => {\n e.stopPropagation();\n openTrae({ file });\n }}\n />\n </Tooltip>\n </Space>\n);\n"],"names":["LabelComponent","props","title","description","extra","styles","IdeIcons","file","Space","Tooltip","VSCodeIcon","e","openVSCode","CursorIcon","openCursor","TraeIcon","openTrae"],"mappings":";;;;;;;AAUO,MAAMA,iBAAiB,CAACC;IAK7B,MAAM,EAAEC,KAAK,EAAEC,WAAW,EAAEC,KAAK,EAAE,GAAGH;IACtC,OAAO,WAAP,GACE,KAAC;QAAI,WAAWI,gBAAAA,KAAY;;0BAC1B,KAAC;gBAAI,WAAWA,gBAAAA,YAAmB;;kCACjC,IAAC;kCAAKH;;kCACN,IAAC;kCAAKC;;;;0BAER,IAAC;0BAAKC;;;;AAGZ;AAEO,MAAME,WAAW,CAAC,EAAEC,IAAI,EAAoB,iBACjD,KAACC,OAAKA;QAAC,MAAM;QAAG,OAAO;YAAE,YAAY;YAAG,YAAY;YAAG,WAAW;QAAE;;0BAClE,IAACC,SAAOA;gBAAC,OAAM;0BACb,kBAACC,QAAUA;oBACT,OAAO;wBAAE,OAAO;wBAAI,QAAQ;wBAAI,QAAQ;oBAAU;oBAClD,SAAS,CAACC;wBACRA,EAAE,eAAe;wBACjBC,WAAW;4BAAEL;wBAAK;oBACpB;;;0BAGJ,IAACE,SAAOA;gBAAC,OAAM;0BACb,kBAACI,QAAUA;oBACT,OAAO;wBAAE,OAAO;wBAAI,QAAQ;wBAAI,QAAQ;oBAAU;oBAClD,SAAS,CAACF;wBACRA,EAAE,eAAe;wBACjBG,WAAW;4BAAEP;wBAAK;oBACpB;;;0BAGJ,IAACE,SAAOA;gBAAC,OAAM;0BACb,kBAACM,MAAQA;oBACP,OAAO;wBAAE,OAAO;wBAAI,QAAQ;wBAAI,QAAQ;oBAAU;oBAClD,SAAS,CAACJ;wBACRA,EAAE,eAAe;wBACjBK,SAAS;4BAAET;wBAAK;oBAClB"}
@@ -0,0 +1,6 @@
1
+ import type { Rule } from '@rsdoctor/types';
2
+ import type { AlertProps } from '../Alert/types.js';
3
+ export declare const SideEffectsOnlyImportsAlertCollapse: (props: {
4
+ data: Array<Rule.RuleStoreDataItem>;
5
+ extraData: Omit<AlertProps, "data">;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,131 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import icons from "@ant-design/icons";
3
+ import { Collapse, Space, Tag, Typography } from "antd";
4
+ import overview from "../Overall/overview.mjs";
5
+ import collapse_module from "./collapse.module.mjs";
6
+ import total_size from "../../common/svg/total-size.mjs";
7
+ import { beautifyPath } from "../../utils/file.mjs";
8
+ import { IdeIcons, LabelComponent } from "./collapse-shared.mjs";
9
+ const { Text: Text } = Typography;
10
+ const { innerWidth: collapse_side_effects_only_imports_innerWidth } = window;
11
+ const SideEffectsOnlyImportsAlertCollapse = (props)=>{
12
+ const { data, extraData } = props;
13
+ const { cwd } = extraData;
14
+ const items = data.map((d)=>{
15
+ const { module, connections } = d;
16
+ const modulePath = beautifyPath(module.path, cwd);
17
+ const ChildComponent = ()=>/*#__PURE__*/ jsx("div", {
18
+ className: collapse_module.collapseContainer,
19
+ children: /*#__PURE__*/ jsx(overview, {
20
+ style: {
21
+ backgroundColor: '#fff'
22
+ },
23
+ title: /*#__PURE__*/ jsxs(Space, {
24
+ align: "center",
25
+ children: [
26
+ /*#__PURE__*/ jsx(icons, {
27
+ style: {
28
+ fontSize: '18px'
29
+ },
30
+ component: total_size
31
+ }),
32
+ /*#__PURE__*/ jsxs(Text, {
33
+ style: {
34
+ width: collapse_side_effects_only_imports_innerWidth > 1500 ? 900 : 700
35
+ },
36
+ children: [
37
+ "Module:",
38
+ ' ',
39
+ /*#__PURE__*/ jsx(Text, {
40
+ style: {
41
+ fontSize: 12,
42
+ color: 'rgba(28, 31, 35, 0.6)',
43
+ fontWeight: 300
44
+ },
45
+ children: modulePath
46
+ })
47
+ ]
48
+ }),
49
+ /*#__PURE__*/ jsx(IdeIcons, {
50
+ file: module.path
51
+ })
52
+ ]
53
+ }),
54
+ description: /*#__PURE__*/ jsxs("div", {
55
+ className: collapse_module.collapseChild,
56
+ children: [
57
+ /*#__PURE__*/ jsx("div", {
58
+ style: {
59
+ marginBottom: 8,
60
+ fontWeight: 500,
61
+ color: 'rgba(28, 31, 35, 0.85)'
62
+ },
63
+ children: "Side-Effects-Only Importers:"
64
+ }),
65
+ connections.map((conn, idx)=>/*#__PURE__*/ jsxs("div", {
66
+ style: {
67
+ display: 'flex',
68
+ marginBottom: 4
69
+ },
70
+ children: [
71
+ /*#__PURE__*/ jsx("div", {
72
+ className: collapse_module.attribute,
73
+ children: "Import"
74
+ }),
75
+ /*#__PURE__*/ jsxs("div", {
76
+ className: collapse_module.iconContainer,
77
+ children: [
78
+ /*#__PURE__*/ jsx("span", {
79
+ className: collapse_module.data,
80
+ children: conn.userRequest
81
+ }),
82
+ /*#__PURE__*/ jsx(Tag, {
83
+ style: {
84
+ marginLeft: 8,
85
+ backgroundColor: '#EAEDF1',
86
+ borderRadius: '2px',
87
+ fontSize: 11
88
+ },
89
+ children: conn.dependencyType
90
+ })
91
+ ]
92
+ })
93
+ ]
94
+ }, idx))
95
+ ]
96
+ })
97
+ })
98
+ });
99
+ return {
100
+ key: modulePath,
101
+ label: /*#__PURE__*/ jsx(LabelComponent, {
102
+ title: /*#__PURE__*/ jsx(Space, {
103
+ size: 4,
104
+ align: "center",
105
+ children: /*#__PURE__*/ jsx(Tag, {
106
+ style: {
107
+ backgroundColor: '#EAEDF1',
108
+ borderRadius: '2px'
109
+ },
110
+ children: /*#__PURE__*/ jsx("span", {
111
+ className: collapse_module.pkgName,
112
+ children: modulePath
113
+ })
114
+ })
115
+ }),
116
+ description: `is only imported for its side effects by ${new Set(connections.map((c)=>c.originModule)).size} importer(s).`
117
+ }),
118
+ children: /*#__PURE__*/ jsx(ChildComponent, {})
119
+ };
120
+ });
121
+ return /*#__PURE__*/ jsx(Collapse, {
122
+ style: {
123
+ width: '100%'
124
+ },
125
+ defaultActiveKey: items.map((item)=>item.key),
126
+ items: items
127
+ });
128
+ };
129
+ export { SideEffectsOnlyImportsAlertCollapse };
130
+
131
+ //# sourceMappingURL=collapse-side-effects-only-imports.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components/Alerts/collapse-side-effects-only-imports.mjs","sources":["../../../src/components/Alerts/collapse-side-effects-only-imports.tsx"],"sourcesContent":["import Icon from '@ant-design/icons';\nimport { Collapse, Space, Tag, Typography } from 'antd';\n\nimport Overview from '../Overall/overview';\nimport styles from './collapse.module.scss';\nimport TotalSizeSvg from '../../common/svg/total-size.svg';\nimport { beautifyPath } from '../../utils/file';\nimport { LabelComponent, IdeIcons } from './collapse-shared';\n\nimport type { Rule } from '@rsdoctor/types';\nimport type { AlertProps } from '../Alert/types';\n\nconst { Text } = Typography;\nconst { innerWidth } = window;\n\nexport const SideEffectsOnlyImportsAlertCollapse = (props: {\n data: Array<Rule.RuleStoreDataItem>;\n extraData: Omit<AlertProps, 'data'>;\n}) => {\n const { data, extraData } = props;\n const { cwd } = extraData;\n\n const items = data.map((d) => {\n const { module, connections } =\n d as Rule.ConnectionsOnlyImportsRuleStoreData;\n\n const modulePath = beautifyPath(module.path, cwd);\n\n const ChildComponent = () => {\n return (\n <div className={styles.collapseContainer}>\n <Overview\n style={{ backgroundColor: '#fff' }}\n title={\n <Space align=\"center\">\n <Icon style={{ fontSize: '18px' }} component={TotalSizeSvg} />\n <Text style={{ width: innerWidth > 1500 ? 900 : 700 }}>\n Module:{' '}\n <Text\n style={{\n fontSize: 12,\n color: 'rgba(28, 31, 35, 0.6)',\n fontWeight: 300,\n }}\n >\n {modulePath}\n </Text>\n </Text>\n <IdeIcons file={module.path} />\n </Space>\n }\n description={\n <div className={styles.collapseChild}>\n <div\n style={{\n marginBottom: 8,\n fontWeight: 500,\n color: 'rgba(28, 31, 35, 0.85)',\n }}\n >\n Side-Effects-Only Importers:\n </div>\n {connections.map((conn, idx) => (\n <div key={idx} style={{ display: 'flex', marginBottom: 4 }}>\n <div className={styles.attribute}>Import</div>\n <div className={styles.iconContainer}>\n <span className={styles.data}>{conn.userRequest}</span>\n <Tag\n style={{\n marginLeft: 8,\n backgroundColor: '#EAEDF1',\n borderRadius: '2px',\n fontSize: 11,\n }}\n >\n {conn.dependencyType}\n </Tag>\n </div>\n </div>\n ))}\n </div>\n }\n />\n </div>\n );\n };\n\n return {\n key: modulePath,\n label: (\n <LabelComponent\n title={\n <Space size={4} align=\"center\">\n <Tag style={{ backgroundColor: '#EAEDF1', borderRadius: '2px' }}>\n <span className={styles.pkgName}>{modulePath}</span>\n </Tag>\n </Space>\n }\n description={`is only imported for its side effects by ${new Set(connections.map((c) => c.originModule)).size} importer(s).`}\n />\n ),\n children: <ChildComponent />,\n };\n });\n\n return (\n <Collapse\n style={{ width: '100%' }}\n defaultActiveKey={items.map((item) => item.key)}\n items={items}\n />\n );\n};\n"],"names":["Text","Typography","innerWidth","window","SideEffectsOnlyImportsAlertCollapse","props","data","extraData","cwd","items","d","module","connections","modulePath","beautifyPath","ChildComponent","styles","Overview","Space","Icon","TotalSizeSvg","IdeIcons","conn","idx","Tag","LabelComponent","Set","c","Collapse","item"],"mappings":";;;;;;;;AAYA,MAAM,EAAEA,MAAAA,IAAI,EAAE,GAAGC;AACjB,MAAM,EAAEC,YAAAA,6CAAU,EAAE,GAAGC;AAEhB,MAAMC,sCAAsC,CAACC;IAIlD,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGF;IAC5B,MAAM,EAAEG,GAAG,EAAE,GAAGD;IAEhB,MAAME,QAAQH,KAAK,GAAG,CAAC,CAACI;QACtB,MAAM,EAAEC,MAAM,EAAEC,WAAW,EAAE,GAC3BF;QAEF,MAAMG,aAAaC,aAAaH,OAAO,IAAI,EAAEH;QAE7C,MAAMO,iBAAiB,IACd,WAAP,GACE,IAAC;gBAAI,WAAWC,gBAAAA,iBAAwB;0BACtC,kBAACC,UAAQA;oBACP,OAAO;wBAAE,iBAAiB;oBAAO;oBACjC,qBACE,KAACC,OAAKA;wBAAC,OAAM;;0CACX,IAACC,OAAIA;gCAAC,OAAO;oCAAE,UAAU;gCAAO;gCAAG,WAAWC;;0CAC9C,KAACpB,MAAIA;gCAAC,OAAO;oCAAE,OAAOE,gDAAa,OAAO,MAAM;gCAAI;;oCAAG;oCAC7C;kDACR,IAACF,MAAIA;wCACH,OAAO;4CACL,UAAU;4CACV,OAAO;4CACP,YAAY;wCACd;kDAECa;;;;0CAGL,IAACQ,UAAQA;gCAAC,MAAMV,OAAO,IAAI;;;;oBAG/B,2BACE,KAAC;wBAAI,WAAWK,gBAAAA,aAAoB;;0CAClC,IAAC;gCACC,OAAO;oCACL,cAAc;oCACd,YAAY;oCACZ,OAAO;gCACT;0CACD;;4BAGAJ,YAAY,GAAG,CAAC,CAACU,MAAMC,MAAAA,WAAAA,GACtB,KAAC;oCAAc,OAAO;wCAAE,SAAS;wCAAQ,cAAc;oCAAE;;sDACvD,IAAC;4CAAI,WAAWP,gBAAAA,SAAgB;sDAAE;;sDAClC,KAAC;4CAAI,WAAWA,gBAAAA,aAAoB;;8DAClC,IAAC;oDAAK,WAAWA,gBAAAA,IAAW;8DAAGM,KAAK,WAAW;;8DAC/C,IAACE,KAAGA;oDACF,OAAO;wDACL,YAAY;wDACZ,iBAAiB;wDACjB,cAAc;wDACd,UAAU;oDACZ;8DAECF,KAAK,cAAc;;;;;mCAZhBC;;;;;QAwBxB,OAAO;YACL,KAAKV;YACL,OAAO,WAAP,GACE,IAACY,gBAAcA;gBACb,qBACE,IAACP,OAAKA;oBAAC,MAAM;oBAAG,OAAM;8BACpB,kBAACM,KAAGA;wBAAC,OAAO;4BAAE,iBAAiB;4BAAW,cAAc;wBAAM;kCAC5D,kBAAC;4BAAK,WAAWR,gBAAAA,OAAc;sCAAGH;;;;gBAIxC,aAAa,CAAC,yCAAyC,EAAE,IAAIa,IAAId,YAAY,GAAG,CAAC,CAACe,IAAMA,EAAE,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;;YAGhI,UAAU,WAAV,GAAU,IAACZ,gBAAAA,CAAAA;QACb;IACF;IAEA,OAAO,WAAP,GACE,IAACa,UAAQA;QACP,OAAO;YAAE,OAAO;QAAO;QACvB,kBAAkBnB,MAAM,GAAG,CAAC,CAACoB,OAASA,KAAK,GAAG;QAC9C,OAAOpB;;AAGb"}
@@ -12,30 +12,9 @@ import source_size from "../../common/svg/source-size.mjs";
12
12
  import total_size from "../../common/svg/total-size.mjs";
13
13
  import svg_version from "../../common/svg/version.mjs";
14
14
  import collapse_module from "./collapse.module.mjs";
15
- const { Paragraph, Text } = Typography;
15
+ import { LabelComponent } from "./collapse-shared.mjs";
16
+ const { Paragraph: Paragraph, Text: Text } = Typography;
16
17
  const { innerWidth: collapse_innerWidth } = window;
17
- const LabelComponent = (props)=>{
18
- const { title, description, extra } = props;
19
- return /*#__PURE__*/ jsxs("div", {
20
- className: collapse_module.label,
21
- children: [
22
- /*#__PURE__*/ jsxs("div", {
23
- className: collapse_module.labelContent,
24
- children: [
25
- /*#__PURE__*/ jsx("div", {
26
- children: title
27
- }),
28
- /*#__PURE__*/ jsx("div", {
29
- children: description
30
- })
31
- ]
32
- }),
33
- /*#__PURE__*/ jsx("div", {
34
- children: extra
35
- })
36
- ]
37
- });
38
- };
39
18
  const AlertCollapse = (props)=>{
40
19
  const { data, extraData } = props;
41
20
  const items = data.map((d)=>{