app/admin/dashboard.tsx | 7 ++++-- app/layout.tsx | 7 +++++- app/not-found.tsx | 4 +++- app/page.tsx | 6 +++-- app/s/[subdomain]/page.tsx | 4 +++- app/subdomain-form.tsx | 11 ++++++---- components/ui/dialog.tsx | 4 +++- components/ui/emoji-picker.tsx | 4 +++- i18n/request.ts | 11 ++++++++++ messages/en.json | 26 ++++++++++++++++++++++ messages/ja.json | 26 ++++++++++++++++++++++ messages/translation-todo.json | 50 ++++++++++++++++++++++++++++++++++++++++++ next.config.ts | 5 ++++- package.json | 3 ++- 14 files changed, 153 insertions(+), 15 deletions(-) diff --git a/app/admin/dashboard.tsx b/app/admin/dashboard.tsx index 047b49f..2692c97 100644 --- a/app/admin/dashboard.tsx +++ b/app/admin/dashboard.tsx @@ -1,4 +1,5 @@ 'use client'; +import { useTranslations } from 'next-intl'; import { useActionState } from 'react'; import { Button } from '@/components/ui/button'; @@ -20,11 +21,12 @@ type DeleteState = { }; function DashboardHeader() { + const t = useTranslations(); // TODO: You can add authentication here with your preferred auth provider return (
No subdomains have been created yet.
+{t('dashboard.no_subdomains_have_been_created_yet')}
- This subdomain hasn't been created yet. + {t('not_found.this_subdomain_hasnt_been_created_yet')}
- Create your own subdomain with a custom emoji + {t('page.create_your_own_subdomain_with_a_custom')}
- This is your custom subdomain page + {t('page.this_is_your_custom_subdomain_page')}
- Select an emoji to represent your subdomain + {t('subdomain_form.select_an_emoji_to_represent_your_subdom')}