@iyulab/components 0.1.3 → 0.1.5

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 (124) hide show
  1. package/CHANGELOG.md +18 -15
  2. package/LICENSE +20 -20
  3. package/README.md +33 -33
  4. package/dist/assets/icons/arrow-clockwise.svg.js +1 -1
  5. package/dist/assets/icons/arrow-down.svg.js +1 -1
  6. package/dist/assets/icons/arrow-up.svg.js +1 -1
  7. package/dist/assets/icons/ban.svg.js +1 -1
  8. package/dist/assets/icons/check-circle-fill.svg.js +1 -1
  9. package/dist/assets/icons/check-lg.svg.js +1 -1
  10. package/dist/assets/icons/chevron-down.svg.js +1 -1
  11. package/dist/assets/icons/chevron-left.svg.js +1 -1
  12. package/dist/assets/icons/chevron-right.svg.js +1 -1
  13. package/dist/assets/icons/chevron-up.svg.js +1 -1
  14. package/dist/assets/icons/copy.svg.js +1 -1
  15. package/dist/assets/icons/dash-lg.svg.js +1 -1
  16. package/dist/assets/icons/exclamation-circle-fill.svg.js +1 -1
  17. package/dist/assets/icons/exclamation-triangle-fill.svg.js +1 -1
  18. package/dist/assets/icons/info-circle-fill.svg.js +1 -1
  19. package/dist/assets/icons/layout-sidebar.svg.js +1 -1
  20. package/dist/assets/icons/lightbulb-fill.svg.js +1 -1
  21. package/dist/assets/icons/lightbulb-off.svg.js +1 -1
  22. package/dist/assets/icons/lightbulb.svg.js +1 -1
  23. package/dist/assets/icons/mic-fill.svg.js +1 -1
  24. package/dist/assets/icons/mic-mute-fill.svg.js +1 -1
  25. package/dist/assets/icons/paperclip.svg.js +1 -1
  26. package/dist/assets/icons/pencil-square.svg.js +1 -1
  27. package/dist/assets/icons/plus-lg.svg.js +1 -1
  28. package/dist/assets/icons/search.svg.js +1 -1
  29. package/dist/assets/icons/speedometer.svg.js +1 -1
  30. package/dist/assets/icons/x-lg.svg.js +1 -1
  31. package/dist/assets/styles/dark.css +129 -125
  32. package/dist/assets/styles/dark.css.js +1 -1
  33. package/dist/assets/styles/light.css +129 -126
  34. package/dist/assets/styles/light.css.js +1 -1
  35. package/dist/components/BaseElement.styles.js +2 -3
  36. package/dist/components/alert/Alert.d.ts +8 -4
  37. package/dist/components/alert/Alert.js +24 -15
  38. package/dist/components/alert/Alert.styles.js +32 -39
  39. package/dist/components/alert/index.js +5 -0
  40. package/dist/components/button/Button.js +4 -2
  41. package/dist/components/button/Button.styles.js +13 -20
  42. package/dist/components/button/index.js +5 -0
  43. package/dist/components/context-menu/index.js +5 -0
  44. package/dist/components/copy-button/CopyButton.d.ts +7 -3
  45. package/dist/components/copy-button/CopyButton.js +69 -0
  46. package/dist/components/copy-button/CopyButton.styles.js +17 -0
  47. package/dist/components/copy-button/index.js +5 -0
  48. package/dist/components/dialog/index.js +5 -0
  49. package/dist/components/divider/Divider.d.ts +25 -0
  50. package/dist/components/divider/Divider.js +89 -0
  51. package/dist/components/{split-panel/Splitter.styles.js → divider/Divider.styles.js} +25 -13
  52. package/dist/components/divider/index.d.ts +7 -0
  53. package/dist/components/divider/index.js +5 -0
  54. package/dist/components/form/Form.d.ts +3 -1
  55. package/dist/components/form/Form.js +3 -1
  56. package/dist/components/form/Form.styles.js +1 -0
  57. package/dist/components/form/index.js +5 -0
  58. package/dist/components/icon/Icon.d.ts +6 -16
  59. package/dist/components/icon/Icon.js +17 -40
  60. package/dist/components/icon/Icon.styles.js +1 -1
  61. package/dist/components/icon/index.js +5 -0
  62. package/dist/components/icon-button/IconButton.d.ts +3 -3
  63. package/dist/components/icon-button/IconButton.js +6 -6
  64. package/dist/components/icon-button/IconButton.styles.js +14 -29
  65. package/dist/components/icon-button/index.js +5 -0
  66. package/dist/components/index.d.ts +2 -1
  67. package/dist/components/input/Input.d.ts +14 -13
  68. package/dist/components/input/Input.js +56 -55
  69. package/dist/components/input/Input.styles.js +52 -54
  70. package/dist/components/input/index.js +5 -0
  71. package/dist/components/menu/index.js +5 -0
  72. package/dist/components/progress-bar/ProgressBar.d.ts +2 -2
  73. package/dist/components/progress-bar/ProgressBar.js +2 -2
  74. package/dist/components/progress-bar/ProgressBar.styles.js +10 -10
  75. package/dist/components/progress-bar/index.js +5 -0
  76. package/dist/components/progress-ring/ProgressRing.d.ts +2 -2
  77. package/dist/components/progress-ring/ProgressRing.js +9 -6
  78. package/dist/components/progress-ring/ProgressRing.styles.js +8 -9
  79. package/dist/components/progress-ring/index.js +5 -0
  80. package/dist/components/spinner/Spinner.styles.js +5 -3
  81. package/dist/components/spinner/index.js +5 -0
  82. package/dist/components/split-panel/SplitPanel.d.ts +8 -12
  83. package/dist/components/split-panel/SplitPanel.js +64 -91
  84. package/dist/components/split-panel/SplitPanel.styles.js +16 -1
  85. package/dist/components/split-panel/index.js +5 -0
  86. package/dist/components/tooltip/Tooltip.d.ts +8 -12
  87. package/dist/components/tooltip/Tooltip.js +39 -38
  88. package/dist/components/tooltip/Tooltip.styles.js +5 -5
  89. package/dist/components/tooltip/index.js +5 -0
  90. package/dist/components/tree/Tree.d.ts +2 -14
  91. package/dist/components/tree/Tree.js +9 -49
  92. package/dist/components/tree/Tree.styles.js +5 -5
  93. package/dist/components/tree/index.js +5 -0
  94. package/dist/components/tree-item/TreeItem.d.ts +10 -29
  95. package/dist/components/tree-item/TreeItem.js +63 -95
  96. package/dist/components/tree-item/TreeItem.styles.js +10 -41
  97. package/dist/components/tree-item/index.js +5 -0
  98. package/dist/index.js +25 -5
  99. package/dist/integrations/react/UDivider.d.ts +8 -0
  100. package/dist/integrations/react/UDivider.js +10 -0
  101. package/dist/integrations/react/index.d.ts +1 -1
  102. package/dist/integrations/react/index.js +1 -1
  103. package/dist/internals/index.d.ts +0 -1
  104. package/dist/utilities/decorators.js +2 -0
  105. package/dist/utilities/icons.d.ts +46 -0
  106. package/dist/{internals → utilities}/icons.js +74 -2
  107. package/dist/utilities/index.d.ts +1 -0
  108. package/dist/utilities/notifier.d.ts +17 -7
  109. package/dist/utilities/notifier.js +51 -41
  110. package/dist/utilities/theme.d.ts +15 -20
  111. package/dist/utilities/theme.js +36 -29
  112. package/package.json +59 -58
  113. package/dist/components/panel/Panel.d.ts +0 -10
  114. package/dist/components/panel/Panel.js +0 -21
  115. package/dist/components/panel/Panel.styles.js +0 -12
  116. package/dist/components/panel/index.d.ts +0 -7
  117. package/dist/components/split-panel/SplitPanel.types.d.ts +0 -2
  118. package/dist/components/split-panel/Splitter.d.ts +0 -17
  119. package/dist/components/split-panel/Splitter.js +0 -45
  120. package/dist/components/split-panel/Splitter.styles.d.ts +0 -1
  121. package/dist/integrations/react/UPanel.d.ts +0 -8
  122. package/dist/integrations/react/UPanel.js +0 -10
  123. package/dist/internals/icons.d.ts +0 -6
  124. /package/dist/components/{panel/Panel.styles.d.ts → divider/Divider.styles.d.ts} +0 -0
