<?php

return [
    'providers' => [
        [
            'key'             => 'flespi',
            'label'           => 'Flespi',
            'type'            => 'native',
            'driver_class'    => Fleetbase\FleetOps\Support\Telematics\Providers\FlespiProvider::class,
            'icon'            => '/engines-dist/images/telematics/providers/flespi.webp',
            'description'     => 'Flespi is a robust telematics platform offering device management, data processing, and API integration.',
            'docs_url'        => 'https://flespi.com/docs',
            'required_fields' => [
                [
                    'name'        => 'token',
                    'label'       => 'Flespi Token',
                    'type'        => 'password',
                    'placeholder' => 'Enter your Flespi API token',
                    'required'    => true,
                    'validation'  => 'required|string|min:20',
                ],
                [
                    'name'        => 'webhook_secret',
                    'label'       => 'Webhook Secret (Optional)',
                    'type'        => 'password',
                    'placeholder' => 'Enter webhook secret for signature validation',
                    'required'    => false,
                ],
            ],
            'supports_webhooks'  => true,
            'supports_discovery' => true,
            'metadata'           => [
                'rate_limit' => 100,
                'pagination' => 'offset',
            ],
        ],

        [
            'key'             => 'geotab',
            'label'           => 'Geotab',
            'type'            => 'native',
            'driver_class'    => Fleetbase\FleetOps\Support\Telematics\Providers\GeotabProvider::class,
            'icon'            => '/engines-dist/images/telematics/providers/geotab.webp',
            'description'     => 'Geotab provides fleet management solutions with GPS tracking, driver safety, and compliance features.',
            'docs_url'        => 'https://developers.geotab.com/',
            'required_fields' => [
                [
                    'name'        => 'database',
                    'label'       => 'Database Name',
                    'type'        => 'text',
                    'placeholder' => 'Enter your Geotab database name',
                    'required'    => true,
                ],
                [
                    'name'        => 'username',
                    'label'       => 'Username',
                    'type'        => 'text',
                    'placeholder' => 'Enter your Geotab username',
                    'required'    => true,
                ],
                [
                    'name'        => 'password',
                    'label'       => 'Password',
                    'type'        => 'password',
                    'placeholder' => 'Enter your Geotab password',
                    'required'    => true,
                ],
            ],
            'supports_webhooks'  => false,
            'supports_discovery' => true,
            'metadata'           => [
                'rate_limit' => 50,
                'auth_type'  => 'session',
            ],
        ],

        [
            'key'             => 'samsara',
            'label'           => 'Samsara',
            'type'            => 'native',
            'driver_class'    => Fleetbase\FleetOps\Support\Telematics\Providers\SamsaraProvider::class,
            'icon'            => '/engines-dist/images/telematics/providers/samsara.webp',
            'description'     => 'Samsara offers IoT solutions for fleet operations, including GPS tracking, dashcams, and asset monitoring.',
            'docs_url'        => 'https://developers.samsara.com/',
            'required_fields' => [
                [
                    'name'        => 'api_token',
                    'label'       => 'API Token',
                    'type'        => 'password',
                    'placeholder' => 'Enter your Samsara API token',
                    'required'    => true,
                    'validation'  => 'required|string|min:20',
                ],
                [
                    'name'        => 'webhook_secret',
                    'label'       => 'Webhook Secret (Optional)',
                    'type'        => 'password',
                    'placeholder' => 'Enter webhook secret for signature validation',
                    'required'    => false,
                ],
            ],
            'supports_webhooks'  => true,
            'supports_discovery' => true,
            'metadata'           => [
                'rate_limit' => 60,
                'pagination' => 'cursor',
            ],
        ],

        [
            'key'             => 'afaqy',
            'label'           => 'AFAQY',
            'type'            => 'native',
            'driver_class'    => Fleetbase\FleetOps\Support\Telematics\Providers\AfaqyProvider::class,
            'icon'            => '/engines-dist/images/telematics/providers/afaqy.webp',
            'description'     => 'AFAQY AVL REST integration for unit discovery, live position, speed, heading, odometer, fuel, and signal data.',
            'docs_url'        => 'https://api.afaqy.sa/docs/',
            'required_fields' => [
                [
                    'name'          => 'base_url',
                    'label'         => 'Base URL',
                    'type'          => 'text',
                    'placeholder'   => 'https://api.afaqy.sa',
                    'required'      => false,
                    'advanced'      => true,
                    'is_endpoint'   => true,
                    'default_value' => 'https://api.afaqy.sa',
                    'help_text'     => 'Optional override. Leave blank to use the default AFAQY API host.',
                    'validation'    => 'nullable|url',
                ],
                [
                    'name'        => 'username',
                    'label'       => 'Username',
                    'type'        => 'text',
                    'placeholder' => 'Enter your AFAQY username',
                    'required'    => false,
                    'validation'  => 'required_without:token|string',
                ],
                [
                    'name'        => 'password',
                    'label'       => 'Password',
                    'type'        => 'password',
                    'placeholder' => 'Enter your AFAQY password',
                    'required'    => false,
                    'validation'  => 'required_without:token|string',
                ],
                [
                    'name'        => 'token',
                    'label'       => 'Token',
                    'type'        => 'password',
                    'placeholder' => 'Use an existing AFAQY token',
                    'required'    => false,
                    'validation'  => 'required_without:username|string',
                ],
            ],
            'supports_webhooks'  => false,
            'supports_discovery' => true,
            'metadata'           => [
                'rate_limit'   => 60,
                'pagination'   => 'offset',
                'capabilities' => ['tracking', 'speed', 'heading', 'odometer', 'fuel_level', 'ignition'],
            ],
        ],

        [
            'key'             => 'safee',
            'label'           => 'Safee Tracking',
            'type'            => 'native',
            'driver_class'    => Fleetbase\FleetOps\Support\Telematics\Providers\SafeeProvider::class,
            'icon'            => '/engines-dist/images/telematics/providers/safee.webp',
            'description'     => 'Safee Tracking REST integration for vehicle discovery, last state, live positions, odometer, fuel, and sensor data.',
            'required_fields' => [
                [
                    'name'          => 'server_uri',
                    'label'         => 'Server URI',
                    'type'          => 'text',
                    'placeholder'   => 'https://api.safee.com',
                    'required'      => false,
                    'advanced'      => true,
                    'is_endpoint'   => true,
                    'default_value' => 'https://api.safee.com',
                    'help_text'     => 'Optional override. Leave blank to use the default Safee API host.',
                    'validation'    => 'nullable|url',
                ],
                [
                    'name'        => 'realm_id',
                    'label'       => 'Realm ID',
                    'type'        => 'text',
                    'placeholder' => 'Enter Safee realm ID',
                    'required'    => true,
                ],
                [
                    'name'        => 'client_id',
                    'label'       => 'Client ID',
                    'type'        => 'text',
                    'placeholder' => 'Enter Safee client ID',
                    'required'    => true,
                ],
                [
                    'name'        => 'client_secret',
                    'label'       => 'Client Secret',
                    'type'        => 'password',
                    'placeholder' => 'Enter Safee client secret',
                    'required'    => true,
                ],
                [
                    'name'        => 'username',
                    'label'       => 'Username',
                    'type'        => 'text',
                    'placeholder' => 'Enter Safee username',
                    'required'    => true,
                ],
                [
                    'name'        => 'password',
                    'label'       => 'Password',
                    'type'        => 'password',
                    'placeholder' => 'Enter Safee password',
                    'required'    => true,
                ],
            ],
            'supports_webhooks'  => false,
            'supports_discovery' => true,
            'metadata'           => [
                'rate_limit'   => 3000,
                'pagination'   => 'none',
                'capabilities' => ['tracking', 'speed', 'heading', 'odometer', 'fuel_level', 'ignition'],
            ],
        ],
    ],
];
