@x-plat/design-system 0.4.6 → 0.5.1

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 (178) hide show
  1. package/dist/components/Accordion/index.cjs +4 -4
  2. package/dist/components/Accordion/index.css +11 -11
  3. package/dist/components/Accordion/index.js +4 -4
  4. package/dist/components/Alert/index.css +19 -19
  5. package/dist/components/Avatar/index.cjs +11 -5
  6. package/dist/components/Avatar/index.css +41 -11
  7. package/dist/components/Avatar/index.d.cts +1 -2
  8. package/dist/components/Avatar/index.d.ts +1 -2
  9. package/dist/components/Avatar/index.js +11 -5
  10. package/dist/components/Badge/index.cjs +3 -4
  11. package/dist/components/Badge/index.css +32 -19
  12. package/dist/components/Badge/index.d.cts +3 -2
  13. package/dist/components/Badge/index.d.ts +3 -2
  14. package/dist/components/Badge/index.js +3 -4
  15. package/dist/components/Breadcrumb/index.css +6 -6
  16. package/dist/components/Button/index.cjs +1 -3
  17. package/dist/components/Button/index.css +67 -23
  18. package/dist/components/Button/index.d.cts +2 -3
  19. package/dist/components/Button/index.d.ts +2 -3
  20. package/dist/components/Button/index.js +1 -3
  21. package/dist/components/Calendar/index.cjs +10 -10
  22. package/dist/components/Calendar/index.css +51 -52
  23. package/dist/components/Calendar/index.d.cts +3 -3
  24. package/dist/components/Calendar/index.d.ts +3 -3
  25. package/dist/components/Calendar/index.js +10 -10
  26. package/dist/components/Card/index.css +6 -6
  27. package/dist/components/CardTab/index.css +28 -28
  28. package/dist/components/Chart/index.cjs +228 -14548
  29. package/dist/components/Chart/index.css +57 -0
  30. package/dist/components/Chart/index.d.cts +3 -2
  31. package/dist/components/Chart/index.d.ts +3 -2
  32. package/dist/components/Chart/index.js +219 -14541
  33. package/dist/components/CheckBox/index.cjs +13 -8
  34. package/dist/components/CheckBox/index.css +50 -27
  35. package/dist/components/CheckBox/index.d.cts +3 -2
  36. package/dist/components/CheckBox/index.d.ts +3 -2
  37. package/dist/components/CheckBox/index.js +13 -8
  38. package/dist/components/Chip/index.cjs +1 -3
  39. package/dist/components/Chip/index.css +35 -23
  40. package/dist/components/Chip/index.d.cts +2 -3
  41. package/dist/components/Chip/index.d.ts +2 -3
  42. package/dist/components/Chip/index.js +1 -3
  43. package/dist/components/DatePicker/index.cjs +37 -46
  44. package/dist/components/DatePicker/index.css +175 -122
  45. package/dist/components/DatePicker/index.d.cts +2 -3
  46. package/dist/components/DatePicker/index.d.ts +2 -3
  47. package/dist/components/DatePicker/index.js +37 -46
  48. package/dist/components/Divider/index.css +2 -2
  49. package/dist/components/Drawer/index.css +7 -7
  50. package/dist/components/Dropdown/index.css +10 -10
  51. package/dist/components/EmptyState/index.css +8 -9
  52. package/dist/components/FileUpload/index.cjs +4 -4
  53. package/dist/components/FileUpload/index.css +13 -14
  54. package/dist/components/FileUpload/index.js +4 -4
  55. package/dist/components/HtmlTypeWriter/index.cjs +10 -10
  56. package/dist/components/HtmlTypeWriter/index.css +3 -3
  57. package/dist/components/HtmlTypeWriter/index.js +10 -10
  58. package/dist/components/ImageSelector/index.cjs +4 -4
  59. package/dist/components/ImageSelector/index.css +15 -15
  60. package/dist/components/ImageSelector/index.js +4 -4
  61. package/dist/components/Input/index.css +37 -26
  62. package/dist/components/Modal/index.css +5 -4
  63. package/dist/components/Pagination/index.cjs +9 -10
  64. package/dist/components/Pagination/index.css +37 -26
  65. package/dist/components/Pagination/index.d.cts +3 -2
  66. package/dist/components/Pagination/index.d.ts +3 -2
  67. package/dist/components/Pagination/index.js +9 -10
  68. package/dist/components/PopOver/index.css +3 -3
  69. package/dist/components/Progress/index.cjs +4 -5
  70. package/dist/components/Progress/index.css +23 -9
  71. package/dist/components/Progress/index.d.cts +3 -2
  72. package/dist/components/Progress/index.d.ts +3 -2
  73. package/dist/components/Progress/index.js +4 -5
  74. package/dist/components/Radio/index.cjs +3 -4
  75. package/dist/components/Radio/index.css +61 -29
  76. package/dist/components/Radio/index.d.cts +3 -2
  77. package/dist/components/Radio/index.d.ts +3 -2
  78. package/dist/components/Radio/index.js +3 -4
  79. package/dist/components/Select/index.cjs +4 -4
  80. package/dist/components/Select/index.css +46 -40
  81. package/dist/components/Select/index.js +4 -4
  82. package/dist/components/Skeleton/index.css +3 -3
  83. package/dist/components/Spinner/index.cjs +2 -3
  84. package/dist/components/Spinner/index.css +22 -8
  85. package/dist/components/Spinner/index.d.cts +3 -2
  86. package/dist/components/Spinner/index.d.ts +3 -2
  87. package/dist/components/Spinner/index.js +2 -3
  88. package/dist/components/Steps/index.cjs +8 -9
  89. package/dist/components/Steps/index.css +77 -22
  90. package/dist/components/Steps/index.d.cts +3 -2
  91. package/dist/components/Steps/index.d.ts +3 -2
  92. package/dist/components/Steps/index.js +8 -9
  93. package/dist/components/Swiper/index.css +10 -10
  94. package/dist/components/Switch/index.cjs +4 -5
  95. package/dist/components/Switch/index.css +58 -26
  96. package/dist/components/Switch/index.d.cts +3 -2
  97. package/dist/components/Switch/index.d.ts +3 -2
  98. package/dist/components/Switch/index.js +4 -5
  99. package/dist/components/Tab/index.css +15 -15
  100. package/dist/components/Table/index.cjs +0 -3
  101. package/dist/components/Table/index.css +15 -15
  102. package/dist/components/Table/index.d.cts +1 -2
  103. package/dist/components/Table/index.d.ts +1 -2
  104. package/dist/components/Table/index.js +0 -3
  105. package/dist/components/Tag/index.cjs +23 -10
  106. package/dist/components/Tag/index.css +58 -17
  107. package/dist/components/Tag/index.d.cts +5 -2
  108. package/dist/components/Tag/index.d.ts +5 -2
  109. package/dist/components/Tag/index.js +23 -10
  110. package/dist/components/TextArea/index.css +20 -9
  111. package/dist/components/Toast/index.css +22 -22
  112. package/dist/components/Tooltip/index.cjs +1 -3
  113. package/dist/components/Tooltip/index.css +6 -6
  114. package/dist/components/Tooltip/index.d.cts +1 -2
  115. package/dist/components/Tooltip/index.d.ts +1 -2
  116. package/dist/components/Tooltip/index.js +1 -3
  117. package/dist/components/Video/index.css +5 -5
  118. package/dist/components/index.cjs +970 -15289
  119. package/dist/components/index.css +2167 -1061
  120. package/dist/components/index.d.cts +1 -2
  121. package/dist/components/index.d.ts +1 -2
  122. package/dist/components/index.js +871 -15192
  123. package/dist/index.cjs +1077 -15378
  124. package/dist/index.css +2164 -1058
  125. package/dist/index.d.cts +3 -3
  126. package/dist/index.d.ts +3 -3
  127. package/dist/index.js +877 -15182
  128. package/dist/layout/Grid/FullGrid/index.cjs +9 -18
  129. package/dist/layout/Grid/FullGrid/index.d.cts +1 -1
  130. package/dist/layout/Grid/FullGrid/index.d.ts +1 -1
  131. package/dist/layout/Grid/FullGrid/index.js +9 -18
  132. package/dist/layout/Grid/FullScreen/index.cjs +9 -18
  133. package/dist/layout/Grid/FullScreen/index.d.cts +3 -3
  134. package/dist/layout/Grid/FullScreen/index.d.ts +3 -3
  135. package/dist/layout/Grid/FullScreen/index.js +9 -18
  136. package/dist/layout/Grid/index.cjs +34 -20
  137. package/dist/layout/Grid/index.js +34 -20
  138. package/dist/layout/index.cjs +34 -20
  139. package/dist/layout/index.css +1000 -295
  140. package/dist/layout/index.js +34 -20
  141. package/dist/tokens/index.cjs +33 -142
  142. package/dist/tokens/index.d.cts +23 -6
  143. package/dist/tokens/index.d.ts +23 -6
  144. package/dist/tokens/index.js +29 -140
  145. package/guidelines/Guidelines.md +57 -0
  146. package/guidelines/components/accordion.md +72 -0
  147. package/guidelines/components/avatar.md +35 -0
  148. package/guidelines/components/button.md +58 -0
  149. package/guidelines/components/card.md +28 -0
  150. package/guidelines/components/chart.md +58 -0
  151. package/guidelines/components/chip-tag.md +49 -0
  152. package/guidelines/components/data-display.md +96 -0
  153. package/guidelines/components/datepicker.md +60 -0
  154. package/guidelines/components/dropdown.md +49 -0
  155. package/guidelines/components/feedback.md +64 -0
  156. package/guidelines/components/file-media.md +95 -0
  157. package/guidelines/components/form.md +60 -0
  158. package/guidelines/components/html-typewriter.md +38 -0
  159. package/guidelines/components/input.md +55 -0
  160. package/guidelines/components/navigation.md +80 -0
  161. package/guidelines/components/overlay.md +72 -0
  162. package/guidelines/components/select.md +44 -0
  163. package/guidelines/components/swiper.md +84 -0
  164. package/guidelines/components/table.md +62 -0
  165. package/guidelines/composition/grid.md +95 -0
  166. package/guidelines/composition/layout.md +30 -0
  167. package/guidelines/foundations/color.md +81 -0
  168. package/guidelines/foundations/icons.md +55 -0
  169. package/guidelines/foundations/spacing.md +51 -0
  170. package/guidelines/foundations/typography.md +63 -0
  171. package/guidelines/setup.md +42 -0
  172. package/package.json +5 -5
  173. package/dist/colors-CY4JXVHj.d.cts +0 -137
  174. package/dist/colors-CY4JXVHj.d.ts +0 -137
  175. package/dist/layout/Grid/GapGrid/index.cjs +0 -32
  176. package/dist/layout/Grid/GapGrid/index.d.cts +0 -12
  177. package/dist/layout/Grid/GapGrid/index.d.ts +0 -12
  178. package/dist/layout/Grid/GapGrid/index.js +0 -11
