Socket
Socket
Sign inDemoInstall

nanoid

Package Overview
Dependencies
Maintainers
1
Versions
100
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nanoid - npm Package Compare versions

Comparing version 2.1.3 to 2.1.4

4

async/format.js

@@ -32,3 +32,3 @@ /**

module.exports = function (random, alphabet, size) {
var mask = (2 << Math.log(alphabet.length - 1) / Math.LN2) - 1
var mask = (2 << 31 - Math.clz32((alphabet.length - 1) | 1)) - 1
var step = Math.ceil(1.6 * mask * size / alphabet.length)

@@ -39,3 +39,3 @@ size = +size

return random(step).then(function (bytes) {
for (var i = 0; i < step; i++) {
for (var i = step; i--;) {
var byte = bytes[i] & mask

@@ -42,0 +42,0 @@ if (alphabet[byte]) {

@@ -24,4 +24,2 @@ var random = require('./random')

*/
module.exports = function (alphabet, size) {
return format(random, alphabet, size)
}
module.exports = format.bind(null, random)

@@ -13,3 +13,3 @@ var crypto = self.crypto || self.msCrypto

var bytes = crypto.getRandomValues(new Uint8Array(size))
while (0 < size--) {
while (size--) {
id += url[bytes[size] & 63]

@@ -16,0 +16,0 @@ }

@@ -27,3 +27,3 @@ var random = require('./random')

var id = ''
while (0 < size--) {
while (size--) {
id += url[bytes[size] & 63]

@@ -30,0 +30,0 @@ }

# Change Log
This project adheres to [Semantic Versioning](http://semver.org/).
## 2.1.4
* Reduce `generate` size (by Vsevolod Rodionov).
* Reduce `format` and `format` size (by Victor).
* Reduce `async`, `non-secure` and `non-secure/generate` size.
* Speed up `format` and `async/format` (by Max Graey).
* Improve development process on Windows (by Stanislav Lashmanov).
## 2.1.3

@@ -5,0 +12,0 @@ * Improve performance (by Stephen Richardson).

@@ -30,13 +30,14 @@ /**

module.exports = function (random, alphabet, size) {
var mask = (2 << Math.log(alphabet.length - 1) / Math.LN2) - 1
var mask = (2 << 31 - Math.clz32((alphabet.length - 1) | 1)) - 1
var step = Math.ceil(1.6 * mask * size / alphabet.length)
var id = ''
size = +size
var id = ''
while (true) {
var bytes = random(step)
for (var i = 0; i < step; i++) {
for (var i = step; i--;) {
var byte = bytes[i] & mask
if (alphabet[byte]) {
id += alphabet[byte]
var alpha = alphabet[byte]
if (alpha) {
id += alpha
if (id.length === size) return id

@@ -43,0 +44,0 @@ }

@@ -22,4 +22,2 @@ var random = require('./random')

*/
module.exports = function (alphabet, size) {
return format(random, alphabet, size)
}
module.exports = format.bind(null, random)

@@ -30,5 +30,5 @@ if (process.env.NODE_ENV !== 'production') {

while (size--) {
id = id + url[bytes[size] & 63]
id += url[bytes[size] & 63]
}
return id
}

@@ -25,3 +25,3 @@ var random = require('./random')

var id = ''
while (0 < size--) {
while (size--) {
id += url[bytes[size] & 63]

@@ -28,0 +28,0 @@ }

@@ -20,3 +20,3 @@ /**

var id = ''
while (0 < size--) {
while (size--) {
id += alphabet[Math.random() * alphabet.length | 0]

@@ -23,0 +23,0 @@ }

@@ -21,3 +21,3 @@ var url = 'bjectSymhasOwnProp-0123456789ABCDEFGHIJKLMNQRTUVWXYZ_dfgiklquvxz'

var id = ''
while (0 < size--) {
while (size--) {
id += url[Math.random() * 64 | 0]

@@ -24,0 +24,0 @@ }

{
"name": "nanoid",
"version": "2.1.3",
"version": "2.1.4",
"description": "A tiny (139 bytes), secure URL-friendly unique string ID generator",

@@ -5,0 +5,0 @@ "keywords": [

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc