@ktnpm_devops/react-component 0.2.1 → 0.3.0

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 (265) hide show
  1. package/dist/index.cjs +34 -33
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +34 -33
  6. package/dist/index.js.map +1 -1
  7. package/dist/index10.cjs +15 -4
  8. package/dist/index10.cjs.map +1 -1
  9. package/dist/index10.js +15 -4
  10. package/dist/index10.js.map +1 -1
  11. package/dist/index11.cjs +4 -16
  12. package/dist/index11.cjs.map +1 -1
  13. package/dist/index11.js +4 -16
  14. package/dist/index11.js.map +1 -1
  15. package/dist/index12.cjs +16 -10
  16. package/dist/index12.cjs.map +1 -1
  17. package/dist/index12.js +16 -10
  18. package/dist/index12.js.map +1 -1
  19. package/dist/index13.cjs +10 -100
  20. package/dist/index13.cjs.map +1 -1
  21. package/dist/index13.js +11 -101
  22. package/dist/index13.js.map +1 -1
  23. package/dist/index14.cjs +100 -20
  24. package/dist/index14.cjs.map +1 -1
  25. package/dist/index14.js +101 -21
  26. package/dist/index14.js.map +1 -1
  27. package/dist/index15.cjs +20 -90
  28. package/dist/index15.cjs.map +1 -1
  29. package/dist/index15.js +21 -91
  30. package/dist/index15.js.map +1 -1
  31. package/dist/index16.cjs +85 -153
  32. package/dist/index16.cjs.map +1 -1
  33. package/dist/index16.js +87 -155
  34. package/dist/index16.js.map +1 -1
  35. package/dist/index17.cjs +150 -128
  36. package/dist/index17.cjs.map +1 -1
  37. package/dist/index17.js +150 -128
  38. package/dist/index17.js.map +1 -1
  39. package/dist/index18.cjs +121 -106
  40. package/dist/index18.cjs.map +1 -1
  41. package/dist/index18.js +122 -107
  42. package/dist/index18.js.map +1 -1
  43. package/dist/index19.cjs +121 -17
  44. package/dist/index19.cjs.map +1 -1
  45. package/dist/index19.js +121 -17
  46. package/dist/index19.js.map +1 -1
  47. package/dist/index20.cjs +17 -8
  48. package/dist/index20.cjs.map +1 -1
  49. package/dist/index20.js +18 -9
  50. package/dist/index20.js.map +1 -1
  51. package/dist/index21.cjs +7 -130
  52. package/dist/index21.cjs.map +1 -1
  53. package/dist/index21.js +9 -132
  54. package/dist/index21.js.map +1 -1
  55. package/dist/index22.cjs +128 -35
  56. package/dist/index22.cjs.map +1 -1
  57. package/dist/index22.js +129 -36
  58. package/dist/index22.js.map +1 -1
  59. package/dist/index23.cjs +36 -222
  60. package/dist/index23.cjs.map +1 -1
  61. package/dist/index23.js +37 -223
  62. package/dist/index23.js.map +1 -1
  63. package/dist/index24.cjs +218 -28
  64. package/dist/index24.cjs.map +1 -1
  65. package/dist/index24.js +220 -30
  66. package/dist/index24.js.map +1 -1
  67. package/dist/index25.cjs +29 -73
  68. package/dist/index25.cjs.map +1 -1
  69. package/dist/index25.js +31 -75
  70. package/dist/index25.js.map +1 -1
  71. package/dist/index26.cjs +69 -144
  72. package/dist/index26.cjs.map +1 -1
  73. package/dist/index26.js +70 -145
  74. package/dist/index26.js.map +1 -1
  75. package/dist/index27.cjs +152 -7
  76. package/dist/index27.cjs.map +1 -1
  77. package/dist/index27.js +154 -9
  78. package/dist/index27.js.map +1 -1
  79. package/dist/index28.cjs +8 -17
  80. package/dist/index28.cjs.map +1 -1
  81. package/dist/index28.js +9 -18
  82. package/dist/index28.js.map +1 -1
  83. package/dist/index29.cjs +15 -75
  84. package/dist/index29.cjs.map +1 -1
  85. package/dist/index29.js +16 -76
  86. package/dist/index29.js.map +1 -1
  87. package/dist/index3.cjs +76 -16
  88. package/dist/index3.cjs.map +1 -1
  89. package/dist/index3.js +76 -16
  90. package/dist/index3.js.map +1 -1
  91. package/dist/index30.cjs +68 -134
  92. package/dist/index30.cjs.map +1 -1
  93. package/dist/index30.js +70 -136
  94. package/dist/index30.js.map +1 -1
  95. package/dist/index31.cjs +136 -98
  96. package/dist/index31.cjs.map +1 -1
  97. package/dist/index31.js +137 -99
  98. package/dist/index31.js.map +1 -1
  99. package/dist/index32.cjs +105 -6
  100. package/dist/index32.cjs.map +1 -1
  101. package/dist/index32.js +106 -7
  102. package/dist/index32.js.map +1 -1
  103. package/dist/index33.cjs +6 -216
  104. package/dist/index33.cjs.map +1 -1
  105. package/dist/index33.js +7 -217
  106. package/dist/index33.js.map +1 -1
  107. package/dist/index34.cjs +215 -7
  108. package/dist/index34.cjs.map +1 -1
  109. package/dist/index34.js +217 -9
  110. package/dist/index34.js.map +1 -1
  111. package/dist/index35.cjs +10 -16
  112. package/dist/index35.cjs.map +1 -1
  113. package/dist/index35.js +9 -15
  114. package/dist/index35.js.map +1 -1
  115. package/dist/index36.cjs +15 -6
  116. package/dist/index36.cjs.map +1 -1
  117. package/dist/index36.js +15 -6
  118. package/dist/index36.js.map +1 -1
  119. package/dist/index37.cjs +4 -1
  120. package/dist/index37.cjs.map +1 -1
  121. package/dist/index37.js +4 -1
  122. package/dist/index37.js.map +1 -1
  123. package/dist/index38.cjs +11 -2
  124. package/dist/index38.cjs.map +1 -1
  125. package/dist/index38.js +11 -2
  126. package/dist/index38.js.map +1 -1
  127. package/dist/index39.cjs +67 -21
  128. package/dist/index39.cjs.map +1 -1
  129. package/dist/index39.js +66 -20
  130. package/dist/index39.js.map +1 -1
  131. package/dist/index4.cjs +12 -8
  132. package/dist/index4.cjs.map +1 -1
  133. package/dist/index4.js +12 -8
  134. package/dist/index4.js.map +1 -1
  135. package/dist/index40.cjs +39 -67
  136. package/dist/index40.cjs.map +1 -1
  137. package/dist/index40.js +38 -66
  138. package/dist/index40.js.map +1 -1
  139. package/dist/index41.cjs +15 -33
  140. package/dist/index41.cjs.map +1 -1
  141. package/dist/index41.js +16 -34
  142. package/dist/index41.js.map +1 -1
  143. package/dist/index42.cjs +52 -16
  144. package/dist/index42.cjs.map +1 -1
  145. package/dist/index42.js +52 -16
  146. package/dist/index42.js.map +1 -1
  147. package/dist/index43.cjs +13 -10
  148. package/dist/index43.cjs.map +1 -1
  149. package/dist/index43.js +13 -10
  150. package/dist/index43.js.map +1 -1
  151. package/dist/index44.cjs +29 -17
  152. package/dist/index44.cjs.map +1 -1
  153. package/dist/index44.js +29 -17
  154. package/dist/index44.js.map +1 -1
  155. package/dist/index45.cjs +19 -134
  156. package/dist/index45.cjs.map +1 -1
  157. package/dist/index45.js +18 -133
  158. package/dist/index45.js.map +1 -1
  159. package/dist/index46.cjs +13 -40
  160. package/dist/index46.cjs.map +1 -1
  161. package/dist/index46.js +13 -40
  162. package/dist/index46.js.map +1 -1
  163. package/dist/index47.cjs +2 -29
  164. package/dist/index47.cjs.map +1 -1
  165. package/dist/index47.js +3 -30
  166. package/dist/index47.js.map +1 -1
  167. package/dist/index48.cjs +2 -53
  168. package/dist/index48.cjs.map +1 -1
  169. package/dist/index48.js +3 -54
  170. package/dist/index48.js.map +1 -1
  171. package/dist/index49.cjs +3 -30
  172. package/dist/index49.cjs.map +1 -1
  173. package/dist/index49.js +3 -30
  174. package/dist/index49.js.map +1 -1
  175. package/dist/index5.cjs +9 -16
  176. package/dist/index5.cjs.map +1 -1
  177. package/dist/index5.js +10 -17
  178. package/dist/index5.js.map +1 -1
  179. package/dist/index50.cjs +34 -34
  180. package/dist/index50.js +34 -34
  181. package/dist/index51.cjs +49 -19
  182. package/dist/index51.cjs.map +1 -1
  183. package/dist/index51.js +50 -20
  184. package/dist/index51.js.map +1 -1
  185. package/dist/index52.cjs +16 -13
  186. package/dist/index52.cjs.map +1 -1
  187. package/dist/index52.js +16 -13
  188. package/dist/index52.js.map +1 -1
  189. package/dist/index53.cjs +35 -32
  190. package/dist/index53.cjs.map +1 -1
  191. package/dist/index53.js +35 -32
  192. package/dist/index53.js.map +1 -1
  193. package/dist/index54.cjs +53 -5
  194. package/dist/index54.cjs.map +1 -1
  195. package/dist/index54.js +54 -6
  196. package/dist/index54.js.map +1 -1
  197. package/dist/index55.cjs +134 -19
  198. package/dist/index55.cjs.map +1 -1
  199. package/dist/index55.js +133 -18
  200. package/dist/index55.js.map +1 -1
  201. package/dist/index56.cjs +40 -10
  202. package/dist/index56.cjs.map +1 -1
  203. package/dist/index56.js +40 -10
  204. package/dist/index56.js.map +1 -1
  205. package/dist/index57.cjs +26 -8
  206. package/dist/index57.cjs.map +1 -1
  207. package/dist/index57.js +27 -9
  208. package/dist/index57.js.map +1 -1
  209. package/dist/index58.cjs +22 -19
  210. package/dist/index58.cjs.map +1 -1
  211. package/dist/index58.js +22 -19
  212. package/dist/index58.js.map +1 -1
  213. package/dist/index59.cjs +10 -79
  214. package/dist/index59.cjs.map +1 -1
  215. package/dist/index59.js +10 -79
  216. package/dist/index59.js.map +1 -1
  217. package/dist/index6.cjs +19 -65
  218. package/dist/index6.cjs.map +1 -1
  219. package/dist/index6.js +19 -65
  220. package/dist/index6.js.map +1 -1
  221. package/dist/index60.cjs +19 -22
  222. package/dist/index60.cjs.map +1 -1
  223. package/dist/index60.js +20 -23
  224. package/dist/index60.js.map +1 -1
  225. package/dist/index61.cjs +54 -27
  226. package/dist/index61.cjs.map +1 -1
  227. package/dist/index61.js +55 -28
  228. package/dist/index61.js.map +1 -1
  229. package/dist/index62.cjs +37 -13
  230. package/dist/index62.cjs.map +1 -1
  231. package/dist/index62.js +38 -14
  232. package/dist/index62.js.map +1 -1
  233. package/dist/index63.cjs +16 -49
  234. package/dist/index63.cjs.map +1 -1
  235. package/dist/index63.js +16 -49
  236. package/dist/index63.js.map +1 -1
  237. package/dist/index64.cjs +16 -37
  238. package/dist/index64.cjs.map +1 -1
  239. package/dist/index64.js +16 -37
  240. package/dist/index64.js.map +1 -1
  241. package/dist/index65.cjs +18 -0
  242. package/dist/index65.cjs.map +1 -0
  243. package/dist/index65.js +18 -0
  244. package/dist/index65.js.map +1 -0
  245. package/dist/index7.cjs +58 -75
  246. package/dist/index7.cjs.map +1 -1
  247. package/dist/index7.js +58 -75
  248. package/dist/index7.js.map +1 -1
  249. package/dist/index8.cjs +82 -15
  250. package/dist/index8.cjs.map +1 -1
  251. package/dist/index8.js +82 -15
  252. package/dist/index8.js.map +1 -1
  253. package/dist/index9.cjs +14 -15
  254. package/dist/index9.cjs.map +1 -1
  255. package/dist/index9.js +15 -16
  256. package/dist/index9.js.map +1 -1
  257. package/dist/style.css +271 -0
  258. package/dist/tokens/semantic-tokens.css +21 -0
  259. package/dist/tokens/tokens.d.ts +35 -0
  260. package/dist/tokens/tokens.d.ts.map +1 -1
  261. package/package.json +1 -1
  262. package/dist/index2.cjs +0 -44
  263. package/dist/index2.cjs.map +0 -1
  264. package/dist/index2.js +0 -44
  265. package/dist/index2.js.map +0 -1
