nexa-ui-kit 0.11.6 → 0.11.8
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/components/NAlert.js +2 -14
- package/dist/components/NAlert.nexa +3 -14
- package/dist/components/NAutocomplete.js +1 -1
- package/dist/components/NAutocomplete.nexa +2 -1
- package/dist/components/NAvatar.js +0 -5
- package/dist/components/NAvatar.nexa +1 -5
- package/dist/components/NBadge.js +0 -6
- package/dist/components/NBadge.nexa +1 -6
- package/dist/components/NBottomSheet.js +0 -5
- package/dist/components/NBottomSheet.nexa +1 -5
- package/dist/components/NButton.js +202 -296
- package/dist/components/NButton.nexa +224 -320
- package/dist/components/NCard.js +39 -82
- package/dist/components/NCard.nexa +27 -71
- package/dist/components/NCheckbox.js +74 -63
- package/dist/components/NCheckbox.nexa +64 -44
- package/dist/components/NChips.nexa +1 -0
- package/dist/components/NDataTable.js +1 -313
- package/dist/components/NDataTable.nexa +2 -314
- package/dist/components/NDatepicker.js +4 -25
- package/dist/components/NDatepicker.nexa +5 -25
- package/dist/components/NForm.nexa +1 -0
- package/dist/components/NFormField.js +0 -5
- package/dist/components/NFormField.nexa +1 -5
- package/dist/components/NImage.js +1 -6
- package/dist/components/NImage.nexa +2 -6
- package/dist/components/NInput.js +96 -263
- package/dist/components/NInput.nexa +89 -259
- package/dist/components/NInputNumber.nexa +1 -1
- package/dist/components/NModal.js +1 -118
- package/dist/components/NModal.nexa +2 -119
- package/dist/components/NMultiSelect.js +1 -1
- package/dist/components/NMultiSelect.nexa +2 -1
- package/dist/components/NPaginator.js +1 -11
- package/dist/components/NPaginator.nexa +2 -11
- package/dist/components/NPassword.nexa +1 -0
- package/dist/components/NProgressBar.js +0 -11
- package/dist/components/NProgressBar.nexa +1 -11
- package/dist/components/NRadio.js +1 -8
- package/dist/components/NRadio.nexa +2 -8
- package/dist/components/NScrollView.js +0 -6
- package/dist/components/NScrollView.nexa +1 -6
- package/dist/components/NSelect.js +7 -35
- package/dist/components/NSelect.nexa +8 -35
- package/dist/components/NSkeleton.js +3 -9
- package/dist/components/NSkeleton.nexa +4 -9
- package/dist/components/NSwitch.js +0 -6
- package/dist/components/NSwitch.nexa +1 -6
- package/dist/components/NTabs.js +0 -11
- package/dist/components/NTabs.nexa +1 -11
- package/dist/components/NTag.js +1 -11
- package/dist/components/NTag.nexa +2 -11
- package/dist/components/NToastContainer.js +3 -27
- package/dist/components/NToastContainer.nexa +4 -27
- package/dist/components/NTooltip.js +0 -13
- package/dist/components/NTooltip.nexa +1 -13
- package/dist/components/NTreeMenu.js +1 -21
- package/dist/components/NTreeMenu.nexa +2 -21
- package/dist/components/NVirtualList.js +0 -2
- package/dist/components/NVirtualList.nexa +1 -2
- package/dist/styles/tokens.css +82 -173
- package/package.json +4 -4
- package/src/components/NAlert.nexa +3 -14
- package/src/components/NAutocomplete.nexa +2 -1
- package/src/components/NAvatar.nexa +1 -5
- package/src/components/NBadge.nexa +1 -6
- package/src/components/NBottomSheet.nexa +1 -5
- package/src/components/NButton.nexa +224 -320
- package/src/components/NCard.nexa +27 -71
- package/src/components/NCheckbox.nexa +64 -44
- package/src/components/NChips.nexa +1 -0
- package/src/components/NDataTable.nexa +2 -314
- package/src/components/NDatepicker.nexa +5 -25
- package/src/components/NForm.nexa +1 -0
- package/src/components/NFormField.nexa +1 -5
- package/src/components/NImage.nexa +2 -6
- package/src/components/NInput.nexa +89 -259
- package/src/components/NInputNumber.nexa +1 -1
- package/src/components/NModal.nexa +2 -119
- package/src/components/NMultiSelect.nexa +2 -1
- package/src/components/NPaginator.nexa +2 -11
- package/src/components/NPassword.nexa +1 -0
- package/src/components/NProgressBar.nexa +1 -11
- package/src/components/NRadio.nexa +2 -8
- package/src/components/NScrollView.nexa +1 -6
- package/src/components/NSelect.nexa +8 -35
- package/src/components/NSkeleton.nexa +4 -9
- package/src/components/NSwitch.nexa +1 -6
- package/src/components/NTabs.nexa +1 -11
- package/src/components/NTag.nexa +2 -11
- package/src/components/NToastContainer.nexa +4 -27
- package/src/components/NTooltip.nexa +1 -13
- package/src/components/NTreeMenu.nexa +2 -21
- package/src/components/NVirtualList.nexa +1 -2
- package/src/styles/tokens.css +82 -173
|
@@ -83,18 +83,15 @@ const end = computed(() => Math.min((safeFirst.value || 0) + (safeRows.value ||
|
|
|
83
83
|
background: var(--n-color-surface);
|
|
84
84
|
font-family: var(--n-font-sans);
|
|
85
85
|
}
|
|
86
|
-
|
|
87
86
|
.n-paginator-report {
|
|
88
87
|
color: var(--n-color-text-muted);
|
|
89
88
|
font-size: var(--n-text-xs);
|
|
90
89
|
}
|
|
91
|
-
|
|
92
90
|
.n-paginator-center {
|
|
93
91
|
display: flex;
|
|
94
92
|
align-items: center;
|
|
95
93
|
gap: var(--n-space-2);
|
|
96
94
|
}
|
|
97
|
-
|
|
98
95
|
.n-pg-btn {
|
|
99
96
|
background: transparent;
|
|
100
97
|
border: 1px solid var(--n-color-border);
|
|
@@ -102,31 +99,26 @@ const end = computed(() => Math.min((safeFirst.value || 0) + (safeRows.value ||
|
|
|
102
99
|
border-radius: var(--n-radius-md);
|
|
103
100
|
padding: 0.3rem 0.55rem;
|
|
104
101
|
cursor: pointer;
|
|
105
|
-
transition:
|
|
102
|
+
transition: color var(--n-transition-fast); cubic-bezier(0.16, 1, 0.3, 1);
|
|
106
103
|
display: inline-flex;
|
|
107
104
|
align-items: center;
|
|
108
105
|
justify-content: center;
|
|
109
106
|
}
|
|
110
|
-
|
|
111
107
|
.n-pg-btn:hover:not(:disabled) {
|
|
112
108
|
background: var(--n-color-glass);
|
|
113
109
|
transform: scale(1.05);
|
|
114
110
|
}
|
|
115
|
-
|
|
116
111
|
.n-pg-btn:active:not(:disabled) {
|
|
117
112
|
transform: scale(0.97);
|
|
118
113
|
}
|
|
119
|
-
|
|
120
114
|
.n-pg-btn:focus-visible {
|
|
121
115
|
outline: 2px solid var(--n-color-primary);
|
|
122
116
|
outline-offset: 2px;
|
|
123
117
|
}
|
|
124
|
-
|
|
125
118
|
.n-pg-btn:disabled {
|
|
126
119
|
opacity: 0.5;
|
|
127
120
|
cursor: not-allowed;
|
|
128
121
|
}
|
|
129
|
-
|
|
130
122
|
.n-pg-page {
|
|
131
123
|
min-width: 2.5rem;
|
|
132
124
|
text-align: center;
|
|
@@ -138,7 +130,6 @@ const end = computed(() => Math.min((safeFirst.value || 0) + (safeRows.value ||
|
|
|
138
130
|
border-radius: var(--n-radius-md);
|
|
139
131
|
line-height: 1.4;
|
|
140
132
|
}
|
|
141
|
-
|
|
142
133
|
.n-pg-select {
|
|
143
134
|
background: var(--n-color-bg);
|
|
144
135
|
border: 1px solid var(--n-color-border);
|
|
@@ -150,10 +141,10 @@ const end = computed(() => Math.min((safeFirst.value || 0) + (safeRows.value ||
|
|
|
150
141
|
cursor: pointer;
|
|
151
142
|
transition: border-color 0.2s cubic-bezier(0.16, 1, 0.3, 1);
|
|
152
143
|
}
|
|
153
|
-
|
|
154
144
|
.n-pg-select:focus-visible {
|
|
155
145
|
border-color: var(--n-color-primary);
|
|
156
146
|
outline: 2px solid var(--n-color-primary);
|
|
157
147
|
outline-offset: 2px;
|
|
158
148
|
}
|
|
149
|
+
|
|
159
150
|
</style>
|
|
@@ -176,4 +176,5 @@ const toggle = (e) => {
|
|
|
176
176
|
.n-password-req-icon { width: 14px; display:inline-flex; justify-content:center; flex-shrink:0; }
|
|
177
177
|
.n-password-wrapper.is-disabled { opacity: 0.5; cursor: not-allowed; background: var(--n-color-surface-alt); }
|
|
178
178
|
.n-password-wrapper.is-disabled .n-password-input { cursor: not-allowed; }
|
|
179
|
+
|
|
179
180
|
</style>
|
|
@@ -36,19 +36,15 @@ const percentage = computed(() => Math.min(100, Math.max(0, (props.value / props
|
|
|
36
36
|
gap: var(--n-space-3);
|
|
37
37
|
width: 100%;
|
|
38
38
|
}
|
|
39
|
-
|
|
40
39
|
.n-progress-track {
|
|
41
40
|
flex: 1;
|
|
42
41
|
background: var(--n-color-surface-alt);
|
|
43
42
|
border-radius: var(--n-radius-full);
|
|
44
43
|
overflow: hidden;
|
|
45
|
-
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06);
|
|
46
44
|
}
|
|
47
|
-
|
|
48
45
|
.is-sm .n-progress-track { height: 8px; }
|
|
49
46
|
.is-md .n-progress-track { height: 12px; }
|
|
50
47
|
.is-lg .n-progress-track { height: 16px; }
|
|
51
|
-
|
|
52
48
|
.n-progress-bar {
|
|
53
49
|
height: 100%;
|
|
54
50
|
border-radius: var(--n-radius-full);
|
|
@@ -60,13 +56,11 @@ const percentage = computed(() => Math.min(100, Math.max(0, (props.value / props
|
|
|
60
56
|
min-width: 0;
|
|
61
57
|
box-shadow: 0 0 8px rgba(99, 102, 241, 0.3);
|
|
62
58
|
}
|
|
63
|
-
|
|
64
59
|
.is-primary { background: var(--n-color-primary); box-shadow: 0 0 8px rgba(99, 102, 241, 0.3); }
|
|
65
60
|
.is-success { background: var(--n-color-success); box-shadow: 0 0 8px rgba(34, 197, 94, 0.3); }
|
|
66
61
|
.is-danger { background: var(--n-color-danger); box-shadow: 0 0 8px rgba(239, 68, 68, 0.3); }
|
|
67
62
|
.is-warning { background: var(--n-color-warning); box-shadow: 0 0 8px rgba(234, 179, 8, 0.3); }
|
|
68
63
|
.is-info { background: var(--n-color-info); box-shadow: 0 0 8px rgba(59, 130, 246, 0.3); }
|
|
69
|
-
|
|
70
64
|
.n-progress-label {
|
|
71
65
|
color: white;
|
|
72
66
|
font-size: 0.65rem;
|
|
@@ -74,11 +68,9 @@ const percentage = computed(() => Math.min(100, Math.max(0, (props.value / props
|
|
|
74
68
|
white-space: nowrap;
|
|
75
69
|
line-height: 1;
|
|
76
70
|
}
|
|
77
|
-
|
|
78
71
|
.is-lg .n-progress-label {
|
|
79
72
|
font-size: var(--n-text-xs);
|
|
80
73
|
}
|
|
81
|
-
|
|
82
74
|
.n-progress-label-outside {
|
|
83
75
|
font-size: var(--n-text-xs);
|
|
84
76
|
font-weight: var(--n-weight-semibold);
|
|
@@ -87,7 +79,6 @@ const percentage = computed(() => Math.min(100, Math.max(0, (props.value / props
|
|
|
87
79
|
min-width: 3rem;
|
|
88
80
|
text-align: right;
|
|
89
81
|
}
|
|
90
|
-
|
|
91
82
|
.is-striped .n-progress-bar {
|
|
92
83
|
background-image: linear-gradient(
|
|
93
84
|
45deg,
|
|
@@ -101,13 +92,12 @@ const percentage = computed(() => Math.min(100, Math.max(0, (props.value / props
|
|
|
101
92
|
);
|
|
102
93
|
background-size: 1rem 1rem;
|
|
103
94
|
}
|
|
104
|
-
|
|
105
95
|
.is-animated .n-progress-bar {
|
|
106
96
|
animation: n-progress-stripe 1s linear infinite;
|
|
107
97
|
}
|
|
108
|
-
|
|
109
98
|
@keyframes n-progress-stripe {
|
|
110
99
|
from { background-position: 1rem 0; }
|
|
111
100
|
to { background-position: 0 0; }
|
|
112
101
|
}
|
|
102
|
+
|
|
113
103
|
</style>
|
|
@@ -34,7 +34,6 @@ const select = () => {
|
|
|
34
34
|
cursor: pointer;
|
|
35
35
|
user-select: none;
|
|
36
36
|
}
|
|
37
|
-
|
|
38
37
|
.n-radio-circle {
|
|
39
38
|
width: 22px;
|
|
40
39
|
height: 22px;
|
|
@@ -43,15 +42,13 @@ const select = () => {
|
|
|
43
42
|
display: flex;
|
|
44
43
|
align-items: center;
|
|
45
44
|
justify-content: center;
|
|
46
|
-
transition:
|
|
45
|
+
transition: color var(--n-transition-fast); cubic-bezier(0.16, 1, 0.3, 1);
|
|
47
46
|
flex-shrink: 0;
|
|
48
47
|
}
|
|
49
|
-
|
|
50
48
|
.is-checked .n-radio-circle {
|
|
51
49
|
border-color: var(--n-color-primary);
|
|
52
50
|
box-shadow: 0 0 0 3px var(--n-color-primary-light), 0 0 12px rgba(99, 102, 241, 0.25);
|
|
53
51
|
}
|
|
54
|
-
|
|
55
52
|
.n-radio-dot {
|
|
56
53
|
width: 11px;
|
|
57
54
|
height: 11px;
|
|
@@ -59,24 +56,21 @@ const select = () => {
|
|
|
59
56
|
background: var(--n-color-primary);
|
|
60
57
|
animation: n-radio-dot-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);
|
|
61
58
|
}
|
|
62
|
-
|
|
63
59
|
@keyframes n-radio-dot-in {
|
|
64
60
|
from { transform: scale(0); }
|
|
65
61
|
to { transform: scale(1); }
|
|
66
62
|
}
|
|
67
|
-
|
|
68
63
|
.n-radio-label {
|
|
69
64
|
font-size: var(--n-text-sm);
|
|
70
65
|
color: var(--n-color-text);
|
|
71
66
|
font-weight: var(--n-weight-medium);
|
|
72
67
|
}
|
|
73
|
-
|
|
74
68
|
.is-disabled {
|
|
75
69
|
opacity: 0.5;
|
|
76
70
|
cursor: not-allowed;
|
|
77
71
|
}
|
|
78
|
-
|
|
79
72
|
.n-radio:hover:not(.is-disabled) .n-radio-circle {
|
|
80
73
|
border-color: var(--n-color-primary);
|
|
81
74
|
}
|
|
75
|
+
|
|
82
76
|
</style>
|
|
@@ -99,13 +99,11 @@ const onScroll = (e) => {
|
|
|
99
99
|
overscroll-behavior: contain;
|
|
100
100
|
position: relative;
|
|
101
101
|
}
|
|
102
|
-
|
|
103
102
|
.n-scroll-view--horizontal {
|
|
104
103
|
overflow-y: hidden;
|
|
105
104
|
overflow-x: auto;
|
|
106
105
|
display: flex;
|
|
107
106
|
}
|
|
108
|
-
|
|
109
107
|
.n-scroll-view-ptr {
|
|
110
108
|
display: flex;
|
|
111
109
|
align-items: center;
|
|
@@ -113,11 +111,9 @@ const onScroll = (e) => {
|
|
|
113
111
|
overflow: hidden;
|
|
114
112
|
transition: height 0.1s;
|
|
115
113
|
}
|
|
116
|
-
|
|
117
114
|
.n-scroll-view-ptr.is-refreshing {
|
|
118
115
|
height: 52px !important;
|
|
119
116
|
}
|
|
120
|
-
|
|
121
117
|
.n-scroll-view-spinner {
|
|
122
118
|
font-size: 24px;
|
|
123
119
|
color: var(--n-color-primary, #6366f1);
|
|
@@ -125,12 +121,11 @@ const onScroll = (e) => {
|
|
|
125
121
|
line-height: 1;
|
|
126
122
|
transform-origin: center;
|
|
127
123
|
}
|
|
128
|
-
|
|
129
124
|
.n-scroll-view-ptr.is-refreshing .n-scroll-view-spinner {
|
|
130
125
|
animation: n-spin 0.8s linear infinite;
|
|
131
126
|
}
|
|
132
|
-
|
|
133
127
|
@keyframes n-spin {
|
|
134
128
|
to { transform: rotate(360deg) scale(1); }
|
|
135
129
|
}
|
|
130
|
+
|
|
136
131
|
</style>
|
|
@@ -277,7 +277,6 @@ onBeforeUnmount(() => {
|
|
|
277
277
|
width: 100%;
|
|
278
278
|
font-family: var(--n-font-sans);
|
|
279
279
|
}
|
|
280
|
-
|
|
281
280
|
.n-select-label {
|
|
282
281
|
display: block;
|
|
283
282
|
font-size: var(--n-text-sm);
|
|
@@ -285,7 +284,6 @@ onBeforeUnmount(() => {
|
|
|
285
284
|
color: var(--n-color-text-secondary);
|
|
286
285
|
margin-bottom: var(--n-space-2);
|
|
287
286
|
}
|
|
288
|
-
|
|
289
287
|
.n-select-trigger {
|
|
290
288
|
background: var(--n-color-surface);
|
|
291
289
|
border: 1px solid var(--n-color-border);
|
|
@@ -299,33 +297,27 @@ onBeforeUnmount(() => {
|
|
|
299
297
|
color: var(--n-color-text);
|
|
300
298
|
gap: var(--n-space-2);
|
|
301
299
|
}
|
|
302
|
-
|
|
303
300
|
.n-select-trigger:focus-visible {
|
|
304
301
|
border-color: var(--n-color-primary);
|
|
305
302
|
box-shadow: 0 0 0 3px var(--n-color-primary-light), 0 0 20px rgba(var(--n-color-primary-rgb, 99, 102, 241), 0.12);
|
|
306
303
|
outline: none;
|
|
307
304
|
}
|
|
308
|
-
|
|
309
305
|
.n-select:hover .n-select-trigger:not(.is-disabled) {
|
|
310
306
|
border-color: var(--n-color-border-hover);
|
|
311
307
|
}
|
|
312
|
-
|
|
313
308
|
.n-select.is-open .n-select-trigger {
|
|
314
309
|
border-color: var(--n-color-primary);
|
|
315
310
|
box-shadow: 0 0 0 3px var(--n-color-primary-light), 0 0 20px rgba(var(--n-color-primary-rgb, 99, 102, 241), 0.12);
|
|
316
311
|
}
|
|
317
|
-
|
|
318
312
|
.n-select-placeholder {
|
|
319
313
|
color: var(--n-color-text-muted);
|
|
320
314
|
}
|
|
321
|
-
|
|
322
315
|
.n-select-trigger-actions {
|
|
323
316
|
display: flex;
|
|
324
317
|
align-items: center;
|
|
325
318
|
gap: 0.25rem;
|
|
326
319
|
flex-shrink: 0;
|
|
327
320
|
}
|
|
328
|
-
|
|
329
321
|
.n-select-clear {
|
|
330
322
|
background: transparent;
|
|
331
323
|
border: none;
|
|
@@ -336,21 +328,17 @@ onBeforeUnmount(() => {
|
|
|
336
328
|
border-radius: var(--n-radius-sm);
|
|
337
329
|
line-height: 1;
|
|
338
330
|
}
|
|
339
|
-
|
|
340
331
|
.n-select-clear:hover {
|
|
341
332
|
color: var(--n-color-text);
|
|
342
333
|
}
|
|
343
|
-
|
|
344
334
|
.n-select-arrow {
|
|
345
335
|
color: var(--n-color-text-muted);
|
|
346
336
|
transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
|
|
347
337
|
font-size: var(--n-text-xs);
|
|
348
338
|
}
|
|
349
|
-
|
|
350
339
|
.is-open .n-select-arrow {
|
|
351
340
|
transform: rotate(180deg);
|
|
352
341
|
}
|
|
353
|
-
|
|
354
342
|
.n-select-dropdown {
|
|
355
343
|
position: absolute;
|
|
356
344
|
top: calc(100% + 0.5rem);
|
|
@@ -367,26 +355,21 @@ onBeforeUnmount(() => {
|
|
|
367
355
|
animation: n-dropdown-in 0.3s cubic-bezier(0.16, 1, 0.3, 1);
|
|
368
356
|
transform-origin: top center;
|
|
369
357
|
}
|
|
370
|
-
|
|
371
358
|
@keyframes n-dropdown-in {
|
|
372
|
-
from { opacity: 0;
|
|
373
|
-
to { opacity: 1;
|
|
359
|
+
from { opacity: 0; scale(0.98); }
|
|
360
|
+
to { opacity: 1; scale(1); }
|
|
374
361
|
}
|
|
375
|
-
|
|
376
362
|
.n-select-dropdown.is-top {
|
|
377
363
|
animation: n-dropdown-in-top 0.3s cubic-bezier(0.16, 1, 0.3, 1);
|
|
378
364
|
}
|
|
379
|
-
|
|
380
365
|
@keyframes n-dropdown-in-top {
|
|
381
|
-
from { opacity: 0;
|
|
382
|
-
to { opacity: 1;
|
|
366
|
+
from { opacity: 0; scale(0.98); }
|
|
367
|
+
to { opacity: 1; scale(1); }
|
|
383
368
|
}
|
|
384
|
-
|
|
385
369
|
.n-select-search {
|
|
386
370
|
padding: var(--n-space-2);
|
|
387
371
|
border-bottom: 1px solid var(--n-color-border);
|
|
388
372
|
}
|
|
389
|
-
|
|
390
373
|
.n-select-search-input {
|
|
391
374
|
width: 100%;
|
|
392
375
|
background: var(--n-color-bg);
|
|
@@ -398,16 +381,13 @@ onBeforeUnmount(() => {
|
|
|
398
381
|
outline: none;
|
|
399
382
|
font-family: inherit;
|
|
400
383
|
}
|
|
401
|
-
|
|
402
384
|
.n-select-search-input:focus {
|
|
403
385
|
border-color: var(--n-color-primary);
|
|
404
386
|
}
|
|
405
|
-
|
|
406
387
|
.n-select-options {
|
|
407
388
|
max-height: 250px;
|
|
408
389
|
overflow-y: auto;
|
|
409
390
|
}
|
|
410
|
-
|
|
411
391
|
.n-select-group-label {
|
|
412
392
|
padding: var(--n-space-2) var(--n-space-3);
|
|
413
393
|
font-size: var(--n-text-xs);
|
|
@@ -417,62 +397,55 @@ onBeforeUnmount(() => {
|
|
|
417
397
|
letter-spacing: var(--n-tracking-wide);
|
|
418
398
|
background: var(--n-color-bg);
|
|
419
399
|
}
|
|
420
|
-
|
|
421
400
|
.n-select-option {
|
|
422
401
|
padding: 0.7rem 1rem;
|
|
423
402
|
padding-left: 1rem;
|
|
424
403
|
color: var(--n-color-text-secondary);
|
|
425
404
|
cursor: pointer;
|
|
426
|
-
transition:
|
|
405
|
+
transition: background-color var(--n-transition-fast), border-color var(--n-transition-fast), color var(--n-transition-fast), box-shadow var(--n-transition-fast);
|
|
427
406
|
letter-spacing: 0.01em;
|
|
428
407
|
position: relative;
|
|
429
408
|
}
|
|
430
|
-
|
|
431
409
|
.n-select-option::before {
|
|
432
410
|
content: '';
|
|
433
411
|
position: absolute;
|
|
434
412
|
left: 0;
|
|
435
413
|
top: 50%;
|
|
436
|
-
|
|
414
|
+
scaleY(0);
|
|
437
415
|
width: 3px;
|
|
438
416
|
height: 50%;
|
|
439
417
|
background: var(--n-color-primary);
|
|
440
418
|
border-radius: 0 3px 3px 0;
|
|
441
419
|
transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
|
|
442
420
|
}
|
|
443
|
-
|
|
444
421
|
.n-select-option:hover::before,
|
|
445
422
|
.n-select-option.is-focused::before {
|
|
446
|
-
|
|
423
|
+
scaleY(1);
|
|
447
424
|
}
|
|
448
|
-
|
|
449
425
|
.n-select-option:hover,
|
|
450
426
|
.n-select-option.is-focused {
|
|
451
427
|
background: var(--n-color-glass);
|
|
452
428
|
color: var(--n-color-text);
|
|
453
429
|
padding-left: 1.25rem;
|
|
454
430
|
}
|
|
455
|
-
|
|
456
431
|
.n-select-option.is-selected {
|
|
457
432
|
background: var(--n-color-primary-light);
|
|
458
433
|
color: var(--n-color-primary);
|
|
459
434
|
font-weight: var(--n-weight-semibold);
|
|
460
435
|
}
|
|
461
|
-
|
|
462
436
|
.n-select-option.is-disabled {
|
|
463
437
|
opacity: 0.4;
|
|
464
438
|
cursor: not-allowed;
|
|
465
439
|
}
|
|
466
|
-
|
|
467
440
|
.n-select-empty {
|
|
468
441
|
padding: var(--n-space-4);
|
|
469
442
|
color: var(--n-color-text-muted);
|
|
470
443
|
text-align: center;
|
|
471
444
|
font-size: var(--n-text-sm);
|
|
472
445
|
}
|
|
473
|
-
|
|
474
446
|
.is-disabled .n-select-trigger {
|
|
475
447
|
opacity: 0.5;
|
|
476
448
|
cursor: not-allowed;
|
|
477
449
|
}
|
|
450
|
+
|
|
478
451
|
</style>
|
|
@@ -31,46 +31,41 @@ const lineArray = Array.from({ length: props.lines || 3 }, (_, i) => i + 1)
|
|
|
31
31
|
flex-direction: column;
|
|
32
32
|
gap: var(--n-space-2);
|
|
33
33
|
}
|
|
34
|
-
|
|
35
34
|
.n-skeleton-line {
|
|
36
35
|
height: 14px;
|
|
37
36
|
border-radius: var(--n-radius-sm);
|
|
38
|
-
background:
|
|
37
|
+
background-color: var(--n-color-surface); 25%, var(--n-color-surface-hover) 50%, var(--n-color-surface-alt) 75%);
|
|
39
38
|
background-size: 200% 100%;
|
|
40
39
|
animation: n-skeleton-shimmer 1.5s ease-in-out infinite;
|
|
41
40
|
}
|
|
42
|
-
|
|
43
41
|
.is-circle .n-skeleton-circle {
|
|
44
42
|
width: 60px;
|
|
45
43
|
height: 60px;
|
|
46
44
|
border-radius: var(--n-radius-full);
|
|
47
|
-
background:
|
|
45
|
+
background-color: var(--n-color-surface); 25%, var(--n-color-surface-hover) 50%, var(--n-color-surface-alt) 75%);
|
|
48
46
|
background-size: 200% 100%;
|
|
49
47
|
animation: n-skeleton-shimmer 1.5s ease-in-out infinite;
|
|
50
48
|
}
|
|
51
|
-
|
|
52
49
|
.is-card .n-skeleton-card {
|
|
53
50
|
border-radius: var(--n-radius-lg);
|
|
54
51
|
overflow: hidden;
|
|
55
52
|
border: 1px solid var(--n-color-border);
|
|
56
53
|
}
|
|
57
|
-
|
|
58
54
|
.is-card .n-skeleton-card-image {
|
|
59
55
|
height: 140px;
|
|
60
|
-
background:
|
|
56
|
+
background-color: var(--n-color-surface); 25%, var(--n-color-surface-hover) 50%, var(--n-color-surface-alt) 75%);
|
|
61
57
|
background-size: 200% 100%;
|
|
62
58
|
animation: n-skeleton-shimmer 1.5s ease-in-out infinite;
|
|
63
59
|
}
|
|
64
|
-
|
|
65
60
|
.is-card .n-skeleton-card-body {
|
|
66
61
|
padding: var(--n-space-5);
|
|
67
62
|
display: flex;
|
|
68
63
|
flex-direction: column;
|
|
69
64
|
gap: var(--n-space-3);
|
|
70
65
|
}
|
|
71
|
-
|
|
72
66
|
@keyframes n-skeleton-shimmer {
|
|
73
67
|
from { background-position: 200% 0; }
|
|
74
68
|
to { background-position: -200% 0; }
|
|
75
69
|
}
|
|
70
|
+
|
|
76
71
|
</style>
|
|
@@ -30,7 +30,6 @@ const toggle = () => {
|
|
|
30
30
|
cursor: pointer;
|
|
31
31
|
user-select: none;
|
|
32
32
|
}
|
|
33
|
-
|
|
34
33
|
.n-switch-track {
|
|
35
34
|
width: 44px;
|
|
36
35
|
height: 24px;
|
|
@@ -40,12 +39,10 @@ const toggle = () => {
|
|
|
40
39
|
transition: all var(--n-transition-normal);
|
|
41
40
|
flex-shrink: 0;
|
|
42
41
|
}
|
|
43
|
-
|
|
44
42
|
.is-checked .n-switch-track {
|
|
45
43
|
background: var(--n-color-primary);
|
|
46
44
|
box-shadow: var(--n-shadow-glow-primary);
|
|
47
45
|
}
|
|
48
|
-
|
|
49
46
|
.n-switch-thumb {
|
|
50
47
|
width: 18px;
|
|
51
48
|
height: 18px;
|
|
@@ -58,21 +55,19 @@ const toggle = () => {
|
|
|
58
55
|
box-shadow: var(--n-shadow-md);
|
|
59
56
|
will-change: transform;
|
|
60
57
|
}
|
|
61
|
-
|
|
62
58
|
.is-checked .n-switch-thumb {
|
|
63
59
|
transform: translateX(20px);
|
|
64
60
|
background: white;
|
|
65
61
|
box-shadow: var(--n-shadow-md);
|
|
66
62
|
}
|
|
67
|
-
|
|
68
63
|
.n-switch-label {
|
|
69
64
|
font-size: var(--n-text-sm);
|
|
70
65
|
color: var(--n-color-text);
|
|
71
66
|
font-weight: var(--n-weight-medium);
|
|
72
67
|
}
|
|
73
|
-
|
|
74
68
|
.is-disabled {
|
|
75
69
|
opacity: 0.5;
|
|
76
70
|
cursor: not-allowed;
|
|
77
71
|
}
|
|
72
|
+
|
|
78
73
|
</style>
|
|
@@ -50,13 +50,11 @@ const activeIndex = computed(() =>
|
|
|
50
50
|
gap: var(--n-space-6);
|
|
51
51
|
width: 100%;
|
|
52
52
|
}
|
|
53
|
-
|
|
54
53
|
.n-tabs-header {
|
|
55
54
|
display: flex;
|
|
56
55
|
position: relative;
|
|
57
56
|
border-bottom: 1px solid var(--n-color-border);
|
|
58
57
|
}
|
|
59
|
-
|
|
60
58
|
.n-tab {
|
|
61
59
|
flex: 1;
|
|
62
60
|
padding: var(--n-space-3) var(--n-space-5);
|
|
@@ -74,31 +72,24 @@ const activeIndex = computed(() =>
|
|
|
74
72
|
white-space: nowrap;
|
|
75
73
|
border-radius: var(--n-radius-sm) var(--n-radius-sm) 0 0;
|
|
76
74
|
}
|
|
77
|
-
|
|
78
75
|
.n-tab:hover:not(.is-active):not(.is-disabled) {
|
|
79
76
|
color: var(--n-color-text);
|
|
80
77
|
background: var(--n-color-glass);
|
|
81
78
|
}
|
|
82
|
-
|
|
83
79
|
.n-tab:focus-visible {
|
|
84
80
|
outline: none;
|
|
85
|
-
box-shadow: inset 0 0 0 2px var(--n-color-primary);
|
|
86
81
|
}
|
|
87
|
-
|
|
88
82
|
.n-tab.is-active {
|
|
89
83
|
color: var(--n-color-primary);
|
|
90
84
|
font-weight: var(--n-weight-semibold);
|
|
91
85
|
}
|
|
92
|
-
|
|
93
86
|
.n-tab.is-disabled {
|
|
94
87
|
opacity: 0.4;
|
|
95
88
|
cursor: not-allowed;
|
|
96
89
|
}
|
|
97
|
-
|
|
98
90
|
.n-tab-icon {
|
|
99
91
|
font-size: var(--n-text-base);
|
|
100
92
|
}
|
|
101
|
-
|
|
102
93
|
.n-tab-badge {
|
|
103
94
|
background: var(--n-color-primary);
|
|
104
95
|
color: white;
|
|
@@ -108,7 +99,6 @@ const activeIndex = computed(() =>
|
|
|
108
99
|
border-radius: var(--n-radius-full);
|
|
109
100
|
line-height: 1.2;
|
|
110
101
|
}
|
|
111
|
-
|
|
112
102
|
.n-tabs-indicator {
|
|
113
103
|
position: absolute;
|
|
114
104
|
bottom: -1px;
|
|
@@ -116,6 +106,6 @@ const activeIndex = computed(() =>
|
|
|
116
106
|
background: var(--n-color-primary);
|
|
117
107
|
transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
|
|
118
108
|
border-radius: var(--n-radius-full);
|
|
119
|
-
box-shadow: 0 1px 6px rgba(99, 102, 241, 0.35);
|
|
120
109
|
}
|
|
110
|
+
|
|
121
111
|
</style>
|
package/src/components/NTag.nexa
CHANGED
|
@@ -31,50 +31,41 @@ const emit = defineEmits(['close'])
|
|
|
31
31
|
border: 1px solid transparent;
|
|
32
32
|
letter-spacing: 0.02em;
|
|
33
33
|
}
|
|
34
|
-
|
|
35
34
|
.n-tag.is-rounded {
|
|
36
35
|
border-radius: var(--n-radius-full);
|
|
37
36
|
}
|
|
38
|
-
|
|
39
37
|
.n-tag-sm { padding: 0.15rem 0.5rem; font-size: 0.65rem; }
|
|
40
38
|
.n-tag-lg { padding: 0.4rem 0.9rem; font-size: var(--n-text-sm); }
|
|
41
|
-
|
|
42
39
|
.n-tag-primary {
|
|
43
40
|
background: var(--n-color-primary-light);
|
|
44
41
|
border-color: var(--n-color-primary-border);
|
|
45
42
|
color: var(--n-color-primary);
|
|
46
43
|
}
|
|
47
|
-
|
|
48
44
|
.n-tag-success {
|
|
49
45
|
background: var(--n-color-success-light);
|
|
50
46
|
border-color: var(--n-color-success-border);
|
|
51
47
|
color: var(--n-color-success);
|
|
52
48
|
}
|
|
53
|
-
|
|
54
49
|
.n-tag-danger {
|
|
55
50
|
background: var(--n-color-danger-light);
|
|
56
51
|
border-color: var(--n-color-danger-border);
|
|
57
52
|
color: var(--n-color-danger);
|
|
58
53
|
}
|
|
59
|
-
|
|
60
54
|
.n-tag-warning {
|
|
61
55
|
background: var(--n-color-warning-light);
|
|
62
56
|
border-color: var(--n-color-warning-border);
|
|
63
57
|
color: var(--n-color-warning);
|
|
64
58
|
}
|
|
65
|
-
|
|
66
59
|
.n-tag-info {
|
|
67
60
|
background: var(--n-color-info-light);
|
|
68
61
|
border-color: var(--n-color-info-border);
|
|
69
62
|
color: var(--n-color-info);
|
|
70
63
|
}
|
|
71
|
-
|
|
72
64
|
.n-tag-secondary {
|
|
73
65
|
background: var(--n-color-surface-alt);
|
|
74
66
|
border-color: var(--n-color-border);
|
|
75
67
|
color: var(--n-color-text-secondary);
|
|
76
68
|
}
|
|
77
|
-
|
|
78
69
|
.n-tag-close {
|
|
79
70
|
background: transparent;
|
|
80
71
|
border: none;
|
|
@@ -85,7 +76,7 @@ const emit = defineEmits(['close'])
|
|
|
85
76
|
margin-left: var(--n-space-1);
|
|
86
77
|
color: inherit;
|
|
87
78
|
opacity: 0.5;
|
|
88
|
-
transition:
|
|
79
|
+
transition: color var(--n-transition-fast); cubic-bezier(0.16, 1, 0.3, 1);
|
|
89
80
|
border-radius: var(--n-radius-sm);
|
|
90
81
|
display: flex;
|
|
91
82
|
align-items: center;
|
|
@@ -93,10 +84,10 @@ const emit = defineEmits(['close'])
|
|
|
93
84
|
width: 18px;
|
|
94
85
|
height: 18px;
|
|
95
86
|
}
|
|
96
|
-
|
|
97
87
|
.n-tag-close:hover {
|
|
98
88
|
opacity: 1;
|
|
99
89
|
background: rgba(0,0,0,0.08);
|
|
100
90
|
transform: scale(1.15);
|
|
101
91
|
}
|
|
92
|
+
|
|
102
93
|
</style>
|