Skip to content
This repository was archived by the owner on May 12, 2023. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⛔️ Deprecated

ESM exports are now available directly from uuid. Additionally, types are available via @types/uuid

Enjoy using uuid directly from its maintainer

npm i --save uuid
npm i --save @types/uuid
import { v4 as uuidv4 } from 'uuid';
uuidv4();

uuid

This is a mirror of uuid, bundled and exposed as ES module

uuid is a javascript library for generation of RFC4122 UUIDS.

This mirror has been created because uuid uses CommonJS. Support for es modules has been requested here (#245)

Usage

Installing

npm install @bundled-es-modules/uuid

Importing

  //standalone modules
  import uuidv1 from "@bundled-es-modules/uuid/v1.js";
  import uuidv3 from "@bundled-es-modules/uuid/v3.js";
  import uuidv4 from "@bundled-es-modules/uuid/v4.js";
  import uuidv5 from "@bundled-es-modules/uuid/v5.js";

  //bundled index
  import { uuidv1, uuidv3, uuidv4, uuidv5 } from "@bundled-es-modules/uuid/index.js";

If using multiple uuid implementations, import from the index bundle. The index bundle may contain code shared by multiple implementations. Otherwise, standalone bundles are fine.

Generating uuids

Then generate your uuid version of choice ...

Version 1 (timestamp):

uuidv1(); // ⇨ '2c5ea4c0-4067-11e9-8bad-9b1deb4d3b7d'

Version 3 (namespace):

// ... using predefined DNS namespace (for domain names)
uuidv3('hello.example.com', uuidv3.DNS); // ⇨ '9125a8dc-52ee-365b-a5aa-81b0b3681cf6'

// ... using predefined URL namespace (for, well, URLs)
uuidv3('http://example.com/hello', uuidv3.URL); // ⇨ 'c6235813-3ba4-3801-ae84-e0a6ebb7d138'

// ... using a custom namespace
//
// Note: Custom namespaces should be a UUID string specific to your application!
// E.g. the one here was generated using this modules `uuid` CLI.
const MY_NAMESPACE = '1b671a64-40d5-491e-99b0-da01ff1f3341';
uuidv3('Hello, World!', MY_NAMESPACE); // ⇨ 'e8b5a51d-11c8-3310-a6ab-367563f20686'

Version 4 (random):

uuidv4(); // ⇨ '1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed'

Version 5 (namespace):

// ... using predefined DNS namespace (for domain names)
uuidv5('hello.example.com', uuidv5.DNS); // ⇨ 'fdda765f-fc57-5604-a269-52a7df8164ec'

// ... using predefined URL namespace (for, well, URLs)
uuidv5('http://example.com/hello', uuidv5.URL); // ⇨ '3bbcee75-cecc-5b56-8031-b6641c1ed1f1'

// ... using a custom namespace
//
// Note: Custom namespaces should be a UUID string specific to your application!
// E.g. the one here was generated using this modules `uuid` CLI.
const MY_NAMESPACE = '1b671a64-40d5-491e-99b0-da01ff1f3341';
uuidv5('Hello, World!', MY_NAMESPACE); // ⇨ '630eb68f-e0fa-5ecc-887a-7c7a62614681'

Building

ES modules are transpiled via rollup

npm run build

About

⛔️ DEPRECATED - mirror of uuid, bundled and exposed as ES module https://www.npmjs.com/package/uuid

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages