diff --git a/components/SneakPeek.tsx b/components/SneakPeek.tsx
index 67ad6296d6fd..7edbce00ecec 100644
--- a/components/SneakPeek.tsx
+++ b/components/SneakPeek.tsx
@@ -130,45 +130,55 @@ export default function SneakPeek() {
>
);
- const renderGenerationCode = () => (
- <>
-
- {'//'} Generated TypeScript code
-
-
- export interface{' '}
- UserSignedUp {'{'}
-
-
- displayName: string;
-
-
- email: string;
-
- {'}'}
-
-
- export class{' '}
- UserSignupService {'{'}
-
-
- async{' '}
- processSignup(message:{' '}
- UserSignedUp): Promise
- {'<'}
- void
- {'>'} {'{'}
-
-
- {'//'} Your business logic here
-
-
- console{'.'}log{'('}{`\`Processing signup for \${message.displayName}\``}{')'}{';'}
-
- {'}'}
- {'}'}
- >
- );
+ const renderGenerationCode = () => {
+ const logStatement = String.raw`\`Processing signup for \${message.displayName}\``;
+
+ return (
+ <>
+
+ {'//'} Generated TypeScript code
+
+
+ export interface{' '}
+ UserSignedUp {'{'}
+
+
+ displayName: string;
+
+
+ email: string;
+
+ {'}'}
+
+
+ export class{' '}
+ UserSignupService {'{'}
+
+
+ async{' '}
+ processSignup(message:{' '}
+ UserSignedUp): Promise
+ {'<'}
+ void
+ {'>'} {'{'}
+
+
+ {'//'} Your business logic here
+
+
+ console
+ {'.'}
+ log
+ {'('}
+ {logStatement}
+ {')'}
+ {';'}
+
+ {'}'}
+ {'}'}
+ >
+ );
+ };
const renderDocumentationCode = () => (
@@ -212,7 +222,10 @@ export default function SneakPeek() {
email
- String{' '}email
+ String{' '}
+
+ email
+
Email of the user
diff --git a/components/navigation/MobileNavMenu.tsx b/components/navigation/MobileNavMenu.tsx
index 56544e4bce77..941fc614593a 100644
--- a/components/navigation/MobileNavMenu.tsx
+++ b/components/navigation/MobileNavMenu.tsx
@@ -54,6 +54,15 @@ export default function MobileNavMenu({
}
const { langMap } = i18nextConfig;
+ const sectionToggleButtonClass =
+ 'inline-flex items-center transition-transform duration-200 hover:text-secondary-600 dark:hover:text-secondary-400';
+ const otherLinkClass =
+ 'mb-3 block rounded-lg px-3 py-2 text-base font-medium leading-6 text-gray-700 dark:text-gray-300';
+ const otherLinkHoverClass =
+ 'transition-all duration-150 ease-in-out hover:bg-gray-100/60 dark:hover:bg-gray-700/40 hover:translate-x-1';
+ const languageButtonClass =
+ 'mb-3 ml-2 block w-full rounded-lg px-3 py-2 text-start text-sm font-medium leading-6 transition-all duration-150';
+ const languageButtonHoverClass = 'ease-in-out hover:bg-gray-100/60 dark:hover:bg-gray-700/40 hover:translate-x-1';
return (
@@ -104,9 +113,7 @@ export default function MobileNavMenu({
aria-expanded={open === 'learning'}
aria-label='Toggle Docs menu'
onClick={() => showMenu('learning')}
- className={`inline-flex items-center transition-transform duration-200 hover:text-secondary-600 dark:hover:text-secondary-400 ${
- open === 'learning' ? 'rotate-180' : ''
- }`}
+ className={`${sectionToggleButtonClass} ${open === 'learning' ? 'rotate-180' : ''}`}
>
@@ -130,9 +137,7 @@ export default function MobileNavMenu({
aria-expanded={open === 'tooling'}
aria-label='Toggle Tools menu'
onClick={() => showMenu('tooling')}
- className={`inline-flex items-center transition-transform duration-200 hover:text-secondary-600 dark:hover:text-secondary-400 ${
- open === 'tooling' ? 'rotate-180' : ''
- }`}
+ className={`${sectionToggleButtonClass} ${open === 'tooling' ? 'rotate-180' : ''}`}
>
@@ -156,9 +161,7 @@ export default function MobileNavMenu({
aria-expanded={open === 'community'}
aria-label='Toggle Community menu'
onClick={() => showMenu('community')}
- className={`inline-flex items-center transition-transform duration-200 hover:text-secondary-600 dark:hover:text-secondary-400 ${
- open === 'community' ? 'rotate-180' : ''
- }`}
+ className={`${sectionToggleButtonClass} ${open === 'community' ? 'rotate-180' : ''}`}
>
@@ -179,22 +182,20 @@ export default function MobileNavMenu({
aria-expanded={open === 'others'}
aria-label='Toggle Others menu'
onClick={() => showMenu('others')}
- className={`inline-flex items-center transition-transform duration-200 hover:text-secondary-600 dark:hover:text-secondary-400 ${
- open === 'others' ? 'rotate-180' : ''
- }`}
+ className={`${sectionToggleButtonClass} ${open === 'others' ? 'rotate-180' : ''}`}
>
{open === 'others' && (
- {otherItems.map((item: MenuItem, index: number) => (
+ {otherItems.map((item: MenuItem) => (
{item.text}
@@ -217,9 +218,7 @@ export default function MobileNavMenu({
aria-expanded={open === 'language'}
aria-label='Toggle Language menu'
onClick={() => showMenu('language')}
- className={`inline-flex items-center transition-transform duration-200 hover:text-secondary-600 dark:hover:text-secondary-400 ${
- open === 'language' ? 'rotate-180' : ''
- }`}
+ className={`${sectionToggleButtonClass} ${open === 'language' ? 'rotate-180' : ''}`}
>
@@ -230,7 +229,7 @@ export default function MobileNavMenu({