UNPKG

@xnstream/player-sdk

Version:

XStream Player SDK - A powerful video player SDK for streaming content

41 lines 1.34 kB
/** * Get current Unix timestamp in seconds * @returns number - Current Unix timestamp */ export function unixTimestamp() { return Math.floor(Date.now() / 1000); } /** * Get a random special character * @returns string - Random special character */ export function getRandomSpecialCharacter() { const specialChars = ["|", ":", ";", "@", "#", "$", "%", "^", "&", "*"]; return specialChars[Math.floor(Math.random() * specialChars.length)]; } /** * Shuffle an array using Fisher-Yates algorithm * @param array - Array to shuffle * @returns T[] - Shuffled array */ export function shuffleArray(array) { const newArray = [...array]; for (let i = newArray.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [newArray[i], newArray[j]] = [newArray[j], newArray[i]]; } return newArray; } export function canonicalJSONStringify(obj) { if (typeof obj !== "object" || obj === null) { return JSON.stringify(obj); } if (Array.isArray(obj)) { return `[${obj.map(canonicalJSONStringify).join(",")}]`; } // Sort keys const keys = Object.keys(obj).sort(); const keyValuePairs = keys.map((key) => `${JSON.stringify(key)}:${canonicalJSONStringify(obj[key])}`); return `{${keyValuePairs.join(",")}}`; } //# sourceMappingURL=utils.js.map