UNPKG

cargodb

Version:

A local database provider for electron

1 lines 13.1 kB
{"id":"../node_modules/nanoid/format.js","dependencies":[{"name":"/home/phoenix/Desktop/Projects/CargoDB/package.json","includedInParent":true,"mtime":1588774568959},{"name":"/home/phoenix/Desktop/Projects/CargoDB/node_modules/nanoid/package.json","includedInParent":true,"mtime":1586516094699}],"generated":{"js":"/**\n * Secure random string generator with custom alphabet.\n *\n * Alphabet must contain 256 symbols or less. Otherwise, the generator\n * will not be secure.\n *\n * @param {generator} random The random bytes generator.\n * @param {string} alphabet Symbols to be used in new random string.\n * @param {size} size The number of symbols in new random string.\n *\n * @return {string} Random string.\n *\n * @example\n * const format = require('nanoid/format')\n *\n * function random (size) {\n * const result = []\n * for (let i = 0; i < size; i++) {\n * result.push(randomByte())\n * }\n * return result\n * }\n *\n * format(random, \"abcdef\", 5) //=> \"fbaef\"\n *\n * @name format\n * @function\n */\nmodule.exports = function (random, alphabet, size) {\n // We can’t use bytes bigger than the alphabet. To make bytes values closer\n // to the alphabet, we apply bitmask on them. We look for the closest\n // `2 ** x - 1` number, which will be bigger than alphabet size. If we have\n // 30 symbols in the alphabet, we will take 31 (00011111).\n var mask = (2 << 31 - Math.clz32((alphabet.length - 1) | 1)) - 1\n // Bitmask is not a perfect solution (in our example it will pass 31 bytes,\n // which is bigger than the alphabet). As a result, we will need more bytes,\n // than ID size, because we will refuse bytes bigger than the alphabet.\n\n // Every hardware random generator call is costly,\n // because we need to wait for entropy collection. This is why often it will\n // be faster to ask for few extra bytes in advance, to avoid additional calls.\n\n // Here we calculate how many random bytes should we call in advance.\n // It depends on ID length, mask / alphabet size and magic number 1.6\n // (which was selected according benchmarks).\n var step = Math.ceil(1.6 * mask * size / alphabet.length)\n var id = ''\n\n while (true) {\n var bytes = random(step)\n // Compact alternative for `for (var i = 0; i < step; i++)`\n var i = step\n while (i--) {\n // If random byte is bigger than alphabet even after bitmask,\n // we refuse it by `|| ''`.\n id += alphabet[bytes[i] & mask] || ''\n // More compact than `id.length + 1 === size`\n if (id.length === +size) return id\n }\n }\n}\n\n/**\n * @callback generator\n * @param {number} bytes The number of bytes to generate.\n * @return {number[]} Random bytes.\n */\n"},"sourceMaps":{"js":{"mappings":[{"source":"../node_modules/nanoid/format.js","original":{"line":1,"column":0},"generated":{"line":1,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":2,"column":0},"generated":{"line":2,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":3,"column":0},"generated":{"line":3,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":4,"column":0},"generated":{"line":4,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":5,"column":0},"generated":{"line":5,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":6,"column":0},"generated":{"line":6,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":7,"column":0},"generated":{"line":7,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":8,"column":0},"generated":{"line":8,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":9,"column":0},"generated":{"line":9,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":10,"column":0},"generated":{"line":10,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":11,"column":0},"generated":{"line":11,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":12,"column":0},"generated":{"line":12,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":13,"column":0},"generated":{"line":13,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":14,"column":0},"generated":{"line":14,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":15,"column":0},"generated":{"line":15,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":16,"column":0},"generated":{"line":16,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":17,"column":0},"generated":{"line":17,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":18,"column":0},"generated":{"line":18,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":19,"column":0},"generated":{"line":19,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":20,"column":0},"generated":{"line":20,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":21,"column":0},"generated":{"line":21,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":22,"column":0},"generated":{"line":22,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":23,"column":0},"generated":{"line":23,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":24,"column":0},"generated":{"line":24,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":25,"column":0},"generated":{"line":25,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":26,"column":0},"generated":{"line":26,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":27,"column":0},"generated":{"line":27,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":28,"column":0},"generated":{"line":28,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":29,"column":0},"generated":{"line":29,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":30,"column":0},"generated":{"line":30,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":31,"column":0},"generated":{"line":31,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":32,"column":0},"generated":{"line":32,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":33,"column":0},"generated":{"line":33,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":34,"column":0},"generated":{"line":34,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":35,"column":0},"generated":{"line":35,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":36,"column":0},"generated":{"line":36,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":37,"column":0},"generated":{"line":37,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":38,"column":0},"generated":{"line":38,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":39,"column":0},"generated":{"line":39,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":40,"column":0},"generated":{"line":40,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":41,"column":0},"generated":{"line":41,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":42,"column":0},"generated":{"line":42,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":43,"column":0},"generated":{"line":43,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":44,"column":0},"generated":{"line":44,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":45,"column":0},"generated":{"line":45,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":46,"column":0},"generated":{"line":46,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":47,"column":0},"generated":{"line":47,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":48,"column":0},"generated":{"line":48,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":49,"column":0},"generated":{"line":49,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":50,"column":0},"generated":{"line":50,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":51,"column":0},"generated":{"line":51,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":52,"column":0},"generated":{"line":52,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":53,"column":0},"generated":{"line":53,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":54,"column":0},"generated":{"line":54,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":55,"column":0},"generated":{"line":55,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":56,"column":0},"generated":{"line":56,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":57,"column":0},"generated":{"line":57,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":58,"column":0},"generated":{"line":58,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":59,"column":0},"generated":{"line":59,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":60,"column":0},"generated":{"line":60,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":61,"column":0},"generated":{"line":61,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":62,"column":0},"generated":{"line":62,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":63,"column":0},"generated":{"line":63,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":64,"column":0},"generated":{"line":64,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":65,"column":0},"generated":{"line":65,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":66,"column":0},"generated":{"line":66,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":67,"column":0},"generated":{"line":67,"column":0}},{"source":"../node_modules/nanoid/format.js","original":{"line":68,"column":0},"generated":{"line":68,"column":0}}],"sources":{"../node_modules/nanoid/format.js":"/**\n * Secure random string generator with custom alphabet.\n *\n * Alphabet must contain 256 symbols or less. Otherwise, the generator\n * will not be secure.\n *\n * @param {generator} random The random bytes generator.\n * @param {string} alphabet Symbols to be used in new random string.\n * @param {size} size The number of symbols in new random string.\n *\n * @return {string} Random string.\n *\n * @example\n * const format = require('nanoid/format')\n *\n * function random (size) {\n * const result = []\n * for (let i = 0; i < size; i++) {\n * result.push(randomByte())\n * }\n * return result\n * }\n *\n * format(random, \"abcdef\", 5) //=> \"fbaef\"\n *\n * @name format\n * @function\n */\nmodule.exports = function (random, alphabet, size) {\n // We can’t use bytes bigger than the alphabet. To make bytes values closer\n // to the alphabet, we apply bitmask on them. We look for the closest\n // `2 ** x - 1` number, which will be bigger than alphabet size. If we have\n // 30 symbols in the alphabet, we will take 31 (00011111).\n var mask = (2 << 31 - Math.clz32((alphabet.length - 1) | 1)) - 1\n // Bitmask is not a perfect solution (in our example it will pass 31 bytes,\n // which is bigger than the alphabet). As a result, we will need more bytes,\n // than ID size, because we will refuse bytes bigger than the alphabet.\n\n // Every hardware random generator call is costly,\n // because we need to wait for entropy collection. This is why often it will\n // be faster to ask for few extra bytes in advance, to avoid additional calls.\n\n // Here we calculate how many random bytes should we call in advance.\n // It depends on ID length, mask / alphabet size and magic number 1.6\n // (which was selected according benchmarks).\n var step = Math.ceil(1.6 * mask * size / alphabet.length)\n var id = ''\n\n while (true) {\n var bytes = random(step)\n // Compact alternative for `for (var i = 0; i < step; i++)`\n var i = step\n while (i--) {\n // If random byte is bigger than alphabet even after bitmask,\n // we refuse it by `|| ''`.\n id += alphabet[bytes[i] & mask] || ''\n // More compact than `id.length + 1 === size`\n if (id.length === +size) return id\n }\n }\n}\n\n/**\n * @callback generator\n * @param {number} bytes The number of bytes to generate.\n * @return {number[]} Random bytes.\n */\n"},"lineCount":68}},"error":null,"hash":"095a3d59fa710793a0237bc0eb3cb611","cacheData":{"env":{}}}