# 画面遷移図

本ドキュメントは、Medusa Admin Dashboard の画面遷移を Mermaid 形式で記述したものです。

## 全体構成

```mermaid
graph TB
    subgraph Public["公開画面（認証不要）"]
        Login[ログイン画面]
        ResetPassword[パスワードリセット画面]
        Invite[招待画面]
        NoMatch[404エラー画面]
    end

    subgraph Protected["認証済み画面"]
        Home[ホーム画面]

        subgraph MainArea["メイン画面"]
            Products[商品管理]
            Categories[カテゴリ管理]
            Collections[コレクション管理]
            Orders[注文管理]
            Promotions[プロモーション管理]
            Campaigns[キャンペーン管理]
            PriceLists[価格表管理]
            Customers[顧客管理]
            CustomerGroups[顧客グループ管理]
            Inventory[在庫管理]
            Reservations[予約管理]
        end

        subgraph SettingsArea["設定画面"]
            Settings[設定トップ]
            Profile[プロフィール]
            Store[ストア設定]
            Regions[リージョン管理]
            Users[ユーザー管理]
            SalesChannels[販売チャネル]
            Locations[ロケーション管理]
            ProductTags[商品タグ]
            ProductTypes[商品タイプ]
            TaxRegions[税リージョン]
            ApiKeys[APIキー管理]
            ReturnReasons[返品理由]
            RefundReasons[返金理由]
            Workflows[ワークフロー]
            Translations[翻訳管理]
        end
    end

    Login -->|ログイン成功| Home
    ResetPassword -->|パスワードリセット完了| Login
    Invite -->|アカウント設定完了| Login

    Home --> MainArea
    Home --> SettingsArea
```

## 認証フロー

```mermaid
flowchart LR
    Login[ログイン画面] -->|認証成功| Home[ホーム画面]
    Login -->|パスワード忘れ| ResetPassword[パスワードリセット画面]
    ResetPassword -->|リセット完了| Login
    Invite[招待画面] -->|アカウント設定完了| Login

    Protected[認証済みページ] -->|セッション切れ| Login
```

## 商品管理フロー

```mermaid
flowchart TB
    ProductList[商品一覧画面] -->|新規作成| ProductCreate[商品作成画面]
    ProductList -->|インポート| ProductImport[商品インポート画面]
    ProductList -->|エクスポート| ProductExport[商品エクスポート画面]
    ProductList -->|商品選択| ProductDetail[商品詳細画面]

    ProductCreate -->|作成完了| ProductDetail
    ProductCreate -->|キャンセル| ProductList

    ProductDetail -->|基本情報編集| ProductEdit[商品編集画面]
    ProductDetail -->|属性編集| ProductAttributes[商品属性編集画面]
    ProductDetail -->|組織編集| ProductOrganization[商品組織編集画面]
    ProductDetail -->|メディア編集| ProductMedia[商品メディア編集画面]
    ProductDetail -->|価格編集| ProductPrices[商品価格編集画面]
    ProductDetail -->|在庫編集| ProductStock[商品在庫編集画面]
    ProductDetail -->|販売チャネル| ProductSalesChannels[商品販売チャネル編集画面]
    ProductDetail -->|配送プロファイル| ProductShippingProfile[商品配送プロファイル編集画面]
    ProductDetail -->|オプション作成| ProductCreateOption[商品オプション作成画面]
    ProductDetail -->|オプション編集| ProductEditOption[商品オプション編集画面]
    ProductDetail -->|バリアント作成| ProductCreateVariant[商品バリアント作成画面]
    ProductDetail -->|メタデータ編集| ProductMetadata[商品メタデータ編集画面]
    ProductDetail -->|バリアント選択| VariantDetail[バリアント詳細画面]

    VariantDetail -->|編集| VariantEdit[バリアント編集画面]
    VariantDetail -->|価格編集| VariantPrices[価格編集画面]
    VariantDetail -->|在庫管理| VariantInventory[バリアント在庫管理画面]
    VariantDetail -->|メディア編集| VariantMedia[バリアントメディア編集画面]
    VariantDetail -->|メタデータ編集| VariantMetadata[バリアントメタデータ編集画面]

    ProductEdit -->|保存| ProductDetail
    ProductAttributes -->|保存| ProductDetail
    ProductOrganization -->|保存| ProductDetail
    ProductMedia -->|保存| ProductDetail
    ProductPrices -->|保存| ProductDetail
    ProductStock -->|保存| ProductDetail
    ProductSalesChannels -->|保存| ProductDetail
    ProductShippingProfile -->|保存| ProductDetail
    ProductCreateOption -->|作成完了| ProductDetail
    ProductEditOption -->|保存| ProductDetail
    ProductCreateVariant -->|作成完了| ProductDetail
    ProductMetadata -->|保存| ProductDetail

    VariantEdit -->|保存| VariantDetail
    VariantPrices -->|保存| VariantDetail
    VariantInventory -->|保存| VariantDetail
    VariantMedia -->|保存| VariantDetail
    VariantMetadata -->|保存| VariantDetail
```

