@mcp-elements/css 0.1.0
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/LICENSE +21 -0
- package/base.css +88 -0
- package/components/accordion.css +24 -0
- package/components/ai-badge.css +17 -0
- package/components/alert.css +25 -0
- package/components/avatar.css +11 -0
- package/components/badge.css +10 -0
- package/components/button.css +21 -0
- package/components/card.css +20 -0
- package/components/chat-bubble.css +47 -0
- package/components/chips.css +28 -0
- package/components/counter.css +22 -0
- package/components/dialog.css +26 -0
- package/components/drawer.css +39 -0
- package/components/dropdown-menu.css +28 -0
- package/components/feedback.css +33 -0
- package/components/input.css +16 -0
- package/components/loader.css +23 -0
- package/components/mcp-app-frame.css +12 -0
- package/components/mcp-consent-dialog.css +51 -0
- package/components/mcp-resource-browser.css +42 -0
- package/components/mcp-scope-inspector.css +49 -0
- package/components/mcp-server-status.css +56 -0
- package/components/mcp-tool-call.css +96 -0
- package/components/mcp-tool-form.css +28 -0
- package/components/password-input.css +17 -0
- package/components/popover.css +5 -0
- package/components/progress.css +8 -0
- package/components/prompt-input.css +30 -0
- package/components/select.css +52 -0
- package/components/separator.css +11 -0
- package/components/skeleton.css +10 -0
- package/components/source-card.css +28 -0
- package/components/streaming-text.css +53 -0
- package/components/suggestion-chips.css +23 -0
- package/components/switch.css +30 -0
- package/components/tabs.css +18 -0
- package/components/textarea.css +12 -0
- package/components/toast.css +46 -0
- package/components/tooltip.css +17 -0
- package/package.json +20 -0
- package/themes/dark.css +3 -0
- package/themes/default.css +3 -0
- package/themes/glass.css +113 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-mcp-server-status {
|
|
3
|
+
@apply inline-flex items-center gap-2 rounded-full px-3 py-1 text-xs font-medium;
|
|
4
|
+
border: 1px solid transparent;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.mcpe-mcp-server-status-dot {
|
|
8
|
+
@apply h-2 w-2 rounded-full shrink-0;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/* Connected */
|
|
12
|
+
.mcpe-mcp-server-status-connected {
|
|
13
|
+
background-color: oklch(0.72 0.17 145 / 0.12);
|
|
14
|
+
border-color: oklch(0.72 0.17 145 / 0.3);
|
|
15
|
+
color: oklch(0.72 0.17 145);
|
|
16
|
+
}
|
|
17
|
+
.mcpe-mcp-server-status-connected .mcpe-mcp-server-status-dot {
|
|
18
|
+
background-color: oklch(0.72 0.17 145);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* Connecting */
|
|
22
|
+
.mcpe-mcp-server-status-connecting {
|
|
23
|
+
background-color: oklch(0.82 0.18 85 / 0.12);
|
|
24
|
+
border-color: oklch(0.82 0.18 85 / 0.3);
|
|
25
|
+
color: oklch(0.82 0.18 85);
|
|
26
|
+
}
|
|
27
|
+
.mcpe-mcp-server-status-connecting .mcpe-mcp-server-status-dot {
|
|
28
|
+
background-color: oklch(0.82 0.18 85);
|
|
29
|
+
animation: mcpe-pulse 1.5s ease-in-out infinite;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/* Disconnected */
|
|
33
|
+
.mcpe-mcp-server-status-disconnected {
|
|
34
|
+
background-color: oklch(0.5 0 0 / 0.08);
|
|
35
|
+
border-color: oklch(0.5 0 0 / 0.2);
|
|
36
|
+
color: oklch(0.55 0.012 286);
|
|
37
|
+
}
|
|
38
|
+
.mcpe-mcp-server-status-disconnected .mcpe-mcp-server-status-dot {
|
|
39
|
+
background-color: oklch(0.55 0.012 286);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/* Error */
|
|
43
|
+
.mcpe-mcp-server-status-error {
|
|
44
|
+
background-color: oklch(0.62 0.22 25 / 0.12);
|
|
45
|
+
border-color: oklch(0.62 0.22 25 / 0.3);
|
|
46
|
+
color: oklch(0.62 0.22 25);
|
|
47
|
+
}
|
|
48
|
+
.mcpe-mcp-server-status-error .mcpe-mcp-server-status-dot {
|
|
49
|
+
background-color: oklch(0.62 0.22 25);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
@keyframes mcpe-pulse {
|
|
53
|
+
0%, 100% { opacity: 1; }
|
|
54
|
+
50% { opacity: 0.4; }
|
|
55
|
+
}
|
|
56
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-mcp-tool-call {
|
|
3
|
+
@apply rounded-xl p-4 flex flex-col gap-3;
|
|
4
|
+
background-color: var(--color-card);
|
|
5
|
+
border: 1px solid var(--color-border);
|
|
6
|
+
color: var(--color-card-foreground);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.mcpe-mcp-tool-call-header {
|
|
10
|
+
@apply flex items-center justify-between;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.mcpe-mcp-tool-call-name {
|
|
14
|
+
@apply flex items-center gap-2;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.mcpe-mcp-tool-call-icon {
|
|
18
|
+
@apply flex h-7 w-7 items-center justify-center rounded-md font-mono text-xs font-semibold;
|
|
19
|
+
background-color: var(--color-accent);
|
|
20
|
+
color: var(--color-accent-foreground);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.mcpe-mcp-tool-call-title {
|
|
24
|
+
@apply font-mono text-sm font-medium;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.mcpe-mcp-tool-call-args {
|
|
28
|
+
@apply rounded-md p-3 font-mono text-xs;
|
|
29
|
+
background-color: var(--color-muted);
|
|
30
|
+
border: 1px solid var(--color-border);
|
|
31
|
+
color: var(--color-muted-foreground);
|
|
32
|
+
overflow-x: auto;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.mcpe-mcp-tool-call-progress {
|
|
36
|
+
@apply overflow-hidden rounded-full;
|
|
37
|
+
height: 3px;
|
|
38
|
+
background-color: var(--color-muted);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.mcpe-mcp-tool-call-progress-bar {
|
|
42
|
+
@apply h-full rounded-full transition-all duration-100;
|
|
43
|
+
background-color: var(--color-primary);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.mcpe-mcp-tool-call-result {
|
|
47
|
+
@apply rounded-md p-3 text-sm;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.mcpe-mcp-tool-call-result-done {
|
|
51
|
+
background-color: oklch(0.72 0.17 145 / 0.08);
|
|
52
|
+
border: 1px solid oklch(0.72 0.17 145 / 0.25);
|
|
53
|
+
color: oklch(0.72 0.17 145);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.mcpe-mcp-tool-call-result-error {
|
|
57
|
+
background-color: oklch(0.62 0.22 25 / 0.08);
|
|
58
|
+
border: 1px solid oklch(0.62 0.22 25 / 0.25);
|
|
59
|
+
color: oklch(0.62 0.22 25);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.mcpe-mcp-tool-call-footer {
|
|
63
|
+
@apply flex items-center justify-between;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/* Status badges */
|
|
67
|
+
.mcpe-mcp-tool-call-badge {
|
|
68
|
+
@apply inline-flex items-center gap-1.5 rounded-full px-2.5 py-1 text-xs font-medium;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.mcpe-mcp-tool-call-badge-idle {
|
|
72
|
+
background-color: var(--color-muted);
|
|
73
|
+
color: var(--color-muted-foreground);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.mcpe-mcp-tool-call-badge-pending,
|
|
77
|
+
.mcpe-mcp-tool-call-badge-running {
|
|
78
|
+
background-color: oklch(0.82 0.18 85 / 0.15);
|
|
79
|
+
color: oklch(0.82 0.18 85);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.mcpe-mcp-tool-call-badge-done {
|
|
83
|
+
background-color: oklch(0.72 0.17 145 / 0.15);
|
|
84
|
+
color: oklch(0.72 0.17 145);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.mcpe-mcp-tool-call-badge-error {
|
|
88
|
+
background-color: oklch(0.62 0.22 25 / 0.15);
|
|
89
|
+
color: oklch(0.62 0.22 25);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.mcpe-mcp-tool-call-badge-cancelled {
|
|
93
|
+
background-color: var(--color-muted);
|
|
94
|
+
color: var(--color-muted-foreground);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-mcp-tool-form {
|
|
3
|
+
@apply flex flex-col gap-4;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.mcpe-mcp-tool-form-field {
|
|
7
|
+
@apply flex flex-col gap-1.5;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.mcpe-mcp-tool-form-label {
|
|
11
|
+
@apply text-sm font-medium;
|
|
12
|
+
color: var(--color-foreground);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.mcpe-mcp-tool-form-label-required::after {
|
|
16
|
+
content: ' *';
|
|
17
|
+
color: var(--color-destructive);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.mcpe-mcp-tool-form-help {
|
|
21
|
+
@apply text-xs;
|
|
22
|
+
color: var(--color-muted-foreground);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.mcpe-mcp-tool-form-submit {
|
|
26
|
+
@apply mt-2;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-password-input-wrapper {
|
|
3
|
+
@apply relative;
|
|
4
|
+
}
|
|
5
|
+
.mcpe-password-input {
|
|
6
|
+
@apply flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 pr-10 text-base
|
|
7
|
+
shadow-sm transition-colors
|
|
8
|
+
placeholder:text-muted-foreground
|
|
9
|
+
focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring
|
|
10
|
+
disabled:cursor-not-allowed disabled:opacity-50
|
|
11
|
+
md:text-sm;
|
|
12
|
+
}
|
|
13
|
+
.mcpe-password-toggle {
|
|
14
|
+
@apply absolute right-0 top-0 flex h-full items-center px-3 text-muted-foreground
|
|
15
|
+
hover:text-foreground cursor-pointer transition-colors;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-prompt-input {
|
|
3
|
+
@apply relative flex flex-col rounded-xl border bg-background shadow-sm
|
|
4
|
+
focus-within:ring-1 focus-within:ring-ring transition-shadow;
|
|
5
|
+
}
|
|
6
|
+
.mcpe-prompt-input-textarea {
|
|
7
|
+
@apply w-full resize-none border-0 bg-transparent px-4 pt-3 pb-2 text-sm
|
|
8
|
+
placeholder:text-muted-foreground focus-visible:outline-none;
|
|
9
|
+
}
|
|
10
|
+
.mcpe-prompt-input-footer {
|
|
11
|
+
@apply flex items-center justify-between px-3 pb-2;
|
|
12
|
+
}
|
|
13
|
+
.mcpe-prompt-input-actions {
|
|
14
|
+
@apply flex items-center gap-1;
|
|
15
|
+
}
|
|
16
|
+
.mcpe-prompt-input-char-count {
|
|
17
|
+
@apply text-xs text-muted-foreground tabular-nums;
|
|
18
|
+
}
|
|
19
|
+
.mcpe-prompt-input-attachments {
|
|
20
|
+
@apply flex flex-wrap gap-1.5 px-3 pb-2;
|
|
21
|
+
}
|
|
22
|
+
.mcpe-prompt-input-attachment {
|
|
23
|
+
@apply inline-flex items-center gap-1 rounded-md bg-secondary px-2 py-0.5 text-xs
|
|
24
|
+
font-medium text-secondary-foreground;
|
|
25
|
+
}
|
|
26
|
+
.mcpe-prompt-input-attachment-remove {
|
|
27
|
+
@apply ml-0.5 inline-flex h-3.5 w-3.5 items-center justify-center rounded-full
|
|
28
|
+
opacity-60 hover:opacity-100 transition-opacity cursor-pointer;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
/* Native <select> styling */
|
|
3
|
+
.mcpe-select {
|
|
4
|
+
@apply flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md
|
|
5
|
+
border border-input px-3 py-2 text-sm shadow-sm appearance-none
|
|
6
|
+
focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background
|
|
7
|
+
disabled:cursor-not-allowed disabled:opacity-50;
|
|
8
|
+
background-color: var(--color-background);
|
|
9
|
+
color: var(--color-foreground);
|
|
10
|
+
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 24 24' stroke='currentColor' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
|
|
11
|
+
background-position: right 0.5rem center;
|
|
12
|
+
background-repeat: no-repeat;
|
|
13
|
+
background-size: 1rem;
|
|
14
|
+
padding-right: 2rem;
|
|
15
|
+
}
|
|
16
|
+
.mcpe-select option {
|
|
17
|
+
background-color: var(--color-background);
|
|
18
|
+
color: var(--color-foreground);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.mcpe-select-trigger {
|
|
22
|
+
@apply flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md
|
|
23
|
+
border border-input px-3 py-2 text-sm shadow-sm
|
|
24
|
+
ring-offset-background
|
|
25
|
+
placeholder:text-muted-foreground
|
|
26
|
+
focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background
|
|
27
|
+
disabled:cursor-not-allowed disabled:opacity-50
|
|
28
|
+
[&>span]:line-clamp-1;
|
|
29
|
+
background-color: var(--color-background);
|
|
30
|
+
color: var(--color-foreground);
|
|
31
|
+
}
|
|
32
|
+
.mcpe-select-content {
|
|
33
|
+
@apply relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border
|
|
34
|
+
bg-popover text-popover-foreground shadow-md;
|
|
35
|
+
}
|
|
36
|
+
.mcpe-select-viewport {
|
|
37
|
+
@apply p-1;
|
|
38
|
+
}
|
|
39
|
+
.mcpe-select-item {
|
|
40
|
+
@apply relative flex w-full cursor-default select-none items-center rounded-sm
|
|
41
|
+
py-1.5 pl-2 pr-8 text-sm outline-none transition-colors;
|
|
42
|
+
}
|
|
43
|
+
.mcpe-select-item-active {
|
|
44
|
+
@apply bg-accent text-accent-foreground;
|
|
45
|
+
}
|
|
46
|
+
.mcpe-select-item-selected {
|
|
47
|
+
@apply font-medium;
|
|
48
|
+
}
|
|
49
|
+
.mcpe-select-item[aria-disabled='true'] {
|
|
50
|
+
@apply pointer-events-none opacity-50;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-source-cards {
|
|
3
|
+
@apply grid grid-cols-2 gap-2;
|
|
4
|
+
}
|
|
5
|
+
.mcpe-source-card {
|
|
6
|
+
@apply flex gap-3 items-start p-3 rounded-lg border bg-card
|
|
7
|
+
hover:bg-accent/50 transition-colors no-underline;
|
|
8
|
+
}
|
|
9
|
+
.mcpe-source-card-favicon {
|
|
10
|
+
@apply h-4 w-4 rounded shrink-0 mt-0.5;
|
|
11
|
+
}
|
|
12
|
+
.mcpe-source-card-body {
|
|
13
|
+
@apply flex-1 min-w-0;
|
|
14
|
+
}
|
|
15
|
+
.mcpe-source-card-title {
|
|
16
|
+
@apply text-sm font-medium truncate text-foreground transition-colors;
|
|
17
|
+
}
|
|
18
|
+
.mcpe-source-card:hover .mcpe-source-card-title {
|
|
19
|
+
@apply text-primary;
|
|
20
|
+
}
|
|
21
|
+
.mcpe-source-card-domain {
|
|
22
|
+
@apply text-xs text-muted-foreground truncate;
|
|
23
|
+
}
|
|
24
|
+
.mcpe-source-card-index {
|
|
25
|
+
@apply text-xs font-medium text-muted-foreground bg-muted rounded-full
|
|
26
|
+
w-5 h-5 flex items-center justify-center shrink-0;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-streaming-text-cursor::after {
|
|
3
|
+
content: '▍';
|
|
4
|
+
@apply ml-0.5 text-primary;
|
|
5
|
+
animation: mcpe-cursor-blink 1s step-end infinite;
|
|
6
|
+
}
|
|
7
|
+
.mcpe-streaming-text-fade-in {
|
|
8
|
+
animation: mcpe-stream-fade-in 0.3s ease both;
|
|
9
|
+
}
|
|
10
|
+
.mcpe-streaming-text-word {
|
|
11
|
+
animation: mcpe-stream-word 0.25s ease both;
|
|
12
|
+
}
|
|
13
|
+
.mcpe-streaming-text-line {
|
|
14
|
+
animation: mcpe-stream-line 0.4s ease both;
|
|
15
|
+
}
|
|
16
|
+
.mcpe-streaming-text-skeleton {
|
|
17
|
+
@apply space-y-2;
|
|
18
|
+
}
|
|
19
|
+
.mcpe-streaming-text-skeleton-line {
|
|
20
|
+
@apply h-4 rounded bg-muted;
|
|
21
|
+
background-size: 200% 100%;
|
|
22
|
+
background-image: linear-gradient(90deg, transparent 25%, oklch(0.5 0 0 / 0.08) 50%, transparent 75%);
|
|
23
|
+
animation: mcpe-skeleton-shimmer 1.5s ease-in-out infinite;
|
|
24
|
+
}
|
|
25
|
+
.mcpe-streaming-text-skeleton-line:last-child {
|
|
26
|
+
@apply w-3/5;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
@keyframes mcpe-cursor-blink {
|
|
31
|
+
0%, 100% { opacity: 1; }
|
|
32
|
+
50% { opacity: 0; }
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
@keyframes mcpe-stream-fade-in {
|
|
36
|
+
from { opacity: 0; transform: translateY(4px); }
|
|
37
|
+
to { opacity: 1; transform: translateY(0); }
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@keyframes mcpe-stream-word {
|
|
41
|
+
from { opacity: 0; filter: blur(2px); }
|
|
42
|
+
to { opacity: 1; filter: blur(0); }
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
@keyframes mcpe-stream-line {
|
|
46
|
+
from { opacity: 0; transform: translateY(8px); }
|
|
47
|
+
to { opacity: 1; transform: translateY(0); }
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@keyframes mcpe-skeleton-shimmer {
|
|
51
|
+
0% { background-position: 200% 0; }
|
|
52
|
+
100% { background-position: -200% 0; }
|
|
53
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-suggestion-chips {
|
|
3
|
+
@apply flex gap-2 overflow-x-auto;
|
|
4
|
+
scrollbar-width: none;
|
|
5
|
+
}
|
|
6
|
+
.mcpe-suggestion-chips::-webkit-scrollbar {
|
|
7
|
+
display: none;
|
|
8
|
+
}
|
|
9
|
+
.mcpe-suggestion-chip {
|
|
10
|
+
@apply inline-flex items-center px-3 py-1.5 rounded-full text-sm whitespace-nowrap
|
|
11
|
+
cursor-pointer transition-all active:scale-95 shrink-0
|
|
12
|
+
focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring;
|
|
13
|
+
}
|
|
14
|
+
.mcpe-suggestion-chip-default {
|
|
15
|
+
@apply bg-secondary text-secondary-foreground hover:bg-secondary/80;
|
|
16
|
+
}
|
|
17
|
+
.mcpe-suggestion-chip-primary {
|
|
18
|
+
@apply bg-primary/10 text-primary hover:bg-primary/20;
|
|
19
|
+
}
|
|
20
|
+
.mcpe-suggestion-chip-outline {
|
|
21
|
+
@apply border border-input hover:bg-accent hover:text-accent-foreground;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-switch {
|
|
3
|
+
@apply inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full
|
|
4
|
+
border-2 border-transparent shadow-sm transition-colors
|
|
5
|
+
focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background
|
|
6
|
+
disabled:cursor-not-allowed disabled:opacity-50;
|
|
7
|
+
}
|
|
8
|
+
.mcpe-switch[aria-checked='false'] {
|
|
9
|
+
background-color: var(--color-muted-foreground);
|
|
10
|
+
opacity: 0.55;
|
|
11
|
+
}
|
|
12
|
+
.mcpe-switch[aria-checked='true'] {
|
|
13
|
+
@apply bg-primary;
|
|
14
|
+
opacity: 1;
|
|
15
|
+
}
|
|
16
|
+
.mcpe-switch-thumb {
|
|
17
|
+
@apply pointer-events-none block h-4 w-4 rounded-full transition-transform;
|
|
18
|
+
background-color: oklch(1 0 0);
|
|
19
|
+
box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.2), 0 1px 3px 0 rgb(0 0 0 / 0.15);
|
|
20
|
+
}
|
|
21
|
+
[data-theme='dark'] .mcpe-switch[aria-checked='true'] .mcpe-switch-thumb {
|
|
22
|
+
background-color: oklch(0.18 0 0);
|
|
23
|
+
}
|
|
24
|
+
.mcpe-switch[aria-checked='false'] .mcpe-switch-thumb {
|
|
25
|
+
@apply translate-x-0;
|
|
26
|
+
}
|
|
27
|
+
.mcpe-switch[aria-checked='true'] .mcpe-switch-thumb {
|
|
28
|
+
@apply translate-x-4;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-tabs-list {
|
|
3
|
+
@apply inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground;
|
|
4
|
+
}
|
|
5
|
+
.mcpe-tabs-trigger {
|
|
6
|
+
@apply inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1
|
|
7
|
+
text-sm font-medium ring-offset-background transition-all cursor-pointer active:scale-[0.98]
|
|
8
|
+
focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2
|
|
9
|
+
disabled:pointer-events-none disabled:opacity-50;
|
|
10
|
+
}
|
|
11
|
+
.mcpe-tabs-trigger-active {
|
|
12
|
+
@apply bg-background text-foreground shadow;
|
|
13
|
+
}
|
|
14
|
+
.mcpe-tabs-content {
|
|
15
|
+
@apply mt-2 ring-offset-background
|
|
16
|
+
focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-textarea {
|
|
3
|
+
@apply flex min-h-[60px] w-full rounded-md border border-input px-3 py-2
|
|
4
|
+
text-base shadow-sm
|
|
5
|
+
placeholder:text-muted-foreground
|
|
6
|
+
focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background
|
|
7
|
+
disabled:cursor-not-allowed disabled:opacity-50
|
|
8
|
+
md:text-sm;
|
|
9
|
+
background-color: var(--color-background);
|
|
10
|
+
color: var(--color-foreground);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
@layer components {
|
|
2
|
+
.mcpe-toaster {
|
|
3
|
+
@apply fixed z-[100] flex flex-col gap-2 p-4;
|
|
4
|
+
}
|
|
5
|
+
.mcpe-toaster-top-right {
|
|
6
|
+
@apply top-0 right-0;
|
|
7
|
+
}
|
|
8
|
+
.mcpe-toaster-bottom-right {
|
|
9
|
+
@apply bottom-0 right-0;
|
|
10
|
+
}
|
|
11
|
+
.mcpe-toaster-top-left {
|
|
12
|
+
@apply top-0 left-0;
|
|
13
|
+
}
|
|
14
|
+
.mcpe-toaster-bottom-left {
|
|
15
|
+
@apply bottom-0 left-0;
|
|
16
|
+
}
|
|
17
|
+
.mcpe-toast {
|
|
18
|
+
@apply pointer-events-auto relative flex w-full items-center justify-between space-x-2
|
|
19
|
+
overflow-hidden rounded-md border p-4 pr-6 shadow-lg transition-all
|
|
20
|
+
bg-background text-foreground;
|
|
21
|
+
}
|
|
22
|
+
.mcpe-toast-destructive {
|
|
23
|
+
@apply border-destructive bg-destructive text-destructive-foreground;
|
|
24
|
+
}
|
|
25
|
+
.mcpe-toast-success {
|
|
26
|
+
@apply border-green-500/50 bg-green-500/10 text-green-600;
|
|
27
|
+
}
|
|
28
|
+
.mcpe-toast-title {
|
|
29
|
+
@apply text-sm font-semibold;
|
|
30
|
+
}
|
|
31
|
+
.mcpe-toast-description {
|
|
32
|
+
@apply text-sm opacity-90;
|
|
33
|
+
}
|
|
34
|
+
.mcpe-toast-close {
|
|
35
|
+
@apply absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity
|
|
36
|
+
hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none;
|
|
37
|
+
}
|
|
38
|
+
.mcpe-toast:hover .mcpe-toast-close {
|
|
39
|
+
@apply opacity-100;
|
|
40
|
+
}
|
|
41
|
+
.mcpe-toast-action {
|
|
42
|
+
@apply inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent
|
|
43
|
+
px-3 text-sm font-medium transition-colors hover:bg-secondary
|
|
44
|
+
focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@keyframes tooltip-in {
|
|
2
|
+
from {
|
|
3
|
+
opacity: 0;
|
|
4
|
+
transform: scale(0.96);
|
|
5
|
+
}
|
|
6
|
+
to {
|
|
7
|
+
opacity: 1;
|
|
8
|
+
transform: scale(1);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@layer components {
|
|
13
|
+
.mcpe-tooltip-content {
|
|
14
|
+
@apply z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground shadow-md;
|
|
15
|
+
animation: tooltip-in 150ms ease-out;
|
|
16
|
+
}
|
|
17
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@mcp-elements/css",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"exports": {
|
|
5
|
+
"./base.css": "./base.css",
|
|
6
|
+
"./base": "./base.css",
|
|
7
|
+
"./components/*.css": "./components/*.css",
|
|
8
|
+
"./components/*": "./components/*.css",
|
|
9
|
+
"./themes/*.css": "./themes/*.css",
|
|
10
|
+
"./themes/*": "./themes/*.css"
|
|
11
|
+
},
|
|
12
|
+
"files": [
|
|
13
|
+
"base.css",
|
|
14
|
+
"components",
|
|
15
|
+
"themes"
|
|
16
|
+
],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"clean": "echo 'nothing to clean'"
|
|
19
|
+
}
|
|
20
|
+
}
|
package/themes/dark.css
ADDED