UNPKG

bugcore

Version:

bugcore is a JavaScript library that provides a foundational architecture for object oriented JS

96 lines (74 loc) 2.93 kB
/* * Copyright (c) 2016 airbug Inc. http://airbug.com * * bugcore may be freely distributed under the MIT license. */ //------------------------------------------------------------------------------- // Annotations //------------------------------------------------------------------------------- //@Export('UuidGenerator') //@Require('Class') //@Require('Obj') //@Require('RandomUtil') //------------------------------------------------------------------------------- // Context //------------------------------------------------------------------------------- require('bugpack').context("*", function(bugpack) { //------------------------------------------------------------------------------- // BugPack //------------------------------------------------------------------------------- var Class = bugpack.require('Class'); var Obj = bugpack.require('Obj'); var RandomUtil = bugpack.require('RandomUtil'); //------------------------------------------------------------------------------- // Declare Class //------------------------------------------------------------------------------- /** * @class * @extends {Obj} */ var UuidGenerator = Class.extend(Obj, { _name: "UuidGenerator" }); //TODO BRN: Update this using https://github.com/broofa/node-uuid/blob/master/uuid.js //------------------------------------------------------------------------------- // Static Methods //------------------------------------------------------------------------------- /** * @static * @return {string} */ UuidGenerator.generateHex4 = function() { return RandomUtil.randomHex(4); }; /** * @static * @return {string} */ UuidGenerator.generateHexUuid = function() { return UuidGenerator.generateHex4() + UuidGenerator.generateHex4() + UuidGenerator.generateHex4() + UuidGenerator.generateHex4() + UuidGenerator.generateHex4() + UuidGenerator.generateHex4(); }; /** * @static * @return {string} */ UuidGenerator.generateShortHexUuid = function() { return UuidGenerator.generateHex4() + UuidGenerator.generateHex4(); }; /** * @static * @return {string} */ UuidGenerator.generateUuid = function() { return UuidGenerator.generateHex4() + UuidGenerator.generateHex4() + '-' + UuidGenerator.generateHex4() + '-' + UuidGenerator.generateHex4() + '-' + UuidGenerator.generateHex4() + '-' + UuidGenerator.generateHex4() + UuidGenerator.generateHex4() + UuidGenerator.generateHex4(); }; //------------------------------------------------------------------------------- // Exports //------------------------------------------------------------------------------- bugpack.export('UuidGenerator', UuidGenerator); });