package/dist/index42.js CHANGED
@@ -1,24 +1,60 @@
1
- const root = "krc-root-pS02L";
2
- const sidebar = "krc-sidebar-n1HeR";
3
- const conversationList = "krc-conversationList-E8ODD";
4
- const mainArea = "krc-mainArea-E0cNf";
5
- const messages = "krc-messages-S9aU-";
6
- const input = "krc-input-HAMJ3";
1
+ const root = "krc-root--s1oD";
2
+ const trigger = "krc-trigger-WMlNa";
3
+ const active = "krc-active-O65lj";
4
+ const triggerContent = "krc-triggerContent-JipmE";
5
+ const chevron = "krc-chevron-J2Zsy";
6
+ const label = "krc-label-lZlV-";
7
+ const value = "krc-value-HsQrC";
8
+ const clear = "krc-clear-bsi5j";
9
+ const panel = "krc-panel--0odx";
10
+ const searchContainer = "krc-searchContainer-WRS-U";
11
+ const search = "krc-search-Dh3pY";
12
+ const list = "krc-list-1RUtr";
13
+ const noResults = "krc-noResults-Hin1U";
14
+ const option = "krc-option-0mFGi";
15
+ const focused = "krc-focused-0-7tE";
16
+ const selected = "krc-selected-1zIqI";
17
+ const optionLabel = "krc-optionLabel-pj-hL";
18
+ const optionCount = "krc-optionCount-rVlCP";
7
19
  const styles = {
8
20
  root,
9
- sidebar,
10
- conversationList,
11
- mainArea,
12
- messages,
13
- input
21
+ trigger,
22
+ active,
23
+ triggerContent,
24
+ chevron,
25
+ label,
26
+ value,
27
+ clear,
28
+ panel,
29
+ searchContainer,
30
+ search,
31
+ list,
32
+ noResults,
33
+ option,
34
+ focused,
35
+ selected,
36
+ optionLabel,
37
+ optionCount
14
38
  };
