1. libj-guid
## Unique id generator for browser
libj-guid
Package: libj-guid
Created by: saeidjoker
Last modified: Sat, 07 May 2022 23:07:53 GMT
Version: 1.3.0
License: ISC
Downloads: 9
Repository: https://github.com/saeidjoker/libj-guid

Install

npm install libj-guid
yarn add libj-guid

libj-guid

Part of libj tools

GUID generator for browser

Usage (npm)

npm install libj-guid
import { guid } from 'libj-guid'

var guidWithoutHyphen = guid.create();
//aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee


var guidWithHyphen = guid.create(true);
//aaaaaaaabbbbccccddddeeeeeeeeeeee


var emptyGuid = guid.empty();
//00000000-0000-0000-0000-000000000000

var emptyGuidNoHyphen = guid.emptyNoHyphen();
//00000000000000000000000000000000


var id = guid.newId();
//e_aaaaaaaabbbbccccddddeeeeeeeeeeee

Test

  • Run this in a separate command line to start node server
node server.js
  • Run one of the following to re-create bundles
npm run dev
npm run dev:watch
  • Navigate to http://localhost:3000

Build

npm run build
npm run build:watch

Make sure to test everything in all browsers (specially IE 10/11)

Source:

export default class Guid {
    /**
     * Creates a new guid
     * @param {Boolean} hyphen if true then the guid will be like aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee otherwise there will be no hyphen
     * @returns {String}
     */
    create(hyphen) {
        function s4() {
            return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
        }
        if (hyphen === undefined || hyphen === null) {
            return `${s4()}${s4()}${s4()}${s4()}${s4()}${s4()}${s4()}${s4()}`;
        }
        return `${s4()}${s4()}-${s4()}-${s4()}-${s4()}-${s4()}${s4()}${s4()}`;
    }
    /**
     * Returns a new random id using create(false)
     * @returns {String}
     */
    newId() {
        return `e_${this.create()}`;
    }
    /**
     * Empty value for guid : '00000000-0000-0000-0000-000000000000'
     * @returns {String}
     */
    empty() {
        return '00000000-0000-0000-0000-000000000000';
    }
    /**
     * Empty value for guid : '00000000000000000000000000000000'
     * @returns {String}
     */
    emptyNoHyphen() {
        return '00000000000000000000000000000000';
    }
}

Dependencies

RELATED POST

Enhancing Vue.js Development: Harnessing the Potential of Vue-Loader

Enhancing Vue.js Development: Harnessing the Potential of Vue-Loader

Simplify Data Validation in Vue.js: A Step-by-Step Guide to Using Regex

Simplify Data Validation in Vue.js: A Step-by-Step Guide to Using Regex

Troubleshooting Made Easy: Common Issues and Solutions with vue-loader Without vue-cli

Troubleshooting Made Easy: Common Issues and Solutions with vue-loader Without vue-cli

Optimizing Webpack 4 with Vue CLI 3: Disabling the Cache-Loader

Optimizing Webpack 4 with Vue CLI 3: Disabling the Cache-Loader

Step-by-Step Guide: How to Add a Function to Your Vuex Plugin

Step-by-Step Guide: How to Add a Function to Your Vuex Plugin