@x-plat/design-system 0.5.42 → 0.5.43

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.
package/dist/index.css CHANGED
@@ -428,10 +428,10 @@
428
428
  --system-info-700: var(--primitive-blue-700);
429
429
  --system-info-800: var(--primitive-blue-800);
430
430
  --system-info-900: var(--primitive-blue-900);
431
- --system-link-400: var(--primitive-purple-400);
432
- --system-link-500: var(--primitive-purple-500);
433
- --system-link-600: var(--primitive-purple-600);
434
- --system-link-700: var(--primitive-purple-700);
431
+ --system-link-400: var(--primitive-deep-purple-400);
432
+ --system-link-500: var(--primitive-deep-purple-500);
433
+ --system-link-600: var(--primitive-deep-purple-600);
434
+ --system-link-700: var(--primitive-deep-purple-700);
435
435
  }
436
436
  :root {
437
437
  --semantic-text-strong: var(--brand-neutral-900);
@@ -465,7 +465,7 @@
465
465
  --semantic-surface-warning-default: var(--system-warning-600);
466
466
  --semantic-surface-warning-strong: var(--system-warning-700);
467
467
  --semantic-surface-info-subtle: var(--system-info-50);
468
- --semantic-surface-info-default: var(--system-info-400);
468
+ --semantic-surface-info-default: var(--system-info-600);
469
469
  --semantic-surface-info-strong: var(--system-info-700);
470
470
  --semantic-border-default: var(--brand-neutral-200);
471
471
  --semantic-border-subtle: var(--brand-neutral-100);
@@ -474,16 +474,16 @@
474
474
  --semantic-border-brand: var(--brand-primary-600);
475
475
  --semantic-border-success: var(--system-success-300);
476
476
  --semantic-border-error: var(--system-error-300);
477
- --semantic-border-warning: var(--system-warning-500);
477
+ --semantic-border-warning: var(--system-warning-300);
478
478
  --semantic-border-info: var(--system-info-300);
479
479
  --semantic-icon-strong: var(--brand-neutral-700);
480
480
  --semantic-icon-subtle: var(--brand-neutral-500);
481
481
  --semantic-icon-inverse: var(--brand-base-white);
482
482
  --semantic-icon-brand: var(--brand-primary-600);
483
- --semantic-icon-success: var(--system-success-400);
483
+ --semantic-icon-success: var(--system-success-600);
484
484
  --semantic-icon-error: var(--system-error-600);
485
485
  --semantic-icon-warning: var(--system-warning-600);
486
- --semantic-icon-info: var(--system-info-400);
486
+ --semantic-icon-info: var(--system-info-600);
487
487
  --semantic-icon-disabled: var(--brand-neutral-300);
488
488
  --semantic-emphasis-brand: var(--brand-primary-800);
489
489
  --semantic-emphasis-success: var(--system-success-800);
@@ -1342,6 +1342,62 @@
1342
1342
  background-color: var(--semantic-surface-brand-default);
1343
1343
  }
1344
1344
 
1345
+ /* src/components/Box/box.scss */
1346
+ .lib-xplat-box {
1347
+ contain: layout style;
1348
+ width: 100%;
1349
+ height: 100%;
1350
+ display: flex;
1351
+ flex-direction: column;
1352
+ flex: 1;
1353
+ min-width: 0;
1354
+ border-radius: var(--spacing-radius-xl);
1355
+ background-color: var(--semantic-surface-neutral-default);
1356
+ overflow: hidden;
1357
+ }
1358
+ .lib-xplat-box.outlined {
1359
+ border: 1px solid var(--semantic-border-default);
1360
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
1361
+ }
1362
+ .lib-xplat-box.elevated {
1363
+ border: none;
1364
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.08);
1365
+ }
1366
+ .lib-xplat-box.flat {
1367
+ border: none;
1368
+ background-color: var(--semantic-surface-neutral-subtle);
1369
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
1370
+ }
1371
+ .lib-xplat-box > .box-title {
1372
+ font-weight: 600;
1373
+ font-size: 14px;
1374
+ color: var(--semantic-text-strong);
1375
+ padding: var(--spacing-space-3) var(--spacing-space-4);
1376
+ border-bottom: 1px solid var(--semantic-border-subtle);
1377
+ min-width: 0;
1378
+ overflow: hidden;
1379
+ text-overflow: ellipsis;
1380
+ white-space: nowrap;
1381
+ }
1382
+ .lib-xplat-box > .box-content {
1383
+ display: flex;
1384
+ flex-direction: column;
1385
+ flex: 1;
1386
+ min-height: 0;
1387
+ }
1388
+ .lib-xplat-box.pad-none > .box-content {
1389
+ padding: 0;
1390
+ }
1391
+ .lib-xplat-box.pad-sm > .box-content {
1392
+ padding: var(--spacing-space-2) var(--spacing-space-3);
1393
+ }
1394
+ .lib-xplat-box.pad-md > .box-content {
1395
+ padding: var(--spacing-space-4);
1396
+ }
1397
+ .lib-xplat-box.pad-lg > .box-content {
1398
+ padding: var(--spacing-space-6);
1399
+ }
1400
+
1345
1401
  /* src/components/Breadcrumb/breadcrumb.scss */
