@ktnpm_devops/react-component 0.13.1 → 0.14.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 (400) hide show
  1. package/dist/index.cjs +24 -22
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.ts +4 -2
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +24 -22
  6. package/dist/index.js.map +1 -1
  7. package/dist/index10.cjs +2 -2
  8. package/dist/index10.js +2 -2
  9. package/dist/index100.cjs +39 -21
  10. package/dist/index100.cjs.map +1 -1
  11. package/dist/index100.js +40 -22
  12. package/dist/index100.js.map +1 -1
  13. package/dist/index101.cjs +14 -50
  14. package/dist/index101.cjs.map +1 -1
  15. package/dist/index101.js +14 -50
  16. package/dist/index101.js.map +1 -1
  17. package/dist/index102.cjs +55 -134
  18. package/dist/index102.cjs.map +1 -1
  19. package/dist/index102.js +54 -133
  20. package/dist/index102.js.map +1 -1
  21. package/dist/index103.cjs +13 -40
  22. package/dist/index103.cjs.map +1 -1
  23. package/dist/index103.js +14 -41
  24. package/dist/index103.js.map +1 -1
  25. package/dist/index104.cjs +9 -35
  26. package/dist/index104.cjs.map +1 -1
  27. package/dist/index104.js +8 -34
  28. package/dist/index104.js.map +1 -1
  29. package/dist/index105.cjs +15 -43
  30. package/dist/index105.cjs.map +1 -1
  31. package/dist/index105.js +14 -42
  32. package/dist/index105.js.map +1 -1
  33. package/dist/index106.cjs +33 -24
  34. package/dist/index106.cjs.map +1 -1
  35. package/dist/index106.js +32 -23
  36. package/dist/index106.js.map +1 -1
  37. package/dist/index107.cjs +58 -20
  38. package/dist/index107.cjs.map +1 -1
  39. package/dist/index107.js +57 -19
  40. package/dist/index107.js.map +1 -1
  41. package/dist/index108.cjs +34 -14
  42. package/dist/index108.cjs.map +1 -1
  43. package/dist/index108.js +33 -13
  44. package/dist/index108.js.map +1 -1
  45. package/dist/index109.cjs +19 -55
  46. package/dist/index109.cjs.map +1 -1
  47. package/dist/index109.js +20 -56
  48. package/dist/index109.js.map +1 -1
  49. package/dist/index11.cjs +2 -2
  50. package/dist/index11.js +2 -2
  51. package/dist/index110.cjs +16 -28
  52. package/dist/index110.cjs.map +1 -1
  53. package/dist/index110.js +16 -28
  54. package/dist/index110.js.map +1 -1
  55. package/dist/index111.cjs +10 -10
  56. package/dist/index111.js +11 -11
  57. package/dist/index112.cjs +16 -19
  58. package/dist/index112.cjs.map +1 -1
  59. package/dist/index112.js +17 -20
  60. package/dist/index112.js.map +1 -1
  61. package/dist/index113.cjs +34 -13
  62. package/dist/index113.cjs.map +1 -1
  63. package/dist/index113.js +35 -14
  64. package/dist/index113.js.map +1 -1
  65. package/dist/index114.cjs +118 -0
  66. package/dist/index114.cjs.map +1 -0
  67. package/dist/index114.js +118 -0
  68. package/dist/index114.js.map +1 -0
  69. package/dist/index115.cjs +45 -0
  70. package/dist/index115.cjs.map +1 -0
  71. package/dist/index115.js +45 -0
  72. package/dist/index115.js.map +1 -0
  73. package/dist/index116.cjs +33 -0
  74. package/dist/index116.cjs.map +1 -0
  75. package/dist/index116.js +33 -0
  76. package/dist/index116.js.map +1 -0
  77. package/dist/index117.cjs +1166 -0
  78. package/dist/index117.cjs.map +1 -0
  79. package/dist/index117.js +1167 -0
  80. package/dist/index117.js.map +1 -0
  81. package/dist/index118.cjs +1578 -0
  82. package/dist/index118.cjs.map +1 -0
  83. package/dist/index118.js +1579 -0
  84. package/dist/index118.js.map +1 -0
  85. package/dist/index12.cjs +2 -2
  86. package/dist/index12.js +2 -2
  87. package/dist/index13.cjs +2 -2
  88. package/dist/index13.js +2 -2
  89. package/dist/index14.cjs +2 -2
  90. package/dist/index14.js +2 -2
  91. package/dist/index15.cjs +2 -2
  92. package/dist/index15.js +2 -2
  93. package/dist/index16.cjs +3 -3
  94. package/dist/index16.js +3 -3
  95. package/dist/index17.cjs +2 -2
  96. package/dist/index17.js +2 -2
  97. package/dist/index18.cjs +2 -2
  98. package/dist/index18.js +2 -2
  99. package/dist/index19.cjs +2 -2
  100. package/dist/index19.js +2 -2
  101. package/dist/index20.cjs +2 -2
  102. package/dist/index20.js +2 -2
  103. package/dist/index21.cjs +2 -2
  104. package/dist/index21.js +2 -2
  105. package/dist/index22.cjs +3 -3
  106. package/dist/index22.js +3 -3
  107. package/dist/index23.cjs +3 -3
  108. package/dist/index23.js +3 -3
  109. package/dist/index24.cjs +3 -3
  110. package/dist/index24.js +3 -3
  111. package/dist/index25.cjs +2 -2
  112. package/dist/index25.js +2 -2
  113. package/dist/index26.cjs +2 -2
  114. package/dist/index26.js +2 -2
  115. package/dist/index27.cjs +2 -2
  116. package/dist/index27.js +2 -2
  117. package/dist/index28.cjs +2 -2
  118. package/dist/index28.js +2 -2
  119. package/dist/index29.cjs +3 -3
  120. package/dist/index29.js +3 -3
  121. package/dist/index30.cjs +8 -8
  122. package/dist/index30.js +8 -8
  123. package/dist/index31.cjs +2 -2
  124. package/dist/index31.js +2 -2
  125. package/dist/index32.cjs +2 -2
  126. package/dist/index32.js +2 -2
  127. package/dist/index33.cjs +3 -3
  128. package/dist/index33.js +3 -3
  129. package/dist/index34.cjs +4 -4
  130. package/dist/index34.js +4 -4
  131. package/dist/index35.cjs +20 -38
  132. package/dist/index35.cjs.map +1 -1
  133. package/dist/index35.js +21 -39
  134. package/dist/index35.js.map +1 -1
  135. package/dist/index36.cjs +36 -224
  136. package/dist/index36.cjs.map +1 -1
  137. package/dist/index36.js +37 -225
  138. package/dist/index36.js.map +1 -1
  139. package/dist/index37.cjs +220 -28
  140. package/dist/index37.cjs.map +1 -1
  141. package/dist/index37.js +222 -30
  142. package/dist/index37.js.map +1 -1
  143. package/dist/index38.cjs +30 -106
  144. package/dist/index38.cjs.map +1 -1
  145. package/dist/index38.js +31 -107
  146. package/dist/index38.js.map +1 -1
  147. package/dist/index39.cjs +100 -58
  148. package/dist/index39.cjs.map +1 -1
  149. package/dist/index39.js +101 -59
  150. package/dist/index39.js.map +1 -1
  151. package/dist/index40.cjs +66 -76
  152. package/dist/index40.cjs.map +1 -1
  153. package/dist/index40.js +67 -77
  154. package/dist/index40.js.map +1 -1
  155. package/dist/index41.cjs +76 -57
  156. package/dist/index41.cjs.map +1 -1
  157. package/dist/index41.js +78 -59
  158. package/dist/index41.js.map +1 -1
  159. package/dist/index42.cjs +56 -150
  160. package/dist/index42.cjs.map +1 -1
  161. package/dist/index42.js +58 -152
  162. package/dist/index42.js.map +1 -1
  163. package/dist/index43.cjs +128 -73
  164. package/dist/index43.cjs.map +1 -1
  165. package/dist/index43.js +123 -68
  166. package/dist/index43.js.map +1 -1
  167. package/dist/index44.cjs +94 -68
  168. package/dist/index44.cjs.map +1 -1
  169. package/dist/index44.js +96 -70
  170. package/dist/index44.js.map +1 -1
  171. package/dist/index45.cjs +71 -7
  172. package/dist/index45.cjs.map +1 -1
  173. package/dist/index45.js +72 -8
  174. package/dist/index45.js.map +1 -1
  175. package/dist/index46.cjs +8 -17
  176. package/dist/index46.cjs.map +1 -1
  177. package/dist/index46.js +9 -18
  178. package/dist/index46.js.map +1 -1
  179. package/dist/index47.cjs +15 -75
  180. package/dist/index47.cjs.map +1 -1
  181. package/dist/index47.js +16 -76
  182. package/dist/index47.js.map +1 -1
  183. package/dist/index48.cjs +68 -134
  184. package/dist/index48.cjs.map +1 -1
  185. package/dist/index48.js +70 -136
  186. package/dist/index48.js.map +1 -1
  187. package/dist/index49.cjs +137 -58
  188. package/dist/index49.cjs.map +1 -1
  189. package/dist/index49.js +138 -59
  190. package/dist/index49.js.map +1 -1
  191. package/dist/index50.cjs +61 -102
  192. package/dist/index50.cjs.map +1 -1
  193. package/dist/index50.js +62 -103
  194. package/dist/index50.js.map +1 -1
  195. package/dist/index51.cjs +102 -44
  196. package/dist/index51.cjs.map +1 -1
  197. package/dist/index51.js +103 -45
  198. package/dist/index51.js.map +1 -1
  199. package/dist/index52.cjs +47 -6
  200. package/dist/index52.cjs.map +1 -1
  201. package/dist/index52.js +48 -7
  202. package/dist/index52.js.map +1 -1
  203. package/dist/index53.cjs +6 -147
  204. package/dist/index53.cjs.map +1 -1
  205. package/dist/index53.js +7 -148
  206. package/dist/index53.js.map +1 -1
  207. package/dist/index54.cjs +146 -7
  208. package/dist/index54.cjs.map +1 -1
  209. package/dist/index54.js +148 -9
  210. package/dist/index54.js.map +1 -1
  211. package/dist/index55.cjs +6 -15
  212. package/dist/index55.cjs.map +1 -1
  213. package/dist/index55.js +6 -15
  214. package/dist/index55.js.map +1 -1
  215. package/dist/index56.cjs +15 -64
  216. package/dist/index56.cjs.map +1 -1
  217. package/dist/index56.js +17 -66
  218. package/dist/index56.js.map +1 -1
  219. package/dist/index57.cjs +67 -15
  220. package/dist/index57.cjs.map +1 -1
  221. package/dist/index57.js +66 -14
  222. package/dist/index57.js.map +1 -1
  223. package/dist/index58.cjs +15 -18
  224. package/dist/index58.cjs.map +1 -1
  225. package/dist/index58.js +15 -18
  226. package/dist/index58.js.map +1 -1
  227. package/dist/index59.cjs +19 -116
  228. package/dist/index59.cjs.map +1 -1
  229. package/dist/index59.js +17 -114
  230. package/dist/index59.js.map +1 -1
  231. package/dist/index60.cjs +16 -10
  232. package/dist/index60.cjs.map +1 -1
  233. package/dist/index60.js +17 -11
  234. package/dist/index60.js.map +1 -1
  235. package/dist/index61.cjs +22 -10
  236. package/dist/index61.cjs.map +1 -1
  237. package/dist/index61.js +23 -11
  238. package/dist/index61.js.map +1 -1
  239. package/dist/index62.cjs +22 -13
  240. package/dist/index62.cjs.map +1 -1
  241. package/dist/index62.js +22 -13
  242. package/dist/index62.js.map +1 -1
  243. package/dist/index63.cjs +2 -23
  244. package/dist/index63.cjs.map +1 -1
  245. package/dist/index63.js +3 -24
  246. package/dist/index63.js.map +1 -1
  247. package/dist/index64.cjs +2 -35
  248. package/dist/index64.cjs.map +1 -1
  249. package/dist/index64.js +3 -36
  250. package/dist/index64.js.map +1 -1
  251. package/dist/index65.cjs +17 -2
  252. package/dist/index65.cjs.map +1 -1
  253. package/dist/index65.js +18 -3
  254. package/dist/index65.js.map +1 -1
  255. package/dist/index66.cjs +1 -1
  256. package/dist/index66.js +1 -1
  257. package/dist/index67.cjs +11 -5
  258. package/dist/index67.cjs.map +1 -1
  259. package/dist/index67.js +12 -6
  260. package/dist/index67.js.map +1 -1
  261. package/dist/index68.cjs +2 -20
  262. package/dist/index68.cjs.map +1 -1
  263. package/dist/index68.js +3 -21
  264. package/dist/index68.js.map +1 -1
  265. package/dist/index69.cjs +17 -24
  266. package/dist/index69.cjs.map +1 -1
  267. package/dist/index69.js +16 -23
  268. package/dist/index69.js.map +1 -1
  269. package/dist/index70.cjs +2 -17
  270. package/dist/index70.cjs.map +1 -1
  271. package/dist/index70.js +3 -18
  272. package/dist/index70.js.map +1 -1
  273. package/dist/index71.cjs +116 -19
  274. package/dist/index71.cjs.map +1 -1
  275. package/dist/index71.js +114 -17
  276. package/dist/index71.js.map +1 -1
  277. package/dist/index72.cjs +29 -2
  278. package/dist/index72.cjs.map +1 -1
  279. package/dist/index72.js +30 -3
  280. package/dist/index72.js.map +1 -1
  281. package/dist/index73.cjs +18 -30
  282. package/dist/index73.cjs.map +1 -1
  283. package/dist/index73.js +18 -30
  284. package/dist/index73.js.map +1 -1
  285. package/dist/index74.cjs +21 -36
  286. package/dist/index74.cjs.map +1 -1
  287. package/dist/index74.js +21 -36
  288. package/dist/index74.js.map +1 -1
  289. package/dist/index75.cjs +5 -35
  290. package/dist/index75.cjs.map +1 -1
  291. package/dist/index75.js +6 -36
  292. package/dist/index75.js.map +1 -1
  293. package/dist/index76.cjs +2 -23
  294. package/dist/index76.cjs.map +1 -1
  295. package/dist/index76.js +3 -24
  296. package/dist/index76.js.map +1 -1
  297. package/dist/index77.cjs +65 -2
  298. package/dist/index77.cjs.map +1 -1
  299. package/dist/index77.js +66 -3
  300. package/dist/index77.js.map +1 -1
  301. package/dist/index78.cjs +19 -16
  302. package/dist/index78.cjs.map +1 -1
  303. package/dist/index78.js +20 -17
  304. package/dist/index78.js.map +1 -1
  305. package/dist/index79.cjs +13 -10
  306. package/dist/index79.cjs.map +1 -1
  307. package/dist/index79.js +14 -11
  308. package/dist/index79.js.map +1 -1
  309. package/dist/index80.cjs +19 -64
  310. package/dist/index80.cjs.map +1 -1
  311. package/dist/index80.js +20 -65
  312. package/dist/index80.js.map +1 -1
  313. package/dist/index81.cjs +35 -21
  314. package/dist/index81.cjs.map +1 -1
  315. package/dist/index81.js +34 -20
  316. package/dist/index81.js.map +1 -1
  317. package/dist/index82.cjs +43 -51
  318. package/dist/index82.cjs.map +1 -1
  319. package/dist/index82.js +42 -50
  320. package/dist/index82.js.map +1 -1
  321. package/dist/index83.cjs +24 -57
  322. package/dist/index83.cjs.map +1 -1
  323. package/dist/index83.js +23 -56
  324. package/dist/index83.js.map +1 -1
  325. package/dist/index84.cjs +20 -25
  326. package/dist/index84.cjs.map +1 -1
  327. package/dist/index84.js +19 -24
  328. package/dist/index84.js.map +1 -1
  329. package/dist/index85.cjs +14 -25
  330. package/dist/index85.cjs.map +1 -1
  331. package/dist/index85.js +13 -24
  332. package/dist/index85.js.map +1 -1
  333. package/dist/index86.cjs +51 -75
  334. package/dist/index86.cjs.map +1 -1
  335. package/dist/index86.js +51 -75
  336. package/dist/index86.js.map +1 -1
  337. package/dist/index87.cjs +47 -2
  338. package/dist/index87.cjs.map +1 -1
  339. package/dist/index87.js +48 -3
  340. package/dist/index87.js.map +1 -1
  341. package/dist/index88.cjs +34 -16
  342. package/dist/index88.cjs.map +1 -1
  343. package/dist/index88.js +34 -16
  344. package/dist/index88.js.map +1 -1
  345. package/dist/index89.cjs +69 -18
  346. package/dist/index89.cjs.map +1 -1
  347. package/dist/index89.js +70 -19
  348. package/dist/index89.js.map +1 -1
  349. package/dist/index90.cjs +39 -21
  350. package/dist/index90.cjs.map +1 -1
  351. package/dist/index90.js +38 -20
  352. package/dist/index90.js.map +1 -1
  353. package/dist/index91.cjs +83 -106
  354. package/dist/index91.cjs.map +1 -1
  355. package/dist/index91.js +83 -106
  356. package/dist/index91.js.map +1 -1
  357. package/dist/index92.cjs +19 -22
  358. package/dist/index92.cjs.map +1 -1
  359. package/dist/index92.js +20 -23
  360. package/dist/index92.js.map +1 -1
  361. package/dist/index93.cjs +13 -37
  362. package/dist/index93.cjs.map +1 -1
  363. package/dist/index93.js +14 -38
  364. package/dist/index93.js.map +1 -1
  365. package/dist/index94.cjs +36 -6
  366. package/dist/index94.cjs.map +1 -1
  367. package/dist/index94.js +36 -6
  368. package/dist/index94.js.map +1 -1
  369. package/dist/index95.cjs +15 -18
  370. package/dist/index95.cjs.map +1 -1
  371. package/dist/index95.js +15 -18
  372. package/dist/index95.js.map +1 -1
  373. package/dist/index96.cjs +35 -47
  374. package/dist/index96.cjs.map +1 -1
  375. package/dist/index96.js +35 -47
  376. package/dist/index96.js.map +1 -1
  377. package/dist/index97.cjs +16 -25
  378. package/dist/index97.cjs.map +1 -1
  379. package/dist/index97.js +16 -25
  380. package/dist/index97.js.map +1 -1
  381. package/dist/index98.cjs +129 -35
  382. package/dist/index98.cjs.map +1 -1
  383. package/dist/index98.js +129 -35
  384. package/dist/index98.js.map +1 -1
  385. package/dist/index99.cjs +45 -92
  386. package/dist/index99.cjs.map +1 -1
  387. package/dist/index99.js +44 -91
  388. package/dist/index99.js.map +1 -1
  389. package/dist/primitives/MarkdownContent/MarkdownContent.d.ts +4 -0
  390. package/dist/primitives/MarkdownContent/MarkdownContent.d.ts.map +1 -0
  391. package/dist/primitives/MarkdownContent/MarkdownContent.types.d.ts +5 -0
  392. package/dist/primitives/MarkdownContent/MarkdownContent.types.d.ts.map +1 -0
  393. package/dist/primitives/MarkdownContent/index.d.ts +3 -0
  394. package/dist/primitives/MarkdownContent/index.d.ts.map +1 -0
  395. package/dist/style.css +108 -0
  396. package/dist/utils/markdown.d.ts +3 -0
  397. package/dist/utils/markdown.d.ts.map +1 -0
  398. package/dist/utils/markdown.test.d.ts +2 -0
  399. package/dist/utils/markdown.test.d.ts.map +1 -0
  400. package/package.json +23 -4
