nexle-tvguide-lib
Version:
TV guide library for Android TV
90 lines (82 loc) • 2.47 kB
JavaScript
import { Dimensions } from 'react-native';
const DEVICE_WIDTH = Dimensions.get('window').width;
const DEVICE_HEIGHT = Dimensions.get('window').height;
const CHANNEL_LIST_WIDTH = 200;
const NUMBER_OF_TIMELINE_CELLS_DISPLAYED = 4;
const NUMBER_OF_CHANNELS_DISPLAYED = 5;
const HEADER_CELL_HEIGHT = 50;
const CHANNEL_BATCH_SIZE = 200;
const TIME_INDICATOR_UPDATE_INTERVAL = 60 * 1000;
const LOADING_INDICATOR_TIMEOUT = 60 * 1000;
const HOUR_DURATION = 60 * 60 * 1000;
const HALF_HOUR_DURATION = 30 * 60 * 1000;
const PROGRAM_MIN_DURATION_SHOW_CONTENT = 15 * 60 * 1000;
const DEBOUNCE_TIME = 300;
const REMAINING_TIME_TO_LOAD_MORE_PROGRAMS = 5 * 60 * 60 * 1000;
const NUMBER_OF_FUTURE_DAYS = 3;
const NUMBER_OF_PAST_DAYS = 3;
const NEXT_DAY_EVENT_TYPE = 'NEXT_DAY_EVENT_TYPE';
const PREV_DAY_EVENT_TYPE = 'PREV_DAY_EVENT_TYPE';
const THEME_STYLES = {
DEFAULT_PROGRAM_BG_COLOR: '#606060',
ACTIVE_PROGRAM_BG_COLOR: '#393939',
CURRENT_PROGRAM_BG_COLOR: '#FFFFFF',
PROGRAM_TEXT_COLOR: '#292929',
PAST_PROGRAM_TEXT_COLOR: '#8A8A8A',
FUTURE_PROGRAM_TEXT_COLOR: '#FFFFFF',
CONTAINER_BG_COLOR: '#292929',
PROGRAM_TITLE_FONT_SIZE: 18,
TIME_LINE_TITLE_FONT_SIZE: 16,
CHANNEL_TITLE_FONT_SIZE: 18,
LOADING_INDICATOR_COLOR: '#f50505',
TIME_INDICATOR_BG_COLOR: '#f50505',
LOADING_INDICATOR_BG_COLOR: '#101010',
};
const PROGRAM_TIME_TYPE = {
PAST: 'PAST',
CURRENT: 'CURRENT',
FUTURE: 'FUTURE'
};
const FETCH_MORE_DATA_TYPE = {
BY_CHANNEL: 'BY_CHANNEL',
BY_DATE: 'BY_DATE'
};
const FLAT_LIST_CONFIG = {
WINDOW_SIZE: 5,
MAX_RENDER_PER_BATCH: 2,
INIT_NUM_TO_RENDER: 5,
SCROLL_EVENT_THROTTLE: 16,
ON_END_REACHED_THRESHOLD: 0.9
};
const EVENT_KEYS = {
DOWN: 'down',
UP: 'up',
RIGHT: 'right',
LEFT: 'left',
PLAY_PAUSE: 'playPause'
};
export default TV_GUIDE_CONSTANTS = {
CHANNEL_LIST_WIDTH,
NUMBER_OF_TIMELINE_CELLS_DISPLAYED,
NUMBER_OF_CHANNELS_DISPLAYED,
DEVICE_WIDTH,
DEVICE_HEIGHT,
HEADER_CELL_HEIGHT,
CHANNEL_BATCH_SIZE,
TIME_INDICATOR_UPDATE_INTERVAL,
FETCH_MORE_DATA_TYPE,
HOUR_DURATION,
HALF_HOUR_DURATION,
PROGRAM_MIN_DURATION_SHOW_CONTENT,
DEBOUNCE_TIME,
NEXT_DAY_EVENT_TYPE,
PREV_DAY_EVENT_TYPE,
THEME_STYLES,
FLAT_LIST_CONFIG,
EVENT_KEYS,
NUMBER_OF_FUTURE_DAYS,
NUMBER_OF_PAST_DAYS,
PROGRAM_TIME_TYPE,
LOADING_INDICATOR_TIMEOUT,
REMAINING_TIME_TO_LOAD_MORE_PROGRAMS
};