@@ -445,10 +445,10 @@ import { jsx as jsx126, jsxs as jsxs72 } from "react/jsx-runtime";
445
445
  // src/tokens/svg/file/BookIcon.tsx
446
446
  import { jsx as jsx127 } from "react/jsx-runtime";
447
447
 
448
- // src/tokens/svg/file/BookOpenIcon.tsx
448
+ // src/tokens/svg/file/BookmarkIcon.tsx
449
449
  import { jsx as jsx128 } from "react/jsx-runtime";
450
450
 
451
- // src/tokens/svg/file/BookmarkIcon.tsx
451
+ // src/tokens/svg/file/BookOpenIcon.tsx
452
452
  import { jsx as jsx129 } from "react/jsx-runtime";
453
453
 
454
454
  // src/tokens/svg/file/ClipboardIcon.tsx
@@ -935,10 +935,10 @@ import { jsx as jsx279, jsxs as jsxs177 } from "react/jsx-runtime";
935
935
  // src/tokens/svg/user/UserPlusIcon.tsx
936
936
  import { jsx as jsx280, jsxs as jsxs178 } from "react/jsx-runtime";
937
937
 
938
- // src/tokens/svg/user/UserXIcon.tsx
938
+ // src/tokens/svg/user/UsersIcon.tsx
939
939
  import { jsx as jsx281, jsxs as jsxs179 } from "react/jsx-runtime";