15
39
  export {
16
- conversationList,
40
+ active,
41
+ chevron,
42
+ clear,
17
43
  styles as default,
18
- input,
19
- mainArea,
20
- messages,
44
+ focused,
45
+ label,
46
+ list,
47
+ noResults,
48
+ option,
49
+ optionCount,
50
+ optionLabel,
51
+ panel,
21
52
  root,
22
- sidebar
53
+ search,
54
+ searchContainer,
55
+ selected,
56
+ trigger,
57
+ triggerContent,
58
+ value
23
59
  };
24
60
  //# sourceMappingURL=index42.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index42.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index42.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index43.cjs CHANGED
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "krc-root-la9-1";
4
- const logo = "krc-logo-b73UT";
5
- const card = "krc-card-1ev-q";
6
- const footer = "krc-footer-E0B15";
3
+ const root = "krc-root-WL0sD";
4
+ const left = "krc-left-9KFDB";
5
+ const right = "krc-right-YmUbX";
6
+ const divider = "krc-divider-jNOSU";
7
+ const dividerHandle = "krc-dividerHandle-SoNqx";
7
8
  const styles = {
8
9
  root,
9
- logo,
10
- card,
11
- footer
10
+ left,
11
+ right,
12
+ divider,
13
+ dividerHandle
12
14
  };
13
- exports.card = card;
14
15
  exports.default = styles;
15
- exports.footer = footer;
16
- exports.logo = logo;
16
+ exports.divider = divider;
17
+ exports.dividerHandle = dividerHandle;
18
+ exports.left = left;
19
+ exports.right = right;
17
20
  exports.root = root;
18
21
  //# sourceMappingURL=index43.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index43.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index43.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
package/dist/index43.js CHANGED
@@ -1,18 +1,21 @@
1
- const root = "krc-root-la9-1";
2
- const logo = "krc-logo-b73UT";
3
- const card = "krc-card-1ev-q";
4
- const footer = "krc-footer-E0B15";
1
+ const root = "krc-root-WL0sD";
2
+ const left = "krc-left-9KFDB";
3
+ const right = "krc-right-YmUbX";
4
+ const divider = "krc-divider-jNOSU";
5
+ const dividerHandle = "krc-dividerHandle-SoNqx";
5
6
  const styles = {
6
7
  root,
7
- logo,
8
- card,
9
- footer
8
+ left,
9
+ right,
10
+ divider,
11
+ dividerHandle
10
12
  };
11
13
  export {
12
- card,
13
14
  styles as default,
14
- footer,
15
- logo,
15
+ divider,
16
+ dividerHandle,
17
+ left,
18
+ right,
16
19
  root
17
20
  };
18
21
  //# sourceMappingURL=index43.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index43.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"index43.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
package/dist/index44.cjs CHANGED
@@ -1,24 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const root = "krc-root-jkFwM";
4
- const sidebar = "krc-sidebar-g7vxQ";
5
- const sidebarCollapsed = "krc-sidebarCollapsed-Xiswa";
6
- const main = "krc-main-B4HyG";
7
- const content = "krc-content-72sFf";
8
- const title = "krc-title-pe-1P";
3
+ const overlay = "krc-overlay-WWw5c";
4
+ const modal = "krc-modal-ZLlQ4";
5
+ const resizable = "krc-resizable-G8TND";
6
+ const header = "krc-header-RFEXB";
7
+ const title = "krc-title-FhVKX";
8
+ const headerActions = "krc-headerActions-Qj5SG";
9
+ const close = "krc-close-EQ-3d";
10
+ const body = "krc-body-ZLPhV";
11
+ const loading = "krc-loading-lxD8d";
12
+ const resizeHandle = "krc-resizeHandle-Q0J-B";
9
13
  const styles = {
10
- root,
11
- sidebar,
12
- sidebarCollapsed,
13
- main,
14
- content,
15
- title
14
+ overlay,
15
+ modal,
16
+ resizable,
17
+ header,
18
+ title,
19
+ headerActions,
20
+ close,
21
+ body,
22
+ loading,
23
+ resizeHandle
16
24
  };
17
- exports.content = content;
25
+ exports.body = body;
26
+ exports.close = close;
18
27
  exports.default = styles;
19
- exports.main = main;
20
- exports.root = root;
21
- exports.sidebar = sidebar;
22
- exports.sidebarCollapsed = sidebarCollapsed;
28
+ exports.header = header;
29
+ exports.headerActions = headerActions;
30
+ exports.loading = loading;
31
+ exports.modal = modal;
32
+ exports.overlay = overlay;
33
+ exports.resizable = resizable;
34
+ exports.resizeHandle = resizeHandle;
23
35
  exports.title = title;
24
36
  //# sourceMappingURL=index44.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index44.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index44.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index44.js CHANGED
@@ -1,24 +1,36 @@
1
- const root = "krc-root-jkFwM";
2
- const sidebar = "krc-sidebar-g7vxQ";
3
- const sidebarCollapsed = "krc-sidebarCollapsed-Xiswa";
4
- const main = "krc-main-B4HyG";
5
- const content = "krc-content-72sFf";
6
- const title = "krc-title-pe-1P";
1
+ const overlay = "krc-overlay-WWw5c";
2
+ const modal = "krc-modal-ZLlQ4";
3
+ const resizable = "krc-resizable-G8TND";
4
+ const header = "krc-header-RFEXB";
5
+ const title = "krc-title-FhVKX";
6
+ const headerActions = "krc-headerActions-Qj5SG";
7
+ const close = "krc-close-EQ-3d";
8
+ const body = "krc-body-ZLPhV";
9
+ const loading = "krc-loading-lxD8d";
10
+ const resizeHandle = "krc-resizeHandle-Q0J-B";
7
11
  const styles = {
8
- root,
9
- sidebar,
10
- sidebarCollapsed,
11
- main,
12
- content,
13
- title
12
+ overlay,
13
+ modal,
14
+ resizable,
15
+ header,
16
+ title,
17
+ headerActions,
18
+ close,
19
+ body,
20
+ loading,
21
+ resizeHandle
14
22
  };
