@uniai-fe/uds-primitives 0.0.19 → 0.0.21

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 (44) hide show
  1. package/README.md +9 -5
  2. package/dist/styles.css +10 -973
  3. package/package.json +1 -6
  4. package/src/components/alternate/styles/index.scss +0 -2
  5. package/src/components/badge/styles/index.scss +1 -3
  6. package/src/components/button/styles/button.scss +0 -1
  7. package/src/components/button/styles/round-button.scss +0 -2
  8. package/src/components/button/styles/text-button.scss +0 -2
  9. package/src/components/calendar/styles/index.scss +0 -2
  10. package/src/components/checkbox/styles/index.scss +1 -3
  11. package/src/components/chip/styles/index.scss +1 -3
  12. package/src/components/drawer/styles/index.scss +1 -3
  13. package/src/components/dropdown/styles/index.scss +0 -2
  14. package/src/components/input/styles/index.scss +2 -3
  15. package/src/components/label/styles/index.scss +0 -2
  16. package/src/components/navigation/styles/index.scss +1 -3
  17. package/src/components/pagination/styles/index.scss +0 -2
  18. package/src/components/radio/styles/index.scss +1 -3
  19. package/src/components/scrollbar/styles/index.scss +0 -2
  20. package/src/components/segmented-control/styles/index.scss +0 -2
  21. package/src/components/segmented-control/types/index.ts +9 -9
  22. package/src/components/select/styles/index.scss +0 -2
  23. package/src/components/spinner/styles/index.scss +0 -2
  24. package/src/components/tab/styles/index.scss +0 -2
  25. package/src/components/table/styles/index.scss +0 -2
  26. package/src/index.scss +2 -4
  27. package/src/index.tsx +1 -2
  28. package/src/components/dialog/hooks/index.ts +0 -4
  29. package/src/components/dialog/img/.gitkeep +0 -0
  30. package/src/components/dialog/index.scss +0 -1
  31. package/src/components/dialog/index.tsx +0 -6
  32. package/src/components/dialog/markup/ConfirmDialog.tsx +0 -339
  33. package/src/components/dialog/markup/NoticeDialog.tsx +0 -209
  34. package/src/components/dialog/markup/index.tsx +0 -4
  35. package/src/components/dialog/styles/base.scss +0 -153
  36. package/src/components/dialog/styles/confirm.scss +0 -58
  37. package/src/components/dialog/styles/index.scss +0 -3
  38. package/src/components/dialog/styles/notice.scss +0 -65
  39. package/src/components/dialog/types/index.ts +0 -113
  40. package/src/components/dialog/utils/index.ts +0 -4
  41. package/src/theme/ThemeProvider.tsx +0 -27
  42. package/src/theme/config.ts +0 -29
  43. package/src/theme/index.ts +0 -3
  44. package/src/theme/overrides.scss +0 -215
package/dist/styles.css CHANGED
@@ -1,973 +1,9 @@
1
1
  @charset "UTF-8";