package/dist/index99.js CHANGED
@@ -1,95 +1,48 @@
1
- import { CHART_COLORS, SCATTER } from "./index59.js";
2
- const AXIS_NAME_GAP = { X: 28, Y: 38 };
3
- const GRID_MARGIN = {
4
- BASE: 8,
5
- TOP: 16,
6
- RIGHT: 16,
7
- X_NAME: 23,
8
- Y_NAME: 34,
9
- LEGEND: 30
10
- };
11
- const UNCATEGORISED_SERIES = "Points";
12
- const escapeHtml = (value) => value.replace(/[&<>"]/g, (char) => `&#${char.charCodeAt(0)};`);
13
- const symbolSizeFor = (weight, minWeight, maxWeight) => {
14
- if (maxWeight === minWeight) return SCATTER.BASE_SYMBOL_SIZE;
15
- const ratio = Math.sqrt((weight - minWeight) / (maxWeight - minWeight));
16
- return SCATTER.MIN_SYMBOL_SIZE + (SCATTER.MAX_SYMBOL_SIZE - SCATTER.MIN_SYMBOL_SIZE) * ratio;
17
- };
18
- const groupByCategory = (points) => {
19
- const groups = /* @__PURE__ */ new Map();
20
- for (const folded of points) {
21
- const key = folded.point.category ?? UNCATEGORISED_SERIES;
22
- const group = groups.get(key);
23
- if (group) group.push(folded);
24
- else groups.set(key, [folded]);
25
- }
26
- return groups;
27
- };
28
- const toDataItem = (folded, sizeOf) => ({
29
- name: folded.point.label,
30
- value: [folded.point.x, folded.point.y, folded.count, folded.index],
31
- symbolSize: sizeOf(folded.point.weight)
32
- });
33
- const buildTooltipFormatter = (config) => (params) => {
34
- const { name, seriesName, value, marker } = params;
35
- const [x, y, count] = value;
36
- const lines = [`${marker} ${escapeHtml(name)}`];
37
- lines.push(`${escapeHtml(config.xLabel ?? "x")}: ${x}`);
38
- lines.push(`${escapeHtml(config.yLabel ?? "y")}: ${y}`);
39
- if (seriesName !== UNCATEGORISED_SERIES) {
40
- lines.push(`${escapeHtml(config.categoryLabel ?? "Category")}: ${escapeHtml(seriesName)}`);
41
- }
42
- if (count > 1) lines.push(`${count} points here`);
43
- return lines.join("<br/>");
44
- };
45
- const buildScatterOption = (points, config) => {
46
- const weights = points.map((p) => p.point.weight).filter((w) => w != null);
47
- const minWeight = weights.length > 0 ? Math.min(...weights) : 0;
48
- const maxWeight = weights.length > 0 ? Math.max(...weights) : 0;
49
- const sizeOf = (weight) => weights.length === 0 ? SCATTER.BASE_SYMBOL_SIZE : symbolSizeFor(weight ?? minWeight, minWeight, maxWeight);
50
- const groups = groupByCategory(points);
51
- const series = [...groups.entries()].map(([category, group], i) => ({
52
- name: category,
53
- type: "scatter",
54
- data: group.map((folded) => toDataItem(folded, sizeOf)),
55
- itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length], opacity: 0.85 },
56
- emphasis: { focus: "series" }
57
- }));
58
- return {
59
- tooltip: { trigger: "item", formatter: buildTooltipFormatter(config) },
60
- legend: config.showLegend ? { bottom: 0, type: "scroll" } : void 0,
61
- grid: {
62
- left: config.yLabel ? GRID_MARGIN.Y_NAME : GRID_MARGIN.BASE,
63
- right: GRID_MARGIN.RIGHT,
64
- top: GRID_MARGIN.TOP,
65
- // Room for the x axis name and the legend, each only when drawn.
66
- bottom: GRID_MARGIN.BASE + (config.xLabel ? GRID_MARGIN.X_NAME : 0) + (config.showLegend ? GRID_MARGIN.LEGEND : 0),
67
- containLabel: true
68
- },
69
- xAxis: {
70
- type: "value",
71
- name: config.xLabel,
72
- nameLocation: "middle",
73
- nameGap: AXIS_NAME_GAP.X,
74
- scale: true
75
- },
76
- yAxis: {
77
- type: "value",
78
- name: config.yLabel,
79
- nameLocation: "middle",
80
- // Without this the y name is drawn horizontally and eats the plot's width.
81
- nameRotate: 90,
82
- nameGap: AXIS_NAME_GAP.Y,
83
- scale: true
84
- },
85
- dataZoom: config.enableDataZoom ? [
86
- { type: "inside", xAxisIndex: 0 },
87
- { type: "inside", yAxisIndex: 0 }
88
- ] : void 0,
89
- series
90
- };
1
+ const root = "krc-root-U8B4Y";
2
+ const header = "krc-header-dy6xQ";
3
+ const headerLeft = "krc-headerLeft-80jJu";
4
+ const title = "krc-title--e-Ci";
5
+ const subtitle = "krc-subtitle-63ixC";
6
+ const headerRight = "krc-headerRight-3Vuls";
7
+ const toolbar = "krc-toolbar-h6ALf";
8
+ const chartTypeToggle = "krc-chartTypeToggle-6DRWb";
9
+ const active = "krc-active-Un9q0";
10
+ const chartContainer = "krc-chartContainer-2Oz2N";
11
+ const loading = "krc-loading-hTkxl";
12
+ const error = "krc-error--F7yO";
13
+ const retryButton = "krc-retryButton-w0SS7";
14
+ const empty = "krc-empty-HWTS-";
15
+ const styles = {
16
+ root,
17
+ header,
18
+ headerLeft,
19
+ title,
20
+ subtitle,
21
+ headerRight,
22
+ toolbar,
23
+ chartTypeToggle,
24
+ active,
25
+ chartContainer,
26
+ loading,
27
+ error,
28
+ retryButton,
29
+ empty
91
30
  };
92
31
  export {
93
- buildScatterOption
32
+ active,
33
+ chartContainer,
34
+ chartTypeToggle,
35
+ styles as default,
36
+ empty,
37
+ error,
38
+ header,
39
+ headerLeft,
40
+ headerRight,
41
+ loading,
42
+ retryButton,
43
+ root,
44
+ subtitle,
45
+ title,
46
+ toolbar
94
47
  };
95
48
  //# sourceMappingURL=index99.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index99.js","sources":["../src/charts/ScatterChartCard/buildScatterOption.ts"],"sourcesContent":["import type { FoldedPoint } from './foldPoints';\nimport { CHART_COLORS, SCATTER } from '../../constants';\n\n/** Distance from each axis line to its name (px — echarts canvas attributes, not CSS). */\nconst AXIS_NAME_GAP = { X: 28, Y: 38 } as const;\n\n/**\n * Grid margins (px). `containLabel` reserves room for the tick *labels* only, so\n * the axis names and the legend need their own margin or they get clipped at the\n * canvas edge. Each margin must exceed its `AXIS_NAME_GAP` by a text height.\n */\nconst GRID_MARGIN = {\n BASE: 8,\n TOP: 16,\n RIGHT: 16,\n X_NAME: 23,\n Y_NAME: 34,\n LEGEND: 30,\n} as const;\n\n/** Series name used when no point carries a category. */\nconst UNCATEGORISED_SERIES = 'Points';\n\nexport interface ScatterOptionConfig {\n xLabel?: string;\n yLabel?: string;\n categoryLabel?: string;\n showLegend: boolean;\n enableDataZoom: boolean;\n}\n\n/** Point labels come from consumer data and land in the tooltip's HTML. */\nconst escapeHtml = (value: string) =>\n value.replace(/[&<>\"]/g, (char) => `&#${char.charCodeAt(0)};`);\n\n/**\n * Map a weight onto a symbol diameter. The square root keeps the mark *area*\n * proportional to the weight, which is how a reader compares bubble sizes.\n * A dataset whose weights are all equal carries no size information, so it\n * renders at the base size rather than all-maximum.\n */\nconst symbolSizeFor = (weight: number, minWeight: number, maxWeight: number) => {\n if (maxWeight === minWeight) return SCATTER.BASE_SYMBOL_SIZE;\n\n const ratio = Math.sqrt((weight - minWeight) / (maxWeight - minWeight));\n return SCATTER.MIN_SYMBOL_SIZE + (SCATTER.MAX_SYMBOL_SIZE - SCATTER.MIN_SYMBOL_SIZE) * ratio;\n};\n\n/** Group marks by category, preserving first-appearance order. */\nconst groupByCategory = (points: FoldedPoint[]) => {\n const groups = new Map<string, FoldedPoint[]>();\n\n for (const folded of points) {\n const key = folded.point.category ?? UNCATEGORISED_SERIES;\n const group = groups.get(key);\n if (group) group.push(folded);\n else groups.set(key, [folded]);\n }\n\n return groups;\n};\n\n/** `[x, y, count, sourceIndex]` — dims beyond the axes carry the tooltip/click metadata. */\nconst toDataItem = (folded: FoldedPoint, sizeOf: (weight: number | null | undefined) => number) => ({\n name: folded.point.label,\n value: [folded.point.x, folded.point.y, folded.count, folded.index],\n symbolSize: sizeOf(folded.point.weight),\n});\n\nconst buildTooltipFormatter = (config: ScatterOptionConfig) => (params: unknown) => {\n const { name, seriesName, value, marker } = params as {\n name: string;\n seriesName: string;\n value: [number, number, number, number];\n marker: string;\n };\n const [x, y, count] = value;\n\n const lines = [`${marker} ${escapeHtml(name)}`];\n lines.push(`${escapeHtml(config.xLabel ?? 'x')}: ${x}`);\n lines.push(`${escapeHtml(config.yLabel ?? 'y')}: ${y}`);\n\n if (seriesName !== UNCATEGORISED_SERIES) {\n lines.push(`${escapeHtml(config.categoryLabel ?? 'Category')}: ${escapeHtml(seriesName)}`);\n }\n\n if (count > 1) lines.push(`${count} points here`);\n\n return lines.join('<br/>');\n};\n\nexport const buildScatterOption = (points: FoldedPoint[], config: ScatterOptionConfig) => {\n const weights = points.map((p) => p.point.weight).filter((w): w is number => w != null);\n const minWeight = weights.length > 0 ? Math.min(...weights) : 0;\n const maxWeight = weights.length > 0 ? Math.max(...weights) : 0;\n\n // An absent weight sits at the bottom of the scale once any weight is present,\n // and yields the base size when none is.\n const sizeOf = (weight: number | null | undefined) =>\n weights.length === 0\n ? SCATTER.BASE_SYMBOL_SIZE\n : symbolSizeFor(weight ?? minWeight, minWeight, maxWeight);\n\n const groups = groupByCategory(points);\n const series = [...groups.entries()].map(([category, group], i) => ({\n name: category,\n type: 'scatter' as const,\n data: group.map((folded) => toDataItem(folded, sizeOf)),\n itemStyle: { color: CHART_COLORS[i % CHART_COLORS.length], opacity: 0.85 },\n emphasis: { focus: 'series' as const },\n }));\n\n return {\n tooltip: { trigger: 'item' as const, formatter: buildTooltipFormatter(config) },\n legend: config.showLegend ? { bottom: 0, type: 'scroll' as const } : undefined,\n grid: {\n left: config.yLabel ? GRID_MARGIN.Y_NAME : GRID_MARGIN.BASE,\n right: GRID_MARGIN.RIGHT,\n top: GRID_MARGIN.TOP,\n // Room for the x axis name and the legend, each only when drawn.\n bottom:\n GRID_MARGIN.BASE +\n (config.xLabel ? GRID_MARGIN.X_NAME : 0) +\n (config.showLegend ? GRID_MARGIN.LEGEND : 0),\n containLabel: true,\n },\n xAxis: {\n type: 'value' as const,\n name: config.xLabel,\n nameLocation: 'middle' as const,\n nameGap: AXIS_NAME_GAP.X,\n scale: true,\n },\n yAxis: {\n type: 'value' as const,\n name: config.yLabel,\n nameLocation: 'middle' as const,\n // Without this the y name is drawn horizontally and eats the plot's width.\n nameRotate: 90,\n nameGap: AXIS_NAME_GAP.Y,\n scale: true,\n },\n dataZoom: config.enableDataZoom\n ? [\n { type: 'inside' as const, xAxisIndex: 0 },\n { type: 'inside' as const, yAxisIndex: 0 },\n ]\n : undefined,\n series,\n };\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index99.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,4 @@
1
+ import { MarkdownContentProps } from './MarkdownContent.types';
2
+
3
+ export declare const MarkdownContent: import('react').ForwardRefExoticComponent<MarkdownContentProps & import('react').RefAttributes<HTMLDivElement>>;
4
+ //# sourceMappingURL=MarkdownContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MarkdownContent.d.ts","sourceRoot":"","sources":["../../../src/primitives/MarkdownContent/MarkdownContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,eAAO,MAAM,eAAe,iHAa3B,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface MarkdownContentProps extends React.HTMLAttributes<HTMLDivElement> {
2
+ /** Markdown source to parse and render as sanitized HTML. */
3
+ markdown: string;
4
+ }
5
+ //# sourceMappingURL=MarkdownContent.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MarkdownContent.types.d.ts","sourceRoot":"","sources":["../../../src/primitives/MarkdownContent/MarkdownContent.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAqB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAChF,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,3 @@
1
+ export { MarkdownContent } from './MarkdownContent';
2
+ export type { MarkdownContentProps } from './MarkdownContent.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/primitives/MarkdownContent/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/style.css CHANGED
@@ -2202,6 +2202,114 @@
2202
2202
  justify-content: flex-end;
