@ktnpm_devops/react-component 0.2.0 → 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 (263) 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 +15 -75
  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 -15
  116. package/dist/index36.cjs.map +1 -1
  117. package/dist/index36.js +15 -15
  118. package/dist/index36.js.map +1 -1
  119. package/dist/index37.cjs +5 -20
  120. package/dist/index37.cjs.map +1 -1
  121. package/dist/index37.js +5 -20
  122. package/dist/index37.js.map +1 -1
  123. package/dist/index38.cjs +15 -67
  124. package/dist/index38.cjs.map +1 -1
  125. package/dist/index38.js +14 -66
  126. package/dist/index38.js.map +1 -1
  127. package/dist/index39.cjs +67 -84
  128. package/dist/index39.cjs.map +1 -1
  129. package/dist/index39.js +66 -83
  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 +35 -2
  136. package/dist/index40.cjs.map +1 -1
  137. package/dist/index40.js +36 -3
  138. package/dist/index40.js.map +1 -1
  139. package/dist/index41.cjs +15 -6
  140. package/dist/index41.cjs.map +1 -1
  141. package/dist/index41.js +16 -7
  142. package/dist/index41.js.map +1 -1
  143. package/dist/index42.cjs +52 -13
  144. package/dist/index42.cjs.map +1 -1
  145. package/dist/index42.js +52 -13
  146. package/dist/index42.js.map +1 -1
  147. package/dist/index43.cjs +14 -5
  148. package/dist/index43.cjs.map +1 -1
  149. package/dist/index43.js +14 -5
  150. package/dist/index43.js.map +1 -1
  151. package/dist/index44.cjs +30 -24
  152. package/dist/index44.cjs.map +1 -1
  153. package/dist/index44.js +30 -24
  154. package/dist/index44.js.map +1 -1
  155. package/dist/index45.cjs +14 -2
  156. package/dist/index45.cjs.map +1 -1
  157. package/dist/index45.js +14 -2
  158. package/dist/index45.js.map +1 -1
  159. package/dist/index46.cjs +14 -2
  160. package/dist/index46.cjs.map +1 -1
  161. package/dist/index46.js +15 -3
  162. package/dist/index46.js.map +1 -1
  163. package/dist/index47.cjs +2 -53
  164. package/dist/index47.cjs.map +1 -1
  165. package/dist/index47.js +3 -54
  166. package/dist/index47.js.map +1 -1
  167. package/dist/index48.cjs +2 -29
  168. package/dist/index48.cjs.map +1 -1
  169. package/dist/index48.js +3 -30
  170. package/dist/index48.js.map +1 -1
  171. package/dist/index49.cjs +2 -53
  172. package/dist/index49.cjs.map +1 -1
  173. package/dist/index49.js +3 -54
  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 +32 -35
  180. package/dist/index50.cjs.map +1 -1
  181. package/dist/index50.js +32 -35
  182. package/dist/index50.js.map +1 -1
  183. package/dist/index51.cjs +48 -36
  184. package/dist/index51.cjs.map +1 -1
  185. package/dist/index51.js +48 -36
  186. package/dist/index51.js.map +1 -1
  187. package/dist/index52.cjs +16 -34
  188. package/dist/index52.cjs.map +1 -1
  189. package/dist/index52.js +16 -34
  190. package/dist/index52.js.map +1 -1
  191. package/dist/index53.cjs +31 -22
  192. package/dist/index53.cjs.map +1 -1
  193. package/dist/index53.js +32 -23
  194. package/dist/index53.js.map +1 -1
  195. package/dist/index54.cjs +52 -13
  196. package/dist/index54.cjs.map +1 -1
  197. package/dist/index54.js +53 -14
  198. package/dist/index54.js.map +1 -1
  199. package/dist/index55.cjs +134 -55
  200. package/dist/index55.cjs.map +1 -1
  201. package/dist/index55.js +133 -54
  202. package/dist/index55.js.map +1 -1
  203. package/dist/index56.cjs +46 -134
  204. package/dist/index56.cjs.map +1 -1
  205. package/dist/index56.js +45 -133
  206. package/dist/index56.js.map +1 -1
  207. package/dist/index57.cjs +16 -28
  208. package/dist/index57.cjs.map +1 -1
  209. package/dist/index57.js +17 -29
  210. package/dist/index57.js.map +1 -1
  211. package/dist/index58.cjs +22 -16
  212. package/dist/index58.cjs.map +1 -1
  213. package/dist/index58.js +22 -16
  214. package/dist/index58.js.map +1 -1
  215. package/dist/index59.cjs +10 -19
  216. package/dist/index59.cjs.map +1 -1
  217. package/dist/index59.js +10 -19
  218. package/dist/index59.js.map +1 -1
  219. package/dist/index6.cjs +19 -65
  220. package/dist/index6.cjs.map +1 -1
  221. package/dist/index6.js +19 -65
  222. package/dist/index6.js.map +1 -1
  223. package/dist/index60.cjs +17 -32
  224. package/dist/index60.cjs.map +1 -1
  225. package/dist/index60.js +18 -33
  226. package/dist/index60.js.map +1 -1
  227. package/dist/index61.cjs +78 -9
  228. package/dist/index61.cjs.map +1 -1
  229. package/dist/index61.js +79 -10
  230. package/dist/index61.js.map +1 -1
  231. package/dist/index62.cjs +37 -16
  232. package/dist/index62.cjs.map +1 -1
  233. package/dist/index62.js +37 -16
  234. package/dist/index62.js.map +1 -1
  235. package/dist/index63.cjs +16 -13
  236. package/dist/index63.cjs.map +1 -1
  237. package/dist/index63.js +17 -14
  238. package/dist/index63.js.map +1 -1
  239. package/dist/index65.cjs +18 -0
  240. package/dist/index65.cjs.map +1 -0
  241. package/dist/index65.js +18 -0
  242. package/dist/index65.js.map +1 -0
  243. package/dist/index7.cjs +58 -75
  244. package/dist/index7.cjs.map +1 -1
  245. package/dist/index7.js +58 -75
  246. package/dist/index7.js.map +1 -1
  247. package/dist/index8.cjs +82 -15
  248. package/dist/index8.cjs.map +1 -1
  249. package/dist/index8.js +82 -15
  250. package/dist/index8.js.map +1 -1
  251. package/dist/index9.cjs +14 -15
  252. package/dist/index9.cjs.map +1 -1
  253. package/dist/index9.js +15 -16
  254. package/dist/index9.js.map +1 -1
  255. package/dist/style.css +271 -0
  256. package/dist/tokens/semantic-tokens.css +21 -0
  257. package/dist/tokens/tokens.d.ts +35 -0
  258. package/dist/tokens/tokens.d.ts.map +1 -1
  259. package/package.json +1 -1
  260. package/dist/index2.cjs +0 -44
  261. package/dist/index2.cjs.map +0 -1
  262. package/dist/index2.js +0 -44
  263. package/dist/index2.js.map +0 -1