940
940
 
941
- // src/tokens/svg/user/UsersIcon.tsx
941
+ // src/tokens/svg/user/UserXIcon.tsx
942
942
  import { jsx as jsx282, jsxs as jsxs180 } from "react/jsx-runtime";
943
943
 
944
944
  // src/tokens/svg/weather/CloudDrizzleIcon.tsx
@@ -2,42 +2,53 @@
2
2
  .lib-xplat-input-wrap {
3
3
  display: flex;
4
4
  flex-direction: column;
5
- gap: 0.5rem;
5
+ gap: var(--spacing-space-2);
6
6
  }
7
7
  .lib-xplat-input-wrap .lib-xplat-input {
8
8
  display: flex;
9
9
  align-items: center;
10
- border: 1px solid var(--xplat-neutral-300);
11
- border-radius: 0.5rem;
10
+ border: 1px solid var(--semantic-border-default);
11
+ border-radius: var(--spacing-radius-md);
12
12
  overflow: hidden;
13
- background-color: var(--xplat-white);
14
- padding-right: 0.5rem;
13
+ background-color: var(--semantic-surface-neutral-default);
14
+ padding-right: var(--spacing-space-2);
15
15
  width: 100%;
16
+ transition: border-color 0.15s, box-shadow 0.15s;
17
+ }
18
+ .lib-xplat-input-wrap .lib-xplat-input:hover:not(.disabled):not(:focus-within) {
19
+ border-color: var(--semantic-border-strong);
20
+ }
21
+ .lib-xplat-input-wrap .lib-xplat-input:focus-within {
22
+ border-color: var(--semantic-interaction-focus-ring);
23
+ box-shadow: 0 0 0 2px var(--semantic-interaction-overlay-10);
24
+ }
25
+ .lib-xplat-input-wrap .lib-xplat-input:has(> input:not(:placeholder-shown)):not(:focus-within) {
26
+ border-color: var(--semantic-border-strong);
16
27
  }
17
28
  .lib-xplat-input-wrap .lib-xplat-input.sm {
18
- height: 2rem;
19
- font-size: 0.875rem;
29
+ height: var(--spacing-control-height-sm);
30
+ font-size: 14px;
20
31
  }
21
32
  .lib-xplat-input-wrap .lib-xplat-input.md {
22
- height: 2.5rem;
23
- font-size: 1rem;
33
+ height: var(--spacing-control-height-md);
34
+ font-size: 16px;
24
35
  }
25
36
  .lib-xplat-input-wrap .lib-xplat-input.lg {
26
- height: 3rem;
27
- font-size: 1.125rem;
37
+ height: var(--spacing-control-height-lg);
38
+ font-size: 18px;
28
39
  }
29
40
  .lib-xplat-input-wrap .lib-xplat-input.disabled {
30
- background-color: var(--xplat-neutral-100);
41
+ background-color: var(--semantic-surface-neutral-disabled);
31
42
  cursor: not-allowed;
32
43
  }
