/*
    Предрейсовые осмотры - мобильное приложение
    Утилита таймаута запросов к серверу
*/

//---------------------
//Подключение библиотек
//---------------------

const { AUTH_SETTINGS_KEYS } = require('../config/authConfig'); //Ключи настроек

//-----------
//Тело модуля
//-----------

//Возвращает максимальное время ожидания ответа от сервера в миллисекундах (Promise)
async function getServerRequestTimeoutMs(getSetting) {
    try {
        const raw = await getSetting(AUTH_SETTINGS_KEYS.SERVER_REQUEST_TIMEOUT);
        const trimmed = raw != null ? String(raw).trim() : '';
        if (trimmed === '') {
            return 0;
        }
        const sec = parseInt(trimmed, 10);
        if (isNaN(sec) || sec <= 0) {
            return 0;
        }
        return sec * 1000;
    } catch (err) {
        return 0;
    }
}

//----------------
//Интерфейс модуля
//----------------

module.exports = {
    getServerRequestTimeoutMs
};