package/dist/index8.js CHANGED
@@ -1,18 +1,85 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- import { clsx } from "./index35.js";
3
- import styles from "./index61.js";
4
- const AuthLayout = ({
5
- children,
6
- logo,
7
- footer,
8
- maxWidth = "28rem",
9
- className
10
- }) => /* @__PURE__ */ jsxs("main", { className: clsx(styles.root, className), children: [
11
- logo && /* @__PURE__ */ jsx("div", { className: styles.logo, children: logo }),
12
- /* @__PURE__ */ jsx("div", { className: styles.card, style: { maxWidth }, children }),
13
- footer && /* @__PURE__ */ jsx("div", { className: styles.footer, children: footer })
14
- ] });
1
+ const ensureString = (value) => value === null || value === void 0 ? "" : String(value);
2
+ const toStringTable = (table) => table.map((row) => row.map((cell) => ensureString(cell)));
3
+ const sanitizeFilename = (value) => {
4
+ const normalized = value.normalize().replace(/[^\p{L}\p{N}]+/gu, "-").replace(/^-+|-+$/g, "").toLowerCase();
5
+ return normalized || "export";
6
+ };
7
+ const buildCsv = (table) => {
8
+ const rows = toStringTable(table);
9
+ return rows.map(
10
+ (row) => row.map((cell) => {
11
+ const escaped = cell.replace(/"/g, '""');
12
+ return /[",\n]/.test(escaped) ? `"${escaped}"` : escaped;
13
+ }).join(",")
14
+ ).join("\r\n");
15
+ };
16
+ const triggerDownload = (blob, filename) => {
17
+ const link = document.createElement("a");
18
+ const url = URL.createObjectURL(blob);
19
+ link.href = url;
20
+ link.download = filename;
21
+ document.body.appendChild(link);
22
+ link.click();
23
+ document.body.removeChild(link);
24
+ URL.revokeObjectURL(url);
25
+ };
26
+ const exportTableToCsv = (table, filename) => {
27
+ if (table.length === 0) return;
28
+ const csv = buildCsv(table);
29
+ const blob = new Blob([csv], { type: "text/csv;charset=utf-8;" });
30
+ const finalName = filename.endsWith(".csv") ? filename : `${filename}.csv`;
31
+ triggerDownload(blob, finalName);
32
+ };
33
+ const getChartPngDataUrl = (chart) => chart.getDataURL({ type: "png", pixelRatio: 2, backgroundColor: "#ffffff" });
34
+ const downloadImageDataUrl = (dataUrl, filename) => {
35
+ const link = document.createElement("a");
36
+ link.href = dataUrl;
37
+ link.download = filename;
38
+ document.body.appendChild(link);
39
+ link.click();
40
+ document.body.removeChild(link);
41
+ };
42
+ const buildTableHtml = (table) => {
43
+ const rows = toStringTable(table);
44
+ if (rows.length === 0) return "";
45
+ const [header, ...body] = rows;
46
+ const thead = `<thead><tr>${header.map((c) => `<th>${c}</th>`).join("")}</tr></thead>`;
47
+ const tbody = body.map((r) => `<tr>${r.map((c) => `<td>${c}</td>`).join("")}</tr>`).join("");
48
+ return `<table>${thead}<tbody>${tbody}</tbody></table>`;
49
+ };
50
+ const openPrintWindowWithChart = (title, chartDataUrl, table) => {
51
+ const win = window.open("", "_blank");
52
+ if (!win) return;
53
+ const tableHtml = buildTableHtml(table);
54
+ win.document.write("<!DOCTYPE html>");
55
+ win.document.write(`<html><head><title>${title}</title>`);
56
+ win.document.write(
57
+ "<style>body{font-family:Arial,Helvetica,sans-serif;padding:24px;color:#1f2937;}h1{font-size:20px;margin-bottom:16px;}img{max-width:100%;height:auto;margin-bottom:16px;border:1px solid #e5e7eb;border-radius:12px;}table{border-collapse:collapse;width:100%;}th,td{border:1px solid #d1d5db;padding:8px;text-align:left;font-size:12px;}th{background:#f3f4f6;text-transform:uppercase;letter-spacing:0.05em;font-weight:600;}</style>"
58
+ );
59
+ win.document.write("</head><body>");
60
+ win.document.write(`<h1>${title}</h1>`);
61
+ win.document.write(`<img src="${chartDataUrl}" alt="${title}" />`);
62
+ win.document.write(tableHtml);
63
+ win.document.write("</body></html>");
64
+ win.document.close();
65
+ win.focus();
66
+ setTimeout(() => win.print(), 300);
67
+ };
68
+ const composeFilename = (title, suffix) => {
69
+ const base = sanitizeFilename(title);
70
+ if (suffix && suffix.trim().length > 0) {
71
+ const suffixSanitized = sanitizeFilename(suffix);
72
+ return `${base}-${suffixSanitized}`;
73
+ }
74
+ return base;
75
+ };
15
76
  export {
16
- AuthLayout
77
+ composeFilename,
78
+ downloadImageDataUrl,
79
+ exportTableToCsv,
80
+ getChartPngDataUrl,
81
+ openPrintWindowWithChart,
82
+ sanitizeFilename,
83
+ toStringTable
17
84
  };
18
85
  //# sourceMappingURL=index8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index8.js","sources":["../src/layouts/AuthLayout/AuthLayout.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport type { AuthLayoutProps } from './AuthLayout.types';\nimport styles from './AuthLayout.module.css';\n\nexport const AuthLayout = ({\n children,\n logo,\n footer,\n maxWidth = '28rem',\n className,\n}: AuthLayoutProps) => (\n <main className={clsx(styles.root, className)}>\n {logo && <div className={styles.logo}>{logo}</div>}\n <div className={styles.card} style={{ maxWidth }}>\n {children}\n </div>\n {footer && <div className={styles.footer}>{footer}</div>}\n </main>\n);\n"],"names":[],"mappings":";;;AAIO,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AACF,2BACG,QAAA,EAAK,WAAW,KAAK,OAAO,MAAM,SAAS,GACzC,UAAA;AAAA,EAAA,QAAQ,oBAAC,OAAA,EAAI,WAAW,OAAO,MAAO,UAAA,MAAK;AAAA,EAC5C,oBAAC,SAAI,WAAW,OAAO,MAAM,OAAO,EAAE,YACnC,UACH;AAAA,EACC,UAAU,oBAAC,OAAA,EAAI,WAAW,OAAO,QAAS,UAAA,OAAA,CAAO;AAAA,EAAA,CACpD;"}
1
+ {"version":3,"file":"index8.js","sources":["../src/utils/chartExport.ts"],"sourcesContent":["export type TableData = Array<Array<string | number>>;\n\nconst ensureString = (value: string | number): string =>\n value === null || value === undefined ? '' : String(value);\n\nexport const toStringTable = (table: TableData): string[][] =>\n table.map((row) => row.map((cell) => ensureString(cell)));\n\nexport const sanitizeFilename = (value: string): string => {\n const normalized = value\n .normalize()\n .replace(/[^\\p{L}\\p{N}]+/gu, '-')\n .replace(/^-+|-+$/g, '')\n .toLowerCase();\n return normalized || 'export';\n};\n\nconst buildCsv = (table: TableData): string => {\n const rows = toStringTable(table);\n return rows\n .map((row) =>\n row\n .map((cell) => {\n const escaped = cell.replace(/\"/g, '\"\"');\n return /[\",\\n]/.test(escaped) ? `\"${escaped}\"` : escaped;\n })\n .join(','),\n )\n .join('\\r\\n');\n};\n\nconst triggerDownload = (blob: Blob, filename: string) => {\n const link = document.createElement('a');\n const url = URL.createObjectURL(blob);\n link.href = url;\n link.download = filename;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(url);\n};\n\nexport const exportTableToCsv = (table: TableData, filename: string) => {\n if (table.length === 0) return;\n const csv = buildCsv(table);\n const blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' });\n const finalName = filename.endsWith('.csv') ? filename : `${filename}.csv`;\n triggerDownload(blob, finalName);\n};\n\nexport const getChartPngDataUrl = (chart: { getDataURL: (opts: Record<string, unknown>) => string }): string =>\n chart.getDataURL({ type: 'png', pixelRatio: 2, backgroundColor: '#ffffff' });\n\nexport const downloadImageDataUrl = (dataUrl: string, filename: string) => {\n const link = document.createElement('a');\n link.href = dataUrl;\n link.download = filename;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n};\n\nconst buildTableHtml = (table: TableData): string => {\n const rows = toStringTable(table);\n if (rows.length === 0) return '';\n const [header, ...body] = rows;\n const thead = `<thead><tr>${header.map((c) => `<th>${c}</th>`).join('')}</tr></thead>`;\n const tbody = body.map((r) => `<tr>${r.map((c) => `<td>${c}</td>`).join('')}</tr>`).join('');\n return `<table>${thead}<tbody>${tbody}</tbody></table>`;\n};\n\nexport const openPrintWindowWithChart = (title: string, chartDataUrl: string, table: TableData) => {\n const win = window.open('', '_blank');\n if (!win) return;\n const tableHtml = buildTableHtml(table);\n win.document.write('<!DOCTYPE html>');\n win.document.write(`<html><head><title>${title}</title>`);\n win.document.write(\n '<style>body{font-family:Arial,Helvetica,sans-serif;padding:24px;color:#1f2937;}h1{font-size:20px;margin-bottom:16px;}img{max-width:100%;height:auto;margin-bottom:16px;border:1px solid #e5e7eb;border-radius:12px;}table{border-collapse:collapse;width:100%;}th,td{border:1px solid #d1d5db;padding:8px;text-align:left;font-size:12px;}th{background:#f3f4f6;text-transform:uppercase;letter-spacing:0.05em;font-weight:600;}</style>',\n );\n win.document.write('</head><body>');\n win.document.write(`<h1>${title}</h1>`);\n win.document.write(`<img src=\"${chartDataUrl}\" alt=\"${title}\" />`);\n win.document.write(tableHtml);\n win.document.write('</body></html>');\n win.document.close();\n win.focus();\n setTimeout(() => win.print(), 300);\n};\n\nexport const composeFilename = (title: string, suffix?: string) => {\n const base = sanitizeFilename(title);\n if (suffix && suffix.trim().length > 0) {\n const suffixSanitized = sanitizeFilename(suffix);\n return suffixSanitized ? `${base}-${suffixSanitized}` : base;\n }\n return base;\n};\n"],"names":[],"mappings":"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"}
package/dist/index9.cjs CHANGED
@@ -1,19 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const clsx = require("./index35.cjs");
5
- const Avatar_module = require("./index36.cjs");
6
- const Avatar = ({ label, size = "md", className, ...props }) => {
7
- const initials = label.split(" ").filter(Boolean).map((part) => part[0]).join("").slice(0, 2).toUpperCase();
8
- return /* @__PURE__ */ jsxRuntime.jsx(
9
- "span",
10
- {
11
- className: clsx.clsx(Avatar_module.default.root, Avatar_module.default[size], className),
12
- "aria-hidden": "true",
13
- ...props,
14
- children: initials || "?"
15
- }
16
- );
17
- };
18
- exports.Avatar = Avatar;
4
+ const clsx = require("./index36.cjs");
5
+ const AuthLayout_module = require("./index65.cjs");
6
+ const AuthLayout = ({
7
+ children,
8
+ logo,
9
+ footer,
10
+ maxWidth = "28rem",
11
+ className
12
+ }) => /* @__PURE__ */ jsxRuntime.jsxs("main", { className: clsx.clsx(AuthLayout_module.default.root, className), children: [
13
+ logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: AuthLayout_module.default.logo, children: logo }),
14
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: AuthLayout_module.default.card, style: { maxWidth }, children }),
15
+ footer && /* @__PURE__ */ jsxRuntime.jsx("div", { className: AuthLayout_module.default.footer, children: footer })
16
+ ] });
17
+ exports.AuthLayout = AuthLayout;
19
18
  //# sourceMappingURL=index9.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index9.cjs","sources":["../src/primitives/Avatar/Avatar.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport styles from './Avatar.module.css';\n\nexport type AvatarSize = 'sm' | 'md' | 'lg';\n\nexport interface AvatarProps extends React.HTMLAttributes<HTMLSpanElement> {\n label: string;\n size?: AvatarSize;\n}\n\nexport const Avatar = ({ label, size = 'md', className, ...props }: AvatarProps) => {\n const initials = label\n .split(' ')\n .filter(Boolean)\n .map((part) => part[0])\n .join('')\n .slice(0, 2)\n .toUpperCase();\n\n return (\n <span\n className={clsx(styles.root, styles[size], className)}\n aria-hidden=\"true\"\n {...props}\n >\n {initials || '?'}\n </span>\n );\n};\n"],"names":["jsx","clsx","styles"],"mappings":";;;;;AAUO,MAAM,SAAS,CAAC,EAAE,OAAO,OAAO,MAAM,WAAW,GAAG,YAAyB;AAClF,QAAM,WAAW,MACd,MAAM,GAAG,EACT,OAAO,OAAO,EACd,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,EACrB,KAAK,EAAE,EACP,MAAM,GAAG,CAAC,EACV,YAAA;AAEH,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,KAAAA,KAAKC,sBAAO,MAAMA,cAAAA,QAAO,IAAI,GAAG,SAAS;AAAA,MACpD,eAAY;AAAA,MACX,GAAG;AAAA,MAEH,UAAA,YAAY;AAAA,IAAA;AAAA,EAAA;AAGnB;;"}
