@gladiaio/sdk
Version:
Gladia JavaScript/TypeScript SDK
40 lines (38 loc) • 1.43 kB
JavaScript
//#region src/helpers.ts
function deepMergeObjects(obj1, obj2) {
obj1 = { ...obj1 };
if (!obj2) return obj1;
for (const [key, value] of Object.entries(obj2)) {
if (value == null) continue;
if (obj1[key] && typeof obj1[key] === "object" && typeof value === "object") obj1[key] = deepMergeObjects(obj1[key], value);
else obj1[key] = value;
}
return obj1;
}
function getEnv(envVariableName, defaultValue) {
if (typeof process === "undefined" || typeof process.env === "undefined") return defaultValue;
return process.env[envVariableName] ?? defaultValue;
}
async function sleep(ms) {
await new Promise((resolve) => setTimeout(resolve, ms));
}
function isSharedArrayBuffer(audio) {
return typeof SharedArrayBuffer !== "undefined" && audio instanceof SharedArrayBuffer;
}
function toUint8Array(audio) {
if (isSharedArrayBuffer(audio)) return new Uint8Array(audio);
return new Uint8Array(audio);
}
function concatArrayBuffer(buffer1, buffer2) {
const newBuffer = new Uint8Array((buffer1?.byteLength ?? 0) + (buffer2?.byteLength ?? 0));
if (buffer1) newBuffer.set(new Uint8Array(buffer1), 0);
if (buffer2) newBuffer.set(new Uint8Array(buffer2), buffer1?.byteLength ?? 0);
return newBuffer;
}
//#endregion
exports.concatArrayBuffer = concatArrayBuffer;
exports.deepMergeObjects = deepMergeObjects;
exports.getEnv = getEnv;
exports.sleep = sleep;
exports.toUint8Array = toUint8Array;
//# sourceMappingURL=helpers.cjs.map