/*
    Предрейсовые осмотры - мобильное приложение
    Стили компонента иконки/логотипа приложения
*/

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

const { StyleSheet } = require('react-native'); //StyleSheet React Native
const { responsiveSize } = require('../../utils/responsive'); //Адаптивные утилиты
const { LOGO_SIZE_KEYS } = require('../../config/appAssets'); //Ключи размеров логотипа

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

//Размеры контейнера для вариантов логотипа
const SIZES = Object.freeze({
    [LOGO_SIZE_KEYS.SMALL]: responsiveSize(32),
    [LOGO_SIZE_KEYS.MEDIUM]: responsiveSize(40),
    [LOGO_SIZE_KEYS.LARGE]: responsiveSize(56)
});

//Радиус скругления контейнера по размерам
const BORDER_RADIUS = Object.freeze({
    [LOGO_SIZE_KEYS.SMALL]: responsiveSize(6),
    [LOGO_SIZE_KEYS.MEDIUM]: responsiveSize(8),
    [LOGO_SIZE_KEYS.LARGE]: responsiveSize(10)
});

//Стили логотипа
const styles = StyleSheet.create({
    container: {
        alignItems: 'center',
        justifyContent: 'center',
        overflow: 'hidden'
    },
    containerSmall: {
        width: SIZES[LOGO_SIZE_KEYS.SMALL],
        height: SIZES[LOGO_SIZE_KEYS.SMALL],
        borderRadius: BORDER_RADIUS[LOGO_SIZE_KEYS.SMALL]
    },
    containerMedium: {
        width: SIZES[LOGO_SIZE_KEYS.MEDIUM],
        height: SIZES[LOGO_SIZE_KEYS.MEDIUM],
        borderRadius: BORDER_RADIUS[LOGO_SIZE_KEYS.MEDIUM]
    },
    containerLarge: {
        width: SIZES[LOGO_SIZE_KEYS.LARGE],
        height: SIZES[LOGO_SIZE_KEYS.LARGE],
        borderRadius: BORDER_RADIUS[LOGO_SIZE_KEYS.LARGE]
    },
    image: {
        width: '100%',
        height: '100%'
    }
});

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

module.exports = styles;