1
+ {"version":3,"file":"index9.cjs","sources":["../src/layouts/AuthLayout/AuthLayout.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport type { AuthLayoutProps } from './AuthLayout.types';\nimport styles from './AuthLayout.module.css';\n\nexport const AuthLayout = ({\n children,\n logo,\n footer,\n maxWidth = '28rem',\n className,\n}: AuthLayoutProps) => (\n <main className={clsx(styles.root, className)}>\n {logo && <div className={styles.logo}>{logo}</div>}\n <div className={styles.card} style={{ maxWidth }}>\n {children}\n </div>\n {footer && <div className={styles.footer}>{footer}</div>}\n </main>\n);\n"],"names":["clsx","styles","jsx"],"mappings":";;;;;AAIO,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AACF,sCACG,QAAA,EAAK,WAAWA,KAAAA,KAAKC,kBAAAA,QAAO,MAAM,SAAS,GACzC,UAAA;AAAA,EAAA,QAAQC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,kBAAAA,QAAO,MAAO,UAAA,MAAK;AAAA,EAC5CC,+BAAC,SAAI,WAAWD,kBAAAA,QAAO,MAAM,OAAO,EAAE,YACnC,UACH;AAAA,EACC,UAAUC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,kBAAAA,QAAO,QAAS,UAAA,OAAA,CAAO;AAAA,EAAA,CACpD;;"}
package/dist/index9.js CHANGED
@@ -1,19 +1,18 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { clsx } from "./index35.js";
3
- import styles from "./index36.js";
4
- const Avatar = ({ label, size = "md", className, ...props }) => {
5
- const initials = label.split(" ").filter(Boolean).map((part) => part[0]).join("").slice(0, 2).toUpperCase();
6
- return /* @__PURE__ */ jsx(
7
- "span",
8
- {
9
- className: clsx(styles.root, styles[size], className),
10
- "aria-hidden": "true",
11
- ...props,
12
- children: initials || "?"
13
- }
14
- );
15
- };
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { clsx } from "./index36.js";
3
+ import styles from "./index65.js";
4
+ const AuthLayout = ({
5
+ children,
6
+ logo,
7
+ footer,
8
+ maxWidth = "28rem",
9
+ className
10
+ }) => /* @__PURE__ */ jsxs("main", { className: clsx(styles.root, className), children: [
11
+ logo && /* @__PURE__ */ jsx("div", { className: styles.logo, children: logo }),
12
+ /* @__PURE__ */ jsx("div", { className: styles.card, style: { maxWidth }, children }),
13
+ footer && /* @__PURE__ */ jsx("div", { className: styles.footer, children: footer })
14
+ ] });
16
15
  export {
17
- Avatar
16
+ AuthLayout
18
17
  };