2203
2203
  gap: 0.75rem;
2204
2204
  }
2205
+ .krc-root-93Nfs {
2206
+ line-height: var(--line-height-relaxed);
2207
+ color: var(--text-primary);
2208
+ word-break: break-word;
2209
+ }
2210
+
2211
+ .krc-root-93Nfs h1,
2212
+ .krc-root-93Nfs h2,
2213
+ .krc-root-93Nfs h3,
2214
+ .krc-root-93Nfs h4,
2215
+ .krc-root-93Nfs h5,
2216
+ .krc-root-93Nfs h6 {
2217
+ font-weight: var(--font-weight-semibold);
2218
+ margin: var(--spacing-md) 0 var(--spacing-sm);
2219
+ line-height: var(--line-height-tight);
2220
+ }
2221
+
2222
+ .krc-root-93Nfs h1 {
2223
+ font-size: var(--font-size-2xl);
2224
+ }
2225
+
2226
+ .krc-root-93Nfs h2 {
2227
+ font-size: var(--font-size-xl);
2228
+ }
2229
+
2230
+ .krc-root-93Nfs h3 {
2231
+ font-size: var(--font-size-lg);
2232
+ }
2233
+
2234
+ .krc-root-93Nfs p {
2235
+ margin-bottom: var(--spacing-sm);
2236
+ }
2237
+
2238
+ .krc-root-93Nfs ul,
2239
+ .krc-root-93Nfs ol {
2240
+ padding-left: var(--spacing-lg);
2241
+ margin-bottom: var(--spacing-sm);
2242
+ }
2243
+
2244
+ .krc-root-93Nfs li {
2245
+ margin-bottom: var(--spacing-2xs);
2246
+ }
2247
+
2248
+ .krc-root-93Nfs a {
2249
+ color: var(--accent-color);
2250
+ text-decoration: underline;
2251
+ }
2252
+
2253
+ .krc-root-93Nfs a:hover {
2254
+ color: var(--accent-color-strong);
2255
+ }
2256
+
2257
+ .krc-root-93Nfs code {
2258
+ font-family: ui-monospace, SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
2259
+ background: var(--surface-alt);
2260
+ padding: var(--spacing-2xs) var(--spacing-xs);
2261
+ border-radius: var(--radius-sm);
2262
+ font-size: var(--font-size-sm);
2263
+ }
2264
+
2265
+ .krc-root-93Nfs pre {
2266
+ background: var(--surface-alt);
2267
+ padding: var(--spacing-md);
2268
+ border-radius: var(--radius-md);
2269
+ overflow-x: auto;
2270
+ margin-bottom: var(--spacing-sm);
2271
+ }
2272
+
2273
+ .krc-root-93Nfs pre code {
2274
+ background: transparent;
2275
+ padding: 0;
2276
+ }
2277
+
2278
+ .krc-root-93Nfs table {
2279
+ border-collapse: collapse;
2280
+ width: 100%;
2281
+ margin: var(--spacing-sm) 0;
2282
+ font-size: var(--font-size-sm);
2283
+ }
2284
+
2285
+ .krc-root-93Nfs th,
2286
+ .krc-root-93Nfs td {
2287
+ border: var(--border-width) solid var(--border-color);
2288
+ padding: var(--spacing-xs) var(--spacing-sm);
2289
+ text-align: left;
2290
+ }
2291
+
2292
+ .krc-root-93Nfs th {
2293
+ background: var(--surface-alt);
2294
+ font-weight: var(--font-weight-semibold);
2295
+ }
2296
+
2297
+ .krc-root-93Nfs blockquote {
2298
+ border-left: var(--border-width-md) solid var(--accent-color);
2299
+ padding-left: var(--spacing-md);
2300
+ color: var(--text-secondary);
2301
+ margin: var(--spacing-sm) 0;
2302
+ }
2303
+
2304
+ .krc-root-93Nfs strong {
2305
+ font-weight: var(--font-weight-semibold);
2306
+ }
2307
+
2308
+ .krc-root-93Nfs hr {
2309
+ border: none;
2310
+ border-top: var(--border-width) solid var(--border-color);
2311
+ margin: var(--spacing-md) 0;
2312
+ }
2205
2313
  .krc-root-WYIsp {
2206
2314
  position: relative;
2207
2315
  display: inline-block;
@@ -0,0 +1,3 @@
1
+ export declare const sanitizeHtml: (html: string) => string;
2
+ export declare const parseMarkdown: (markdown: string) => string;
3
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/utils/markdown.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,MAIxC,CAAC;AAEL,eAAO,MAAM,aAAa,GAAI,UAAU,MAAM,KAAG,MACD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=markdown.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.test.d.ts","sourceRoot":"","sources":["../../src/utils/markdown.test.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ktnpm_devops/react-component",
3
- "version": "0.13.1",
3
+ "version": "0.14.0",
4
4
  "description": "Kenmei Technologies React Component Library",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -36,6 +36,15 @@
36
36
  "README.md",
37
37
  "LICENSE"
38
38
  ],
