<?php

return [
    /*
    |--------------------------------------------------------------------------
    | ルートのURIベース
    |--------------------------------------------------------------------------
    | デフォルトは元の routes/web.php のURIをそのまま再現します:
    |   /admin_crud, /admin_crudcopy, /admin_cruddelete, /admin_crudchkdelete,
    |   /admin_crudsetautoinc, /admin_crudnew, /admin_crudtruncate
    | 既存アプリと共存させる場合は 'crud' などに変更してください。
    */
    'path' => env('ADMIN_CRUD_PATH', 'admin_crud'),

    /*
    |--------------------------------------------------------------------------
    | ルート名プレフィックス
    |--------------------------------------------------------------------------
    | デフォルトは元のルート名をそのまま再現します:
    |   admin.crud, admin.crudcopy, admin.cruddelete, admin.crudchkdelete,
    |   admin.crud_setautoinc, admin.crudnew, admin.crudtruncate, admin.crudpost
    */
    'route_name_prefix' => 'admin.',

    /*
    |--------------------------------------------------------------------------
    | ミドルウェア
    |--------------------------------------------------------------------------
    */
    'middleware' => ['web', 'auth'],

    /*
    |--------------------------------------------------------------------------
    | 認可 (Gate)
    |--------------------------------------------------------------------------
    | 各アクションで $user->can($gate, $roles) をチェックします。
    | 'gate' => null にするとチェックを省略します (ミドルウェア側で
    | 完全に保護する場合など)。
    |   roles      : 参照・コピー・削除・truncate など
    |   post_roles : セルのインライン更新 (crudpost)
    */
    'gate' => 'role_any',
    'roles' => 'admin',
    'post_roles' => 'admin|manager|ec|pub',

    /*
    |--------------------------------------------------------------------------
    | Eloquentモデルの名前空間
    |--------------------------------------------------------------------------
    | テーブル名から Str::studly(Str::singular($table)) でモデルクラスを
    | 解決します (factory による行追加、replicate によるコピー等に使用)。
    */
    'model_namespace' => 'App\\Models',

    /*
    |--------------------------------------------------------------------------
    | レイアウト (Bladeコンポーネント)
    |--------------------------------------------------------------------------
    | パッケージ同梱の最小レイアウトは 'admin-crud::layout' です。
    | Breeze 風のレイアウト (@stack('localcss') / @stack('localjs') あり) を
    | 持つアプリでは 'app-layout' にすると <x-app-layout> 内に描画されます。
    */
    'layout_component' => 'admin-crud::layout',

    /*
    |--------------------------------------------------------------------------
    | 1ページに表示する最大行数
    |--------------------------------------------------------------------------
    */
    'limit' => 100,

    /*
    |--------------------------------------------------------------------------
    | 予約更新 (scheduled update) 連携
    |--------------------------------------------------------------------------
    | ルート名を設定し、かつテーブルに対応するEloquentモデルが存在する場合、
    | セルの右クリックメニューから target_type / target_id / field_name 付きで
    | そのルートへリンクします (例: 'scheduled_update.create')。
    | null の場合は無効です。
    */
    'scheduled_update_create_route' => null,

    /*
    |--------------------------------------------------------------------------
    | jQuery の URL
    |--------------------------------------------------------------------------
    | CRUDビューで読み込む jQuery です。アプリが既に jQuery を配信している
    | 場合は '/js/jquery.min.js' などに変更してください。
    */
    'jquery_url' => env('ADMIN_CRUD_JQUERY_URL', 'https://code.jquery.com/jquery-3.7.1.min.js'),
];
