@@ -13,7 +13,6 @@ import { languageList } from '../data/languageList'
1313import { frameworkList } from '../data/frameworkList'
1414import { gitList } from '../data/gitList'
1515import { roadmapList } from '../data/roadmapList'
16- import { communityList } from '../data/communityList'
1716import { UserButton , useUser } from '@clerk/nextjs'
1817import ThemeSelector from '../ThemeSelector'
1918
@@ -24,12 +23,10 @@ const Header = () => {
2423 const [ isGitSelectionDropdownOpen , setGitSelectionDropdownOpen ] =
2524 useState ( false )
2625 const [ isRoadmapDropdownOpen , setRoadmapDropdownOpen ] = useState ( false )
27- const [ isCommunityDropdownOpen , setCommunityDropdownOpen ] = useState ( false )
2826 const node = useRef < HTMLLIElement | null > ( null )
2927 const frameworkNode = useRef < HTMLLIElement | null > ( null )
3028 const gitSelectionNode = useRef < HTMLLIElement | null > ( null )
3129 const roadmapNode = useRef < HTMLLIElement | null > ( null )
32- const communityNode = useRef < HTMLLIElement | null > ( null )
3330 const router = useRouter ( )
3431 const [ starCount , setStarCount ] = useState < number | null > ( null )
3532 const { user, isLoaded } = useUser ( )
@@ -69,11 +66,6 @@ const Header = () => {
6966 setRoadmapDropdownOpen ( false )
7067 }
7168
72- const navigateToCommunity = ( link : string ) => {
73- router . push ( link )
74- setCommunityDropdownOpen ( false )
75- }
76-
7769 const toggleLanguageDropdown = ( ) => {
7870 setLanguageDropdownOpen ( ! isLanguageDropdownOpen )
7971 if ( ! isLanguageDropdownOpen ) {
@@ -82,7 +74,6 @@ const Header = () => {
8274 setFrameworkDropdownOpen ( false )
8375 setGitSelectionDropdownOpen ( false )
8476 setRoadmapDropdownOpen ( false )
85- setCommunityDropdownOpen ( false )
8677 }
8778
8879 const toggleFrameworkDropdown = ( ) => {
@@ -93,7 +84,6 @@ const Header = () => {
9384 setLanguageDropdownOpen ( false )
9485 setGitSelectionDropdownOpen ( false )
9586 setRoadmapDropdownOpen ( false )
96- setCommunityDropdownOpen ( false )
9787 }
9888
9989 const toggleGitSelectionDropdown = ( ) => {
@@ -104,7 +94,6 @@ const Header = () => {
10494 setLanguageDropdownOpen ( false )
10595 setFrameworkDropdownOpen ( false )
10696 setRoadmapDropdownOpen ( false )
107- setCommunityDropdownOpen ( false )
10897 }
10998
11099 const toggleRoadmapDropdown = ( ) => {
@@ -115,18 +104,6 @@ const Header = () => {
115104 setLanguageDropdownOpen ( false )
116105 setFrameworkDropdownOpen ( false )
117106 setGitSelectionDropdownOpen ( false )
118- setCommunityDropdownOpen ( false )
119- }
120-
121- const toggleCommunityDropdown = ( ) => {
122- setCommunityDropdownOpen ( ! isCommunityDropdownOpen )
123- if ( ! isCommunityDropdownOpen ) {
124- window . dispatchEvent ( new Event ( 'dropdownOpened' ) )
125- }
126- setLanguageDropdownOpen ( false )
127- setFrameworkDropdownOpen ( false )
128- setGitSelectionDropdownOpen ( false )
129- setRoadmapDropdownOpen ( false )
130107 }
131108
132109 return (
@@ -339,55 +316,6 @@ const Header = () => {
339316 </ div >
340317 ) }
341318 </ div >
342-
343- < div
344- className = 'relative'
345- ref = { communityNode as React . RefObject < HTMLDivElement > }
346- >
347- < button
348- onClick = { toggleCommunityDropdown }
349- className = 'flex items-center transition-colors hover:text-modern-purple'
350- style = { { color : 'var(--fc-primary)' } }
351- >
352- < span className = 'font-medium' > Community</ span >
353- < svg
354- className = { `ml-1 h-4 w-4 transition-transform ${ isCommunityDropdownOpen ? 'rotate-180' : '' } ` }
355- fill = 'none'
356- viewBox = '0 0 24 24'
357- stroke = 'currentColor'
358- >
359- < path
360- strokeLinecap = 'round'
361- strokeLinejoin = 'round'
362- strokeWidth = { 2 }
363- d = 'M19 9l-7 7-7-7'
364- />
365- </ svg >
366- </ button >
367- { isCommunityDropdownOpen && (
368- < div
369- className = 'scrollable-dropdown absolute z-50 mt-2 w-60 rounded-md py-1 shadow-lg'
370- style = { {
371- backgroundColor : 'var(--bg-secondary)' ,
372- color : 'var(--fc-primary)'
373- } }
374- >
375- { communityList . map ( community => (
376- < button
377- key = { community . name }
378- onClick = { ( ) => navigateToCommunity ( community . link ) }
379- className = 'block w-full px-4 py-2 text-left text-sm transition-colors hover:bg-[var(--bg-hover)]'
380- style = { {
381- color : 'var(--fc-primary)' ,
382- backgroundColor : 'var(--bg-secondary)'
383- } }
384- >
385- { community . name }
386- </ button >
387- ) ) }
388- </ div >
389- ) }
390- </ div >
391319 </ div >
392320 </ div >
393321 </ div >
@@ -400,6 +328,12 @@ const Header = () => {
400328 >
401329 Resources
402330 </ Link >
331+ < Link
332+ href = '/contributors'
333+ className = 'mx-2 font-medium text-gray-700 transition-colors hover:text-modern-purple'
334+ >
335+ Contributors
336+ </ Link >
403337 < Link
404338 href = '/ai'
405339 className = 'mx-2 font-medium text-gray-700 transition-colors hover:text-modern-purple'
@@ -572,6 +506,14 @@ const Header = () => {
572506 Resources
573507 </ Link >
574508
509+ < Link
510+ href = '/contributors'
511+ onClick = { ( ) => setIsOpen ( false ) }
512+ className = 'block px-3 py-2 text-base font-medium text-gray-700 hover:text-modern-purple'
513+ >
514+ Contributors
515+ </ Link >
516+
575517 < Link
576518 href = '/ai'
577519 onClick = { ( ) => setIsOpen ( false ) }
0 commit comments