@stn-uiux/pub-ui 0.1.73 → 0.1.75

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 (49) hide show
  1. package/dist/{chunk-KLIYAEJA.js → chunk-2LRCGTKQ.js} +7 -17
  2. package/dist/chunk-2LRCGTKQ.js.map +1 -0
  3. package/dist/{chunk-WN7FYFIO.js → chunk-AJLP3Y53.js} +3 -1
  4. package/dist/chunk-AJLP3Y53.js.map +1 -0
  5. package/dist/chunk-M4MX76BY.js +9 -0
  6. package/dist/chunk-M4MX76BY.js.map +1 -0
  7. package/dist/{chunk-NB4NJQYE.js → chunk-YJLOIDKY.js} +24 -24
  8. package/dist/chunk-YJLOIDKY.js.map +1 -0
  9. package/dist/cli.js +1 -1
  10. package/dist/data/index.d.ts +1 -1
  11. package/dist/data/index.js +6 -4
  12. package/dist/data/stnCard.d.ts +3 -1
  13. package/dist/data/stnCard.js +3 -1
  14. package/dist/data/stnChip.d.ts +2 -3
  15. package/dist/data/stnChip.js +1 -1
  16. package/dist/data/stnPackageVersion.d.ts +2 -2
  17. package/dist/data/stnPackageVersion.js +1 -1
  18. package/dist/data/stnTextField.d.ts +2 -2
  19. package/dist/data/stnTextField.js +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.js +6 -4
  22. package/package.json +1 -1
  23. package/styles/components/stn-breadcrumb.css +37 -34
  24. package/styles/components/stn-card.css +24 -3
  25. package/styles/components/stn-date-picker.css +1 -1
  26. package/styles/components/stn-drawer.css +182 -0
  27. package/styles/components/stn-event-banner.css +18 -18
  28. package/styles/components/stn-pagination.css +9 -8
  29. package/styles/components/stn-progress-bar.css +5 -5
  30. package/styles/components/stn-side-nav.css +55 -31
  31. package/styles/components/stn-status.css +22 -22
  32. package/styles/components/stn-table.css +42 -0
  33. package/styles/components/stn-tabs.css +3 -3
  34. package/styles/components/stn-tooltip.css +1 -1
  35. package/styles/components/stn-widget.css +3 -3
  36. package/styles/patterns/stn-alert-center.css +6 -6
  37. package/styles/patterns/stn-header.css +7 -7
  38. package/styles/style-pub.css +1 -0
  39. package/styles/tokens/stn-breakpoint.css +0 -12
  40. package/styles/tokens/stn-colors-semantic.css +15 -13
  41. package/styles/tokens/stn-elevation.css +5 -1
  42. package/styles/tokens/stn-radius-semantic.css +1 -1
  43. package/styles/tokens/stn-size-semantic.css +8 -0
  44. package/styles/tokens/stn-spacing-semantic.css +25 -0
  45. package/dist/chunk-KLIYAEJA.js.map +0 -1
  46. package/dist/chunk-NB4NJQYE.js.map +0 -1
  47. package/dist/chunk-Q363EBGR.js +0 -9
  48. package/dist/chunk-Q363EBGR.js.map +0 -1
  49. package/dist/chunk-WN7FYFIO.js.map +0 -1