19
18
  //# sourceMappingURL=index9.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index9.js","sources":["../src/primitives/Avatar/Avatar.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport styles from './Avatar.module.css';\n\nexport type AvatarSize = 'sm' | 'md' | 'lg';\n\nexport interface AvatarProps extends React.HTMLAttributes<HTMLSpanElement> {\n label: string;\n size?: AvatarSize;\n}\n\nexport const Avatar = ({ label, size = 'md', className, ...props }: AvatarProps) => {\n const initials = label\n .split(' ')\n .filter(Boolean)\n .map((part) => part[0])\n .join('')\n .slice(0, 2)\n .toUpperCase();\n\n return (\n <span\n className={clsx(styles.root, styles[size], className)}\n aria-hidden=\"true\"\n {...props}\n >\n {initials || '?'}\n </span>\n );\n};\n"],"names":[],"mappings":";;;AAUO,MAAM,SAAS,CAAC,EAAE,OAAO,OAAO,MAAM,WAAW,GAAG,YAAyB;AAClF,QAAM,WAAW,MACd,MAAM,GAAG,EACT,OAAO,OAAO,EACd,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,EACrB,KAAK,EAAE,EACP,MAAM,GAAG,CAAC,EACV,YAAA;AAEH,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAW,KAAK,OAAO,MAAM,OAAO,IAAI,GAAG,SAAS;AAAA,MACpD,eAAY;AAAA,MACX,GAAG;AAAA,MAEH,UAAA,YAAY;AAAA,IAAA;AAAA,EAAA;AAGnB;"}
