import React from 'react';
import { useTrackPlayerProgress } from 'react-native-track-player';
import styled from 'styled-components/native';
import { View, Text } from 'react-native';
import { padStart } from 'lodash';
const Container = styled.View`
width: 100%;
margin-top: 10px;
background-color: #eeeeee;
position: relative;
`;
const Bar = styled.View<{ progress: number }>`
background-color: salmon;
height: 4px;
border-radius: 2px;
width: ${props => props.progress * 100}%;
`;
const PositionIndicator = styled.View<{ progress: number }>`
width: 20px;
height: 20px;
border-radius: 100px;
border: 1px solid #eee;
background-color: white;
transform: translateX(-10px) translateY(-8.5px);
position: absolute;
top: 0;
left: ${props => props.progress * 100}%;
box-shadow: 0px 4px 8px rgba(0,0,0,0.1);
`;
const NumberBar = styled.View`
flex-direction: row;
justify-content: space-between;
width: 100%;
padding: 20px 0;
`;
function getSeconds(seconds: number): string {
return padStart(String(Math.floor(seconds % 60).toString()), 2, '0');
}
function getMinutes(seconds: number): number {
return Math.floor(seconds / 60);
}
export default function ProgressBar() {
const { position, duration } = useTrackPlayerProgress(500);
return (
<>
0:00
{getMinutes(position)}:{getSeconds(position)}
{getMinutes(duration)}:{getSeconds(duration)}
>
);
}