@stn-uiux/pub-ui 0.1.86 → 0.1.88

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 (44) hide show
  1. package/dist/chunk-6RJFVO4M.js +9 -0
  2. package/dist/chunk-6RJFVO4M.js.map +1 -0
  3. package/dist/chunk-7OZGRHFD.js +15 -0
  4. package/dist/chunk-7OZGRHFD.js.map +1 -0
  5. package/dist/chunk-I2Y7E4TU.js +15 -0
  6. package/dist/chunk-I2Y7E4TU.js.map +1 -0
  7. package/dist/chunk-PXTPAYC3.js +1 -0
  8. package/dist/{chunk-2VSSPMZ3.js → chunk-R7HPVMSM.js} +3 -1
  9. package/dist/{chunk-2VSSPMZ3.js.map → chunk-R7HPVMSM.js.map} +1 -1
  10. package/dist/cli.js +5 -5
  11. package/dist/data/index.d.ts +3 -1
  12. package/dist/data/index.js +58 -44
  13. package/dist/data/stnCard.d.ts +3 -1
  14. package/dist/data/stnCard.js +3 -1
  15. package/dist/data/stnList.d.ts +19 -0
  16. package/dist/data/stnList.js +9 -0
  17. package/dist/data/stnList.js.map +1 -0
  18. package/dist/data/stnMenu.d.ts +22 -0
  19. package/dist/data/stnMenu.js +9 -0
  20. package/dist/data/stnMenu.js.map +1 -0
  21. package/dist/data/stnPackageVersion.d.ts +2 -2
  22. package/dist/data/stnPackageVersion.js +1 -1
  23. package/dist/index.d.ts +3 -1
  24. package/dist/index.js +58 -44
  25. package/package.json +1 -1
  26. package/styles/components/stn-badge.css +0 -14
  27. package/styles/components/stn-card.css +8 -0
  28. package/styles/components/stn-drawer.css +7 -1
  29. package/styles/components/stn-list.css +430 -0
  30. package/styles/components/stn-menu.css +467 -0
  31. package/styles/components/stn-popover.css +9 -0
  32. package/styles/components/stn-table.css +0 -1
  33. package/styles/components/stn-topology.css +130 -56
  34. package/styles/layouts/stn-container.css +49 -5
  35. package/styles/layouts/stn-layer1-content.css +4 -1
  36. package/styles/patterns/stn-floating-toolbar.css +39 -0
  37. package/styles/style-pub.css +2 -0
  38. package/styles/tokens/stn-colors-semantic.css +31 -5
  39. package/styles/tokens/stn-size-semantic.css +22 -10
  40. package/styles/tokens/stn-size.css +1 -0
  41. package/dist/chunk-2PIUQUBN.js +0 -9
  42. package/dist/chunk-2PIUQUBN.js.map +0 -1
  43. package/dist/chunk-ERZPIKPF.js +0 -1
  44. /package/dist/{chunk-ERZPIKPF.js.map → chunk-PXTPAYC3.js.map} +0 -0
@@ -6,34 +6,65 @@
6
6
  */
7
7
 
8
8
  /* ==========================================================================
9
- Topology Tokens (현재 노드 하이라이트 링 & 시작/종료 노드 뱃지 토큰)
10
- - STN 4대 표준 규격: 원시 Hex/RGB 절대 금지, 순수 --stn-* 시멘틱 토큰으로만 구성
11
- - 다크 모드(기본): 흰색 반투명 테두리 링, 흰색 뱃지 배경, 검은색 뱃지 텍스트
12
- - 라이트 모드: Gray 반투명 테두리 링, 검은색 뱃지 배경, 흰색 뱃지 텍스트
9
+ Topology Labels & Tooltips (STN 시멘틱 토큰 기반 회선/노드 라벨 표준 규격)
13
10
  ========================================================================== */
