UNPKG

@tsailab/xai

Version:

The loto-xai is an openai nodejs sdk compatible extension library.

65 lines 2.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CHAT_MESSAGEID_SEED = exports.COMMON_ALPHABET_SEED = exports.REQID_ALPHABET_SEED = exports.BASE58_ALPHABET_SEED = void 0; exports.createRequestId = createRequestId; exports.createBase58RandomId = createBase58RandomId; exports.createClientId = createClientId; exports.createChatid = createChatid; exports.createChatMessageId = createChatMessageId; const nanoid_1 = require("nanoid"); exports.BASE58_ALPHABET_SEED = '123456789abcdefjhijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'; exports.REQID_ALPHABET_SEED = '0123456789abcdefghijkmnpqrstuvwxyz._'; exports.COMMON_ALPHABET_SEED = '123456789fghijkmnpqrstuvwxyzACDEFGHJMNPQRSTUVWXYZ-_'; exports.CHAT_MESSAGEID_SEED = '123456789fghijkmnpqrstuvwxyzACDEFGHJMNPQRSTUVWXYZ.$'; function createRequestId() { return (0, nanoid_1.nanoid)(); } /** * * @param len min 6 max 40 * @returns string */ function createBase58RandomId(len = 16) { let size = len; if (size < 6) { size = 6; } if (size > 40) { size = 40; } const customNanoid = (0, nanoid_1.customAlphabet)(exports.BASE58_ALPHABET_SEED, size); return customNanoid(); } /** * * @param prefix * @returns */ function createClientId(prefix = '') { const customNanoid = (0, nanoid_1.customAlphabet)(exports.COMMON_ALPHABET_SEED, 16); const id = customNanoid(); return prefix?.trim().length ? `${prefix.trim()}_${id}` : `loto_${id}`; } /** * * @param prefix * @returns */ function createChatid(prefix = 'xchat') { const customNanoid = (0, nanoid_1.customAlphabet)('123456789fghijkmnpqrstuvwxyzACDEFGHJMNPQRSTUVWXYZ', 16); const id = customNanoid(); return prefix?.trim().length ? `${prefix.trim()}_${id}` : `xchat_${id}`; } /** * chat message id * @param len * @param uuid * @returns */ function createChatMessageId(len = 20, uuid) { const size = len > 10 && len < 32 ? len : 20; const customNanoid = (0, nanoid_1.customAlphabet)('.123456789.fghijkmnpqrstuvwxyz.ACDEFGHJMNPQRSTUVWXYZ.', size); const id = customNanoid(); return uuid ? `${uuid}-${id}` : id; } //# sourceMappingURL=uuid.util.js.map