function formatNumber(n) {
    n = n.toString();
    return n[1] ? n : "0" + n;
}

export function getUTCDateTime(datetime) {
    var year = datetime.getUTCFullYear();
    var month = datetime.getUTCMonth() + 1;
    var day = datetime.getUTCDate();
    var hour = datetime.getUTCHours();
    var minute = datetime.getUTCMinutes();
    var second = datetime.getUTCSeconds();
    return [year, month, day, hour, minute, second].map(formatNumber);
}

export function formatDateTime(
    datetime = [],
    format = ["-", "-", " ", ":", ":"]
) {
    let result = "";
    datetime.forEach((d, i) => {
        result += i < 5 ? d + format[i] : d;
    });
    return result;
}

export function formatUTCDateTime(datetime) {
    if (!(datetime instanceof Date)) datetime = new Date(datetime);
    datetime = getUTCDateTime(datetime);
    const format = ["-", "-", " ", ":", ":"];
    let result = "";
    datetime.forEach((d, i) => {
        result += i < 5 ? d + format[i] : d;
    });
    return result;
}