@x-plat/design-system 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/components/Accordion/index.css +10 -3
  2. package/dist/components/Alert/index.css +7 -0
  3. package/dist/components/AutoResizeTextArea/index.css +3 -0
  4. package/dist/components/Avatar/index.css +13 -1
  5. package/dist/components/Badge/index.css +13 -2
  6. package/dist/components/Box/index.css +8 -5
  7. package/dist/components/Breadcrumb/index.css +5 -1
  8. package/dist/components/Button/index.css +10 -1
  9. package/dist/components/Calendar/index.cjs +1 -1
  10. package/dist/components/Calendar/index.css +10 -6
  11. package/dist/components/Calendar/index.js +1 -1
  12. package/dist/components/CardTab/index.css +14 -2
  13. package/dist/components/Chart/index.css +32 -11
  14. package/dist/components/ChatInput/index.css +6 -0
  15. package/dist/components/CheckBox/index.css +10 -1
  16. package/dist/components/Chip/index.css +12 -0
  17. package/dist/components/DatePicker/index.css +51 -12
  18. package/dist/components/Drawer/index.css +14 -7
  19. package/dist/components/Dropdown/index.css +5 -1
  20. package/dist/components/Editor/index.css +49 -10
  21. package/dist/components/EmptyState/index.css +9 -2
  22. package/dist/components/FileUpload/index.css +9 -2
  23. package/dist/components/HtmlTypeWriter/index.cjs +2 -0
  24. package/dist/components/HtmlTypeWriter/index.css +13 -1
  25. package/dist/components/HtmlTypeWriter/index.d.cts +3 -3
  26. package/dist/components/HtmlTypeWriter/index.d.ts +3 -3
  27. package/dist/components/HtmlTypeWriter/index.js +1 -0
  28. package/dist/components/ImageSelector/index.css +8 -0
  29. package/dist/components/Input/index.css +12 -0
  30. package/dist/components/Modal/index.css +1 -1
  31. package/dist/components/Pagination/index.css +25 -1
  32. package/dist/components/PopOver/index.css +1 -1
  33. package/dist/components/Progress/index.css +5 -2
  34. package/dist/components/Radio/index.css +9 -0
  35. package/dist/components/Select/index.css +20 -3
  36. package/dist/components/Skeleton/index.cjs +6 -6
  37. package/dist/components/Skeleton/index.js +6 -6
  38. package/dist/components/Steps/index.css +14 -4
  39. package/dist/components/Switch/index.css +1 -1
  40. package/dist/components/Tab/index.css +16 -1
  41. package/dist/components/Table/index.cjs +4 -1
  42. package/dist/components/Table/index.css +12 -0
  43. package/dist/components/Table/index.d.cts +2 -0
  44. package/dist/components/Table/index.d.ts +2 -0
  45. package/dist/components/Table/index.js +4 -1
  46. package/dist/components/Tag/index.css +12 -0
  47. package/dist/components/TextArea/index.css +9 -0
  48. package/dist/components/Toast/index.css +8 -1
  49. package/dist/components/Tooltip/index.css +8 -4
  50. package/dist/components/Video/index.css +31 -20
  51. package/dist/components/index.cjs +253 -248
  52. package/dist/components/index.css +532 -147
  53. package/dist/components/index.d.cts +3 -3
  54. package/dist/components/index.d.ts +3 -3
  55. package/dist/components/index.js +226 -222
  56. package/dist/index.cjs +253 -248
  57. package/dist/index.css +535 -150
  58. package/dist/index.d.cts +3 -3
  59. package/dist/index.d.ts +3 -3
  60. package/dist/index.js +226 -222
  61. package/dist/layout/Header/index.css +2 -2
  62. package/dist/layout/Layout/index.css +1 -1
  63. package/dist/layout/index.css +43 -3
  64. package/guidelines/components/accordion.md +1 -1
  65. package/guidelines/components/avatar.md +1 -1
  66. package/guidelines/components/card.md +1 -1
  67. package/guidelines/components/chart.md +1 -1
  68. package/guidelines/components/data-display.md +4 -4
  69. package/guidelines/components/dropdown.md +1 -1
  70. package/guidelines/components/file-media.md +3 -3
  71. package/guidelines/components/html-typewriter.md +1 -1
  72. package/guidelines/components/navigation.md +144 -20
  73. package/guidelines/components/swiper.md +2 -2
  74. package/package.json +1 -1
