michangarrito/apps/backend/node_modules/uid/secure/index.js
rckrdmrd 97f407c661 [MIGRATION-V2] feat: Migrar michangarrito a estructura v2
- Prefijo v2: MCH
- TRACEABILITY-MASTER.yml creado
- Listo para integracion como submodulo

Workspace: v2.0.0 | SIMCO: v4.0.0
2026-01-10 11:28:54 -06:00

20 lines
407 B
JavaScript

const { random } = require('@lukeed/csprng');
var IDX=256, HEX=[], SIZE=256*16, BUFFER;
while (IDX--) HEX[IDX] = (IDX + 256).toString(16).substring(1);
function uid(len) {
var str='', tmp=(len || 11), num=(1+tmp) / 2 | 0;
if (!BUFFER || ((IDX + num) > SIZE)) {
BUFFER = random(SIZE);
IDX = 0;
}
while (num--) {
str += HEX[BUFFER[IDX++]];
}
return str.substring(0, tmp);
}
exports.uid = uid;