<?php

return [
    // ERD에서 제외할 모델들 (너무 복잡하거나 덜 중요한 테이블들)
    'except' => [
        // Laravel 기본 테이블들
        'Spatie\\Permission\\Models\\Permission',
        'Spatie\\Permission\\Models\\Role',
        'Laravel\\Sanctum\\PersonalAccessToken',

        // 시스템/로그 테이블들
        'App\\Models\\System\\AuditLog',
        'App\\Models\\System\\File',
        'App\\Models\\System\\SettingFieldDef',

        // 게시판 시스템 (덜 중요)
        'App\\Models\\Board\\Board',
        'App\\Models\\Board\\Post',
        'App\\Models\\Board\\BoardSetting',
        'App\\Models\\Board\\BoardComment',

        // 세부 관리 테이블들
        'App\\Models\\Inventory\\LotSale',
        'App\\Models\\Material\\MaterialInspectionItem',
        'App\\Models\\Order\\OrderHistory',
        'App\\Models\\System\\TenantOptionValue',
        'App\\Models\\System\\TenantOptionGroup',
    ],

    // 핵심 테이블만 포함하는 필터
    'only_core' => [
        // 인증/권한 핵심
        'App\\Models\\User',
        'App\\Models\\Tenant',
        'App\\Models\\UserTenant',
        'App\\Models\\Department',

        // 제품/BOM 핵심
        'App\\Models\\Product\\Product',
        'App\\Models\\Product\\ProductComponent',
        'App\\Models\\Material\\Material',
        'App\\Models\\Commons\\Category',

        // 견적/주문 핵심
        'App\\Models\\Estimate\\Estimate',
        'App\\Models\\Estimate\\EstimateItem',
        'App\\Models\\Order\\Order',
        'App\\Models\\Order\\OrderItem',

        // 설계 핵심
        'App\\Models\\Design\\Model',
        'App\\Models\\Design\\ModelVersion',
        'App\\Models\\BOM\\BomTemplate',
    ],

    // 그래프 레이아웃 설정
    'graph' => [
        'rankdir' => 'TB', // Top to Bottom (위에서 아래로)
        'splines' => 'ortho', // 직선 연결
        'overlap' => 'false',
        'concentrate' => 'true', // 관계선 집중화
    ],
];