33
44
  .lib-xplat-input-wrap .lib-xplat-input > input {
34
45
  border: none;
35
46
  outline: none;
36
47
  flex: 1;
37
- padding-left: 1rem;
38
- padding-right: 0.5rem;
48
+ padding-left: var(--spacing-space-4);
49
+ padding-right: var(--spacing-space-2);
39
50
  width: 100%;
40
- color: var(--xplat-neutral-700);
51
+ color: var(--semantic-text-subtle);
41
52
  }
42
53
  .lib-xplat-input-wrap .lib-xplat-input > input :disabled {
43
54
  cursor: not-allowed;
@@ -47,8 +58,8 @@
47
58
  align-items: center;
48
59
  justify-content: center;
49
60
  height: 100%;
50
- color: var(--xplat-neutral-400);
51
- padding-right: 0.5rem;
61
+ color: var(--semantic-icon-subtle);
62
+ padding-right: var(--spacing-space-2);
52
63
  }
53
64
  .lib-xplat-input-wrap .lib-xplat-input > .suffix > .wrapper {
54
65
  font: 500;
@@ -58,28 +69,28 @@
58
69
  }
59
70
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap {
60
71
  display: flex;
61
- gap: 0.5rem;
62
- margin-left: 0.25rem;
72
+ gap: var(--spacing-space-2);
73
+ margin-left: var(--spacing-space-1);
63
74
  }
64
75
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap > .lib-xplat-input-validation {
65
76
  display: flex;
66
- gap: 0.25rem;
67
- font-size: 0.75rem;
77
+ gap: var(--spacing-space-1);
78
+ font-size: 12px;
68
79
  align-items: center;
69
80
  user-select: none;
70
81
  }
71
82
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap > .lib-xplat-input-validation.default {
72
- color: var(--xplat-neutral-400);
83
+ color: var(--semantic-icon-subtle);
73
84
  }
74
85
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap > .lib-xplat-input-validation.success {
75
- color: var(--xplat-green-600);
86
+ color: var(--semantic-text-success);
76
87
  }
77
88
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap > .lib-xplat-input-validation.warning {
78
- color: var(--xplat-yellow-600);
89
+ color: var(--semantic-text-warning);
79
90
  }
80
91
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap > .lib-xplat-input-validation.error {
81
- color: var(--xplat-red-600);
92
+ color: var(--semantic-text-error);
82
93
  }
83
94
  .lib-xplat-input-wrap .lib-xplat-input-validation-wrap > .lib-xplat-input-validation > .icon {
84
- font-size: 1rem;
95
+ font-size: 16px;
85
96
  }
@@ -3,11 +3,12 @@
3
3
  z-index: 11;
4
4
  }