1346
1402
  .lib-xplat-breadcrumb {
1347
1403
  width: 100%;
@@ -1664,186 +1720,6 @@
1664
1720
  font-weight: 600;
1665
1721
  }
1666
1722
 
1667
- /* src/components/IconButton/iconButton.scss */
1668
- .lib-xplat-icon-button {
1669
- display: inline-flex;
1670
- align-items: center;
1671
- justify-content: center;
1672
- flex-shrink: 0;
1673
- border: 1px solid transparent;
1674
- border-radius: var(--spacing-radius-md);
1675
- cursor: pointer;
1676
- transition: background-color 0.28s cubic-bezier(0.25, 0.46, 0.45, 0.94);
1677
- }
1678
- .lib-xplat-icon-button.sm {
1679
- width: var(--spacing-control-height-sm);
1680
- height: var(--spacing-control-height-sm);
1681
- font-size: 14px;
1682
- }
1683
- .lib-xplat-icon-button.md {
1684
- width: var(--spacing-control-height-md);
1685
- height: var(--spacing-control-height-md);
1686
- font-size: 18px;
1687
- }
1688
- .lib-xplat-icon-button.lg {
1689
- width: var(--spacing-control-height-lg);
1690
- height: var(--spacing-control-height-lg);
1691
- font-size: 22px;
1692
- }
1693
- .lib-xplat-icon-button:disabled {
1694
- cursor: not-allowed;
1695
- background-color: var(--semantic-surface-neutral-disabled) !important;
1696
- border-color: var(--semantic-surface-neutral-disabled) !important;
1697
- color: var(--semantic-text-disabled) !important;
1698
- }
1699
- .lib-xplat-icon-button.primary {
1700
- color: var(--semantic-text-inverse);
1701
- background-color: var(--semantic-surface-brand-default);
1702
- }
1703
- .lib-xplat-icon-button.primary:hover:not(:disabled) {
1704
- background-color: var(--semantic-surface-brand-strong);
1705
- }
1706
- .lib-xplat-icon-button.primary:focus-visible {
1707
- outline: 2px solid var(--semantic-interaction-focus-ring);
1708
- outline-offset: 2px;
1709
- }
1710
- .lib-xplat-icon-button.secondary {
1711
- color: var(--semantic-surface-brand-default);
1712
- background-color: var(--semantic-surface-neutral-default);
1713
- border-color: var(--semantic-border-default);
1714
- }
1715
- .lib-xplat-icon-button.secondary:hover:not(:disabled) {
1716
- background-color: var(--semantic-surface-neutral-subtle);
1717
- }
1718
- .lib-xplat-icon-button.secondary:focus-visible {
1719
- outline: 2px solid var(--semantic-interaction-focus-ring);
1720
- outline-offset: 2px;
1721
- }
1722
- .lib-xplat-icon-button.danger {
1723
- color: var(--semantic-text-inverse);
1724
- background-color: var(--semantic-surface-error-default);
1725
- }
1726
- .lib-xplat-icon-button.danger:hover:not(:disabled) {
1727
- background-color: var(--semantic-surface-error-strong);
1728
- }
1729
- .lib-xplat-icon-button.danger:focus-visible {
1730
- outline: 2px solid var(--semantic-interaction-focus-ring);
1731
- outline-offset: 2px;
1732
- }
1733
- .lib-xplat-icon-button.ghost {
1734
- color: var(--semantic-text-subtle);
1735
- background-color: transparent;
1736
- }
1737
- .lib-xplat-icon-button.ghost:hover:not(:disabled) {
1738
- background-color: var(--semantic-surface-neutral-subtle);
1739
- }
1740
- .lib-xplat-icon-button.ghost:focus-visible {
1741
- outline: 2px solid var(--semantic-interaction-focus-ring);
1742
- outline-offset: 2px;
1743
- }
1744
-
1745
- /* src/components/ChatInput/chatInput.scss */
1746
- .lib-xplat-chat-input {
1747
- display: flex;
1748
- align-items: flex-end;
1749
- width: 100%;
1750
- gap: var(--spacing-space-2);
1751
- padding: var(--spacing-space-3);
1752
- border: 1px solid var(--semantic-border-default);
1753
- border-radius: var(--spacing-radius-lg);
1754
- background-color: var(--semantic-surface-neutral-default);
1755
- transition: border-color 0.15s, box-shadow 0.15s;
1756
- }
1757
- .lib-xplat-chat-input:hover:not(.disabled):not(:focus-within) {
1758
- border-color: var(--semantic-border-strong);
1759
- }
1760
- .lib-xplat-chat-input:focus-within {
1761
- border-color: var(--semantic-interaction-focus-ring);
1762
- box-shadow: 0 0 0 2px var(--semantic-interaction-overlay-10);
1763
- }
1764
- .lib-xplat-chat-input.disabled {
1765
- background-color: var(--semantic-surface-neutral-subtle);
1766
- border-color: var(--semantic-border-default);
1767
- cursor: not-allowed;
1768
- }
1769
- .lib-xplat-chat-input .chat-input-textarea {
1770
- flex: 1;
1771
- border: none;
1772
- outline: none;
1773
- resize: none;
1774
- min-height: var(--spacing-control-height-sm);
1775
- max-height: 200px;
1776
- overflow-y: auto;
1777
- padding: 4px 0;
1778
- font-size: 16px;
1779
- line-height: 24px;
1780
- color: var(--semantic-text-strong);
1781
- background: transparent;
1782
- }
1783
- .lib-xplat-chat-input .chat-input-textarea::placeholder {
1784
- color: var(--semantic-text-disabled);
1785
- }
1786
- .lib-xplat-chat-input .chat-input-textarea:disabled {
1787
- cursor: not-allowed;
1788
- color: var(--semantic-text-disabled);
1789
- }
1790
-
1791
- /* src/components/Box/box.scss */
1792
- .lib-xplat-box {
1793
- contain: layout style;
1794
- width: 100%;
1795
- height: 100%;
1796
- display: flex;
1797
- flex-direction: column;
1798
- flex: 1;
1799
- min-width: 0;
1800
- border-radius: var(--spacing-radius-xl);
1801
- background-color: var(--semantic-surface-neutral-default);
1802
- overflow: hidden;
1803
- }
1804
- .lib-xplat-box.outlined {
1805
- border: 1px solid var(--semantic-border-default);
1806
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
1807
- }
1808
- .lib-xplat-box.elevated {
1809
- border: none;
1810
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.08);
1811
- }
1812
- .lib-xplat-box.flat {
1813
- border: none;
1814
- background-color: var(--semantic-surface-neutral-subtle);
1815
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
1816
- }
1817
- .lib-xplat-box > .box-title {
1818
- font-weight: 600;
1819
- font-size: 14px;
1820
- color: var(--semantic-text-strong);
1821
- padding: var(--spacing-space-3) var(--spacing-space-4);
1822
- border-bottom: 1px solid var(--semantic-border-subtle);
1823
- min-width: 0;
1824
- overflow: hidden;
1825
- text-overflow: ellipsis;
1826
- white-space: nowrap;
1827
- }
1828
- .lib-xplat-box > .box-content {
1829
- display: flex;
1830
- flex-direction: column;
1831
- flex: 1;
1832
- min-height: 0;
1833
- }
1834
- .lib-xplat-box.pad-none > .box-content {
1835
- padding: 0;
1836
- }
1837
- .lib-xplat-box.pad-sm > .box-content {
1838
- padding: var(--spacing-space-2) var(--spacing-space-3);
1839
- }
1840
- .lib-xplat-box.pad-md > .box-content {
1841
- padding: var(--spacing-space-4);
1842
- }
1843
- .lib-xplat-box.pad-lg > .box-content {
1844
- padding: var(--spacing-space-6);
1845
- }
1846
-
1847
1723
  /* src/components/CardTab/cardTab.scss */
