utils.ts
TLDR
This file contains a class Utils
with a static method createGuid()
that generates a GUID (Globally Unique Identifier) string.
Classes
Utils
This class provides utility functions. The createGuid()
method generates a unique GUID string. It uses the crypto
module to generate random bytes and convert them to hexadecimal values. The generated GUID follows the pattern xxxxxxxx-xxxx-4xxx-8xxx-xxxxxxxxxxxx
, where each x
is replaced with a random hexadecimal digit.
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import * as crypto from 'crypto'
class Utils {
static createGuid(): string {
function randomDigit() {
if (crypto && crypto.randomBytes) {
const rands = crypto.randomBytes(1)
return (rands[0] % 16).toString(16)
}
return (Math.floor((Math.random() * 16))).toString(16)
}
return 'xxxxxxxx-xxxx-4xxx-8xxx-xxxxxxxxxxxx'.replace(/x/g, randomDigit)
}
}
export { Utils }