@@ -7,12 +7,20 @@
7
7
  .lib-xplat-pagination.sm .dots {
8
8
  width: var(--spacing-control-height-xs);
9
9
  height: var(--spacing-control-height-xs);
10
+ font-family: var(--semantic-typo-caption-2-r-font);
10
11
  font-size: var(--semantic-typo-caption-2-r-size);
12
+ line-height: var(--semantic-typo-caption-2-r-lh);
13
+ font-weight: var(--semantic-typo-caption-2-r-weight);
14
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
11
15
  }
12
16
  .lib-xplat-pagination.sm .page-btn {
13
17
  min-width: var(--spacing-control-height-xs);
14
18
  height: var(--spacing-control-height-xs);
19
+ font-family: var(--semantic-typo-caption-2-r-font);
15
20
  font-size: var(--semantic-typo-caption-2-r-size);
21
+ line-height: var(--semantic-typo-caption-2-r-lh);
22
+ font-weight: var(--semantic-typo-caption-2-r-weight);
23
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
16
24
  }
17
25
  .lib-xplat-pagination.sm .page-btn svg {
18
26
  font-size: var(--semantic-typo-caption-1-r-size);
@@ -20,12 +28,20 @@
20
28
  .lib-xplat-pagination.lg .dots {
21
29
  width: var(--spacing-control-height-md);
22
30
  height: var(--spacing-control-height-md);
31
+ font-family: var(--semantic-typo-label-2-m-font);
23
32
  font-size: var(--semantic-typo-label-2-m-size);
33
+ line-height: var(--semantic-typo-label-2-m-lh);
34
+ font-weight: var(--semantic-typo-label-2-m-weight);
35
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
24
36
  }
25
37
  .lib-xplat-pagination.lg .page-btn {
26
38
  min-width: var(--spacing-control-height-md);
27
39
  height: var(--spacing-control-height-md);
40
+ font-family: var(--semantic-typo-label-2-m-font);
28
41
  font-size: var(--semantic-typo-label-2-m-size);
42
+ line-height: var(--semantic-typo-label-2-m-lh);
43
+ font-weight: var(--semantic-typo-label-2-m-weight);
44
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
29
45
  }
30
46
  .lib-xplat-pagination.lg .page-btn svg {
31
47
  font-size: var(--semantic-typo-heading-1-m-size);
@@ -36,7 +52,11 @@
36
52
  justify-content: center;
37
53
  width: var(--spacing-control-height-sm);
38
54
  height: var(--spacing-control-height-sm);
55
+ font-family: var(--semantic-typo-caption-1-r-font);
39
56
  font-size: var(--semantic-typo-caption-1-r-size);
57
+ line-height: var(--semantic-typo-caption-1-r-lh);
58
+ font-weight: var(--semantic-typo-caption-1-r-weight);
59
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
40
60
  color: var(--semantic-text-tertiary);
41
61
  user-select: none;
42
62
  }
@@ -50,7 +70,11 @@
50
70
  border: none;
51
71
  border-radius: var(--spacing-radius-md);
52
72
  background: none;
73
+ font-family: var(--semantic-typo-caption-1-r-font);
53
74
  font-size: var(--semantic-typo-caption-1-r-size);
75
+ line-height: var(--semantic-typo-caption-1-r-lh);
76
+ font-weight: var(--semantic-typo-caption-1-r-weight);
77
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
54
78
  cursor: pointer;
55
79
  color: var(--semantic-text-secondary);
56
80
  transition: background-color 0.2s, color 0.2s;
@@ -64,7 +88,7 @@
64
88
  }
65
89
  .lib-xplat-pagination .page-btn.active {
66
90
  color: var(--semantic-text-inverse);
67
- font-weight: 600;
91
+ font-weight: var(--semantic-typo-caption-1-sb-weight);
68
92
  }
69
93
  .lib-xplat-pagination .page-btn svg {
70
94
  font-size: var(--semantic-typo-label-2-m-size);
@@ -13,7 +13,7 @@
13
13
  transition: transform 0.2s ease, opacity 0.2s ease;
14
14
  background: var(--semantic-surface-neutral-primary);
15
15
  border-radius: var(--spacing-radius-md);
16
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
16
+ box-shadow: var(--semantic-shadow-md);
17
17
  opacity: 0;
18
18
  transform: scale(0.8);
19
19
  }