39
+ "lint-staged": {
40
+ "src/**/*.{ts,tsx}": [
41
+ "npx --no-install eslint --fix",
42
+ "npx --no-install prettier --write"
43
+ ],
44
+ "src/**/*.css": [
45
+ "npx --no-install prettier --write"
46
+ ]
47
+ },
39
48
  "peerDependencies": {
40
49
  "leaflet": "^1.9.0",
41
50
  "react": "^18.0.0 || ^19.0.0",
@@ -63,7 +72,9 @@
63
72
  }
64
73
  },
65
74
  "dependencies": {
66
- "clsx": "^2.1.0"
75
+ "clsx": "^2.1.0",
76
+ "dompurify": "^3.3.3",
77
+ "marked": "^17.0.5"
67
78
  },
68
79
  "devDependencies": {
69
80
  "@changesets/cli": "^2.29.8",
@@ -90,7 +101,10 @@
90
101
  "eslint-plugin-react-hooks": "^4.6.0",
91
102
  "eslint-plugin-storybook": "^0.8.0",
92
103
  "happy-dom": "^14.0.0",
104
+ "husky": "^9.1.7",
105
+ "jsdom": "^30.0.1",
93
106
  "leaflet": "^1.9.4",
107
+ "lint-staged": "^17.3.0",
94
108
  "lucide-react": "^0.441.0",
95
109
  "prettier": "^3.2.0",
96
110
  "react": "^19.2.8",
@@ -126,8 +140,13 @@
126
140
  "typecheck": "tsc --noEmit",
127
141
  "storybook:build": "storybook build -o storybook-static",
128
142
  "changeset": "changeset",
129
- "version": "changeset version",
143
+ "version": "changeset version && node scripts/generate-release-notes.mjs",
144
+ "release-notes": "node scripts/generate-release-notes.mjs",
145
+ "release-notes:check": "node scripts/generate-release-notes.mjs --check",
130
146
  "release": "changeset publish",
131
- "dashboard": "node scripts/generate-dashboard.mjs"
147
+ "dashboard": "node scripts/generate-dashboard.mjs",
148
+ "check:rules": "node scripts/check-component-rules.mjs",
149
+ "prompts:generate": "node scripts/generate-copilot-prompts.mjs",
150
+ "prompts:check": "node scripts/generate-copilot-prompts.mjs --check"
132
151
  }
133
152
  }