15
23
  export {
16
- content,
24
+ body,
25
+ close,
17
26
  styles as default,
18
- main,
19
- root,
20
- sidebar,
21
- sidebarCollapsed,
27
+ header,
28
+ headerActions,
29
+ loading,
30
+ modal,
31
+ overlay,
32
+ resizable,
33
+ resizeHandle,
22
34
  title
23
35
  };
24
36
  //# sourceMappingURL=index44.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index44.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index44.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index45.cjs CHANGED
@@ -1,136 +1,21 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const constants = require("./index40.cjs");
4
- function aggregateData(data, maxCats, maxSubs, showOthers) {
5
- const categoryMap = /* @__PURE__ */ new Map();
6
- for (const point of data) {
7
- const cat = point.category ?? "Unknown";
8
- const sub = point.subCategory ?? "Default";
9
- if (!categoryMap.has(cat)) {
10
- categoryMap.set(cat, /* @__PURE__ */ new Map());
11
- }
12
- const subMap = categoryMap.get(cat);
13
- subMap.set(sub, (subMap.get(sub) ?? 0) + point.value);
14
- }
15
- const sortedCategories = [...categoryMap.entries()].map(([cat, subMap]) => {
16
- let total = 0;
17
- for (const v of subMap.values()) total += v;
18
- return { cat, subMap, total };
19
- }).sort((a, b) => b.total - a.total);
20
- const topCategories = sortedCategories.slice(0, maxCats);
21
- const overflowCategories = sortedCategories.slice(maxCats);
22
- if (showOthers && overflowCategories.length > 0) {
23
- const othersMap = /* @__PURE__ */ new Map();
24
- for (const { subMap } of overflowCategories) {
25
- for (const [sub, val] of subMap) {
26
- othersMap.set(sub, (othersMap.get(sub) ?? 0) + val);
27
- }
28
- }
29
- let othersTotal = 0;
30
- for (const v of othersMap.values()) othersTotal += v;
31
- topCategories.push({ cat: "Others", subMap: othersMap, total: othersTotal });
32
- }
33
- const allSubCategories = /* @__PURE__ */ new Set();
34
- for (const { subMap } of topCategories) {
35
- for (const sub of subMap.keys()) {
36
- allSubCategories.add(sub);
37
- }
38
- }
39
- const sortedSubs = [...allSubCategories];
40
- const limitedSubs = sortedSubs.slice(0, maxSubs);
41
- const hasOverflowSubs = sortedSubs.length > maxSubs;
42
- const categories = topCategories.map((entry) => entry.cat);
43
- const series = limitedSubs.map((sub) => ({
44
- name: sub,
45
- values: topCategories.map((entry) => entry.subMap.get(sub) ?? 0)
46
- }));
47
- if (hasOverflowSubs && showOthers) {
48
- const overflowSubs = sortedSubs.slice(maxSubs);
49
- series.push({
50
- name: "Other subcategories",
51
- values: topCategories.map((entry) => {
52
- let sum = 0;
53
- for (const sub of overflowSubs) {
54
- sum += entry.subMap.get(sub) ?? 0;
55
- }
56
- return sum;
57
- })
58
- });
59
- }
60
- return { categories, series };
61
- }
62
- function buildBarOption(categories, series, invertAxis, hideLegend, enableScroll) {
63
- const categoryAxis = { type: "category", data: categories };
64
- const valueAxis = { type: "value" };
65
- const dataZoom = enableScroll ? [{ type: "slider", show: true, ...invertAxis ? { yAxisIndex: 0 } : { xAxisIndex: 0 } }] : [];
66
- return {
67
- tooltip: { trigger: "axis", axisPointer: { type: "shadow" } },
68
- legend: { show: !hideLegend, bottom: 0, type: "scroll" },
69
- grid: { left: "3%", right: "4%", top: "3%", bottom: hideLegend ? "3%" : "12%", containLabel: true },
70
- xAxis: invertAxis ? valueAxis : categoryAxis,
71
- yAxis: invertAxis ? categoryAxis : valueAxis,
72
- dataZoom,
73
- series: series.map((s, i) => ({
74
- name: s.name,
75
- type: "bar",
76
- stack: "total",
77
- emphasis: { focus: "series" },
78
- data: s.values,
79
- itemStyle: { color: constants.CHART_COLORS[i % constants.CHART_COLORS.length] }
80
- }))
81
- };
82
- }
83
- function buildPieOption(categories, series, hideLegend) {
84
- const pieData = categories.map((cat, catIdx) => {
85
- let total = 0;
86
- for (const s of series) {
87
- total += s.values[catIdx] ?? 0;
88
- }
89
- return { name: cat, value: total };
90
- });
91
- return {
92
- tooltip: { trigger: "item" },
93
- legend: { show: !hideLegend, bottom: 0, type: "scroll" },
94
- series: [
95
- {
96
- type: "pie",
97
- radius: ["30%", "65%"],
98
- center: ["50%", "45%"],
99
- data: pieData.map((d, i) => ({
100
- ...d,
101
- itemStyle: { color: constants.CHART_COLORS[i % constants.CHART_COLORS.length] }
102
- })),
103
- emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: "rgba(0,0,0,0.3)" } },
104
- label: { show: true, formatter: "{b}: {d}%" }
105
- }
106
- ]
107
- };
108
- }
109
- function buildSunburstOption(categories, series) {
110
- const sunburstData = categories.map((cat, catIdx) => {
111
- const children = series.map((s, sIdx) => ({
112
- name: s.name,
113
- value: s.values[catIdx] ?? 0,
114
- itemStyle: { color: constants.CHART_COLORS[(catIdx * series.length + sIdx) % constants.CHART_COLORS.length] }
115
- })).filter((child) => child.value > 0);
116
- return { name: cat, children };
117
- });
118
- return {
119
- tooltip: { trigger: "item" },
120
- series: [
121
- {
122
- type: "sunburst",
123
- data: sunburstData,
124
- radius: ["15%", "80%"],
125
- label: { rotate: "radial", fontSize: 10 },
126
- itemStyle: { borderRadius: 4, borderWidth: 1 },
127
- emphasis: { focus: "ancestor" }
128
- }
129
- ]
130
- };
131
- }
132
- exports.aggregateData = aggregateData;
133
- exports.buildBarOption = buildBarOption;
134
- exports.buildPieOption = buildPieOption;
135
- exports.buildSunburstOption = buildSunburstOption;
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const root = "krc-root-LQf3S";
4
+ const item = "krc-item-Y5RvK";
5
+ const disabled = "krc-disabled-wnQRZ";
6
+ const focused = "krc-focused-hDoa3";
7
+ const icon = "krc-icon-q-Jmu";
8
+ const styles = {
9
+ root,
10
+ item,
11
+ disabled,
12
+ focused,
13
+ icon
14
+ };
15
+ exports.default = styles;
16
+ exports.disabled = disabled;
17
+ exports.focused = focused;
18
+ exports.icon = icon;
19
+ exports.item = item;
20
+ exports.root = root;
136
21
  //# sourceMappingURL=index45.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index45.cjs","sources":["../src/charts/StackedBarChartCard/buildChartOptions.ts"],"sourcesContent":["import type { ChartSeriesPoint } from '../../types/chart.types';\nimport { CHART_COLORS } from '../../constants';\n\n/** Aggregated series data for chart rendering. */\nexport interface AggregatedChartData {\n categories: string[];\n series: { name: string; values: number[] }[];\n}\n\n/** Aggregate data points by category and subCategory, applying limits. */\nexport function aggregateData(\n data: ChartSeriesPoint[],\n maxCats: number,\n maxSubs: number,\n showOthers: boolean,\n): AggregatedChartData {\n const categoryMap = new Map<string, Map<string, number>>();\n\n for (const point of data) {\n const cat = point.category ?? 'Unknown';\n const sub = point.subCategory ?? 'Default';\n if (!categoryMap.has(cat)) {\n categoryMap.set(cat, new Map());\n }\n const subMap = categoryMap.get(cat)!;\n subMap.set(sub, (subMap.get(sub) ?? 0) + point.value);\n }\n\n const sortedCategories = [...categoryMap.entries()]\n .map(([cat, subMap]) => {\n let total = 0;\n for (const v of subMap.values()) total += v;\n return { cat, subMap, total };\n })\n .sort((a, b) => b.total - a.total);\n\n const topCategories = sortedCategories.slice(0, maxCats);\n const overflowCategories = sortedCategories.slice(maxCats);\n\n if (showOthers && overflowCategories.length > 0) {\n const othersMap = new Map<string, number>();\n for (const { subMap } of overflowCategories) {\n for (const [sub, val] of subMap) {\n othersMap.set(sub, (othersMap.get(sub) ?? 0) + val);\n }\n }\n let othersTotal = 0;\n for (const v of othersMap.values()) othersTotal += v;\n topCategories.push({ cat: 'Others', subMap: othersMap, total: othersTotal });\n }\n\n const allSubCategories = new Set<string>();\n for (const { subMap } of topCategories) {\n for (const sub of subMap.keys()) {\n allSubCategories.add(sub);\n }\n }\n\n const sortedSubs = [...allSubCategories];\n const limitedSubs = sortedSubs.slice(0, maxSubs);\n const hasOverflowSubs = sortedSubs.length > maxSubs;\n\n const categories = topCategories.map((entry) => entry.cat);\n\n const series = limitedSubs.map((sub) => ({\n name: sub,\n values: topCategories.map((entry) => entry.subMap.get(sub) ?? 0),\n }));\n\n if (hasOverflowSubs && showOthers) {\n const overflowSubs = sortedSubs.slice(maxSubs);\n series.push({\n name: 'Other subcategories',\n values: topCategories.map((entry) => {\n let sum = 0;\n for (const sub of overflowSubs) {\n sum += entry.subMap.get(sub) ?? 0;\n }\n return sum;\n }),\n });\n }\n\n return { categories, series };\n}\n\n/** Build ECharts option for stacked bar chart. */\nexport function buildBarOption(\n categories: string[],\n series: { name: string; values: number[] }[],\n invertAxis: boolean,\n hideLegend: boolean,\n enableScroll: boolean,\n) {\n const categoryAxis = { type: 'category' as const, data: categories };\n const valueAxis = { type: 'value' as const };\n\n const dataZoom = enableScroll\n ? [{ type: 'slider' as const, show: true, ...(invertAxis ? { yAxisIndex: 0 } : { xAxisIndex: 0 }) }]\n : [];\n\n return {\n tooltip: { trigger: 'axis' as const, axisPointer: { type: 'shadow' as const } },\n legend: { show: !hideLegend, bottom: 0, type: 'scroll' as const },\n grid: { left: '3%', right: '4%', top: '3%', bottom: hideLegend ? '3%' : '12%', containLabel: true },\n xAxis: invertAxis ? valueAxis : categoryAxis,\n yAxis: invertAxis ? categoryAxis : valueAxis,\n dataZoom,\n series: series.map((s, i) => ({\n name: s.name,\n type: 'bar' as const,\n stack: 'total',\n emphasis: { focus: 'series' as const },\n data: s.values,\n itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length] },\n })),\n };\n}\n\n/** Build ECharts option for pie chart. */\nexport function buildPieOption(\n categories: string[],\n series: { name: string; values: number[] }[],\n hideLegend: boolean,\n) {\n const pieData = categories.map((cat, catIdx) => {\n let total = 0;\n for (const s of series) {\n total += s.values[catIdx] ?? 0;\n }\n return { name: cat, value: total };\n });\n\n return {\n tooltip: { trigger: 'item' as const },\n legend: { show: !hideLegend, bottom: 0, type: 'scroll' as const },\n series: [\n {\n type: 'pie' as const,\n radius: ['30%', '65%'],\n center: ['50%', '45%'],\n data: pieData.map((d, i) => ({\n ...d,\n itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length] },\n })),\n emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0,0,0,0.3)' } },\n label: { show: true, formatter: '{b}: {d}%' },\n },\n ],\n };\n}\n\n/** Build ECharts option for sunburst chart. */\nexport function buildSunburstOption(\n categories: string[],\n series: { name: string; values: number[] }[],\n) {\n const sunburstData = categories.map((cat, catIdx) => {\n const children = series\n .map((s, sIdx) => ({\n name: s.name,\n value: s.values[catIdx] ?? 0,\n itemStyle: { color: CHART_COLORS[(catIdx * series.length + sIdx) % CHART_COLORS.length] },\n }))\n .filter((child) => child.value > 0);\n\n return { name: cat, children };\n });\n\n return {\n tooltip: { trigger: 'item' as const },\n series: [\n {\n type: 'sunburst' as const,\n data: sunburstData,\n radius: ['15%', '80%'],\n label: { rotate: 'radial' as const, fontSize: 10 },\n itemStyle: { borderRadius: 4, borderWidth: 1 },\n emphasis: { focus: 'ancestor' as const },\n },\n ],\n };\n}\n"],"names":["CHART_COLORS"],"mappings":";;;AAUO,SAAS,cACd,MACA,SACA,SACA,YACqB;AACrB,QAAM,kCAAkB,IAAA;AAExB,aAAW,SAAS,MAAM;AACxB,UAAM,MAAM,MAAM,YAAY;AAC9B,UAAM,MAAM,MAAM,eAAe;AACjC,QAAI,CAAC,YAAY,IAAI,GAAG,GAAG;AACzB,kBAAY,IAAI,KAAK,oBAAI,IAAA,CAAK;AAAA,IAChC;AACA,UAAM,SAAS,YAAY,IAAI,GAAG;AAClC,WAAO,IAAI,MAAM,OAAO,IAAI,GAAG,KAAK,KAAK,MAAM,KAAK;AAAA,EACtD;AAEA,QAAM,mBAAmB,CAAC,GAAG,YAAY,QAAA,CAAS,EAC/C,IAAI,CAAC,CAAC,KAAK,MAAM,MAAM;AACtB,QAAI,QAAQ;AACZ,eAAW,KAAK,OAAO,OAAA,EAAU,UAAS;AAC1C,WAAO,EAAE,KAAK,QAAQ,MAAA;AAAA,EACxB,CAAC,EACA,KAAK,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK;AAEnC,QAAM,gBAAgB,iBAAiB,MAAM,GAAG,OAAO;AACvD,QAAM,qBAAqB,iBAAiB,MAAM,OAAO;AAEzD,MAAI,cAAc,mBAAmB,SAAS,GAAG;AAC/C,UAAM,gCAAgB,IAAA;AACtB,eAAW,EAAE,OAAA,KAAY,oBAAoB;AAC3C,iBAAW,CAAC,KAAK,GAAG,KAAK,QAAQ;AAC/B,kBAAU,IAAI,MAAM,UAAU,IAAI,GAAG,KAAK,KAAK,GAAG;AAAA,MACpD;AAAA,IACF;AACA,QAAI,cAAc;AAClB,eAAW,KAAK,UAAU,OAAA,EAAU,gBAAe;AACnD,kBAAc,KAAK,EAAE,KAAK,UAAU,QAAQ,WAAW,OAAO,aAAa;AAAA,EAC7E;AAEA,QAAM,uCAAuB,IAAA;AAC7B,aAAW,EAAE,OAAA,KAAY,eAAe;AACtC,eAAW,OAAO,OAAO,QAAQ;AAC/B,uBAAiB,IAAI,GAAG;AAAA,IAC1B;AAAA,EACF;AAEA,QAAM,aAAa,CAAC,GAAG,gBAAgB;AACvC,QAAM,cAAc,WAAW,MAAM,GAAG,OAAO;AAC/C,QAAM,kBAAkB,WAAW,SAAS;AAE5C,QAAM,aAAa,cAAc,IAAI,CAAC,UAAU,MAAM,GAAG;AAEzD,QAAM,SAAS,YAAY,IAAI,CAAC,SAAS;AAAA,IACvC,MAAM;AAAA,IACN,QAAQ,cAAc,IAAI,CAAC,UAAU,MAAM,OAAO,IAAI,GAAG,KAAK,CAAC;AAAA,EAAA,EAC/D;AAEF,MAAI,mBAAmB,YAAY;AACjC,UAAM,eAAe,WAAW,MAAM,OAAO;AAC7C,WAAO,KAAK;AAAA,MACV,MAAM;AAAA,MACN,QAAQ,cAAc,IAAI,CAAC,UAAU;AACnC,YAAI,MAAM;AACV,mBAAW,OAAO,cAAc;AAC9B,iBAAO,MAAM,OAAO,IAAI,GAAG,KAAK;AAAA,QAClC;AACA,eAAO;AAAA,MACT,CAAC;AAAA,IAAA,CACF;AAAA,EACH;AAEA,SAAO,EAAE,YAAY,OAAA;AACvB;AAGO,SAAS,eACd,YACA,QACA,YACA,YACA,cACA;AACA,QAAM,eAAe,EAAE,MAAM,YAAqB,MAAM,WAAA;AACxD,QAAM,YAAY,EAAE,MAAM,QAAA;AAE1B,QAAM,WAAW,eACb,CAAC,EAAE,MAAM,UAAmB,MAAM,MAAM,GAAI,aAAa,EAAE,YAAY,MAAM,EAAE,YAAY,IAAE,CAAI,IACjG,CAAA;AAEJ,SAAO;AAAA,IACL,SAAS,EAAE,SAAS,QAAiB,aAAa,EAAE,MAAM,WAAkB;AAAA,IAC5E,QAAQ,EAAE,MAAM,CAAC,YAAY,QAAQ,GAAG,MAAM,SAAA;AAAA,IAC9C,MAAM,EAAE,MAAM,MAAM,OAAO,MAAM,KAAK,MAAM,QAAQ,aAAa,OAAO,OAAO,cAAc,KAAA;AAAA,IAC7F,OAAO,aAAa,YAAY;AAAA,IAChC,OAAO,aAAa,eAAe;AAAA,IACnC;AAAA,IACA,QAAQ,OAAO,IAAI,CAAC,GAAG,OAAO;AAAA,MAC5B,MAAM,EAAE;AAAA,MACR,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU,EAAE,OAAO,SAAA;AAAA,MACnB,MAAM,EAAE;AAAA,MACR,WAAW,EAAE,OAAOA,UAAAA,aAAa,IAAIA,UAAAA,aAAa,MAAM,EAAA;AAAA,IAAE,EAC1D;AAAA,EAAA;AAEN;AAGO,SAAS,eACd,YACA,QACA,YACA;AACA,QAAM,UAAU,WAAW,IAAI,CAAC,KAAK,WAAW;AAC9C,QAAI,QAAQ;AACZ,eAAW,KAAK,QAAQ;AACtB,eAAS,EAAE,OAAO,MAAM,KAAK;AAAA,IAC/B;AACA,WAAO,EAAE,MAAM,KAAK,OAAO,MAAA;AAAA,EAC7B,CAAC;AAED,SAAO;AAAA,IACL,SAAS,EAAE,SAAS,OAAA;AAAA,IACpB,QAAQ,EAAE,MAAM,CAAC,YAAY,QAAQ,GAAG,MAAM,SAAA;AAAA,IAC9C,QAAQ;AAAA,MACN;AAAA,QACE,MAAM;AAAA,QACN,QAAQ,CAAC,OAAO,KAAK;AAAA,QACrB,QAAQ,CAAC,OAAO,KAAK;AAAA,QACrB,MAAM,QAAQ,IAAI,CAAC,GAAG,OAAO;AAAA,UAC3B,GAAG;AAAA,UACH,WAAW,EAAE,OAAOA,UAAAA,aAAa,IAAIA,UAAAA,aAAa,MAAM,EAAA;AAAA,QAAE,EAC1D;AAAA,QACF,UAAU,EAAE,WAAW,EAAE,YAAY,IAAI,eAAe,GAAG,aAAa,oBAAkB;AAAA,QAC1F,OAAO,EAAE,MAAM,MAAM,WAAW,YAAA;AAAA,MAAY;AAAA,IAC9C;AAAA,EACF;AAEJ;AAGO,SAAS,oBACd,YACA,QACA;AACA,QAAM,eAAe,WAAW,IAAI,CAAC,KAAK,WAAW;AACnD,UAAM,WAAW,OACd,IAAI,CAAC,GAAG,UAAU;AAAA,MACjB,MAAM,EAAE;AAAA,MACR,OAAO,EAAE,OAAO,MAAM,KAAK;AAAA,MAC3B,WAAW,EAAE,OAAOA,UAAAA,cAAc,SAAS,OAAO,SAAS,QAAQA,UAAAA,aAAa,MAAM,EAAA;AAAA,IAAE,EACxF,EACD,OAAO,CAAC,UAAU,MAAM,QAAQ,CAAC;AAEpC,WAAO,EAAE,MAAM,KAAK,SAAA;AAAA,EACtB,CAAC;AAED,SAAO;AAAA,IACL,SAAS,EAAE,SAAS,OAAA;AAAA,IACpB,QAAQ;AAAA,MACN;AAAA,QACE,MAAM;AAAA,QACN,MAAM;AAAA,QACN,QAAQ,CAAC,OAAO,KAAK;AAAA,QACrB,OAAO,EAAE,QAAQ,UAAmB,UAAU,GAAA;AAAA,QAC9C,WAAW,EAAE,cAAc,GAAG,aAAa,EAAA;AAAA,QAC3C,UAAU,EAAE,OAAO,WAAA;AAAA,MAAoB;AAAA,IACzC;AAAA,EACF;AAEJ;;;;;"}