## カテゴリ管理フロー

```mermaid
flowchart TB
    CategoryList[カテゴリ一覧画面] -->|新規作成| CategoryCreate[カテゴリ作成画面]
    CategoryList -->|整理| CategoryOrganize[カテゴリ整理画面]
    CategoryList -->|カテゴリ選択| CategoryDetail[カテゴリ詳細画面]

    CategoryCreate -->|作成完了| CategoryDetail

    CategoryDetail -->|編集| CategoryEdit[カテゴリ編集画面]
    CategoryDetail -->|商品追加| CategoryProducts[カテゴリ商品追加画面]
    CategoryDetail -->|整理| CategoryOrganize
    CategoryDetail -->|メタデータ編集| CategoryMetadata[カテゴリメタデータ編集画面]

    CategoryEdit -->|保存| CategoryDetail
    CategoryProducts -->|保存| CategoryDetail
    CategoryOrganize -->|保存| CategoryList
    CategoryMetadata -->|保存| CategoryDetail
```

## コレクション管理フロー

```mermaid
flowchart TB
    CollectionList[コレクション一覧画面] -->|新規作成| CollectionCreate[コレクション作成画面]
    CollectionList -->|コレクション選択| CollectionDetail[コレクション詳細画面]

    CollectionCreate -->|作成完了| CollectionDetail

    CollectionDetail -->|編集| CollectionEdit[コレクション編集画面]
    CollectionDetail -->|商品追加| CollectionAddProducts[コレクション商品追加画面]
    CollectionDetail -->|メタデータ編集| CollectionMetadata[コレクションメタデータ編集画面]

    CollectionEdit -->|保存| CollectionDetail
    CollectionAddProducts -->|保存| CollectionDetail
    CollectionMetadata -->|保存| CollectionDetail
```

## 注文管理フロー

```mermaid
flowchart TB
    OrderList[注文一覧画面] -->|エクスポート| OrderExport[注文エクスポート画面]
    OrderList -->|注文選択| OrderDetail[注文詳細画面]

    OrderDetail -->|フルフィルメント作成| OrderFulfillment[フルフィルメント作成画面]
    OrderDetail -->|出荷作成| OrderShipment[出荷作成画面]
    OrderDetail -->|返品作成| OrderReturn[返品作成画面]
    OrderDetail -->|返品受領| OrderReceiveReturn[返品受領画面]
    OrderDetail -->|クレーム作成| OrderClaim[クレーム作成画面]
    OrderDetail -->|交換作成| OrderExchange[交換作成画面]
    OrderDetail -->|注文編集| OrderEdit[注文編集作成画面]
    OrderDetail -->|返金| OrderRefund[返金作成画面]
    OrderDetail -->|在庫割当| OrderAllocate[在庫割当画面]
    OrderDetail -->|移管リクエスト| OrderTransfer[注文移管リクエスト画面]
    OrderDetail -->|メール編集| OrderEditEmail[メールアドレス編集画面]
    OrderDetail -->|配送先編集| OrderEditShipping[配送先住所編集画面]
    OrderDetail -->|請求先編集| OrderEditBilling[請求先住所編集画面]
    OrderDetail -->|メタデータ編集| OrderMetadata[注文メタデータ編集画面]

    OrderFulfillment -->|完了| OrderDetail
    OrderShipment -->|完了| OrderDetail
    OrderReturn -->|完了| OrderDetail
    OrderReceiveReturn -->|完了| OrderDetail
    OrderClaim -->|完了| OrderDetail
    OrderExchange -->|完了| OrderDetail
    OrderEdit -->|完了| OrderDetail
    OrderRefund -->|完了| OrderDetail
    OrderAllocate -->|完了| OrderDetail
    OrderTransfer -->|完了| OrderDetail
    OrderEditEmail -->|保存| OrderDetail
    OrderEditShipping -->|保存| OrderDetail
    OrderEditBilling -->|保存| OrderDetail
    OrderMetadata -->|保存| OrderDetail
```