2
- @layer theme.init {
3
- :root {
4
- -webkit-tap-highlight-color: transparent;
5
- text-size-adjust: none;
6
- overflow-wrap: break-word;
7
- word-break: break-word;
8
- }
9
- *,
10
- *::before,
11
- *::after {
12
- margin: 0;
13
- padding: 0;
14
- border: 0;
15
- box-sizing: border-box;
16
- }
17
- * {
18
- letter-spacing: -0.05em;
19
- flex-shrink: 0;
20
- overscroll-behavior-y: none;
21
- font-family: var(--font-family-sans, "Pretendard JP Variable", "Pretendard JP", "Pretendard Variable", "Pretendard", "Inter", sans-serif);
22
- }
23
- *:focus,
24
- *:focus-within,
25
- *:focus-visible {
26
- outline: none;
27
- }
28
- html {
29
- width: 100%;
30
- font-size: 10px;
31
- font-family: var(--font-family-sans);
32
- background-color: #fff;
33
- touch-action: manipulation;
34
- }
35
- body {
36
- width: 100%;
37
- position: relative;
38
- background: none;
39
- }
40
- h1,
41
- h2,
42
- h3,
43
- h4,
44
- h5,
45
- h6 {
46
- margin: 0;
47
- padding: 0;
48
- font-weight: 500;
49
- line-height: 1em;
50
- }
51
- strong,
52
- b {
53
- font-weight: 700;
54
- line-height: 1em;
55
- }
56
- p,
57
- span,
58
- i,
59
- sup,
60
- sub,
61
- del,
62
- ins,
63
- s {
64
- margin: 0;
65
- padding: 0;
66
- line-height: 1em;
67
- word-break: keep-all;
68
- }
69
- i,
70
- address,
71
- cite,
72
- em,
73
- q {
74
- font-weight: 400;
75
- font-style: normal;
76
- }
77
- blockquote,
78
- abbr,
79
- dfn {
80
- font-weight: 400;
81
- }
82
- pre,
83
- code,
84
- samp,
85
- kbd,
86
- var {
87
- font-family: "Consolas", "Monaco", "Menlo", "DejaVu Sans Mono", SFMono-Regular, "Liberation Mono", "Courier New", monospace;
88
- }
89
- blockquote,
90
- q {
91
- quotes: none;
92
- }
93
- blockquote::before,
94
- blockquote::after,
95
- q::before,
96
- q::after {
97
- content: "";
98
- }
99
- img,
100
- svg {
101
- max-width: 100%;
102
- object-fit: contain;
103
- perspective: 1;
104
- }
105
- li,
106
- dt,
107
- dd {
108
- list-style: none;
109
- }
110
- table {
111
- width: 100%;
112
- border-collapse: collapse;
113
- border-spacing: 0;
114
- table-layout: fixed;
115
- }
116
- label {
117
- display: block;
118
- }
119
- legend,
120
- caption {
121
- display: none;
122
- }
123
- article,
124
- aside,
125
- footer,
126
- header,
127
- main,
128
- nav,
129
- section,
130
- time,
131
- audio,
132
- canvas,
133
- figure,
134
- figcaption,
135
- video,
136
- meter,
137
- progress,
138
- details,
139
- summary {
140
- display: block;
141
- }
142
- figure {
143
- position: relative;
144
- width: fit-content;
145
- height: fit-content;
146
- font-size: 0;
147
- }
148
- a {
149
- display: block;
150
- color: #333;
151
- text-decoration: none;
152
- cursor: pointer;
153
- }
154
- input,
155
- select,
156
- button,
157
- textarea {
158
- display: block;
159
- max-width: 100%;
160
- background: transparent;
161
- border-radius: 0;
162
- box-shadow: none;
163
- outline: none;
164
- caret-color: transparent;
165
- appearance: none;
166
- }
167
- button {
168
- cursor: pointer;
169
- font-family: inherit;
170
- user-select: none;
171
- }
172
- textarea {
173
- resize: none;
174
- }
175
- select {
176
- user-select: none;
177
- }
178
- select::-ms-expand {
179
- opacity: 0;
180
- }
181
- input::placeholder,
182
- textarea::placeholder {
183
- opacity: 1;
184
- color: #959595;
185
- }
186
- input:focus::placeholder,
187
- textarea:focus::placeholder {
188
- color: transparent;
189
- }
190
- [type=button],
191
- [type=reset],
192
- [type=submit] {
193
- appearance: button;
194
- }
195
- [type=search] {
196
- appearance: textfield;
197
- outline-offset: -2px;
198
- }
199
- :-webkit-inner-spin-button,
200
- ::-webkit-outer-spin-button {
201
- height: auto;
202
- }
203
- ::-webkit-search-decoration,
204
- ::-webkit-search-cancel-button {
205
- appearance: none;
206
- }
207
- ::-webkit-file-upload-button {
208
- appearance: button;
209
- }
210
- input[type=date],
211
- input[type=number] {
212
- appearance: none;
213
- }
214
- input[type=date]::-webkit-inner-spin-button,
215
- input[type=number]::-webkit-inner-spin-button {
216
- display: none;
217
- }
218
- input[type=date]::-webkit-calendar-picker-indicator,
219
- input[type=number]::-webkit-calendar-picker-indicator {
220
- opacity: 0;
221
- }
222
- input[type=date]::-webkit-clear-button,
223
- input[type=number]::-webkit-clear-button {
224
- display: none;
225
- }
226
- input[type=date]::-ms-clear,
227
- input[type=number]::-ms-clear {
228
- display: none;
229
- }
230
- input[type=range]::-webkit-slider-thumb {
231
- appearance: none;
232
- }
233
- input[type=checkbox] {
234
- appearance: checkbox;
235
- }
236
- button:disabled {
237
- cursor: default;
238
- }
239
- progress {
240
- appearance: none;
241
- border: 1px solid #e1e1e1;
242
- }
243
- progress::-webkit-progress-bar {
244
- background-color: #fff;
245
- }
246
- progress::-webkit-progress-value {
247
- background-color: grey;
248
- }
249
- @media (orientation: landscape) {
250
- html.mobile-device {
251
- font-size: 1vw;
252
- }
253
- }
254
- @media (orientation: portrait) {
255
- html.mobile-device {
256
- font-size: 1vw;
257
- }
258
- }
259
- }
260
- @layer theme.init {
261
- html,
262
- body {
263
- width: 100%;
264
- height: 100%;
265
- position: fixed;
266
- top: 0;
267
- left: 0;
268
- overflow: auto;
269
- z-index: 0;
270
- }
271
- }
272
- @layer theme.tokens.color {
273
- :root {
274
- --color-common-100: #fff;
275
- --color-common-0: #000;
276
- --color-neutral-10: #1a1a1a;
277
- --color-neutral-20: #333333;
278
- --color-neutral-30: #4d4d4d;
279
- --color-neutral-40: #666666;
280
- --color-neutral-45: #737373;
281
- --color-neutral-50: #808080;
282
- --color-neutral-55: #8c8c8c;
283
- --color-neutral-60: #999999;
284
- --color-neutral-70: #b3b3b3;
285
- --color-neutral-80: #cccccc;
286
- --color-neutral-90: #e6e6e6;
287
- --color-neutral-95: #f2f2f2;
288
- --color-neutral-99: #fcfcfc;
289
- --color-cool-gray-10: #18191b;
290
- --color-cool-gray-20: #313235;
291
- --color-cool-gray-25: #3d3f43;
292
- --color-cool-gray-30: #494b50;
293
- --color-cool-gray-35: #55585e;
294
- --color-cool-gray-40: #61656b;
295
- --color-cool-gray-45: #6d7178;
296
- --color-cool-gray-50: #797e86;
297
- --color-cool-gray-55: #878b92;
298
- --color-cool-gray-60: #94989e;
299
- --color-cool-gray-65: #a1a5aa;
300
- --color-cool-gray-70: #afb1b6;
301
- --color-cool-gray-75: #bcbec2;
302
- --color-cool-gray-80: #cacbce;
303
- --color-cool-gray-85: #d7d8db;
304
- --color-cool-gray-90: #e4e5e7;
305
- --color-cool-gray-95: #f2f2f3;
306
- --color-cool-gray-99: #fcfcfd;
307
- --color-blue-10: #001233;
308
- --color-blue-20: #002466;
309
- --color-blue-30: #003699;
310
- --color-blue-40: #0047cc;
311
- --color-blue-45: #0050e5;
312
- --color-blue-50: #0059ff;
313
- --color-blue-55: #1a6aff;
314
- --color-blue-60: #337aff;
315
- --color-blue-70: #669cff;
316
- --color-blue-80: #99bdff;
317
- --color-blue-90: #ccdeff;
318
- --color-blue-95: #e5eeff;
319
- --color-blue-99: #fafcff;
320
- --color-purple-10: #120033;
321
- --color-purple-20: #240066;
322
- --color-purple-30: #360099;
323
- --color-purple-40: #4800cc;
324
- --color-purple-45: #5200e5;
325
- --color-purple-50: #5b00ff;
326
- --color-purple-55: #6c1bff;
327
- --color-purple-60: #7b33ff;
328
- --color-purple-70: #9c66ff;
329
- --color-purple-80: #bd99ff;
330
- --color-purple-90: #deccff;
331
- --color-purple-95: #efe5ff;
332
- --color-purple-99: #fcfaff;
333
- --color-magenta-10: #32012e;
334
- --color-magenta-20: #64025b;
335
- --color-magenta-30: #950489;
336
- --color-magenta-40: #c705b6;
337
- --color-magenta-45: #e005cd;
338
- --color-magenta-50: #f906e4;
339
- --color-magenta-55: #fa1fe7;
340
- --color-magenta-60: #fa38e9;
341
- --color-magenta-70: #fb6aef;
342
- --color-magenta-80: #fd9bf4;
343
- --color-magenta-90: #fecdfa;
344
- --color-magenta-95: #fee6fc;
345
- --color-magenta-99: #fffafe;
346
- --color-pink-10: #320116;
347
- --color-pink-20: #63032b;
348
- --color-pink-30: #950441;
349
- --color-pink-40: #c70556;
350
- --color-pink-45: #e00661;
351
- --color-pink-50: #f8076c;
352
- --color-pink-55: #f91f7a;
353
- --color-pink-60: #fa3889;
354
- --color-pink-70: #fb6aa7;
355
- --color-pink-80: #fc9cc4;
356
- --color-pink-90: #fecde2;
357
- --color-pink-95: #fee6f0;
358
- --color-pink-99: #fffafc;
359
- --color-red-10: #310602;
360
- --color-red-20: #610d05;
361
- --color-red-30: #921307;
362
- --color-red-40: #c21a0a;
363
- --color-red-45: #da1d0b;
364
- --color-red-50: #f2200d;
365
- --color-red-55: #f43625;
366
- --color-red-60: #f54d3d;
367
- --color-red-70: #f7796e;
368
- --color-red-80: #faa69e;
369
- --color-red-90: #fcd2cf;
370
- --color-red-95: #fde8e7;
371
- --color-red-99: #fffafa;
372
- --color-orange-10: #331100;
373
- --color-orange-20: #662200;
374
- --color-orange-30: #993300;
375
- --color-orange-40: #cc4400;
376
- --color-orange-45: #e54d00;
377
- --color-orange-50: #ff5500;
378
- --color-orange-55: #ff661a;
379
- --color-orange-60: #ff7733;
380
- --color-orange-70: #ff9966;
381
- --color-orange-80: #ffbb99;
382
- --color-orange-90: #ffddcc;
383
- --color-orange-95: #ffeee5;
384
- --color-orange-99: #fffcfa;
385
- --color-yellow-10: #302903;
386
- --color-yellow-20: #615205;
387
- --color-yellow-30: #917a08;
388
- --color-yellow-40: #c2a30a;
389
- --color-yellow-45: #dab80b;
390
- --color-yellow-50: #f2cc0d;
391
- --color-yellow-55: #f4d125;
392
- --color-yellow-60: #f5d63d;
393
- --color-yellow-70: #f7e06e;
394
- --color-yellow-80: #faeb9e;
395
- --color-yellow-90: #fcf5cf;
396
- --color-yellow-95: #fefae7;
397
- --color-yellow-99: #fffefa;
398
- --color-lime-10: #2b3300;
399
- --color-lime-20: #556600;
400
- --color-lime-30: #809900;
401
- --color-lime-40: #aacc00;
402
- --color-lime-45: #bfe500;
403
- --color-lime-50: #d5ff00;
404
- --color-lime-55: #d9ff1a;
405
- --color-lime-60: #ddff33;
406
- --color-lime-70: #e6ff66;
407
- --color-lime-80: #eeff99;
408
- --color-lime-90: #f7ffcc;
409
- --color-lime-95: #fbffe5;
410
- --color-lime-99: #fefffa;
411
- --color-green-10: #062d13;
412
- --color-green-20: #0d5926;
413
- --color-green-30: #138639;
414
- --color-green-40: #1ab24d;
415
- --color-green-45: #1dc956;
416
- --color-green-50: #20df60;
417
- --color-green-55: #36e270;
418
- --color-green-60: #4de580;
419
- --color-green-70: #79ec9f;
420
- --color-green-80: #a6f2bf;
421
- --color-green-90: #d2f9df;
422
- --color-green-95: #e9fcef;
423
- --color-green-99: #fbfefc;
424
- --color-bright-green-10: #213003;
425
- --color-bright-green-20: #426105;
426
- --color-bright-green-30: #639108;
427
- --color-bright-green-40: #84c10b;
428
- --color-bright-green-45: #95da0c;
429
- --color-bright-green-50: #a5f20d;
430
- --color-bright-green-55: #aef325;
431
- --color-bright-green-60: #b7f43e;
432
- --color-bright-green-70: #c9f76e;
433
- --color-bright-green-80: #dbfa9e;
434
- --color-bright-green-90: #edfccf;
435
- --color-bright-green-95: #f6fee7;
436
- --color-bright-green-99: #fdfffa;
437
- --color-teal-10: #062d20;
438
- --color-teal-20: #0d5940;
439
- --color-teal-30: #13865f;
440
- --color-teal-40: #1ab27f;
441
- --color-teal-45: #1dc98f;
442
- --color-teal-50: #20df9f;
443
- --color-teal-55: #36e2a9;
444
- --color-teal-60: #4de5b2;
445
- --color-teal-70: #79ecc5;
446
- --color-teal-80: #a6f2d9;
447
- --color-teal-90: #d2f9ec;
448
- --color-teal-95: #e9fcf5;
449
- --color-teal-99: #fbfefd;
450
- --color-cyan-10: #002f33;
451
- --color-cyan-20: #005e66;
452
- --color-cyan-30: #008c99;
453
- --color-cyan-40: #00bbcc;
454
- --color-cyan-45: #00d2e5;
455
- --color-cyan-50: #00eaff;
456
- --color-cyan-55: #1aecff;
457
- --color-cyan-60: #33eeff;
458
- --color-cyan-70: #66f2ff;
459
- --color-cyan-80: #99f7ff;
460
- --color-cyan-90: #ccfbff;
461
- --color-cyan-95: #e5fdff;
462
- --color-cyan-99: #faffff;
463
- }
464
- }
465
- @layer theme.tokens.color {
466
- :root,
467
- .theme-light {
468
- --color-primary-default: var(--color-blue-55);
469
- --color-primary-strong: var(--color-blue-45);
470
- --color-primary-heavy: var(--color-blue-30);
471
- --color-secondary-default: var(--color-blue-95);
472
- --color-secondary-strong: var(--color-blue-90);
473
- --color-secondary-heavy: var(--color-blue-80);
474
- --color-tertiary-default: var(--color-cool-gray-95);
475
- --color-tertiary-strong: var(--color-cool-gray-90);
476
- --color-tertiary-heavy: var(--color-cool-gray-80);
477
- }
478
- }
479
- @layer theme.tokens.color {
480
- :root,
481
- .theme-light {
482
- --color-label-strong: var(--color-cool-gray-10);
483
- --color-label-standard: var(--color-cool-gray-20);
484
- --color-label-neutral: var(--color-cool-gray-50);
485
- --color-label-alternative: var(--color-cool-gray-70);
486
- --color-label-assistive: var(--color-cool-gray-80);
487
- --color-label-disabled: var(--color-cool-gray-80);
488
- }
489
- }
490
- @layer theme.tokens.color {
491
- :root,
492
- .theme-light {
493
- --color-border-standard-cool-gray: var(--color-cool-gray-90);
494
- --color-border-standard-blue: var(--color-blue-90);
495
- --color-border-standard-strong: var(--color-cool-gray-75);
496
- --color-border-standard-heavy: var(--color-cool-gray-20);
497
- --color-border-standard-alternative: var(--color-cool-gray-80);
498
- --color-border-standard-assistive: var(--color-cool-gray-90);
499
- }
500
- }
501
- @layer theme.tokens.color {
502
- :root,
503
- .theme-light {
504
- --color-bg-standard-cool-gray: var(--color-cool-gray-99);
505
- --color-bg-alternative-cool-gray: var(--color-cool-gray-95);
506
- --color-bg-standard-neutral: var(--color-neutral-99);
507
- --color-bg-alternative-neutral: var(--color-neutral-95);
508
- }
509
- }
510
- @layer theme.tokens.color {
511
- :root,
512
- .theme-light {
513
- --color-bg-surface-static-white: var(--color-common-100);
514
- --color-bg-surface-static-cool-gray: var(--color-cool-gray-99);
515
- --color-bg-surface-static-blue: var(--color-blue-95);
516
- --color-bg-surface-neutral: var(--color-neutral-95);
517
- --color-bg-surface-standard: var(--color-cool-gray-95);
518
- --color-bg-surface-strong: var(--color-neutral-80);
519
- --color-bg-surface-heavy: var(--color-cool-gray-20);
520
- }
521
- }
522
- @layer theme.tokens.color {
523
- :root,
524
- .theme-light {
525
- --color-interaction-static: var(--color-common-100);
526
- --color-interaction-disabled: var(--color-cool-gray-95);
527
- }
528
- }
529
- @layer theme.tokens.color {
530
- :root,
531
- .theme-light {
532
- --color-danger: var(--color-red-40);
533
- --color-error: var(--color-red-45);
534
- --color-warning: var(--color-yellow-50);
535
- --color-success: var(--color-green-40);
536
- --color-information: var(--color-blue-60);
537
- --color-new: var(--color-red-50);
538
- }
539
- }
540
- @layer theme.tokens.spacing {
541
- :root {
542
- --spacing-padding-1: 2px;
543
- --spacing-padding-2: 4px;
544
- --spacing-padding-3: 6px;
545
- --spacing-padding-4: 8px;
546
- --spacing-padding-5: 12px;
547
- --spacing-padding-6: 16px;
548
- --spacing-padding-7: 20px;
549
- --spacing-padding-8: 24px;
550
- --spacing-padding-9: 28px;
551
- --spacing-padding-10: 32px;
552
- --spacing-padding-11: 40px;
553
- }
554
- }
555
- @layer theme.tokens.spacing {
556
- :root {
557
- --spacing-gap-1: 2px;
558
- --spacing-gap-2: 4px;
559
- --spacing-gap-3: 6px;
560
- --spacing-gap-4: 8px;
561
- --spacing-gap-5: 12px;
562
- --spacing-gap-6: 16px;
563
- --spacing-gap-7: 20px;
564
- --spacing-gap-8: 24px;
565
- --spacing-gap-9: 28px;
566
- --spacing-gap-10: 32px;
567
- --spacing-gap-11: 36px;
568
- --spacing-gap-12: 40px;
569
- --spacing-gap-13: 48px;
570
- --spacing-gap-14: 64px;
571
- --spacing-gap-15: 80px;
572
- }
573
- }
574
- @layer theme.tokens.layout {
575
- :root {
576
- --theme-breakpoint-xsmall-start: 0px;
577
- --theme-breakpoint-small-start: 768px;
578
- --theme-breakpoint-medium-start: 992px;
579
- --theme-breakpoint-large-start: 1200px;
580
- }
581
- }
582
- @layer theme.tokens.layout {
583
- :root {
584
- --theme-size-xxsmall: 4px;
585
- --theme-size-xsmall-1: 8px;
586
- --theme-size-xsmall-2: 12px;
587
- --theme-size-xsmall-3: 16px;
588
- --theme-size-small-1: 20px;
589
- --theme-size-small-2: 24px;
590
- --theme-size-small-3: 32px;
591
- --theme-size-medium-1: 40px;
592
- --theme-size-medium-2: 48px;
593
- --theme-size-medium-3: 56px;
594
- --theme-size-medium-4: 64px;
595
- --theme-size-large-1: 72px;
596
- --theme-size-large-2: 80px;
597
- --theme-size-xlarge-1: 96px;
598
- --theme-size-xlarge-2: 120px;
599
- }
600
- }
601
- @layer theme.tokens.layout {
602
- :root {
603
- --theme-radius-4x4: 1px;
604
- --theme-radius-8x8: 2px;
605
- --theme-radius-12x12: 2px;
606
- --theme-radius-16x16: 2px;
607
- --theme-radius-20x20: 4px;
608
- --theme-radius-24x24: 4px;
609
- --theme-radius-32x32: 4px;
610
- --theme-radius-40x40: 6px;
611
- --theme-radius-48x48: 6px;
612
- --theme-radius-56x56: 8px;
613
- --theme-radius-64x64: 10px;
614
- --theme-radius-72x72: 12px;
615
- --theme-radius-80x80: 16px;
616
- --theme-radius-96x96: 16px;
617
- --theme-radius-120x120: 16px;
618
- --theme-radius-xxsmall: 1px;
619
- --theme-radius-xsmall: 2px;
620
- --theme-radius-small: 4px;
621
- --theme-radius-medium-1: 6px;
622
- --theme-radius-medium-2: 6px;
623
- --theme-radius-medium-3: 8px;
624
- --theme-radius-medium-4: 10px;
625
- --theme-radius-large-1: 12px;
626
- --theme-radius-large-2: 16px;
627
- --theme-radius-xlarge: 16px;
628
- }
629
- }
630
- @layer theme.tokens.typography {
631
- @font-face {
632
- font-family: "Pretendard JP Variable";
633
- src: url("./fonts/pretendard-jp/PretendardJPVariable.woff2") format("woff2");
634
- font-weight: 100 900;
635
- font-style: normal;
636
- font-display: swap;
637
- }
638
- @font-face {
639
- font-family: "InterVariable";
640
- src: url("./fonts/inter/InterVariable.woff2") format("woff2");
641
- font-weight: 100 900;
642
- font-style: normal;
643
- font-display: swap;
644
- }
645
- }
646
- @layer theme.tokens.typography {
647
- :root {
648
- --font-family-pretendard:
649
- "Pretendard JP Variable", "Pretendard JP", "Pretendard Variable",
650
- "Pretendard", "InterVariable", "Inter", "Noto Sans KR", "-apple-system",
651
- "BlinkMacSystemFont", "Apple SD Gothic Neo", "Segoe UI", "Roboto",
652
- "Helvetica Neue", "Helvetica", "Apple Color Emoji", "Segoe UI Emoji",
653
- "Segoe UI Symbol", "Malgun Gothic", "맑은 고딕", "돋움", "dotum",
654
- "Oxygen", "Oxygen-Sans", "Ubuntu", "Cantarell", "sans-serif";
655
- --font-family-inter:
656
- "InterVariable", "Inter", "Pretendard JP Variable", "Pretendard JP",
657
- "Pretendard Variable", "Pretendard", "-apple-system",
658
- "BlinkMacSystemFont", "Segoe UI", "Roboto", "Helvetica Neue", "Helvetica",
659
- "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Malgun Gothic",
660
- "맑은 고딕", "돋움", "dotum", "Oxygen", "Oxygen-Sans", "Ubuntu",
661
- "Cantarell", "sans-serif";
662
- --font-family-system:
663
- "-apple-system", "BlinkMacSystemFont", "Segoe UI", "Roboto",
664
- "Helvetica Neue", "Helvetica", "Apple Color Emoji", "Segoe UI Emoji",
665
- "Segoe UI Symbol", "Malgun Gothic", "맑은 고딕", "돋움", "dotum",
666
- "Oxygen", "Oxygen-Sans", "Ubuntu", "Cantarell", "sans-serif";
667
- --font-family-sans: var(--font-family-pretendard);
668
- }
669
- }
670
- @layer theme.tokens.typography {
671
- :root {
672
- --font-display-large-size: 60px;
673
- --font-display-large-line-height: 1.4em;
674
- --font-display-large-letter-spacing: -0.2px;
675
- --font-display-large-weight: 700;
676
- --font-display-medium-size: 44px;
677
- --font-display-medium-line-height: 1.4em;
678
- --font-display-medium-letter-spacing: -0.2px;
679
- --font-display-medium-weight: 700;
680
- --font-display-small-size: 36px;
681
- --font-display-small-line-height: 1.4em;
682
- --font-display-small-letter-spacing: -0.2px;
683
- --font-display-small-weight: 600;
684
- }
685
- }
686
- @layer theme.tokens.typography {
687
- :root {
688
- --font-heading-xlarge-size: 40px;
689
- --font-heading-xlarge-line-height: 1.4em;
690
- --font-heading-xlarge-letter-spacing: -0.2px;
691
- --font-heading-xlarge-weight: 600;
692
- --font-heading-large-size: 32px;
693
- --font-heading-large-line-height: 1.4em;
694
- --font-heading-large-letter-spacing: -0.2px;
695
- --font-heading-large-weight: 600;
696
- --font-heading-medium-size: 24px;
697
- --font-heading-medium-line-height: 1.4em;
698
- --font-heading-medium-letter-spacing: 0px;
699
- --font-heading-medium-weight: 600;
700
- --font-heading-small-size: 19px;
701
- --font-heading-small-line-height: 1.4em;
702
- --font-heading-small-letter-spacing: 0px;
703
- --font-heading-small-weight: 600;
704
- --font-heading-xsmall-size: 17px;
705
- --font-heading-xsmall-line-height: 1.5em;
706
- --font-heading-xsmall-letter-spacing: 0px;
707
- --font-heading-xsmall-weight: 600;
708
- --font-heading-xxsmall-size: 15px;
709
- --font-heading-xxsmall-line-height: 1.5em;
710
- --font-heading-xxsmall-letter-spacing: 0px;
711
- --font-heading-xxsmall-weight: 600;
712
- }
713
- }
714
- @layer theme.tokens.typography {
715
- :root {
716
- --font-body-large-size: 19px;
717
- --font-body-large-line-height: 1.5em;
718
- --font-body-large-letter-spacing: 0px;
719
- --font-body-large-weight: 600;
720
- --font-body-medium-size: 17px;
721
- --font-body-medium-line-height: 1.5em;
722
- --font-body-medium-letter-spacing: 0px;
723
- --font-body-medium-weight: 500;
724
- --font-body-small-size: 16px;
725
- --font-body-small-line-height: 1.5em;
726
- --font-body-small-letter-spacing: 0px;
727
- --font-body-small-weight: 400;
728
- --font-body-xsmall-size: 15px;
729
- --font-body-xsmall-line-height: 1.5em;
730
- --font-body-xsmall-letter-spacing: 0px;
731
- --font-body-xsmall-weight: 400;
732
- --font-body-xxsmall-size: 13px;
733
- --font-body-xxsmall-line-height: 1.5em;
734
- --font-body-xxsmall-letter-spacing: 0px;
735
- --font-body-xxsmall-weight: 400;
736
- }
737
- }
738
- @layer theme.tokens.typography {
739
- :root {
740
- --font-label-large-size: 16px;
741
- --font-label-large-line-height: 1.5em;
742
- --font-label-large-letter-spacing: 0px;
743
- --font-label-large-weight: 400;
744
- --font-label-medium-size: 14px;
745
- --font-label-medium-line-height: 1.5em;
746
- --font-label-medium-letter-spacing: 0px;
747
- --font-label-medium-weight: 400;
748
- --font-label-small-size: 13px;
749
- --font-label-small-line-height: 1.5em;
750
- --font-label-small-letter-spacing: 0px;
751
- --font-label-small-weight: 500;
752
- }
753
- }
754
- @layer theme.tokens.typography {
755
- :root {
756
- --font-caption-large-size: 12px;
757
- --font-caption-large-line-height: 1.5em;
758
- --font-caption-large-letter-spacing: 0px;
759
- --font-caption-large-weight: 600;
760
- --font-caption-medium-size: 11px;
761
- --font-caption-medium-line-height: 1.5em;
762
- --font-caption-medium-letter-spacing: 0px;
763
- --font-caption-medium-weight: 500;
764
- }
765
- }
766
- /**
767
- * Radix Theme가 사용하는 CSS 변수에 foundation 토큰을 연결하기 위한 placeholder.
768
- * - 추후 토큰 매핑이 확정되면, 실제 색상/타이포/간격 값을 아래에 정의한다.
769
- */
770
- /* ThemeProvider 기본 className(theme-root)와 Radix Theme 루트(.radix-themes)에 scope 지정 */
771
- :where(.radix-themes, .theme-root, :root) {
772
- /* Foundation 기본 폰트로 통일 */
773
- --default-font-family: var(--font-body-medium-family, "Pretendard");
774
- /* 서피스/라벨/피드백 계층을 foundation 시멘틱 토큰으로 변환 */
775
- --color-background: var(--color-bg-surface-static-white);
776
- --color-panel-solid: var(--color-bg-surface-static-white);
777
- --color-panel-translucent: var(--color-bg-surface-neutral);
778
- --color-surface: var(--color-bg-surface-standard);
779
- --color-overlay: var(--color-border-standard-heavy);
780
- --color-interaction-static: var(--color-interaction-static);
781
- --color-interaction-disabled: var(--color-interaction-disabled);
782
- --color-border: var(--color-border-standard-cool-gray);
783
- --color-border-strong: var(--color-border-standard-strong);
784
- --color-border-heavy: var(--color-border-standard-heavy);
785
- /* Primary(blue) 팔레트를 foundation blue 단계로 재정의 */
786
- --blue-1: var(--color-blue-99);
787
- --blue-2: var(--color-blue-95);
788
- --blue-3: var(--color-blue-90);
789
- --blue-4: var(--color-blue-80);
790
- --blue-5: var(--color-blue-70);
791
- --blue-6: var(--color-blue-60);
792
- --blue-7: var(--color-blue-55);
793
- --blue-8: var(--color-blue-50);
794
- --blue-9: var(--color-blue-45);
795
- --blue-10: var(--color-blue-40);
796
- --blue-11: var(--color-blue-30);
797
- --blue-12: var(--color-blue-20);
798
- --blue-contrast: var(--color-common-100);
799
- --blue-surface: var(--color-bg-surface-static-blue);
800
- --blue-indicator: var(--color-primary-default);
801
- --blue-track: var(--color-secondary-strong);
802
- /* Secondary(sky) 팔레트 → foundation secondary 토큰 */
803
- --sky-1: var(--color-blue-99);
804
- --sky-2: var(--color-blue-95);
805
- --sky-3: var(--color-blue-90);
806
- --sky-4: var(--color-blue-80);
807
- --sky-5: var(--color-blue-70);
808
- --sky-6: var(--color-blue-60);
809
- --sky-7: var(--color-blue-55);
810
- --sky-8: var(--color-blue-50);
811
- --sky-9: var(--color-secondary-strong);
812
- --sky-10: var(--color-secondary-heavy);
813
- --sky-11: var(--color-secondary-default);
814
- --sky-12: var(--color-blue-45);
815
- --sky-contrast: var(--color-primary-heavy);
816
- --sky-surface: var(--color-bg-surface-static-blue);
817
- --sky-indicator: var(--color-secondary-strong);
818
- --sky-track: var(--color-secondary-heavy);
819
- /* Tertiary(gray) 팔레트 → cool gray 단계 */
820
- --gray-1: var(--color-cool-gray-99);
821
- --gray-2: var(--color-cool-gray-95);
822
- --gray-3: var(--color-cool-gray-90);
823
- --gray-4: var(--color-cool-gray-85);
824
- --gray-5: var(--color-cool-gray-80);
825
- --gray-6: var(--color-cool-gray-75);
826
- --gray-7: var(--color-cool-gray-70);
827
- --gray-8: var(--color-cool-gray-65);
828
- --gray-9: var(--color-cool-gray-60);
829
- --gray-10: var(--color-cool-gray-55);
830
- --gray-11: var(--color-cool-gray-45);
831
- --gray-12: var(--color-cool-gray-20);
832
- --gray-contrast: var(--color-label-strong);
833
- --gray-surface: var(--color-bg-surface-standard);
834
- --gray-indicator: var(--color-label-neutral);
835
- --gray-track: var(--color-label-assistive);
836
- /* 공간 단위(spacing)는 foundation gap/padding 토큰으로 재정의 */
837
- --space-1: var(--spacing-gap-1);
838
- --space-2: var(--spacing-gap-2);
839
- --space-3: var(--spacing-gap-3);
840
- --space-4: var(--spacing-gap-4);
841
- --space-5: var(--spacing-gap-8);
842
- --space-6: var(--spacing-gap-10);
843
- --space-7: var(--spacing-gap-11);
844
- --space-8: var(--spacing-gap-12);
845
- --space-9: var(--spacing-gap-14);
846
- /* 글꼴 스케일을 foundation 타이포 토큰으로 매핑 */
847
- --font-size-1: var(--font-caption-large-size);
848
- --font-size-2: var(--font-label-medium-size);
849
- --font-size-3: var(--font-label-large-size);
850
- --font-size-4: var(--font-heading-xsmall-size);
851
- --font-size-5: var(--font-heading-small-size);
852
- --font-size-6: var(--font-heading-medium-size);
853
- --font-size-7: var(--font-heading-large-size);
854
- --font-size-8: var(--font-heading-xlarge-size);
855
- --font-size-9: var(--font-display-large-size);
856
- --line-height-1: var(--font-caption-large-line-height);
857
- --line-height-2: var(--font-label-medium-line-height);
858
- --line-height-3: var(--font-label-large-line-height);
859
- --line-height-4: var(--font-heading-xsmall-line-height);
860
- --line-height-5: var(--font-heading-small-line-height);
861
- --line-height-6: var(--font-heading-medium-line-height);
862
- --line-height-7: var(--font-heading-large-line-height);
863
- --line-height-8: var(--font-heading-xlarge-line-height);
864
- --line-height-9: var(--font-display-large-line-height);
865
- --letter-spacing-1: var(--font-caption-large-letter-spacing);
866
- --letter-spacing-2: var(--font-label-medium-letter-spacing);
867
- --letter-spacing-3: var(--font-label-large-letter-spacing);
868
- --letter-spacing-4: var(--font-heading-xsmall-letter-spacing);
869
- --letter-spacing-5: var(--font-heading-small-letter-spacing);
870
- --letter-spacing-6: var(--font-heading-medium-letter-spacing);
871
- --letter-spacing-7: var(--font-heading-large-letter-spacing);
872
- --letter-spacing-8: var(--font-heading-xlarge-letter-spacing);
873
- --letter-spacing-9: var(--font-display-large-letter-spacing);
874
- --font-weight-light: var(--font-label-small-weight);
875
- --font-weight-regular: var(--font-body-small-weight);
876
- --font-weight-medium: var(--font-body-medium-weight);
877
- --font-weight-bold: var(--font-display-large-weight);
878
- --default-font-family: var(--font-body-medium-family, "Pretendard");
879
- --default-font-size: var(--font-body-medium-size);
880
- --default-font-style: normal;
881
- --default-font-weight: var(--font-body-medium-weight);
882
- --default-line-height: var(--font-body-medium-line-height);
883
- --default-letter-spacing: var(--font-body-medium-letter-spacing);
884
- --default-leading-trim-start: 0.42em;
885
- --default-leading-trim-end: 0.36em;
886
- --heading-font-family: var(--font-body-medium-family, "Pretendard");
887
- --heading-font-size-adjust: 1;
888
- --heading-font-style: normal;
889
- --heading-leading-trim-start: var(--default-leading-trim-start);
890
- --heading-leading-trim-end: var(--default-leading-trim-end);
891
- --heading-letter-spacing: var(--font-heading-small-letter-spacing);
892
- --heading-line-height-1: var(--font-heading-xxsmall-line-height);
893
- --heading-line-height-2: var(--font-heading-xsmall-line-height);
894
- --heading-line-height-3: var(--font-heading-small-line-height);
895
- --heading-line-height-4: var(--font-heading-medium-line-height);
896
- --heading-line-height-5: var(--font-heading-large-line-height);
897
- --heading-line-height-6: var(--font-heading-xlarge-line-height);
898
- --heading-line-height-7: var(--font-display-small-line-height, 1.4em);
899
- --heading-line-height-8: var(--font-display-medium-line-height);
900
- --heading-line-height-9: var(--font-display-large-line-height);
901
- --code-font-family:
902
- "Menlo", "Consolas", "Bitstream Vera Sans Mono", monospace;
903
- --code-font-style: normal;
904
- --code-letter-spacing: -0.007em;
905
- --strong-font-family: var(--font-body-medium-family, "Pretendard");
906
- --strong-font-weight: var(--font-display-medium-weight, 700);
907
- --em-font-family: "Times New Roman", "Times", serif;
908
- --quote-font-family: "Times New Roman", "Times", serif;
909
- --tab-active-letter-spacing: var(--font-label-medium-letter-spacing);
910
- --tab-inactive-letter-spacing: var(--font-label-medium-letter-spacing);
911
- --tab-active-word-spacing: 0em;
912
- --tab-inactive-word-spacing: 0em;
913
- /* 입력/텍스트 요소에서 커서 컬러는 본문 텍스트와 동일하게 유지한다. */
914
- }
915
- :where(.radix-themes, .theme-root, :root) input,
916
- :where(.radix-themes, .theme-root, :root) textarea {
917
- caret-color: var(--color-label-strong);
918
- }
919
- :where(.radix-themes, .theme-root, :root) {
920
- /* 커서/컨테이너 기본값 */
921
- --cursor-button: default;
922
- --cursor-checkbox: default;
923
- --cursor-disabled: not-allowed;
924
- --cursor-link: pointer;
925
- --cursor-menu-item: default;
926
- --cursor-radio: default;
927
- --cursor-slider-thumb: default;
928
- --cursor-slider-thumb-active: default;
929
- --cursor-switch: default;
930
- --container-1: 448px;
931
- --container-2: 688px;
932
- --container-3: 880px;
933
- --container-4: 1136px;
934
- --scrollarea-scrollbar-horizontal-margin-top: var(--space-1);
935
- --scrollarea-scrollbar-horizontal-margin-bottom: var(--space-1);
936
- --scrollarea-scrollbar-horizontal-margin-left: var(--space-1);
937
- --scrollarea-scrollbar-horizontal-margin-right: var(--space-1);
938
- --scrollarea-scrollbar-vertical-margin-top: var(--space-1);
939
- --scrollarea-scrollbar-vertical-margin-bottom: var(--space-1);
940
- --scrollarea-scrollbar-vertical-margin-left: var(--space-1);
941
- --scrollarea-scrollbar-vertical-margin-right: var(--space-1);
942
- --segmented-control-transition-duration: 100ms;
943
- --spinner-animation-duration: 800ms;
944
- --spinner-opacity: 0.65;
945
- overflow-wrap: break-word;
946
- font-family: var(--default-font-family);
947
- font-size: var(--default-font-size);
948
- font-weight: var(--default-font-weight);
949
- font-style: var(--default-font-style);
950
- line-height: var(--default-line-height);
951
- letter-spacing: var(--default-letter-spacing);
952
- -webkit-text-size-adjust: none;
953
- text-size-adjust: none;
954
- -webkit-font-smoothing: antialiased;
955
- -moz-osx-font-smoothing: grayscale;
956
- color: var(--gray-12);
957
- }
958
-
959
- /* Radix Themes reset(`.rt-reset`)이 foundation reset보다 우선하지 않도록 기본 박스 모델 재정의 */
960
- :where(.radix-themes, .theme-root) :is(.rt-reset, .rt-reset::before, .rt-reset::after) {
961
- box-sizing: border-box;
962
- margin: 0;
963
- padding: 0;
964
- border: 0;
965
- }
966
-
967
- /* 모든 primitives component SCSS를 한 번에 노출해 서비스 import 부담을 줄인다. */
2
+ /* 모든 primitives component SCSS를 한 번에 노출해 서비스 import 부담을 줄인다.
3
+ foundation CSS(`@uniai-fe/uds-foundation/css`)는 소비자가 별도로 한 번만 로드해야 한다. */
968
4
  /* TODO(alternate): 스타일을 SOT 토큰 값으로 정의한다. */