1
+ {"version":3,"file":"index9.js","sources":["../src/layouts/AuthLayout/AuthLayout.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport type { AuthLayoutProps } from './AuthLayout.types';\nimport styles from './AuthLayout.module.css';\n\nexport const AuthLayout = ({\n children,\n logo,\n footer,\n maxWidth = '28rem',\n className,\n}: AuthLayoutProps) => (\n <main className={clsx(styles.root, className)}>\n {logo && <div className={styles.logo}>{logo}</div>}\n <div className={styles.card} style={{ maxWidth }}>\n {children}\n </div>\n {footer && <div className={styles.footer}>{footer}</div>}\n </main>\n);\n"],"names":[],"mappings":";;;AAIO,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AACF,2BACG,QAAA,EAAK,WAAW,KAAK,OAAO,MAAM,SAAS,GACzC,UAAA;AAAA,EAAA,QAAQ,oBAAC,OAAA,EAAI,WAAW,OAAO,MAAO,UAAA,MAAK;AAAA,EAC5C,oBAAC,SAAI,WAAW,OAAO,MAAM,OAAO,EAAE,YACnC,UACH;AAAA,EACC,UAAU,oBAAC,OAAA,EAAI,WAAW,OAAO,QAAS,UAAA,OAAA,CAAO;AAAA,EAAA,CACpD;"}
package/dist/style.css CHANGED
@@ -1,3 +1,274 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
2
+
3
+ :root {
4
+ --orbit-font-sans: 'Inter', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
5
+
6
+ /* Light theme palette */
7
+ --orbit-color-bg-primary: #f9fafb;
8
+ --orbit-color-surface: #ffffff;
9
+ --orbit-color-surface-muted: #f3f4f6;
10
+ --orbit-color-surface-alt: #eef2ff;
11
+
12
+ --orbit-color-text-primary: #111827;
13
+ --orbit-color-text-secondary: #4b5563;
14
+ --orbit-color-text-tertiary: #6b7280;
15
+ --orbit-color-text-disabled: #9ca3af;
16
+
17
+ --orbit-color-border: #e5e7eb;
18
+ --orbit-color-border-light: #f3f4f6;
19
+
20
+ --orbit-color-brand: #ff6b5a;
21
+ --orbit-color-brand-hover: #e65548;
22
+ --orbit-color-brand-soft: rgba(255, 107, 90, 0.12);
23
+
24
+ --orbit-color-purple: #2d1b2e;
25
+ --orbit-color-purple-light: #4a3044;
26
+
27
+ --orbit-color-success: #047857;
28
+ --orbit-color-success-soft: #ecfdf5;
29
+ --orbit-color-warning: #b45309;
30
+ --orbit-color-warning-soft: #fffbeb;
31
+ --orbit-color-danger: #b91c1c;
32
+ --orbit-color-danger-soft: #fef2f2;
33
+ --orbit-color-info: #1d4ed8;
34
+ --orbit-color-info-soft: #dbeafe;
35
+
36
+ --orbit-shadow-sm: 0 0.0625rem 0.125rem 0 rgba(15, 23, 42, 0.05);
37
+ --orbit-shadow-md: 0 0.625rem 1.5625rem -0.625rem rgba(45, 27, 46, 0.35);
38
+ --orbit-shadow-lg: 0 1.25rem 2.8125rem -0.9375rem rgba(45, 27, 46, 0.3);
39
+
40
+ --orbit-radius-sm: 0.375rem;
41
+ --orbit-radius-md: 0.625rem;
42
+ --orbit-radius-lg: 1rem;
43
+ --orbit-radius-pill: 62.4375rem;
44
+ }
45
+
46
+ :root[data-theme='dark'],
47
+ .dark {
48
+ --orbit-color-bg-primary: #111827;
49
+ --orbit-color-surface: #1f2937;
50
+ --orbit-color-surface-muted: #374151;
51
+ --orbit-color-surface-alt: #2d1b2e;
52
+
53
+ --orbit-color-text-primary: #f3f4f6;
54
+ --orbit-color-text-secondary: #9ca3af;
55
+ --orbit-color-text-tertiary: #6b7280;
56
+ --orbit-color-text-disabled: #4b5563;
57
+
58
+ --orbit-color-border: #374151;
59
+ --orbit-color-border-light: #2d1b2e;
60
+
61
+ --orbit-color-brand: #ff8575;
62
+ --orbit-color-brand-hover: #ff6b5a;
63
+ --orbit-color-brand-soft: rgba(255, 133, 117, 0.16);
64
+
65
+ --orbit-color-purple: #2d1b2e;
66
+ --orbit-color-purple-light: #4a3044;
67
+
68
+ --orbit-color-success: #34d399;
69
+ --orbit-color-success-soft: rgba(16, 185, 129, 0.12);
70
+ --orbit-color-warning: #facc15;
71
+ --orbit-color-warning-soft: rgba(250, 204, 21, 0.12);
72
+ --orbit-color-danger: #f87171;
73
+ --orbit-color-danger-soft: rgba(248, 113, 113, 0.12);
74
+ --orbit-color-info: #60a5fa;
75
+ --orbit-color-info-soft: rgba(96, 165, 250, 0.12);
76
+
77
+ --orbit-shadow-sm: 0 0.0625rem 0.125rem 0 rgba(17, 24, 39, 0.35);
78
+ --orbit-shadow-md: 0 0.75rem 1.875rem -0.75rem rgba(17, 24, 39, 0.55);
79
+ --orbit-shadow-lg: 0 1.5rem 3.4375rem -1.25rem rgba(17, 24, 39, 0.6);
80
+ }
81
+
82
+ :root {
83
+ color-scheme: light;
84
+
85
+ --font-family-base: var(--orbit-font-sans);
86
+
87
+ /* Surfaces */
88
+ --app-background: var(--orbit-color-bg-primary);
89
+ --surface-color: var(--orbit-color-surface);
90
+ --surface-alt: var(--orbit-color-surface-muted);
91
+ --surface-elevated: var(--orbit-color-surface);
92
+ --surface-secondary: var(--orbit-color-surface-muted);
93
+
94
+ /* Borders */
95
+ --border-color: var(--orbit-color-border);
96
+ --border-color-light: var(--orbit-color-border-light);
97
+ --border-width: 0.0625rem;
98
+ --border-width-md: 0.125rem;
99
+
100
+ /* Text */
101
+ --text-primary: var(--orbit-color-text-primary);
102
+ --text-secondary: var(--orbit-color-text-secondary);
103
+ --text-muted: var(--orbit-color-text-secondary);
104
+ --text-tertiary: var(--orbit-color-text-tertiary);
105
+ --text-disabled: var(--orbit-color-text-disabled);
106
+
107
+ /* Brand / Accent */
108
+ --accent-color: var(--orbit-color-brand);
109
+ --accent-color-strong: var(--orbit-color-brand-hover);
110
+ --accent-color-soft: var(--orbit-color-brand-soft);
111
+ --accent-color-contrast: #ffffff;
112
+
113
+ /* Status */
114
+ --danger-color: var(--orbit-color-danger);
115
+ --danger-color-soft: var(--orbit-color-danger-soft);
116
+ --success-color: var(--orbit-color-success);
117
+ --success-color-soft: var(--orbit-color-success-soft);
118
+ --warning-color: var(--orbit-color-warning);
119
+ --warning-color-soft: var(--orbit-color-warning-soft);
120
+ --info-color: var(--orbit-color-info);
121
+ --info-color-soft: var(--orbit-color-info-soft);
122
+
123
+ /* Shadows */
124
+ --shadow-subtle: var(--orbit-shadow-sm);
125
+ --shadow-soft: var(--orbit-shadow-md);
126
+ --shadow-md: var(--orbit-shadow-md);
127
+ --shadow-elevated: var(--orbit-shadow-lg);
128
+ --shadow-lg: var(--orbit-shadow-lg);
129
+
130
+ /* Radii */
131
+ --radius-sm: var(--orbit-radius-sm);
132
+ --radius-md: var(--orbit-radius-md);
133
+ --radius-lg: var(--orbit-radius-lg);
134
+ --radius-pill: var(--orbit-radius-pill);
135
+
136
+ /* Spacing scale */
137
+ --spacing-2xs: 0.125rem;
138
+ --spacing-xs: 0.375rem;
139
+ --spacing-sm: 0.625rem;
140
+ --spacing-md: 1rem;
141
+ --spacing-lg: 1.5rem;
142
+ --spacing-xl: 2rem;
143
+ --spacing-2xl: 3rem;
144
+ --spacing-3xl: 4rem;
145
+
146
+ /* Font sizes */
147
+ --font-size-2xs: 0.625rem;
148
+ --font-size-xs: 0.6875rem;
149
+ --font-size-sm: 0.8125rem;
150
+ --font-size-base: 0.875rem;
151
+ --font-size-md: 0.875rem;
152
+ --font-size-lg: 1rem;
153
+ --font-size-xl: 1.125rem;
154
+ --font-size-2xl: 1.25rem;
155
+ --font-size-3xl: 1.5rem;
156
+ --font-size-4xl: 1.875rem;
157
+
158
+ /* Font weights */
159
+ --font-weight-normal: 400;
160
+ --font-weight-medium: 500;
161
+ --font-weight-semibold: 600;
162
+ --font-weight-bold: 700;
163
+
164
+ /* Line heights */
165
+ --line-height-tight: 1.25;
166
+ --line-height-normal: 1.5;
167
+ --line-height-relaxed: 1.75;
168
+
169
+ /* Icon sizes */
170
+ --icon-sm: 0.875rem;
171
+ --icon-md: 1rem;
172
+ --icon-lg: 1.125rem;
173
+
174
+ /* Focus ring (brand-colored) */
175
+ --focus-ring-width: 0.1875rem;
176
+ --focus-ring-spread: 0.25rem;
177
+ --focus-ring-color: rgba(255, 107, 90, 0.35);
178
+ --focus-ring-color-subtle: rgba(255, 107, 90, 0.18);
179
+ --focus-ring-shadow: 0 0 0 var(--border-width-md) var(--focus-ring-color),
180
+ 0 0 0 var(--focus-ring-spread) var(--focus-ring-color-subtle);
181
+ --input-focus-shadow: 0 0 0 var(--focus-ring-width) rgba(255, 107, 90, 0.15);
182
+
183
+ /* Avatar */
184
+ --avatar-gradient: linear-gradient(135deg, var(--accent-color), var(--orbit-color-purple-light));
185
+
186
+ /* Chart palette */
187
+ --chart-color-1: #ff6b5a;
188
+ --chart-color-2: #4a3044;
189
+ --chart-color-3: #3b82f6;
190
+ --chart-color-4: #10b981;
191
+ --chart-color-5: #f59e0b;
192
+ --chart-color-6: #8b5cf6;
193
+
194
+ /* Scrollbar */
195
+ --scrollbar-track: rgba(148, 163, 184, 0.05);
196
+ --scrollbar-thumb: rgba(148, 163, 184, 0.3);
197
+ --scrollbar-thumb-hover: rgba(148, 163, 184, 0.5);
198
+
199
+ /* Overlay */
200
+ --overlay-color: rgba(0, 0, 0, 0.5);
201
+ --backdrop-blur: 0.25rem;
202
+ }
203
+
204
+ :root[data-theme='dark'],
205
+ .dark {
206
+ color-scheme: dark;
207
+
208
+ /* Surfaces */
209
+ --app-background: var(--orbit-color-bg-primary);
210
+ --surface-color: var(--orbit-color-surface);
211
+ --surface-alt: var(--orbit-color-surface-muted);
212
+ --surface-elevated: var(--orbit-color-surface);
213
+ --surface-secondary: var(--orbit-color-surface-muted);
214
+
215
+ /* Borders */
216
+ --border-color: var(--orbit-color-border);
217
+ --border-color-light: var(--orbit-color-border-light);
218
+
219
+ /* Text */
220
+ --text-primary: var(--orbit-color-text-primary);
221
+ --text-secondary: var(--orbit-color-text-secondary);
222
+ --text-muted: var(--orbit-color-text-secondary);
223
+ --text-tertiary: var(--orbit-color-text-tertiary);
224
+ --text-disabled: var(--orbit-color-text-disabled);
225
+
226
+ /* Brand / Accent */
227
+ --accent-color: var(--orbit-color-brand);
228
+ --accent-color-strong: var(--orbit-color-brand-hover);
229
+ --accent-color-soft: var(--orbit-color-brand-soft);
230
+ --accent-color-contrast: #ffffff;
231
+
232
+ /* Status */
233
+ --danger-color: var(--orbit-color-danger);
234
+ --danger-color-soft: var(--orbit-color-danger-soft);
235
+ --success-color: var(--orbit-color-success);
236
+ --success-color-soft: var(--orbit-color-success-soft);
237
+ --warning-color: var(--orbit-color-warning);
238
+ --warning-color-soft: var(--orbit-color-warning-soft);
239
+ --info-color: var(--orbit-color-info);
240
+ --info-color-soft: var(--orbit-color-info-soft);
241
+
242
+ /* Shadows */
243
+ --shadow-subtle: var(--orbit-shadow-sm);
244
+ --shadow-soft: var(--orbit-shadow-md);
245
+ --shadow-md: var(--orbit-shadow-md);
246
+ --shadow-elevated: var(--orbit-shadow-lg);
247
+ --shadow-lg: var(--orbit-shadow-lg);
248
+
249
+ /* Focus ring (brand-colored, dark) */
250
+ --focus-ring-color: rgba(255, 133, 117, 0.35);
251
+ --focus-ring-color-subtle: rgba(255, 133, 117, 0.18);
252
+ --focus-ring-shadow: 0 0 0 var(--border-width-md) var(--focus-ring-color),
253
+ 0 0 0 var(--focus-ring-spread) var(--focus-ring-color-subtle);
254
+ --input-focus-shadow: 0 0 0 var(--focus-ring-width) rgba(255, 133, 117, 0.15);
255
+
256
+ /* Chart palette (dark) */
257
+ --chart-color-1: #ff8575;
258
+ --chart-color-2: #4a3044;
259
+ --chart-color-3: #60a5fa;
260
+ --chart-color-4: #34d399;
261
+ --chart-color-5: #facc15;
262
+ --chart-color-6: #a78bfa;
263
+
264
+ /* Scrollbar (dark) */
265
+ --scrollbar-track: rgba(148, 163, 184, 0.08);
266
+ --scrollbar-thumb: rgba(148, 163, 184, 0.2);
267
+ --scrollbar-thumb-hover: rgba(148, 163, 184, 0.35);
268
+
269
+ /* Overlay */
270
+ --overlay-color: rgba(0, 0, 0, 0.6);
271
+ }
1
272
  .krc-root-la9-1 {
2
273
  display: flex;
3
274
  flex-direction: column;
@@ -58,11 +58,32 @@
58
58
  --spacing-sm: 0.625rem;
59
59
  --spacing-md: 1rem;
60
60
  --spacing-lg: 1.5rem;
61
+ --spacing-xl: 2rem;
62
+ --spacing-2xl: 3rem;
63
+ --spacing-3xl: 4rem;
61
64
 
62
65
  /* Font sizes */
66
+ --font-size-2xs: 0.625rem;
63
67
  --font-size-xs: 0.6875rem;
64
68
  --font-size-sm: 0.8125rem;
69
+ --font-size-base: 0.875rem;
65
70
  --font-size-md: 0.875rem;
71
+ --font-size-lg: 1rem;
72
+ --font-size-xl: 1.125rem;
73
+ --font-size-2xl: 1.25rem;
74
+ --font-size-3xl: 1.5rem;
75
+ --font-size-4xl: 1.875rem;
76
+
77
+ /* Font weights */
78
+ --font-weight-normal: 400;
79
+ --font-weight-medium: 500;
80
+ --font-weight-semibold: 600;
81
+ --font-weight-bold: 700;
82
+
83
+ /* Line heights */
84
+ --line-height-tight: 1.25;
85
+ --line-height-normal: 1.5;
86
+ --line-height-relaxed: 1.75;
66
87
 
67
88
  /* Icon sizes */
68
89
  --icon-sm: 0.875rem;
@@ -38,5 +38,40 @@ export declare const orbitTokens: {
38
38
  readonly lg: "16px";
39
39
  readonly pill: "999px";
40
40
  };
41
+ readonly typography: {
42
+ readonly fontSize: {
43
+ readonly '2xs': "0.625rem";
44
+ readonly xs: "0.6875rem";
45
+ readonly sm: "0.8125rem";
46
+ readonly base: "0.875rem";
47
+ readonly md: "0.875rem";
48
+ readonly lg: "1rem";
49
+ readonly xl: "1.125rem";
50
+ readonly '2xl': "1.25rem";
51
+ readonly '3xl': "1.5rem";
52
+ readonly '4xl': "1.875rem";
53
+ };
54
+ readonly fontWeight: {
55
+ readonly normal: "400";
56
+ readonly medium: "500";
57
+ readonly semibold: "600";
58
+ readonly bold: "700";
59
+ };
60
+ readonly lineHeight: {
61
+ readonly tight: "1.25";
62
+ readonly normal: "1.5";
63
+ readonly relaxed: "1.75";
64
+ };
65
+ };
66
+ readonly spacing: {
67
+ readonly '2xs': "0.125rem";
68
+ readonly xs: "0.375rem";
69
+ readonly sm: "0.625rem";
70
+ readonly md: "1rem";
71
+ readonly lg: "1.5rem";
72
+ readonly xl: "2rem";
73
+ readonly '2xl': "3rem";
74
+ readonly '3xl': "4rem";
75
+ };
41
76
  };