## プロモーション・キャンペーン管理フロー

```mermaid
flowchart TB
    subgraph Promotions["プロモーション管理"]
        PromotionList[プロモーション一覧画面] -->|新規作成| PromotionCreate[プロモーション作成画面]
        PromotionList -->|プロモーション選択| PromotionDetail[プロモーション詳細画面]

        PromotionCreate -->|作成完了| PromotionDetail

        PromotionDetail -->|編集| PromotionEdit[プロモーション編集画面]
        PromotionDetail -->|キャンペーン追加| PromotionAddCampaign[キャンペーン追加画面]
        PromotionDetail -->|ルール編集| PromotionEditRules[ルール編集画面]

        PromotionEdit -->|保存| PromotionDetail
        PromotionAddCampaign -->|保存| PromotionDetail
        PromotionEditRules -->|保存| PromotionDetail
    end

    subgraph Campaigns["キャンペーン管理"]
        CampaignList[キャンペーン一覧画面] -->|新規作成| CampaignCreate[キャンペーン作成画面]
        CampaignList -->|キャンペーン選択| CampaignDetail[キャンペーン詳細画面]

        CampaignCreate -->|作成完了| CampaignDetail

        CampaignDetail -->|編集| CampaignEdit[キャンペーン編集画面]
        CampaignDetail -->|設定| CampaignConfiguration[キャンペーン設定画面]
        CampaignDetail -->|予算編集| CampaignBudget[予算編集画面]
        CampaignDetail -->|プロモーション追加| CampaignAddPromotions[プロモーション追加画面]

        CampaignEdit -->|保存| CampaignDetail
        CampaignConfiguration -->|保存| CampaignDetail
        CampaignBudget -->|保存| CampaignDetail
        CampaignAddPromotions -->|保存| CampaignDetail
    end

    PromotionAddCampaign -.->|キャンペーン選択| CampaignDetail
    CampaignAddPromotions -.->|プロモーション選択| PromotionDetail
```

## 顧客管理フロー

```mermaid
flowchart TB
    CustomerList[顧客一覧画面] -->|新規作成| CustomerCreate[顧客作成画面]
    CustomerList -->|顧客選択| CustomerDetail[顧客詳細画面]

    CustomerCreate -->|作成完了| CustomerDetail

    CustomerDetail -->|編集| CustomerEdit[顧客編集画面]
    CustomerDetail -->|住所作成| CustomerCreateAddress[住所作成画面]
    CustomerDetail -->|グループ追加| CustomerAddGroup[顧客グループ追加画面]
    CustomerDetail -->|注文移管| CustomerOrderTransfer[注文移管リクエスト画面]
    CustomerDetail -->|メタデータ編集| CustomerMetadata[顧客メタデータ編集画面]

    CustomerEdit -->|保存| CustomerDetail
    CustomerCreateAddress -->|作成完了| CustomerDetail
    CustomerAddGroup -->|保存| CustomerDetail
    CustomerOrderTransfer -->|完了| CustomerDetail
    CustomerMetadata -->|保存| CustomerDetail
```

## 顧客グループ管理フロー

```mermaid
flowchart TB
    CustomerGroupList[顧客グループ一覧画面] -->|新規作成| CustomerGroupCreate[顧客グループ作成画面]
    CustomerGroupList -->|グループ選択| CustomerGroupDetail[顧客グループ詳細画面]

    CustomerGroupCreate -->|作成完了| CustomerGroupDetail

    CustomerGroupDetail -->|編集| CustomerGroupEdit[顧客グループ編集画面]
    CustomerGroupDetail -->|顧客追加| CustomerGroupAddCustomers[顧客追加画面]
    CustomerGroupDetail -->|メタデータ編集| CustomerGroupMetadata[グループメタデータ編集画面]

    CustomerGroupEdit -->|保存| CustomerGroupDetail
    CustomerGroupAddCustomers -->|保存| CustomerGroupDetail
    CustomerGroupMetadata -->|保存| CustomerGroupDetail
```

