import type { TranslationStrings } from '../types'; const admin: TranslationStrings = { 'admin.notifications.title': '通知', 'admin.notifications.hint': '通知チャネルを1つ選択してください。同時に有効にできるのは1つだけです。', 'admin.notifications.none': '無効', 'admin.notifications.email': 'メール(SMTP)', 'admin.notifications.webhook': 'Webhook', 'admin.notifications.ntfy': 'Ntfy', 'admin.ntfy.hint': 'ユーザーが独自のntfyトピックを設定できるようにします。下で既定サーバーを設定してください。', 'admin.notifications.save': '通知設定を保存', 'admin.notifications.saved': '通知設定を保存しました', 'admin.notifications.testWebhook': 'Webhookテスト送信', 'admin.notifications.testWebhookSuccess': 'テストWebhookを送信しました', 'admin.notifications.testWebhookFailed': 'テストWebhookに失敗しました', 'admin.notifications.testNtfy': 'ntfyテスト送信', 'admin.notifications.testNtfySuccess': 'テストntfyを送信しました', 'admin.notifications.testNtfyFailed': 'テストntfyに失敗しました', 'admin.notifications.emailPanel.title': 'メール(SMTP)', 'admin.notifications.webhookPanel.title': 'Webhook', 'admin.notifications.inappPanel.title': 'アプリ内', 'admin.notifications.inappPanel.hint': 'アプリ内通知は常に有効で、全体では無効にできません。', 'admin.notifications.adminWebhookPanel.title': '管理者Webhook', 'admin.notifications.adminWebhookPanel.hint': '管理者通知専用のWebhookです(例:バージョン通知)。常に送信されます。', 'admin.notifications.adminWebhookPanel.saved': '管理者Webhook URLを保存しました', 'admin.notifications.adminWebhookPanel.testSuccess': 'テストWebhookを送信しました', 'admin.notifications.adminWebhookPanel.testFailed': 'テストWebhookに失敗しました', 'admin.notifications.adminWebhookPanel.alwaysOnHint': 'URLが設定されていると常に送信されます', 'admin.notifications.adminNtfyPanel.title': '管理者Ntfy', 'admin.notifications.adminNtfyPanel.hint': '管理者通知専用のntfyトピックです。', 'admin.notifications.adminNtfyPanel.serverLabel': 'Ntfy サーバーURL', 'admin.notifications.adminNtfyPanel.serverHint': 'ユーザー通知の既定サーバーとしても使用されます。', 'admin.notifications.adminNtfyPanel.serverPlaceholder': 'https://ntfy.sh', 'admin.notifications.adminNtfyPanel.topicLabel': '管理者トピック', 'admin.notifications.adminNtfyPanel.topicPlaceholder': 'trek-admin-alerts', 'admin.notifications.adminNtfyPanel.tokenLabel': 'アクセストークン(任意)', 'admin.notifications.adminNtfyPanel.tokenCleared': '管理者アクセストークンを削除しました', 'admin.notifications.adminNtfyPanel.saved': '管理者ntfy設定を保存しました', 'admin.notifications.adminNtfyPanel.test': 'ntfyテスト送信', 'admin.notifications.adminNtfyPanel.testSuccess': 'テストntfyを送信しました', 'admin.notifications.adminNtfyPanel.testFailed': 'テストntfyに失敗しました', 'admin.notifications.adminNtfyPanel.alwaysOnHint': 'トピック設定時は常に送信されます', 'admin.notifications.adminNotificationsHint': '管理者専用通知の配信先を設定します。', 'admin.notifications.tripReminders.title': '旅行リマインダー', 'admin.notifications.tripReminders.hint': '旅行開始前に通知を送信します(旅行側の設定が必要)。', 'admin.notifications.tripReminders.enabled': '旅行リマインダー有効', 'admin.notifications.tripReminders.disabled': '旅行リマインダー無効', 'admin.smtp.title': 'メール・通知', 'admin.smtp.hint': 'メール通知送信用のSMTP設定。', 'admin.smtp.testButton': 'テストメール送信', 'admin.webhook.hint': 'ユーザーが独自のWebhook URLを設定できるようにします。', 'admin.smtp.testSuccess': 'テストメールを送信しました', 'admin.smtp.testFailed': 'テストメールに失敗しました', 'admin.title': '管理', 'admin.subtitle': 'ユーザー管理とシステム設定', 'admin.tabs.users': 'ユーザー', 'admin.tabs.categories': 'カテゴリ', 'admin.tabs.backup': 'バックアップ', 'admin.tabs.notifications': '通知', 'admin.tabs.audit': '監査', 'admin.stats.users': 'ユーザー', 'admin.stats.trips': '旅行', 'admin.stats.places': '場所', 'admin.stats.photos': '写真', 'admin.stats.files': 'ファイル', 'admin.table.user': 'ユーザー', 'admin.table.email': 'メール', 'admin.table.role': '権限', 'admin.table.created': '作成日', 'admin.table.lastLogin': '最終ログイン', 'admin.table.actions': '操作', 'admin.you': '(あなた)', 'admin.editUser': 'ユーザーを編集', 'admin.newPassword': '新しいパスワード', 'admin.newPasswordHint': '空欄の場合は現在のパスワードを維持', 'admin.deleteUser': 'ユーザー「{name}」を削除しますか?すべての旅行が完全に削除されます。', 'admin.deleteUserTitle': 'ユーザー削除', 'admin.newPasswordPlaceholder': '新しいパスワードを入力…', 'admin.toast.loadError': '管理データの読み込みに失敗しました', 'admin.toast.userUpdated': 'ユーザーを更新しました', 'admin.toast.updateError': '更新に失敗しました', 'admin.toast.userDeleted': 'ユーザーを削除しました', 'admin.toast.deleteError': '削除に失敗しました', 'admin.toast.cannotDeleteSelf': '自分のアカウントは削除できません', 'admin.toast.userCreated': 'ユーザーを作成しました', 'admin.toast.createError': 'ユーザー作成に失敗しました', 'admin.toast.fieldsRequired': 'ユーザー名、メール、パスワードは必須です', 'admin.createUser': 'ユーザーを作成', 'admin.invite.title': '招待リンク', 'admin.invite.subtitle': '使い切り登録リンクを作成', 'admin.invite.create': 'リンク作成', 'admin.invite.createAndCopy': '作成してコピー', 'admin.invite.empty': '招待リンクがまだありません', 'admin.invite.maxUses': '最大使用回数', 'admin.invite.expiry': '有効期限', 'admin.invite.uses': '使用済み', 'admin.invite.expiresAt': '期限', 'admin.invite.createdBy': '作成者', 'admin.invite.active': '有効', 'admin.invite.expired': '期限切れ', 'admin.invite.usedUp': '使用済み', 'admin.invite.copied': '招待リンクをコピーしました', 'admin.invite.copyLink': 'リンクをコピー', 'admin.invite.deleted': '招待リンクを削除しました', 'admin.invite.createError': '招待リンクの作成に失敗しました', 'admin.invite.deleteError': '招待リンクの削除に失敗しました', 'admin.tabs.settings': '設定', 'admin.allowRegistration': '登録を許可', 'admin.allowRegistrationHint': '新規ユーザーの自己登録を許可します', 'admin.authMethods': '認証方法', 'admin.passwordLogin': 'パスワードログイン', 'admin.passwordLoginHint': 'メールとパスワードでのログインを許可', 'admin.passwordRegistration': 'パスワード登録', 'admin.passwordRegistrationHint': 'メールとパスワードでの新規登録を許可', 'admin.oidcLogin': 'SSOログイン', 'admin.oidcLoginHint': 'SSOでのログインを許可', 'admin.oidcRegistration': 'SSO自動登録', 'admin.oidcRegistrationHint': '新しいSSOユーザーを自動作成', 'admin.envOverrideHint': 'パスワードログイン設定は OIDC_ONLY 環境変数で制御されています。', 'admin.lockoutWarning': '少なくとも1つのログイン方法を有効にしてください', 'admin.requireMfa': '二要素認証(2FA)を必須にする', 'admin.requireMfaHint': '2FA未設定のユーザーは、利用前に設定が必要です。', 'admin.apiKeys': 'APIキー', 'admin.apiKeysHint': '任意。写真や天気などの拡張データを有効化します。', 'admin.mapsKey': 'Google Maps APIキー', 'admin.mapsKeyHint': '場所検索に必要。console.cloud.google.com で取得', 'admin.mapsKeyHintLong': 'APIキーなしではOpenStreetMapを使用します。Google APIキーがあれば写真、評価、営業時間も表示できます。', 'admin.recommended': '推奨', 'admin.weatherKey': 'OpenWeatherMap APIキー', 'admin.weatherKeyHint': '天気データ用。openweathermap.org で無料', 'admin.validateKey': 'テスト', 'admin.keyValid': '接続済み', 'admin.keyInvalid': '無効', 'admin.keySaved': 'APIキーを保存しました', 'admin.oidcTitle': 'シングルサインオン(OIDC)', 'admin.oidcSubtitle': 'Google、Apple、Authentik、Keycloak などでログインを許可します。', 'admin.oidcDisplayName': '表示名', 'admin.oidcIssuer': 'Issuer URL', 'admin.oidcIssuerHint': 'OpenID ConnectのIssuer URL(例:https://accounts.google.com)', 'admin.oidcSaved': 'OIDC設定を保存しました', 'admin.oidcOnlyMode': 'パスワード認証を無効化', 'admin.oidcOnlyModeHint': '有効にするとSSOのみ使用可能になり、パスワードログインと登録は無効になります。', 'admin.fileTypes': '許可するファイル形式', 'admin.fileTypesHint': 'ユーザーがアップロードできるファイル形式を設定します。', 'admin.fileTypesFormat': '拡張子をカンマ区切り(例:jpg,png,pdf,doc)。すべて許可する場合は *。', 'admin.fileTypesSaved': 'ファイル形式の設定を保存しました', 'admin.placesPhotos.title': '場所の写真', 'admin.placesPhotos.subtitle': 'Google Places APIから写真を取得します。APIクォータ節約のため無効にできます。Wikimediaの写真には影響しません。', 'admin.placesAutocomplete.title': '場所のオートコンプリート', 'admin.placesAutocomplete.subtitle': '検索候補にGoogle Places APIを使用します。APIクォータ節約のため無効にできます。', 'admin.placesDetails.title': '場所の詳細', 'admin.placesDetails.subtitle': 'Google Places APIから営業時間、評価、ウェブサイトなどの詳細情報を取得します。APIクォータ節約のため無効にできます。', 'admin.bagTracking.title': 'バッグ管理', 'admin.bagTracking.subtitle': '持ち物の重量とバッグ割り当てを有効化', 'admin.collab.chat.title': 'チャット', 'admin.collab.chat.subtitle': '旅行の共同作業用リアルタイムメッセージ', 'admin.collab.notes.title': 'ノート', 'admin.collab.notes.subtitle': '共有ノートとドキュメント', 'admin.collab.polls.title': '投票', 'admin.collab.polls.subtitle': 'グループ投票・アンケート', 'admin.collab.whatsnext.title': '次にすること', 'admin.collab.whatsnext.subtitle': 'アクティビティ提案と次のステップ', 'admin.tabs.config': 'カスタマイズ', 'admin.tabs.defaults': 'ユーザーのデフォルト', 'admin.defaultSettings.title': '既定のユーザー設定', 'admin.defaultSettings.description': 'インスタンス全体の既定値を設定します。設定を変更していないユーザーにはこれらの値が適用されます。各ユーザーの設定変更は常に優先されます。', 'admin.defaultSettings.saved': '既定値を保存しました', 'admin.defaultSettings.reset': '組み込みの既定値に戻す', 'admin.defaultSettings.resetToBuiltIn': 'リセット', 'admin.tabs.templates': '持ち物テンプレート', 'admin.packingTemplates.title': '持ち物テンプレート', 'admin.packingTemplates.subtitle': '旅行で使い回せる持ち物リストを作成', 'admin.packingTemplates.create': '新規テンプレート', 'admin.packingTemplates.namePlaceholder': 'テンプレート名(例:ビーチ旅行)', 'admin.packingTemplates.empty': 'テンプレートはまだありません', 'admin.packingTemplates.items': 'アイテム', 'admin.packingTemplates.categories': 'カテゴリ', 'admin.packingTemplates.itemName': 'アイテム名', 'admin.packingTemplates.itemCategory': 'カテゴリ', 'admin.packingTemplates.categoryName': 'カテゴリ名(例:衣類)', 'admin.packingTemplates.addCategory': 'カテゴリを追加', 'admin.packingTemplates.created': 'テンプレートを作成しました', 'admin.packingTemplates.deleted': 'テンプレートを削除しました', 'admin.packingTemplates.loadError': 'テンプレートの読み込みに失敗しました', 'admin.packingTemplates.createError': 'テンプレートの作成に失敗しました', 'admin.packingTemplates.deleteError': 'テンプレートの削除に失敗しました', 'admin.packingTemplates.saveError': '保存に失敗しました', 'admin.tabs.addons': 'アドオン', 'admin.addons.title': 'アドオン', 'admin.addons.subtitle': '機能を有効/無効にしてTREKをカスタマイズします。', 'admin.addons.catalog.packing.name': 'リスト', 'admin.addons.catalog.packing.description': '旅行用の持ち物リストとToDo', 'admin.addons.catalog.budget.name': '予算', 'admin.addons.catalog.budget.description': '支出の管理と予算計画', 'admin.addons.catalog.documents.name': 'ドキュメント', 'admin.addons.catalog.documents.description': '旅行書類の保存・管理', 'admin.addons.catalog.vacay.name': 'Vacay', 'admin.addons.catalog.vacay.description': 'カレンダー表示の個人休暇プランナー', 'admin.addons.catalog.atlas.name': 'Atlas', 'admin.addons.catalog.atlas.description': '訪問国と旅行統計の世界地図', 'admin.addons.catalog.collab.name': 'Collab', 'admin.addons.catalog.collab.description': 'リアルタイムのメモ、投票、チャット', 'admin.addons.catalog.memories.name': '写真(Immich)', 'admin.addons.catalog.memories.description': 'Immichで旅行写真を共有', 'admin.addons.catalog.mcp.name': 'MCP', 'admin.addons.catalog.mcp.description': 'AI連携のためのModel Context Protocol', 'admin.addons.subtitleBefore': '機能を有効/無効にして ', 'admin.addons.subtitleAfter': ' をカスタマイズします。', 'admin.addons.enabled': '有効', 'admin.addons.disabled': '無効', 'admin.addons.type.trip': '旅行', 'admin.addons.type.global': '全体', 'admin.addons.type.integration': '連携', 'admin.addons.tripHint': '各旅行内のタブとして利用可能', 'admin.addons.globalHint': 'メインナビの独立セクションとして利用可能', 'admin.addons.integrationHint': '専用ページのないバックエンド/API連携', 'admin.addons.toast.updated': 'アドオンを更新しました', 'admin.addons.toast.error': 'アドオンの更新に失敗しました', 'admin.addons.noAddons': '利用可能なアドオンはありません', 'admin.weather.title': '天気データ', 'admin.weather.badge': '2026年3月24日以降', 'admin.weather.description': 'TREKは天気データにOpen‑Meteoを使用しています。無料でオープンソース、APIキーは不要です。', 'admin.weather.forecast': '16日間予報', 'admin.weather.forecastDesc': '以前は5日(OpenWeatherMap)', 'admin.weather.climate': '過去の気候データ', 'admin.weather.climateDesc': '16日以降は過去85年の平均値', 'admin.weather.requests': '1日10,000リクエスト', 'admin.weather.requestsDesc': '無料、APIキー不要', 'admin.weather.locationHint': '各日の座標付き最初の場所を基準にします。場所が未割り当ての場合は、場所一覧の任意の場所を参照します。', 'admin.tabs.mcpTokens': 'MCPトークン', 'admin.mcpTokens.title': 'MCPトークン', 'admin.mcpTokens.subtitle': 'すべてのユーザーのAPIトークンを管理', 'admin.mcpTokens.sectionTitle': 'API トークン', 'admin.mcpTokens.owner': '所有者', 'admin.mcpTokens.tokenName': 'トークン名', 'admin.mcpTokens.created': '作成日', 'admin.mcpTokens.lastUsed': '最終使用', 'admin.mcpTokens.never': '未使用', 'admin.mcpTokens.empty': 'MCPトークンはまだ作成されていません', 'admin.mcpTokens.deleteTitle': 'トークンを削除', 'admin.mcpTokens.deleteMessage': 'このトークンは即座に失効します。ユーザーはこのトークン経由のMCPアクセスを失います。', 'admin.mcpTokens.deleteSuccess': 'トークンを削除しました', 'admin.mcpTokens.deleteError': 'トークンの削除に失敗しました', 'admin.mcpTokens.loadError': 'トークンの読み込みに失敗しました', 'admin.oauthSessions.sectionTitle': 'OAuthセッション', 'admin.oauthSessions.clientName': 'クライアント', 'admin.oauthSessions.owner': '所有者', 'admin.oauthSessions.scopes': 'スコープ', 'admin.oauthSessions.created': '作成日時', 'admin.oauthSessions.empty': '有効なOAuthセッションはありません', 'admin.oauthSessions.revokeTitle': 'セッションを無効化', 'admin.oauthSessions.revokeMessage': 'このOAuthセッションは即時無効化され、クライアントはMCPへのアクセスを失います。', 'admin.oauthSessions.revokeSuccess': 'セッションを無効化しました', 'admin.oauthSessions.revokeError': 'セッションの無効化に失敗しました', 'admin.oauthSessions.loadError': 'OAuthセッションの読み込みに失敗しました', 'admin.tabs.github': 'GitHub', 'admin.audit.subtitle': 'セキュリティおよび管理イベント(バックアップ、ユーザー、MFA、設定)。', 'admin.audit.empty': '監査ログはまだありません。', 'admin.audit.refresh': '更新', 'admin.audit.loadMore': 'さらに読み込む', 'admin.audit.showing': '{count}件表示 · 全{total}件', 'admin.audit.col.time': '時刻', 'admin.audit.col.user': 'ユーザー', 'admin.audit.col.action': '操作', 'admin.audit.col.resource': '対象', 'admin.audit.col.ip': 'IP', 'admin.audit.col.details': '詳細', 'admin.github.title': 'リリース履歴', 'admin.github.subtitle': '{repo} の最新アップデート', 'admin.github.latest': '最新', 'admin.github.prerelease': 'プレリリース', 'admin.github.showDetails': '詳細を表示', 'admin.github.hideDetails': '詳細を非表示', 'admin.github.loadMore': 'さらに読み込む', 'admin.github.loading': '読み込み中...', 'admin.github.error': 'リリースの読み込みに失敗しました', 'admin.github.by': '作成者', 'admin.github.support': 'TREKの開発を支援', 'admin.update.available': '更新があります', 'admin.update.text': 'TREK {version} が利用可能です。現在は {current} を使用しています。', 'admin.update.button': 'GitHubで見る', 'admin.update.install': '更新をインストール', 'admin.update.confirmTitle': '更新をインストールしますか?', 'admin.update.confirmText': 'TREKを {current} から {version} に更新します。更新後、サーバーは自動的に再起動します。', 'admin.update.dataInfo': 'すべてのデータ(旅行、ユーザー、APIキー、アップロード、Vacay、Atlas、予算)は保持されます。', 'admin.update.warning': '再起動中、アプリは短時間利用できません。', 'admin.update.confirm': '今すぐ更新', 'admin.update.installing': '更新中…', 'admin.update.success': '更新が完了しました!サーバーを再起動しています…', 'admin.update.failed': '更新に失敗しました', 'admin.update.backupHint': '更新前にバックアップを作成することをおすすめします。', 'admin.update.backupLink': 'バックアップへ', 'admin.update.howTo': '更新方法', 'admin.update.dockerText': 'TREKはDockerで実行されています。{version} に更新するには、サーバーで次のコマンドを実行してください:', 'admin.update.reloadHint': '数秒後にページを再読み込みしてください。', 'admin.tabs.permissions': '権限', 'admin.addons.catalog.journey.name': '日記', 'admin.addons.catalog.journey.description': 'チェックイン、写真、日ごとのストーリーで旅を記録', 'admin.passkey.title': 'パスキーログイン', 'admin.passkey.cardHint': 'ユーザーがパスキー(WebAuthn)でサインインできるようにします。既定では無効です。', 'admin.passkey.login': 'パスキーログインを有効化', 'admin.passkey.loginHint': '「パスキーでサインイン」オプションを表示し、ユーザーが設定でパスキーを登録できるようにします。', 'admin.passkey.notConfigured': 'このデプロイにはまだ有効な WebAuthn ドメインがありません。下の APP_URL または Relying Party ID を設定してください。それまでパスキーは表示されません。', 'admin.passkey.rpId': 'Relying Party ID(ドメイン)', 'admin.passkey.rpIdHint': 'パスキーが紐づくドメイン名のみ(例:trek.example.org)。空欄の場合は APP_URL から導出されます。後で変更すると既存のパスキーは無効になります。', 'admin.passkey.origins': '許可するオリジン', 'admin.passkey.originsHint': 'カンマ区切りの完全なオリジン(例:https://trek.example.org)。空欄の場合は APP_URL を使用します。', 'admin.passkey.reset': 'パスキーをリセット', 'admin.passkey.resetHint': 'このユーザーのパスキーをすべて削除します(例:デバイスを紛失した場合)。パスワードでのサインインは引き続き可能です。', 'admin.passkey.resetConfirm': '{name} のパスキーをすべて削除しますか?', 'admin.passkey.resetDone': '{count} 件のパスキーを削除しました', 'admin.defaultSettings.mapProvider': '地図エンジン', 'admin.defaultSettings.mapProviderHint': 'このインスタンスの全員に適用される既定の地図です。各ユーザーは自分の設定でこれを上書きできます。', 'admin.defaultSettings.providerLeaflet': '標準(無料)', 'admin.defaultSettings.providerMapbox': 'Mapbox(3D)', 'admin.defaultSettings.mapboxToken': '共有 Mapbox トークン', 'admin.defaultSettings.mapboxTokenHint': '自分のトークンを入力していないすべてのユーザーに使用されます。これにより、キーを個別に共有しなくてもインスタンス全体で Mapbox を利用できます。暗号化して保存されます。', 'admin.defaultSettings.mapboxStyle': '地図スタイル', 'admin.defaultSettings.mapboxStylePlaceholder': 'スタイルを選択…', 'admin.defaultSettings.mapbox3d': '3D の建物と地形', 'admin.defaultSettings.mapboxQuality': '高品質モード', }; export default admin;