/**
 * Функція, що форматує URI WebSocket.
 * @function
 * @param {string} host - Хост.
 * @returns {string} - URI WebSocket.
 */
export function formatWebSocketUri(host) {
    return host.replace(/^http/, 'ws');
}
/**
 * Функція, що форматує базовий URI.
 * @function
 * @param {string} host - Хост.
 * @returns {string} - Базовий URI.
 */
export function formatBaseUri(host) {
    let res = host.replace(/^ws/, 'http');
    if (res.endsWith('/')) {
        res = res.slice(0, -1);
    }
    if (res.endsWith('/ws')) {
        res = res.slice(0, -3);
    }
    return res;
}
/**
 * Функція, що розбиває рядок на частини заданої довжини.
 * @function
 * @param {string} str - Рядок.
 * @param {number} len - Довжина частини.
 * @returns {string[]} - Масив частин рядка.
 */
export function chunkString(str, len) {
    const size = Math.ceil(str.length / len);
    const r = new Array(size);
    let offset = 0;
    for (let i = 0; i < size; i++) {
        r[i] = str.substring(offset, offset + len);
        offset += len;
    }
    return r;
}
export function generateId() {
    return String(Date.now().toString(32) + Math.random().toString(16)).replace(/\./g, '');
}
export function generateTimestampFilename() {
    const now = new Date();
    const pad = (num) => String(num).padStart(2, '0');
    const year = now.getFullYear();
    const month = pad(now.getMonth() + 1);
    const day = pad(now.getDate());
    const hours = pad(now.getHours());
    const minutes = pad(now.getMinutes());
    const seconds = pad(now.getSeconds());
    const dateString = `${year}-${month}-${day}`;
    const timeString = `${hours}_${minutes}_${seconds}`;
    return `${dateString}_${timeString}`;
}
//# sourceMappingURL=utils.js.map