@mcp-b/react-components 0.1.3 → 0.2.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/dist/{Button-QCM8ZKgR.d.ts → Button-Ct5I6aTu.d.ts} +1 -0
- package/dist/{CodeBlock-CttHhWcb.js → CodeBlock-BrCoypnc.js} +2 -2
- package/dist/{CodeBlock-V6pgafSS.d.ts → CodeBlock-CxQXv3C4.d.ts} +1 -1
- package/dist/Combobox-D9anamNr.d.ts +177 -0
- package/dist/Menu-B5vDqZe_.d.ts +395 -0
- package/dist/Tabs-D9EAq09D.d.ts +84 -0
- package/dist/components/Activity.d.ts +148 -0
- package/dist/components/Activity.js +177 -0
- package/dist/components/AgentChat.d.ts +61 -0
- package/dist/components/AgentChat.js +91 -0
- package/dist/components/AgentConnection.js +2 -2
- package/dist/components/Artifact.d.ts +1 -1
- package/dist/components/Artifact.js +1 -1
- package/dist/components/Button.d.ts +1 -1
- package/dist/components/Button.js +2 -1
- package/dist/components/ChainOfThought.d.ts +1 -11
- package/dist/components/ChainOfThought.js +2 -2
- package/dist/components/Checkbox.d.ts +2 -2
- package/dist/components/Checkbox.js +2 -2
- package/dist/components/CodeBlock.d.ts +1 -1
- package/dist/components/CodeBlock.js +1 -1
- package/dist/components/Combobox.d.ts +1 -176
- package/dist/components/Commit.d.ts +1 -1
- package/dist/components/Commit.js +3 -3
- package/dist/components/Context.d.ts +1 -1
- package/dist/components/ContextMenu.js +1 -1
- package/dist/components/Conversation.d.ts +1 -1
- package/dist/components/Conversation.js +11 -8
- package/dist/components/Dialog.js +1 -1
- package/dist/components/EnvironmentVariables.d.ts +1 -1
- package/dist/components/EnvironmentVariables.js +1 -1
- package/dist/components/FileTree.js +1 -1
- package/dist/components/Menu.d.ts +1 -394
- package/dist/components/Menubar.js +1 -1
- package/dist/components/Message.d.ts +1 -1
- package/dist/components/Message.js +1 -1
- package/dist/components/ModelSelector.d.ts +1 -1
- package/dist/components/ModelSelector.js +1 -1
- package/dist/components/NavigationMenu.js +1 -1
- package/dist/components/PricingPage.js +1 -1
- package/dist/components/PromptInput.d.ts +4 -4
- package/dist/components/PromptInput.js +2 -2
- package/dist/components/Queue.d.ts +1 -1
- package/dist/components/Queue.js +2 -2
- package/dist/components/Reasoning.js +2 -2
- package/dist/components/Select.js +1 -1
- package/dist/components/Sources.js +2 -2
- package/dist/components/Stepper.js +1 -1
- package/dist/components/Tabs.d.ts +1 -83
- package/dist/components/Task.js +2 -2
- package/dist/components/Terminal.d.ts +2 -2
- package/dist/components/Terminal.js +2 -2
- package/dist/components/TestResults.js +2 -2
- package/dist/components/Tool.js +8 -4
- package/dist/components/WebPreview.d.ts +1 -1
- package/dist/components/WebPreview.js +1 -1
- package/dist/components/icons.d.ts +2 -0
- package/dist/components/icons.js +2 -0
- package/dist/components/useStickToBottom.js +10 -1
- package/dist/{copy-button-BIATcZWZ.d.ts → copy-button-BKXqGiNm.d.ts} +1 -1
- package/dist/{copy-button-BNgclDrO.js → copy-button-DAPlB8Z0.js} +1 -1
- package/dist/{icons-BsWc8g4E.js → icons-Bf7JMKk-.js} +41 -1
- package/dist/icons-BklFyZbx.d.ts +48 -0
- package/dist/styles/accordion.css +34 -17
- package/dist/styles/activity.css +386 -0
- package/dist/styles/agent-chat.css +21 -0
- package/dist/styles/agent-connection.css +20 -3
- package/dist/styles/alert-dialog.css +37 -15
- package/dist/styles/artifact.css +24 -6
- package/dist/styles/autocomplete.css +25 -6
- package/dist/styles/badge.css +8 -6
- package/dist/styles/browser-live-view.css +164 -0
- package/dist/styles/browser-replay.css +189 -0
- package/dist/styles/button.css +14 -6
- package/dist/styles/card.css +4 -8
- package/dist/styles/chain-of-thought.css +5 -12
- package/dist/styles/checkbox.css +3 -3
- package/dist/styles/code-block.css +4 -8
- package/dist/styles/collapsible.css +7 -10
- package/dist/styles/combobox.css +6 -6
- package/dist/styles/commit.css +2 -9
- package/dist/styles/context-menu.css +2 -2
- package/dist/styles/conversation.css +12 -5
- package/dist/styles/dialog.css +1 -1
- package/dist/styles/field.css +2 -2
- package/dist/styles/file-tree.css +2 -2
- package/dist/styles/index.css +5 -0
- package/dist/styles/input.css +8 -3
- package/dist/styles/menu.css +4 -4
- package/dist/styles/menubar.css +5 -5
- package/dist/styles/message.css +3 -4
- package/dist/styles/navigation-menu.css +6 -6
- package/dist/styles/number-field.css +4 -4
- package/dist/styles/popover.css +7 -7
- package/dist/styles/preview-card.css +2 -2
- package/dist/styles/pricing-page.css +2 -2
- package/dist/styles/prompt-input.css +11 -9
- package/dist/styles/queue.css +6 -15
- package/dist/styles/radio.css +5 -5
- package/dist/styles/reasoning.css +6 -10
- package/dist/styles/scroll-area.css +2 -2
- package/dist/styles/select.css +3 -3
- package/dist/styles/slider.css +2 -2
- package/dist/styles/sources.css +5 -12
- package/dist/styles/stepper.css +13 -9
- package/dist/styles/switch.css +4 -4
- package/dist/styles/tabs.css +3 -3
- package/dist/styles/task.css +13 -18
- package/dist/styles/terminal.css +1 -3
- package/dist/styles/test-results.css +2 -9
- package/dist/styles/toast.css +3 -3
- package/dist/styles/toggle-group.css +3 -3
- package/dist/styles/toggle.css +3 -3
- package/dist/styles/tool.css +22 -21
- package/dist/styles/toolbar.css +4 -4
- package/dist/styles/workspace-explorer.css +108 -0
- package/dist/utils/structured-code.d.ts +1 -1
- package/package.json +9 -2
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
color: var(--sigvelo-color-text);
|
|
9
9
|
background-color: transparent;
|
|
10
10
|
border: none;
|
|
11
|
+
border-radius: var(--sigvelo-radius-sm);
|
|
11
12
|
outline: none;
|
|
12
13
|
}
|
|
13
14
|
|
|
@@ -15,6 +16,13 @@
|
|
|
15
16
|
color: var(--sigvelo-color-text-muted);
|
|
16
17
|
}
|
|
17
18
|
|
|
19
|
+
.autocomplete__input:focus-visible {
|
|
20
|
+
outline: none;
|
|
21
|
+
box-shadow:
|
|
22
|
+
0 0 0 2px var(--sigvelo-color-canvas),
|
|
23
|
+
0 0 0 4px var(--sigvelo-color-focus);
|
|
24
|
+
}
|
|
25
|
+
|
|
18
26
|
.autocomplete__trigger {
|
|
19
27
|
display: inline-flex;
|
|
20
28
|
align-items: center;
|
|
@@ -23,8 +31,9 @@
|
|
|
23
31
|
color: var(--sigvelo-color-text-muted);
|
|
24
32
|
background-color: transparent;
|
|
25
33
|
border: none;
|
|
34
|
+
border-radius: var(--sigvelo-radius-sm);
|
|
26
35
|
cursor: pointer;
|
|
27
|
-
transition: color
|
|
36
|
+
transition: color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
28
37
|
}
|
|
29
38
|
|
|
30
39
|
.autocomplete__trigger:hover {
|
|
@@ -33,6 +42,9 @@
|
|
|
33
42
|
|
|
34
43
|
.autocomplete__trigger:focus-visible {
|
|
35
44
|
outline: none;
|
|
45
|
+
box-shadow:
|
|
46
|
+
0 0 0 2px var(--sigvelo-color-canvas),
|
|
47
|
+
0 0 0 4px var(--sigvelo-color-focus);
|
|
36
48
|
}
|
|
37
49
|
|
|
38
50
|
.autocomplete__clear {
|
|
@@ -46,8 +58,8 @@
|
|
|
46
58
|
border-radius: var(--sigvelo-radius-sm);
|
|
47
59
|
cursor: pointer;
|
|
48
60
|
transition:
|
|
49
|
-
color
|
|
50
|
-
background-color
|
|
61
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
62
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
51
63
|
}
|
|
52
64
|
|
|
53
65
|
.autocomplete__clear:hover {
|
|
@@ -55,6 +67,13 @@
|
|
|
55
67
|
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
56
68
|
}
|
|
57
69
|
|
|
70
|
+
.autocomplete__clear:focus-visible {
|
|
71
|
+
outline: none;
|
|
72
|
+
box-shadow:
|
|
73
|
+
0 0 0 2px var(--sigvelo-color-canvas),
|
|
74
|
+
0 0 0 4px var(--sigvelo-color-focus);
|
|
75
|
+
}
|
|
76
|
+
|
|
58
77
|
.autocomplete__positioner {
|
|
59
78
|
z-index: 50;
|
|
60
79
|
}
|
|
@@ -71,7 +90,7 @@
|
|
|
71
90
|
box-shadow:
|
|
72
91
|
0 10px 15px -3px color-mix(in oklab, var(--sigvelo-color-text), transparent 90%),
|
|
73
92
|
0 4px 6px -4px color-mix(in oklab, var(--sigvelo-color-text), transparent 90%);
|
|
74
|
-
animation: autocomplete-popup-enter
|
|
93
|
+
animation: autocomplete-popup-enter var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
75
94
|
}
|
|
76
95
|
|
|
77
96
|
.autocomplete__popup[data-ending-style] {
|
|
@@ -117,8 +136,8 @@
|
|
|
117
136
|
cursor: pointer;
|
|
118
137
|
outline: none;
|
|
119
138
|
transition:
|
|
120
|
-
background-color
|
|
121
|
-
color
|
|
139
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
140
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
122
141
|
}
|
|
123
142
|
|
|
124
143
|
.autocomplete__item:hover,
|
package/dist/styles/badge.css
CHANGED
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
border-radius: var(--sigvelo-radius-full);
|
|
19
19
|
white-space: nowrap;
|
|
20
20
|
transition:
|
|
21
|
-
background-color
|
|
22
|
-
color
|
|
23
|
-
border-color
|
|
24
|
-
box-shadow
|
|
21
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
22
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
23
|
+
border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
24
|
+
box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
.badge:where(a, button) {
|
|
@@ -29,8 +29,10 @@
|
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
.badge:focus-visible {
|
|
32
|
-
outline:
|
|
33
|
-
|
|
32
|
+
outline: none;
|
|
33
|
+
box-shadow:
|
|
34
|
+
0 0 0 2px var(--sigvelo-color-canvas),
|
|
35
|
+
0 0 0 4px var(--sigvelo-color-focus);
|
|
34
36
|
}
|
|
35
37
|
|
|
36
38
|
.badge:is([aria-invalid="true"], [data-invalid="true"], [data-invalid=""]) {
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/* Live view of an agent's Browser Run session — hairline box, no chrome.
|
|
2
|
+
Styles the BrowserLiveView component from @mcp-b/think-chat. The CSS lives
|
|
3
|
+
in this shared stylesheet because think-chat ships no CSS of its own — its
|
|
4
|
+
consumers already load @mcp-b/react-components/styles. */
|
|
5
|
+
.browser-live-view {
|
|
6
|
+
position: relative;
|
|
7
|
+
display: flex;
|
|
8
|
+
width: 100%;
|
|
9
|
+
aspect-ratio: 16 / 10;
|
|
10
|
+
font-family: var(--sigvelo-font-sans);
|
|
11
|
+
border: var(--sigvelo-border-style) var(--sigvelo-border-width)
|
|
12
|
+
var(--sigvelo-color-neutral-border-subtle);
|
|
13
|
+
border-radius: var(--sigvelo-radius-lg);
|
|
14
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
15
|
+
overflow: hidden;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.browser-live-view__frame {
|
|
19
|
+
width: 100%;
|
|
20
|
+
height: 100%;
|
|
21
|
+
border: none;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* The chip itself is the library Badge (sm/destructive) — only the overlay
|
|
25
|
+
placement lives here. */
|
|
26
|
+
.browser-live-view__badge {
|
|
27
|
+
position: absolute;
|
|
28
|
+
top: 0.5rem;
|
|
29
|
+
inset-inline-end: 0.5rem;
|
|
30
|
+
z-index: 1;
|
|
31
|
+
box-shadow: var(--sigvelo-shadow-sm);
|
|
32
|
+
pointer-events: none;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.browser-live-view__badge-dot {
|
|
36
|
+
width: 0.375rem;
|
|
37
|
+
height: 0.375rem;
|
|
38
|
+
border-radius: 50%;
|
|
39
|
+
background-color: currentColor;
|
|
40
|
+
animation: browser-live-view-pulse 1.4s ease-in-out infinite;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* Ended state: quiet fill, same footprint so the layout never jumps */
|
|
44
|
+
.browser-live-view__ended {
|
|
45
|
+
display: flex;
|
|
46
|
+
flex-direction: column;
|
|
47
|
+
align-items: center;
|
|
48
|
+
justify-content: center;
|
|
49
|
+
gap: 0.25rem;
|
|
50
|
+
width: 100%;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.browser-live-view__ended-title {
|
|
54
|
+
font-size: 0.8125rem;
|
|
55
|
+
font-weight: var(--sigvelo-font-weight-semibold);
|
|
56
|
+
color: var(--sigvelo-color-text-muted);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.browser-live-view__ended-detail {
|
|
60
|
+
font-size: 0.75rem;
|
|
61
|
+
color: var(--sigvelo-color-text-muted);
|
|
62
|
+
max-width: 80%;
|
|
63
|
+
overflow: hidden;
|
|
64
|
+
text-overflow: ellipsis;
|
|
65
|
+
white-space: nowrap;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/* An expired view showing a screenshot fallback keeps the image flush */
|
|
69
|
+
.browser-live-view[data-expired] > img {
|
|
70
|
+
width: 100%;
|
|
71
|
+
height: 100%;
|
|
72
|
+
object-fit: cover;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/* Connecting overlay: opaque so the hosted viewer's own loading/error page
|
|
76
|
+
never flashes through; cleared on the iframe's load event. */
|
|
77
|
+
.browser-live-view__state {
|
|
78
|
+
position: absolute;
|
|
79
|
+
inset: 0;
|
|
80
|
+
display: flex;
|
|
81
|
+
flex-direction: column;
|
|
82
|
+
align-items: center;
|
|
83
|
+
justify-content: center;
|
|
84
|
+
gap: 0.5rem;
|
|
85
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
86
|
+
color: var(--sigvelo-color-text-muted);
|
|
87
|
+
font-size: 0.8125rem;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.browser-live-view__state-spinner {
|
|
91
|
+
animation: browser-live-view-spin 900ms linear infinite;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* Expand affordance, video-player style: quiet until the box is hovered or
|
|
95
|
+
the button is focused */
|
|
96
|
+
.browser-live-view__expand {
|
|
97
|
+
position: absolute;
|
|
98
|
+
inset-block-end: 0.5rem;
|
|
99
|
+
inset-inline-end: 0.5rem;
|
|
100
|
+
z-index: 1;
|
|
101
|
+
background-color: var(--sigvelo-color-surface);
|
|
102
|
+
box-shadow: var(--sigvelo-shadow-sm);
|
|
103
|
+
opacity: 0;
|
|
104
|
+
transition:
|
|
105
|
+
opacity var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
106
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.browser-live-view:hover .browser-live-view__expand,
|
|
110
|
+
.browser-live-view__expand:focus-visible {
|
|
111
|
+
opacity: 1;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/* Fullscreen dialog: the view fills everything under the title row */
|
|
115
|
+
.browser-live-view__dialog {
|
|
116
|
+
display: flex;
|
|
117
|
+
flex-direction: column;
|
|
118
|
+
gap: 0.75rem;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.browser-live-view__dialog-body {
|
|
122
|
+
position: relative;
|
|
123
|
+
flex: 1;
|
|
124
|
+
min-height: 0;
|
|
125
|
+
display: flex;
|
|
126
|
+
border-radius: var(--sigvelo-radius-md);
|
|
127
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
128
|
+
overflow: hidden;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.browser-live-view__dialog-body > iframe {
|
|
132
|
+
width: 100%;
|
|
133
|
+
height: 100%;
|
|
134
|
+
border: none;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.browser-live-view__dialog-body > img {
|
|
138
|
+
width: 100%;
|
|
139
|
+
height: 100%;
|
|
140
|
+
object-fit: contain;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
@keyframes browser-live-view-pulse {
|
|
144
|
+
0%,
|
|
145
|
+
100% {
|
|
146
|
+
opacity: 1;
|
|
147
|
+
}
|
|
148
|
+
50% {
|
|
149
|
+
opacity: 0.4;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
@keyframes browser-live-view-spin {
|
|
154
|
+
to {
|
|
155
|
+
transform: rotate(360deg);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
@media (prefers-reduced-motion: reduce) {
|
|
160
|
+
.browser-live-view__badge-dot,
|
|
161
|
+
.browser-live-view__state-spinner {
|
|
162
|
+
animation: none;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/* Styles the BrowserReplay component from @mcp-b/think-chat. The CSS lives in
|
|
2
|
+
this shared stylesheet because think-chat ships no CSS of its own — its
|
|
3
|
+
consumers already load @mcp-b/react-components/styles. */
|
|
4
|
+
.browser-replay {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
width: 100%;
|
|
8
|
+
font-family: var(--sigvelo-font-sans);
|
|
9
|
+
color: var(--sigvelo-color-text);
|
|
10
|
+
background-color: var(--sigvelo-color-surface);
|
|
11
|
+
border: var(--sigvelo-border-style) var(--sigvelo-border-width)
|
|
12
|
+
var(--sigvelo-color-neutral-border-subtle);
|
|
13
|
+
border-radius: var(--sigvelo-radius-lg);
|
|
14
|
+
overflow: hidden;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.browser-replay__stage-wrap {
|
|
18
|
+
position: relative;
|
|
19
|
+
width: 100%;
|
|
20
|
+
aspect-ratio: 16 / 10;
|
|
21
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
22
|
+
overflow: hidden;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.browser-replay__stage {
|
|
26
|
+
position: absolute;
|
|
27
|
+
inset: 0;
|
|
28
|
+
overflow: hidden;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.browser-replay__stage iframe {
|
|
32
|
+
border: 0;
|
|
33
|
+
background-color: var(--sigvelo-color-surface);
|
|
34
|
+
pointer-events: none;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.browser-replay__empty {
|
|
38
|
+
position: absolute;
|
|
39
|
+
inset: 0;
|
|
40
|
+
display: grid;
|
|
41
|
+
place-content: center;
|
|
42
|
+
padding: 1rem;
|
|
43
|
+
color: var(--sigvelo-color-text-muted);
|
|
44
|
+
font-size: 0.8125rem;
|
|
45
|
+
text-align: center;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.browser-replay__controls {
|
|
49
|
+
display: flex;
|
|
50
|
+
align-items: center;
|
|
51
|
+
gap: 0.625rem;
|
|
52
|
+
padding-block: 0.5rem;
|
|
53
|
+
padding-inline: 0.75rem;
|
|
54
|
+
border-block-start: var(--sigvelo-border-style) var(--sigvelo-border-width)
|
|
55
|
+
var(--sigvelo-color-neutral-border-subtle);
|
|
56
|
+
background-color: var(--sigvelo-color-surface);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/* Play/pause is the library Button (ghost/icon-sm) and the scrubber is the
|
|
60
|
+
library Slider — only flex sizing lives here. */
|
|
61
|
+
.browser-replay__toggle {
|
|
62
|
+
flex: 0 0 auto;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.browser-replay__scrubber {
|
|
66
|
+
flex: 1;
|
|
67
|
+
min-width: 0;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.browser-replay__time {
|
|
71
|
+
color: var(--sigvelo-color-text-muted);
|
|
72
|
+
font-family: var(--sigvelo-font-mono);
|
|
73
|
+
font-size: 0.6875rem;
|
|
74
|
+
font-variant-numeric: tabular-nums;
|
|
75
|
+
white-space: nowrap;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/* Vendored from @rrweb/replay/dist/style.css so consumers do not need CSS package imports. */
|
|
79
|
+
.browser-replay .replayer-wrapper {
|
|
80
|
+
position: relative;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.browser-replay .replayer-mouse {
|
|
84
|
+
position: absolute;
|
|
85
|
+
width: 20px;
|
|
86
|
+
height: 20px;
|
|
87
|
+
transition:
|
|
88
|
+
left 50ms linear,
|
|
89
|
+
top 50ms linear;
|
|
90
|
+
background-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9JzMwMHB4JyB3aWR0aD0nMzAwcHgnICBmaWxsPSIjMDAwMDAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGRhdGEtbmFtZT0iTGF5ZXIgMSIgdmlld0JveD0iMCAwIDUwIDUwIiB4PSIwcHgiIHk9IjBweCI+PHRpdGxlPkRlc2lnbl90bnA8L3RpdGxlPjxwYXRoIGQ9Ik00OC43MSw0Mi45MUwzNC4wOCwyOC4yOSw0NC4zMywxOEExLDEsMCwwLDAsNDQsMTYuMzlMMi4zNSwxLjA2QTEsMSwwLDAsMCwxLjA2LDIuMzVMMTYuMzksNDRhMSwxLDAsMCwwLDEuNjUuMzZMMjguMjksMzQuMDgsNDIuOTEsNDguNzFhMSwxLDAsMCwwLDEuNDEsMGw0LjM4LTQuMzhBMSwxLDAsMCwwLDQ4LjcxLDQyLjkxWm0tNS4wOSwzLjY3TDI5LDMyYTEsMSwwLDAsMC0xLjQxLDBsLTkuODUsOS44NUwzLjY5LDMuNjlsMzguMTIsMTRMMzIsMjcuNThBMSwxLDAsMCwwLDMyLDI5TDQ2LjU5LDQzLjYyWiI+PC9wYXRoPjwvc3ZnPg==");
|
|
91
|
+
background-repeat: no-repeat;
|
|
92
|
+
background-position: center;
|
|
93
|
+
background-size: contain;
|
|
94
|
+
border-color: transparent;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.browser-replay .replayer-mouse::after {
|
|
98
|
+
content: "";
|
|
99
|
+
display: inline-block;
|
|
100
|
+
width: 20px;
|
|
101
|
+
height: 20px;
|
|
102
|
+
background: var(--sigvelo-color-focus);
|
|
103
|
+
border-radius: 100%;
|
|
104
|
+
transform: translate(-50%, -50%);
|
|
105
|
+
opacity: 0.3;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.browser-replay .replayer-mouse.active::after {
|
|
109
|
+
animation: browser-replay-click 200ms ease-in-out 1;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.browser-replay .replayer-mouse.touch-device {
|
|
113
|
+
width: 70px;
|
|
114
|
+
height: 70px;
|
|
115
|
+
margin-top: -37px;
|
|
116
|
+
margin-left: -37px;
|
|
117
|
+
background-image: none;
|
|
118
|
+
border-color: transparent;
|
|
119
|
+
border-style: solid;
|
|
120
|
+
border-width: 4px;
|
|
121
|
+
border-radius: 100%;
|
|
122
|
+
transition:
|
|
123
|
+
left 0s linear,
|
|
124
|
+
top 0s linear,
|
|
125
|
+
border-color 200ms ease-in-out;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
.browser-replay .replayer-mouse.touch-device.touch-active {
|
|
129
|
+
border-color: var(--sigvelo-color-focus);
|
|
130
|
+
transition:
|
|
131
|
+
left 250ms linear,
|
|
132
|
+
top 250ms linear,
|
|
133
|
+
border-color 200ms ease-in-out;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.browser-replay .replayer-mouse.touch-device::after {
|
|
137
|
+
opacity: 0;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.browser-replay .replayer-mouse.touch-device.active::after {
|
|
141
|
+
animation: browser-replay-touch-click 200ms ease-in-out 1;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.browser-replay .replayer-mouse-tail {
|
|
145
|
+
position: absolute;
|
|
146
|
+
pointer-events: none;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
@keyframes browser-replay-click {
|
|
150
|
+
0% {
|
|
151
|
+
width: 20px;
|
|
152
|
+
height: 20px;
|
|
153
|
+
opacity: 0.3;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
50% {
|
|
157
|
+
width: 10px;
|
|
158
|
+
height: 10px;
|
|
159
|
+
opacity: 0.5;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
@keyframes browser-replay-touch-click {
|
|
164
|
+
0% {
|
|
165
|
+
width: 20px;
|
|
166
|
+
height: 20px;
|
|
167
|
+
opacity: 0;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
50% {
|
|
171
|
+
width: 10px;
|
|
172
|
+
height: 10px;
|
|
173
|
+
opacity: 0.5;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
@media (prefers-reduced-motion: reduce) {
|
|
178
|
+
.browser-replay .replayer-mouse,
|
|
179
|
+
.browser-replay .replayer-mouse.active::after {
|
|
180
|
+
animation: none;
|
|
181
|
+
transition: none;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
@media (forced-colors: active) {
|
|
186
|
+
.browser-replay {
|
|
187
|
+
border: 1px solid CanvasText;
|
|
188
|
+
}
|
|
189
|
+
}
|
package/dist/styles/button.css
CHANGED
|
@@ -12,15 +12,23 @@
|
|
|
12
12
|
text-decoration: none;
|
|
13
13
|
border-radius: var(--sigvelo-radius-md);
|
|
14
14
|
transition:
|
|
15
|
-
background-color
|
|
16
|
-
color
|
|
17
|
-
border-color
|
|
18
|
-
box-shadow
|
|
15
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
16
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
17
|
+
border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
18
|
+
box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/* ponytail: one brightness rule covers press feedback for every variant;
|
|
22
|
+
upgrade to per-variant color-mix rules if filter side effects ever bite */
|
|
23
|
+
.button:active:not([data-disabled]) {
|
|
24
|
+
filter: brightness(0.94);
|
|
19
25
|
}
|
|
20
26
|
|
|
21
27
|
.button:focus-visible {
|
|
22
|
-
outline:
|
|
23
|
-
|
|
28
|
+
outline: none;
|
|
29
|
+
box-shadow:
|
|
30
|
+
0 0 0 2px var(--sigvelo-color-canvas),
|
|
31
|
+
0 0 0 4px var(--sigvelo-color-focus);
|
|
24
32
|
}
|
|
25
33
|
|
|
26
34
|
.button[data-disabled] {
|
package/dist/styles/card.css
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
.card {
|
|
2
2
|
background-color: var(--sigvelo-color-surface);
|
|
3
3
|
color: var(--sigvelo-color-text);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
border-radius: var(--sigvelo-radius-md);
|
|
4
|
+
/* Shadow-led elevation: no perimeter border */
|
|
5
|
+
border-radius: var(--sigvelo-radius-lg);
|
|
7
6
|
padding: 1.5rem;
|
|
8
7
|
container-type: inline-size;
|
|
9
8
|
box-shadow: var(--sigvelo-shadow-sm);
|
|
10
9
|
transition:
|
|
11
|
-
box-shadow
|
|
12
|
-
|
|
13
|
-
transform 150ms ease;
|
|
10
|
+
box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
11
|
+
transform var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
14
12
|
}
|
|
15
13
|
|
|
16
14
|
.card__header,
|
|
@@ -65,13 +63,11 @@
|
|
|
65
63
|
|
|
66
64
|
.card--hover:hover {
|
|
67
65
|
box-shadow: var(--sigvelo-shadow-md);
|
|
68
|
-
border-color: var(--sigvelo-color-focus);
|
|
69
66
|
transform: translateY(-2px);
|
|
70
67
|
}
|
|
71
68
|
|
|
72
69
|
.card--hover:focus-visible {
|
|
73
70
|
outline: none;
|
|
74
|
-
border-color: var(--sigvelo-color-focus);
|
|
75
71
|
box-shadow:
|
|
76
72
|
0 0 0 2px var(--sigvelo-color-canvas),
|
|
77
73
|
0 0 0 4px var(--sigvelo-color-focus);
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
font-weight: var(--sigvelo-font-weight-semibold);
|
|
22
22
|
cursor: pointer;
|
|
23
23
|
transition:
|
|
24
|
-
background-color
|
|
25
|
-
color
|
|
24
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
25
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
.chain-of-thought__header:hover:not([data-disabled]) {
|
|
@@ -47,20 +47,13 @@
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
.chain-of-thought__content {
|
|
50
|
+
height: var(--collapsible-panel-height);
|
|
50
51
|
overflow: hidden;
|
|
51
52
|
transition:
|
|
52
53
|
height 200ms ease,
|
|
53
54
|
opacity 200ms ease;
|
|
54
55
|
}
|
|
55
56
|
|
|
56
|
-
.chain-of-thought__content[data-closed] {
|
|
57
|
-
height: 0;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
.chain-of-thought__content[data-open] {
|
|
61
|
-
height: var(--collapsible-panel-height);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
57
|
.chain-of-thought__content[data-starting-style],
|
|
65
58
|
.chain-of-thought__content[data-ending-style] {
|
|
66
59
|
height: 0;
|
|
@@ -176,8 +169,8 @@
|
|
|
176
169
|
text-overflow: ellipsis;
|
|
177
170
|
white-space: nowrap;
|
|
178
171
|
transition:
|
|
179
|
-
background-color
|
|
180
|
-
border-color
|
|
172
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
173
|
+
border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
181
174
|
}
|
|
182
175
|
|
|
183
176
|
.chain-of-thought__search-result:hover {
|
package/dist/styles/checkbox.css
CHANGED
|
@@ -12,9 +12,9 @@
|
|
|
12
12
|
outline: none;
|
|
13
13
|
cursor: pointer;
|
|
14
14
|
transition:
|
|
15
|
-
background-color
|
|
16
|
-
border-color
|
|
17
|
-
box-shadow
|
|
15
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
16
|
+
border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
17
|
+
box-shadow var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
.checkbox:hover:not([data-disabled]) {
|
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
width: 100%;
|
|
5
5
|
font-family: var(--sigvelo-font-sans);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
border-radius: var(--sigvelo-radius-md);
|
|
6
|
+
/* Fill-based containment: no perimeter border */
|
|
7
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
8
|
+
border-radius: var(--sigvelo-radius-lg);
|
|
10
9
|
overflow: hidden;
|
|
11
10
|
}
|
|
12
11
|
|
|
@@ -16,9 +15,7 @@
|
|
|
16
15
|
gap: 0.5rem;
|
|
17
16
|
padding-block: 0.5rem;
|
|
18
17
|
padding-inline: 0.75rem;
|
|
19
|
-
background-color:
|
|
20
|
-
border-block-end: var(--sigvelo-border-style) var(--sigvelo-border-width)
|
|
21
|
-
var(--sigvelo-color-neutral-border-subtle);
|
|
18
|
+
background-color: transparent;
|
|
22
19
|
}
|
|
23
20
|
|
|
24
21
|
.code-block__title {
|
|
@@ -62,7 +59,6 @@
|
|
|
62
59
|
font-size: 0.8125rem;
|
|
63
60
|
line-height: 1.55;
|
|
64
61
|
color: var(--sigvelo-color-text);
|
|
65
|
-
background-color: var(--sigvelo-color-surface);
|
|
66
62
|
overflow-x: auto;
|
|
67
63
|
}
|
|
68
64
|
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
border-radius: var(--sigvelo-radius-md);
|
|
24
24
|
cursor: pointer;
|
|
25
25
|
transition:
|
|
26
|
-
background-color
|
|
27
|
-
border-color
|
|
26
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
27
|
+
border-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
.collapsible__trigger:hover {
|
|
@@ -63,7 +63,12 @@
|
|
|
63
63
|
border-block-end-color: transparent;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
+
/* The measured height sits on the base class, not behind [data-open]: during
|
|
67
|
+
close the open rule stops matching before the ending style lands, height
|
|
68
|
+
computes to `auto`, and `auto → 0` can't transition — the panel snaps shut
|
|
69
|
+
instead of folding. (Base UI's documented panel pattern.) */
|
|
66
70
|
.collapsible__panel {
|
|
71
|
+
height: var(--collapsible-panel-height);
|
|
67
72
|
overflow: hidden;
|
|
68
73
|
font-family: var(--sigvelo-font-sans);
|
|
69
74
|
font-size: 0.875rem;
|
|
@@ -73,14 +78,6 @@
|
|
|
73
78
|
opacity 200ms ease;
|
|
74
79
|
}
|
|
75
80
|
|
|
76
|
-
.collapsible__panel[data-closed] {
|
|
77
|
-
height: 0;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.collapsible__panel[data-open] {
|
|
81
|
-
height: var(--collapsible-panel-height);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
81
|
.collapsible__panel[data-starting-style],
|
|
85
82
|
.collapsible__panel[data-ending-style] {
|
|
86
83
|
height: 0;
|
package/dist/styles/combobox.css
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
background-color: transparent;
|
|
25
25
|
border: none;
|
|
26
26
|
cursor: pointer;
|
|
27
|
-
transition: color
|
|
27
|
+
transition: color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
.combobox__trigger:hover {
|
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
border-radius: var(--sigvelo-radius-sm);
|
|
51
51
|
cursor: pointer;
|
|
52
52
|
transition:
|
|
53
|
-
color
|
|
54
|
-
background-color
|
|
53
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
54
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
55
55
|
}
|
|
56
56
|
|
|
57
57
|
.combobox__clear:hover {
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
box-shadow:
|
|
76
76
|
0 10px 15px -3px color-mix(in oklab, var(--sigvelo-color-text), transparent 90%),
|
|
77
77
|
0 4px 6px -4px color-mix(in oklab, var(--sigvelo-color-text), transparent 90%);
|
|
78
|
-
animation: combobox-popup-enter
|
|
78
|
+
animation: combobox-popup-enter var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
.combobox__popup[data-ending-style] {
|
|
@@ -121,8 +121,8 @@
|
|
|
121
121
|
cursor: pointer;
|
|
122
122
|
outline: none;
|
|
123
123
|
transition:
|
|
124
|
-
background-color
|
|
125
|
-
color
|
|
124
|
+
background-color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard),
|
|
125
|
+
color var(--sigvelo-duration-fast) var(--sigvelo-ease-standard);
|
|
126
126
|
}
|
|
127
127
|
|
|
128
128
|
.combobox__item:hover,
|