@@ -50,7 +50,12 @@ export interface HiveNavigationProps {
50
50
productName : string ;
51
51
logo ?: ReactNode ;
52
52
navLinks ?: { href : string ; children : ReactNode } [ ] ;
53
- developerMenu ?: { href : string ; icon : React . FC < { className ?: string } > ; children : ReactNode } [ ] ;
53
+ developerMenu ?: {
54
+ href : string ;
55
+ title ?: string ;
56
+ icon : React . FC < { className ?: string } > ;
57
+ children : ReactNode ;
58
+ } [ ] ;
54
59
}
55
60
/**
56
61
*
@@ -213,11 +218,12 @@ export const ProductsMenu = React.forwardRef<HTMLDivElement, ProductsMenuProps>(
213
218
Hive
214
219
</ p >
215
220
< p className = "mt-1 text-sm leading-5 text-green-800 dark:text-neutral-400" >
216
- GraphQL Management Platform & Decision - making Engine
221
+ GraphQL Federation Platform with Schema Registry and Analytics
217
222
</ p >
218
223
</ NavigationMenuLink >
219
224
< Anchor
220
225
href = "https://app.graphql-hive.com/"
226
+ title = "Discover the Hive platform"
221
227
className = "hive-focus -my-2 ml-2 flex items-center gap-2 rounded-lg p-2 font-medium text-green-800 transition-colors hover:bg-beige-100 hover:text-green-1000 dark:text-neutral-400 dark:hover:bg-neutral-800/50 dark:hover:text-neutral-200"
222
228
>
223
229
< span > Get started</ span > < ArrowIcon />
@@ -228,7 +234,7 @@ export const ProductsMenu = React.forwardRef<HTMLDivElement, ProductsMenuProps>(
228
234
< ul >
229
235
{ (
230
236
[
231
- [ PRODUCTS . HIVE_GATEWAY , 'Federation Gateway' ] ,
237
+ [ PRODUCTS . HIVE_GATEWAY , 'GraphQL Federation Gateway' ] ,
232
238
[ PRODUCTS . MESH , 'Anything to GraphQL' ] ,
233
239
[ PRODUCTS . YOGA , 'GraphQL Server & Subgraph' ] ,
234
240
] as const
@@ -238,6 +244,7 @@ export const ProductsMenu = React.forwardRef<HTMLDivElement, ProductsMenuProps>(
238
244
< li key = { product . name } >
239
245
< NavigationMenuLink
240
246
href = { bidirectionalProductLink ( product ) }
247
+ title = { product . title }
241
248
className = "flex flex-row items-center gap-4 p-4"
242
249
>
243
250
< div className = "size-12 rounded-lg bg-blue-400 p-2.5" >
@@ -323,7 +330,12 @@ interface DeveloperMenuProps extends React.HTMLAttributes<HTMLDivElement> {
323
330
isHive : boolean ;
324
331
developerMenu :
325
332
| undefined
326
- | { href : string ; icon : React . FC < { className ?: string } > ; children : ReactNode } [ ] ;
333
+ | {
334
+ href : string ;
335
+ title ?: string ;
336
+ icon : React . FC < { className ?: string } > ;
337
+ children : ReactNode ;
338
+ } [ ] ;
327
339
}
328
340
/**
329
341
* @internal
@@ -334,17 +346,32 @@ export const DeveloperMenu = React.forwardRef<HTMLDivElement, DeveloperMenuProps
334
346
{
335
347
href : isHive ? '/docs' : 'https://the-guild.dev/graphql/hive/docs' ,
336
348
icon : PaperIcon ,
349
+ title : 'Visit the documentation' ,
337
350
children : 'Documentation' ,
338
351
} ,
339
- { href : 'https://status.graphql-hive.com/' , icon : TargetIcon , children : 'Status' } ,
352
+ {
353
+ href : 'https://status.graphql-hive.com/' ,
354
+ title : 'Check Hive status' ,
355
+ icon : TargetIcon ,
356
+ children : 'Status' ,
357
+ } ,
340
358
{
341
359
href : isHive ? '/product-updates' : 'https://the-guild.dev/graphql/hive/product-updates' ,
360
+ title : 'Read most recent developments from Hive' ,
342
361
icon : RightCornerIcon ,
343
362
children : 'Product Updates' ,
344
363
} ,
345
- { href : 'https://the-guild.dev/blog' , icon : PencilIcon , children : 'Blog' } ,
346
364
{
347
- href : 'https://github.com/dotansimha/graphql-code-generator' ,
365
+ href : 'https://the-guild.dev/blog' ,
366
+ title : 'Read our blog post' ,
367
+ icon : PencilIcon ,
368
+ children : 'Blog' ,
369
+ } ,
370
+ {
371
+ href : isHive
372
+ ? 'https://github.com/graphql-hive/console'
373
+ : 'https://github.com/dotansimha/graphql-code-generator' ,
374
+ title : 'Give us a star' ,
348
375
icon : GitHubIcon ,
349
376
children : 'GitHub' ,
350
377
} ,
@@ -355,8 +382,8 @@ export const DeveloperMenu = React.forwardRef<HTMLDivElement, DeveloperMenuProps
355
382
< div >
356
383
< ColumnLabel > Developer</ ColumnLabel >
357
384
< ul >
358
- { developerMenu . map ( ( { href, icon, children } , i ) => (
359
- < MenuColumnListItem key = { i } href = { href } icon = { icon } >
385
+ { developerMenu . map ( ( { href, title , icon, children } , i ) => (
386
+ < MenuColumnListItem key = { i } title = { title } href = { href } icon = { icon } >
360
387
{ children }
361
388
</ MenuColumnListItem >
362
389
) ) }
@@ -392,16 +419,19 @@ DeveloperMenu.displayName = 'DeveloperMenu';
392
419
function MenuColumnListItem ( {
393
420
children,
394
421
href,
422
+ title,
395
423
icon : Icon ,
396
424
} : {
397
425
children : ReactNode ;
398
426
href : string ;
427
+ title ?: string ;
399
428
icon : React . FC < { className ?: string } > ;
400
429
} ) {
401
430
return (
402
431
< li >
403
432
< NavigationMenuLink
404
433
href = { href }
434
+ title = { title }
405
435
className = "flex flex-row items-center gap-3 text-nowrap px-4 py-2"
406
436
arrow
407
437
>
0 commit comments