react-native-reanimated-player
Version:
A react-native video player that interacts like Youtube player, built upon Reanimted v2 & react-native-gesture-handle
66 lines (54 loc) • 2.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.secondToTime = exports.formatTimeToMins = exports.formatTime = void 0;
const padStart = require('lodash.padstart');
/**
* Format a time string as mm:ss
*
* @param {int} time time in milliseconds
* @return {string} formatted time string in mm:ss format
*/
const formatTime = _ref => {
let {
time = 0,
symbol = '',
duration = 0,
showHours = false
} = _ref;
time = Math.min(Math.max(time, 0), duration);
if (!showHours) {
const formattedMinutes = padStart(Math.floor(time / 60).toFixed(0), 2, '0');
const formattedSeconds = padStart(Math.floor(time % 60).toFixed(0), 2, '0');
return `${symbol}${formattedMinutes}:${formattedSeconds}`;
}
const formattedHours = padStart(Math.floor(time / 3600).toFixed(0), 2, '0');
const formattedMinutes = padStart((Math.floor(time / 60) % 60).toFixed(0), 2, '0');
const formattedSeconds = padStart(Math.floor(time % 60).toFixed(0), 2, '0');
return `${symbol}${formattedHours}:${formattedMinutes}:${formattedSeconds}`;
};
exports.formatTime = formatTime;
const secondToTime = seconds => {
const hour = Math.floor(seconds / 3600);
const residualFromHour = seconds % 3600;
const minute = `${Math.floor(residualFromHour / 60)}`.padStart(2, '0');
const second = `${Math.floor(residualFromHour % 60)}`.padStart(2, '0');
let output = `${minute}:${second}`;
hour && (output = `${hour}:${output}`);
return output;
};
/**
* Format a time string as mm:ss
*
* @param {int} time time in milliseconds
* @return {string} formatted time string in mm:ss format
*/
exports.secondToTime = secondToTime;
const formatTimeToMins = duration => {
const formattedMinutes = padStart((Math.floor(duration / 60) % 60).toFixed(0), 2, '0');
const formattedSeconds = padStart(Math.floor(duration % 60).toFixed(0), 2, '0');
return `${formattedMinutes}:${formattedSeconds}`;
};
exports.formatTimeToMins = formatTimeToMins;
//# sourceMappingURL=video-utils.js.map