@@ -4,22 +4,12 @@ import {
4
4
 
5
5
  // src/data/stnChip.ts
6
6
  var STN_CHIP_BORDER_ACCENTS = [
7
- { accent: "mint", descKo: "\uBBFC\uD2B8", cssBorder: "var(--stn-teal-300)", cssText: "var(--stn-teal-300)" },
8
- { accent: "sky", descKo: "\uC2A4\uCE74\uC774", cssBorder: "var(--stn-blue-300)", cssText: "var(--stn-blue-300)" },
9
- { accent: "violet", descKo: "\uBC14\uC774\uC62C\uB81B", cssBorder: "var(--stn-purple-300)", cssText: "var(--stn-purple-300)" },
10
- {
11
- accent: "orange",
12
- descKo: "\uC624\uB80C\uC9C0",
13
- cssBorder: "var(--stn-yellow-300)",
14
- cssText: "var(--stn-yellow-300)"
15
- },
16
- {
17
- accent: "yellow",
18
- descKo: "\uC610\uB85C",
19
- cssBorder: "var(--stn-yellow-300)",
20
- cssText: "var(--stn-yellow-300)"
21
- },
22
- { accent: "gray", descKo: "\uADF8\uB808\uC774", cssBorder: "var(--stn-gray-350)", cssText: "var(--stn-gray-350)" }
7
+ { accent: "mint", descKo: "\uBBFC\uD2B8", className: "stn-chip--accent-mint" },
8
+ { accent: "sky", descKo: "\uC2A4\uCE74\uC774", className: "stn-chip--accent-sky" },
9
+ { accent: "violet", descKo: "\uBC14\uC774\uC62C\uB81B", className: "stn-chip--accent-violet" },
10
+ { accent: "orange", descKo: "\uC624\uB80C\uC9C0", className: "stn-chip--accent-orange" },
11
+ { accent: "yellow", descKo: "\uC610\uB85C", className: "stn-chip--accent-yellow" },
12
+ { accent: "gray", descKo: "\uADF8\uB808\uC774", className: "stn-chip--accent-gray" }
23
13
  ];
24
14
  var STN_CHIP_GRADE_LEGACY_CLASS = {
25
15
  critical: "critic",
@@ -76,4 +66,4 @@ export {
76
66
  STN_CHIP_USAGE_ROWS,
77
67
  STN_CHIP_GRADE_ROWS
78
68
  };
79
- //# sourceMappingURL=chunk-KLIYAEJA.js.map
69
+ //# sourceMappingURL=chunk-2LRCGTKQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/data/stnChip.ts"],"sourcesContent":["import { STN_GRADE_SOURCE, type StnGradeKind } from './stnGradeColors'\n\nexport { STN_GRADE_SOURCE }\n\n/** 등급 칩 — 알림센터 `.tag` · equip-search `.tag` · `error_tag` 와 동일 토큰 */\nexport type StnChipGrade = StnGradeKind\n\n/** 테두리 액센트 칩 스케일 */\nexport type StnChipBorderAccent = 'mint' | 'sky' | 'violet' | 'orange' | 'yellow' | 'gray'\n\nexport const STN_CHIP_BORDER_ACCENTS: readonly {\n accent: StnChipBorderAccent\n descKo: string\n className: string\n}[] = [\n { accent: 'mint', descKo: '민트', className: 'stn-chip--accent-mint' },\n { accent: 'sky', descKo: '스카이', className: 'stn-chip--accent-sky' },\n { accent: 'violet', descKo: '바이올렛', className: 'stn-chip--accent-violet' },\n { accent: 'orange', descKo: '오렌지', className: 'stn-chip--accent-orange' },\n { accent: 'yellow', descKo: '옐로', className: 'stn-chip--accent-yellow' },\n { accent: 'gray', descKo: '그레이', className: 'stn-chip--accent-gray' },\n] as const\n\n/** Pub HTML 레거시 modifier (`critic` = critical) */\nexport type StnChipLegacyGradeClass = 'critic' | 'major' | 'minor' | 'warning'\n\nexport const STN_CHIP_GRADE_LEGACY_CLASS: Record<StnChipGrade, StnChipLegacyGradeClass> = {\n critical: 'critic',\n major: 'major',\n minor: 'minor',\n warning: 'warning',\n}\n\nexport const STN_CHIP_INTRO =\n '짧은 상태·등급·속성 라벨용 뱃지입니다. `variant=\"filled\"`는 등급 배경색(알림센터 `.tag`), `variant=\"border\"`는 테이블 `border_chip`처럼 테두리만 있는 뱃지입니다. filled·border 모두 `--stn-badge-*` 토큰(11px·16px 높이·4px radius)으로 맞춥니다. 가로 너비는 글자 길이에 따라 늘어나며 `sideLabel`로 옆 설명을 붙일 수 있습니다.'\n\n/** Badge shell metrics — `stn-badge.css` */\nexport const STN_CHIP_METRICS = [\n { token: '--stn-badge-font-size', value: '11px (gnb alert tag)' },\n { token: '--stn-badge-height', value: '16px' },\n { token: '--stn-badge-radius', value: '4px (--stn-radius-4)' },\n { token: '--stn-badge-padding-x', value: '6px (세로 0 — grid 중앙 정렬)' },\n { token: '--stn-badge-line-height', value: '16px (= height)' },\n] as const\n\nexport type StnChipUsageRow = {\n context: string\n pubMarkup: string\n note?: string\n}\n\nexport const STN_CHIP_USAGE_ROWS: StnChipUsageRow[] = [\n {\n context: 'GNB 알림센터',\n pubMarkup: '<span class=\"stn-badge stn-badge--filled tag critic\">CR</span>',\n note: '`.stn-gnb` 알림 목록 — `tag` 유지 시 레이아웃 호환',\n },\n {\n context: '노드 다이얼로그 · equip-search col1',\n pubMarkup: '<span class=\"stn-badge stn-badge--filled tag major\">MJ</span>',\n note: '`.layer_pop.node_dialog .equip-search-table`',\n },\n {\n context: '검색 필터 · error_tag',\n pubMarkup:\n '<span class=\"stn-badge stn-badge--filled stn-badge--critical error_tag grade-critical tag critic\">CR</span>',\n note: '등급 filled + 레거시 `error_tag`',\n },\n {\n context: '테이블 border chip',\n pubMarkup:\n '<span class=\"border_chip orange stn-badge stn-badge--border\"><span class=\"label\">ETH</span><span class=\"value\">100G</span></span>',\n note: '`.value` = 칩 옆 글자 (`sideLabel`)',\n },\n]\n\nexport const STN_CHIP_GRADE_ROWS = (Object.keys(STN_GRADE_SOURCE) as StnChipGrade[]).map(\n (grade) => ({\n grade,\n label: STN_GRADE_SOURCE[grade].label,\n descKo: STN_GRADE_SOURCE[grade].descKo,\n cssVar: STN_GRADE_SOURCE[grade].pubVar,\n legacyClass: STN_CHIP_GRADE_LEGACY_CLASS[grade],\n canonicalClass: `stn-badge--${grade}`,\n }),\n)\n"],"mappings":";;;;;AAUO,IAAM,0BAIP;AAAA,EACJ,EAAE,QAAQ,QAAQ,QAAQ,gBAAM,WAAW,wBAAwB;AAAA,EACnE,EAAE,QAAQ,OAAO,QAAQ,sBAAO,WAAW,uBAAuB;AAAA,EAClE,EAAE,QAAQ,UAAU,QAAQ,4BAAQ,WAAW,0BAA0B;AAAA,EACzE,EAAE,QAAQ,UAAU,QAAQ,sBAAO,WAAW,0BAA0B;AAAA,EACxE,EAAE,QAAQ,UAAU,QAAQ,gBAAM,WAAW,0BAA0B;AAAA,EACvE,EAAE,QAAQ,QAAQ,QAAQ,sBAAO,WAAW,wBAAwB;AACtE;AAKO,IAAM,8BAA6E;AAAA,EACxF,UAAU;AAAA,EACV,OAAO;AAAA,EACP,OAAO;AAAA,EACP,SAAS;AACX;AAEO,IAAM,iBACX;AAGK,IAAM,mBAAmB;AAAA,EAC9B,EAAE,OAAO,yBAAyB,OAAO,uBAAuB;AAAA,EAChE,EAAE,OAAO,sBAAsB,OAAO,OAAO;AAAA,EAC7C,EAAE,OAAO,sBAAsB,OAAO,uBAAuB;AAAA,EAC7D,EAAE,OAAO,yBAAyB,OAAO,6DAA0B;AAAA,EACnE,EAAE,OAAO,2BAA2B,OAAO,kBAAkB;AAC/D;AAQO,IAAM,sBAAyC;AAAA,EACpD;AAAA,IACE,SAAS;AAAA,IACT,WAAW;AAAA,IACX,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,WAAW;AAAA,IACX,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,WACE;AAAA,IACF,MAAM;AAAA,EACR;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,WACE;AAAA,IACF,MAAM;AAAA,EACR;AACF;AAEO,IAAM,sBAAuB,OAAO,KAAK,gBAAgB,EAAqB;AAAA,EACnF,CAAC,WAAW;AAAA,IACV;AAAA,IACA,OAAO,iBAAiB,KAAK,EAAE;AAAA,IAC/B,QAAQ,iBAAiB,KAAK,EAAE;AAAA,IAChC,QAAQ,iBAAiB,KAAK,EAAE;AAAA,IAChC,aAAa,4BAA4B,KAAK;AAAA,IAC9C,gBAAgB,cAAc,KAAK;AAAA,EACrC;AACF;","names":[]}
@@ -2,12 +2,14 @@
2
2
  var STN_CARD_VARIANTS = ["flat", "outlined", "elevated"];
3
3
  var STN_CARD_RADII = ["sm", "md", "lg", "none"];
4
4
  var STN_CARD_PADDINGS = ["none", "sm", "md", "lg"];
5
+ var STN_CARD_SEVERITIES = ["critical", "major", "minor", "warning"];
5
6
  var STN_CARD_INTRO = "\uCF58\uD150\uCE20\uB97C \uC2DC\uAC01\uC801\uC73C\uB85C \uADF8\uB8F9\uD654\uD558\uACE0 \uACC4\uCE35\uC744 \uBD80\uC5EC\uD558\uB294 \uD45C\uC900 \uC11C\uD53C\uC2A4(Surface) \uCEE8\uD14C\uC774\uB108 \uCEF4\uD3EC\uB10C\uD2B8\uC785\uB2C8\uB2E4. \uD50C\uB7AB, \uC544\uC6C3\uB77C\uC778, \uC5D8\uB9AC\uBCA0\uC774\uD2F0\uB4DC \uBCC0\uD615\uACFC \uB77C\uC6B4\uB4DC \uBC0F \uD328\uB529 \uADDC\uACA9\uC744 \uC81C\uACF5\uD558\uBA70, \uB2E8\uB3C5 \uD2C0\uB85C\uC11C \uD639\uC740 \uD5E4\uB354/\uBCF8\uBB38/\uD478\uD130 \uD569\uC131 \uAD6C\uC870\uB85C \uC720\uC5F0\uD558\uAC8C \uD65C\uC6A9\uB429\uB2C8\uB2E4.";
6
7
 
7
8
  export {
8
9
  STN_CARD_VARIANTS,
9
10
  STN_CARD_RADII,
10
11
  STN_CARD_PADDINGS,
12
+ STN_CARD_SEVERITIES,
11
13
  STN_CARD_INTRO
12
14
  };
13
- //# sourceMappingURL=chunk-WN7FYFIO.js.map
15
+ //# sourceMappingURL=chunk-AJLP3Y53.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/data/stnCard.ts"],"sourcesContent":["export type StnCardVariant = 'flat' | 'outlined' | 'elevated'\nexport type StnCardRadius = 'sm' | 'md' | 'lg' | 'none'\nexport type StnCardPadding = 'none' | 'sm' | 'md' | 'lg'\nexport type StnCardSeverity = 'critical' | 'major' | 'minor' | 'warning'\n\nexport const STN_CARD_VARIANTS: readonly StnCardVariant[] = ['flat', 'outlined', 'elevated'] as const\nexport const STN_CARD_RADII: readonly StnCardRadius[] = ['sm', 'md', 'lg', 'none'] as const\nexport const STN_CARD_PADDINGS: readonly StnCardPadding[] = ['none', 'sm', 'md', 'lg'] as const\nexport const STN_CARD_SEVERITIES: readonly StnCardSeverity[] = ['critical', 'major', 'minor', 'warning'] as const\n\nexport const STN_CARD_INTRO =\n '콘텐츠를 시각적으로 그룹화하고 계층을 부여하는 표준 서피스(Surface) 컨테이너 컴포넌트입니다. 플랫, 아웃라인, 엘리베이티드 변형과 라운드 및 패딩 규격을 제공하며, 단독 틀로서 혹은 헤더/본문/푸터 합성 구조로 유연하게 활용됩니다.'\n"],"mappings":";AAKO,IAAM,oBAA+C,CAAC,QAAQ,YAAY,UAAU;AACpF,IAAM,iBAA2C,CAAC,MAAM,MAAM,MAAM,MAAM;AAC1E,IAAM,oBAA+C,CAAC,QAAQ,MAAM,MAAM,IAAI;AAC9E,IAAM,sBAAkD,CAAC,YAAY,SAAS,SAAS,SAAS;AAEhG,IAAM,iBACX;","names":[]}
@@ -0,0 +1,9 @@
1
+ // src/data/stnPackageVersion.ts
2
+ var STN_UI_VERSION = "0.1.75";
3
+ var STN_UI_VERSION_LABEL = "v0.1.75";
4
+
5
+ export {
6
+ STN_UI_VERSION,
7
+ STN_UI_VERSION_LABEL
8
+ };
9
+ //# sourceMappingURL=chunk-M4MX76BY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/data/stnPackageVersion.ts"],"sourcesContent":["/** Package version constants */\nexport const STN_UI_VERSION = '0.1.75'\nexport const STN_UI_VERSION_LABEL = 'v0.1.75'\n"],"mappings":";AACO,IAAM,iBAAiB;AACvB,IAAM,uBAAuB;","names":[]}
@@ -3,41 +3,41 @@ var STN_TEXT_FIELD_FIGMA = "40000042:186898";
3
3
  var STN_TEXT_FIELD_INTRO = "Infomap \uAC80\uC0C9\xB7\uD544\uD130\uC6A9 **\uD14D\uC2A4\uD2B8 \uC785\uB825**\uC785\uB2C8\uB2E4. **outlined**(\uBC15\uC2A4, \uAE30\uBCF8) \xB7 **filled**(\uBA74) \xB7 **standard**(\uD558\uB2E8 \uB77C\uC778). Light filled = gray-50. Dark filled = gray-750. helperText\uB294 \uD558\uB2E8 \uC67C\uCABD \uCEA1\uC158. React `StnTextField` \xB7 Pub `.stn-text-field`.";
4
4
  var STN_TEXT_FIELD_SIZE_ROWS = [
5
5
  {
6
- size: "S",
7
- height: "24px",
8
- radius: "4px (radius-4)",
9
- fontSize: "13px",
10
- paddingX: "10px",
11
- typicalWidth: "width \uD504\uB9AC\uC14B \xB7 \uAE30\uBCF8 140px \xB7 fullWidth=100%",
6
+ size: "sm",
7
+ height: "24px (var(--stn-size-sm))",
8
+ radius: "var(--stn-radius-sm, 4px)",
9
+ fontSize: "var(--stn-text-body-small-size, 13px)",
10
+ paddingX: "var(--stn-space-2, 8px)",
11
+ typicalWidth: "width \uD504\uB9AC\uC14B (w80~w200) \xB7 fullWidth=100%",
12
12
  pubClass: "stn-text-field sm",
13
13
  usedIn: "\uD14C\uC774\uBE14 \uC140 \xB7 \uC881\uC740 \uAC80\uC0C9"
14
14
  },
15
15
  {
16
- size: "M",
17
- height: "32px",
18
- radius: "4px (radius-4)",
19
- fontSize: "13px",
20
- paddingX: "10px",
21
- typicalWidth: "width \uD504\uB9AC\uC14B \xB7 \uAE30\uBCF8 140px \xB7 fullWidth=100%",
16
+ size: "md",
17
+ height: "32px (var(--stn-size-md))",
18
+ radius: "var(--stn-radius-sm, 4px)",
19
+ fontSize: "var(--stn-text-body-small-size, 13px)",
20
+ paddingX: "var(--stn-space-3, 12px)",
21
+ typicalWidth: "width \uD504\uB9AC\uC14B (w80~w200) \xB7 fullWidth=100%",
22
22
  pubClass: "stn-text-field md",
23
23
  usedIn: "\uAC80\uC0C9\uC601\uC5ED \xB7 \uD544\uD130 \uAC12"
24
24
  },
25
25
  {
26
- size: "L",
27
- height: "40px",
28
- radius: "6px (radius-6)",
29
- fontSize: "14px",
30
- paddingX: "12px",
31
- typicalWidth: "width \uD504\uB9AC\uC14B \xB7 \uAE30\uBCF8 140px \xB7 fullWidth=100%",
26
+ size: "lg",
27
+ height: "40px (var(--stn-size-lg))",
28
+ radius: "var(--stn-radius-md, 6px)",
29
+ fontSize: "var(--stn-text-body-medium-size, 14px)",
30
+ paddingX: "var(--stn-space-4, 16px)",
31
+ typicalWidth: "width \uD504\uB9AC\uC14B (w80~w200) \xB7 fullWidth=100%",
32
32
  pubClass: "stn-text-field lg",
33
33
  usedIn: "\uAC15\uC870 \uAC80\uC0C9 \xB7 \uB113\uC740 \uB77C\uBCA8 \uC5F4"
34
34
  },
35
35
  {
36
- size: "XL",
37
- height: "56px",
38
- radius: "16px (radius-16)",
39
- fontSize: "14px",
40
- paddingX: "16px",
36
+ size: "xl",
37
+ height: "56px (var(--stn-size-xl))",
38
+ radius: "var(--stn-radius-lg, 16px)",
39
+ fontSize: "var(--stn-text-body-medium-size, 14px)",
40
+ paddingX: "var(--stn-space-5, 20px)",
41
41
  typicalWidth: "fullWidth=100%",
42
42
  pubClass: "stn-text-field xl",
43
43
  usedIn: "\uB113\uC740 \uAC80\uC0C9 \xB7 \uAC15\uC870 \uC785\uB825"
@@ -70,4 +70,4 @@ export {
70
70
  STN_TEXT_FIELD_USAGE,
71
71
  STN_TEXT_FIELD_HTML
72
72
  };
73
- //# sourceMappingURL=chunk-NB4NJQYE.js.map
73
+ //# sourceMappingURL=chunk-YJLOIDKY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/data/stnTextField.ts"],"sourcesContent":["/**\n * Pub text input — Infomap `input` (Figma 40000042:186898)\n * @see common.css form inputs · StnTextField\n */\n\n/** sm (24px) · md (32px) · lg (40px) · xl (56px) */\nexport type StnTextFieldSize = 'sm' | 'md' | 'lg' | 'xl'\n\nexport const STN_TEXT_FIELD_FIGMA = '40000042:186898'\n\nexport const STN_TEXT_FIELD_INTRO =\n \"Infomap 검색·필터용 **텍스트 입력**입니다. **outlined**(박스, 기본) · **filled**(면) · **standard**(하단 라인). Light filled = gray-50. Dark filled = gray-750. helperText는 하단 왼쪽 캡션. React `StnTextField` · Pub `.stn-text-field`.\"\n\nexport const STN_TEXT_FIELD_SIZE_ROWS: readonly {\n size: StnTextFieldSize\n height: string\n radius: string\n fontSize: string\n paddingX: string\n typicalWidth: string\n pubClass: string\n usedIn: string\n}[] = [\n {\n size: 'sm',\n height: '24px (var(--stn-size-sm))',\n radius: 'var(--stn-radius-sm, 4px)',\n fontSize: 'var(--stn-text-body-small-size, 13px)',\n paddingX: 'var(--stn-space-2, 8px)',\n typicalWidth: 'width 프리셋 (w80~w200) · fullWidth=100%',\n pubClass: 'stn-text-field sm',\n usedIn: '테이블 셀 · 좁은 검색',\n },\n {\n size: 'md',\n height: '32px (var(--stn-size-md))',\n radius: 'var(--stn-radius-sm, 4px)',\n fontSize: 'var(--stn-text-body-small-size, 13px)',\n paddingX: 'var(--stn-space-3, 12px)',\n typicalWidth: 'width 프리셋 (w80~w200) · fullWidth=100%',\n pubClass: 'stn-text-field md',\n usedIn: '검색영역 · 필터 값',\n },\n {\n size: 'lg',\n height: '40px (var(--stn-size-lg))',\n radius: 'var(--stn-radius-md, 6px)',\n fontSize: 'var(--stn-text-body-medium-size, 14px)',\n paddingX: 'var(--stn-space-4, 16px)',\n typicalWidth: 'width 프리셋 (w80~w200) · fullWidth=100%',\n pubClass: 'stn-text-field lg',\n usedIn: '강조 검색 · 넓은 라벨 열',\n },\n {\n size: 'xl',\n height: '56px (var(--stn-size-xl))',\n radius: 'var(--stn-radius-lg, 16px)',\n fontSize: 'var(--stn-text-body-medium-size, 14px)',\n paddingX: 'var(--stn-space-5, 20px)',\n typicalWidth: 'fullWidth=100%',\n pubClass: 'stn-text-field xl',\n usedIn: '넓은 검색 · 강조 입력',\n },\n] as const\n\nexport const STN_TEXT_FIELD_STATES = [\n { id: 'default', label: 'Default', note: 'border `--stn-input-border` · bg `--stn-input-bg`' },\n { id: 'focus', label: 'Focus', note: 'border `--stn-input-focus` (2px)' },\n { id: 'placeholder', label: 'Placeholder', note: 'color `--stn-input-placeholder`' },\n { id: 'disabled', label: 'Disabled', note: 'opacity 0.55 · not-allowed' },\n { id: 'invalid', label: 'Invalid', note: 'border `--stn-feedback-error` · `aria-invalid` 또는 `invalid` prop' },\n] as const\n\nexport const STN_TEXT_FIELD_USAGE = \"import { StnTextField } from '@stn-uiux/pub-ui-react'\\n\\n<StnTextField variant=\\\"outlined\\\" placeholder=\\\"검색\\\" />\\n<StnTextField variant=\\\"filled\\\" placeholder=\\\"입력\\\" />\\n<StnTextField variant=\\\"standard\\\" placeholder=\\\"입력\\\" helperText=\\\"도움말\\\" />\"\n\nexport const STN_TEXT_FIELD_HTML = `<input\n type=\"text\"\n class=\"stn-text-field md\"\n value=\"전체\"\n aria-label=\"필터\"\n/>`\n"],"mappings":";AAQO,IAAM,uBAAuB;AAE7B,IAAM,uBACX;AAEK,IAAM,2BASP;AAAA,EACJ;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,UAAU;AAAA,IACV,cAAc;AAAA,IACd,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,UAAU;AAAA,IACV,cAAc;AAAA,IACd,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,UAAU;AAAA,IACV,cAAc;AAAA,IACd,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,UAAU;AAAA,IACV,cAAc;AAAA,IACd,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AACF;AAEO,IAAM,wBAAwB;AAAA,EACnC,EAAE,IAAI,WAAW,OAAO,WAAW,MAAM,uDAAoD;AAAA,EAC7F,EAAE,IAAI,SAAS,OAAO,SAAS,MAAM,mCAAmC;AAAA,EACxE,EAAE,IAAI,eAAe,OAAO,eAAe,MAAM,kCAAkC;AAAA,EACnF,EAAE,IAAI,YAAY,OAAO,YAAY,MAAM,gCAA6B;AAAA,EACxE,EAAE,IAAI,WAAW,OAAO,WAAW,MAAM,gFAAmE;AAC9G;AAEO,IAAM,uBAAuB;AAAA;AAAA;AAAA;AAAA;AAE7B,IAAM,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
package/dist/cli.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  STN_TEXT_FIELD_USAGE
3
- } from "./chunk-NB4NJQYE.js";
3
+ } from "./chunk-YJLOIDKY.js";
4
4
  import {
5
5
  STN_TOAST_REACT_USAGE
6
6
  } from "./chunk-SOEBXG3T.js";
@@ -61,7 +61,7 @@ export { STN_TOGGLE_BUTTON_PLAYGROUND_DEFAULT, STN_TOGGLE_BUTTON_PLAYGROUND_INTR
61
61
  export { STN_TREE_DEMO, STN_TREE_FIGMA, STN_TREE_INTRO, STN_TREE_PARTS, STN_TREE_PATTERN_PLAYGROUND_DEFAULT, STN_TREE_PATTERN_PLAYGROUND_PROPERTIES, STN_TREE_REACT_EXAMPLE, STN_TREE_SECTION_SIDE_FIGMA, STN_TREE_USAGE_HTML, StnTreeDemoNode, StnTreePatternPlaygroundConfig, describeTreePatternReact } from './stnTree.js';
62
62
  export { STN_TYPE_SCALE_INTRO, STN_TYPE_SCALE_ROWS, StnTypeScaleCategory, StnTypeScaleRow, resolveTypeScaleName, typeScalePill } from './stnTypeScale.js';
63
63
  export { STN_FONT_FAMILY_ROWS, STN_FONT_SIZE_ROWS, STN_FONT_WEIGHT_ROWS, STN_LINE_HEIGHT_ROWS, STN_TYPOGRAPHY_PRIMITIVE_GROUPS, STN_TYPOGRAPHY_SEMANTIC_ROWS, StnTypographyPrimitiveRow, StnTypographySemanticRow, typographyPrimitivesToJson, typographySemanticsToJson } from './stnTypography.js';
64
- export { STN_CARD_INTRO, STN_CARD_PADDINGS, STN_CARD_RADII, STN_CARD_VARIANTS, StnCardPadding, StnCardRadius, StnCardVariant } from './stnCard.js';
64
+ export { STN_CARD_INTRO, STN_CARD_PADDINGS, STN_CARD_RADII, STN_CARD_SEVERITIES, STN_CARD_VARIANTS, StnCardPadding, StnCardRadius, StnCardSeverity, StnCardVariant } from './stnCard.js';
65
65
  export { STN_ALERT_CENTER_DASHBOARD_USAGE, STN_ALERT_CENTER_DASHBOARD_WIDGETS, STN_WIDGET_APPEARANCE_ROWS, STN_WIDGET_CHART_SLOT_HTML, STN_WIDGET_CHART_SLOT_REACT, STN_WIDGET_DISABILITY_STATUS_DEMO, STN_WIDGET_FIGMA, STN_WIDGET_FIGMA_DARK, STN_WIDGET_FIGMA_DARK_URL, STN_WIDGET_FIGMA_SHELL_HTML, STN_WIDGET_FIGMA_SHELL_REACT, STN_WIDGET_FIGMA_URL, STN_WIDGET_GRADE_ROW_DEMO, STN_WIDGET_HEADER_HTML, STN_WIDGET_HEADER_REACT, STN_WIDGET_INTRO, STN_WIDGET_KINDS, STN_WIDGET_SHELL_ROWS, STN_WIDGET_TOP5_BARS_DEMO, STN_WIDGET_TRAFFIC_BARS_DEMO, STN_WIDGET_USAGE, STN_WIDGET_USAGE_HTML, StnWidgetAppearance, StnWidgetAppearanceLegacy, StnWidgetAppearanceShell, StnWidgetAssetId, StnWidgetBackgroundMode, StnWidgetContentFamily, StnWidgetGradeRowGrade, StnWidgetKind, StnWidgetKindBodySlot, StnWidgetKindPreview, StnWidgetShell, buildStnWidgetKindUsage, getStnWidgetKind, isStnWidgetKindSlug, normalizeStnWidgetAppearance, resolveStnWidgetBackground, resolveStnWidgetKindAppearance, resolveStnWidgetKindBodySlot, stnWidgetSampleUrl } from './stnWidget.js';
66
66
  export { STN_STATUS_DEMO_STEPS, StnStatusDotState, StnStatusFlowStep, StnStatusFlowStepColor } from './stnStatus.js';
67
67
  export { StnTabIconPosition, StnTabIconSize, StnTabItem, StnTabPanelPadding, StnTabScrollButtons, StnTabsSize, StnTabsVariant } from './stnTabs.js';
@@ -136,7 +136,7 @@ import {
136
136
  import {
137
137
  STN_UI_VERSION,
138
138
  STN_UI_VERSION_LABEL
139
- } from "../chunk-Q363EBGR.js";
139
+ } from "../chunk-M4MX76BY.js";
140
140
  import {
141
141
  STN_PAGE_ENTER_MOTION_INTRO,
142
142
  STN_PAGE_ENTER_MOTION_ROWS,
@@ -229,8 +229,9 @@ import {
229
229
  STN_CARD_INTRO,
230
230
  STN_CARD_PADDINGS,
231
231
  STN_CARD_RADII,
232
+ STN_CARD_SEVERITIES,
232
233
  STN_CARD_VARIANTS
233
- } from "../chunk-WN7FYFIO.js";
234
+ } from "../chunk-AJLP3Y53.js";
234
235
  import {
235
236
  STN_CHART_INTRO
236
237
  } from "../chunk-DGZVOSEM.js";
@@ -253,7 +254,7 @@ import {
253
254
  STN_CHIP_INTRO,
254
255
  STN_CHIP_METRICS,
255
256
  STN_CHIP_USAGE_ROWS
256
- } from "../chunk-KLIYAEJA.js";
257
+ } from "../chunk-2LRCGTKQ.js";
257
258
  import {
258
259
  STN_ALL_PALETTE_ROWS,
259
260
  STN_BLUE_SCALE,
@@ -298,7 +299,7 @@ import {
298
299
  STN_TEXT_FIELD_SIZE_ROWS,
299
300
  STN_TEXT_FIELD_STATES,
300
301
  STN_TEXT_FIELD_USAGE
301
- } from "../chunk-NB4NJQYE.js";
302
+ } from "../chunk-YJLOIDKY.js";
302
303
  import {
303
304
  STN_TOAST_DEMO_MSG,
304
305
  STN_TOAST_ICON_SLUG,
@@ -585,6 +586,7 @@ export {
585
586
  STN_CARD_INTRO,
586
587
  STN_CARD_PADDINGS,
587
588
  STN_CARD_RADII,
589
+ STN_CARD_SEVERITIES,
588
590
  STN_CARD_VARIANTS,
589
591
  STN_CDN_ASSET_BASE,
590
592
  STN_CHART_INTRO,
@@ -1,9 +1,11 @@
1
1
  type StnCardVariant = 'flat' | 'outlined' | 'elevated';
2
2
  type StnCardRadius = 'sm' | 'md' | 'lg' | 'none';
3
3
  type StnCardPadding = 'none' | 'sm' | 'md' | 'lg';
4
+ type StnCardSeverity = 'critical' | 'major' | 'minor' | 'warning';
4
5
  declare const STN_CARD_VARIANTS: readonly StnCardVariant[];
5
6
  declare const STN_CARD_RADII: readonly StnCardRadius[];
6
7
  declare const STN_CARD_PADDINGS: readonly StnCardPadding[];
8
+ declare const STN_CARD_SEVERITIES: readonly StnCardSeverity[];
7
9
  declare const STN_CARD_INTRO = "\uCF58\uD150\uCE20\uB97C \uC2DC\uAC01\uC801\uC73C\uB85C \uADF8\uB8F9\uD654\uD558\uACE0 \uACC4\uCE35\uC744 \uBD80\uC5EC\uD558\uB294 \uD45C\uC900 \uC11C\uD53C\uC2A4(Surface) \uCEE8\uD14C\uC774\uB108 \uCEF4\uD3EC\uB10C\uD2B8\uC785\uB2C8\uB2E4. \uD50C\uB7AB, \uC544\uC6C3\uB77C\uC778, \uC5D8\uB9AC\uBCA0\uC774\uD2F0\uB4DC \uBCC0\uD615\uACFC \uB77C\uC6B4\uB4DC \uBC0F \uD328\uB529 \uADDC\uACA9\uC744 \uC81C\uACF5\uD558\uBA70, \uB2E8\uB3C5 \uD2C0\uB85C\uC11C \uD639\uC740 \uD5E4\uB354/\uBCF8\uBB38/\uD478\uD130 \uD569\uC131 \uAD6C\uC870\uB85C \uC720\uC5F0\uD558\uAC8C \uD65C\uC6A9\uB429\uB2C8\uB2E4.";
8
10
 
9
- export { STN_CARD_INTRO, STN_CARD_PADDINGS, STN_CARD_RADII, STN_CARD_VARIANTS, type StnCardPadding, type StnCardRadius, type StnCardVariant };
11
+ export { STN_CARD_INTRO, STN_CARD_PADDINGS, STN_CARD_RADII, STN_CARD_SEVERITIES, STN_CARD_VARIANTS, type StnCardPadding, type StnCardRadius, type StnCardSeverity, type StnCardVariant };
@@ -2,12 +2,14 @@ import {
2
2
  STN_CARD_INTRO,
3
3
  STN_CARD_PADDINGS,
4
4
  STN_CARD_RADII,
5
+ STN_CARD_SEVERITIES,
5
6
  STN_CARD_VARIANTS
6
- } from "../chunk-WN7FYFIO.js";
7
+ } from "../chunk-AJLP3Y53.js";
7
8
  export {
8
9
  STN_CARD_INTRO,
9
10
  STN_CARD_PADDINGS,
10
11
  STN_CARD_RADII,
12
+ STN_CARD_SEVERITIES,
11
13
  STN_CARD_VARIANTS
12
14
  };
13
15
  //# sourceMappingURL=stnCard.js.map
@@ -4,13 +4,12 @@ import './stnColorPalette.js';
4
4
 
5
5
  /** 등급 칩 — 알림센터 `.tag` · equip-search `.tag` · `error_tag` 와 동일 토큰 */
6
6
  type StnChipGrade = StnGradeKind;
7
- /** 테이블 `border_chip` accent (등급과 별도) */
7
+ /** 테두리 액센트 칩 스케일 */
8
8
  type StnChipBorderAccent = 'mint' | 'sky' | 'violet' | 'orange' | 'yellow' | 'gray';
9
9
  declare const STN_CHIP_BORDER_ACCENTS: readonly {
10
10
  accent: StnChipBorderAccent;
11
11
  descKo: string;
12
- cssBorder: string;
13
- cssText: string;
12
+ className: string;
14
13
  }[];
15
14
  /** Pub HTML 레거시 modifier (`critic` = critical) */
16
15
  type StnChipLegacyGradeClass = 'critic' | 'major' | 'minor' | 'warning';
@@ -5,7 +5,7 @@ import {
5
5
  STN_CHIP_INTRO,
6
6
  STN_CHIP_METRICS,
7
7
  STN_CHIP_USAGE_ROWS
8
- } from "../chunk-KLIYAEJA.js";
8
+ } from "../chunk-2LRCGTKQ.js";
9
9
  import {
10
10
  STN_GRADE_SOURCE
11
11
  } from "../chunk-E26XJXQY.js";
@@ -1,5 +1,5 @@
1
1
  /** Package version constants */
2
- declare const STN_UI_VERSION = "0.1.73";
3
- declare const STN_UI_VERSION_LABEL = "v0.1.73";
2
+ declare const STN_UI_VERSION = "0.1.75";
3
+ declare const STN_UI_VERSION_LABEL = "v0.1.75";
4
4
 
5
5
  export { STN_UI_VERSION, STN_UI_VERSION_LABEL };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  STN_UI_VERSION,
3
3
  STN_UI_VERSION_LABEL
4
- } from "../chunk-Q363EBGR.js";
4
+ } from "../chunk-M4MX76BY.js";
5
5
  export {
6
6
  STN_UI_VERSION,
7
7
  STN_UI_VERSION_LABEL
@@ -2,8 +2,8 @@
2
2
  * Pub text input — Infomap `input` (Figma 40000042:186898)
3
3
  * @see common.css form inputs · StnTextField
4
4
  */
5
- /** S 24px · M 32px · L 40px · XL 56px */
6
- type StnTextFieldSize = 'S' | 'M' | 'L' | 'XL';
5
+ /** sm (24px) · md (32px) · lg (40px) · xl (56px) */
6
+ type StnTextFieldSize = 'sm' | 'md' | 'lg' | 'xl';
7
7
  declare const STN_TEXT_FIELD_FIGMA = "40000042:186898";
8
8
  declare const STN_TEXT_FIELD_INTRO = "Infomap \uAC80\uC0C9\u00B7\uD544\uD130\uC6A9 **\uD14D\uC2A4\uD2B8 \uC785\uB825**\uC785\uB2C8\uB2E4. **outlined**(\uBC15\uC2A4, \uAE30\uBCF8) \u00B7 **filled**(\uBA74) \u00B7 **standard**(\uD558\uB2E8 \uB77C\uC778). Light filled = gray-50. Dark filled = gray-750. helperText\uB294 \uD558\uB2E8 \uC67C\uCABD \uCEA1\uC158. React `StnTextField` \u00B7 Pub `.stn-text-field`.";
9
9
  declare const STN_TEXT_FIELD_SIZE_ROWS: readonly {
@@ -5,7 +5,7 @@ import {
5
5
  STN_TEXT_FIELD_SIZE_ROWS,
6
6
  STN_TEXT_FIELD_STATES,
7
7
  STN_TEXT_FIELD_USAGE
8
- } from "../chunk-NB4NJQYE.js";
8
+ } from "../chunk-YJLOIDKY.js";
9
9
  export {
10
10
  STN_TEXT_FIELD_FIGMA,
11
11
  STN_TEXT_FIELD_HTML,
package/dist/index.d.ts CHANGED
@@ -61,7 +61,7 @@ export { STN_TOGGLE_BUTTON_PLAYGROUND_DEFAULT, STN_TOGGLE_BUTTON_PLAYGROUND_INTR
61
61
  export { STN_TREE_DEMO, STN_TREE_FIGMA, STN_TREE_INTRO, STN_TREE_PARTS, STN_TREE_PATTERN_PLAYGROUND_DEFAULT, STN_TREE_PATTERN_PLAYGROUND_PROPERTIES, STN_TREE_REACT_EXAMPLE, STN_TREE_SECTION_SIDE_FIGMA, STN_TREE_USAGE_HTML, StnTreeDemoNode, StnTreePatternPlaygroundConfig, describeTreePatternReact } from './data/stnTree.js';
62
62
  export { STN_TYPE_SCALE_INTRO, STN_TYPE_SCALE_ROWS, StnTypeScaleCategory, StnTypeScaleRow, resolveTypeScaleName, typeScalePill } from './data/stnTypeScale.js';
63
63
  export { STN_FONT_FAMILY_ROWS, STN_FONT_SIZE_ROWS, STN_FONT_WEIGHT_ROWS, STN_LINE_HEIGHT_ROWS, STN_TYPOGRAPHY_PRIMITIVE_GROUPS, STN_TYPOGRAPHY_SEMANTIC_ROWS, StnTypographyPrimitiveRow, StnTypographySemanticRow, typographyPrimitivesToJson, typographySemanticsToJson } from './data/stnTypography.js';
64
- export { STN_CARD_INTRO, STN_CARD_PADDINGS, STN_CARD_RADII, STN_CARD_VARIANTS, StnCardPadding, StnCardRadius, StnCardVariant } from './data/stnCard.js';
64
+ export { STN_CARD_INTRO, STN_CARD_PADDINGS, STN_CARD_RADII, STN_CARD_SEVERITIES, STN_CARD_VARIANTS, StnCardPadding, StnCardRadius, StnCardSeverity, StnCardVariant } from './data/stnCard.js';
65
65
  export { STN_ALERT_CENTER_DASHBOARD_USAGE, STN_ALERT_CENTER_DASHBOARD_WIDGETS, STN_WIDGET_APPEARANCE_ROWS, STN_WIDGET_CHART_SLOT_HTML, STN_WIDGET_CHART_SLOT_REACT, STN_WIDGET_DISABILITY_STATUS_DEMO, STN_WIDGET_FIGMA, STN_WIDGET_FIGMA_DARK, STN_WIDGET_FIGMA_DARK_URL, STN_WIDGET_FIGMA_SHELL_HTML, STN_WIDGET_FIGMA_SHELL_REACT, STN_WIDGET_FIGMA_URL, STN_WIDGET_GRADE_ROW_DEMO, STN_WIDGET_HEADER_HTML, STN_WIDGET_HEADER_REACT, STN_WIDGET_INTRO, STN_WIDGET_KINDS, STN_WIDGET_SHELL_ROWS, STN_WIDGET_TOP5_BARS_DEMO, STN_WIDGET_TRAFFIC_BARS_DEMO, STN_WIDGET_USAGE, STN_WIDGET_USAGE_HTML, StnWidgetAppearance, StnWidgetAppearanceLegacy, StnWidgetAppearanceShell, StnWidgetAssetId, StnWidgetBackgroundMode, StnWidgetContentFamily, StnWidgetGradeRowGrade, StnWidgetKind, StnWidgetKindBodySlot, StnWidgetKindPreview, StnWidgetShell, buildStnWidgetKindUsage, getStnWidgetKind, isStnWidgetKindSlug, normalizeStnWidgetAppearance, resolveStnWidgetBackground, resolveStnWidgetKindAppearance, resolveStnWidgetKindBodySlot, stnWidgetSampleUrl } from './data/stnWidget.js';
66
66
  export { STN_STATUS_DEMO_STEPS, StnStatusDotState, StnStatusFlowStep, StnStatusFlowStepColor } from './data/stnStatus.js';
67
67
  export { StnTabIconPosition, StnTabIconSize, StnTabItem, StnTabPanelPadding, StnTabScrollButtons, StnTabsSize, StnTabsVariant } from './data/stnTabs.js';
package/dist/index.js CHANGED
@@ -141,7 +141,7 @@ import {
141
141
  import {
142
142
  STN_UI_VERSION,
143
143
  STN_UI_VERSION_LABEL
144
- } from "./chunk-Q363EBGR.js";
144
+ } from "./chunk-M4MX76BY.js";
145
145
  import {
146
146
  STN_PAGE_ENTER_MOTION_INTRO,
147
147
  STN_PAGE_ENTER_MOTION_ROWS,
@@ -234,8 +234,9 @@ import {
234
234
  STN_CARD_INTRO,
235
235
  STN_CARD_PADDINGS,
236
236
  STN_CARD_RADII,
237
+ STN_CARD_SEVERITIES,
237
238
  STN_CARD_VARIANTS
238
- } from "./chunk-WN7FYFIO.js";
239
+ } from "./chunk-AJLP3Y53.js";
239
240
  import {
240
241
  STN_CHART_INTRO
241
242
  } from "./chunk-DGZVOSEM.js";
@@ -258,7 +259,7 @@ import {
258
259
  STN_CHIP_INTRO,
259
260
  STN_CHIP_METRICS,
260
261
  STN_CHIP_USAGE_ROWS
261
- } from "./chunk-KLIYAEJA.js";
262
+ } from "./chunk-2LRCGTKQ.js";
262
263
  import {
263
264
  STN_ALL_PALETTE_ROWS,
264
265
  STN_BLUE_SCALE,
@@ -303,7 +304,7 @@ import {
303
304
  STN_TEXT_FIELD_SIZE_ROWS,
304
305
  STN_TEXT_FIELD_STATES,
305
306
  STN_TEXT_FIELD_USAGE
306
- } from "./chunk-NB4NJQYE.js";
307
+ } from "./chunk-YJLOIDKY.js";
307
308
  import {
308
309
  STN_TOAST_DEMO_MSG,
309
310
  STN_TOAST_ICON_SLUG,
@@ -590,6 +591,7 @@ export {
590
591
  STN_CARD_INTRO,
591
592
  STN_CARD_PADDINGS,
592
593
  STN_CARD_RADII,
594
+ STN_CARD_SEVERITIES,
593
595
  STN_CARD_VARIANTS,
594
596
  STN_CDN_ASSET_BASE,
595
597
  STN_CHART_INTRO,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stn-uiux/pub-ui",
3
- "version": "0.1.73",
3
+ "version": "0.1.75",
4
4
  "description": "STN Pub design system — tokens, specs, and CSS for product HTML / React apps",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -12,13 +12,13 @@
12
12
  */
13
13
 
14
14
  .stn-breadcrumb {
15
- --stn-breadcrumb-gap: var(--stn-space-16, 16px);
16
- --stn-breadcrumb-segment-gap: var(--stn-space-8, 8px);
17
- --stn-breadcrumb-font-size: var(--stn-font-size-14, 14px);
18
- --stn-breadcrumb-icon-size: var(--stn-size-16, 16px);
19
- --stn-breadcrumb-sep-size: var(--stn-size-12, 12px);
15
+ --stn-breadcrumb-gap: var(--stn-breadcrumb-gap-md, var(--stn-space-16, 16px));
16
+ --stn-breadcrumb-segment-gap: var(--stn-breadcrumb-segment-gap-md, var(--stn-space-8, 8px));
17
+ --stn-breadcrumb-font-size: var(--stn-text-body-medium-size, var(--stn-font-size-14, 14px));
18
+ --stn-breadcrumb-icon-size: var(--stn-breadcrumb-icon-size-md, var(--stn-size-16, 16px));
19
+ --stn-breadcrumb-sep-size: var(--stn-breadcrumb-sep-size-md, var(--stn-size-12, 12px));
20
20
  --stn-breadcrumb-chip-height: var(--stn-chip-height-md, var(--stn-size-24, 24px));
21
- --stn-breadcrumb-chip-pad-x: var(--stn-space-8, 8px);
21
+ --stn-breadcrumb-chip-pad-x: var(--stn-breadcrumb-chip-pad-x-md, var(--stn-space-8, 8px));
22
22
 
23
23
  box-sizing: border-box;
24
24
  color: var(--stn-breadcrumb-fg);
@@ -26,33 +26,33 @@
26
26
  }
27
27
 
28
28
  .stn-breadcrumb.sm {
29
- --stn-breadcrumb-gap: var(--stn-space-8, 8px);
30
- --stn-breadcrumb-segment-gap: var(--stn-space-4, 4px);
31
- --stn-breadcrumb-font-size: var(--stn-font-size-12, 12px);
32
- --stn-breadcrumb-icon-size: var(--stn-size-14, 14px);
33
- --stn-breadcrumb-sep-size: var(--stn-size-10, 10px);
29
+ --stn-breadcrumb-gap: var(--stn-breadcrumb-gap-sm, var(--stn-space-8, 8px));
30
+ --stn-breadcrumb-segment-gap: var(--stn-breadcrumb-segment-gap-sm, var(--stn-space-4, 4px));
31
+ --stn-breadcrumb-font-size: var(--stn-text-caption-medium-size, var(--stn-font-size-12, 12px));
32
+ --stn-breadcrumb-icon-size: var(--stn-breadcrumb-icon-size-sm, var(--stn-size-14, 14px));
33
+ --stn-breadcrumb-sep-size: var(--stn-breadcrumb-sep-size-sm, var(--stn-size-10, 10px));
34
34
  --stn-breadcrumb-chip-height: var(--stn-chip-height-sm, var(--stn-size-20, 20px));
35
- --stn-breadcrumb-chip-pad-x: var(--stn-space-6, 6px);
35
+ --stn-breadcrumb-chip-pad-x: var(--stn-breadcrumb-chip-pad-x-sm, var(--stn-space-6, 6px));
36
36
  }
37
37
 
38
38
  .stn-breadcrumb.md {
39
- --stn-breadcrumb-gap: var(--stn-space-16, 16px);
40
- --stn-breadcrumb-segment-gap: var(--stn-space-8, 8px);
41
- --stn-breadcrumb-font-size: var(--stn-font-size-14, 14px);
42
- --stn-breadcrumb-icon-size: var(--stn-size-16, 16px);
43
- --stn-breadcrumb-sep-size: var(--stn-size-12, 12px);
39
+ --stn-breadcrumb-gap: var(--stn-breadcrumb-gap-md, var(--stn-space-16, 16px));
40
+ --stn-breadcrumb-segment-gap: var(--stn-breadcrumb-segment-gap-md, var(--stn-space-8, 8px));
41
+ --stn-breadcrumb-font-size: var(--stn-text-body-medium-size, var(--stn-font-size-14, 14px));
42
+ --stn-breadcrumb-icon-size: var(--stn-breadcrumb-icon-size-md, var(--stn-size-16, 16px));
43
+ --stn-breadcrumb-sep-size: var(--stn-breadcrumb-sep-size-md, var(--stn-size-12, 12px));
44
44
  --stn-breadcrumb-chip-height: var(--stn-chip-height-md, var(--stn-size-24, 24px));
45
- --stn-breadcrumb-chip-pad-x: var(--stn-space-8, 8px);
45
+ --stn-breadcrumb-chip-pad-x: var(--stn-breadcrumb-chip-pad-x-md, var(--stn-space-8, 8px));
46
46
  }
47
47
 
48
48
  .stn-breadcrumb.lg {
49
- --stn-breadcrumb-gap: var(--stn-space-24, 24px);
50
- --stn-breadcrumb-segment-gap: var(--stn-space-12, 12px);
51
- --stn-breadcrumb-font-size: var(--stn-font-size-16, 16px);
52
- --stn-breadcrumb-icon-size: var(--stn-size-18, 18px);
53
- --stn-breadcrumb-sep-size: var(--stn-size-14, 14px);
49
+ --stn-breadcrumb-gap: var(--stn-breadcrumb-gap-lg, var(--stn-space-24, 24px));
50
+ --stn-breadcrumb-segment-gap: var(--stn-breadcrumb-segment-gap-lg, var(--stn-space-12, 12px));
51
+ --stn-breadcrumb-font-size: var(--stn-text-title-small-size, var(--stn-font-size-16, 16px));
52
+ --stn-breadcrumb-icon-size: var(--stn-breadcrumb-icon-size-lg, var(--stn-size-18, 18px));
53
+ --stn-breadcrumb-sep-size: var(--stn-breadcrumb-sep-size-lg, var(--stn-size-14, 14px));
54
54
  --stn-breadcrumb-chip-height: var(--stn-chip-height-lg, var(--stn-size-28, 28px));
55
- --stn-breadcrumb-chip-pad-x: var(--stn-space-12, 12px);
55
+ --stn-breadcrumb-chip-pad-x: var(--stn-breadcrumb-chip-pad-x-lg, var(--stn-space-12, 12px));
56
56
  }
57
57
 
58
58
  .stn-breadcrumb__list {
@@ -89,7 +89,7 @@
89
89
  margin: 0;
90
90
  padding: 0;
91
91
  border: 0;
92
- border-radius: var(--stn-radius-4, 4px);
92
+ border-radius: var(--stn-radius-sm, var(--stn-radius-4, 4px));
93
93
  background: transparent;
94
94
  color: inherit;
95
95
  font: inherit;
@@ -131,8 +131,8 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
131
131
  .stn-breadcrumb__segment:focus-visible,
132
132
  .stn-breadcrumb .collapsed:focus-visible,
133
133
  .stn-breadcrumb__back:focus-visible {
134
- outline: 2px solid var(--stn-focus-ring);
135
- outline-offset: 1px;
134
+ outline: var(--stn-focus-ring-width, 2px) solid var(--stn-focus-ring);
135
+ outline-offset: var(--stn-focus-ring-offset, 1px);
136
136
  }
137
137
 
138
138
  .stn-breadcrumb__icon-glyph {
@@ -214,12 +214,12 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
214
214
  z-index: var(--stn-dropdown-menu-z, 150);
215
215
  display: flex;
216
216
  flex-direction: column;
217
- min-width: var(--stn-size-120, 120px);
217
+ min-width: var(--stn-input-w120, var(--stn-size-120, 120px));
218
218
  margin: 0;
219
219
  padding: var(--stn-space-4, 4px);
220
220
  list-style: none;
221
221
  border: 1px solid var(--stn-pop-border);
222
- border-radius: var(--stn-radius-4, 4px);
222
+ border-radius: var(--stn-radius-sm, var(--stn-radius-4, 4px));
223
223
  background: var(--stn-dropdown-menu-bg, var(--stn-pop-surface));
224
224
  box-shadow: var(--stn-pop-shadow);
225
225
  }
@@ -233,7 +233,7 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
233
233
  margin: 0;
234
234
  padding: var(--stn-space-8, 8px);
235
235
  border: 0;
236
- border-radius: var(--stn-radius-4, 4px);
236
+ border-radius: var(--stn-radius-sm, var(--stn-radius-4, 4px));
237
237
  background: transparent;
238
238
  color: var(--stn-pop-title, inherit);
239
239
  font: inherit;
@@ -313,7 +313,7 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
313
313
  background: color-mix(in srgb, var(--stn-breadcrumb-fg) 16%, transparent);
314
314
  }
315
315
 
316
- /* Compact — 좁은 폭: 아이콘만 (라벨 숨김). 아이콘 없는 세그먼트는 라벨 유지 */
316
+ /* Compact — STN Breakpoint md (1024px) 미만 좁은 화면: 아이콘만 (라벨 숨김). 아이콘 없는 세그먼트는 라벨 유지 */
317
317
  .stn-breadcrumb--icon-only .stn-breadcrumb__segment:has(.stn-breadcrumb__icon-glyph) .stn-breadcrumb__label,
318
318
  .stn-breadcrumb--icon-only .stn-breadcrumb__back .stn-breadcrumb__label {
319
319
  position: absolute;
@@ -334,9 +334,10 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
334
334
 
335
335
  .stn-breadcrumb--icon-only.chip .stn-breadcrumb__segment:has(.stn-breadcrumb__icon-glyph),
336
336
  .stn-breadcrumb--icon-only.chip .stn-breadcrumb__back {
337
- padding-inline: var(--stn-space-6, 6px);
337
+ padding-inline: var(--stn-space-6);
338
338
  }
339
339
 
340
+ /* STN Viewport Breakpoint md (1024px) 미만 기준 - CSS media query는 var() 미지원이므로 1023px 리터럴 명시 */
340
341
  @media (max-width: 1023px) {
341
342
  .stn-breadcrumb__segment:has(.stn-breadcrumb__icon-glyph) .stn-breadcrumb__label,
342
343
  .stn-breadcrumb__back .stn-breadcrumb__label {
@@ -358,10 +359,11 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
358
359
 
359
360
  .stn-breadcrumb.chip .stn-breadcrumb__segment:has(.stn-breadcrumb__icon-glyph),
360
361
  .stn-breadcrumb.chip .stn-breadcrumb__back {
361
- padding-inline: var(--stn-space-6, 6px);
362
+ padding-inline: var(--stn-space-6);
362
363
  }
363
364
  }
364
365
 
366
+ /* Container Query: stn-header 컨테이너 1024px(md) 미만 */
365
367
  @container stn-header (max-width: 1023px) {
366
368
  .stn-breadcrumb__segment:has(.stn-breadcrumb__icon-glyph) .stn-breadcrumb__label,
367
369
  .stn-breadcrumb__back .stn-breadcrumb__label {
@@ -383,6 +385,7 @@ a.stn-breadcrumb__segment:hover .stn-breadcrumb__label {
383
385
 
384
386
  .stn-breadcrumb.chip .stn-breadcrumb__segment:has(.stn-breadcrumb__icon-glyph),
385
387
  .stn-breadcrumb.chip .stn-breadcrumb__back {
386
- padding-inline: var(--stn-space-6, 6px);
388
+ padding-inline: var(--stn-space-6);
387
389
  }
388
390
  }
391
+
@@ -31,6 +31,27 @@
31
31
  box-shadow: var(--stn-card-shadow);
32
32
  }
33
33
 
34
+ /* Severity Tint Surfaces (critical · major · minor · warning) */
35
+ .stn-card.severity-critical {
36
+ background-color: var(--stn-severity-critical-bg);
37
+ border: 1px solid var(--stn-severity-critical-border);
38
+ }
39
+
40
+ .stn-card.severity-major {
41
+ background-color: var(--stn-severity-major-bg);
42
+ border: 1px solid var(--stn-severity-major-border);
43
+ }
44
+
45
+ .stn-card.severity-minor {
46
+ background-color: var(--stn-severity-minor-bg);
47
+ border: 1px solid var(--stn-severity-minor-border);
48
+ }
49
+
50
+ .stn-card.severity-warning {
51
+ background-color: var(--stn-severity-warning-bg);
52
+ border: 1px solid var(--stn-severity-warning-border);
53
+ }
54
+
34
55
  /* Radius */
35
56
  .stn-card.radius-sm { border-radius: var(--stn-radius-8, 8px); }
36
57
  .stn-card.radius-md { border-radius: var(--stn-radius-12, 12px); }
@@ -99,9 +120,9 @@
99
120
  }
100
121
 
101
122
  /* Card title size modifiers */
102
- .stn-card__header-title.sm { font-size: var(--stn-font-size-14, 14px); }
103
- .stn-card__header-title.md { font-size: var(--stn-font-size-16, 16px); }
104
- .stn-card__header-title.lg { font-size: var(--stn-font-size-18, 18px); }
123
+ .stn-card__header-title.sm { font-size: var(--stn-text-body-medium-size, var(--stn-font-size-14, 14px)); }
124
+ .stn-card__header-title.md { font-size: var(--stn-text-title-small-size, var(--stn-font-size-16, 16px)); }
125
+ .stn-card__header-title.lg { font-size: var(--stn-text-title-medium-size, var(--stn-font-size-18, 18px)); }
105
126
 
106
127
  /* Card title weight modifiers */
107
128
  .stn-card__header-title.regular { font-weight: var(--stn-font-weight-regular, 400); }
@@ -16,7 +16,7 @@
16
16
  --calendar-disabled-font: var(--stn-date-picker-disabled-fg);
17
17
 
18
18
  position: fixed;
19
- z-index: 1300;
19
+ z-index: var(--stn-elevation-z-dropdown);
20
20
  box-sizing: border-box;
21
21
  border: var(--stn-size-1) solid var(--calendar-border);
22
22
  border-radius: var(--stn-radius-8);