1848
1724
  .lib-xplat-card-tab {
1849
1725
  width: 100%;
@@ -2140,6 +2016,130 @@
2140
2016
  }
2141
2017
  }
2142
2018
 
2019
+ /* src/components/IconButton/iconButton.scss */
2020
+ .lib-xplat-icon-button {
2021
+ display: inline-flex;
2022
+ align-items: center;
2023
+ justify-content: center;
2024
+ flex-shrink: 0;
2025
+ border: 1px solid transparent;
2026
+ border-radius: var(--spacing-radius-md);
2027
+ cursor: pointer;
2028
+ transition: background-color 0.28s cubic-bezier(0.25, 0.46, 0.45, 0.94);
2029
+ }
2030
+ .lib-xplat-icon-button.sm {
2031
+ width: var(--spacing-control-height-sm);
2032
+ height: var(--spacing-control-height-sm);
2033
+ font-size: 14px;
2034
+ }
2035
+ .lib-xplat-icon-button.md {
2036
+ width: var(--spacing-control-height-md);
2037
+ height: var(--spacing-control-height-md);
2038
+ font-size: 18px;
2039
+ }
2040
+ .lib-xplat-icon-button.lg {
2041
+ width: var(--spacing-control-height-lg);
2042
+ height: var(--spacing-control-height-lg);
2043
+ font-size: 22px;
2044
+ }
2045
+ .lib-xplat-icon-button:disabled {
2046
+ cursor: not-allowed;
2047
+ background-color: var(--semantic-surface-neutral-disabled) !important;
2048
+ border-color: var(--semantic-surface-neutral-disabled) !important;
2049
+ color: var(--semantic-text-disabled) !important;
2050
+ }
2051
+ .lib-xplat-icon-button.primary {
2052
+ color: var(--semantic-text-inverse);
2053
+ background-color: var(--semantic-surface-brand-default);
2054
+ }
2055
+ .lib-xplat-icon-button.primary:hover:not(:disabled) {
2056
+ background-color: var(--semantic-surface-brand-strong);
2057
+ }
2058
+ .lib-xplat-icon-button.primary:focus-visible {
2059
+ outline: 2px solid var(--semantic-interaction-focus-ring);
2060
+ outline-offset: 2px;
2061
+ }
2062
+ .lib-xplat-icon-button.secondary {
2063
+ color: var(--semantic-surface-brand-default);
2064
+ background-color: var(--semantic-surface-neutral-default);
2065
+ border-color: var(--semantic-border-default);
2066
+ }
2067
+ .lib-xplat-icon-button.secondary:hover:not(:disabled) {
2068
+ background-color: var(--semantic-surface-neutral-subtle);
2069
+ }
2070
+ .lib-xplat-icon-button.secondary:focus-visible {
2071
+ outline: 2px solid var(--semantic-interaction-focus-ring);
2072
+ outline-offset: 2px;
2073
+ }
2074
+ .lib-xplat-icon-button.danger {
2075
+ color: var(--semantic-text-inverse);
2076
+ background-color: var(--semantic-surface-error-default);
2077
+ }
2078
+ .lib-xplat-icon-button.danger:hover:not(:disabled) {
2079
+ background-color: var(--semantic-surface-error-strong);
2080
+ }
2081
+ .lib-xplat-icon-button.danger:focus-visible {
2082
+ outline: 2px solid var(--semantic-interaction-focus-ring);
2083
+ outline-offset: 2px;
2084
+ }
2085
+ .lib-xplat-icon-button.ghost {
2086
+ color: var(--semantic-text-subtle);
2087
+ background-color: transparent;
2088
+ }
2089
+ .lib-xplat-icon-button.ghost:hover:not(:disabled) {
2090
+ background-color: var(--semantic-surface-neutral-subtle);
2091
+ }
2092
+ .lib-xplat-icon-button.ghost:focus-visible {
2093
+ outline: 2px solid var(--semantic-interaction-focus-ring);
2094
+ outline-offset: 2px;
2095
+ }
2096
+
2097
+ /* src/components/ChatInput/chatInput.scss */
2098
+ .lib-xplat-chat-input {
2099
+ display: flex;
2100
+ align-items: flex-end;
2101
+ width: 100%;
2102
+ gap: var(--spacing-space-2);
2103
+ padding: var(--spacing-space-3);
2104
+ border: 1px solid var(--semantic-border-default);
2105
+ border-radius: var(--spacing-radius-lg);
2106
+ background-color: var(--semantic-surface-neutral-default);
2107
+ transition: border-color 0.15s, box-shadow 0.15s;
2108
+ }
2109
+ .lib-xplat-chat-input:hover:not(.disabled):not(:focus-within) {
2110
+ border-color: var(--semantic-border-strong);
2111
+ }
2112
+ .lib-xplat-chat-input:focus-within {
2113
+ border-color: var(--semantic-interaction-focus-ring);
2114
+ box-shadow: 0 0 0 2px var(--semantic-interaction-overlay-10);
2115
+ }
2116
+ .lib-xplat-chat-input.disabled {
2117
+ background-color: var(--semantic-surface-neutral-subtle);
2118
+ border-color: var(--semantic-border-default);
2119
+ cursor: not-allowed;
2120
+ }
2121
+ .lib-xplat-chat-input .chat-input-textarea {
2122
+ flex: 1;
2123
+ border: none;
2124
+ outline: none;
2125
+ resize: none;
2126
+ min-height: var(--spacing-control-height-sm);
2127
+ max-height: 200px;
2128
+ overflow-y: auto;
2129
+ padding: 4px 0;
2130
+ font-size: 16px;
2131
+ line-height: 24px;
2132
+ color: var(--semantic-text-strong);
2133
+ background: transparent;
2134
+ }
2135
+ .lib-xplat-chat-input .chat-input-textarea::placeholder {
2136
+ color: var(--semantic-text-disabled);
2137
+ }
2138
+ .lib-xplat-chat-input .chat-input-textarea:disabled {
2139
+ cursor: not-allowed;
2140
+ color: var(--semantic-text-disabled);
2141
+ }
2142
+
2143
2143
  /* src/components/CheckBox/checkbox.scss */