@@ -41,8 +41,11 @@
41
41
  background-color: var(--semantic-surface-info-default);
42
42
  }
43
43
  .lib-xplat-progress .label {
44
- font-size: var(--semantic-typo-caption-2-r-size);
45
- font-weight: 500;
44
+ font-family: var(--semantic-typo-caption-2-m-font);
45
+ font-size: var(--semantic-typo-caption-2-m-size);
46
+ line-height: var(--semantic-typo-caption-2-m-lh);
47
+ font-weight: var(--semantic-typo-caption-2-m-weight);
48
+ letter-spacing: var(--semantic-typo-caption-2-m-ls);
46
49
  color: var(--semantic-text-secondary);
47
50
  min-width: 36px;
48
51
  text-align: right;
@@ -20,8 +20,11 @@
20
20
  height: var(--spacing-space-2);
21
21
  }
22
22
  .lib-xplat-radio.sm > span {
23
+ font-family: var(--semantic-typo-caption-1-r-font);
23
24
  font-size: var(--semantic-typo-caption-1-r-size);
24
25
  line-height: var(--semantic-typo-caption-1-r-lh);
26
+ font-weight: var(--semantic-typo-caption-1-r-weight);
27
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
25
28
  }
26
29
  .lib-xplat-radio.md > .circle {
27
30
  width: var(--spacing-space-5);
@@ -29,8 +32,11 @@
29
32
  margin-top: calc((var(--semantic-typo-label-2-m-lh) - var(--spacing-space-5)) / 2);
30
33
  }
31
34
  .lib-xplat-radio.md > span {
35
+ font-family: var(--semantic-typo-label-2-m-font);
32
36
  font-size: var(--semantic-typo-label-2-m-size);
33
37
  line-height: var(--semantic-typo-label-2-m-lh);
38
+ font-weight: var(--semantic-typo-label-2-m-weight);
39
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
34
40
  }
35
41
  .lib-xplat-radio.lg > .circle {
36
42
  width: var(--spacing-space-6);
@@ -41,8 +47,11 @@
41
47
  height: var(--spacing-space-4);
42
48
  }
43
49
  .lib-xplat-radio.lg > span {
50
+ font-family: var(--semantic-typo-label-1-m-font);
44
51
  font-size: var(--semantic-typo-label-1-m-size);
45
52
  line-height: var(--semantic-typo-label-1-m-lh);
53
+ font-weight: var(--semantic-typo-label-1-m-weight);
54
+ letter-spacing: var(--semantic-typo-label-1-m-ls);
46
55
  }
