@@ -4,7 +4,14 @@ import { useAtom } from "jotai";
4
4
import { parse } from "url" ;
5
5
6
6
import type { APIV1Read } from "@fern-api/fdr-sdk/client/types" ;
7
- import { FernButton , FernDropdown , FernInput , cn } from "@fern-docs/components" ;
7
+ import {
8
+ FernButton ,
9
+ FernDropdown ,
10
+ FernInput ,
11
+ FernTooltip ,
12
+ FernTooltipProvider ,
13
+ cn ,
14
+ } from "@fern-docs/components" ;
8
15
import { useBooleanState } from "@fern-ui/react-commons" ;
9
16
10
17
import { SELECTED_ENVIRONMENT_ATOM } from "@/state/environment" ;
@@ -162,64 +169,42 @@ export function MaybeEnvironmentDropdown({
162
169
/>
163
170
</ span >
164
171
) : (
165
- < >
166
- < span className = "max-sm:hidden" style = { { pointerEvents : "auto" } } >
167
- { options && options . length > 1 ? (
168
- < FernDropdown
169
- key = "selectedEnvironment-selector"
170
- options = { options . map ( ( env ) => ( {
171
- value : env . id ,
172
- label : env . id ,
173
- type : "value" ,
174
- } ) ) }
175
- onValueChange = { ( value ) => {
176
- setPlaygroundEnvironment ( undefined ) ;
177
- setSelectedEnvironmentId ( value ) ;
178
- } }
179
- value = { selectedEnvironment ?. id ?? environmentId }
180
- >
181
- < FernButton
182
- style = { { pointerEvents : "auto" } }
183
- className = "h-auto px-1 py-0"
184
- text = {
185
- < span
186
- key = "protocol"
187
- className = "whitespace-nowrap max-sm:hidden"
188
- >
172
+ < FernTooltipProvider >
173
+ < FernTooltip content = "Double click to edit" >
174
+ < span className = "max-sm:hidden" style = { { pointerEvents : "auto" } } >
175
+ { options && options . length > 1 ? (
176
+ < FernDropdown
177
+ key = "selectedEnvironment-selector"
178
+ options = { options . map ( ( env ) => ( {
179
+ value : env . id ,
180
+ label : env . id ,
181
+ type : "value" ,
182
+ } ) ) }
183
+ onValueChange = { ( value ) => {
184
+ setPlaygroundEnvironment ( undefined ) ;
185
+ setSelectedEnvironmentId ( value ) ;
186
+ } }
187
+ value = { selectedEnvironment ?. id ?? environmentId }
188
+ >
189
+ < FernButton
190
+ style = { { pointerEvents : "auto" } }
191
+ className = "h-auto px-1 py-0"
192
+ text = {
189
193
< span
190
- className = { protocolTextStyle }
191
- > { `${ urlProtocol } //` } </ span >
192
- < span className = { urlTextStyle } >
193
- { fullyQualifiedDomainAndBasePath ?? "" }
194
+ key = "protocol"
195
+ className = "whitespace-nowrap max-sm:hidden"
196
+ >
197
+ < span
198
+ className = { protocolTextStyle }
199
+ > { `${ urlProtocol } //` } </ span >
200
+ < span className = { urlTextStyle } >
201
+ { fullyQualifiedDomainAndBasePath ?? "" }
202
+ </ span >
194
203
</ span >
195
- </ span >
196
- }
197
- size = { small ? "small" : "normal" }
198
- variant = "outlined"
199
- mono = { true }
200
- onDoubleClick = {
201
- editable
202
- ? ( ) => {
203
- setInitialState ( inputValue ) ;
204
- isEditingEnvironment . setTrue ( ) ;
205
- }
206
- : ( ) => undefined
207
- }
208
- />
209
- </ FernDropdown >
210
- ) : (
211
- < span
212
- key = "url"
213
- className = "whitespace-nowrap font-mono max-sm:hidden"
214
- >
215
- { editable ? (
216
- < span
217
- className = { cn (
218
- urlTextStyle ,
219
- "p-0" ,
220
- small ? "text-xs" : "text-sm" ,
221
- "hover:shadow-lg"
222
- ) }
204
+ }
205
+ size = { small ? "small" : "normal" }
206
+ variant = "outlined"
207
+ mono = { true }
223
208
onDoubleClick = {
224
209
editable
225
210
? ( ) => {
@@ -228,28 +213,52 @@ export function MaybeEnvironmentDropdown({
228
213
}
229
214
: ( ) => undefined
230
215
}
231
- >
232
- { `${ urlProtocol } //${ fullyQualifiedDomainAndBasePath } ` }
233
- </ span >
234
- ) : (
235
- < >
216
+ />
217
+ </ FernDropdown >
218
+ ) : (
219
+ < span
220
+ key = "url"
221
+ className = "whitespace-nowrap font-mono max-sm:hidden"
222
+ >
223
+ { editable ? (
236
224
< span
237
225
className = { cn (
238
- protocolTextStyle ,
239
- small ? "text-xs" : "text-sm"
226
+ urlTextStyle ,
227
+ "p-0" ,
228
+ small ? "text-xs" : "text-sm" ,
229
+ "hover:shadow-lg"
240
230
) }
231
+ onDoubleClick = {
232
+ editable
233
+ ? ( ) => {
234
+ setInitialState ( inputValue ) ;
235
+ isEditingEnvironment . setTrue ( ) ;
236
+ }
237
+ : ( ) => undefined
238
+ }
241
239
>
242
- { `${ urlProtocol } //` }
243
- </ span >
244
- < span className = { urlTextStyle } >
245
- { fullyQualifiedDomainAndBasePath }
240
+ { `${ urlProtocol } //${ fullyQualifiedDomainAndBasePath } ` }
246
241
</ span >
247
- </ >
248
- ) }
249
- </ span >
250
- ) }
251
- </ span >
252
- </ >
242
+ ) : (
243
+ < >
244
+ < span
245
+ className = { cn (
246
+ protocolTextStyle ,
247
+ small ? "text-xs" : "text-sm"
248
+ ) }
249
+ >
250
+ { `${ urlProtocol } //` }
251
+ </ span >
252
+ < span className = { urlTextStyle } >
253
+ { fullyQualifiedDomainAndBasePath }
254
+ </ span >
255
+ </ >
256
+ ) }
257
+ </ span >
258
+ ) }
259
+ </ span >
260
+ </ FernTooltip >
261
+ </ FernTooltipProvider >
253
262
) }
254
263
</ >
255
264
) ;
0 commit comments