需要ルート
🎯 概要
各需要ルートは次のパターンに従います:URL → バリデーター → ハンドラー → 状態更新
🔐 認証ルート
ログイン
🌐 URL: /login
📄 現在のページ: login
🔧 ハンドラー: handleAuthLoginRoute
- クエリパラメータから意図されたURLを取得
- ログインフォーム状態を設定
- ログイン後のリダイレクトを処理
✅ バリデーター: isUserNotLoggedIn
- 既に認証済みのユーザーをログインから遠ざけてリダイレクト
ログアウト
🌐 URL: /logout
📄 現在のページ: logout
🔧 ハンドラー: handleAuthLogoutRoute
- ユーザーセッションと認証データをクリア
- 認証トークンを無効化
- ログインページにリダイレクト
✅ バリデーター: なし
サインアップ
🌐 URL: /sign-up
📄 現在のページ: sign_up
🔧 ハンドラー: handleAuthSignUpRoute
- ユーザー登録フォームを提供
- 新しいアカウント作成を設定
- 初期ユーザーデータ収集を処理
✅ バリデーター: scrollTo
(上にスクロール)
サインアップウィザード
🌐 URL: /sign-up-wizard/:page
📄 現在のページ: sign_up_wizard
🔧 ハンドラー: handleSignUpWizardRoute
- マルチステップオンボーディングプロセス
- プロファイル設定用のカテゴリと属性を読み込み
- ウィザードページナビゲーションと完了を処理
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新isEmailNotVerifiedRedirect
- メール未認証の場合リダイレクトclearFilters
- 既存のフィルターをリセット
メール認証成功
🌐 URL: /verify-email-success/:verifyEmailToken
📄 現在のページ: verify_email_success
🔧 ハンドラー: handleVerifyEmailSuccessRoute
- メール認証トークンを処理
- ユーザーメールアドレスを確認
- メール認証ステータスを更新
✅ バリデーター: なし(パブリックルート)
🏠 ダッシュボードルート
ホームダッシュボード
🌐 URL: /home
📄 現在のページ: home
🔧 ハンドラー: handleHomeRoute
- ダッシュボード概要データを読み込み
- 最近のポジション、カテゴリ、属性を取得
- 機会を含む求職者ダッシュボードを表示
✅ バリデーター: isUserNotLoggedIn
- 認証済みユーザーのみがダッシュボードにアクセスできることを確認
マイページ
🌐 URL: /mypage
📄 現在のページ: my_page
🔧 ハンドラー: handleMyPageRoute
- 求職者の個人ダッシュボード
- ユーザー固有のコンテンツと推奨事項を表示
- パーソナライズされた求人マッチを表示
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新isEmailNotVerifiedRedirect
- メール未認証の場合リダイレクトisSignUpWizardNotCompletedRedirect
- プロファイル未完了の場合リダイレクト
💼 求人/ポジションルート
ポジションリスト
🌐 URL: /positions
📄 現在のページ: positions_list
🔧 ハンドラー: handleProductsListRoute
- すべての求人ポジションのページネーション付きリストを取得
- 利用可能な機会を表示
- ポジションページネーションデータを読み込み
✅ バリデーター: scrollTo
(上にスクロール)
ポジションフィルター
🌐 URL: /positions/filter
📄 現在のページ: positions_filter
🔧 ハンドラー: handleProductsFilterRoute
- ポジションの高度なフィルタリングインターフェース
- カテゴリ、スキル、場所によるフィルタリングをサポート
- ページネーション付きフィルター結果を読み込み
✅ バリデーター: scrollTo
(上にスクロール)
ポジション詳細
🌐 URL: /positions/:productId
📄 現在のページ: position_show
🔧 ハンドラー: handleProductsDetailsRoute
- 特定の求人ポジションの詳細ビューを表示
- 求人要件、説明、会社情報を表示
- 応募送信を有効化
✅ バリデーター: scrollTo
(上にスクロール)
🏢 組織ルート
組織詳細
🌐 URL: /organization/:orgId
📄 現在のページ: organization_show
🔧 ハンドラー: handleSingleOrganizationRoute
- 詳細な組織プロファイルを表示
- 会社情報と企業文化を表示
- 組織の利用可能なポジションをリスト
✅ バリデーター: scrollTo
(上にスクロール)
組織ポジション
🌐 URL: /organization/:orgId/positions
📄 現在のページ: organization_products_list
🔧 ハンドラー: handleOrganizationPositionsRoute
- 特定の組織からすべてのポジションをリスト
- 会社によるポジションフィルタリング
- 会社固有の求人機会を表示
✅ バリデーター: scrollTo
(上にスクロール)
📋 応募ルート
応募リスト
🌐 URL: /job-applications
📄 現在のページ: orders
🔧 ハンドラー: handleOrderListRoute
- ユーザーの求人応募履歴を表示
- 応募ステータスと進捗を追跡
- 応募タイムラインと更新を表示
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新isEmailNotVerifiedRedirect
- メール未認証の場合リダイレクトisSignUpWizardNotCompletedRedirect
- プロファイル未完了の場合リダイレクト
👤 プロファイルルート
ユーザープロファイル
🌐 URL: /profile
📄 現在のページ: user_update
🔧 ハンドラー: handleUserUpdateRoute
- ユーザープロファイル編集インターフェース
- 個人情報とスキルを更新
- プロフェッショナルプロファイルデータを管理
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
💬 メッセージングルート
トピックリスト
🌐 URL: /messages/topics
📄 現在のページ: topics_list
🔧 ハンドラー: handleTopicsRoute
- すべての会話トピック/スレッドをリスト
- メッセージング概要を表示
- 未読メッセージ数を表示
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
トピックメッセージ
🌐 URL: /messages/topics/:topicId
📄 現在のページ: messages_list
🔧 ハンドラー: handleTopicMessagesRoute
- 特定のトピック/スレッド内のメッセージを表示
- リアルタイムメッセージングを有効化
- 会話履歴を表示
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
⚙️ 設定ルート
メイン設定
🌐 URL: /settings
📄 現在のページ: user_settings
🔧 ハンドラー: handleSettingsRoute
- ユーザーアカウント設定と環境設定
- プロファイル管理インターフェース
- プライバシーと通知制御
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
メール変更
🌐 URL: /settings/change-email
📄 現在のページ: change_email_settings
🔧 ハンドラー: handleSettingsChangeEmailRoute
- メールアドレス更新フォーム
- メール認証プロセスを開始
- メール変更ワークフローを処理
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
パスワード変更
🌐 URL: /settings/change-password
📄 現在のページ: change_password_settings
🔧 ハンドラー: handleSettingsChangePasswordRoute
- セキュアなパスワード更新インターフェース
- 現在のパスワードを検証
- パスワードセキュリティ要件を実装
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
アカウント非アクティブ化
🌐 URL: /settings/deactivate-account
📄 現在のページ: deactivate_account
🔧 ハンドラー: handleSettingsDeactivateAccountRoute
- アカウント非アクティブ化フォーム
- アカウント閉鎖オプションを提供
- データ保持設定を処理
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
アカウント非アクティブ化成功
🌐 URL: /settings/deactivate-account-success
📄 現在のページ: deactivate_account_success
🔧 ハンドラー: handleSettingsDeactivateAccountSuccessRoute
- アカウント非アクティブ化の確認ページ
- 最終的なアカウント閉鎖確認を提供
- 非アクティブ化後の次のステップを表示
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
メール変更確認成功
🌐 URL: /settings/verify-change-email-success/:verifyChangeEmailToken
📄 現在のページ: verify_change_email_success
🔧 ハンドラー: handleSettingsVerifyChangeEmailSuccessRoute
- メールアドレス変更を確認
- メール認証トークンを処理
- ユーザーメール認証ステータスを更新
✅ バリデーター:
isUserLoggedIn
- 認証を検証updateLoggedInUser
- 現在のユーザーデータを更新
🔑 パスワードリセットルート
パスワードリセット要求
🌐 URL: /reset-password-request
📄 現在のページ: reset_password_request
🔧 ハンドラー: handleResetPasswordRequestRoute
- パスワードリセット要求フォーム
- パスワード回復メールを開始
- ユーザーアカウント存在を検証
✅ バリデーター: なし(パブリックルート)
新しいパスワードの送信
🌐 URL: /reset-password-submit/:resetPasswordToken
📄 現在のページ: reset_password_submit
🔧 ハンドラー: handleResetPasswordSubmitRoute
- 新しいパスワード送信フォーム
- URLからリセットトークンを検証
- パスワードリセット完了を処理
✅ バリデーター: scrollTo
(上にスクロール)
パスワードリセット成功
🌐 URL: /reset-password-success
📄 現在のページ: reset_password_success
🔧 ハンドラー: handleResetPasswordSuccessRoute
- パスワードリセット確認ページ
- ログインリダイレクトオプションを提供
- リセットセッションデータをクリア
✅ バリデーター: scrollTo
(上にスクロール)
🔧 バリデーター関数リファレンス
バリデーター | 目的 |
---|---|
isUserLoggedIn | ✅ 認証を検証、必要に応じてログインにリダイレクト |
isUserNotLoggedIn | ↪️ 認証済みユーザーをログイン/サインアップページからリダイレクト |
updateLoggedInUser | 🔄 APIから現在のユーザーデータを更新 |
isEmailNotVerifiedRedirect | 📧 メール未認証ユーザーをリダイレクト |
isSignUpWizardNotCompletedRedirect | 🧙♂️ プロファイル未完了ユーザーをリダイレクト |
clearFilters | 🧹 検索とフィルター状態をリセット |
scrollTo | ⬆️ ルートナビゲーション時にページを上にスクロール |
🎨 ルートフローパターン
🌐 URLリクエスト → ✅ バリデーター → 🔧 ハンドラー → 📊 状態更新 → 🎯 ページレンダー
需要ルートは、追加のプロファイル完了チェックとメール認証要件を含む求職者向けに最適化されています。