node-red-contrib-web-worldmap 5.7.2 → 5.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -0
- package/README.md +3 -2
- package/node_modules/uuid/README.md +182 -177
- package/node_modules/uuid/dist/cjs/index.d.ts +15 -0
- package/node_modules/uuid/dist/cjs/index.js +31 -0
- package/node_modules/uuid/dist/cjs/max.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/max.js +3 -0
- package/node_modules/uuid/dist/cjs/md5.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/md5.js +13 -0
- package/node_modules/uuid/dist/cjs/native.d.ts +6 -0
- package/node_modules/uuid/dist/cjs/native.js +4 -0
- package/node_modules/uuid/dist/cjs/nil.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/nil.js +3 -0
- package/node_modules/uuid/dist/cjs/package.json +1 -0
- package/node_modules/uuid/dist/cjs/parse.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/parse.js +11 -0
- package/node_modules/uuid/dist/cjs/regex.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/regex.js +3 -0
- package/node_modules/uuid/dist/cjs/rng.d.ts +1 -0
- package/node_modules/uuid/dist/cjs/rng.js +13 -0
- package/node_modules/uuid/dist/cjs/sha1.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/sha1.js +13 -0
- package/node_modules/uuid/dist/cjs/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/cjs/stringify.js +39 -0
- package/node_modules/uuid/dist/cjs/types.d.ts +21 -0
- package/node_modules/uuid/dist/cjs/types.js +2 -0
- package/node_modules/uuid/dist/cjs/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/cjs/uuid-bin.js +72 -0
- package/node_modules/uuid/dist/cjs/v1.d.ts +11 -0
- package/node_modules/uuid/dist/cjs/v1.js +87 -0
- package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
- package/node_modules/uuid/dist/cjs/v3.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v3.js +14 -0
- package/node_modules/uuid/dist/cjs/v35.d.ts +7 -0
- package/node_modules/uuid/dist/cjs/v35.js +44 -0
- package/node_modules/uuid/dist/cjs/v4.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/v4.js +29 -0
- package/node_modules/uuid/dist/cjs/v5.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v5.js +14 -0
- package/node_modules/uuid/dist/cjs/v6.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/v6.js +22 -0
- package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
- package/node_modules/uuid/dist/cjs/v7.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v7.js +69 -0
- package/node_modules/uuid/dist/cjs/validate.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/validate.js +7 -0
- package/node_modules/uuid/dist/cjs/version.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/version.js +10 -0
- package/node_modules/uuid/dist/cjs-browser/index.d.ts +15 -0
- package/node_modules/uuid/dist/cjs-browser/index.js +31 -0
- package/node_modules/uuid/dist/cjs-browser/max.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/max.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/md5.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/md5.js +137 -0
- package/node_modules/uuid/dist/cjs-browser/native.d.ts +4 -0
- package/node_modules/uuid/dist/cjs-browser/native.js +4 -0
- package/node_modules/uuid/dist/cjs-browser/nil.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/nil.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/package.json +1 -0
- package/node_modules/uuid/dist/cjs-browser/parse.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/parse.js +11 -0
- package/node_modules/uuid/dist/cjs-browser/regex.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/regex.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/rng.d.ts +1 -0
- package/node_modules/uuid/dist/cjs-browser/rng.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/sha1.js +72 -0
- package/node_modules/uuid/dist/cjs-browser/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/cjs-browser/stringify.js +39 -0
- package/node_modules/uuid/dist/cjs-browser/types.d.ts +21 -0
- package/node_modules/uuid/dist/cjs-browser/types.js +2 -0
- package/node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +72 -0
- package/node_modules/uuid/dist/cjs-browser/v1.d.ts +11 -0
- package/node_modules/uuid/dist/cjs-browser/v1.js +87 -0
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +13 -0
- package/node_modules/uuid/dist/cjs-browser/v3.d.ts +9 -0
- package/node_modules/uuid/dist/cjs-browser/v3.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/v35.d.ts +7 -0
- package/node_modules/uuid/dist/cjs-browser/v35.js +44 -0
- package/node_modules/uuid/dist/cjs-browser/v4.d.ts +4 -0
- package/node_modules/uuid/dist/cjs-browser/v4.js +29 -0
- package/node_modules/uuid/dist/cjs-browser/v5.d.ts +9 -0
- package/node_modules/uuid/dist/cjs-browser/v5.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/v6.d.ts +4 -0
- package/node_modules/uuid/dist/cjs-browser/v6.js +22 -0
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +13 -0
- package/node_modules/uuid/dist/cjs-browser/v7.d.ts +9 -0
- package/node_modules/uuid/dist/cjs-browser/v7.js +69 -0
- package/node_modules/uuid/dist/cjs-browser/validate.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/validate.js +7 -0
- package/node_modules/uuid/dist/cjs-browser/version.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/version.js +10 -0
- package/node_modules/uuid/dist/esm/bin/uuid +2 -0
- package/node_modules/uuid/dist/esm/index.d.ts +15 -0
- package/node_modules/uuid/dist/{esm-node → esm}/index.js +9 -4
- package/node_modules/uuid/dist/esm/max.d.ts +2 -0
- package/node_modules/uuid/dist/esm/max.js +1 -0
- package/node_modules/uuid/dist/esm/md5.d.ts +4 -0
- package/node_modules/uuid/dist/esm/md5.js +11 -0
- package/node_modules/uuid/dist/esm/native.d.ts +6 -0
- package/node_modules/uuid/dist/esm/native.js +2 -0
- package/node_modules/uuid/dist/esm/nil.d.ts +2 -0
- package/node_modules/uuid/dist/esm/nil.js +1 -0
- package/node_modules/uuid/dist/esm/parse.d.ts +2 -0
- package/node_modules/uuid/dist/esm/parse.js +9 -0
- package/node_modules/uuid/dist/esm/regex.d.ts +2 -0
- package/node_modules/uuid/dist/esm/regex.js +1 -0
- package/node_modules/uuid/dist/esm/rng.d.ts +1 -0
- package/node_modules/uuid/dist/esm/rng.js +10 -0
- package/node_modules/uuid/dist/esm/sha1.d.ts +4 -0
- package/node_modules/uuid/dist/esm/sha1.js +11 -0
- package/node_modules/uuid/dist/esm/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/esm/stringify.js +35 -0
- package/node_modules/uuid/dist/esm/types.d.ts +21 -0
- package/node_modules/uuid/dist/esm/types.js +1 -0
- package/node_modules/uuid/dist/esm/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/esm/uuid-bin.js +70 -0
- package/node_modules/uuid/dist/esm/v1.d.ts +11 -0
- package/node_modules/uuid/dist/esm/v1.js +83 -0
- package/node_modules/uuid/dist/esm/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v1ToV6.js +10 -0
- package/node_modules/uuid/dist/esm/v3.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v3.js +9 -0
- package/node_modules/uuid/dist/esm/v35.d.ts +7 -0
- package/node_modules/uuid/dist/esm/v35.js +39 -0
- package/node_modules/uuid/dist/esm/v4.d.ts +4 -0
- package/node_modules/uuid/dist/esm/v4.js +27 -0
- package/node_modules/uuid/dist/esm/v5.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v5.js +9 -0
- package/node_modules/uuid/dist/esm/v6.d.ts +4 -0
- package/node_modules/uuid/dist/esm/v6.js +20 -0
- package/node_modules/uuid/dist/esm/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v6ToV1.js +10 -0
- package/node_modules/uuid/dist/esm/v7.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v7.js +65 -0
- package/node_modules/uuid/dist/esm/validate.d.ts +2 -0
- package/node_modules/uuid/dist/esm/validate.js +5 -0
- package/node_modules/uuid/dist/esm/version.d.ts +2 -0
- package/node_modules/uuid/dist/esm/version.js +8 -0
- package/node_modules/uuid/dist/esm-browser/index.d.ts +15 -0
- package/node_modules/uuid/dist/esm-browser/index.js +9 -4
- package/node_modules/uuid/dist/esm-browser/max.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/max.js +1 -0
- package/node_modules/uuid/dist/esm-browser/md5.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/md5.js +113 -193
- package/node_modules/uuid/dist/esm-browser/native.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/native.js +2 -0
- package/node_modules/uuid/dist/esm-browser/nil.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/nil.js +1 -1
- package/node_modules/uuid/dist/esm-browser/parse.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/parse.js +6 -32
- package/node_modules/uuid/dist/esm-browser/regex.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/regex.js +1 -1
- package/node_modules/uuid/dist/esm-browser/rng.d.ts +1 -0
- package/node_modules/uuid/dist/esm-browser/rng.js +8 -16
- package/node_modules/uuid/dist/esm-browser/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/sha1.js +62 -88
- package/node_modules/uuid/dist/esm-browser/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/esm-browser/stringify.js +32 -27
- package/node_modules/uuid/dist/esm-browser/types.d.ts +21 -0
- package/node_modules/uuid/dist/esm-browser/types.js +1 -0
- package/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/esm-browser/uuid-bin.js +70 -0
- package/node_modules/uuid/dist/esm-browser/v1.d.ts +11 -0
- package/node_modules/uuid/dist/esm-browser/v1.js +78 -90
- package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/v1ToV6.js +10 -0
- package/node_modules/uuid/dist/esm-browser/v3.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v3.js +8 -3
- package/node_modules/uuid/dist/esm-browser/v35.d.ts +7 -0
- package/node_modules/uuid/dist/esm-browser/v35.js +33 -58
- package/node_modules/uuid/dist/esm-browser/v4.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/v4.js +23 -20
- package/node_modules/uuid/dist/esm-browser/v5.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v5.js +8 -3
- package/node_modules/uuid/dist/esm-browser/v6.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/v6.js +20 -0
- package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/v6ToV1.js +10 -0
- package/node_modules/uuid/dist/esm-browser/v7.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v7.js +65 -0
- package/node_modules/uuid/dist/esm-browser/validate.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/validate.js +2 -4
- package/node_modules/uuid/dist/esm-browser/version.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/version.js +5 -8
- package/node_modules/uuid/package.json +80 -83
- package/package.json +4 -1
- package/worldmap/worldmap.js +7 -0
- package/worldmap.html +1 -1
- package/node_modules/uuid/CHANGELOG.md +0 -229
- package/node_modules/uuid/CONTRIBUTING.md +0 -18
- package/node_modules/uuid/dist/bin/uuid +0 -2
- package/node_modules/uuid/dist/esm-node/md5.js +0 -13
- package/node_modules/uuid/dist/esm-node/nil.js +0 -1
- package/node_modules/uuid/dist/esm-node/parse.js +0 -35
- package/node_modules/uuid/dist/esm-node/regex.js +0 -1
- package/node_modules/uuid/dist/esm-node/rng.js +0 -12
- package/node_modules/uuid/dist/esm-node/sha1.js +0 -13
- package/node_modules/uuid/dist/esm-node/stringify.js +0 -29
- package/node_modules/uuid/dist/esm-node/v1.js +0 -95
- package/node_modules/uuid/dist/esm-node/v3.js +0 -4
- package/node_modules/uuid/dist/esm-node/v35.js +0 -64
- package/node_modules/uuid/dist/esm-node/v4.js +0 -24
- package/node_modules/uuid/dist/esm-node/v5.js +0 -4
- package/node_modules/uuid/dist/esm-node/validate.js +0 -7
- package/node_modules/uuid/dist/esm-node/version.js +0 -11
- package/node_modules/uuid/dist/index.js +0 -79
- package/node_modules/uuid/dist/md5-browser.js +0 -223
- package/node_modules/uuid/dist/md5.js +0 -23
- package/node_modules/uuid/dist/nil.js +0 -8
- package/node_modules/uuid/dist/parse.js +0 -45
- package/node_modules/uuid/dist/regex.js +0 -8
- package/node_modules/uuid/dist/rng-browser.js +0 -26
- package/node_modules/uuid/dist/rng.js +0 -24
- package/node_modules/uuid/dist/sha1-browser.js +0 -104
- package/node_modules/uuid/dist/sha1.js +0 -23
- package/node_modules/uuid/dist/stringify.js +0 -39
- package/node_modules/uuid/dist/umd/uuid.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidNIL.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidParse.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidStringify.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidValidate.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidVersion.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidv1.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidv3.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidv4.min.js +0 -1
- package/node_modules/uuid/dist/umd/uuidv5.min.js +0 -1
- package/node_modules/uuid/dist/uuid-bin.js +0 -85
- package/node_modules/uuid/dist/v1.js +0 -107
- package/node_modules/uuid/dist/v3.js +0 -16
- package/node_modules/uuid/dist/v35.js +0 -78
- package/node_modules/uuid/dist/v4.js +0 -37
- package/node_modules/uuid/dist/v5.js +0 -16
- package/node_modules/uuid/dist/validate.js +0 -17
- package/node_modules/uuid/dist/version.js +0 -21
- package/node_modules/uuid/wrapper.mjs +0 -10
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const validate_js_1 = require("./validate.js");
|
|
4
|
+
function version(uuid) {
|
|
5
|
+
if (!(0, validate_js_1.default)(uuid)) {
|
|
6
|
+
throw TypeError('Invalid UUID');
|
|
7
|
+
}
|
|
8
|
+
return parseInt(uuid.slice(14, 15), 16);
|
|
9
|
+
}
|
|
10
|
+
exports.default = version;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type * from './types.js';
|
|
2
|
+
export { default as MAX } from './max.js';
|
|
3
|
+
export { default as NIL } from './nil.js';
|
|
4
|
+
export { default as parse } from './parse.js';
|
|
5
|
+
export { default as stringify } from './stringify.js';
|
|
6
|
+
export { default as v1 } from './v1.js';
|
|
7
|
+
export { default as v1ToV6 } from './v1ToV6.js';
|
|
8
|
+
export { default as v3 } from './v3.js';
|
|
9
|
+
export { default as v4 } from './v4.js';
|
|
10
|
+
export { default as v5 } from './v5.js';
|
|
11
|
+
export { default as v6 } from './v6.js';
|
|
12
|
+
export { default as v6ToV1 } from './v6ToV1.js';
|
|
13
|
+
export { default as v7 } from './v7.js';
|
|
14
|
+
export { default as validate } from './validate.js';
|
|
15
|
+
export { default as version } from './version.js';
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.version = exports.validate = exports.v7 = exports.v6ToV1 = exports.v6 = exports.v5 = exports.v4 = exports.v3 = exports.v1ToV6 = exports.v1 = exports.stringify = exports.parse = exports.NIL = exports.MAX = void 0;
|
|
4
|
+
var max_js_1 = require("./max.js");
|
|
5
|
+
Object.defineProperty(exports, "MAX", { enumerable: true, get: function () { return max_js_1.default; } });
|
|
6
|
+
var nil_js_1 = require("./nil.js");
|
|
7
|
+
Object.defineProperty(exports, "NIL", { enumerable: true, get: function () { return nil_js_1.default; } });
|
|
8
|
+
var parse_js_1 = require("./parse.js");
|
|
9
|
+
Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return parse_js_1.default; } });
|
|
10
|
+
var stringify_js_1 = require("./stringify.js");
|
|
11
|
+
Object.defineProperty(exports, "stringify", { enumerable: true, get: function () { return stringify_js_1.default; } });
|
|
12
|
+
var v1_js_1 = require("./v1.js");
|
|
13
|
+
Object.defineProperty(exports, "v1", { enumerable: true, get: function () { return v1_js_1.default; } });
|
|
14
|
+
var v1ToV6_js_1 = require("./v1ToV6.js");
|
|
15
|
+
Object.defineProperty(exports, "v1ToV6", { enumerable: true, get: function () { return v1ToV6_js_1.default; } });
|
|
16
|
+
var v3_js_1 = require("./v3.js");
|
|
17
|
+
Object.defineProperty(exports, "v3", { enumerable: true, get: function () { return v3_js_1.default; } });
|
|
18
|
+
var v4_js_1 = require("./v4.js");
|
|
19
|
+
Object.defineProperty(exports, "v4", { enumerable: true, get: function () { return v4_js_1.default; } });
|
|
20
|
+
var v5_js_1 = require("./v5.js");
|
|
21
|
+
Object.defineProperty(exports, "v5", { enumerable: true, get: function () { return v5_js_1.default; } });
|
|
22
|
+
var v6_js_1 = require("./v6.js");
|
|
23
|
+
Object.defineProperty(exports, "v6", { enumerable: true, get: function () { return v6_js_1.default; } });
|
|
24
|
+
var v6ToV1_js_1 = require("./v6ToV1.js");
|
|
25
|
+
Object.defineProperty(exports, "v6ToV1", { enumerable: true, get: function () { return v6ToV1_js_1.default; } });
|
|
26
|
+
var v7_js_1 = require("./v7.js");
|
|
27
|
+
Object.defineProperty(exports, "v7", { enumerable: true, get: function () { return v7_js_1.default; } });
|
|
28
|
+
var validate_js_1 = require("./validate.js");
|
|
29
|
+
Object.defineProperty(exports, "validate", { enumerable: true, get: function () { return validate_js_1.default; } });
|
|
30
|
+
var version_js_1 = require("./version.js");
|
|
31
|
+
Object.defineProperty(exports, "version", { enumerable: true, get: function () { return version_js_1.default; } });
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function md5(bytes) {
|
|
4
|
+
const words = uint8ToUint32(bytes);
|
|
5
|
+
const md5Bytes = wordsToMd5(words, bytes.length * 8);
|
|
6
|
+
return uint32ToUint8(md5Bytes);
|
|
7
|
+
}
|
|
8
|
+
function uint32ToUint8(input) {
|
|
9
|
+
const bytes = new Uint8Array(input.length * 4);
|
|
10
|
+
for (let i = 0; i < input.length * 4; i++) {
|
|
11
|
+
bytes[i] = (input[i >> 2] >>> ((i % 4) * 8)) & 0xff;
|
|
12
|
+
}
|
|
13
|
+
return bytes;
|
|
14
|
+
}
|
|
15
|
+
function getOutputLength(inputLength8) {
|
|
16
|
+
return (((inputLength8 + 64) >>> 9) << 4) + 14 + 1;
|
|
17
|
+
}
|
|
18
|
+
function wordsToMd5(x, len) {
|
|
19
|
+
const xpad = new Uint32Array(getOutputLength(len)).fill(0);
|
|
20
|
+
xpad.set(x);
|
|
21
|
+
xpad[len >> 5] |= 0x80 << len % 32;
|
|
22
|
+
xpad[xpad.length - 1] = len;
|
|
23
|
+
x = xpad;
|
|
24
|
+
let a = 1732584193;
|
|
25
|
+
let b = -271733879;
|
|
26
|
+
let c = -1732584194;
|
|
27
|
+
let d = 271733878;
|
|
28
|
+
for (let i = 0; i < x.length; i += 16) {
|
|
29
|
+
const olda = a;
|
|
30
|
+
const oldb = b;
|
|
31
|
+
const oldc = c;
|
|
32
|
+
const oldd = d;
|
|
33
|
+
a = md5ff(a, b, c, d, x[i], 7, -680876936);
|
|
34
|
+
d = md5ff(d, a, b, c, x[i + 1], 12, -389564586);
|
|
35
|
+
c = md5ff(c, d, a, b, x[i + 2], 17, 606105819);
|
|
36
|
+
b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330);
|
|
37
|
+
a = md5ff(a, b, c, d, x[i + 4], 7, -176418897);
|
|
38
|
+
d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426);
|
|
39
|
+
c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341);
|
|
40
|
+
b = md5ff(b, c, d, a, x[i + 7], 22, -45705983);
|
|
41
|
+
a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416);
|
|
42
|
+
d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417);
|
|
43
|
+
c = md5ff(c, d, a, b, x[i + 10], 17, -42063);
|
|
44
|
+
b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162);
|
|
45
|
+
a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682);
|
|
46
|
+
d = md5ff(d, a, b, c, x[i + 13], 12, -40341101);
|
|
47
|
+
c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290);
|
|
48
|
+
b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329);
|
|
49
|
+
a = md5gg(a, b, c, d, x[i + 1], 5, -165796510);
|
|
50
|
+
d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632);
|
|
51
|
+
c = md5gg(c, d, a, b, x[i + 11], 14, 643717713);
|
|
52
|
+
b = md5gg(b, c, d, a, x[i], 20, -373897302);
|
|
53
|
+
a = md5gg(a, b, c, d, x[i + 5], 5, -701558691);
|
|
54
|
+
d = md5gg(d, a, b, c, x[i + 10], 9, 38016083);
|
|
55
|
+
c = md5gg(c, d, a, b, x[i + 15], 14, -660478335);
|
|
56
|
+
b = md5gg(b, c, d, a, x[i + 4], 20, -405537848);
|
|
57
|
+
a = md5gg(a, b, c, d, x[i + 9], 5, 568446438);
|
|
58
|
+
d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690);
|
|
59
|
+
c = md5gg(c, d, a, b, x[i + 3], 14, -187363961);
|
|
60
|
+
b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501);
|
|
61
|
+
a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467);
|
|
62
|
+
d = md5gg(d, a, b, c, x[i + 2], 9, -51403784);
|
|
63
|
+
c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473);
|
|
64
|
+
b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734);
|
|
65
|
+
a = md5hh(a, b, c, d, x[i + 5], 4, -378558);
|
|
66
|
+
d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463);
|
|
67
|
+
c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562);
|
|
68
|
+
b = md5hh(b, c, d, a, x[i + 14], 23, -35309556);
|
|
69
|
+
a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060);
|
|
70
|
+
d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353);
|
|
71
|
+
c = md5hh(c, d, a, b, x[i + 7], 16, -155497632);
|
|
72
|
+
b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640);
|
|
73
|
+
a = md5hh(a, b, c, d, x[i + 13], 4, 681279174);
|
|
74
|
+
d = md5hh(d, a, b, c, x[i], 11, -358537222);
|
|
75
|
+
c = md5hh(c, d, a, b, x[i + 3], 16, -722521979);
|
|
76
|
+
b = md5hh(b, c, d, a, x[i + 6], 23, 76029189);
|
|
77
|
+
a = md5hh(a, b, c, d, x[i + 9], 4, -640364487);
|
|
78
|
+
d = md5hh(d, a, b, c, x[i + 12], 11, -421815835);
|
|
79
|
+
c = md5hh(c, d, a, b, x[i + 15], 16, 530742520);
|
|
80
|
+
b = md5hh(b, c, d, a, x[i + 2], 23, -995338651);
|
|
81
|
+
a = md5ii(a, b, c, d, x[i], 6, -198630844);
|
|
82
|
+
d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415);
|
|
83
|
+
c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905);
|
|
84
|
+
b = md5ii(b, c, d, a, x[i + 5], 21, -57434055);
|
|
85
|
+
a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571);
|
|
86
|
+
d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606);
|
|
87
|
+
c = md5ii(c, d, a, b, x[i + 10], 15, -1051523);
|
|
88
|
+
b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799);
|
|
89
|
+
a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359);
|
|
90
|
+
d = md5ii(d, a, b, c, x[i + 15], 10, -30611744);
|
|
91
|
+
c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380);
|
|
92
|
+
b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649);
|
|
93
|
+
a = md5ii(a, b, c, d, x[i + 4], 6, -145523070);
|
|
94
|
+
d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379);
|
|
95
|
+
c = md5ii(c, d, a, b, x[i + 2], 15, 718787259);
|
|
96
|
+
b = md5ii(b, c, d, a, x[i + 9], 21, -343485551);
|
|
97
|
+
a = safeAdd(a, olda);
|
|
98
|
+
b = safeAdd(b, oldb);
|
|
99
|
+
c = safeAdd(c, oldc);
|
|
100
|
+
d = safeAdd(d, oldd);
|
|
101
|
+
}
|
|
102
|
+
return Uint32Array.of(a, b, c, d);
|
|
103
|
+
}
|
|
104
|
+
function uint8ToUint32(input) {
|
|
105
|
+
if (input.length === 0) {
|
|
106
|
+
return new Uint32Array();
|
|
107
|
+
}
|
|
108
|
+
const output = new Uint32Array(getOutputLength(input.length * 8)).fill(0);
|
|
109
|
+
for (let i = 0; i < input.length; i++) {
|
|
110
|
+
output[i >> 2] |= (input[i] & 0xff) << ((i % 4) * 8);
|
|
111
|
+
}
|
|
112
|
+
return output;
|
|
113
|
+
}
|
|
114
|
+
function safeAdd(x, y) {
|
|
115
|
+
const lsw = (x & 0xffff) + (y & 0xffff);
|
|
116
|
+
const msw = (x >> 16) + (y >> 16) + (lsw >> 16);
|
|
117
|
+
return (msw << 16) | (lsw & 0xffff);
|
|
118
|
+
}
|
|
119
|
+
function bitRotateLeft(num, cnt) {
|
|
120
|
+
return (num << cnt) | (num >>> (32 - cnt));
|
|
121
|
+
}
|
|
122
|
+
function md5cmn(q, a, b, x, s, t) {
|
|
123
|
+
return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b);
|
|
124
|
+
}
|
|
125
|
+
function md5ff(a, b, c, d, x, s, t) {
|
|
126
|
+
return md5cmn((b & c) | (~b & d), a, b, x, s, t);
|
|
127
|
+
}
|
|
128
|
+
function md5gg(a, b, c, d, x, s, t) {
|
|
129
|
+
return md5cmn((b & d) | (c & ~d), a, b, x, s, t);
|
|
130
|
+
}
|
|
131
|
+
function md5hh(a, b, c, d, x, s, t) {
|
|
132
|
+
return md5cmn(b ^ c ^ d, a, b, x, s, t);
|
|
133
|
+
}
|
|
134
|
+
function md5ii(a, b, c, d, x, s, t) {
|
|
135
|
+
return md5cmn(c ^ (b | ~d), a, b, x, s, t);
|
|
136
|
+
}
|
|
137
|
+
exports.default = md5;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"commonjs"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const validate_js_1 = require("./validate.js");
|
|
4
|
+
function parse(uuid) {
|
|
5
|
+
if (!(0, validate_js_1.default)(uuid)) {
|
|
6
|
+
throw TypeError('Invalid UUID');
|
|
7
|
+
}
|
|
8
|
+
let v;
|
|
9
|
+
return Uint8Array.of((v = parseInt(uuid.slice(0, 8), 16)) >>> 24, (v >>> 16) & 0xff, (v >>> 8) & 0xff, v & 0xff, (v = parseInt(uuid.slice(9, 13), 16)) >>> 8, v & 0xff, (v = parseInt(uuid.slice(14, 18), 16)) >>> 8, v & 0xff, (v = parseInt(uuid.slice(19, 23), 16)) >>> 8, v & 0xff, ((v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000) & 0xff, (v / 0x100000000) & 0xff, (v >>> 24) & 0xff, (v >>> 16) & 0xff, (v >>> 8) & 0xff, v & 0xff);
|
|
10
|
+
}
|
|
11
|
+
exports.default = parse;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function rng(): Uint8Array;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
let getRandomValues;
|
|
4
|
+
const rnds8 = new Uint8Array(16);
|
|
5
|
+
function rng() {
|
|
6
|
+
if (!getRandomValues) {
|
|
7
|
+
if (typeof crypto === 'undefined' || !crypto.getRandomValues) {
|
|
8
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
9
|
+
}
|
|
10
|
+
getRandomValues = crypto.getRandomValues.bind(crypto);
|
|
11
|
+
}
|
|
12
|
+
return getRandomValues(rnds8);
|
|
13
|
+
}
|
|
14
|
+
exports.default = rng;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
function f(s, x, y, z) {
|
|
4
|
+
switch (s) {
|
|
5
|
+
case 0:
|
|
6
|
+
return (x & y) ^ (~x & z);
|
|
7
|
+
case 1:
|
|
8
|
+
return x ^ y ^ z;
|
|
9
|
+
case 2:
|
|
10
|
+
return (x & y) ^ (x & z) ^ (y & z);
|
|
11
|
+
case 3:
|
|
12
|
+
return x ^ y ^ z;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
function ROTL(x, n) {
|
|
16
|
+
return (x << n) | (x >>> (32 - n));
|
|
17
|
+
}
|
|
18
|
+
function sha1(bytes) {
|
|
19
|
+
const K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
|
|
20
|
+
const H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0];
|
|
21
|
+
const newBytes = new Uint8Array(bytes.length + 1);
|
|
22
|
+
newBytes.set(bytes);
|
|
23
|
+
newBytes[bytes.length] = 0x80;
|
|
24
|
+
bytes = newBytes;
|
|
25
|
+
const l = bytes.length / 4 + 2;
|
|
26
|
+
const N = Math.ceil(l / 16);
|
|
27
|
+
const M = new Array(N);
|
|
28
|
+
for (let i = 0; i < N; ++i) {
|
|
29
|
+
const arr = new Uint32Array(16);
|
|
30
|
+
for (let j = 0; j < 16; ++j) {
|
|
31
|
+
arr[j] =
|
|
32
|
+
(bytes[i * 64 + j * 4] << 24) |
|
|
33
|
+
(bytes[i * 64 + j * 4 + 1] << 16) |
|
|
34
|
+
(bytes[i * 64 + j * 4 + 2] << 8) |
|
|
35
|
+
bytes[i * 64 + j * 4 + 3];
|
|
36
|
+
}
|
|
37
|
+
M[i] = arr;
|
|
38
|
+
}
|
|
39
|
+
M[N - 1][14] = ((bytes.length - 1) * 8) / Math.pow(2, 32);
|
|
40
|
+
M[N - 1][14] = Math.floor(M[N - 1][14]);
|
|
41
|
+
M[N - 1][15] = ((bytes.length - 1) * 8) & 0xffffffff;
|
|
42
|
+
for (let i = 0; i < N; ++i) {
|
|
43
|
+
const W = new Uint32Array(80);
|
|
44
|
+
for (let t = 0; t < 16; ++t) {
|
|
45
|
+
W[t] = M[i][t];
|
|
46
|
+
}
|
|
47
|
+
for (let t = 16; t < 80; ++t) {
|
|
48
|
+
W[t] = ROTL(W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16], 1);
|
|
49
|
+
}
|
|
50
|
+
let a = H[0];
|
|
51
|
+
let b = H[1];
|
|
52
|
+
let c = H[2];
|
|
53
|
+
let d = H[3];
|
|
54
|
+
let e = H[4];
|
|
55
|
+
for (let t = 0; t < 80; ++t) {
|
|
56
|
+
const s = Math.floor(t / 20);
|
|
57
|
+
const T = (ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[t]) >>> 0;
|
|
58
|
+
e = d;
|
|
59
|
+
d = c;
|
|
60
|
+
c = ROTL(b, 30) >>> 0;
|
|
61
|
+
b = a;
|
|
62
|
+
a = T;
|
|
63
|
+
}
|
|
64
|
+
H[0] = (H[0] + a) >>> 0;
|
|
65
|
+
H[1] = (H[1] + b) >>> 0;
|
|
66
|
+
H[2] = (H[2] + c) >>> 0;
|
|
67
|
+
H[3] = (H[3] + d) >>> 0;
|
|
68
|
+
H[4] = (H[4] + e) >>> 0;
|
|
69
|
+
}
|
|
70
|
+
return Uint8Array.of(H[0] >> 24, H[0] >> 16, H[0] >> 8, H[0], H[1] >> 24, H[1] >> 16, H[1] >> 8, H[1], H[2] >> 24, H[2] >> 16, H[2] >> 8, H[2], H[3] >> 24, H[3] >> 16, H[3] >> 8, H[3], H[4] >> 24, H[4] >> 16, H[4] >> 8, H[4]);
|
|
71
|
+
}
|
|
72
|
+
exports.default = sha1;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.unsafeStringify = void 0;
|
|
4
|
+
const validate_js_1 = require("./validate.js");
|
|
5
|
+
const byteToHex = [];
|
|
6
|
+
for (let i = 0; i < 256; ++i) {
|
|
7
|
+
byteToHex.push((i + 0x100).toString(16).slice(1));
|
|
8
|
+
}
|
|
9
|
+
function unsafeStringify(arr, offset = 0) {
|
|
10
|
+
return (byteToHex[arr[offset + 0]] +
|
|
11
|
+
byteToHex[arr[offset + 1]] +
|
|
12
|
+
byteToHex[arr[offset + 2]] +
|
|
13
|
+
byteToHex[arr[offset + 3]] +
|
|
14
|
+
'-' +
|
|
15
|
+
byteToHex[arr[offset + 4]] +
|
|
16
|
+
byteToHex[arr[offset + 5]] +
|
|
17
|
+
'-' +
|
|
18
|
+
byteToHex[arr[offset + 6]] +
|
|
19
|
+
byteToHex[arr[offset + 7]] +
|
|
20
|
+
'-' +
|
|
21
|
+
byteToHex[arr[offset + 8]] +
|
|
22
|
+
byteToHex[arr[offset + 9]] +
|
|
23
|
+
'-' +
|
|
24
|
+
byteToHex[arr[offset + 10]] +
|
|
25
|
+
byteToHex[arr[offset + 11]] +
|
|
26
|
+
byteToHex[arr[offset + 12]] +
|
|
27
|
+
byteToHex[arr[offset + 13]] +
|
|
28
|
+
byteToHex[arr[offset + 14]] +
|
|
29
|
+
byteToHex[arr[offset + 15]]).toLowerCase();
|
|
30
|
+
}
|
|
31
|
+
exports.unsafeStringify = unsafeStringify;
|
|
32
|
+
function stringify(arr, offset = 0) {
|
|
33
|
+
const uuid = unsafeStringify(arr, offset);
|
|
34
|
+
if (!(0, validate_js_1.default)(uuid)) {
|
|
35
|
+
throw TypeError('Stringified UUID is invalid');
|
|
36
|
+
}
|
|
37
|
+
return uuid;
|
|
38
|
+
}
|
|
39
|
+
exports.default = stringify;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type UUIDTypes<TBuf extends Uint8Array = Uint8Array> = string | TBuf;
|
|
2
|
+
export type Version1Options = {
|
|
3
|
+
node?: Uint8Array;
|
|
4
|
+
clockseq?: number;
|
|
5
|
+
random?: Uint8Array;
|
|
6
|
+
rng?: () => Uint8Array;
|
|
7
|
+
msecs?: number;
|
|
8
|
+
nsecs?: number;
|
|
9
|
+
_v6?: boolean;
|
|
10
|
+
};
|
|
11
|
+
export type Version4Options = {
|
|
12
|
+
random?: Uint8Array;
|
|
13
|
+
rng?: () => Uint8Array;
|
|
14
|
+
};
|
|
15
|
+
export type Version6Options = Version1Options;
|
|
16
|
+
export type Version7Options = {
|
|
17
|
+
random?: Uint8Array;
|
|
18
|
+
msecs?: number;
|
|
19
|
+
seq?: number;
|
|
20
|
+
rng?: () => Uint8Array;
|
|
21
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const assert = require("assert");
|
|
4
|
+
const v1_js_1 = require("./v1.js");
|
|
5
|
+
const v3_js_1 = require("./v3.js");
|
|
6
|
+
const v4_js_1 = require("./v4.js");
|
|
7
|
+
const v5_js_1 = require("./v5.js");
|
|
8
|
+
const v6_js_1 = require("./v6.js");
|
|
9
|
+
const v7_js_1 = require("./v7.js");
|
|
10
|
+
function usage() {
|
|
11
|
+
console.log('Usage:');
|
|
12
|
+
console.log(' uuid');
|
|
13
|
+
console.log(' uuid v1');
|
|
14
|
+
console.log(' uuid v3 <name> <namespace uuid>');
|
|
15
|
+
console.log(' uuid v4');
|
|
16
|
+
console.log(' uuid v5 <name> <namespace uuid>');
|
|
17
|
+
console.log(' uuid v6');
|
|
18
|
+
console.log(' uuid v7');
|
|
19
|
+
console.log(' uuid --help');
|
|
20
|
+
console.log('\nNote: <namespace uuid> may be "URL" or "DNS" to use the corresponding UUIDs defined by RFC9562');
|
|
21
|
+
}
|
|
22
|
+
const args = process.argv.slice(2);
|
|
23
|
+
if (args.indexOf('--help') >= 0) {
|
|
24
|
+
usage();
|
|
25
|
+
process.exit(0);
|
|
26
|
+
}
|
|
27
|
+
const version = args.shift() || 'v4';
|
|
28
|
+
switch (version) {
|
|
29
|
+
case 'v1':
|
|
30
|
+
console.log((0, v1_js_1.default)());
|
|
31
|
+
break;
|
|
32
|
+
case 'v3': {
|
|
33
|
+
const name = args.shift();
|
|
34
|
+
let namespace = args.shift();
|
|
35
|
+
assert.ok(name != null, 'v3 name not specified');
|
|
36
|
+
assert.ok(namespace != null, 'v3 namespace not specified');
|
|
37
|
+
if (namespace === 'URL') {
|
|
38
|
+
namespace = v3_js_1.default.URL;
|
|
39
|
+
}
|
|
40
|
+
if (namespace === 'DNS') {
|
|
41
|
+
namespace = v3_js_1.default.DNS;
|
|
42
|
+
}
|
|
43
|
+
console.log((0, v3_js_1.default)(name, namespace));
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
case 'v4':
|
|
47
|
+
console.log((0, v4_js_1.default)());
|
|
48
|
+
break;
|
|
49
|
+
case 'v5': {
|
|
50
|
+
const name = args.shift();
|
|
51
|
+
let namespace = args.shift();
|
|
52
|
+
assert.ok(name != null, 'v5 name not specified');
|
|
53
|
+
assert.ok(namespace != null, 'v5 namespace not specified');
|
|
54
|
+
if (namespace === 'URL') {
|
|
55
|
+
namespace = v5_js_1.default.URL;
|
|
56
|
+
}
|
|
57
|
+
if (namespace === 'DNS') {
|
|
58
|
+
namespace = v5_js_1.default.DNS;
|
|
59
|
+
}
|
|
60
|
+
console.log((0, v5_js_1.default)(name, namespace));
|
|
61
|
+
break;
|
|
62
|
+
}
|
|
63
|
+
case 'v6':
|
|
64
|
+
console.log((0, v6_js_1.default)());
|
|
65
|
+
break;
|
|
66
|
+
case 'v7':
|
|
67
|
+
console.log((0, v7_js_1.default)());
|
|
68
|
+
break;
|
|
69
|
+
default:
|
|
70
|
+
usage();
|
|
71
|
+
process.exit(1);
|
|
72
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Version1Options } from './types.js';
|
|
2
|
+
type V1State = {
|
|
3
|
+
node?: Uint8Array;
|
|
4
|
+
clockseq?: number;
|
|
5
|
+
msecs?: number;
|
|
6
|
+
nsecs?: number;
|
|
7
|
+
};
|
|
8
|
+
declare function v1(options?: Version1Options, buf?: undefined, offset?: number): string;
|
|
9
|
+
declare function v1<Buf extends Uint8Array = Uint8Array>(options: Version1Options | undefined, buf: Buf, offset?: number): Buf;
|
|
10
|
+
export declare function updateV1State(state: V1State, now: number, rnds: Uint8Array): V1State;
|
|
11
|
+
export default v1;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateV1State = void 0;
|
|
4
|
+
const rng_js_1 = require("./rng.js");
|
|
5
|
+
const stringify_js_1 = require("./stringify.js");
|
|
6
|
+
const _state = {};
|
|
7
|
+
function v1(options, buf, offset) {
|
|
8
|
+
let bytes;
|
|
9
|
+
const isV6 = options?._v6 ?? false;
|
|
10
|
+
if (options) {
|
|
11
|
+
const optionsKeys = Object.keys(options);
|
|
12
|
+
if (optionsKeys.length === 1 && optionsKeys[0] === '_v6') {
|
|
13
|
+
options = undefined;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
if (options) {
|
|
17
|
+
bytes = v1Bytes(options.random ?? options.rng?.() ?? (0, rng_js_1.default)(), options.msecs, options.nsecs, options.clockseq, options.node, buf, offset);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
const now = Date.now();
|
|
21
|
+
const rnds = (0, rng_js_1.default)();
|
|
22
|
+
updateV1State(_state, now, rnds);
|
|
23
|
+
bytes = v1Bytes(rnds, _state.msecs, _state.nsecs, isV6 ? undefined : _state.clockseq, isV6 ? undefined : _state.node, buf, offset);
|
|
24
|
+
}
|
|
25
|
+
return buf ?? (0, stringify_js_1.unsafeStringify)(bytes);
|
|
26
|
+
}
|
|
27
|
+
function updateV1State(state, now, rnds) {
|
|
28
|
+
state.msecs ??= -Infinity;
|
|
29
|
+
state.nsecs ??= 0;
|
|
30
|
+
if (now === state.msecs) {
|
|
31
|
+
state.nsecs++;
|
|
32
|
+
if (state.nsecs >= 10000) {
|
|
33
|
+
state.node = undefined;
|
|
34
|
+
state.nsecs = 0;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
else if (now > state.msecs) {
|
|
38
|
+
state.nsecs = 0;
|
|
39
|
+
}
|
|
40
|
+
else if (now < state.msecs) {
|
|
41
|
+
state.node = undefined;
|
|
42
|
+
}
|
|
43
|
+
if (!state.node) {
|
|
44
|
+
state.node = rnds.slice(10, 16);
|
|
45
|
+
state.node[0] |= 0x01;
|
|
46
|
+
state.clockseq = ((rnds[8] << 8) | rnds[9]) & 0x3fff;
|
|
47
|
+
}
|
|
48
|
+
state.msecs = now;
|
|
49
|
+
return state;
|
|
50
|
+
}
|
|
51
|
+
exports.updateV1State = updateV1State;
|
|
52
|
+
function v1Bytes(rnds, msecs, nsecs, clockseq, node, buf, offset = 0) {
|
|
53
|
+
if (rnds.length < 16) {
|
|
54
|
+
throw new Error('Random bytes length must be >= 16');
|
|
55
|
+
}
|
|
56
|
+
if (!buf) {
|
|
57
|
+
buf = new Uint8Array(16);
|
|
58
|
+
offset = 0;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
if (offset < 0 || offset + 16 > buf.length) {
|
|
62
|
+
throw new RangeError(`UUID byte range ${offset}:${offset + 15} is out of buffer bounds`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
msecs ??= Date.now();
|
|
66
|
+
nsecs ??= 0;
|
|
67
|
+
clockseq ??= ((rnds[8] << 8) | rnds[9]) & 0x3fff;
|
|
68
|
+
node ??= rnds.slice(10, 16);
|
|
69
|
+
msecs += 12219292800000;
|
|
70
|
+
const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
|
|
71
|
+
buf[offset++] = (tl >>> 24) & 0xff;
|
|
72
|
+
buf[offset++] = (tl >>> 16) & 0xff;
|
|
73
|
+
buf[offset++] = (tl >>> 8) & 0xff;
|
|
74
|
+
buf[offset++] = tl & 0xff;
|
|
75
|
+
const tmh = ((msecs / 0x100000000) * 10000) & 0xfffffff;
|
|
76
|
+
buf[offset++] = (tmh >>> 8) & 0xff;
|
|
77
|
+
buf[offset++] = tmh & 0xff;
|
|
78
|
+
buf[offset++] = ((tmh >>> 24) & 0xf) | 0x10;
|
|
79
|
+
buf[offset++] = (tmh >>> 16) & 0xff;
|
|
80
|
+
buf[offset++] = (clockseq >>> 8) | 0x80;
|
|
81
|
+
buf[offset++] = clockseq & 0xff;
|
|
82
|
+
for (let n = 0; n < 6; ++n) {
|
|
83
|
+
buf[offset++] = node[n];
|
|
84
|
+
}
|
|
85
|
+
return buf;
|
|
86
|
+
}
|
|
87
|
+
exports.default = v1;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const parse_js_1 = require("./parse.js");
|
|
4
|
+
const stringify_js_1 = require("./stringify.js");
|
|
5
|
+
function v1ToV6(uuid) {
|
|
6
|
+
const v1Bytes = typeof uuid === 'string' ? (0, parse_js_1.default)(uuid) : uuid;
|
|
7
|
+
const v6Bytes = _v1ToV6(v1Bytes);
|
|
8
|
+
return typeof uuid === 'string' ? (0, stringify_js_1.unsafeStringify)(v6Bytes) : v6Bytes;
|
|
9
|
+
}
|
|
10
|
+
exports.default = v1ToV6;
|
|
11
|
+
function _v1ToV6(v1Bytes) {
|
|
12
|
+
return Uint8Array.of(((v1Bytes[6] & 0x0f) << 4) | ((v1Bytes[7] >> 4) & 0x0f), ((v1Bytes[7] & 0x0f) << 4) | ((v1Bytes[4] & 0xf0) >> 4), ((v1Bytes[4] & 0x0f) << 4) | ((v1Bytes[5] & 0xf0) >> 4), ((v1Bytes[5] & 0x0f) << 4) | ((v1Bytes[0] & 0xf0) >> 4), ((v1Bytes[0] & 0x0f) << 4) | ((v1Bytes[1] & 0xf0) >> 4), ((v1Bytes[1] & 0x0f) << 4) | ((v1Bytes[2] & 0xf0) >> 4), 0x60 | (v1Bytes[2] & 0x0f), v1Bytes[3], v1Bytes[8], v1Bytes[9], v1Bytes[10], v1Bytes[11], v1Bytes[12], v1Bytes[13], v1Bytes[14], v1Bytes[15]);
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { UUIDTypes } from './types.js';
|
|
2
|
+
export { DNS, URL } from './v35.js';
|
|
3
|
+
declare function v3(value: string | Uint8Array, namespace: UUIDTypes, buf?: undefined, offset?: number): string;
|
|
4
|
+
declare function v3<TBuf extends Uint8Array = Uint8Array>(value: string | Uint8Array, namespace: UUIDTypes, buf: TBuf, offset?: number): TBuf;
|
|
5
|
+
declare namespace v3 {
|
|
6
|
+
var DNS: string;
|
|
7
|
+
var URL: string;
|
|
8
|
+
}
|
|
9
|
+
export default v3;
|