2144
2144
  .lib-xplat-checkbox {
2145
2145
  display: flex;
package/dist/index.d.cts CHANGED
@@ -3,13 +3,13 @@ export { Accordion } from './components/Accordion/index.cjs';
3
3
  export { Alert } from './components/Alert/index.cjs';
4
4
  export { Avatar } from './components/Avatar/index.cjs';
5
5
  export { Badge } from './components/Badge/index.cjs';
6
+ export { Box } from './components/Box/index.cjs';
6
7
  export { Breadcrumb } from './components/Breadcrumb/index.cjs';
7
8
  export { Button } from './components/Button/index.cjs';
8
9
  export { Calendar, CalendarDay, CalendarEvent, CalendarProps, isInRange, isSameDay, useCalendar } from './components/Calendar/index.cjs';
9
- export { ChatInput } from './components/ChatInput/index.cjs';
10
- export { Box } from './components/Box/index.cjs';
11
10
  export { CardTab } from './components/CardTab/index.cjs';
12
11
  export { Chart } from './components/Chart/index.cjs';
12
+ export { ChatInput } from './components/ChatInput/index.cjs';
13
13
  export { CheckBox } from './components/CheckBox/index.cjs';
14
14
  export { Chip } from './components/Chip/index.cjs';
15
15
  export { InputDatePicker, PopupDatePicker, RangeDatePicker, SingleDatePicker } from './components/DatePicker/index.cjs';
package/dist/index.d.ts CHANGED
@@ -3,13 +3,13 @@ export { Accordion } from './components/Accordion/index.js';
3
3
  export { Alert } from './components/Alert/index.js';
4
4
  export { Avatar } from './components/Avatar/index.js';
5
5
  export { Badge } from './components/Badge/index.js';
6
+ export { Box } from './components/Box/index.js';
6
7
  export { Breadcrumb } from './components/Breadcrumb/index.js';
7
8
  export { Button } from './components/Button/index.js';
8
9
  export { Calendar, CalendarDay, CalendarEvent, CalendarProps, isInRange, isSameDay, useCalendar } from './components/Calendar/index.js';
9
- export { ChatInput } from './components/ChatInput/index.js';
10
- export { Box } from './components/Box/index.js';
11
10
  export { CardTab } from './components/CardTab/index.js';
12
11
  export { Chart } from './components/Chart/index.js';
12
+ export { ChatInput } from './components/ChatInput/index.js';
13
13
  export { CheckBox } from './components/CheckBox/index.js';
14
14
  export { Chip } from './components/Chip/index.js';
15
15
  export { InputDatePicker, PopupDatePicker, RangeDatePicker, SingleDatePicker } from './components/DatePicker/index.js';