## 在庫・予約管理フロー

```mermaid
flowchart TB
    subgraph InventoryMgmt["在庫管理"]
        InventoryList[在庫一覧画面] -->|新規作成| InventoryCreate[在庫作成画面]
        InventoryList -->|一括更新| InventoryStock[在庫一括更新画面]
        InventoryList -->|在庫選択| InventoryDetail[在庫詳細画面]

        InventoryCreate -->|作成完了| InventoryDetail

        InventoryDetail -->|編集| InventoryEdit[在庫編集画面]
        InventoryDetail -->|属性編集| InventoryAttributes[在庫属性編集画面]
        InventoryDetail -->|ロケーション管理| InventoryLocations[在庫ロケーション管理画面]
        InventoryDetail -->|在庫調整| InventoryAdjust[在庫調整画面]
        InventoryDetail -->|メタデータ編集| InventoryMetadata[在庫メタデータ編集画面]

        InventoryEdit -->|保存| InventoryDetail
        InventoryAttributes -->|保存| InventoryDetail
        InventoryLocations -->|保存| InventoryDetail
        InventoryAdjust -->|保存| InventoryDetail
        InventoryMetadata -->|保存| InventoryDetail
    end

    subgraph ReservationMgmt["予約管理"]
        ReservationList[予約一覧画面] -->|新規作成| ReservationCreate[予約作成画面]
        ReservationList -->|予約選択| ReservationDetail[予約詳細画面]

        ReservationCreate -->|作成完了| ReservationDetail

        ReservationDetail -->|編集| ReservationEdit[予約編集画面]
        ReservationDetail -->|メタデータ編集| ReservationMetadata[予約メタデータ編集画面]

        ReservationEdit -->|保存| ReservationDetail
        ReservationMetadata -->|保存| ReservationDetail
    end
```

## 設定画面フロー

```mermaid
flowchart TB
    Settings[設定トップ画面] -->|プロフィール| ProfileDetail[プロフィール詳細画面]
    Settings -->|ストア| StoreDetail[ストア詳細画面]
    Settings -->|リージョン| RegionList[リージョン一覧画面]
    Settings -->|ユーザー| UserList[ユーザー一覧画面]
    Settings -->|販売チャネル| SalesChannelList[販売チャネル一覧画面]
    Settings -->|ロケーション| LocationList[ロケーション一覧画面]
    Settings -->|商品タグ| ProductTagList[商品タグ一覧画面]
    Settings -->|商品タイプ| ProductTypeList[商品タイプ一覧画面]
    Settings -->|税リージョン| TaxRegionList[税リージョン一覧画面]
    Settings -->|公開APIキー| PublishableApiKeyList[公開APIキー一覧画面]
    Settings -->|シークレットAPIキー| SecretApiKeyList[シークレットAPIキー一覧画面]
    Settings -->|返品理由| ReturnReasonList[返品理由一覧画面]
    Settings -->|返金理由| RefundReasonList[返金理由一覧画面]
    Settings -->|ワークフロー| WorkflowList[ワークフロー実行一覧画面]
    Settings -->|翻訳| TranslationList[翻訳一覧画面]

    ProfileDetail -->|編集| ProfileEdit[プロフィール編集画面]
    ProfileEdit -->|保存| ProfileDetail
```

## ロケーション管理詳細フロー

