@uniai-fe/uds-primitives 0.13.0 → 0.13.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.
- package/dist/styles.css +6 -57
- package/package.json +3 -3
- package/src/components/calendar/styles/mantine-calendar.scss +5 -0
- package/src/components/checkbox/styles/index.scss +1 -7
- package/src/components/chip/styles/chip.scss +0 -5
- package/src/components/fab/styles/fab.scss +0 -5
- package/src/components/fab/styles/variables.scss +0 -1
- package/src/components/navigation/styles/index.scss +0 -6
- package/src/components/radio/styles/index.scss +1 -8
- package/src/components/segmented-control/styles/index.scss +0 -5
- package/src/components/select/styles/select.scss +0 -5
- package/src/components/select/styles/variables.scss +0 -1
- package/src/components/switch/styles/switch.scss +0 -10
- package/src/components/switch/styles/variables.scss +0 -1
- package/src/components/tab/markup/TabTrigger.tsx +8 -8
- package/src/components/tab/styles/tab.scss +0 -5
package/dist/styles.css
CHANGED
|
@@ -290,7 +290,6 @@
|
|
|
290
290
|
--theme-checkbox-icon-default: transparent;
|
|
291
291
|
--theme-checkbox-icon-selected: var(--color-common-100);
|
|
292
292
|
--theme-checkbox-icon-disabled-selected: var(--color-common-100);
|
|
293
|
-
--theme-checkbox-focus-ring: rgba(2, 84, 255, 0.32);
|
|
294
293
|
--theme-chip-height: var(--theme-size-small-3);
|
|
295
294
|
/* 변경: Figma text menu item은 기본 chip보다 낮은 24px height를 사용한다. */
|
|
296
295
|
--theme-chip-height-text: 24px;
|
|
@@ -436,7 +435,6 @@
|
|
|
436
435
|
--fab-line-height: var(--font-body-small-line-height);
|
|
437
436
|
--fab-letter-spacing: var(--font-body-small-letter-spacing);
|
|
438
437
|
--fab-outlined-background: var(--button-default-outline-bg);
|
|
439
|
-
--fab-focus-color: var(--color-primary-default);
|
|
440
438
|
--fab-disabled-background: var(--button-default-neutral-disabled-bg);
|
|
441
439
|
--fab-disabled-foreground: var(--button-default-neutral-disabled-foreground);
|
|
442
440
|
--form-field-width: auto;
|
|
@@ -671,7 +669,6 @@
|
|
|
671
669
|
--theme-radio-card-description-color: var(--color-label-neutral);
|
|
672
670
|
--theme-radio-card-badge-background: var(--color-surface-static-blue);
|
|
673
671
|
--theme-radio-card-badge-color: var(--color-primary-default);
|
|
674
|
-
--theme-radio-focus-ring: rgba(2, 84, 255, 0.32);
|
|
675
672
|
--theme-radio-disabled-selected-opacity: 0.28;
|
|
676
673
|
/* layout presets */
|
|
677
674
|
--select-width: 100%;
|
|
@@ -812,7 +809,6 @@
|
|
|
812
809
|
--select-multiple-chip-border-color: transparent;
|
|
813
810
|
--select-multiple-chip-remove-color: var(--color-label-strong);
|
|
814
811
|
--select-multiple-chip-remove-hover-color: var(--color-label-strong);
|
|
815
|
-
--select-multiple-chip-remove-focus-outline-color: var(--color-border-strong);
|
|
816
812
|
--select-multiple-chip-summary-color: var(--color-label-standard);
|
|
817
813
|
--select-multiple-chip-summary-surface: var(--color-surface-standard);
|
|
818
814
|
--select-multiple-chip-summary-border-color: transparent;
|
|
@@ -841,7 +837,6 @@
|
|
|
841
837
|
0px 2px 8px rgba(0, 0, 0, 0.04), 0px 0px 4px rgba(0, 0, 0, 0.08);
|
|
842
838
|
--switch-thumb-shadow-checked:
|
|
843
839
|
0px 2px 8px rgba(0, 0, 0, 0.08), 0px 0px 4px rgba(0, 0, 0, 0.12);
|
|
844
|
-
--switch-focus-ring: var(--color-primary-focus);
|
|
845
840
|
--switch-disabled-opacity: 0.4;
|
|
846
841
|
--switch-text-width: fit-content;
|
|
847
842
|
--switch-text-height-medium: 32px;
|
|
@@ -2557,6 +2552,10 @@
|
|
|
2557
2552
|
width: var(--calendar-body-width);
|
|
2558
2553
|
}
|
|
2559
2554
|
|
|
2555
|
+
.calendar-grid .mantine-focus-auto:focus-visible {
|
|
2556
|
+
outline: none;
|
|
2557
|
+
}
|
|
2558
|
+
|
|
2560
2559
|
.calendar-range-grid {
|
|
2561
2560
|
width: var(--calendar-body-width);
|
|
2562
2561
|
}
|
|
@@ -3038,8 +3037,7 @@
|
|
|
3038
3037
|
transition:
|
|
3039
3038
|
background-color 0.15s ease,
|
|
3040
3039
|
border-color 0.15s ease,
|
|
3041
|
-
opacity 0.15s ease
|
|
3042
|
-
box-shadow 0.15s ease;
|
|
3040
|
+
opacity 0.15s ease;
|
|
3043
3041
|
}
|
|
3044
3042
|
.checkbox[data-size="medium"] {
|
|
3045
3043
|
inline-size: var(--theme-checkbox-frame-size-medium);
|
|
@@ -3055,10 +3053,6 @@
|
|
|
3055
3053
|
cursor: not-allowed;
|
|
3056
3054
|
}
|
|
3057
3055
|
|
|
3058
|
-
.checkbox:focus-visible {
|
|
3059
|
-
box-shadow: 0 0 0 2px var(--theme-checkbox-focus-ring);
|
|
3060
|
-
}
|
|
3061
|
-
|
|
3062
3056
|
.checkbox-surface {
|
|
3063
3057
|
inline-size: var(--theme-checkbox-indicator-size-medium);
|
|
3064
3058
|
block-size: var(--theme-checkbox-indicator-size-medium);
|
|
@@ -3218,11 +3212,6 @@ figure.chip {
|
|
|
3218
3212
|
margin: 0;
|
|
3219
3213
|
}
|
|
3220
3214
|
|
|
3221
|
-
.chip:focus-visible {
|
|
3222
|
-
outline: 2px solid var(--color-primary-default);
|
|
3223
|
-
outline-offset: 2px;
|
|
3224
|
-
}
|
|
3225
|
-
|
|
3226
3215
|
.chip:where([data-style="filter"][data-fill="solid"]) {
|
|
3227
3216
|
--chip-bg: var(--color-surface-standard);
|
|
3228
3217
|
--chip-label-color: var(--color-label-neutral);
|
|
@@ -3982,10 +3971,6 @@ figure.chip {
|
|
|
3982
3971
|
background-color: var(--fab-pressed-background);
|
|
3983
3972
|
box-shadow: var(--fab-pressed-shadow);
|
|
3984
3973
|
}
|
|
3985
|
-
.fab:where(:focus-visible) {
|
|
3986
|
-
outline: 2px solid var(--fab-focus-color);
|
|
3987
|
-
outline-offset: 2px;
|
|
3988
|
-
}
|
|
3989
3974
|
.fab:where(:disabled) {
|
|
3990
3975
|
background-color: var(--fab-disabled-background);
|
|
3991
3976
|
border-color: var(--fab-disabled-background);
|
|
@@ -5333,12 +5318,6 @@ figure.chip {
|
|
|
5333
5318
|
pointer-events: none;
|
|
5334
5319
|
}
|
|
5335
5320
|
|
|
5336
|
-
.bottom-navigation-trigger:focus-visible {
|
|
5337
|
-
outline: none;
|
|
5338
|
-
border-radius: var(--theme-radius-large-1, 12px);
|
|
5339
|
-
box-shadow: 0 0 0 2px var(--color-primary-focus, rgba(0, 97, 255, 0.2));
|
|
5340
|
-
}
|
|
5341
|
-
|
|
5342
5321
|
.navigation-item-icon {
|
|
5343
5322
|
display: inline-flex;
|
|
5344
5323
|
align-items: center;
|
|
@@ -5577,9 +5556,7 @@ figure.chip {
|
|
|
5577
5556
|
border-radius: 0;
|
|
5578
5557
|
padding: 0;
|
|
5579
5558
|
cursor: pointer;
|
|
5580
|
-
transition:
|
|
5581
|
-
box-shadow 0.15s ease,
|
|
5582
|
-
transform 0.15s ease;
|
|
5559
|
+
transition: transform 0.15s ease;
|
|
5583
5560
|
}
|
|
5584
5561
|
.radio[data-size="large"] {
|
|
5585
5562
|
inline-size: var(--theme-radio-frame-size-large);
|
|
@@ -5590,10 +5567,6 @@ figure.chip {
|
|
|
5590
5567
|
opacity: 0.6;
|
|
5591
5568
|
}
|
|
5592
5569
|
|
|
5593
|
-
.radio:focus-visible {
|
|
5594
|
-
box-shadow: 0 0 0 2px var(--theme-radio-focus-ring);
|
|
5595
|
-
}
|
|
5596
|
-
|
|
5597
5570
|
.radio-indicator {
|
|
5598
5571
|
inline-size: var(--theme-radio-indicator-size-medium);
|
|
5599
5572
|
block-size: var(--theme-radio-indicator-size-medium);
|
|
@@ -5874,11 +5847,6 @@ figure.chip {
|
|
|
5874
5847
|
opacity: var(--segmented-disabled-opacity);
|
|
5875
5848
|
}
|
|
5876
5849
|
|
|
5877
|
-
.segmented-control-button:where(:focus-visible) {
|
|
5878
|
-
outline: 2px solid var(--color-focus-ring, var(--color-primary-default));
|
|
5879
|
-
outline-offset: 2px;
|
|
5880
|
-
}
|
|
5881
|
-
|
|
5882
5850
|
.segmented-control-label {
|
|
5883
5851
|
display: flex;
|
|
5884
5852
|
align-items: center;
|
|
@@ -6358,10 +6326,6 @@ figure.chip {
|
|
|
6358
6326
|
border-radius: 9999px;
|
|
6359
6327
|
transition: color 150ms ease;
|
|
6360
6328
|
}
|
|
6361
|
-
.select-tag-remove:focus-visible {
|
|
6362
|
-
outline: 0.2rem solid var(--select-multiple-chip-remove-focus-outline-color);
|
|
6363
|
-
outline-offset: 0.1rem;
|
|
6364
|
-
}
|
|
6365
6329
|
.select-tag-remove:hover {
|
|
6366
6330
|
color: var(--select-multiple-chip-remove-hover-color);
|
|
6367
6331
|
}
|
|
@@ -6434,7 +6398,6 @@ figure.chip {
|
|
|
6434
6398
|
cursor: pointer;
|
|
6435
6399
|
transition:
|
|
6436
6400
|
background-color 0.2s ease,
|
|
6437
|
-
box-shadow 0.2s ease,
|
|
6438
6401
|
opacity 0.2s ease;
|
|
6439
6402
|
}
|
|
6440
6403
|
|
|
@@ -6449,10 +6412,6 @@ figure.chip {
|
|
|
6449
6412
|
background-color: var(--switch-track-background-checked);
|
|
6450
6413
|
}
|
|
6451
6414
|
|
|
6452
|
-
.switch:where(:focus-visible) {
|
|
6453
|
-
box-shadow: 0 0 0 2px var(--switch-focus-ring);
|
|
6454
|
-
}
|
|
6455
|
-
|
|
6456
6415
|
.switch:where(:disabled) {
|
|
6457
6416
|
cursor: not-allowed;
|
|
6458
6417
|
opacity: var(--switch-disabled-opacity);
|
|
@@ -6581,11 +6540,6 @@ figure.chip {
|
|
|
6581
6540
|
cursor: not-allowed;
|
|
6582
6541
|
}
|
|
6583
6542
|
|
|
6584
|
-
.switch-text-button:where(:focus-visible) {
|
|
6585
|
-
outline: 2px solid var(--switch-focus-ring);
|
|
6586
|
-
outline-offset: 2px;
|
|
6587
|
-
}
|
|
6588
|
-
|
|
6589
6543
|
.switch-text-label {
|
|
6590
6544
|
display: flex;
|
|
6591
6545
|
align-items: center;
|
|
@@ -6665,11 +6619,6 @@ figure.chip {
|
|
|
6665
6619
|
transition: background-color 0.2s ease;
|
|
6666
6620
|
}
|
|
6667
6621
|
|
|
6668
|
-
.tab-trigger:where(:focus-visible) {
|
|
6669
|
-
outline: 2px solid var(--color-primary-default);
|
|
6670
|
-
outline-offset: 2px;
|
|
6671
|
-
}
|
|
6672
|
-
|
|
6673
6622
|
.tab-trigger:where([data-disabled="true"]) {
|
|
6674
6623
|
cursor: not-allowed;
|
|
6675
6624
|
opacity: var(--tab-disabled-opacity);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uniai-fe/uds-primitives",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.1",
|
|
4
4
|
"description": "UNIAI Design System; Primitives Components Package",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": false,
|
|
@@ -87,9 +87,9 @@
|
|
|
87
87
|
"react-hook-form": "^7.86.0",
|
|
88
88
|
"sass": "^1.102.0",
|
|
89
89
|
"typescript": "6.0.3",
|
|
90
|
-
"@uniai-fe/eslint-config": "0.4.4",
|
|
91
|
-
"@uniai-fe/next-devkit": "0.4.1",
|
|
92
90
|
"@uniai-fe/tsconfig": "0.2.0",
|
|
91
|
+
"@uniai-fe/next-devkit": "0.4.1",
|
|
92
|
+
"@uniai-fe/eslint-config": "0.4.4",
|
|
93
93
|
"@uniai-fe/uds-foundation": "0.6.0",
|
|
94
94
|
"@uniai-fe/util-functions": "0.4.3"
|
|
95
95
|
},
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
--theme-checkbox-icon-default: transparent;
|
|
23
23
|
--theme-checkbox-icon-selected: var(--color-common-100);
|
|
24
24
|
--theme-checkbox-icon-disabled-selected: var(--color-common-100);
|
|
25
|
-
--theme-checkbox-focus-ring: rgba(2, 84, 255, 0.32);
|
|
26
25
|
}
|
|
27
26
|
|
|
28
27
|
.checkbox {
|
|
@@ -38,8 +37,7 @@
|
|
|
38
37
|
transition:
|
|
39
38
|
background-color 0.15s ease,
|
|
40
39
|
border-color 0.15s ease,
|
|
41
|
-
opacity 0.15s ease
|
|
42
|
-
box-shadow 0.15s ease;
|
|
40
|
+
opacity 0.15s ease;
|
|
43
41
|
|
|
44
42
|
&[data-size="medium"] {
|
|
45
43
|
inline-size: var(--theme-checkbox-frame-size-medium);
|
|
@@ -58,10 +56,6 @@
|
|
|
58
56
|
}
|
|
59
57
|
}
|
|
60
58
|
|
|
61
|
-
.checkbox:focus-visible {
|
|
62
|
-
box-shadow: 0 0 0 2px var(--theme-checkbox-focus-ring);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
59
|
.checkbox-surface {
|
|
66
60
|
inline-size: var(--theme-checkbox-indicator-size-medium);
|
|
67
61
|
block-size: var(--theme-checkbox-indicator-size-medium);
|
|
@@ -42,11 +42,6 @@ figure.chip {
|
|
|
42
42
|
margin: 0;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
.chip:focus-visible {
|
|
46
|
-
outline: 2px solid var(--color-primary-default);
|
|
47
|
-
outline-offset: 2px;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
45
|
.chip:where([data-style="filter"][data-fill="solid"]) {
|
|
51
46
|
--chip-bg: var(--color-surface-standard);
|
|
52
47
|
--chip-label-color: var(--color-label-neutral);
|
|
@@ -89,11 +89,6 @@
|
|
|
89
89
|
box-shadow: var(--fab-pressed-shadow);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
&:where(:focus-visible) {
|
|
93
|
-
outline: 2px solid var(--fab-focus-color);
|
|
94
|
-
outline-offset: 2px;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
92
|
&:where(:disabled) {
|
|
98
93
|
background-color: var(--fab-disabled-background);
|
|
99
94
|
border-color: var(--fab-disabled-background);
|
|
@@ -19,7 +19,6 @@
|
|
|
19
19
|
--fab-line-height: var(--font-body-small-line-height);
|
|
20
20
|
--fab-letter-spacing: var(--font-body-small-letter-spacing);
|
|
21
21
|
--fab-outlined-background: var(--button-default-outline-bg);
|
|
22
|
-
--fab-focus-color: var(--color-primary-default);
|
|
23
22
|
--fab-disabled-background: var(--button-default-neutral-disabled-bg);
|
|
24
23
|
--fab-disabled-foreground: var(--button-default-neutral-disabled-foreground);
|
|
25
24
|
}
|
|
@@ -86,12 +86,6 @@
|
|
|
86
86
|
pointer-events: none;
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
.bottom-navigation-trigger:focus-visible {
|
|
90
|
-
outline: none;
|
|
91
|
-
border-radius: var(--theme-radius-large-1, 12px);
|
|
92
|
-
box-shadow: 0 0 0 2px var(--color-primary-focus, rgba(0, 97, 255, 0.2));
|
|
93
|
-
}
|
|
94
|
-
|
|
95
89
|
.navigation-item-icon {
|
|
96
90
|
display: inline-flex;
|
|
97
91
|
align-items: center;
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
--theme-radio-card-description-color: var(--color-label-neutral);
|
|
24
24
|
--theme-radio-card-badge-background: var(--color-surface-static-blue);
|
|
25
25
|
--theme-radio-card-badge-color: var(--color-primary-default);
|
|
26
|
-
--theme-radio-focus-ring: rgba(2, 84, 255, 0.32);
|
|
27
26
|
--theme-radio-disabled-selected-opacity: 0.28;
|
|
28
27
|
}
|
|
29
28
|
|
|
@@ -38,9 +37,7 @@
|
|
|
38
37
|
border-radius: 0;
|
|
39
38
|
padding: 0;
|
|
40
39
|
cursor: pointer;
|
|
41
|
-
transition:
|
|
42
|
-
box-shadow 0.15s ease,
|
|
43
|
-
transform 0.15s ease;
|
|
40
|
+
transition: transform 0.15s ease;
|
|
44
41
|
|
|
45
42
|
&[data-size="large"] {
|
|
46
43
|
inline-size: var(--theme-radio-frame-size-large);
|
|
@@ -53,10 +50,6 @@
|
|
|
53
50
|
}
|
|
54
51
|
}
|
|
55
52
|
|
|
56
|
-
.radio:focus-visible {
|
|
57
|
-
box-shadow: 0 0 0 2px var(--theme-radio-focus-ring);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
53
|
.radio-indicator {
|
|
61
54
|
inline-size: var(--theme-radio-indicator-size-medium);
|
|
62
55
|
block-size: var(--theme-radio-indicator-size-medium);
|
|
@@ -92,11 +92,6 @@
|
|
|
92
92
|
opacity: var(--segmented-disabled-opacity);
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
.segmented-control-button:where(:focus-visible) {
|
|
96
|
-
outline: 2px solid var(--color-focus-ring, var(--color-primary-default));
|
|
97
|
-
outline-offset: 2px;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
95
|
.segmented-control-label {
|
|
101
96
|
display: flex;
|
|
102
97
|
align-items: center;
|
|
@@ -485,11 +485,6 @@
|
|
|
485
485
|
border-radius: 9999px;
|
|
486
486
|
transition: color 150ms ease;
|
|
487
487
|
|
|
488
|
-
&:focus-visible {
|
|
489
|
-
outline: 0.2rem solid var(--select-multiple-chip-remove-focus-outline-color);
|
|
490
|
-
outline-offset: 0.1rem;
|
|
491
|
-
}
|
|
492
|
-
|
|
493
488
|
&:hover {
|
|
494
489
|
color: var(--select-multiple-chip-remove-hover-color);
|
|
495
490
|
}
|
|
@@ -147,7 +147,6 @@
|
|
|
147
147
|
--select-multiple-chip-border-color: transparent;
|
|
148
148
|
--select-multiple-chip-remove-color: var(--color-label-strong);
|
|
149
149
|
--select-multiple-chip-remove-hover-color: var(--color-label-strong);
|
|
150
|
-
--select-multiple-chip-remove-focus-outline-color: var(--color-border-strong);
|
|
151
150
|
--select-multiple-chip-summary-color: var(--color-label-standard);
|
|
152
151
|
--select-multiple-chip-summary-surface: var(--color-surface-standard);
|
|
153
152
|
--select-multiple-chip-summary-border-color: transparent;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
cursor: pointer;
|
|
17
17
|
transition:
|
|
18
18
|
background-color 0.2s ease,
|
|
19
|
-
box-shadow 0.2s ease,
|
|
20
19
|
opacity 0.2s ease;
|
|
21
20
|
}
|
|
22
21
|
|
|
@@ -31,10 +30,6 @@
|
|
|
31
30
|
background-color: var(--switch-track-background-checked);
|
|
32
31
|
}
|
|
33
32
|
|
|
34
|
-
.switch:where(:focus-visible) {
|
|
35
|
-
box-shadow: 0 0 0 2px var(--switch-focus-ring);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
33
|
.switch:where(:disabled) {
|
|
39
34
|
cursor: not-allowed;
|
|
40
35
|
opacity: var(--switch-disabled-opacity);
|
|
@@ -165,11 +160,6 @@
|
|
|
165
160
|
cursor: not-allowed;
|
|
166
161
|
}
|
|
167
162
|
|
|
168
|
-
.switch-text-button:where(:focus-visible) {
|
|
169
|
-
outline: 2px solid var(--switch-focus-ring);
|
|
170
|
-
outline-offset: 2px;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
163
|
.switch-text-label {
|
|
174
164
|
display: flex;
|
|
175
165
|
align-items: center;
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
0px 2px 8px rgba(0, 0, 0, 0.04), 0px 0px 4px rgba(0, 0, 0, 0.08);
|
|
17
17
|
--switch-thumb-shadow-checked:
|
|
18
18
|
0px 2px 8px rgba(0, 0, 0, 0.08), 0px 0px 4px rgba(0, 0, 0, 0.12);
|
|
19
|
-
--switch-focus-ring: var(--color-primary-focus);
|
|
20
19
|
--switch-disabled-opacity: 0.4;
|
|
21
20
|
|
|
22
21
|
--switch-text-width: fit-content;
|
|
@@ -6,20 +6,20 @@ import { useTabContext } from "../utils";
|
|
|
6
6
|
import { TabLabel } from "./Label";
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* Tab Trigger; 개별 탭 선택
|
|
10
10
|
* @component
|
|
11
|
-
* @
|
|
12
|
-
* @
|
|
13
|
-
* @
|
|
14
|
-
* @
|
|
15
|
-
* @
|
|
16
|
-
* @
|
|
11
|
+
* @property {TabTriggerProps} props Radix 탭 입력과 icon을 전달한다.
|
|
12
|
+
* @property {React.ReactNode} [props.icon] 라벨 앞 아이콘.
|
|
13
|
+
* @property {React.ReactNode} [props.children] 라벨 콘텐츠.
|
|
14
|
+
* @property {string} [props.className] trigger에 병합할 className.
|
|
15
|
+
* @property {string} props.value 선택할 탭 값.
|
|
16
|
+
* @property {boolean} [props.disabled] 비활성 상태.
|
|
17
|
+
* @desc 선택·focus·disabled와 native handler를 Radix에 위임하고 초점 테두리는 Foundation reset을 따른다.
|
|
17
18
|
*/
|
|
18
19
|
const TabTrigger = forwardRef<HTMLButtonElement, TabTriggerProps>(
|
|
19
20
|
({ icon, children, className, ...restProps }, forwardedRef) => {
|
|
20
21
|
const { variant, scale } = useTabContext();
|
|
21
22
|
const hasIcon = Boolean(icon);
|
|
22
|
-
|
|
23
23
|
return (
|
|
24
24
|
<TabsPrimitive.Trigger
|
|
25
25
|
{...restProps}
|
|
@@ -68,11 +68,6 @@
|
|
|
68
68
|
transition: background-color 0.2s ease;
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
.tab-trigger:where(:focus-visible) {
|
|
72
|
-
outline: 2px solid var(--color-primary-default);
|
|
73
|
-
outline-offset: 2px;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
71
|
.tab-trigger:where([data-disabled="true"]) {
|
|
77
72
|
cursor: not-allowed;
|
|
78
73
|
opacity: var(--tab-disabled-opacity);
|