<?php

return [
    /*
    |--------------------------------------------------------------------------
    | Punch state → action map
    |--------------------------------------------------------------------------
    | Device punch_state values (case-insensitive) mapped to check-in / check-out.
    */
    'punch_state_map' => [
        'check in' => 'in',
        'check-in' => 'in',
        'checkin' => 'in',
        'in' => 'in',
        '0' => 'in',
        'i' => 'in',
        'check out' => 'out',
        'check-out' => 'out',
        'checkout' => 'out',
        'out' => 'out',
        '1' => 'out',
        'o' => 'out',
        // Common ZK / middleware variants
        'c/in' => 'in',
        'c/out' => 'out',
        'cin' => 'in',
        'cout' => 'out',
        'dutyon' => 'in',
        'dutyoff' => 'out',
        'on duty' => 'in',
        'off duty' => 'out',
        'break out' => 'out',
        'break in' => 'in',
        'overtime in' => 'in',
        'overtime out' => 'out',
    ],

    'max_batch_size' => 500,

    /*
    |--------------------------------------------------------------------------
    | Open session window (login/logout gate path only)
    |--------------------------------------------------------------------------
    */
    'open_session_max_age_hours' => 20,

    /*
    |--------------------------------------------------------------------------
    | First-IN / Last-OUT (punch_mode=both)
    |--------------------------------------------------------------------------
    */
    'biometric_attendance_mode' => 'FIRST_IN_LAST_OUT',
    'min_punch_gap_minutes' => 1,

    'data_template' => '[{"company_name":"{company_name}","emp_code":"{emp_code}","first_name":"{first_name}","last_name":"{last_name}","punch_datetime":"{punch_datetime}","punch_date":"{punch_date}","punch_time":"{punch_time}","punch_state":"{punch_state}","verify_type":"{verify_type}","terminal_sn":"{terminal_sn}","terminal_alias":"{terminal_alias}","longitude":"{longitude}","latitude":"{latitude}","upload_time":"{upload_time}"}]',

    'plan_feature_key' => 'attendance_biometric',
];