969
5
  /* Badge 토큰을 foundation 변수에 맞춰 한 번 더 래핑해 override 여지를 둔다. */
970
- :where(.radix-themes, .theme-root, :root) {
6
+ .uds-theme-root {
971
7
  --theme-badge-height-xsmall: var(--theme-size-small-1, 20px);
972
8
  --theme-badge-height-small: var(--theme-size-small-2, 24px);
973
9
  --theme-badge-padding-inline-xsmall: var(--spacing-padding-3, 6px);
@@ -1650,7 +686,7 @@
1650
686
  }
1651
687
 
1652
688
  /* TODO(calendar): 스타일을 SOT 토큰 값으로 정의한다. */
1653
- :where(.radix-themes, .theme-root, :root) {
689
+ .uds-theme-root {
1654
690
  --theme-checkbox-frame-size-medium: 20px;
1655
691
  --theme-checkbox-frame-size-large: 24px;
1656
692
  --theme-checkbox-indicator-size-medium: 16px;
@@ -1814,7 +850,7 @@
1814
850
  }
1815
851
 
1816
852
  /* Chip 기본 토큰 래핑 */
1817
- :where(.radix-themes, .theme-root, :root) {
853
+ .uds-theme-root {
1818
854
  --theme-chip-height: var(--theme-size-small-3, 32px);
1819
855
  --theme-chip-padding-inline: var(--spacing-padding-5, 12px);
1820
856
  --theme-chip-radius: var(--theme-radius-medium-3, 8px);
@@ -1948,7 +984,7 @@ figure.chip {
1948
984
  height: 100%;
1949
985
  }
1950
986
 
1951
- :where(.radix-themes, .theme-root, :root) {
987
+ .uds-theme-root {
1952
988
  --drawer-overlay-bg: rgba(0, 0, 0, 0.44);
1953
989
  --drawer-surface-bg: var(--color-bg-surface-static-white);
1954
990
  --drawer-radius-large: var(--theme-radius-large-2);
@@ -2169,7 +1205,7 @@ figure.chip {
2169
1205
  }
2170
1206
 
2171
1207
  /* TODO(dropdown): 스타일을 SOT 토큰 값으로 정의한다. */
2172
- :where(.radix-themes, .theme-root, :root) {
1208
+ .uds-theme-root {
2173
1209
  --theme-input-height-small: var(--theme-size-medium-1);
2174
1210
  --theme-input-height-medium: var(--theme-size-medium-2);
2175
1211
  --theme-input-height-large: var(--theme-size-medium-3);
@@ -2337,6 +1373,7 @@ figure.chip {
2337
1373
  border: none;
2338
1374
  background: transparent;
2339
1375
  color: var(--theme-input-text-color);
1376
+ caret-color: var(--theme-input-text-color);
2340
1377
  font-size: var(--font-body-medium-size);
2341
1378
  line-height: var(--font-body-medium-line-height);
2342
1379
  font-weight: var(--font-body-medium-weight);
@@ -2581,7 +1618,7 @@ figure.chip {
2581
1618
  }
2582
1619
 
2583
1620
  /* TODO(label): 스타일을 SOT 토큰 값으로 정의한다. */
2584
- :where(.radix-themes, .theme-root, :root) {
1621
+ .uds-theme-root {
2585
1622
  --theme-navigation-height: 86px;
2586
1623
  --theme-navigation-padding-inline: 32px;
2587
1624
  --theme-navigation-padding-block-start: 8px;
@@ -2863,7 +1900,7 @@ figure.chip {
2863
1900
  color: var(--pagination-count-total);
2864
1901
  }
2865
1902
 
2866
- :where(.radix-themes, .theme-root) {
1903
+ .uds-theme-root {
2867
1904
  --theme-radio-frame-size-medium: 20px;
2868
1905
  --theme-radio-frame-size-large: 24px;
2869
1906
  --theme-radio-indicator-size-medium: 16px;