47
56
  .lib-xplat-radio > .circle {
48
57
  border: 2px solid var(--semantic-border-tertiary);
@@ -11,20 +11,29 @@
11
11
  .lib-xplat-select.sm .select-trigger {
12
12
  height: var(--spacing-control-height-sm);
13
13
  padding: 0 var(--spacing-space-2);
14
+ font-family: var(--semantic-typo-caption-1-r-font);
14
15
  font-size: var(--semantic-typo-caption-1-r-size);
15
16
  line-height: var(--semantic-typo-caption-1-r-lh);
17
+ font-weight: var(--semantic-typo-caption-1-r-weight);
18
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
16
19
  }
17
20
  .lib-xplat-select.md .select-trigger {
18
21
  height: var(--spacing-control-height-md);
19
22
  padding: 0 var(--spacing-space-3);
23
+ font-family: var(--semantic-typo-label-2-m-font);
20
24
  font-size: var(--semantic-typo-label-2-m-size);
21
25
  line-height: var(--semantic-typo-label-2-m-lh);
26
+ font-weight: var(--semantic-typo-label-2-m-weight);
27
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
22
28
  }
23
29
  .lib-xplat-select.lg .select-trigger {
24
30
  height: var(--spacing-control-height-lg);
25
31
  padding: 0 var(--spacing-space-4);
32
+ font-family: var(--semantic-typo-label-1-m-font);
26
33
  font-size: var(--semantic-typo-label-1-m-size);
27
34
  line-height: var(--semantic-typo-label-1-m-lh);
35
+ font-weight: var(--semantic-typo-label-1-m-weight);
36
+ letter-spacing: var(--semantic-typo-label-1-m-ls);
28
37
  }
29
38
  .lib-xplat-select .select-trigger {
30
39
  cursor: pointer;
@@ -101,7 +110,7 @@
101
110
  padding: var(--spacing-space-1) 0;
102
111
  border-radius: var(--spacing-radius-md);
103
112
  background-color: var(--semantic-surface-neutral-primary);
104
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
113
+ box-shadow: var(--semantic-shadow-md);
105
114
  cursor: default;
106
115
  max-height: 220px;
107
116
  overflow-y: auto;
@@ -132,25 +141,33 @@
132
141
  }
133
142
  .lib-xplat-select-content.sm .select-item {
134
143
  padding: var(--spacing-space-2) var(--spacing-space-2);
144
+ font-family: var(--semantic-typo-caption-1-r-font);
135
145
  font-size: var(--semantic-typo-caption-1-r-size);
136
146
  line-height: var(--semantic-typo-caption-1-r-lh);
147
+ font-weight: var(--semantic-typo-caption-1-r-weight);
148
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
137
149
  }
138
150
  .lib-xplat-select-content.lg .select-item {
139
151
  padding: var(--spacing-space-2) var(--spacing-space-4);
152
+ font-family: var(--semantic-typo-label-1-m-font);
140
153
  font-size: var(--semantic-typo-label-1-m-size);
141
154
  line-height: var(--semantic-typo-label-1-m-lh);
155
+ font-weight: var(--semantic-typo-label-1-m-weight);
156
+ letter-spacing: var(--semantic-typo-label-1-m-ls);
142
157
  }
143
158
  .lib-xplat-select-content .select-item {
144
159
  padding: var(--spacing-space-2) var(--spacing-space-3);
160
+ font-family: var(--semantic-typo-label-2-m-font);
145
161
  font-size: var(--semantic-typo-label-2-m-size);
146
162
  line-height: var(--semantic-typo-label-2-m-lh);
147
- font-weight: var(--semantic-typo-label-1-m-weight);
163
+ font-weight: var(--semantic-typo-label-2-m-weight);
164
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
148
165
  cursor: pointer;
149
166
  transition: background-color 0.15s ease;
150
167
  outline: none;
151
168
  }
152
169
  .lib-xplat-select-content .select-item.is-selected {
153
- font-weight: var(--semantic-typo-label-1-sb-weight);
170
+ font-weight: var(--semantic-typo-label-2-sb-weight);
154
171
  }
155
172
  .lib-xplat-select-content .select-item:hover:not(.disabled) {
156
173
  background-color: var(--semantic-surface-neutral-secondary);
@@ -43,12 +43,12 @@ var clsx_default = clsx;
43
43
  // src/components/Skeleton/Skeleton.tsx
44
44
  var import_jsx_runtime = require("react/jsx-runtime");
45
45
  var SIZE_MAP = {
46
- xs: "var(--spacing-size-1)",
47
- sm: "var(--spacing-size-2)",
48
- md: "var(--spacing-size-4)",
49
- lg: "var(--spacing-size-8)",
50
- xl: "var(--spacing-size-12)",
51
- "2xl": "var(--spacing-size-16)",
46
+ xs: "var(--spacing-space-1)",
47
+ sm: "var(--spacing-space-2)",
48
+ md: "var(--spacing-space-4)",
49
+ lg: "var(--spacing-space-8)",
50
+ xl: "var(--spacing-space-12)",
51
+ "2xl": "var(--spacing-space-16)",
52
52
  full: "100%"
53
53
  };
54
54
  var Skeleton = (props) => {
@@ -17,12 +17,12 @@ var clsx_default = clsx;
17
17
  // src/components/Skeleton/Skeleton.tsx
18
18
  import { jsx } from "react/jsx-runtime";
19
19
  var SIZE_MAP = {
20
- xs: "var(--spacing-size-1)",
21
- sm: "var(--spacing-size-2)",
22
- md: "var(--spacing-size-4)",
23
- lg: "var(--spacing-size-8)",
24
- xl: "var(--spacing-size-12)",
25
- "2xl": "var(--spacing-size-16)",
20
+ xs: "var(--spacing-space-1)",
21
+ sm: "var(--spacing-space-2)",
22
+ md: "var(--spacing-space-4)",
23
+ lg: "var(--spacing-space-8)",
24
+ xl: "var(--spacing-space-12)",
25
+ "2xl": "var(--spacing-space-16)",
26
26
  full: "100%"
27
27
  };
28
28
  var Skeleton = (props) => {
@@ -27,8 +27,11 @@
27
27
  display: flex;
28
28
  align-items: center;
29
29
  justify-content: center;
30
- font-size: var(--semantic-typo-caption-1-r-size);
31
- font-weight: 600;
30
+ font-family: var(--semantic-typo-caption-1-sb-font);
31
+ font-size: var(--semantic-typo-caption-1-sb-size);
32
+ line-height: var(--semantic-typo-caption-1-sb-lh);
33
+ font-weight: var(--semantic-typo-caption-1-sb-weight);
34
+ letter-spacing: var(--semantic-typo-caption-1-sb-ls);
32
35
  flex-shrink: 0;
33
36
  z-index: 1;
34
37
  transition: background-color 0.2s, color 0.2s;
@@ -44,12 +47,19 @@
44
47
  text-align: center;
45
48
  }
46
49
  .lib-xplat-steps .step-title {
47
- font-size: var(--semantic-typo-caption-1-r-size);
48
- font-weight: 500;
50
+ font-family: var(--semantic-typo-caption-1-m-font);
51
+ font-size: var(--semantic-typo-caption-1-m-size);
52
+ line-height: var(--semantic-typo-caption-1-m-lh);
53
+ font-weight: var(--semantic-typo-caption-1-m-weight);
54
+ letter-spacing: var(--semantic-typo-caption-1-m-ls);
49
55
  color: var(--semantic-text-primary);
50
56
  }
51
57
  .lib-xplat-steps .step-description {
58
+ font-family: var(--semantic-typo-caption-2-r-font);
52
59
  font-size: var(--semantic-typo-caption-2-r-size);
60
+ line-height: var(--semantic-typo-caption-2-r-lh);
61
+ font-weight: var(--semantic-typo-caption-2-r-weight);
62
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
53
63
  color: var(--semantic-text-tertiary);
54
64
  margin-top: 2px;
55
65
  }
@@ -98,6 +98,6 @@
98
98
  transform: translateY(-50%);
99
99
  background-color: var(--semantic-surface-neutral-primary);
100
100
  border-radius: var(--spacing-radius-full);
101
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
101
+ box-shadow: var(--semantic-shadow-sm);
102
102
  transition: left 0.25s;
103
103
  }
@@ -14,15 +14,27 @@
14
14
  }
15
15
  .lib-xplat-tab.sm {
16
16
  height: var(--spacing-control-height-sm);
17
+ font-family: var(--semantic-typo-caption-1-r-font);
17
18
  font-size: var(--semantic-typo-caption-1-r-size);
19
+ line-height: var(--semantic-typo-caption-1-r-lh);
20
+ font-weight: var(--semantic-typo-caption-1-r-weight);
21
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
18
22
  }
19
23
  .lib-xplat-tab.md {
20
24
  height: var(--spacing-control-height-md);
25
+ font-family: var(--semantic-typo-label-2-m-font);
21
26
  font-size: var(--semantic-typo-label-2-m-size);
27
+ line-height: var(--semantic-typo-label-2-m-lh);
28
+ font-weight: var(--semantic-typo-label-2-m-weight);
29
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
22
30
  }
23
31
  .lib-xplat-tab.lg {
24
32
  height: var(--spacing-control-height-lg);
33
+ font-family: var(--semantic-typo-label-1-m-font);
25
34
  font-size: var(--semantic-typo-label-1-m-size);
35
+ line-height: var(--semantic-typo-label-1-m-lh);
36
+ font-weight: var(--semantic-typo-label-1-m-weight);
37
+ letter-spacing: var(--semantic-typo-label-1-m-ls);
26
38
  }
27
39
  .lib-xplat-tab.type-default {
28
40
  width: 100%;
@@ -60,8 +72,11 @@
60
72
  justify-content: center;
61
73
  white-space: nowrap;
62
74
  padding: 0 var(--spacing-space-3);
75
+ font-family: var(--semantic-typo-label-2-m-font);
63
76
  font-size: var(--semantic-typo-label-2-m-size);
64
- font-weight: 500;
77
+ line-height: var(--semantic-typo-label-2-m-lh);
78
+ font-weight: var(--semantic-typo-label-2-m-weight);
79
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
65
80
  height: 100%;
66
81
  background: none;
67
82
  border: none;
@@ -133,6 +133,7 @@ var TableCell = import_react4.default.memo((props) => {
133
133
  isSticky = false,
134
134
  width,
135
135
  nowrap = false,
136
+ scope = "col",
136
137
  onClick
137
138
  } = props;
138
139
  const { registerStickyCell, stickyCells } = useTableRowContext();
@@ -164,7 +165,8 @@ var TableCell = import_react4.default.memo((props) => {
164
165
  }
165
166
  return () => observer.disconnect();
166
167
  }, [isSticky, registerStickyCell, calculateLeft]);
167
- const CellTag = cellRef.current?.tagName === "TH" ? "th" : "td";
168
+ const isHeaderCell = headContext !== null;
169
+ const CellTag = isHeaderCell ? "th" : "td";
168
170
  const isLastSticky = isSticky && stickyCells[stickyCells.length - 1] === cellRef;
169
171
  const enableHover = headContext && headContext.cellHover;
170
172
  return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
@@ -179,6 +181,7 @@ var TableCell = import_react4.default.memo((props) => {
179
181
  enableHover && "cell-hover",
180
182
  nowrap && "nowrap"
181
183
  ),
184
+ scope: isHeaderCell ? scope : void 0,
182
185
  style: {
183
186
  ...isSticky ? { left } : null,
184
187
  ...width != null ? { width: typeof width === "number" ? `${width}px` : width } : null
@@ -15,21 +15,33 @@
15
15
  .lib-xplat-table-wrapper.sm > .lib-xplat-table > tbody > tr > th,
16
16
  .lib-xplat-table-wrapper.sm > .lib-xplat-table > tbody > tr > td {
17
17
  padding: var(--spacing-space-1) var(--spacing-space-2);
18
+ font-family: var(--semantic-typo-caption-2-r-font);
18
19
  font-size: var(--semantic-typo-caption-2-r-size);
20
+ line-height: var(--semantic-typo-caption-2-r-lh);
21
+ font-weight: var(--semantic-typo-caption-2-r-weight);
22
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
19
23
  }
20
24
  .lib-xplat-table-wrapper.md > .lib-xplat-table > thead > tr > th,
21
25
  .lib-xplat-table-wrapper.md > .lib-xplat-table > thead > tr > td,
22
26
  .lib-xplat-table-wrapper.md > .lib-xplat-table > tbody > tr > th,
23
27
  .lib-xplat-table-wrapper.md > .lib-xplat-table > tbody > tr > td {
24
28
  padding: var(--spacing-space-2) var(--spacing-space-3);
29
+ font-family: var(--semantic-typo-caption-1-r-font);
25
30
  font-size: var(--semantic-typo-caption-1-r-size);
31
+ line-height: var(--semantic-typo-caption-1-r-lh);
32
+ font-weight: var(--semantic-typo-caption-1-r-weight);
33
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
26
34
  }
27
35
  .lib-xplat-table-wrapper.lg > .lib-xplat-table > thead > tr > th,
28
36
  .lib-xplat-table-wrapper.lg > .lib-xplat-table > thead > tr > td,
29
37
  .lib-xplat-table-wrapper.lg > .lib-xplat-table > tbody > tr > th,
30
38
  .lib-xplat-table-wrapper.lg > .lib-xplat-table > tbody > tr > td {
31
39
  padding: var(--spacing-space-3) var(--spacing-space-4);
40
+ font-family: var(--semantic-typo-label-2-m-font);
32
41
  font-size: var(--semantic-typo-label-2-m-size);
42
+ line-height: var(--semantic-typo-label-2-m-lh);
43
+ font-weight: var(--semantic-typo-label-2-m-weight);
44
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
33
45
  }
34
46
  .lib-xplat-table-wrapper > .lib-xplat-table {
35
47
  width: 100%;
@@ -29,6 +29,8 @@ interface TableCellProps {
29
29
  isSticky?: boolean;
30
30
  width?: string | number;
31
31
  nowrap?: boolean;
32
+ /** th 로 렌더될 때의 scope. 기본 "col" (thead 안에서만 의미가 있다) */
33
+ scope?: "col" | "row";
32
34
  onClick?: (e: React.MouseEvent<HTMLTableCellElement>) => void;
33
35
  }
34
36
  declare const TableCell: React.NamedExoticComponent<TableCellProps>;
@@ -29,6 +29,8 @@ interface TableCellProps {
29
29
  isSticky?: boolean;
30
30
  width?: string | number;
31
31
  nowrap?: boolean;
32
+ /** th 로 렌더될 때의 scope. 기본 "col" (thead 안에서만 의미가 있다) */
33
+ scope?: "col" | "row";
32
34
  onClick?: (e: React.MouseEvent<HTMLTableCellElement>) => void;
33
35
  }
34
36
  declare const TableCell: React.NamedExoticComponent<TableCellProps>;
@@ -93,6 +93,7 @@ var TableCell = React4.memo((props) => {
93
93
  isSticky = false,
94
94
  width,
95
95
  nowrap = false,
96
+ scope = "col",
96
97
  onClick
97
98
  } = props;
98
99
  const { registerStickyCell, stickyCells } = useTableRowContext();
@@ -124,7 +125,8 @@ var TableCell = React4.memo((props) => {
124
125
  }
125
126
  return () => observer.disconnect();
126
127
  }, [isSticky, registerStickyCell, calculateLeft]);
127
- const CellTag = cellRef.current?.tagName === "TH" ? "th" : "td";
128
+ const isHeaderCell = headContext !== null;
129
+ const CellTag = isHeaderCell ? "th" : "td";
128
130
  const isLastSticky = isSticky && stickyCells[stickyCells.length - 1] === cellRef;
129
131
  const enableHover = headContext && headContext.cellHover;
130
132
  return /* @__PURE__ */ jsx3(
@@ -139,6 +141,7 @@ var TableCell = React4.memo((props) => {
139
141
  enableHover && "cell-hover",
140
142
  nowrap && "nowrap"
141
143
  ),
144
+ scope: isHeaderCell ? scope : void 0,
142
145
  style: {
143
146
  ...isSticky ? { left } : null,
144
147
  ...width != null ? { width: typeof width === "number" ? `${width}px` : width } : null
@@ -9,17 +9,29 @@
9
9
  .lib-xplat-tag.sm {
10
10
  gap: var(--spacing-space-1);
11
11
  padding: 1px var(--spacing-space-2);
12
+ font-family: var(--semantic-typo-caption-2-r-font);
12
13
  font-size: var(--semantic-typo-caption-2-r-size);
14
+ line-height: var(--semantic-typo-caption-2-r-lh);
15
+ font-weight: var(--semantic-typo-caption-2-r-weight);
16
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
13
17
  }
14
18
  .lib-xplat-tag.md {
15
19
  gap: var(--spacing-space-1);
16
20
  padding: 2px var(--spacing-space-2);
21
+ font-family: var(--semantic-typo-caption-2-r-font);
17
22
  font-size: var(--semantic-typo-caption-2-r-size);
23
+ line-height: var(--semantic-typo-caption-2-r-lh);
24
+ font-weight: var(--semantic-typo-caption-2-r-weight);
25
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
18
26
  }
19
27
  .lib-xplat-tag.lg {
20
28
  gap: var(--spacing-space-1);
21
29
  padding: var(--spacing-space-1) var(--spacing-space-2);
30
+ font-family: var(--semantic-typo-caption-1-r-font);
22
31
  font-size: var(--semantic-typo-caption-1-r-size);
32
+ line-height: var(--semantic-typo-caption-1-r-lh);
33
+ font-weight: var(--semantic-typo-caption-1-r-weight);
34
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
23
35
  }
24
36
  .lib-xplat-tag.neutral {
25
37
  color: var(--semantic-text-tertiary);
@@ -16,18 +16,27 @@
16
16
  }
17
17
  .lib-xplat-textarea-wrap .lib-xplat-textarea.sm {
18
18
  padding: var(--spacing-space-2) var(--spacing-space-3);
19
+ font-family: var(--semantic-typo-caption-1-r-font);
19
20
  font-size: var(--semantic-typo-caption-1-r-size);
20
21
  line-height: var(--semantic-typo-caption-1-r-lh);
22
+ font-weight: var(--semantic-typo-caption-1-r-weight);
23
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
21
24
  }
22
25
  .lib-xplat-textarea-wrap .lib-xplat-textarea.md {
23
26
  padding: var(--spacing-space-2) var(--spacing-space-4);
27
+ font-family: var(--semantic-typo-label-2-m-font);
24
28
  font-size: var(--semantic-typo-label-2-m-size);
25
29
  line-height: var(--semantic-typo-label-2-m-lh);
30
+ font-weight: var(--semantic-typo-label-2-m-weight);
31
+ letter-spacing: var(--semantic-typo-label-2-m-ls);
26
32
  }
27
33
  .lib-xplat-textarea-wrap .lib-xplat-textarea.lg {
28
34
  padding: var(--spacing-space-3) var(--spacing-space-4);
35
+ font-family: var(--semantic-typo-label-1-m-font);
29
36
  font-size: var(--semantic-typo-label-1-m-size);
30
37
  line-height: var(--semantic-typo-label-1-m-lh);
38
+ font-weight: var(--semantic-typo-label-1-m-weight);
39
+ letter-spacing: var(--semantic-typo-label-1-m-ls);
31
40
  }
32
41
  .lib-xplat-textarea-wrap .lib-xplat-textarea:hover:not(.disabled):not(:focus) {
33
42
  border-color: var(--semantic-border-tertiary);
@@ -53,9 +53,12 @@
53
53
  gap: var(--spacing-space-2);
54
54
  padding: var(--spacing-space-3) var(--spacing-space-4);
55
55
  border-radius: var(--spacing-radius-md);
56
+ font-family: var(--semantic-typo-caption-1-r-font);
56
57
  font-size: var(--semantic-typo-caption-1-r-size);
57
58
  line-height: var(--semantic-typo-caption-1-r-lh);
58
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
59
+ font-weight: var(--semantic-typo-caption-1-r-weight);
60
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
61
+ box-shadow: var(--semantic-shadow-md);
59
62
  pointer-events: auto;
60
63
  animation: lib-xplat-toast-enter 0.2s ease;
61
64
  min-width: 240px;
@@ -73,7 +76,11 @@
73
76
  background: none;
74
77
  border: none;
75
78
  cursor: pointer;
79
+ font-family: var(--semantic-typo-label-1-m-font);
76
80
  font-size: var(--semantic-typo-label-1-m-size);
81
+ line-height: var(--semantic-typo-label-1-m-lh);
82
+ font-weight: var(--semantic-typo-label-1-m-weight);
83
+ letter-spacing: var(--semantic-typo-label-1-m-ls);
77
84
  line-height: 1;
78
85
  padding: 0;
79
86
  opacity: 0.6;
@@ -11,18 +11,22 @@
11
11
  animation: tooltip-show 120ms ease-out;
12
12
  }
13
13
  .lib-xplat-tooltip .tooltip-title {
14
+ font-family: var(--semantic-typo-caption-1-r-font);
14
15
  font-size: var(--semantic-typo-caption-1-r-size);
15
16
  line-height: var(--semantic-typo-caption-1-r-lh);
16
- font-weight: 400;
17
+ font-weight: var(--semantic-typo-caption-1-r-weight);
18
+ letter-spacing: var(--semantic-typo-caption-1-r-ls);
17
19
  }
18
20
  .lib-xplat-tooltip .tooltip-desc {
21
+ font-family: var(--semantic-typo-caption-2-r-font);
19
22
  font-size: var(--semantic-typo-caption-2-r-size);
20
23
  line-height: var(--semantic-typo-caption-2-r-lh);
21
- font-weight: 400;
24
+ font-weight: var(--semantic-typo-caption-2-r-weight);
25
+ letter-spacing: var(--semantic-typo-caption-2-r-ls);
22
26
  }
23
27
  .lib-xplat-tooltip.dark {
24
28
  background-color: var(--semantic-surface-neutral-tertiary);
25
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
29
+ box-shadow: var(--semantic-shadow-md);
26
30
  }
27
31
  .lib-xplat-tooltip.dark .tooltip-title,
28
32
  .lib-xplat-tooltip.dark .tooltip-desc {
@@ -30,7 +34,7 @@
30
34
  }
31
35
  .lib-xplat-tooltip.light {
32
36
  background-color: var(--semantic-surface-neutral-primary);
33
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
37
+ box-shadow: var(--semantic-shadow-md);
34
38
  }
35
39
  .lib-xplat-tooltip.light .tooltip-title,
36
40
  .lib-xplat-tooltip.light .tooltip-desc {