All checks were successful
/ build (map[dockerfile:./services/hasura/Dockerfile name:hasura]) (push) Successful in 47s
/ build (map[dockerfile:./services/web/Dockerfile name:web]) (push) Successful in 1m47s
/ build (map[dockerfile:./services/watchers/Dockerfile name:watchers]) (push) Successful in 2m37s
/ build (map[dockerfile:./services/files/Dockerfile name:files]) (push) Successful in 2m52s
/ build (map[dockerfile:./services/api/Dockerfile name:api]) (push) Successful in 3m2s
/ build (map[dockerfile:./services/app/Dockerfile name:app]) (push) Successful in 31s
/ build (map[dockerfile:./services/tasks/Dockerfile name:tasks]) (push) Successful in 2m44s
/ deploy (push) Successful in 48s
24 lines
683 B
JavaScript
24 lines
683 B
JavaScript
const capitalize = require("lodash.capitalize")
|
|
|
|
const generateLetterWordset = require("generate-letter-wordset")
|
|
|
|
// FNV-1a Hash function to convert UUID to integer
|
|
function fnv1aHash(str) {
|
|
const FNV_PRIME = 16777619
|
|
const FNV_OFFSET_BASIS = 2166136261
|
|
let hash = FNV_OFFSET_BASIS
|
|
|
|
for (let i = 0; i < str.length; i++) {
|
|
// eslint-disable-next-line no-bitwise
|
|
hash ^= str.charCodeAt(i)
|
|
// eslint-disable-next-line no-bitwise
|
|
hash = (hash * FNV_PRIME) >>> 0 // Convert to 32-bit unsigned integer
|
|
}
|
|
|
|
return hash
|
|
}
|
|
|
|
module.exports = function wordsUuid(uuid) {
|
|
const seed = fnv1aHash(uuid)
|
|
return generateLetterWordset(seed).map(capitalize).join(".")
|
|
}
|