メインコンテンツまでスキップ

Geekle サプライアプリ

これはGeekleパッケージのサプライアプリです。組織がジョブや応募を管理するために使用されます。

メイン

main.tsxはアプリが開始される場所です。GeekleSupplyAppTemplateを新たにインスタンス化し、そのオプションと依存関係を設定します。その後、Reactアプリを初期化してレンダリングします。

依存関係

依存関係は、サプライアプリに必要なサービスやAPIです。

  • authApi: 認証用の認証API
  • catalogApi: ジョブのためのカタログAPIサービス
  • chatApi: 組織とユーザー間のメッセージングのためのチャットAPI
  • chatSocketApi: チャット用のWebソケット
  • demandSiteOrganizationUrl: デプロイサイトの組織APIのURL
  • demandSiteProductUrl: デプロイサイトの製品APIのURL
  • fileUploader: 画像をアップロードするためのGoogle Cloud Bucket
  • orderApi: ジョブ応募のための注文APIサービス
  • organizationApi: 組織APIサービス
  • paymentApi: サプライ組織の支払いサービス
  • sessionService: セッション管理を処理するサービス
  • userApi: ユーザーAPIサービス

オプション

ブロックページ

blockPagesオプションは主要なオプションの一つです。以下はサプライサイトで使用されるコンポーネントです:

  • createRedirect: トップインデックスページへの単純なリダイレクト

    • 設定
      • options: リダイレクトのナビゲーションオプション
      • to: リダイレクト先のblockPageの名前
    • バリデーター
      • なし
  • createSections: ランディングページのセクション

    • 設定
      • components: ランディングページに表示するコンポーネントの配列
        • createLandingHero: ランディングページのヒーローセクション
          • 設定
            • byline: バイラインテキストを表示するReactNodeコンポーネント
            • imageUrl: ヒーローセクションの画像URL
            • showSecondaryText: セカンダリーテキストを表示するかどうかのブール値
            • showTertiaryText: ターシャリーテキストを表示するかどうかのブール値
            • signupRoute: サインアップページのルート
        • createLandingMerits: ランディングページにメリットアイテムを表示
          • 設定
            • meritItems: ランディングページに表示するメリットアイテム
            • signupRoute: サインアップページのルート
        • createLandingHowToUse: ランディングページの使用方法セクション
          • 設定
            • signupRoute: サインアップページのルート
            • stepItems: 使用方法のステップ
        • createLandingFAQ: FAQセクション
          • 設定
            • faqItems: FAQアイテム
            • signupRoute: サインアップページのルート
    • バリデーター
      • なし
  • createOrganizationApplicationCreate: 組織アプリケーションフォーム

    • 設定
      • organizationApi: 組織APIサービス
      • privacyPolicyUrl: プライバシーポリシーページのURL
      • successRoute: サインアップ成功時のページルート
      • userAgreementUrl: 利用規約ページのURL
    • バリデーター
      • なし
  • createOrganizationApplicationComplete:

    • 設定
      • returnToTopRoute: 申請完了後のランディングページへのルート
    • バリデーター
      • なし
  • createLogin: ログインフォーム

    • 設定
      • alreadyVerifiedRoute: ユーザーがログインし、確認済みの場合のページへのルート
      • authApi: 認証APIサービス
      • showSignupLink: サインアップページへのリンク
      • userApi: ユーザーAPIサービス
    • バリデーター
      • なし
  • createResetPasswordRequest: パスワードリセットをリクエストするためのメールフォーム

    • 設定
      • userApi: ユーザーAPIサービス
    • バリデーター
      • なし
  • createResetPasswordSubmit: パスワードリセットフォーム

    • 設定
      • passwordValidateStrategy: パスワードを検証するための戦略
      • userApi: ユーザーAPIサービス
    • バリデーター
      • なし
  • createResetPasswordSuccess: パスワードリセットが成功した後のシンプルなページ

    • 設定
      • userApi: ユーザーAPIサービス
    • バリデーター
      • なし
  • createLogout: ログアウトページ

    • 設定
      • authApi: 認証APIサービス
      • logoutRedirect: ログアウト後のリダイレクトページ
    • バリデーター
      • なし
  • createAcceptInvitation: 招待を受け入れた後のユーザーフォーム作成

    • 設定
      • passwordValidateStrategy: パスワードを検証するための戦略
      • redirectAfterAcceptRoute: 招待を受け入れた後のリダイレクトページ
      • userApi: ユーザーAPIサービス
      • userTypeId: ユーザータイプID
    • バリデーター
      • isNotLoggedIn: ユーザーがログインしていない場合、アプリケーションのインデックスページにリダイレクトします
  • createProductsListForTenantOrganization: 特定の組織の製品/ジョブリスト

    • 設定
      • catalogApi: 組織が作成したジョブのためのカタログAPIサービス
      • createProductRoute: 新しい製品/ジョブを作成するページ
      • showProductRoute: 製品/ジョブの詳細ページ
      • updateProductRoute: 製品/ジョブの編集ページ
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
      • needsPaymentSetup: ユーザーが支払いの設定が必要かどうかを検証します
  • createShowProductDetailPage: 製品/ジョブの詳細を表示するページ

    • 設定
      • catalogApi: 組織が作成したジョブのためのカタログAPIサービス
      • editProductRoute: 製品/ジョブの編集ページ
      • demandSiteProductUrl: デプロイサイトの製品/ジョブのURL
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
  • createCreateProductForTenant: テナント用の製品作成フォームページ

    • 設定
      • attributeName: 取得する属性名
      • catalogApi: 組織が作成したジョブのためのカタログAPIサービス
      • fileUploader: 画像をアップロードするためのGoogle Cloud Bucket
      • successRoute: 製品作成成功後に移動するページのルート
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
      • needsPaymentSetup: ユーザーが支払いの設定が必要かどうかを検証します
  • createUpdateProductForTenant: テナント用の製品更新フォームページ

    • 設定
      • attributeName: 取得する属性名
      • catalogApi: 組織が作成したジョブのためのカタログAPIサービス
      • fileUploader: 画像をアップロードするためのGoogle Cloud Bucket
      • successRoute: 製品更新成功後に移動するページのルート
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
      • needsPaymentSetup: ユーザーが支払いの設定が必要かどうかを検証します
  • createOrdersListForTenantOrganization: 注文/ジョブ応募のリストページ

    • 設定
      • chatApi: チャットAPIサービス
      • chatFeature: メッセージページのルート
      • orderApi: ジョブ応募を管理するための注文APIサービス
      • showOrderRoute: 注文/ジョブ応募ページ
    • バリデーター
      • なし
  • createShowOrderDetailPage: 注文/ジョブ応募の詳細ページ

    • 設定
      • chatApi: チャットAPIサービス
      • chatFeature: メッセージページのルート
      • catalogApi: 組織が作成したジョブのためのカタログAPIサービス
      • orderApi: ジョブ応募を管理するための注文APIサービス
      • productShowPageRoute: 製品詳細ページへのルート
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
      • needsPaymentSetup: ユーザーが支払いの設定が必要かどうかを検証します
  • createListMessagesAndTopicsForTenantOrganizationBlock: 組織向けのメッセージとトピックのリストページ

    • 設定
      • chatApi: チャットAPIサービス
      • organizationApi: 組織APIサービス
      • orderShowRoute: 注文/ジョブ応募の詳細ページ
      • organizationShowRoute: 組織詳細ページ
      • socketApi: WebソケットAPIサービス
      • topicShowRoute: トピック詳細ページ
      • userApi: ユーザーAPIサービス
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
      • needsPaymentSetup: ユーザーが支払いの設定が必要かどうかを検証します
  • createMyOrganizationPage: ユーザーの組織ページを表示

    • 設定
      • organizationApi: 組織APIサービス
      • demandSiteOrganizationUrl: デプロイサイト上の組織URL
      • editCompanyRoute: 組織/会社の編集ページ
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
  • createOrganizationUpdate: 組織更新ページ

    • 設定
      • organizationApi: 組織APIサービス
      • successRoute: 組織更新成功後に移動するページ
    • バリデーター
      • なし
  • createDashboardLink: 支払いダッシュボードリンクの取得

    • 設定
      • paymentApi: サプライ組織の支払いサービス
    • バリデーター
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します
  • createOrganizationRegistration: 組織登録フォームページ

    • 設定
      • organizationApi: 組織APIサービス
      • successRoute: 組織登録成功後に移動するページ
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
  • createListSettingsPage: ユーザー設定リストページ

    • 設定
      • changeEmailRoute: メールを更新する設定ページ
      • changeNameRoute: 名前を更新する設定ページ
      • changePasswordRoute: パスワードを更新する設定ページ
      • changePhoneNumberRoute: 電話番号を更新する設定ページ
      • userApi: ユーザーAPIサービス
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
  • createChangeEmail: ユーザー設定でメールを編集する

    • 設定
      • cancelRoute: 設定の更新をキャンセルするページ
      • successRoute: 設定の更新が成功した際のページ
      • userApi: ユーザーAPIサービス
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
  • createChangeName: ユーザー設定で名前を編集する

    • 設定
      • cancelRoute: 設定の更新をキャンセルするページ
      • successRoute: 設定の更新が成功した際のページ
      • userApi: ユーザーAPIサービス
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
  • createChangePhoneNumber: ユーザー設定で電話番号を編集する

    • 設定
      • cancelRoute: 設定の更新をキャンセルするページ
      • successRoute: 設定の更新が成功した際のページ
      • userApi: ユーザーAPIサービス
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
  • createVerifyChangeEmailSuccess: メールアドレス更新成功ページ

    • 設定
      • userApi: ユーザーAPIサービス
      • verifiedRoute: 認証後のページ
    • バリデーター
      • なし
  • createDashboardLink:

    • 設定
      • paymentApi: サプライ組織の支払いサービス
    • バリデーター
      • なし
  • createChangePassword:

    • 設定
      • cancelRoute: パスワード変更をキャンセルする際のページ
      • successRoute: パスワード変更が成功した際のページ
      • forgotPasswordUrl: パスワードを忘れた場合のURL
      • userApi: ユーザーAPIサービス
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
  • createPaymentPage: 支払い設定ページ

    • 設定
      • dashboardRoute: 支払いダッシュボードページへのルート
    • バリデーター
      • isLoggedIn: ユーザーがログインしていない場合、ログインページにリダイレクトします
      • selectTenantFromOrganization: ユーザーの組織に基づいてテナントを検証および設定します
      • isTenantOrganizationRegistered: 組織が登録されていることを確認します

バリデーター

バリデーターはページがレンダリングされる前に実行されます。バリデーターが失敗した場合、ページはレンダリングされません。

  • needsPaymentSetup: ユーザーが支払いの設定が必要かどうかを検証します
    • シナリオ
      • ユーザーが支払いをしていない/支払い設定をしていない場合: notValidRedirectパスに移動します
      • ユーザーが支払いを済ませている、または試用期間中の場合: バリデーターが通過し、ページが表示されます