42
77
  //# sourceMappingURL=tokens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/tokens/tokens.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCd,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/tokens/tokens.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Ed,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ktnpm_devops/react-component",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Kenmei Technologies React Component Library",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/dist/index2.cjs DELETED
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const orbitTokens = {
4
- brand: {
5
- orange: "#FF6B5A",
6
- orangeLight: "#FF8575",
7
- orangeDark: "#E65548",
8
- orangeSoft: "rgba(255, 107, 90, 0.12)"
9
- },
10
- purple: {
11
- base: "#2D1B2E",
12
- light: "#4A3044"
13
- },
14
- semantic: {
15
- success: "#047857",
16
- successSoft: "#ECFDF5",
17
- warning: "#B45309",
18
- warningSoft: "#FFFBEB",
19
- danger: "#B91C1C",
20
- dangerSoft: "#FEF2F2",
21
- info: "#1D4ED8",
22
- infoSoft: "#DBEAFE"
23
- },
24
- dark: {
25
- semantic: {
26
- success: "#34D399",
27
- successSoft: "rgba(16, 185, 129, 0.12)",
28
- warning: "#FACC15",
29
- warningSoft: "rgba(250, 204, 21, 0.12)",
30
- danger: "#F87171",
31
- dangerSoft: "rgba(248, 113, 113, 0.12)",
32
- info: "#60A5FA",
33
- infoSoft: "rgba(96, 165, 250, 0.12)"
34
- }
35
- },
36
- radius: {
37
- sm: "6px",
38
- md: "10px",
39
- lg: "16px",
40
- pill: "999px"
41
- }
42
- };
43
- exports.orbitTokens = orbitTokens;
44
- //# sourceMappingURL=index2.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index2.cjs","sources":["../src/tokens/tokens.ts"],"sourcesContent":["/** Orbit design token values for programmatic use (e.g., ECharts theming). */\nexport const orbitTokens = {\n brand: {\n orange: '#FF6B5A',\n orangeLight: '#FF8575',\n orangeDark: '#E65548',\n orangeSoft: 'rgba(255, 107, 90, 0.12)',\n },\n purple: {\n base: '#2D1B2E',\n light: '#4A3044',\n },\n semantic: {\n success: '#047857',\n successSoft: '#ECFDF5',\n warning: '#B45309',\n warningSoft: '#FFFBEB',\n danger: '#B91C1C',\n dangerSoft: '#FEF2F2',\n info: '#1D4ED8',\n infoSoft: '#DBEAFE',\n },\n dark: {\n semantic: {\n success: '#34D399',\n successSoft: 'rgba(16, 185, 129, 0.12)',\n warning: '#FACC15',\n warningSoft: 'rgba(250, 204, 21, 0.12)',\n danger: '#F87171',\n dangerSoft: 'rgba(248, 113, 113, 0.12)',\n info: '#60A5FA',\n infoSoft: 'rgba(96, 165, 250, 0.12)',\n },\n },\n radius: {\n sm: '6px',\n md: '10px',\n lg: '16px',\n pill: '999px',\n },\n} as const;\n"],"names":[],"mappings":";;AACO,MAAM,cAAc;AAAA,EACzB,OAAO;AAAA,IACL,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,YAAY;AAAA,EAAA;AAAA,EAEd,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,EAAA;AAAA,EAET,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,SAAS;AAAA,IACT,aAAa;AAAA,IACb,QAAQ;AAAA,IACR,YAAY;AAAA,IACZ,MAAM;AAAA,IACN,UAAU;AAAA,EAAA;AAAA,EAEZ,MAAM;AAAA,IACJ,UAAU;AAAA,MACR,SAAS;AAAA,MACT,aAAa;AAAA,MACb,SAAS;AAAA,MACT,aAAa;AAAA,MACb,QAAQ;AAAA,MACR,YAAY;AAAA,MACZ,MAAM;AAAA,MACN,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EAEF,QAAQ;AAAA,IACN,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAEV;;"}