@@ -1,3 +1,3 @@
1
- const dark = ":root[theme=\"dark\"] {\r\n color-scheme: dark;\r\n\r\n /* Neutral Colors */\r\n --u-neutral-0: #000000;\r\n --u-neutral-50: #0A0A0A;\r\n --u-neutral-100: #121212;\r\n --u-neutral-200: #1E1E1E;\r\n --u-neutral-300: #2A2A2A;\r\n --u-neutral-400: #3D3D3D;\r\n --u-neutral-500: #525252;\r\n --u-neutral-600: #6E6E6E;\r\n --u-neutral-700: #8A8A8A;\r\n --u-neutral-800: #B0B0B0;\r\n --u-neutral-900: #D4D4D4;\r\n --u-neutral-1000: #FFFFFF;\r\n\r\n /* Blue Colors */\r\n --u-blue-0: #0A1E3D;\r\n --u-blue-100: #1E3A5F;\r\n --u-blue-200: #2B4F7E;\r\n --u-blue-300: #3D6B9E;\r\n --u-blue-400: #5284BE;\r\n --u-blue-500: #6BA3E3;\r\n --u-blue-600: #87B8F5;\r\n --u-blue-700: #A5CDFF;\r\n --u-blue-800: #C2DEFF;\r\n --u-blue-900: #DDEEFF;\r\n --u-blue-1000: #F0F7FF;\r\n\r\n /* Green Colors */\r\n --u-green-0: #0D2818;\r\n --u-green-100: #1A3F2A;\r\n --u-green-200: #285639;\r\n --u-green-300: #3A7450;\r\n --u-green-400: #4E9268;\r\n --u-green-500: #66B584;\r\n --u-green-600: #81D19D;\r\n --u-green-700: #9FE5B5;\r\n --u-green-800: #BEF2CD;\r\n --u-green-900: #DDF9E5;\r\n --u-green-1000: #F0FDF5;\r\n\r\n /* Yellow Colors */\r\n --u-yellow-0: #2E2200;\r\n --u-yellow-100: #4D3A00;\r\n --u-yellow-200: #6B5200;\r\n --u-yellow-300: #8A6B00;\r\n --u-yellow-400: #B08900;\r\n --u-yellow-500: #D4A712;\r\n --u-yellow-600: #F5C842;\r\n --u-yellow-700: #FFE066;\r\n --u-yellow-800: #FFED99;\r\n --u-yellow-900: #FFF5CC;\r\n --u-yellow-1000: #FFFBE6;\r\n\r\n /* Red Colors */\r\n --u-red-0: #2E0A0A;\r\n --u-red-100: #4D1717;\r\n --u-red-200: #6B2424;\r\n --u-red-300: #8F3535;\r\n --u-red-400: #B24848;\r\n --u-red-500: #D66060;\r\n --u-red-600: #F57878;\r\n --u-red-700: #FF9494;\r\n --u-red-800: #FFB3B3;\r\n --u-red-900: #FFD2D2;\r\n --u-red-1000: #FFF0F0;\r\n\r\n /* Shadow Colors */\r\n --u-shadow-weak: rgba(0, 0, 0, 0.15);\r\n --u-shadow-normal: rgba(0, 0, 0, 0.25);\r\n --u-shadow-medium: rgba(0, 0, 0, 0.35);\r\n --u-shadow-strong: rgba(0, 0, 0, 0.45);\r\n --u-shadow-heavy: rgba(0, 0, 0, 0.60);\r\n\r\n /* background Colors */\r\n --u-bg-color: var(--u-neutral-100);\r\n --u-bg-color-inverse: var(--u-neutral-0);\r\n --u-bg-color-hover: var(--u-neutral-300);\r\n --u-bg-color-active: var(--u-neutral-400);\r\n --u-bg-color-disabled: var(--u-neutral-200);\r\n \r\n --u-panel-bg-color: var(--u-neutral-200);\r\n --u-overlay-bg-color: rgba(0, 0, 0, 0.7);\r\n --u-tooltip-bg-color: rgba(255, 255, 255, 0.85);\r\n\r\n /* border Colors */\r\n --u-border-color: var(--u-neutral-400);\r\n --u-border-color-weak: var(--u-neutral-300);\r\n --u-border-color-strong: var(--u-neutral-500);\r\n\r\n --u-input-border-color: var(--u-neutral-400);\r\n --u-input-border-hover: var(--u-neutral-500);\r\n --u-input-border-focus: var(--u-blue-600);\r\n\r\n /* text Colors */\r\n --u-text-color: var(--u-neutral-900);\r\n --u-text-color-inverse: var(--u-neutral-100);\r\n --u-text-color-hover: var(--u-blue-600);\r\n --u-text-color-disabled: var(--u-neutral-500);\r\n\r\n --u-soft-text-color: var(--u-neutral-700);\r\n --u-strong-text-color: var(--u-neutral-1000);\r\n --u-link-text-color: var(--u-blue-700);\r\n --u-tooltip-text-color: var(--u-neutral-100);\r\n\r\n /* Icon Colors */\r\n --u-icon-color: var(--u-neutral-800);\r\n --u-icon-color-inverse: var(--u-neutral-100);\r\n --u-icon-color-hover: var(--u-blue-600);\r\n --u-icon-color-disabled: var(--u-neutral-500);\r\n\r\n /* Scrollbar Colors */\r\n --u-scrollbar-color: var(--u-neutral-500);\r\n --u-scrollbar-color-hover: var(--u-neutral-600);\r\n --u-scrollbar-track-color: transparent;\r\n\r\n /* Font Styles */\r\n --u-font-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';\r\n --u-font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;\r\n --u-font-serif: 'Georgia', 'Times New Roman', Times, serif;\r\n --u-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;\r\n --u-font-modern: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n --u-font-rounded: 'Nunito', 'Quicksand', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n}";
1
+ const dark = ":root[theme=\"dark\"] {\n color-scheme: dark;\n\n /* Neutral Colors */\n --u-neutral-0: #000000;\n --u-neutral-50: #0A0A0A;\n --u-neutral-100: #121212;\n --u-neutral-200: #1E1E1E;\n --u-neutral-300: #2A2A2A;\n --u-neutral-400: #3D3D3D;\n --u-neutral-500: #525252;\n --u-neutral-600: #6E6E6E;\n --u-neutral-700: #8A8A8A;\n --u-neutral-800: #B0B0B0;\n --u-neutral-900: #D4D4D4;\n --u-neutral-1000: #FFFFFF;\n\n /* Blue Colors */\n --u-blue-0: #0A1E3D;\n --u-blue-100: #1E3A5F;\n --u-blue-200: #2B4F7E;\n --u-blue-300: #3D6B9E;\n --u-blue-400: #5284BE;\n --u-blue-500: #6BA3E3;\n --u-blue-600: #87B8F5;\n --u-blue-700: #A5CDFF;\n --u-blue-800: #C2DEFF;\n --u-blue-900: #DDEEFF;\n --u-blue-1000: #F0F7FF;\n\n /* Green Colors */\n --u-green-0: #0D2818;\n --u-green-100: #1A3F2A;\n --u-green-200: #285639;\n --u-green-300: #3A7450;\n --u-green-400: #4E9268;\n --u-green-500: #66B584;\n --u-green-600: #81D19D;\n --u-green-700: #9FE5B5;\n --u-green-800: #BEF2CD;\n --u-green-900: #DDF9E5;\n --u-green-1000: #F0FDF5;\n\n /* Yellow Colors */\n --u-yellow-0: #2E2200;\n --u-yellow-100: #4D3A00;\n --u-yellow-200: #6B5200;\n --u-yellow-300: #8A6B00;\n --u-yellow-400: #B08900;\n --u-yellow-500: #D4A712;\n --u-yellow-600: #F5C842;\n --u-yellow-700: #FFE066;\n --u-yellow-800: #FFED99;\n --u-yellow-900: #FFF5CC;\n --u-yellow-1000: #FFFBE6;\n\n /* Red Colors */\n --u-red-0: #2E0A0A;\n --u-red-100: #4D1717;\n --u-red-200: #6B2424;\n --u-red-300: #8F3535;\n --u-red-400: #B24848;\n --u-red-500: #D66060;\n --u-red-600: #F57878;\n --u-red-700: #FF9494;\n --u-red-800: #FFB3B3;\n --u-red-900: #FFD2D2;\n --u-red-1000: #FFF0F0;\n\n /* text Colors */\n --u-txt-color: var(--u-neutral-900);\n --u-txt-color-inverse: var(--u-neutral-100);\n --u-txt-color-hover: var(--u-blue-600);\n --u-txt-color-active: var(--u-blue-600);\n --u-txt-color-disabled: var(--u-neutral-500);\n --u-txt-color-weak: var(--u-neutral-700);\n --u-txt-color-strong: var(--u-neutral-1000);\n\n --u-link-txt-color: var(--u-blue-700);\n --u-tooltip-txt-color: var(--u-neutral-100);\n\n /* Icon Colors */\n --u-icon-color: var(--u-neutral-800);\n --u-icon-color-inverse: var(--u-neutral-100);\n --u-icon-color-hover: var(--u-blue-600);\n --u-icon-color-active: var(--u-blue-600);\n --u-icon-color-disabled: var(--u-neutral-500);\n\n /* border Colors */\n --u-border-color: var(--u-neutral-400);\n --u-border-color-weak: var(--u-neutral-300);\n --u-border-color-strong: var(--u-neutral-500);\n\n --u-input-border-color: var(--u-neutral-400);\n --u-input-border-color-hover: var(--u-neutral-500);\n --u-input-border-color-focus: var(--u-blue-600);\n --u-input-border-color-invalid: var(--u-red-600);\n\n /* background Colors */\n --u-bg-color: var(--u-neutral-100);\n --u-bg-color-inverse: var(--u-neutral-0);\n --u-bg-color-hover: var(--u-neutral-300);\n --u-bg-color-active: var(--u-neutral-400);\n --u-bg-color-disabled: var(--u-neutral-100);\n \n --u-input-bg-color: var(--u-neutral-200);\n --u-panel-bg-color: var(--u-neutral-200);\n --u-overlay-bg-color: rgba(0, 0, 0, 0.7);\n --u-tooltip-bg-color: rgba(255, 255, 255, 0.85);\n\n /* Shadow Colors */\n --u-shadow-color-weaker: rgba(0, 0, 0, 0.15);\n --u-shadow-color-weak: rgba(0, 0, 0, 0.25);\n --u-shadow-color-normal: rgba(0, 0, 0, 0.35);\n --u-shadow-color-strong: rgba(0, 0, 0, 0.45);\n --u-shadow-color-stronger: rgba(0, 0, 0, 0.60);\n\n /* Scrollbar Colors */\n --u-scrollbar-color: var(--u-neutral-500);\n --u-scrollbar-color-hover: var(--u-neutral-600);\n --u-scrollbar-track-color: transparent;\n\n /* Font Styles */\n --u-font-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';\n --u-font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;\n --u-font-serif: 'Georgia', 'Times New Roman', Times, serif;\n --u-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;\n --u-font-modern: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n --u-font-rounded: 'Nunito', 'Quicksand', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n}";
2
2
 
