@copilotkit/shared
Version:
<img src="https://github.com/user-attachments/assets/0a6b64d9-e193-4940-a3f6-60334ac34084" alt="banner" style="border-radius: 12px; border: 2px solid #d6d4fa;" />
38 lines (36 loc) • 1.27 kB
JavaScript
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
let uuid = require("uuid");
//#region src/utils/random-id.ts
function randomId() {
return "ck-" + (0, uuid.v4)();
}
function randomUUID() {
return (0, uuid.v4)();
}
/**
* Recursively converts an object to a serializable form by converting functions to their string representation.
*/
function toSerializable(value) {
if (typeof value === "function") return value.toString();
if (Array.isArray(value)) return value.map(toSerializable);
if (value !== null && typeof value === "object") {
const result = {};
for (const key of Object.keys(value)) result[key] = toSerializable(value[key]);
return result;
}
return value;
}
function dataToUUID(input, namespace) {
const BASE_NAMESPACE = "e4b01160-ff74-4c6e-9b27-d53cd930fe8e";
const boundNamespace = namespace ? (0, uuid.v5)(namespace, BASE_NAMESPACE) : BASE_NAMESPACE;
return (0, uuid.v5)(typeof input === "string" ? input : JSON.stringify(toSerializable(input)), boundNamespace);
}
function isValidUUID(uuid$1) {
return (0, uuid.validate)(uuid$1);
}
//#endregion
exports.dataToUUID = dataToUUID;
exports.isValidUUID = isValidUUID;
exports.randomId = randomId;
exports.randomUUID = randomUUID;
//# sourceMappingURL=random-id.cjs.map