1
+ {"version":3,"file":"index45.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
package/dist/index45.js CHANGED
@@ -1,136 +1,21 @@
1
- import { CHART_COLORS } from "./index40.js";
2
- function aggregateData(data, maxCats, maxSubs, showOthers) {
3
- const categoryMap = /* @__PURE__ */ new Map();
4
- for (const point of data) {
5
- const cat = point.category ?? "Unknown";
6
- const sub = point.subCategory ?? "Default";
7
- if (!categoryMap.has(cat)) {
8
- categoryMap.set(cat, /* @__PURE__ */ new Map());
9
- }
10
- const subMap = categoryMap.get(cat);
11
- subMap.set(sub, (subMap.get(sub) ?? 0) + point.value);
12
- }
13
- const sortedCategories = [...categoryMap.entries()].map(([cat, subMap]) => {
14
- let total = 0;
15
- for (const v of subMap.values()) total += v;
16
- return { cat, subMap, total };
17
- }).sort((a, b) => b.total - a.total);
18
- const topCategories = sortedCategories.slice(0, maxCats);
19
- const overflowCategories = sortedCategories.slice(maxCats);
20
- if (showOthers && overflowCategories.length > 0) {
21
- const othersMap = /* @__PURE__ */ new Map();
22
- for (const { subMap } of overflowCategories) {
23
- for (const [sub, val] of subMap) {
24
- othersMap.set(sub, (othersMap.get(sub) ?? 0) + val);
25
- }
26
- }
27
- let othersTotal = 0;
28
- for (const v of othersMap.values()) othersTotal += v;
29
- topCategories.push({ cat: "Others", subMap: othersMap, total: othersTotal });
30
- }
31
- const allSubCategories = /* @__PURE__ */ new Set();
32
- for (const { subMap } of topCategories) {
33
- for (const sub of subMap.keys()) {
34
- allSubCategories.add(sub);
35
- }
36
- }
37
- const sortedSubs = [...allSubCategories];
38
- const limitedSubs = sortedSubs.slice(0, maxSubs);
39
- const hasOverflowSubs = sortedSubs.length > maxSubs;
40
- const categories = topCategories.map((entry) => entry.cat);
41
- const series = limitedSubs.map((sub) => ({
42
- name: sub,
43
- values: topCategories.map((entry) => entry.subMap.get(sub) ?? 0)
44
- }));
45
- if (hasOverflowSubs && showOthers) {
46
- const overflowSubs = sortedSubs.slice(maxSubs);
47
- series.push({
48
- name: "Other subcategories",
49
- values: topCategories.map((entry) => {
50
- let sum = 0;
51
- for (const sub of overflowSubs) {
52
- sum += entry.subMap.get(sub) ?? 0;
53
- }
54
- return sum;
55
- })
56
- });
57
- }
58
- return { categories, series };
59
- }
60
- function buildBarOption(categories, series, invertAxis, hideLegend, enableScroll) {
61
- const categoryAxis = { type: "category", data: categories };
62
- const valueAxis = { type: "value" };
63
- const dataZoom = enableScroll ? [{ type: "slider", show: true, ...invertAxis ? { yAxisIndex: 0 } : { xAxisIndex: 0 } }] : [];
64
- return {
65
- tooltip: { trigger: "axis", axisPointer: { type: "shadow" } },
66
- legend: { show: !hideLegend, bottom: 0, type: "scroll" },
67
- grid: { left: "3%", right: "4%", top: "3%", bottom: hideLegend ? "3%" : "12%", containLabel: true },
68
- xAxis: invertAxis ? valueAxis : categoryAxis,
69
- yAxis: invertAxis ? categoryAxis : valueAxis,
70
- dataZoom,
71
- series: series.map((s, i) => ({
72
- name: s.name,
73
- type: "bar",
74
- stack: "total",
75
- emphasis: { focus: "series" },
76
- data: s.values,
77
- itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length] }
78
- }))
79
- };
80
- }
81
- function buildPieOption(categories, series, hideLegend) {
82
- const pieData = categories.map((cat, catIdx) => {
83
- let total = 0;
84
- for (const s of series) {
85
- total += s.values[catIdx] ?? 0;
86
- }
87
- return { name: cat, value: total };
88
- });
89
- return {
90
- tooltip: { trigger: "item" },
91
- legend: { show: !hideLegend, bottom: 0, type: "scroll" },
92
- series: [
93
- {
94
- type: "pie",
95
- radius: ["30%", "65%"],
96
- center: ["50%", "45%"],
97
- data: pieData.map((d, i) => ({
98
- ...d,
99
- itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length] }
100
- })),
101
- emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: "rgba(0,0,0,0.3)" } },
102
- label: { show: true, formatter: "{b}: {d}%" }
103
- }
104
- ]
105
- };
106
- }
107
- function buildSunburstOption(categories, series) {
108
- const sunburstData = categories.map((cat, catIdx) => {
109
- const children = series.map((s, sIdx) => ({
110
- name: s.name,
111
- value: s.values[catIdx] ?? 0,
112
- itemStyle: { color: CHART_COLORS[(catIdx * series.length + sIdx) % CHART_COLORS.length] }
113
- })).filter((child) => child.value > 0);
114
- return { name: cat, children };
115
- });
116
- return {
117
- tooltip: { trigger: "item" },
118
- series: [
119
- {
120
- type: "sunburst",
121
- data: sunburstData,
122
- radius: ["15%", "80%"],
123
- label: { rotate: "radial", fontSize: 10 },
124
- itemStyle: { borderRadius: 4, borderWidth: 1 },
125
- emphasis: { focus: "ancestor" }
126
- }
127
- ]
128
- };
129
- }
1
+ const root = "krc-root-LQf3S";
2
+ const item = "krc-item-Y5RvK";
3
+ const disabled = "krc-disabled-wnQRZ";
4
+ const focused = "krc-focused-hDoa3";
5
+ const icon = "krc-icon-q-Jmu";
6
+ const styles = {
7
+ root,
8
+ item,
9
+ disabled,
10
+ focused,
11
+ icon
12
+ };
130
13
  export {
131
- aggregateData,
132
- buildBarOption,
133
- buildPieOption,
134
- buildSunburstOption
14
+ styles as default,
15
+ disabled,
16
+ focused,
17
+ icon,
18
+ item,
19
+ root
135
20
  };