5
5
  .lib-xplat-modal.modal-box {
6
- border-radius: 12px;
6
+ border-radius: var(--spacing-radius-lg);
7
7
  background-color: #fff;
8
- padding: 24px;
9
- max-width: calc(100vw - 2rem);
10
- max-height: calc(100vh - 2rem);
8
+ padding: var(--spacing-space-6);
9
+ min-width: min-content;
10
+ max-width: calc(100vw - 32px);
11
+ max-height: calc(100vh - 32px);
11
12
  overflow: visible;
12
13
  transform: scale(0.9);
13
14
  opacity: 0;
@@ -429,10 +429,10 @@ var import_jsx_runtime126 = require("react/jsx-runtime");
429
429
  // src/tokens/svg/file/BookIcon.tsx
430
430
  var import_jsx_runtime127 = require("react/jsx-runtime");
431
431
 
432
- // src/tokens/svg/file/BookOpenIcon.tsx
432
+ // src/tokens/svg/file/BookmarkIcon.tsx
433
433
  var import_jsx_runtime128 = require("react/jsx-runtime");
434
434
 
435
- // src/tokens/svg/file/BookmarkIcon.tsx
435
+ // src/tokens/svg/file/BookOpenIcon.tsx
436
436
  var import_jsx_runtime129 = require("react/jsx-runtime");
437
437
 
438
438
  // src/tokens/svg/file/ClipboardIcon.tsx
@@ -888,10 +888,10 @@ var import_jsx_runtime279 = require("react/jsx-runtime");
888
888
  // src/tokens/svg/user/UserPlusIcon.tsx
889
889
  var import_jsx_runtime280 = require("react/jsx-runtime");
890
890
 
891
- // src/tokens/svg/user/UserXIcon.tsx
891
+ // src/tokens/svg/user/UsersIcon.tsx
892
892
  var import_jsx_runtime281 = require("react/jsx-runtime");
893
893
 
894
- // src/tokens/svg/user/UsersIcon.tsx
894
+ // src/tokens/svg/user/UserXIcon.tsx
895
895
  var import_jsx_runtime282 = require("react/jsx-runtime");
896
896
 
897
897
  // src/tokens/svg/weather/CloudDrizzleIcon.tsx
@@ -948,7 +948,7 @@ var clsx_default = clsx;
948
948
 
949
949
  // src/components/Pagination/Pagination.tsx
950
950
  var import_jsx_runtime295 = require("react/jsx-runtime");
951
- function getPageRange(current, totalPages, siblingCount) {
951
+ var getPageRange = (current, totalPages, siblingCount) => {
952
952
  const totalNumbers = siblingCount * 2 + 5;
953
953
  if (totalPages <= totalNumbers) {
954
954
  return Array.from({ length: totalPages }, (_, i) => i + 1);
@@ -972,7 +972,7 @@ function getPageRange(current, totalPages, siblingCount) {
972
972
  (_, i) => leftSibling + i
973
973
  );
974
974
  return [1, "...", ...middleRange, "...", totalPages];
975
- }
975
+ };
976
976
  var Pagination = (props) => {
977
977
  const {
978
978
  current,
@@ -981,9 +981,8 @@ var Pagination = (props) => {
981
981
  siblingCount = 1,
982
982
  onChange,
983
983
  size = "md",
984
- color = "xplat-blue-500"
984
+ type = "brand"
985
985
  } = props;
986
- const colorClass = color;
987
986
  const totalPages = Math.max(1, Math.ceil(total / pageSize));
988
987
  const pages = getPageRange(current, totalPages, siblingCount);
989
988
  const handleClick = (page) => {
@@ -991,7 +990,7 @@ var Pagination = (props) => {
991
990
  onChange?.(page);
992
991
  }
993
992
  };
994
- return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)("nav", { className: clsx_default("lib-xplat-pagination", size), "aria-label": "\uD398\uC774\uC9C0 \uB124\uBE44\uAC8C\uC774\uC158", children: [
993
+ return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)("nav", { className: clsx_default("lib-xplat-pagination", size, type), "aria-label": "\uD398\uC774\uC9C0 \uB124\uBE44\uAC8C\uC774\uC158", children: [
995
994
  /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
996
995
  "button",
997
996
  {
@@ -1006,7 +1005,7 @@ var Pagination = (props) => {
1006
1005
  (page, i) => page === "..." ? /* @__PURE__ */ (0, import_jsx_runtime295.jsx)("span", { className: "dots", children: "..." }, `dots-${i}`) : /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
1007
1006
  "button",
1008
1007
  {
1009
- className: clsx_default("page-btn", colorClass, { active: page === current }),
1008
+ className: clsx_default("page-btn", { active: page === current }),
1010
1009
  onClick: () => handleClick(page),
1011
1010
  "aria-current": page === current ? "page" : void 0,
1012
1011
  children: page
@@ -2,74 +2,85 @@
2
2
  .lib-xplat-pagination {
3
3
  display: inline-flex;
4
4
  align-items: center;
5
- gap: 4px;
5
+ gap: var(--spacing-space-1);
6
6
  }
7
7
  .lib-xplat-pagination.sm .dots {
8
- width: 24px;
9
- height: 24px;
8
+ width: var(--spacing-control-height-xs);
9
+ height: var(--spacing-control-height-xs);
10
10
  font-size: 12px;
11
11
  }
12
12
  .lib-xplat-pagination.sm .page-btn {
13
- min-width: 24px;
14
- height: 24px;
13
+ min-width: var(--spacing-control-height-xs);
14
+ height: var(--spacing-control-height-xs);
15
15
  font-size: 12px;
16
16
  }
17
17
  .lib-xplat-pagination.sm .page-btn svg {
18
- width: 14px;
19
- height: 14px;
18
+ font-size: 14px;
20
19
  }
21
20
  .lib-xplat-pagination.lg .dots {
22
- width: 40px;
23
- height: 40px;
21
+ width: var(--spacing-control-height-md);
22
+ height: var(--spacing-control-height-md);
24
23
  font-size: 16px;
25
24
  }
26
25
  .lib-xplat-pagination.lg .page-btn {
27
- min-width: 40px;
28
- height: 40px;
26
+ min-width: var(--spacing-control-height-md);
27
+ height: var(--spacing-control-height-md);
29
28
  font-size: 16px;
30
29
  }
31
30
  .lib-xplat-pagination.lg .page-btn svg {
32
- width: 20px;
33
- height: 20px;
31
+ font-size: 20px;
34
32
  }
35
33
  .lib-xplat-pagination .dots {
36
34
  display: flex;
37
35
  align-items: center;
38
36
  justify-content: center;
39
- width: 32px;
40
- height: 32px;
37
+ width: var(--spacing-control-height-sm);
38
+ height: var(--spacing-control-height-sm);
41
39
  font-size: 14px;
42
- color: var(--xplat-neutral-500);
40
+ color: var(--semantic-text-muted);
43
41
  user-select: none;
44
42
  }
45
43
  .lib-xplat-pagination .page-btn {
46
44
  display: flex;
47
45
  align-items: center;
48
46
  justify-content: center;
49
- min-width: 32px;
50
- height: 32px;
51
- padding: 0 6px;
47
+ min-width: var(--spacing-control-height-sm);
48
+ height: var(--spacing-control-height-sm);
49
+ padding: 0 var(--spacing-space-2);
52
50
  border: none;
53
- border-radius: 0.375rem;
51
+ border-radius: var(--spacing-radius-md);
54
52
  background: none;
55
53
  font-size: 14px;
56
54
  cursor: pointer;
57
- color: var(--xplat-neutral-700);
55
+ color: var(--semantic-text-subtle);
58
56
  transition: background-color 0.2s, color 0.2s;
59
57
  }
60
58
  .lib-xplat-pagination .page-btn:hover:not(:disabled):not(.active) {
61
- background-color: var(--xplat-neutral-100);
59
+ background-color: var(--semantic-surface-neutral-subtle);
62
60
  }
63
61
  .lib-xplat-pagination .page-btn:disabled {
64
62
  cursor: not-allowed;
65
63
  opacity: 0.4;
66
64
  }
67
65
  .lib-xplat-pagination .page-btn.active {
68
- color: var(--xplat-white);
66
+ color: var(--semantic-text-inverse);
69
67
  font-weight: 600;
70
- background-color: var(--ds-color);
68
+ }
69
+ .lib-xplat-pagination.brand .lib-xplat-pagination .page-btn.active {
70
+ background-color: var(--semantic-surface-brand-default);
71
+ }
72
+ .lib-xplat-pagination.success .lib-xplat-pagination .page-btn.active {
73
+ background-color: var(--semantic-surface-success-default);
74
+ }
75
+ .lib-xplat-pagination.error .lib-xplat-pagination .page-btn.active {
76
+ background-color: var(--semantic-surface-error-default);
77
+ }
78
+ .lib-xplat-pagination.warning .lib-xplat-pagination .page-btn.active {
79
+ background-color: var(--semantic-surface-warning-default);
80
+ }
81
+ .lib-xplat-pagination.info .lib-xplat-pagination .page-btn.active {
82
+ background-color: var(--semantic-surface-info-default);
71
83
  }
72
84
  .lib-xplat-pagination .page-btn svg {
73
- width: 16px;
74
- height: 16px;
85
+ font-size: 16px;
75
86
  }
@@ -1,14 +1,15 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { a as ColorProps } from '../../colors-CY4JXVHj.cjs';
3
2
 
4
3
  type PaginationSize = "sm" | "md" | "lg";
5
- interface PaginationProps extends ColorProps {
4
+ type PaginationType = "brand" | "success" | "error" | "warning" | "info";
5
+ interface PaginationProps {
6
6
  current: number;
7
7
  total: number;
8
8
  pageSize?: number;
9
9
  siblingCount?: number;
10
10
  onChange?: (page: number) => void;
11
11
  size?: PaginationSize;
12
+ type?: PaginationType;
12
13
  }
13
14
  declare const Pagination: {
14
15
  (props: PaginationProps): react_jsx_runtime.JSX.Element;
@@ -1,14 +1,15 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { a as ColorProps } from '../../colors-CY4JXVHj.js';
3
2
 
4
3
  type PaginationSize = "sm" | "md" | "lg";
5
- interface PaginationProps extends ColorProps {
4
+ type PaginationType = "brand" | "success" | "error" | "warning" | "info";
5
+ interface PaginationProps {
6
6
  current: number;
7
7
  total: number;
8
8
  pageSize?: number;
9
9
  siblingCount?: number;
10
10
  onChange?: (page: number) => void;
11
11
  size?: PaginationSize;
12
+ type?: PaginationType;
12
13
  }
13
14
  declare const Pagination: {
14
15
  (props: PaginationProps): react_jsx_runtime.JSX.Element;
@@ -403,10 +403,10 @@ import { jsx as jsx126, jsxs as jsxs72 } from "react/jsx-runtime";
403
403
  // src/tokens/svg/file/BookIcon.tsx
404
404
  import { jsx as jsx127 } from "react/jsx-runtime";
405
405
 
406
- // src/tokens/svg/file/BookOpenIcon.tsx
406
+ // src/tokens/svg/file/BookmarkIcon.tsx
407
407
  import { jsx as jsx128 } from "react/jsx-runtime";
408
408
 
409
- // src/tokens/svg/file/BookmarkIcon.tsx
409
+ // src/tokens/svg/file/BookOpenIcon.tsx
410
410
  import { jsx as jsx129 } from "react/jsx-runtime";
411
411
 
412
412
  // src/tokens/svg/file/ClipboardIcon.tsx
@@ -862,10 +862,10 @@ import { jsx as jsx279, jsxs as jsxs177 } from "react/jsx-runtime";
862
862
  // src/tokens/svg/user/UserPlusIcon.tsx
863
863
  import { jsx as jsx280, jsxs as jsxs178 } from "react/jsx-runtime";
864
864
 
865
- // src/tokens/svg/user/UserXIcon.tsx
865
+ // src/tokens/svg/user/UsersIcon.tsx
866
866
  import { jsx as jsx281, jsxs as jsxs179 } from "react/jsx-runtime";
867
867
 
868
- // src/tokens/svg/user/UsersIcon.tsx
868
+ // src/tokens/svg/user/UserXIcon.tsx
869
869
  import { jsx as jsx282, jsxs as jsxs180 } from "react/jsx-runtime";
870
870
 
871
871
  // src/tokens/svg/weather/CloudDrizzleIcon.tsx
@@ -922,7 +922,7 @@ var clsx_default = clsx;
922
922
 
923
923
  // src/components/Pagination/Pagination.tsx
924
924
  import { jsx as jsx295, jsxs as jsxs189 } from "react/jsx-runtime";
925
- function getPageRange(current, totalPages, siblingCount) {
925
+ var getPageRange = (current, totalPages, siblingCount) => {
926
926
  const totalNumbers = siblingCount * 2 + 5;
927
927
  if (totalPages <= totalNumbers) {
928
928
  return Array.from({ length: totalPages }, (_, i) => i + 1);
@@ -946,7 +946,7 @@ function getPageRange(current, totalPages, siblingCount) {
946
946
  (_, i) => leftSibling + i
947
947
  );
948
948
  return [1, "...", ...middleRange, "...", totalPages];
949
- }
949
+ };
950
950
  var Pagination = (props) => {
951
951
  const {
952
952
  current,
@@ -955,9 +955,8 @@ var Pagination = (props) => {
955
955
  siblingCount = 1,
956
956
  onChange,
957
957
  size = "md",
958
- color = "xplat-blue-500"
958
+ type = "brand"
959
959
  } = props;
960
- const colorClass = color;
961
960
  const totalPages = Math.max(1, Math.ceil(total / pageSize));
962
961
  const pages = getPageRange(current, totalPages, siblingCount);
963
962
  const handleClick = (page) => {
@@ -965,7 +964,7 @@ var Pagination = (props) => {
965
964
  onChange?.(page);
966
965
  }
967
966
  };
968
- return /* @__PURE__ */ jsxs189("nav", { className: clsx_default("lib-xplat-pagination", size), "aria-label": "\uD398\uC774\uC9C0 \uB124\uBE44\uAC8C\uC774\uC158", children: [
967
+ return /* @__PURE__ */ jsxs189("nav", { className: clsx_default("lib-xplat-pagination", size, type), "aria-label": "\uD398\uC774\uC9C0 \uB124\uBE44\uAC8C\uC774\uC158", children: [
969
968
  /* @__PURE__ */ jsx295(
970
969
  "button",
971
970
  {
@@ -980,7 +979,7 @@ var Pagination = (props) => {
980
979
  (page, i) => page === "..." ? /* @__PURE__ */ jsx295("span", { className: "dots", children: "..." }, `dots-${i}`) : /* @__PURE__ */ jsx295(
981
980
  "button",
982
981
  {
983
- className: clsx_default("page-btn", colorClass, { active: page === current }),
982
+ className: clsx_default("page-btn", { active: page === current }),
984
983
  onClick: () => handleClick(page),
985
984
  "aria-current": page === current ? "page" : void 0,
986
985
  children: page
@@ -11,7 +11,7 @@
11
11
  cursor: default;
12
12
  transition: transform 0.2s ease, opacity 0.2s ease;
13
13
  background: white;
14
- border-radius: 0.5rem;
14
+ border-radius: var(--spacing-radius-md);
15
15
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
16
16
  z-index: 10;
17
17
  opacity: 0;
@@ -19,11 +19,11 @@
19
19
  }
20
20
  .lib-xplat-pop-over > .content-wrap.top {
21
21
  transform-origin: bottom;
22
- margin-bottom: 0.5rem;
22
+ margin-bottom: var(--spacing-space-2);
23
23
  }
24
24
  .lib-xplat-pop-over > .content-wrap.bottom {
25
25
  transform-origin: top;
26
- margin-top: 0.5rem;
26
+ margin-top: var(--spacing-space-2);
27
27
  }
28
28
  .lib-xplat-pop-over > .content-wrap.visible {
29
29
  opacity: 1;
@@ -47,12 +47,11 @@ var Progress = (props) => {
47
47
  value,
48
48
  max = 100,
49
49
  size = "md",
50
- showLabel = false,
51
- color = "xplat-blue-500"
50
+ type = "brand",
51
+ showLabel = false
52
52
  } = props;
53
- const colorClass = color;
54
53
  const percentage = Math.min(100, Math.max(0, value / max * 100));
55
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: clsx_default("lib-xplat-progress", size), children: [
54
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: clsx_default("lib-xplat-progress", size, type), children: [
56
55
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
57
56
  "div",
58
57
  {
@@ -64,7 +63,7 @@ var Progress = (props) => {
64
63
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
65
64
  "div",
66
65
  {
67
- className: clsx_default("bar", colorClass),
66
+ className: "bar",
68
67
  style: { width: `${percentage}%` }
69
68
  }
70
69
  )
@@ -2,34 +2,48 @@
2
2
  .lib-xplat-progress {
3
3
  display: flex;
4
4
  align-items: center;
5
- gap: 8px;
5
+ gap: var(--spacing-space-2);
6
6
  width: 100%;
7
7
  }
8
8
  .lib-xplat-progress .track {
9
9
  flex: 1;
10
- background-color: var(--xplat-neutral-200);
11
- border-radius: 10rem;
10
+ background-color: var(--semantic-surface-neutral-disabled);
11
+ border-radius: var(--spacing-radius-full);
12
12
  overflow: hidden;
13
13
  }
14
14
  .lib-xplat-progress.sm .track {
15
- height: 4px;
15
+ height: var(--spacing-space-1);
16
16
  }
17
17
  .lib-xplat-progress.md .track {
18
- height: 8px;
18
+ height: var(--spacing-space-2);
19
19
  }
20
20
  .lib-xplat-progress.lg .track {
21
- height: 12px;
21
+ height: var(--spacing-space-3);
22
22
  }
23
23
  .lib-xplat-progress .bar {
24
24
  height: 100%;
25
- border-radius: 10rem;
25
+ border-radius: var(--spacing-radius-full);
26
26
  transition: width 0.3s ease;
27
- background-color: var(--ds-color);
27
+ }
28
+ .lib-xplat-progress.brand .bar {
29
+ background-color: var(--semantic-surface-brand-default);
30
+ }
31
+ .lib-xplat-progress.success .bar {
32
+ background-color: var(--semantic-surface-success-default);
33
+ }
34
+ .lib-xplat-progress.error .bar {
35
+ background-color: var(--semantic-surface-error-default);
36
+ }
37
+ .lib-xplat-progress.warning .bar {
38
+ background-color: var(--semantic-surface-warning-default);
39
+ }
40
+ .lib-xplat-progress.info .bar {
41
+ background-color: var(--semantic-surface-info-default);
28
42
  }
29
43
  .lib-xplat-progress .label {
30
44
  font-size: 12px;
31
45
  font-weight: 500;
32
- color: var(--xplat-neutral-600);
46
+ color: var(--semantic-text-subtle);
33
47
  min-width: 36px;
34
48
  text-align: right;
35
49
  }
@@ -1,11 +1,12 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { a as ColorProps } from '../../colors-CY4JXVHj.cjs';
3
2
 
4
3
  type ProgressSize = "sm" | "md" | "lg";
5
- interface ProgressProps extends ColorProps {
4
+ type ProgressType = "brand" | "success" | "error" | "warning" | "info";
5
+ interface ProgressProps {
6
6
  value: number;
7
7
  max?: number;
8
8
  size?: ProgressSize;
9
+ type?: ProgressType;
9
10
  showLabel?: boolean;
10
11
  }
11
12
  declare const Progress: {
@@ -1,11 +1,12 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { a as ColorProps } from '../../colors-CY4JXVHj.js';
3
2
 
4
3
  type ProgressSize = "sm" | "md" | "lg";
5
- interface ProgressProps extends ColorProps {
4
+ type ProgressType = "brand" | "success" | "error" | "warning" | "info";
5
+ interface ProgressProps {
6
6
  value: number;
7
7
  max?: number;
8
8
  size?: ProgressSize;
9
+ type?: ProgressType;
9
10
  showLabel?: boolean;
10
11
  }
11
12
  declare const Progress: {
@@ -21,12 +21,11 @@ var Progress = (props) => {
21
21
  value,
22
22
  max = 100,
23
23
  size = "md",
24
- showLabel = false,
25
- color = "xplat-blue-500"
24
+ type = "brand",
25
+ showLabel = false
26
26
  } = props;
27
- const colorClass = color;
28
27
  const percentage = Math.min(100, Math.max(0, value / max * 100));
29
- return /* @__PURE__ */ jsxs("div", { className: clsx_default("lib-xplat-progress", size), children: [
28
+ return /* @__PURE__ */ jsxs("div", { className: clsx_default("lib-xplat-progress", size, type), children: [
30
29
  /* @__PURE__ */ jsx(
31
30
  "div",
32
31
  {
@@ -38,7 +37,7 @@ var Progress = (props) => {
38
37
  children: /* @__PURE__ */ jsx(
39
38
  "div",
40
39
  {
41
- className: clsx_default("bar", colorClass),
40
+ className: "bar",
42
41
  style: { width: `${percentage}%` }
43
42
  }
44
43
  )
@@ -67,8 +67,8 @@ var Radio = (props) => {
67
67
  const {
68
68
  label,
69
69
  value,
70
- color = "xplat-blue-500",
71
70
  size: sizeProp,
71
+ type = "brand",
72
72
  ...rest
73
73
  } = props;
74
74
  const context = useRadioGroupContext();
@@ -80,13 +80,13 @@ var Radio = (props) => {
80
80
  value,
81
81
  onChange: rest.onChange
82
82
  };
83
- const colorClass = color;
84
83
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
85
84
  "label",
86
85
  {
87
86
  className: clsx_default(
88
87
  "lib-xplat-radio",
89
88
  size,
89
+ type,
90
90
  localChecked ? "checked" : void 0
91
91
  ),
92
92
  children: [
@@ -96,8 +96,7 @@ var Radio = (props) => {
96
96
  {
97
97
  className: clsx_default(
98
98
  "circle",
99
- localChecked ? "checked" : void 0,
100
- colorClass
99
+ localChecked ? "checked" : void 0
101
100
  ),
102
101
  children: localChecked && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "inner-circle" })
103
102
  }