14
- :root,
15
- [data-mode='dark'],
16
- [data-theme='dark'] {
17
- --stn-topology-node-current-bg: color-mix(in srgb, var(--stn-static-white) 22%, transparent);
18
- --stn-topology-node-current-ring: color-mix(in srgb, var(--stn-static-white) 40%, transparent);
19
- --stn-topology-node-current-ambient: color-mix(in srgb, var(--stn-static-white) 15%, transparent);
20
- --stn-topology-node-current-glow: color-mix(in srgb, var(--stn-static-white) 20%, transparent);
21
- --stn-topology-node-point: var(--stn-primary);
22
- --stn-topology-badge-bg: var(--stn-static-white);
23
- --stn-topology-badge-text: var(--stn-gray-900);
24
- --stn-topology-badge-border: color-mix(in srgb, var(--stn-gray-900) 20%, transparent);
25
- }
26
-
27
- [data-mode='light'],
28
- [data-theme='light'] {
29
- --stn-topology-node-current-bg: color-mix(in srgb, var(--stn-gray-900) 15%, transparent);
30
- --stn-topology-node-current-ring: color-mix(in srgb, var(--stn-gray-900) 30%, transparent);
31
- --stn-topology-node-current-ambient: color-mix(in srgb, var(--stn-gray-900) 12%, transparent);
32
- --stn-topology-node-current-glow: color-mix(in srgb, var(--stn-gray-700) 15%, transparent);
33
- --stn-topology-node-point: var(--stn-primary);
34
- --stn-topology-badge-bg: var(--stn-gray-900);
35
- --stn-topology-badge-text: var(--stn-static-white);
36
- --stn-topology-badge-border: color-mix(in srgb, var(--stn-static-white) 20%, transparent);
11
+ .stn-topology-link__label {
12
+ pointer-events: none;
13
+ user-select: none;
14
+ transition: opacity 0.18s cubic-bezier(0.2, 0, 0, 1);
15
+ }
16
+
17
+ .stn-topology-link__label text {
18
+ fill: var(--stn-topology-link-label-fg, var(--stn-text-secondary));
19
+ stroke: var(--stn-topology-link-label-halo, var(--stn-elevation-surface-0));
20
+ stroke-width: 1.2px;
21
+ paint-order: stroke;
22
+ stroke-linejoin: round;
23
+ font-weight: 600;
24
+ letter-spacing: -0.2px;
25
+ }
26
+
27
+ /* ── 회선 라벨 인터랙션 모드 (hover: 평소 숨김 / 링크 호버 시 일제히 표시, always, none) ── */
28
+ .stn-topology-links-group--label-hover .stn-topology-link__label {
29
+ opacity: 0;
30
+ transition: opacity 0.18s cubic-bezier(0.2, 0, 0, 1);
31
+ pointer-events: none;
32
+ }
33
+
34
+ .stn-topology-links-group--label-hover.is-link-hovered .stn-topology-link__label {
35
+ opacity: 1;
36
+ }
37
+
38
+ .stn-topology-links-group--label-none .stn-topology-link__label {
39
+ display: none;
40
+ }
41
+
42
+ .stn-topology-links-group--label-always .stn-topology-link__label {
43
+ opacity: 1;
44
+ }
45
+
46
+ .stn-topology-link.is-hovered line:not([stroke="transparent"]),
47
+ .stn-topology-link:hover line:not([stroke="transparent"]) {
48
+ opacity: 1;
49
+ }
50
+
51
+ .stn-topology-node__bottom-label--plain text {
52
+ fill: var(--stn-topology-node-label-fg, var(--stn-text-primary));
53
+ stroke: var(--stn-topology-node-label-halo, var(--stn-elevation-surface-0));
54
+ stroke-width: 2.4px;
55
+ paint-order: stroke;
56
+ stroke-linejoin: round;
57
+ font-weight: 700;
58
+ letter-spacing: -0.2px;
59
+ user-select: none;
60
+ pointer-events: none;
61
+ }
62
+
63
+ .stn-topology-node__label-badge.neutral.subtle {
64
+ background-color: var(--stn-elevation-surface-0);
65
+ border: none;
66
+ color: var(--stn-text-primary);
67
+ font-weight: var(--stn-font-weight-regular, 400);
37
68
  }
38
69
 
39
70
  .stn-topology-ring,
@@ -172,25 +203,15 @@
172
203
  /* ==========================================================================
173
204
  Current Node Highlight (현재 선택 노드 — 다크: 흰색 반투명, 라이트: gray 반투명)
174
205
  ========================================================================== */
175
- :root {
176
- --stn-topology-node-current-ring: color-mix(in srgb, var(--stn-neutral-90, #1f242f) 28%, transparent);
177
- --stn-topology-node-current-glow: color-mix(in srgb, var(--stn-neutral-90, #1f242f) 12%, transparent);
178
- }
179
-
180
- [data-theme="dark"],
181
- .theme-dark {
182
- --stn-topology-node-current-ring: color-mix(in srgb, var(--stn-static-white, #ffffff) 45%, transparent);
183
- --stn-topology-node-current-glow: color-mix(in srgb, var(--stn-static-white, #ffffff) 20%, transparent);
184
- }
185
206
 
186
207
  /* 2D 마크용 현재 노드 스타일 */
187
208
  :is(.stn-topology-node-mark.is-current, .stn-topology-node-mark.current) .stn-topology-node__circle {
188
209
  outline: none;
189
210
  box-shadow:
190
- 0 0 0 3px var(--stn-topology-node-selected-gap, var(--stn-elevation-surface-0)),
191
- 0 0 0 5.5px var(--stn-topology-node-current-ring),
192
- 0 0 16px var(--stn-topology-node-current-glow);
193
- transform: scale(1.06);
211
+ 0 0 0 2px var(--stn-topology-node-selected-gap, var(--stn-elevation-surface-0)),
212
+ 0 0 0 3.5px var(--stn-topology-node-current-ring),
213
+ 0 0 10px var(--stn-topology-node-current-glow);
214
+ transform: scale(1.04);
194
215
  }
195
216
 
196
217
  :is(.stn-topology-node-mark.shape-diamond.is-current, .stn-topology-node-mark.shape-diamond.current) .stn-topology-node__circle {
@@ -208,28 +229,50 @@
208
229
  }
209
230
 
210
231
  /* ==========================================================================
211
- Topology Start/End Node Badge Tokens (시작 & 종료 노드 뱃지 — 다크: 흰색, 라이트: 검은색)
232
+ Topology Start/End Node Badge Tokens (시작 & 종료 노드 뱃지 — Primary Blue SSOT)
212
233
  ========================================================================== */
213
- :root {
214
- --stn-topology-badge-bg: var(--stn-neutral-90, #1f242f);
215
- --stn-topology-badge-text: var(--stn-static-white, #ffffff);
216
- --stn-topology-badge-border: var(--stn-elevation-surface-0);
217
- }
218
-
219
- [data-theme="dark"],
220
- .theme-dark {
221
- --stn-topology-badge-bg: var(--stn-static-white, #ffffff);
222
- --stn-topology-badge-text: var(--stn-neutral-90, #1f242f);
223
- --stn-topology-badge-border: var(--stn-elevation-surface-0);
224
- }
225
-
226
234
  .stn-topology-node__badge rect {
235
+ fill: var(--stn-topology-badge-bg, var(--stn-primary));
227
236
  transition: fill 0.2s ease, stroke 0.2s ease;
228
237
  }
229
238
  .stn-topology-node__badge text {
239
+ fill: var(--stn-topology-badge-text, var(--stn-static-white));
230
240
  transition: fill 0.2s ease;
231
241
  }
232
242
 
243
+ /* SVG foreignObject Badge Wrapper */
244
+ .stn-topology-node__badge-fo {
245
+ overflow: visible;
246
+ pointer-events: none;
247
+ }
248
+
249
+ .stn-topology-node__badge-fo-inner {
250
+ display: flex;
251
+ justify-content: center;
252
+ align-items: center;
253
+ width: 100%;
254
+ height: 100%;
255
+ pointer-events: none;
256
+ }
257
+
258
+ .stn-topology-node__badge-fo-scale {
259
+ display: inline-flex;
260
+ transform-origin: center center;
261
+ user-select: none;
262
+ }
263
+
264
+ /* STN 토폴로지 노드 벡터 외곽선 stroke-width 표준 시멘틱 토큰 강제 규격 */
265
+ .stn-topology-node > g > rect,
266
+ .stn-topology-node > g > circle:not([class*='stn-topology-pulse-ring']),
267
+ .stn-topology-node > g > polygon,
268
+ .stn-topology-node > g > path,
269
+ .stn-topology-node > circle:not([class*='stn-topology-pulse-ring']),
270
+ .stn-topology-node > rect,
271
+ .stn-topology-node > polygon,
272
+ .stn-topology-node > path {
273
+ stroke-width: var(--stn-topology-node-stroke, 1.2px);
274
+ }
275
+
233
276
  /* Severity / Status Themes on Circle (통일된 단일 룰) */
234
277
  .stn-topology-node-mark.normal .stn-topology-node__circle {
235
278
  background: var(--stn-opacity-white-5);
@@ -378,10 +421,17 @@
378
421
  white-space: nowrap;
379
422
  }
380
423
 
381
- /* SVG foreignObject container — 브라우저 기본 overflow:hidden 클리핑 방지 */
424
+ /* SVG foreignObject container — 브라우저 기본 overflow:hidden 클리핑 방지 및 플렉스 센터 정렬 */
382
425
  .stn-topology-node-fo {
383
426
  overflow: visible;
384
427
  }
428
+ .stn-topology-node-fo > div {
429
+ width: 100%;
430
+ height: 100%;
431
+ display: flex;
432
+ align-items: center;
433
+ justify-content: center;
434
+ }
385
435
 
386
436
  /* ==========================================================================
387
437
  Topology Graph 3D Spatial Engine & Interactive Controls
@@ -479,4 +529,28 @@
479
529
  animation: stnTopologyPulseRing 2s infinite ease-out 0.8s;
480
530
  }
481
531
 
532
+ /* Node Tooltip in SVG Overlay */
533
+ .stn-topology-node-tooltip {
534
+ transition: opacity 0.15s ease;
535
+ pointer-events: none;
536
+ user-select: none;
537
+ }
538
+
539
+ .stn-topology-node-tooltip__box {
540
+ filter: drop-shadow(0px 1px 2px var(--stn-opacity-black-25));
541
+ }
542
+
543
+ .stn-topology-node-tooltip text {
544
+ user-select: none;
545
+ pointer-events: none;
546
+ font-family: inherit;
547
+ }
548
+
549
+ /* Topology Stage Canvas — 풀사이즈 캔버스 및 반응형 최소 높이(600px) 보장 */
550
+ .stn-topology-stage-canvas {
551
+ width: 100%;
552
+ height: 100%;
553
+ min-height: 600px;
554
+ }
555
+
482
556
 
@@ -42,11 +42,55 @@
42
42
  }
43
43
  }
44
44
 
45
- /* 컨테이너 자신의 좌우 패딩만 끈다.
46
- !important를 쓰지 않아, .stn-layer-1__body > .stn-container 의 16px은 그대로 남는다. */
47
- .stn-container--disable-gutters {
48
- padding-left: var(--stn-container-gutter-none);
49
- padding-right: var(--stn-container-gutter-none);
45
+ /* ==========================================================================
46
+ Padding 0 Modifiers (상·하·좌·우 개별 및 전체 패딩 0 제거 유틸리티)
47
+ - !important 없이 CSS 변수 및 특정성 체이닝으로 부모 레이어 여백도 자연스럽게 무력화
48
+ ========================================================================== */
49
+ .stn-container--disable-gutters,
50
+ .stn-container.stn-container--disable-gutters,
51
+ .stn-layer-1__body > .stn-container.stn-container--disable-gutters {
52
+ --stn-container-padding-left: var(--stn-container-gutter-none, 0px);
53
+ --stn-container-padding-right: var(--stn-container-gutter-none, 0px);
54
+ padding-left: var(--stn-container-gutter-none, 0px);
55
+ padding-right: var(--stn-container-gutter-none, 0px);
56
+ }
57
+
58
+ .stn-container--disable-padding-top,
59
+ .stn-container.stn-container--disable-padding-top,
60
+ .stn-layer-1__body > .stn-container.stn-container--disable-padding-top {
61
+ --stn-container-padding-top: var(--stn-space-0, 0px);
62
+ padding-top: var(--stn-space-0, 0px);
63
+ }
64
+
65
+ .stn-container--disable-padding-bottom,
66
+ .stn-container.stn-container--disable-padding-bottom,
67
+ .stn-layer-1__body > .stn-container.stn-container--disable-padding-bottom {
68
+ --stn-container-padding-bottom: var(--stn-space-0, 0px);
69
+ padding-bottom: var(--stn-space-0, 0px);
70
+ }
71
+
72
+ .stn-container--disable-padding-left,
73
+ .stn-container.stn-container--disable-padding-left,
74
+ .stn-layer-1__body > .stn-container.stn-container--disable-padding-left {
75
+ --stn-container-padding-left: var(--stn-container-gutter-none, 0px);
76
+ padding-left: var(--stn-container-gutter-none, 0px);
77
+ }
78
+
79
+ .stn-container--disable-padding-right,
80
+ .stn-container.stn-container--disable-padding-right,
81
+ .stn-layer-1__body > .stn-container.stn-container--disable-padding-right {
82
+ --stn-container-padding-right: var(--stn-container-gutter-none, 0px);
83
+ padding-right: var(--stn-container-gutter-none, 0px);
84
+ }
85
+
86
+ .stn-container--disable-padding,
87
+ .stn-container.stn-container--disable-padding,
88
+ .stn-layer-1__body > .stn-container.stn-container--disable-padding {
89
+ --stn-container-padding-top: var(--stn-space-0, 0px);
90
+ --stn-container-padding-bottom: var(--stn-space-0, 0px);
91
+ --stn-container-padding-left: var(--stn-space-0, 0px);
92
+ --stn-container-padding-right: var(--stn-space-0, 0px);
93
+ padding: var(--stn-space-0, 0px);
50
94
  }
51
95
 
52
96
  /* Fluid max-width. width 100%라서 캡에 닿기 전까지 화면과 같이 늘어난다.
@@ -177,7 +177,10 @@
177
177
  display: flex;
178
178
  flex-direction: column;
179
179
  box-sizing: border-box;
180
- padding: var(--stn-space-16);
180
+ padding-top: var(--stn-container-padding-top, var(--stn-space-16));
181
+ padding-bottom: var(--stn-container-padding-bottom, var(--stn-space-16));
182
+ padding-left: var(--stn-container-padding-left, var(--stn-space-16));
183
+ padding-right: var(--stn-container-padding-right, var(--stn-space-16));
181
184
  overflow: hidden;
182
185
  }
183
186
 
@@ -80,6 +80,45 @@
80
80
  flex-direction: column;
81
81
  }
82
82
 
83
+ /* 자식 요소 정렬 (Align Items) */
84
+ .stn-floating-toolbar--align-stretch {
85
+ align-items: stretch;
86
+ }
87
+ .stn-floating-toolbar--align-start {
88
+ align-items: flex-start;
89
+ }
90
+ .stn-floating-toolbar--align-end {
91
+ align-items: flex-end;
92
+ }
93
+ .stn-floating-toolbar--align-center {
94
+ align-items: center;
95
+ }
96
+
97
+ /* 간격 스케일 (Gap) */
98
+ .stn-floating-toolbar--gap-xs {
99
+ gap: var(--stn-space-2);
100
+ }
101
+ .stn-floating-toolbar--gap-sm {
102
+ gap: var(--stn-space-4);
103
+ }
104
+ .stn-floating-toolbar--gap-md {
105
+ gap: var(--stn-space-6);
106
+ }
107
+ .stn-floating-toolbar--gap-lg {
108
+ gap: var(--stn-space-8);
109
+ }
110
+
111
+ /* 너비 프리셋 (.w80 ~ .w200, .full) — STN 3대 Width 규격 */
112
+ .stn-floating-toolbar.w80 { width: var(--stn-size-80, 80px); }
113
+ .stn-floating-toolbar.w100 { width: var(--stn-size-100, 100px); }
114
+ .stn-floating-toolbar.w120 { width: var(--stn-size-120, 120px); }
115
+ .stn-floating-toolbar.w140 { width: var(--stn-size-140, 140px); }
116
+ .stn-floating-toolbar.w160 { width: var(--stn-size-160, 160px); }
117
+ .stn-floating-toolbar.w180 { width: var(--stn-size-180, 180px); }
118
+ .stn-floating-toolbar.w200 { width: var(--stn-size-200, 200px); }
119
+ .stn-floating-toolbar.full,
120
+ .stn-floating-toolbar--full { width: 100%; }
121
+
83
122
  /* 툴바 구분선 */
84
123
  .stn-floating-toolbar__divider {
85
124
  width: 1px;
@@ -48,6 +48,8 @@
48
48
  @import './components/stn-popup.css';
49
49
  @import './components/stn-drawer.css';
50
50
  @import './components/stn-table.css';
51
+ @import './components/stn-list.css';
52
+ @import './components/stn-menu.css';
51
53
  @import './components/stn-pagination.css';
52
54
  @import './components/stn-slider.css';
53
55
  @import './components/stn-progress-bar.css';
@@ -32,7 +32,7 @@
32
32
  --stn-warning: var(--stn-teal-400);
33
33
  --stn-feedback-success: var(--stn-green-400);
34
34
  --stn-feedback-info: var(--stn-blue-400);
35
- --stn-feedback-warning: var(--stn-yellow-300);
35
+ --stn-feedback-warning: var(--stn-yellow-400);
36
36
  --stn-feedback-error: var(--stn-red-400);
37
37
  --stn-feedback-discovery: var(--stn-purple-400);
38
38
  --stn-text-primary: var(--stn-gray-100);
@@ -53,6 +53,7 @@
53
53
  --stn-elevation-surface-2: var(--stn-gray-800);
54
54
  --stn-elevation-surface-widget: var(--stn-gray-850);
55
55
  --stn-drawer-bg: var(--stn-gray-850);
56
+ --stn-drawer-bg-subtle: var(--stn-gray-900);
56
57
  --stn-dim-bg: color-mix(in srgb, var(--stn-gray-950) 50%, transparent);
57
58
  --stn-dim-blur: 4px;
58
59
  --stn-input-bg: var(--stn-gray-900);
@@ -497,12 +498,24 @@
497
498
  --stn-topology-orbit-start: var(--stn-blue-300);
498
499
  --stn-topology-orbit-mid: var(--stn-blue-400);
499
500
  --stn-topology-orbit-end: var(--stn-purple-300);
500
- --stn-topology-link-line: var(--stn-opacity-white-45);
501
+ --stn-topology-link-line: var(--stn-opacity-white-80);
502
+ --stn-topology-node-normal: var(--stn-gray-250);
501
503
  --stn-topology-node-selected-border: var(--stn-blue-300);
502
504
  --stn-topology-node-selected-gap: var(--stn-gray-950);
503
505
  --stn-topology-node-selected-glow: color-mix(in srgb, var(--stn-blue-300) 50%, transparent);
504
506
  --stn-topology-minimap-bg: color-mix(in srgb, var(--stn-elevation-surface-widget) 75%, transparent);
505
507
  --stn-topology-mode-shadow: 0 4px 16px color-mix(in srgb, var(--stn-static-black) 40%, transparent);
508
+ --stn-topology-node-current-bg: color-mix(in srgb, var(--stn-static-white) 22%, transparent);
509
+ --stn-topology-node-current-ring: color-mix(in srgb, var(--stn-static-white) 40%, transparent);
510
+ --stn-topology-node-current-ambient: color-mix(in srgb, var(--stn-static-white) 15%, transparent);
511
+ --stn-topology-node-current-glow: color-mix(in srgb, var(--stn-static-white) 20%, transparent);
512
+ --stn-topology-node-point: var(--stn-primary);
513
+ --stn-topology-badge-bg: var(--stn-primary);
514
+ --stn-topology-badge-text: var(--stn-static-white);
515
+ --stn-topology-link-label-fg: var(--stn-text-secondary);
516
+ --stn-topology-link-label-halo: var(--stn-elevation-surface-0);
517
+ --stn-topology-node-label-fg: var(--stn-text-primary);
518
+ --stn-topology-node-label-halo: var(--stn-elevation-surface-0);
506
519
  --stn-widget-critical-accent: var(--stn-red-550);
507
520
  --stn-widget-critical-bg: color-mix(in srgb, var(--stn-red-550) 6%, transparent);
508
521
  --stn-widget-critical-glow: 0 0 16px 0 color-mix(in srgb, var(--stn-red-550) 32%, transparent) inset, 0 0 32px 0 color-mix(in srgb, var(--stn-red-550) 16%, transparent) inset;
@@ -765,7 +778,7 @@
765
778
  --stn-grade-minor-count: var(--stn-yellow-500);
766
779
  --stn-grade-warning: var(--stn-teal-500);
767
780
  --stn-grade-normal: var(--stn-green-500);
768
- --stn-grade-neutral: var(--stn-gray-400);
781
+ --stn-grade-neutral: var(--stn-gray-450);
769
782
  --stn-icon-fg: var(--stn-gray-600);
770
783
  --stn-icon-fg-muted: var(--stn-gray-400);
771
784
  --stn-elevation-surface-0: var(--stn-gray-25);
@@ -773,6 +786,7 @@
773
786
  --stn-elevation-surface-2: var(--stn-static-white);
774
787
  --stn-elevation-surface-widget: var(--stn-static-white);
775
788
  --stn-drawer-bg: var(--stn-static-white);
789
+ --stn-drawer-bg-subtle: var(--stn-gray-50);
776
790
  --stn-dim-bg: color-mix(in srgb, var(--stn-gray-900) 20%, transparent);
777
791
  --stn-dim-blur: 2px;
778
792
  --stn-input-bg: var(--stn-static-white);
@@ -865,7 +879,7 @@
865
879
  --stn-table-pill-bg: var(--stn-static-white);
866
880
  --stn-table-pill-fg: var(--stn-gray-750);
867
881
  --stn-table-pill-shadow: 1px 1px 2px color-mix(in srgb, var(--stn-static-black) 10%, transparent);
868
- --stn-table-row-hover: var(--stn-gray-25);
882
+ --stn-table-row-hover: var(--stn-gray-50);
869
883
  --stn-table-td-fg: var(--stn-gray-750);
870
884
  --stn-table-th-bg: var(--stn-gray-75);
871
885
  --stn-table-th-fg: var(--stn-gray-700);
@@ -1219,12 +1233,24 @@
1219
1233
  --stn-topology-orbit-start: var(--stn-blue-400);
1220
1234
  --stn-topology-orbit-mid: var(--stn-blue-500);
1221
1235
  --stn-topology-orbit-end: var(--stn-purple-400);
1222
- --stn-topology-link-line: var(--stn-opacity-black-25);
1236
+ --stn-topology-link-line: var(--stn-opacity-black-45);
1237
+ --stn-topology-node-normal: var(--stn-gray-600);
1223
1238
  --stn-topology-node-selected-border: var(--stn-blue-400);
1224
1239
  --stn-topology-node-selected-gap: var(--stn-static-white);
1225
1240
  --stn-topology-node-selected-glow: color-mix(in srgb, var(--stn-blue-400) 40%, transparent);
1226
1241
  --stn-topology-minimap-bg: color-mix(in srgb, var(--stn-elevation-surface-widget) 75%, transparent);
1227
1242
  --stn-topology-mode-shadow: 0 4px 16px color-mix(in srgb, var(--stn-static-black) 12%, transparent);
1243
+ --stn-topology-node-current-bg: color-mix(in srgb, var(--stn-gray-900) 15%, transparent);
1244
+ --stn-topology-node-current-ring: color-mix(in srgb, var(--stn-gray-900) 30%, transparent);
1245
+ --stn-topology-node-current-ambient: color-mix(in srgb, var(--stn-gray-900) 12%, transparent);
1246
+ --stn-topology-node-current-glow: color-mix(in srgb, var(--stn-gray-700) 15%, transparent);
1247
+ --stn-topology-node-point: var(--stn-primary);
1248
+ --stn-topology-badge-bg: var(--stn-primary);
1249
+ --stn-topology-badge-text: var(--stn-static-white);
1250
+ --stn-topology-link-label-fg: var(--stn-text-secondary);
1251
+ --stn-topology-link-label-halo: var(--stn-elevation-surface-0);
1252
+ --stn-topology-node-label-fg: var(--stn-text-primary);
1253
+ --stn-topology-node-label-halo: var(--stn-elevation-surface-0);
1228
1254
  --stn-widget-critical-accent: var(--stn-red-500);
1229
1255
  --stn-widget-critical-bg: color-mix(in srgb, var(--stn-red-50) 65%, var(--stn-static-white));
1230
1256
  --stn-widget-critical-glow: 0 0 16px 0 color-mix(in srgb, var(--stn-red-400) 22%, transparent) inset, 0 2px 8px 0 color-mix(in srgb, var(--stn-red-400) 12%, transparent);
@@ -34,6 +34,11 @@
34
34
  --stn-text-field-height-lg: var(--stn-size-40);
35
35
  --stn-text-field-height-md: var(--stn-size-32);
36
36
  --stn-text-field-height-sm: var(--stn-size-24);
37
+ --stn-list-item-height-xs: var(--stn-size-24);
38
+ --stn-list-item-height-sm: var(--stn-size-32);
39
+ --stn-list-item-height-md: var(--stn-size-40);
40
+ --stn-list-item-height-lg: var(--stn-size-48);
41
+ --stn-list-item-height-xl: var(--stn-size-56);
37
42
  --stn-card-header-min-height: var(--stn-size-40);
38
43
  --stn-split-view-side-width-sm: var(--stn-size-220);
39
44
  --stn-split-view-side-width-md: var(--stn-size-280);
@@ -43,6 +48,12 @@
43
48
  --stn-dropdown-height-md: var(--stn-size-32);
44
49
  --stn-dropdown-height-lg: var(--stn-size-40);
45
50
  --stn-dropdown-height-xl: var(--stn-size-56);
51
+ --stn-menu-min-width: var(--stn-size-140);
52
+ --stn-menu-item-height-xs: var(--stn-size-24);
53
+ --stn-menu-item-height-sm: var(--stn-size-28);
54
+ --stn-menu-item-height-md: var(--stn-size-32);
55
+ --stn-menu-item-height-lg: var(--stn-size-38);
56
+ --stn-menu-item-height-xl: var(--stn-size-44);
46
57
  --stn-date-range-field-height-sm: var(--stn-size-24);
47
58
  --stn-date-range-field-height-md: var(--stn-size-32);
48
59
  --stn-date-range-field-height-lg: var(--stn-size-40);
@@ -275,18 +286,19 @@
275
286
  --stn-breadcrumb-sep-size-lg: var(--stn-size-14);
276
287
  --stn-event-banner-btn-height: var(--stn-size-28);
277
288
  --stn-event-banner-icon-size: var(--stn-size-24);
278
- --stn-topology-node-size-xs: var(--stn-size-24);
279
- --stn-topology-node-size-sm: var(--stn-size-32);
280
- --stn-topology-node-size-md: var(--stn-size-40);
281
- --stn-topology-node-size-lg: var(--stn-size-48);
282
- --stn-topology-node-size-xl: var(--stn-size-56);
283
- --stn-topology-node-radius-xs: var(--stn-size-12);
284
- --stn-topology-node-radius-sm: var(--stn-size-16);
285
- --stn-topology-node-radius-md: var(--stn-size-20);
286
- --stn-topology-node-radius-lg: var(--stn-size-24);
287
- --stn-topology-node-radius-xl: var(--stn-size-28);
289
+ --stn-topology-node-size-xs: var(--stn-size-12);
290
+ --stn-topology-node-size-sm: var(--stn-size-16);
291
+ --stn-topology-node-size-md: var(--stn-size-20);
292
+ --stn-topology-node-size-lg: var(--stn-size-24);
293
+ --stn-topology-node-size-xl: var(--stn-size-28);
294
+ --stn-topology-node-radius-xs: var(--stn-size-6);
295
+ --stn-topology-node-radius-sm: var(--stn-size-8);
296
+ --stn-topology-node-radius-md: var(--stn-size-10);
297
+ --stn-topology-node-radius-lg: var(--stn-size-12);
298
+ --stn-topology-node-radius-xl: var(--stn-size-14);
288
299
  --stn-topology-container-min-height: var(--stn-size-260);
289
300
  --stn-topology-node-border-width: var(--stn-size-1);
301
+ --stn-topology-node-stroke: 1.2px;
290
302
  --stn-topology-minimap-border-width: var(--stn-size-1);
291
303
  --stn-topology-minimap-width: var(--stn-size-140);
292
304
  --stn-topology-minimap-content-height: var(--stn-size-96);
@@ -25,6 +25,7 @@
25
25
  --stn-size-28: 28px;
26
26
  --stn-size-32: 32px;
27
27
  --stn-size-36: 36px;
28
+ --stn-size-38: 38px;
28
29
  --stn-size-40: 40px;
29
30
  --stn-size-42: 42px;
30
31
  --stn-size-44: 44px;
@@ -1,9 +0,0 @@
1
- // src/data/stnPackageVersion.ts
2
- var STN_UI_VERSION = "0.1.86";
3
- var STN_UI_VERSION_LABEL = "v0.1.86";
4
-
5
- export {
6
- STN_UI_VERSION,
7
- STN_UI_VERSION_LABEL
8
- };
9
- //# sourceMappingURL=chunk-2PIUQUBN.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/data/stnPackageVersion.ts"],"sourcesContent":["/** Package version constants */\nexport const STN_UI_VERSION = '0.1.86'\nexport const STN_UI_VERSION_LABEL = 'v0.1.86'\n"],"mappings":";AACO,IAAM,iBAAiB;AACvB,IAAM,uBAAuB;","names":[]}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=chunk-ERZPIKPF.js.map