3
3
  export { dark as default };
@@ -1,127 +1,130 @@
1
- :root {
2
- color-scheme: light;
3
-
4
- /* Neutral Colors */
5
- --u-neutral-0: #FFFFFF;
6
- --u-neutral-50: #FAFAFA;
7
- --u-neutral-100: #F5F5F5;
8
- --u-neutral-200: #EEEEEE;
9
- --u-neutral-300: #E0E0E0;
10
- --u-neutral-400: #BDBDBD;
11
- --u-neutral-500: #9E9E9E;
12
- --u-neutral-600: #757575;
13
- --u-neutral-700: #616161;
14
- --u-neutral-800: #424242;
15
- --u-neutral-900: #212121;
16
- --u-neutral-1000: #000000;
17
-
18
- /* Blue Colors */
19
- --u-blue-0: #E3F2FD;
20
- --u-blue-100: #BBDEFB;
21
- --u-blue-200: #90CAF9;
22
- --u-blue-300: #64B5F6;
23
- --u-blue-400: #42A5F5;
24
- --u-blue-500: #2196F3;
25
- --u-blue-600: #1E88E5;
26
- --u-blue-700: #1976D2;
27
- --u-blue-800: #1565C0;
28
- --u-blue-900: #0D47A1;
29
- --u-blue-1000: #062A5E;
30
-
31
- /* Green Colors */
32
- --u-green-0: #E8F5E9;
33
- --u-green-100: #C8E6C9;
34
- --u-green-200: #A5D6A7;
35
- --u-green-300: #81C784;
36
- --u-green-400: #66BB6A;
37
- --u-green-500: #4CAF50;
38
- --u-green-600: #43A047;
39
- --u-green-700: #388E3C;
40
- --u-green-800: #2E7D32;
41
- --u-green-900: #1B5E20;
42
- --u-green-1000: #0F3A12;
43
-
44
- /* Yellow Colors */
45
- --u-yellow-0: #FFFDE7;
46
- --u-yellow-100: #FFF9C4;
47
- --u-yellow-200: #FFF59D;
48
- --u-yellow-300: #FFF176;
49
- --u-yellow-400: #FFEE58;
50
- --u-yellow-500: #FFEB3B;
51
- --u-yellow-600: #FDD835;
52
- --u-yellow-700: #FBC02D;
53
- --u-yellow-800: #F9A825;
54
- --u-yellow-900: #F57F17;
55
- --u-yellow-1000: #8A4A00;
56
-
57
- /* Red Colors */
58
- --u-red-0: #FFEBEE;
59
- --u-red-100: #FFCDD2;
60
- --u-red-200: #EF9A9A;
61
- --u-red-300: #E57373;
62
- --u-red-400: #EF5350;
63
- --u-red-500: #F44336;
64
- --u-red-600: #E53935;
65
- --u-red-700: #D32F2F;
66
- --u-red-800: #C62828;
67
- --u-red-900: #B71C1C;
68
- --u-red-1000: #6B0F0F;
69
-
70
- /* Shadow Colors */
71
- --u-shadow-weak: rgba(0, 0, 0, 0.04);
72
- --u-shadow-normal: rgba(0, 0, 0, 0.08);
73
- --u-shadow-medium: rgba(0, 0, 0, 0.12);
74
- --u-shadow-strong: rgba(0, 0, 0, 0.16);
75
- --u-shadow-heavy: rgba(0, 0, 0, 0.24);
76
-
77
- /* background Colors */
78
- --u-bg-color: var(--u-neutral-0);
79
- --u-bg-color-inverse: var(--u-neutral-900);
80
- --u-bg-color-hover: var(--u-neutral-100);
81
- --u-bg-color-active: var(--u-neutral-200);
82
- --u-bg-color-disabled: var(--u-neutral-50);
83
-
84
- --u-panel-bg-color: var(--u-neutral-0);
85
- --u-overlay-bg-color: rgba(0, 0, 0, 0.5);
86
- --u-tooltip-bg-color: rgba(0, 0, 0, 0.75);
87
-
88
- /* border Colors */
89
- --u-border-color: var(--u-neutral-300);
90
- --u-border-color-weak: var(--u-neutral-200);
91
- --u-border-color-strong: var(--u-neutral-400);
92
-
93
- --u-input-border-color: var(--u-neutral-300);
94
- --u-input-border-hover: var(--u-neutral-400);
95
- --u-input-border-focus: var(--u-blue-600);
96
-
97
- /* text Colors */
98
- --u-text-color: var(--u-neutral-900);
99
- --u-text-color-inverse: var(--u-neutral-0);
100
- --u-text-color-hover: var(--u-blue-600);
101
- --u-text-color-active: var(--u-blue-600);
102
- --u-text-color-disabled: var(--u-neutral-400);
103
-
104
- --u-soft-text-color: var(--u-neutral-700);
105
- --u-link-text-color: var(--u-blue-700);
106
- --u-tooltip-text-color: var(--u-neutral-0);
107
-
108
- /* Icon Colors */
109
- --u-icon-color: var(--u-neutral-700);
110
- --u-icon-color-inverse: var(--u-neutral-0);
111
- --u-icon-color-hover: var(--u-blue-600);
112
- --u-icon-color-active: var(--u-blue-600);
113
- --u-icon-color-disabled: var(--u-neutral-400);
114
-
115
- /* Scrollbar Colors */
116
- --u-scrollbar-color: var(--u-neutral-400);
117
- --u-scrollbar-color-hover: var(--u-neutral-500);
118
- --u-scrollbar-track-color: transparent;
119
-
120
- /* Font Styles */
121
- --u-font-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
122
- --u-font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;
123
- --u-font-serif: 'Georgia', 'Times New Roman', Times, serif;
124
- --u-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;
125
- --u-font-modern: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
126
- --u-font-rounded: 'Nunito', 'Quicksand', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
1
+ :root {
2
+ color-scheme: light;
3
+
4
+ /* Neutral Colors */
5
+ --u-neutral-0: #FFFFFF;
6
+ --u-neutral-50: #FAFAFA;
7
+ --u-neutral-100: #F5F5F5;
8
+ --u-neutral-200: #EEEEEE;
9
+ --u-neutral-300: #E0E0E0;
10
+ --u-neutral-400: #BDBDBD;
11
+ --u-neutral-500: #9E9E9E;
12
+ --u-neutral-600: #757575;
13
+ --u-neutral-700: #616161;
14
+ --u-neutral-800: #424242;
15
+ --u-neutral-900: #212121;
16
+ --u-neutral-1000: #000000;
17
+
18
+ /* Blue Colors */
19
+ --u-blue-0: #E3F2FD;
20
+ --u-blue-100: #BBDEFB;
21
+ --u-blue-200: #90CAF9;
22
+ --u-blue-300: #64B5F6;
23
+ --u-blue-400: #42A5F5;
24
+ --u-blue-500: #2196F3;
25
+ --u-blue-600: #1E88E5;
26
+ --u-blue-700: #1976D2;
27
+ --u-blue-800: #1565C0;
28
+ --u-blue-900: #0D47A1;
29
+ --u-blue-1000: #062A5E;
30
+
31
+ /* Green Colors */
32
+ --u-green-0: #E8F5E9;
33
+ --u-green-100: #C8E6C9;
34
+ --u-green-200: #A5D6A7;
35
+ --u-green-300: #81C784;
36
+ --u-green-400: #66BB6A;
37
+ --u-green-500: #4CAF50;
38
+ --u-green-600: #43A047;
39
+ --u-green-700: #388E3C;
40
+ --u-green-800: #2E7D32;
41
+ --u-green-900: #1B5E20;
42
+ --u-green-1000: #0F3A12;
43
+
44
+ /* Yellow Colors */
45
+ --u-yellow-0: #FFFDE7;
46
+ --u-yellow-100: #FFF9C4;
47
+ --u-yellow-200: #FFF59D;
48
+ --u-yellow-300: #FFF176;
49
+ --u-yellow-400: #FFEE58;
50
+ --u-yellow-500: #FFEB3B;
51
+ --u-yellow-600: #FDD835;
52
+ --u-yellow-700: #FBC02D;
53
+ --u-yellow-800: #F9A825;
54
+ --u-yellow-900: #F57F17;
55
+ --u-yellow-1000: #8A4A00;
56
+
57
+ /* Red Colors */
58
+ --u-red-0: #FFEBEE;
59
+ --u-red-100: #FFCDD2;
60
+ --u-red-200: #EF9A9A;
61
+ --u-red-300: #E57373;
62
+ --u-red-400: #EF5350;
63
+ --u-red-500: #F44336;
64
+ --u-red-600: #E53935;
65
+ --u-red-700: #D32F2F;
66
+ --u-red-800: #C62828;
67
+ --u-red-900: #B71C1C;
68
+ --u-red-1000: #6B0F0F;
69
+
70
+ /* text Colors */
71
+ --u-txt-color: var(--u-neutral-900);
72
+ --u-txt-color-inverse: var(--u-neutral-0);
73
+ --u-txt-color-hover: var(--u-blue-600);
74
+ --u-txt-color-active: var(--u-blue-600);
75
+ --u-txt-color-disabled: var(--u-neutral-400);
76
+ --u-txt-color-weak: var(--u-neutral-700);
77
+ --u-txt-color-strong: var(--u-neutral-1000);
78
+
79
+ --u-link-txt-color: var(--u-blue-700);
80
+ --u-tooltip-txt-color: var(--u-neutral-0);
81
+
82
+ /* Icon Colors */
83
+ --u-icon-color: var(--u-neutral-700);
84
+ --u-icon-color-inverse: var(--u-neutral-0);
85
+ --u-icon-color-hover: var(--u-blue-600);
86
+ --u-icon-color-active: var(--u-blue-600);
87
+ --u-icon-color-disabled: var(--u-neutral-400);
88
+
89
+ /* border Colors */
90
+ --u-border-color: var(--u-neutral-300);
91
+ --u-border-color-weak: var(--u-neutral-200);
92
+ --u-border-color-strong: var(--u-neutral-400);
93
+
94
+ --u-input-border-color: var(--u-neutral-300);
95
+ --u-input-border-color-hover: var(--u-neutral-400);
96
+ --u-input-border-color-focus: var(--u-blue-600);
97
+ --u-input-border-color-invalid: var(--u-red-600);
98
+
99
+ /* background Colors */
100
+ --u-bg-color: var(--u-neutral-0);
101
+ --u-bg-color-inverse: var(--u-neutral-900);
102
+ --u-bg-color-hover: var(--u-neutral-100);
103
+ --u-bg-color-active: var(--u-neutral-200);
104
+ --u-bg-color-disabled: var(--u-neutral-50);
105
+
106
+ --u-input-bg-color: var(--u-neutral-0);
107
+ --u-panel-bg-color: var(--u-neutral-0);
108
+ --u-overlay-bg-color: rgba(0, 0, 0, 0.5);
109
+ --u-tooltip-bg-color: rgba(0, 0, 0, 0.75);
110
+
111
+ /* Shadow Colors */
112
+ --u-shadow-color-weaker: rgba(0, 0, 0, 0.04);
113
+ --u-shadow-color-weak: rgba(0, 0, 0, 0.08);
114
+ --u-shadow-color-normal: rgba(0, 0, 0, 0.12);
115
+ --u-shadow-color-strong: rgba(0, 0, 0, 0.16);
116
+ --u-shadow-color-stronger: rgba(0, 0, 0, 0.24);
117
+
118
+ /* Scrollbar Colors */
119
+ --u-scrollbar-color: var(--u-neutral-400);
120
+ --u-scrollbar-color-hover: var(--u-neutral-500);
121
+ --u-scrollbar-track-color: transparent;
122
+
123
+ /* Font Styles */
124
+ --u-font-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
125
+ --u-font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;
126
+ --u-font-serif: 'Georgia', 'Times New Roman', Times, serif;
127
+ --u-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;
128
+ --u-font-modern: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
129
+ --u-font-rounded: 'Nunito', 'Quicksand', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
127
130
  }
@@ -1,3 +1,3 @@
1
- const light = ":root {\r\n color-scheme: light;\r\n\r\n /* Neutral Colors */\r\n --u-neutral-0: #FFFFFF;\r\n --u-neutral-50: #FAFAFA;\r\n --u-neutral-100: #F5F5F5;\r\n --u-neutral-200: #EEEEEE;\r\n --u-neutral-300: #E0E0E0;\r\n --u-neutral-400: #BDBDBD;\r\n --u-neutral-500: #9E9E9E;\r\n --u-neutral-600: #757575;\r\n --u-neutral-700: #616161;\r\n --u-neutral-800: #424242;\r\n --u-neutral-900: #212121;\r\n --u-neutral-1000: #000000;\r\n\r\n /* Blue Colors */\r\n --u-blue-0: #E3F2FD;\r\n --u-blue-100: #BBDEFB;\r\n --u-blue-200: #90CAF9;\r\n --u-blue-300: #64B5F6;\r\n --u-blue-400: #42A5F5;\r\n --u-blue-500: #2196F3;\r\n --u-blue-600: #1E88E5;\r\n --u-blue-700: #1976D2;\r\n --u-blue-800: #1565C0;\r\n --u-blue-900: #0D47A1;\r\n --u-blue-1000: #062A5E;\r\n\r\n /* Green Colors */\r\n --u-green-0: #E8F5E9;\r\n --u-green-100: #C8E6C9;\r\n --u-green-200: #A5D6A7;\r\n --u-green-300: #81C784;\r\n --u-green-400: #66BB6A;\r\n --u-green-500: #4CAF50;\r\n --u-green-600: #43A047;\r\n --u-green-700: #388E3C;\r\n --u-green-800: #2E7D32;\r\n --u-green-900: #1B5E20;\r\n --u-green-1000: #0F3A12;\r\n\r\n /* Yellow Colors */\r\n --u-yellow-0: #FFFDE7;\r\n --u-yellow-100: #FFF9C4;\r\n --u-yellow-200: #FFF59D;\r\n --u-yellow-300: #FFF176;\r\n --u-yellow-400: #FFEE58;\r\n --u-yellow-500: #FFEB3B;\r\n --u-yellow-600: #FDD835;\r\n --u-yellow-700: #FBC02D;\r\n --u-yellow-800: #F9A825;\r\n --u-yellow-900: #F57F17;\r\n --u-yellow-1000: #8A4A00;\r\n\r\n /* Red Colors */\r\n --u-red-0: #FFEBEE;\r\n --u-red-100: #FFCDD2;\r\n --u-red-200: #EF9A9A;\r\n --u-red-300: #E57373;\r\n --u-red-400: #EF5350;\r\n --u-red-500: #F44336;\r\n --u-red-600: #E53935;\r\n --u-red-700: #D32F2F;\r\n --u-red-800: #C62828;\r\n --u-red-900: #B71C1C;\r\n --u-red-1000: #6B0F0F;\r\n\r\n /* Shadow Colors */\r\n --u-shadow-weak: rgba(0, 0, 0, 0.04);\r\n --u-shadow-normal: rgba(0, 0, 0, 0.08);\r\n --u-shadow-medium: rgba(0, 0, 0, 0.12);\r\n --u-shadow-strong: rgba(0, 0, 0, 0.16);\r\n --u-shadow-heavy: rgba(0, 0, 0, 0.24);\r\n\r\n /* background Colors */\r\n --u-bg-color: var(--u-neutral-0);\r\n --u-bg-color-inverse: var(--u-neutral-900);\r\n --u-bg-color-hover: var(--u-neutral-100);\r\n --u-bg-color-active: var(--u-neutral-200);\r\n --u-bg-color-disabled: var(--u-neutral-50);\r\n \r\n --u-panel-bg-color: var(--u-neutral-0);\r\n --u-overlay-bg-color: rgba(0, 0, 0, 0.5);\r\n --u-tooltip-bg-color: rgba(0, 0, 0, 0.75);\r\n\r\n /* border Colors */\r\n --u-border-color: var(--u-neutral-300);\r\n --u-border-color-weak: var(--u-neutral-200);\r\n --u-border-color-strong: var(--u-neutral-400);\r\n\r\n --u-input-border-color: var(--u-neutral-300);\r\n --u-input-border-hover: var(--u-neutral-400);\r\n --u-input-border-focus: var(--u-blue-600);\r\n\r\n /* text Colors */\r\n --u-text-color: var(--u-neutral-900);\r\n --u-text-color-inverse: var(--u-neutral-0);\r\n --u-text-color-hover: var(--u-blue-600);\r\n --u-text-color-active: var(--u-blue-600);\r\n --u-text-color-disabled: var(--u-neutral-400);\r\n \r\n --u-soft-text-color: var(--u-neutral-700);\r\n --u-link-text-color: var(--u-blue-700);\r\n --u-tooltip-text-color: var(--u-neutral-0);\r\n\r\n /* Icon Colors */\r\n --u-icon-color: var(--u-neutral-700);\r\n --u-icon-color-inverse: var(--u-neutral-0);\r\n --u-icon-color-hover: var(--u-blue-600);\r\n --u-icon-color-active: var(--u-blue-600);\r\n --u-icon-color-disabled: var(--u-neutral-400);\r\n\r\n /* Scrollbar Colors */\r\n --u-scrollbar-color: var(--u-neutral-400);\r\n --u-scrollbar-color-hover: var(--u-neutral-500);\r\n --u-scrollbar-track-color: transparent;\r\n\r\n /* Font Styles */\r\n --u-font-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';\r\n --u-font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;\r\n --u-font-serif: 'Georgia', 'Times New Roman', Times, serif;\r\n --u-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;\r\n --u-font-modern: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n --u-font-rounded: 'Nunito', 'Quicksand', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n}";
1
+ const light = ":root {\n color-scheme: light;\n\n /* Neutral Colors */\n --u-neutral-0: #FFFFFF;\n --u-neutral-50: #FAFAFA;\n --u-neutral-100: #F5F5F5;\n --u-neutral-200: #EEEEEE;\n --u-neutral-300: #E0E0E0;\n --u-neutral-400: #BDBDBD;\n --u-neutral-500: #9E9E9E;\n --u-neutral-600: #757575;\n --u-neutral-700: #616161;\n --u-neutral-800: #424242;\n --u-neutral-900: #212121;\n --u-neutral-1000: #000000;\n\n /* Blue Colors */\n --u-blue-0: #E3F2FD;\n --u-blue-100: #BBDEFB;\n --u-blue-200: #90CAF9;\n --u-blue-300: #64B5F6;\n --u-blue-400: #42A5F5;\n --u-blue-500: #2196F3;\n --u-blue-600: #1E88E5;\n --u-blue-700: #1976D2;\n --u-blue-800: #1565C0;\n --u-blue-900: #0D47A1;\n --u-blue-1000: #062A5E;\n\n /* Green Colors */\n --u-green-0: #E8F5E9;\n --u-green-100: #C8E6C9;\n --u-green-200: #A5D6A7;\n --u-green-300: #81C784;\n --u-green-400: #66BB6A;\n --u-green-500: #4CAF50;\n --u-green-600: #43A047;\n --u-green-700: #388E3C;\n --u-green-800: #2E7D32;\n --u-green-900: #1B5E20;\n --u-green-1000: #0F3A12;\n\n /* Yellow Colors */\n --u-yellow-0: #FFFDE7;\n --u-yellow-100: #FFF9C4;\n --u-yellow-200: #FFF59D;\n --u-yellow-300: #FFF176;\n --u-yellow-400: #FFEE58;\n --u-yellow-500: #FFEB3B;\n --u-yellow-600: #FDD835;\n --u-yellow-700: #FBC02D;\n --u-yellow-800: #F9A825;\n --u-yellow-900: #F57F17;\n --u-yellow-1000: #8A4A00;\n\n /* Red Colors */\n --u-red-0: #FFEBEE;\n --u-red-100: #FFCDD2;\n --u-red-200: #EF9A9A;\n --u-red-300: #E57373;\n --u-red-400: #EF5350;\n --u-red-500: #F44336;\n --u-red-600: #E53935;\n --u-red-700: #D32F2F;\n --u-red-800: #C62828;\n --u-red-900: #B71C1C;\n --u-red-1000: #6B0F0F;\n\n /* text Colors */\n --u-txt-color: var(--u-neutral-900);\n --u-txt-color-inverse: var(--u-neutral-0);\n --u-txt-color-hover: var(--u-blue-600);\n --u-txt-color-active: var(--u-blue-600);\n --u-txt-color-disabled: var(--u-neutral-400);\n --u-txt-color-weak: var(--u-neutral-700);\n --u-txt-color-strong: var(--u-neutral-1000);\n\n --u-link-txt-color: var(--u-blue-700);\n --u-tooltip-txt-color: var(--u-neutral-0);\n\n /* Icon Colors */\n --u-icon-color: var(--u-neutral-700);\n --u-icon-color-inverse: var(--u-neutral-0);\n --u-icon-color-hover: var(--u-blue-600);\n --u-icon-color-active: var(--u-blue-600);\n --u-icon-color-disabled: var(--u-neutral-400);\n\n /* border Colors */\n --u-border-color: var(--u-neutral-300);\n --u-border-color-weak: var(--u-neutral-200);\n --u-border-color-strong: var(--u-neutral-400);\n\n --u-input-border-color: var(--u-neutral-300);\n --u-input-border-color-hover: var(--u-neutral-400);\n --u-input-border-color-focus: var(--u-blue-600);\n --u-input-border-color-invalid: var(--u-red-600);\n\n /* background Colors */\n --u-bg-color: var(--u-neutral-0);\n --u-bg-color-inverse: var(--u-neutral-900);\n --u-bg-color-hover: var(--u-neutral-100);\n --u-bg-color-active: var(--u-neutral-200);\n --u-bg-color-disabled: var(--u-neutral-50);\n \n --u-input-bg-color: var(--u-neutral-0);\n --u-panel-bg-color: var(--u-neutral-0);\n --u-overlay-bg-color: rgba(0, 0, 0, 0.5);\n --u-tooltip-bg-color: rgba(0, 0, 0, 0.75);\n\n /* Shadow Colors */\n --u-shadow-color-weaker: rgba(0, 0, 0, 0.04);\n --u-shadow-color-weak: rgba(0, 0, 0, 0.08);\n --u-shadow-color-normal: rgba(0, 0, 0, 0.12);\n --u-shadow-color-strong: rgba(0, 0, 0, 0.16);\n --u-shadow-color-stronger: rgba(0, 0, 0, 0.24);\n\n /* Scrollbar Colors */\n --u-scrollbar-color: var(--u-neutral-400);\n --u-scrollbar-color-hover: var(--u-neutral-500);\n --u-scrollbar-track-color: transparent;\n\n /* Font Styles */\n --u-font-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';\n --u-font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;\n --u-font-serif: 'Georgia', 'Times New Roman', Times, serif;\n --u-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;\n --u-font-modern: 'Inter', 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n --u-font-rounded: 'Nunito', 'Quicksand', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n}";
2
2
 
3
3
  export { light as default };
@@ -2,10 +2,10 @@ import { css } from 'lit';
2
2
 
3
3
  const styles = css`
4
4
  :host {
5
+ color: var(--u-txt-color, inherit);
6
+ font-family: var(--u-font-base, inherit);
5
7
  box-sizing: border-box;
6
8
  overflow-wrap: anywhere;
7
- color: var(--u-text-color, inherit);
8
- font-family: var(--u-font-base, inherit);
9
9
  }
10
10
 
11
11
  :host *,
@@ -22,7 +22,6 @@ const styles = css`
22
22
  .scrollable {
23
23
  scrollbar-width: thin;
24
24
  scrollbar-color: var(--u-scrollbar-color) var(--u-scrollbar-track-color);
25
- scrollbar-gutter: stable;
26
25
  }
27
26
  `;
28
27
 
@@ -14,7 +14,7 @@ export declare class Alert extends BaseElement {
14
14
  /** 상태 (warning, error, info, success, notice) */
15
15
  type: AlertType;
16
16
  /** 타이틀 라벨 */
17
- label?: string;
17
+ heading?: string;
18
18
  /** 본문 내용 */
19
19
  content?: string;
20
20
  /** 본문 최소 행 수 */
@@ -25,12 +25,16 @@ export declare class Alert extends BaseElement {
25
25
  duration: number;
26
26
  protected updated(changedProperties: PropertyValues): void;
27
27
  render(): import('lit-html').TemplateResult<1>;
28
- /** Alert를 표시합니다. */
28
+ /**
29
+ * Alert를 표시합니다.
30
+ */
29
31
  show(): Promise<void>;
30
- /** Alert를 숨깁니다. */
32
+ /**
33
+ * Alert를 숨깁니다.
34
+ */
31
35
  hide(): Promise<void>;
32
36
  /** Alert 타입에 따른 아이콘 이름을 반환합니다. */
33
- private getIcon;
37
+ private getIconName;
34
38
  /** open 속성 변경에 따른 상태 업데이트를 처리합니다. */
35
39
  private updateOpenState;
36
40
  }
@@ -3,6 +3,7 @@ import { property } from 'lit/decorators.js';
3
3
  import { BaseElement } from '../BaseElement.js';
4
4
  import { Icon } from '../icon/Icon.js';
5
5
  import { styles } from './Alert.styles.js';
6
+ import { unsafeHTML } from 'lit/directives/unsafe-html.js';
6
7
 
7
8
  var __defProp = Object.defineProperty;
8
9
  var __decorateClass = (decorators, target, key, kind) => {
@@ -44,34 +45,42 @@ class Alert extends BaseElement {
44
45
  }
45
46
  render() {
46
47
  return html`
47
- <div class="container">
48
- <div class="header">
49
- <u-icon class="icon"
50
- name=${this.getIcon(this.type)}
48
+ <div class="container" part="base">
49
+ <div class="header" part="header">
50
+ <u-icon class="icon" part="icon"
51
+ .library=${"internal"}
52
+ .name=${this.getIconName(this.type)}
51
53
  ></u-icon>
52
- <div class="title">
53
- ${this.label || this.type.toUpperCase()}
54
+ <div class="title" part="title">
55
+ ${this.heading || this.type.toUpperCase()}
54
56
  </div>
55
- <u-icon class="close-btn"
56
- name="x-lg"
57
+ <u-icon class="close-btn" part="close-btn"
58
+ .library=${"internal"}
59
+ .name=${"x-lg"}
57
60
  @click=${this.hide}
58
61
  ></u-icon>
59
62
  </div>
60
- <div class="content scrollable">
61
- ${this.content || html`<slot></slot>`}
63
+ <div class="content scrollable" part="content">
64
+ ${this.content ? unsafeHTML(this.content) : html`<slot></slot>`}
65
+ </div>
66
+ <div class="footer" part="footer">
67
+ <slot name="footer"></slot>
62
68
  </div>
63
- <div class="footer"></div>
64
69
  </div>
65
70
  `;
66
71
  }
67
- /** Alert를 표시합니다. */
72
+ /**
73
+ * Alert를 표시합니다.
74
+ */
68
75
  async show() {
69
76
  await this.updateComplete;
70
77
  requestAnimationFrame(() => {
71
78
  this.open = true;
72
79
  });
73
80
  }
74
- /** Alert를 숨깁니다. */
81
+ /**
82
+ * Alert를 숨깁니다.
83
+ */
75
84
  async hide() {
76
85
  await this.updateComplete;
77
86
  requestAnimationFrame(() => {
@@ -79,7 +88,7 @@ class Alert extends BaseElement {
79
88
  });
80
89
  }
81
90
  /** Alert 타입에 따른 아이콘 이름을 반환합니다. */
82
- getIcon(type) {
91
+ getIconName(type) {
83
92
  switch (type) {
84
93
  case "error":
85
94
  return "exclamation-circle-fill";
@@ -118,7 +127,7 @@ __decorateClass([
118
127
  ], Alert.prototype, "type");
119
128
  __decorateClass([
120
129
  property({ type: String })
121
- ], Alert.prototype, "label");
130
+ ], Alert.prototype, "heading");
122
131
  __decorateClass([
123
132
  property({ type: String })
124
133
  ], Alert.prototype, "content");
@@ -1,64 +1,60 @@
1
1
  import { css } from 'lit';
2
2
 
3
3
  const styles = css`
4
+ :host {
5
+ --icon-primary-color: var(--u-neutral-700);
6
+ --min-content-rows: 1;
7
+ --max-content-rows: 3;
8
+ }
9
+
4
10
  :host {
5
11
  display: block;
6
12
  min-width: 300px;
7
13
  max-width: 500px;
8
-
9
- background-color: var(--alert-bg-color);
10
- border: 1px solid var(--alert-border-color);
14
+
11
15
  border-radius: 8px;
12
- box-shadow: 0 4px 12px var(--u-shadow-medium), 0 2px 4px var(--u-shadow-weak);
16
+ box-shadow: 0 4px 12px var(--u-shadow-color-normal);
13
17
 
14
18
  opacity: 0;
15
19
  transform: scale(0.8);
16
20
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
17
21
  pointer-events: none;
18
-
19
- --min-content-rows: 1;
20
- --max-content-rows: 3;
21
-
22
- --alert-icon-color: var(--u-neutral-700);
23
- --alert-bg-color: var(--u-neutral-100);
24
- --alert-border-color: var(--u-neutral-300);
25
22
  }
26
23
  :host([open]) {
27
24
  opacity: 1;
28
25
  transform: scale(1);
29
26
  pointer-events: auto;
30
27
  }
31
-
32
28
  :host([type="error"]) {
33
- --alert-icon-color: var(--u-red-700);
34
- --alert-bg-color: var(--u-red-0);
35
- --alert-border-color: var(--u-red-100);
29
+ --icon-primary-color: var(--u-red-700);
30
+ border-color: var(--u-red-300);
31
+ background-color: var(--u-red-200);
36
32
  }
37
33
  :host([type="warning"]) {
38
- --alert-icon-color: var(--u-yellow-700);
39
- --alert-bg-color: var(--u-yellow-0);
40
- --alert-border-color: var(--u-yellow-100);
34
+ --icon-primary-color: var(--u-yellow-700);
35
+ border-color: var(--u-yellow-300);
36
+ background-color: var(--u-yellow-200);
41
37
  }
42
38
  :host([type="info"]) {
43
- --alert-icon-color: var(--u-blue-700);
44
- --alert-bg-color: var(--u-blue-0);
45
- --alert-border-color: var(--u-blue-100);
39
+ --icon-primary-color: var(--u-blue-700);
40
+ border-color: var(--u-blue-300);
41
+ background-color: var(--u-blue-200);
46
42
  }
47
43
  :host([type="success"]) {
48
- --alert-icon-color: var(--u-green-700);
49
- --alert-bg-color: var(--u-green-0);
50
- --alert-border-color: var(--u-green-100);
44
+ --icon-primary-color: var(--u-green-700);
45
+ border-color: var(--u-green-300);
46
+ background-color: var(--u-green-200);
51
47
  }
52
48
  :host([type="notice"]) {
53
- --alert-icon-color: var(--u-neutral-700);
54
- --alert-bg-color: var(--u-neutral-100);
55
- --alert-border-color: var(--u-neutral-300);
49
+ --icon-primary-color: var(--u-neutral-700);
50
+ border-color: var(--u-neutral-300);
51
+ background-color: var(--u-neutral-200);
56
52
  }
57
53
 
58
54
  .container {
59
55
  display: flex;
60
56
  flex-direction: column;
61
- padding: 8px 12px 8px 12px;
57
+ padding: 8px 12px;
62
58
  overflow: hidden;
63
59
  }
64
60
 
@@ -69,23 +65,21 @@ const styles = css`
69
65
  align-items: center;
70
66
  gap: 12px;
71
67
  margin-bottom: 4px;
68
+ font-size: 16px;
72
69
  user-select: none;
73
70
  }
74
71
  .header .icon {
75
72
  flex-shrink: 0;
76
- font-size: 20px;
77
- color: var(--alert-icon-color);
78
- filter: drop-shadow(0 1px 2px var(--u-shadow-weak));
73
+ color: var(--icon-primary-color);
79
74
  }
80
75
  .header .title {
81
- flex: 1;
82
- font-size: 16px;
76
+ flex-grow: 1;
83
77
  font-weight: 600;
84
- line-height: 1.4;
78
+ line-height: 2;
85
79
  }
86
80
  .header .close-btn {
87
81
  flex-shrink: 0;
88
- font-size: 18px;
82
+ color: var(--u-icon-color);
89
83
  cursor: pointer;
90
84
  }
91
85
  .header .close-btn:hover {
@@ -98,16 +92,15 @@ const styles = css`
98
92
 
99
93
  .content {
100
94
  font-size: 14px;
101
- font-weight: 400;
102
- color: var(--u-soft-text-color);
103
- line-height: 1.6;
95
+ font-weight: 300;
96
+ line-height: 1.5;
104
97
  min-height: calc(1.6em * var(--min-content-rows));
105
98
  max-height: calc(1.6em * var(--max-content-rows));
106
99
  overflow-y: auto;
107
100
  }
108
101
 
109
102
  .footer {
110
- display: none;
103
+ display: inline-block;
111
104
  }
112
105
  `;
113
106
 
@@ -0,0 +1,5 @@
1
+ import { Alert } from './Alert.js';
2
+
3
+ Alert.define("u-alert");
4
+
5
+ export { Alert };
@@ -29,13 +29,15 @@ class Button extends BaseElement {
29
29
  }
30
30
  render() {
31
31
  return html`
32
- <button part="base" ?disabled=${this.disabled || this.loading}>
32
+ <button part="base"
33
+ ?disabled=${this.disabled || this.loading}>
33
34
  <slot name="prefix"></slot>
34
35
  <slot></slot>
35
36
  <slot name="suffix"></slot>
36
37
  </button>
37
38
 
38
- <div class="overlay" ?hidden=${!this.loading}>
39
+ <div class="overlay" part="overlay"
40
+ ?hidden=${!this.loading}>
39
41
  <u-spinner></u-spinner>
40
42
  </div>
41
43
  `;