```mermaid
flowchart TB
    LocationList[ロケーション一覧画面] -->|新規作成| LocationCreate[ロケーション作成画面]
    LocationList -->|配送プロファイル| ShippingProfileList[配送プロファイル一覧画面]
    LocationList -->|配送オプションタイプ| ShippingOptionTypeList[配送オプションタイプ一覧画面]
    LocationList -->|ロケーション選択| LocationDetail[ロケーション詳細画面]

    LocationCreate -->|作成完了| LocationDetail

    LocationDetail -->|編集| LocationEdit[ロケーション編集画面]
    LocationDetail -->|販売チャネル設定| LocationSalesChannels[販売チャネル設定画面]
    LocationDetail -->|フルフィルメントプロバイダー| LocationFulfillmentProviders[フルフィルメントプロバイダー設定画面]
    LocationDetail -->|サービスゾーン作成| ServiceZoneCreate[サービスゾーン作成画面]

    ServiceZoneCreate -->|作成完了| ServiceZoneEdit[サービスゾーン編集画面]

    ServiceZoneEdit -->|エリア管理| ServiceZoneAreas[エリア管理画面]
    ServiceZoneEdit -->|配送オプション作成| ShippingOptionCreate[配送オプション作成画面]

    ShippingOptionCreate -->|作成完了| ShippingOptionEdit[配送オプション編集画面]
    ShippingOptionEdit -->|料金設定| ShippingOptionPricing[配送オプション料金設定画面]

    LocationEdit -->|保存| LocationDetail
    LocationSalesChannels -->|保存| LocationDetail
    LocationFulfillmentProviders -->|保存| LocationDetail
    ServiceZoneAreas -->|保存| ServiceZoneEdit
    ShippingOptionPricing -->|保存| ShippingOptionEdit
```

## 税リージョン管理フロー

```mermaid
flowchart TB
    TaxRegionList[税リージョン一覧画面] -->|新規作成| TaxRegionCreate[税リージョン作成画面]
    TaxRegionList -->|リージョン選択| TaxRegionDetail[税リージョン詳細画面]

    TaxRegionCreate -->|作成完了| TaxRegionDetail

    TaxRegionDetail -->|編集| TaxRegionEdit[税リージョン編集画面]
    TaxRegionDetail -->|都道府県作成| ProvinceCreate[都道府県作成画面]
    TaxRegionDetail -->|税率作成| TaxRateCreate[税率作成画面]
    TaxRegionDetail -->|税率編集| TaxRateEdit[税率編集画面]
    TaxRegionDetail -->|オーバーライド作成| TaxOverrideCreate[税オーバーライド作成画面]
    TaxRegionDetail -->|オーバーライド編集| TaxOverrideEdit[税オーバーライド編集画面]
    TaxRegionDetail -->|都道府県選択| ProvinceDetail[都道府県詳細画面]

    TaxRegionEdit -->|保存| TaxRegionDetail
    ProvinceCreate -->|作成完了| ProvinceDetail
    TaxRateCreate -->|作成完了| TaxRegionDetail
    TaxRateEdit -->|保存| TaxRegionDetail
    TaxOverrideCreate -->|作成完了| TaxRegionDetail
    TaxOverrideEdit -->|保存| TaxRegionDetail

    ProvinceDetail -->|税率作成| ProvinceTaxRateCreate[都道府県税率作成画面]
    ProvinceDetail -->|税率編集| ProvinceTaxRateEdit[都道府県税率編集画面]
    ProvinceDetail -->|オーバーライド作成| ProvinceOverrideCreate[都道府県オーバーライド作成画面]
    ProvinceDetail -->|オーバーライド編集| ProvinceOverrideEdit[都道府県オーバーライド編集画面]

    ProvinceTaxRateCreate -->|作成完了| ProvinceDetail
    ProvinceTaxRateEdit -->|保存| ProvinceDetail
    ProvinceOverrideCreate -->|作成完了| ProvinceDetail
    ProvinceOverrideEdit -->|保存| ProvinceDetail
```

## 翻訳管理フロー

```mermaid
flowchart TB
    TranslationList[翻訳一覧画面] -->|設定| TranslationSettings[翻訳設定画面]
    TranslationList -->|編集| TranslationEdit[翻訳編集画面]
    TranslationList -->|ロケール追加| AddLocales[ロケール追加画面]

    TranslationSettings -->|保存| TranslationList
    TranslationEdit -->|保存| TranslationList
    AddLocales -->|追加完了| TranslationList
```

## ワークフロー管理フロー

```mermaid
flowchart TB
    WorkflowList[ワークフロー実行一覧画面] -->|実行選択| WorkflowDetail[ワークフロー実行詳細画面]
```