136
21
  //# sourceMappingURL=index45.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index45.js","sources":["../src/charts/StackedBarChartCard/buildChartOptions.ts"],"sourcesContent":["import type { ChartSeriesPoint } from '../../types/chart.types';\nimport { CHART_COLORS } from '../../constants';\n\n/** Aggregated series data for chart rendering. */\nexport interface AggregatedChartData {\n categories: string[];\n series: { name: string; values: number[] }[];\n}\n\n/** Aggregate data points by category and subCategory, applying limits. */\nexport function aggregateData(\n data: ChartSeriesPoint[],\n maxCats: number,\n maxSubs: number,\n showOthers: boolean,\n): AggregatedChartData {\n const categoryMap = new Map<string, Map<string, number>>();\n\n for (const point of data) {\n const cat = point.category ?? 'Unknown';\n const sub = point.subCategory ?? 'Default';\n if (!categoryMap.has(cat)) {\n categoryMap.set(cat, new Map());\n }\n const subMap = categoryMap.get(cat)!;\n subMap.set(sub, (subMap.get(sub) ?? 0) + point.value);\n }\n\n const sortedCategories = [...categoryMap.entries()]\n .map(([cat, subMap]) => {\n let total = 0;\n for (const v of subMap.values()) total += v;\n return { cat, subMap, total };\n })\n .sort((a, b) => b.total - a.total);\n\n const topCategories = sortedCategories.slice(0, maxCats);\n const overflowCategories = sortedCategories.slice(maxCats);\n\n if (showOthers && overflowCategories.length > 0) {\n const othersMap = new Map<string, number>();\n for (const { subMap } of overflowCategories) {\n for (const [sub, val] of subMap) {\n othersMap.set(sub, (othersMap.get(sub) ?? 0) + val);\n }\n }\n let othersTotal = 0;\n for (const v of othersMap.values()) othersTotal += v;\n topCategories.push({ cat: 'Others', subMap: othersMap, total: othersTotal });\n }\n\n const allSubCategories = new Set<string>();\n for (const { subMap } of topCategories) {\n for (const sub of subMap.keys()) {\n allSubCategories.add(sub);\n }\n }\n\n const sortedSubs = [...allSubCategories];\n const limitedSubs = sortedSubs.slice(0, maxSubs);\n const hasOverflowSubs = sortedSubs.length > maxSubs;\n\n const categories = topCategories.map((entry) => entry.cat);\n\n const series = limitedSubs.map((sub) => ({\n name: sub,\n values: topCategories.map((entry) => entry.subMap.get(sub) ?? 0),\n }));\n\n if (hasOverflowSubs && showOthers) {\n const overflowSubs = sortedSubs.slice(maxSubs);\n series.push({\n name: 'Other subcategories',\n values: topCategories.map((entry) => {\n let sum = 0;\n for (const sub of overflowSubs) {\n sum += entry.subMap.get(sub) ?? 0;\n }\n return sum;\n }),\n });\n }\n\n return { categories, series };\n}\n\n/** Build ECharts option for stacked bar chart. */\nexport function buildBarOption(\n categories: string[],\n series: { name: string; values: number[] }[],\n invertAxis: boolean,\n hideLegend: boolean,\n enableScroll: boolean,\n) {\n const categoryAxis = { type: 'category' as const, data: categories };\n const valueAxis = { type: 'value' as const };\n\n const dataZoom = enableScroll\n ? [{ type: 'slider' as const, show: true, ...(invertAxis ? { yAxisIndex: 0 } : { xAxisIndex: 0 }) }]\n : [];\n\n return {\n tooltip: { trigger: 'axis' as const, axisPointer: { type: 'shadow' as const } },\n legend: { show: !hideLegend, bottom: 0, type: 'scroll' as const },\n grid: { left: '3%', right: '4%', top: '3%', bottom: hideLegend ? '3%' : '12%', containLabel: true },\n xAxis: invertAxis ? valueAxis : categoryAxis,\n yAxis: invertAxis ? categoryAxis : valueAxis,\n dataZoom,\n series: series.map((s, i) => ({\n name: s.name,\n type: 'bar' as const,\n stack: 'total',\n emphasis: { focus: 'series' as const },\n data: s.values,\n itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length] },\n })),\n };\n}\n\n/** Build ECharts option for pie chart. */\nexport function buildPieOption(\n categories: string[],\n series: { name: string; values: number[] }[],\n hideLegend: boolean,\n) {\n const pieData = categories.map((cat, catIdx) => {\n let total = 0;\n for (const s of series) {\n total += s.values[catIdx] ?? 0;\n }\n return { name: cat, value: total };\n });\n\n return {\n tooltip: { trigger: 'item' as const },\n legend: { show: !hideLegend, bottom: 0, type: 'scroll' as const },\n series: [\n {\n type: 'pie' as const,\n radius: ['30%', '65%'],\n center: ['50%', '45%'],\n data: pieData.map((d, i) => ({\n ...d,\n itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length] },\n })),\n emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0,0,0,0.3)' } },\n label: { show: true, formatter: '{b}: {d}%' },\n },\n ],\n };\n}\n\n/** Build ECharts option for sunburst chart. */\nexport function buildSunburstOption(\n categories: string[],\n series: { name: string; values: number[] }[],\n) {\n const sunburstData = categories.map((cat, catIdx) => {\n const children = series\n .map((s, sIdx) => ({\n name: s.name,\n value: s.values[catIdx] ?? 0,\n itemStyle: { color: CHART_COLORS[(catIdx * series.length + sIdx) % CHART_COLORS.length] },\n }))\n .filter((child) => child.value > 0);\n\n return { name: cat, children };\n });\n\n return {\n tooltip: { trigger: 'item' as const },\n series: [\n {\n type: 'sunburst' as const,\n data: sunburstData,\n radius: ['15%', '80%'],\n label: { rotate: 'radial' as const, fontSize: 10 },\n itemStyle: { borderRadius: 4, borderWidth: 1 },\n emphasis: { focus: 'ancestor' as const },\n },\n ],\n };\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index45.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}