hanseol-dev 5.0.3-dev.18 → 5.0.3-dev.19
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.
|
@@ -822,11 +822,11 @@ function buildDonutChartContent(design, data) {
|
|
|
822
822
|
cumPct += pct;
|
|
823
823
|
return `${segColors[i % segColors.length]} ${start.toFixed(1)}% ${cumPct.toFixed(1)}%`;
|
|
824
824
|
}).join(',');
|
|
825
|
-
const css = `.content{flex:1;display:grid;grid-template-columns:1.2fr 1fr;gap:
|
|
825
|
+
const css = `.content{flex:1;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;align-content:center;padding:20px 0}
|
|
826
826
|
.donut-wrap{display:flex;justify-content:center;align-items:center}
|
|
827
|
-
.donut{width:
|
|
828
|
-
.donut-hole{width:
|
|
829
|
-
.donut-center{font-size:
|
|
827
|
+
.donut{width:540px;height:540px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(0,0,0,0.08)}
|
|
828
|
+
.donut-hole{width:260px;height:260px;border-radius:50%;background:${design.background_color};display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px}
|
|
829
|
+
.donut-center{font-size:32px;font-weight:800;color:${design.primary_color};text-align:center;line-height:1.3}
|
|
830
830
|
.legend{display:flex;flex-direction:column;gap:28px}
|
|
831
831
|
.legend-item{display:flex;align-items:center;gap:16px;font-size:28px;padding:12px 16px;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.04);color:${getCardTextColor(design)}}
|
|
832
832
|
.legend-dot{width:24px;height:24px;border-radius:50%;flex-shrink:0}
|
|
@@ -857,7 +857,7 @@ function buildTableContent(design, data) {
|
|
|
857
857
|
const css = `.content{flex:1;display:flex;flex-direction:column;justify-content:center}
|
|
858
858
|
.data-table{width:100%;border-collapse:collapse;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,0.05);border-radius:12px;overflow:hidden;table-layout:fixed}
|
|
859
859
|
.data-table th{background:${design.primary_color};color:#fff;font-size:28px;text-align:left;padding:22px 28px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
|
860
|
-
.data-table td{font-size:28px;color:${cardText};padding:22px 28px;border-bottom:1px solid ${design.accent_light};overflow:hidden;
|
|
860
|
+
.data-table td{font-size:28px;color:${cardText};padding:22px 28px;border-bottom:1px solid ${design.accent_light};overflow:hidden;word-break:break-word}
|
|
861
861
|
.data-table tr:last-child td{border-bottom:none}
|
|
862
862
|
.data-table tr:nth-child(even){background:${design.accent_light}20}
|
|
863
863
|
.data-table tr.highlight td{background:${design.accent_color}15;font-weight:600}
|
|
@@ -865,7 +865,7 @@ function buildTableContent(design, data) {
|
|
|
865
865
|
const headers = (data.headers || []).slice(0, maxCols).map(h => `<th>${escapeHtmlTemplate(String(h || '').slice(0, 25))}</th>`).join('');
|
|
866
866
|
const rows = (data.rows || []).slice(0, 5).map((row, ri) => {
|
|
867
867
|
const cls = ri === data.highlightRow ? ' class="highlight"' : '';
|
|
868
|
-
const cells = (row || []).slice(0, maxCols).map(c => `<td>${escapeHtmlTemplate(String(c || '').slice(0,
|
|
868
|
+
const cells = (row || []).slice(0, maxCols).map(c => `<td>${escapeHtmlTemplate(String(c || '').slice(0, 50))}</td>`).join('');
|
|
869
869
|
return `<tr${cls}>${cells}</tr>`;
|
|
870
870
|
}).join('\n');
|
|
871
871
|
return {
|
|
@@ -906,7 +906,7 @@ function buildProcessFlowContent(design, data) {
|
|
|
906
906
|
}
|
|
907
907
|
function buildBigNumbersContent(design, data) {
|
|
908
908
|
const cardText = getCardTextColor(design);
|
|
909
|
-
const css = `.content{flex:1;display:flex;gap:40px;align-items:
|
|
909
|
+
const css = `.content{flex:1;display:flex;gap:40px;align-items:center}
|
|
910
910
|
.metric-card{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:56px 36px;border-radius:20px;background:#fff;box-shadow:0 6px 28px rgba(0,0,0,0.08);text-align:center;gap:20px;border-top:4px solid ${design.accent_color}}
|
|
911
911
|
.metric-value{font-size:100px;font-weight:800;color:${design.primary_color};line-height:1}
|
|
912
912
|
.metric-unit{font-size:36px;font-weight:600;color:${design.accent_color}}
|
|
@@ -944,14 +944,14 @@ function buildTimelineContent(design, data) {
|
|
|
944
944
|
return { css, html: `<div class="content">${milestones}\n</div>` };
|
|
945
945
|
}
|
|
946
946
|
function buildProgressBarsContent(design, data) {
|
|
947
|
-
const css = `.content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:
|
|
948
|
-
.bar-item{display:flex;flex-direction:column;gap:
|
|
947
|
+
const css = `.content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:44px;padding:40px 0}
|
|
948
|
+
.bar-item{display:flex;flex-direction:column;gap:12px}
|
|
949
949
|
.bar-header{display:flex;justify-content:space-between;align-items:baseline}
|
|
950
|
-
.bar-label{font-size:
|
|
951
|
-
.bar-val{font-size:
|
|
952
|
-
.bar-track{width:100%;height:
|
|
953
|
-
.bar-fill{height:100%;border-radius:
|
|
954
|
-
.bar-detail{font-size:
|
|
950
|
+
.bar-label{font-size:32px;font-weight:600;color:${design.text_color}}
|
|
951
|
+
.bar-val{font-size:32px;font-weight:700;color:${design.primary_color}}
|
|
952
|
+
.bar-track{width:100%;height:56px;background:${design.accent_light};border-radius:28px;overflow:hidden}
|
|
953
|
+
.bar-fill{height:100%;border-radius:28px;background:linear-gradient(90deg,${design.primary_color},${design.accent_color})}
|
|
954
|
+
.bar-detail{font-size:26px;color:${design.text_color}88;margin-top:-2px}`;
|
|
955
955
|
const bars = (data.bars || []).slice(0, 6).map(b => `
|
|
956
956
|
<div class="bar-item">
|
|
957
957
|
<div class="bar-header"><span class="bar-label">${escapeHtmlTemplate(b.label || '')}</span><span class="bar-val">${escapeHtmlTemplate(b.value || '')}</span></div>
|
package/dist/constants.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export declare const PROJECTS_DIR: string;
|
|
|
7
7
|
export declare const CREDENTIALS_FILE_PATH: string;
|
|
8
8
|
export declare const APP_NAME = "hanseol-dev";
|
|
9
9
|
export declare const SERVICE_ID = "hanseol";
|
|
10
|
-
export declare const APP_VERSION = "5.0.3-dev.
|
|
10
|
+
export declare const APP_VERSION = "5.0.3-dev.19";
|
|
11
11
|
export declare const DASHBOARD_URL = "https://52.78.246.50.nip.io";
|
|
12
12
|
export declare const ONCE_URL = "https://52.78.246.50.nip.io:5090";
|
|
13
13
|
export declare const FREE_URL = "https://52.78.246.50.nip.io:6090";
|
package/dist/constants.js
CHANGED
|
@@ -9,7 +9,7 @@ export const PROJECTS_DIR = path.join(LOCAL_HOME_DIR, 'projects');
|
|
|
9
9
|
export const CREDENTIALS_FILE_PATH = path.join(LOCAL_HOME_DIR, 'credentials.json');
|
|
10
10
|
export const APP_NAME = 'hanseol-dev';
|
|
11
11
|
export const SERVICE_ID = 'hanseol';
|
|
12
|
-
export const APP_VERSION = '5.0.3-dev.
|
|
12
|
+
export const APP_VERSION = '5.0.3-dev.19';
|
|
13
13
|
export const DASHBOARD_URL = 'https://52.78.246.50.nip.io';
|
|
14
14
|
export const ONCE_URL = 'https://52.78.246.50.nip.io:5090';
|
|
15
15
|
export const FREE_URL = 'https://52.78.246.50.nip.io:6090';
|