uuid 10.0.0 → 11.0.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 +170 -0
- package/README.md +71 -171
- package/dist/cjs/_types.d.ts +21 -0
- package/dist/cjs/_types.js +3 -0
- package/dist/cjs/index.d.ts +14 -0
- package/dist/cjs/index.js +32 -0
- package/dist/cjs/max.d.ts +2 -0
- package/dist/cjs/max.js +4 -0
- package/dist/cjs/md5.d.ts +2 -0
- package/dist/cjs/md5.js +14 -0
- package/dist/cjs/native.d.ts +5 -0
- package/dist/cjs/native.js +5 -0
- package/dist/cjs/nil.d.ts +2 -0
- package/dist/cjs/nil.js +4 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/parse.d.ts +2 -0
- package/dist/cjs/parse.js +12 -0
- package/dist/cjs/regex.d.ts +2 -0
- package/dist/cjs/regex.js +4 -0
- package/dist/cjs/rng.d.ts +1 -0
- package/dist/cjs/rng.js +14 -0
- package/dist/cjs/sha1.d.ts +2 -0
- package/dist/cjs/sha1.js +14 -0
- package/dist/cjs/stringify.d.ts +3 -0
- package/dist/cjs/stringify.js +39 -0
- package/dist/cjs/test/parse.test.d.ts +1 -0
- package/dist/cjs/test/parse.test.js +51 -0
- package/dist/cjs/test/rng.test.d.ts +1 -0
- package/dist/cjs/test/rng.test.js +15 -0
- package/dist/cjs/test/stringify.test.d.ts +1 -0
- package/dist/cjs/test/stringify.test.js +24 -0
- package/dist/cjs/test/test_constants.d.ts +33 -0
- package/dist/cjs/test/test_constants.js +92 -0
- package/dist/cjs/test/v1.test.d.ts +1 -0
- package/dist/cjs/test/v1.test.js +128 -0
- package/dist/cjs/test/v35.test.d.ts +1 -0
- package/dist/cjs/test/v35.test.js +144 -0
- package/dist/cjs/test/v4.test.d.ts +1 -0
- package/dist/cjs/test/v4.test.js +61 -0
- package/dist/cjs/test/v6.test.d.ts +1 -0
- package/dist/cjs/test/v6.test.js +57 -0
- package/dist/cjs/test/v7.test.d.ts +1 -0
- package/dist/cjs/test/v7.test.js +195 -0
- package/dist/cjs/test/validate.test.d.ts +1 -0
- package/dist/cjs/test/validate.test.js +14 -0
- package/dist/cjs/test/version.test.d.ts +1 -0
- package/dist/cjs/test/version.test.js +21 -0
- package/dist/cjs/uuid-bin.d.ts +1 -0
- package/dist/cjs/uuid-bin.js +73 -0
- package/dist/cjs/v1.d.ts +11 -0
- package/dist/cjs/v1.js +79 -0
- package/dist/cjs/v1ToV6.d.ts +2 -0
- package/dist/cjs/v1ToV6.js +14 -0
- package/dist/cjs/v3.d.ts +9 -0
- package/dist/cjs/v3.js +15 -0
- package/dist/cjs/v35.d.ts +7 -0
- package/dist/cjs/v35.js +42 -0
- package/dist/cjs/v4.d.ts +4 -0
- package/dist/cjs/v4.js +24 -0
- package/dist/cjs/v5.d.ts +9 -0
- package/dist/cjs/v5.js +15 -0
- package/dist/cjs/v6.d.ts +4 -0
- package/dist/cjs/v6.js +20 -0
- package/dist/cjs/v6ToV1.d.ts +2 -0
- package/dist/cjs/v6ToV1.js +14 -0
- package/dist/cjs/v7.d.ts +9 -0
- package/dist/cjs/v7.js +61 -0
- package/dist/cjs/validate.d.ts +2 -0
- package/dist/cjs/validate.js +8 -0
- package/dist/cjs/version.d.ts +2 -0
- package/dist/cjs/version.js +11 -0
- package/dist/cjs-browser/_types.d.ts +21 -0
- package/dist/cjs-browser/_types.js +3 -0
- package/dist/{esm-node/index.js → cjs-browser/index.d.ts} +1 -1
- package/dist/cjs-browser/index.js +32 -0
- package/dist/cjs-browser/max.d.ts +2 -0
- package/dist/cjs-browser/max.js +4 -0
- package/dist/cjs-browser/md5.d.ts +2 -0
- package/dist/cjs-browser/md5.js +138 -0
- package/dist/cjs-browser/native.d.ts +4 -0
- package/dist/cjs-browser/native.js +5 -0
- package/dist/cjs-browser/nil.d.ts +2 -0
- package/dist/cjs-browser/nil.js +4 -0
- package/dist/cjs-browser/package.json +1 -0
- package/dist/cjs-browser/parse.d.ts +2 -0
- package/dist/cjs-browser/parse.js +12 -0
- package/dist/cjs-browser/regex.d.ts +2 -0
- package/dist/cjs-browser/regex.js +4 -0
- package/dist/cjs-browser/rng.d.ts +1 -0
- package/dist/cjs-browser/rng.js +15 -0
- package/dist/cjs-browser/sha1.d.ts +2 -0
- package/dist/cjs-browser/sha1.js +73 -0
- package/dist/cjs-browser/stringify.d.ts +3 -0
- package/dist/cjs-browser/stringify.js +39 -0
- package/dist/cjs-browser/test/parse.test.d.ts +1 -0
- package/dist/cjs-browser/test/parse.test.js +51 -0
- package/dist/cjs-browser/test/rng.test.d.ts +1 -0
- package/dist/cjs-browser/test/rng.test.js +15 -0
- package/dist/cjs-browser/test/stringify.test.d.ts +1 -0
- package/dist/cjs-browser/test/stringify.test.js +24 -0
- package/dist/cjs-browser/test/test_constants.d.ts +33 -0
- package/dist/cjs-browser/test/test_constants.js +92 -0
- package/dist/cjs-browser/test/v1.test.d.ts +1 -0
- package/dist/cjs-browser/test/v1.test.js +128 -0
- package/dist/cjs-browser/test/v35.test.d.ts +1 -0
- package/dist/cjs-browser/test/v35.test.js +144 -0
- package/dist/cjs-browser/test/v4.test.d.ts +1 -0
- package/dist/cjs-browser/test/v4.test.js +61 -0
- package/dist/cjs-browser/test/v6.test.d.ts +1 -0
- package/dist/cjs-browser/test/v6.test.js +57 -0
- package/dist/cjs-browser/test/v7.test.d.ts +1 -0
- package/dist/cjs-browser/test/v7.test.js +195 -0
- package/dist/cjs-browser/test/validate.test.d.ts +1 -0
- package/dist/cjs-browser/test/validate.test.js +14 -0
- package/dist/cjs-browser/test/version.test.d.ts +1 -0
- package/dist/cjs-browser/test/version.test.js +21 -0
- package/dist/cjs-browser/uuid-bin.d.ts +1 -0
- package/dist/cjs-browser/uuid-bin.js +73 -0
- package/dist/cjs-browser/v1.d.ts +11 -0
- package/dist/cjs-browser/v1.js +79 -0
- package/dist/cjs-browser/v1ToV6.d.ts +2 -0
- package/dist/cjs-browser/v1ToV6.js +14 -0
- package/dist/cjs-browser/v3.d.ts +9 -0
- package/dist/cjs-browser/v3.js +15 -0
- package/dist/cjs-browser/v35.d.ts +7 -0
- package/dist/cjs-browser/v35.js +42 -0
- package/dist/cjs-browser/v4.d.ts +4 -0
- package/dist/cjs-browser/v4.js +24 -0
- package/dist/cjs-browser/v5.d.ts +9 -0
- package/dist/cjs-browser/v5.js +15 -0
- package/dist/cjs-browser/v6.d.ts +4 -0
- package/dist/cjs-browser/v6.js +20 -0
- package/dist/cjs-browser/v6ToV1.d.ts +2 -0
- package/dist/cjs-browser/v6ToV1.js +14 -0
- package/dist/cjs-browser/v7.d.ts +9 -0
- package/dist/cjs-browser/v7.js +61 -0
- package/dist/cjs-browser/validate.d.ts +2 -0
- package/dist/cjs-browser/validate.js +8 -0
- package/dist/cjs-browser/version.d.ts +2 -0
- package/dist/cjs-browser/version.js +11 -0
- package/dist/esm/_types.d.ts +21 -0
- package/dist/esm/_types.js +2 -0
- package/dist/esm/bin/uuid +2 -0
- package/dist/esm/index.d.ts +14 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/max.d.ts +2 -0
- package/dist/esm/max.js +2 -0
- package/dist/esm/md5.d.ts +2 -0
- package/dist/esm/md5.js +12 -0
- package/dist/esm/native.d.ts +5 -0
- package/dist/esm/native.js +3 -0
- package/dist/esm/nil.d.ts +2 -0
- package/dist/esm/nil.js +2 -0
- package/dist/esm/parse.d.ts +2 -0
- package/dist/esm/parse.js +10 -0
- package/dist/esm/regex.d.ts +2 -0
- package/dist/esm/regex.js +2 -0
- package/dist/esm/rng.d.ts +1 -0
- package/dist/esm/rng.js +11 -0
- package/dist/esm/sha1.d.ts +2 -0
- package/dist/esm/sha1.js +12 -0
- package/dist/esm/stringify.d.ts +3 -0
- package/dist/esm/stringify.js +36 -0
- package/dist/esm/test/parse.test.d.ts +1 -0
- package/dist/esm/test/parse.test.js +49 -0
- package/dist/esm/test/rng.test.d.ts +1 -0
- package/dist/esm/test/rng.test.js +13 -0
- package/dist/esm/test/stringify.test.d.ts +1 -0
- package/dist/esm/test/stringify.test.js +22 -0
- package/dist/esm/test/test_constants.d.ts +33 -0
- package/dist/esm/test/test_constants.js +89 -0
- package/dist/esm/test/v1.test.d.ts +1 -0
- package/dist/esm/test/v1.test.js +126 -0
- package/dist/esm/test/v35.test.d.ts +1 -0
- package/dist/esm/test/v35.test.js +142 -0
- package/dist/esm/test/v4.test.d.ts +1 -0
- package/dist/esm/test/v4.test.js +59 -0
- package/dist/esm/test/v6.test.d.ts +1 -0
- package/dist/esm/test/v6.test.js +55 -0
- package/dist/esm/test/v7.test.d.ts +1 -0
- package/dist/esm/test/v7.test.js +193 -0
- package/dist/esm/test/validate.test.d.ts +1 -0
- package/dist/esm/test/validate.test.js +12 -0
- package/dist/esm/test/version.test.d.ts +1 -0
- package/dist/esm/test/version.test.js +19 -0
- package/dist/esm/uuid-bin.d.ts +1 -0
- package/dist/esm/uuid-bin.js +71 -0
- package/dist/esm/v1.d.ts +11 -0
- package/dist/esm/v1.js +76 -0
- package/dist/esm/v1ToV6.d.ts +2 -0
- package/dist/esm/v1ToV6.js +11 -0
- package/dist/esm/v3.d.ts +9 -0
- package/dist/esm/v3.js +10 -0
- package/dist/esm/v35.d.ts +7 -0
- package/dist/esm/v35.js +37 -0
- package/dist/esm/v4.d.ts +4 -0
- package/dist/esm/v4.js +22 -0
- package/dist/esm/v5.d.ts +9 -0
- package/dist/esm/v5.js +10 -0
- package/dist/esm/v6.d.ts +4 -0
- package/dist/esm/v6.js +18 -0
- package/dist/esm/v6ToV1.d.ts +2 -0
- package/dist/esm/v6ToV1.js +11 -0
- package/dist/esm/v7.d.ts +9 -0
- package/dist/esm/v7.js +58 -0
- package/dist/esm/validate.d.ts +2 -0
- package/dist/esm/validate.js +6 -0
- package/dist/esm/version.d.ts +2 -0
- package/dist/esm/version.js +9 -0
- package/dist/esm-browser/_types.d.ts +21 -0
- package/dist/esm-browser/_types.js +2 -0
- package/dist/esm-browser/index.d.ts +14 -0
- package/dist/esm-browser/index.js +2 -1
- package/dist/esm-browser/max.d.ts +2 -0
- package/dist/esm-browser/max.js +2 -1
- package/dist/esm-browser/md5.d.ts +2 -0
- package/dist/esm-browser/md5.js +114 -172
- package/dist/esm-browser/native.d.ts +4 -0
- package/dist/esm-browser/native.js +3 -4
- package/dist/esm-browser/nil.d.ts +2 -0
- package/dist/esm-browser/nil.js +2 -1
- package/dist/esm-browser/parse.d.ts +2 -0
- package/dist/esm-browser/parse.js +7 -34
- package/dist/esm-browser/regex.d.ts +2 -0
- package/dist/esm-browser/regex.js +2 -1
- package/dist/esm-browser/rng.d.ts +1 -0
- package/dist/esm-browser/rng.js +9 -14
- package/dist/esm-browser/sha1.d.ts +2 -0
- package/dist/esm-browser/sha1.js +63 -68
- package/dist/esm-browser/stringify.d.ts +3 -0
- package/dist/esm-browser/stringify.js +30 -25
- package/dist/esm-browser/test/parse.test.d.ts +1 -0
- package/dist/esm-browser/test/parse.test.js +49 -0
- package/dist/esm-browser/test/rng.test.d.ts +1 -0
- package/dist/esm-browser/test/rng.test.js +13 -0
- package/dist/esm-browser/test/stringify.test.d.ts +1 -0
- package/dist/esm-browser/test/stringify.test.js +22 -0
- package/dist/esm-browser/test/test_constants.d.ts +33 -0
- package/dist/esm-browser/test/test_constants.js +89 -0
- package/dist/esm-browser/test/v1.test.d.ts +1 -0
- package/dist/esm-browser/test/v1.test.js +126 -0
- package/dist/esm-browser/test/v35.test.d.ts +1 -0
- package/dist/esm-browser/test/v35.test.js +142 -0
- package/dist/esm-browser/test/v4.test.d.ts +1 -0
- package/dist/esm-browser/test/v4.test.js +59 -0
- package/dist/esm-browser/test/v6.test.d.ts +1 -0
- package/dist/esm-browser/test/v6.test.js +55 -0
- package/dist/esm-browser/test/v7.test.d.ts +1 -0
- package/dist/esm-browser/test/v7.test.js +193 -0
- package/dist/esm-browser/test/validate.test.d.ts +1 -0
- package/dist/esm-browser/test/validate.test.js +12 -0
- package/dist/esm-browser/test/version.test.d.ts +1 -0
- package/dist/esm-browser/test/version.test.js +19 -0
- package/dist/esm-browser/uuid-bin.d.ts +1 -0
- package/dist/esm-browser/uuid-bin.js +71 -0
- package/dist/esm-browser/v1.d.ts +11 -0
- package/dist/esm-browser/v1.js +68 -117
- package/dist/esm-browser/v1ToV6.d.ts +2 -0
- package/dist/esm-browser/v1ToV6.js +7 -16
- package/dist/esm-browser/v3.d.ts +9 -0
- package/dist/esm-browser/v3.js +9 -3
- package/dist/esm-browser/v35.d.ts +7 -0
- package/dist/esm-browser/v35.js +29 -47
- package/dist/esm-browser/v4.d.ts +4 -0
- package/dist/esm-browser/v4.js +16 -19
- package/dist/esm-browser/v5.d.ts +9 -0
- package/dist/esm-browser/v5.js +9 -3
- package/dist/esm-browser/v6.d.ts +4 -0
- package/dist/esm-browser/v6.js +14 -32
- package/dist/esm-browser/v6ToV1.d.ts +2 -0
- package/dist/esm-browser/v6ToV1.js +6 -15
- package/dist/esm-browser/v7.d.ts +9 -0
- package/dist/esm-browser/v7.js +51 -139
- package/dist/esm-browser/validate.d.ts +2 -0
- package/dist/esm-browser/validate.js +3 -2
- package/dist/esm-browser/version.d.ts +2 -0
- package/dist/esm-browser/version.js +6 -5
- package/package.json +54 -64
- package/wrapper.mjs +1 -1
- package/dist/bin/uuid +0 -2
- package/dist/commonjs-browser/index.js +0 -104
- package/dist/commonjs-browser/max.js +0 -7
- package/dist/commonjs-browser/md5.js +0 -200
- package/dist/commonjs-browser/native.js +0 -10
- package/dist/commonjs-browser/nil.js +0 -7
- package/dist/commonjs-browser/parse.js +0 -44
- package/dist/commonjs-browser/regex.js +0 -7
- package/dist/commonjs-browser/rng.js +0 -23
- package/dist/commonjs-browser/sha1.js +0 -82
- package/dist/commonjs-browser/stringify.js +0 -38
- package/dist/commonjs-browser/v1.js +0 -131
- package/dist/commonjs-browser/v1ToV6.js +0 -26
- package/dist/commonjs-browser/v3.js +0 -11
- package/dist/commonjs-browser/v35.js +0 -63
- package/dist/commonjs-browser/v4.js +0 -32
- package/dist/commonjs-browser/v5.js +0 -11
- package/dist/commonjs-browser/v6.js +0 -42
- package/dist/commonjs-browser/v6ToV1.js +0 -26
- package/dist/commonjs-browser/v7.js +0 -152
- package/dist/commonjs-browser/validate.js +0 -12
- package/dist/commonjs-browser/version.js +0 -15
- package/dist/esm-node/max.js +0 -1
- package/dist/esm-node/md5.js +0 -10
- package/dist/esm-node/native.js +0 -4
- package/dist/esm-node/nil.js +0 -1
- package/dist/esm-node/parse.js +0 -37
- package/dist/esm-node/regex.js +0 -1
- package/dist/esm-node/rng.js +0 -10
- package/dist/esm-node/sha1.js +0 -10
- package/dist/esm-node/stringify.js +0 -31
- package/dist/esm-node/v1.js +0 -125
- package/dist/esm-node/v1ToV6.js +0 -20
- package/dist/esm-node/v3.js +0 -4
- package/dist/esm-node/v35.js +0 -55
- package/dist/esm-node/v4.js +0 -25
- package/dist/esm-node/v5.js +0 -4
- package/dist/esm-node/v6.js +0 -32
- package/dist/esm-node/v6ToV1.js +0 -20
- package/dist/esm-node/v7.js +0 -146
- package/dist/esm-node/validate.js +0 -5
- package/dist/esm-node/version.js +0 -8
- package/dist/index.js +0 -104
- package/dist/max.js +0 -7
- package/dist/md5-browser.js +0 -200
- package/dist/md5.js +0 -17
- package/dist/native-browser.js +0 -10
- package/dist/native.js +0 -11
- package/dist/nil.js +0 -7
- package/dist/parse.js +0 -44
- package/dist/regex.js +0 -7
- package/dist/rng-browser.js +0 -23
- package/dist/rng.js +0 -17
- package/dist/sha1-browser.js +0 -82
- package/dist/sha1.js +0 -17
- package/dist/stringify.js +0 -38
- package/dist/uuid-bin.js +0 -75
- package/dist/v1.js +0 -131
- package/dist/v1ToV6.js +0 -26
- package/dist/v3.js +0 -11
- package/dist/v35.js +0 -63
- package/dist/v4.js +0 -32
- package/dist/v5.js +0 -11
- package/dist/v6.js +0 -38
- package/dist/v6ToV1.js +0 -26
- package/dist/v7.js +0 -152
- package/dist/validate.js +0 -12
- package/dist/version.js +0 -15
package/dist/cjs/md5.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const crypto_1 = require("crypto");
|
|
4
|
+
function md5(bytes) {
|
|
5
|
+
if (Array.isArray(bytes)) {
|
|
6
|
+
bytes = Buffer.from(bytes);
|
|
7
|
+
}
|
|
8
|
+
else if (typeof bytes === 'string') {
|
|
9
|
+
bytes = Buffer.from(bytes, 'utf8');
|
|
10
|
+
}
|
|
11
|
+
return (0, crypto_1.createHash)('md5').update(bytes).digest();
|
|
12
|
+
}
|
|
13
|
+
exports.default = md5;
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWQ1LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21kNS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1DQUFvQztBQUVwQyxTQUFTLEdBQUcsQ0FBQyxLQUFpQjtJQUM1QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN6QixLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO1NBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUNyQyxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE9BQU8sSUFBQSxtQkFBVSxFQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUNsRCxDQUFDO0FBRUQsa0JBQWUsR0FBRyxDQUFDIn0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const crypto_1 = require("crypto");
|
|
4
|
+
exports.default = { randomUUID: crypto_1.randomUUID };
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL25hdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1DQUFvQztBQUVwQyxrQkFBZSxFQUFFLFVBQVUsRUFBVixtQkFBVSxFQUFFLENBQUMifQ==
|
package/dist/cjs/nil.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = '00000000-0000-0000-0000-000000000000';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL25pbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGtCQUFlLHNDQUFzQyxDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"commonjs"}
|
|
@@ -0,0 +1,12 @@
|
|
|
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;
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFyc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwrQ0FBcUM7QUFFckMsU0FBUyxLQUFLLENBQUMsSUFBWTtJQUN6QixJQUFJLENBQUMsSUFBQSxxQkFBUSxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDcEIsTUFBTSxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksQ0FBQyxDQUFDO0lBQ04sT0FBTyxVQUFVLENBQUMsRUFBRSxDQUNsQixDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQzNDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFDakIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUNoQixDQUFDLEdBQUcsSUFBSSxFQUdSLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFDM0MsQ0FBQyxHQUFHLElBQUksRUFHUixDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQzVDLENBQUMsR0FBRyxJQUFJLEVBR1IsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUM1QyxDQUFDLEdBQUcsSUFBSSxFQUlSLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsYUFBYSxDQUFDLEdBQUcsSUFBSSxFQUMvRCxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsR0FBRyxJQUFJLEVBQ3hCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFDakIsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUNqQixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQ2hCLENBQUMsR0FBRyxJQUFJLENBQ1QsQ0FBQztBQUNKLENBQUM7QUFFRCxrQkFBZSxLQUFLLENBQUMifQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVnZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQkFBZSwwSkFBMEosQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function rng(): Uint8Array;
|
package/dist/cjs/rng.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = rng;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
const rnds8Pool = new Uint8Array(256);
|
|
6
|
+
let poolPtr = rnds8Pool.length;
|
|
7
|
+
function rng() {
|
|
8
|
+
if (poolPtr > rnds8Pool.length - 16) {
|
|
9
|
+
(0, crypto_1.randomFillSync)(rnds8Pool);
|
|
10
|
+
poolPtr = 0;
|
|
11
|
+
}
|
|
12
|
+
return rnds8Pool.slice(poolPtr, (poolPtr += 16));
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JuZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUtBLHNCQU1DO0FBWEQsbUNBQXdDO0FBRXhDLE1BQU0sU0FBUyxHQUFHLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3RDLElBQUksT0FBTyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7QUFFL0IsU0FBd0IsR0FBRztJQUN6QixJQUFJLE9BQU8sR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQ3BDLElBQUEsdUJBQWMsRUFBQyxTQUFTLENBQUMsQ0FBQztRQUMxQixPQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUNELE9BQU8sU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNuRCxDQUFDIn0=
|
package/dist/cjs/sha1.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const crypto_1 = require("crypto");
|
|
4
|
+
function sha1(bytes) {
|
|
5
|
+
if (Array.isArray(bytes)) {
|
|
6
|
+
bytes = Buffer.from(bytes);
|
|
7
|
+
}
|
|
8
|
+
else if (typeof bytes === 'string') {
|
|
9
|
+
bytes = Buffer.from(bytes, 'utf8');
|
|
10
|
+
}
|
|
11
|
+
return (0, crypto_1.createHash)('sha1').update(bytes).digest();
|
|
12
|
+
}
|
|
13
|
+
exports.default = sha1;
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhMS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zaGExLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBQW9DO0FBRXBDLFNBQVMsSUFBSSxDQUFDLEtBQWlCO0lBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pCLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7U0FBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3JDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsT0FBTyxJQUFBLG1CQUFVLEVBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQ25ELENBQUM7QUFFRCxrQkFBZSxJQUFJLENBQUMifQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.unsafeStringify = unsafeStringify;
|
|
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
|
+
function stringify(arr, offset = 0) {
|
|
32
|
+
const uuid = unsafeStringify(arr, offset);
|
|
33
|
+
if (!(0, validate_js_1.default)(uuid)) {
|
|
34
|
+
throw TypeError('Stringified UUID is invalid');
|
|
35
|
+
}
|
|
36
|
+
return uuid;
|
|
37
|
+
}
|
|
38
|
+
exports.default = stringify;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5naWZ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmluZ2lmeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQVlBLDBDQTRCQztBQXhDRCwrQ0FBcUM7QUFNckMsTUFBTSxTQUFTLEdBQWEsRUFBRSxDQUFDO0FBRS9CLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUM3QixTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBRUQsU0FBZ0IsZUFBZSxDQUFDLEdBQWUsRUFBRSxNQUFNLEdBQUcsQ0FBQztJQU16RCxPQUFPLENBQ0wsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDMUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDMUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDMUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDMUIsR0FBRztRQUNILFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzFCLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzFCLEdBQUc7UUFDSCxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMxQixTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMxQixHQUFHO1FBQ0gsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDMUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDMUIsR0FBRztRQUNILFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQzVCLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDbEIsQ0FBQztBQUVELFNBQVMsU0FBUyxDQUFDLEdBQWUsRUFBRSxNQUFNLEdBQUcsQ0FBQztJQUM1QyxNQUFNLElBQUksR0FBRyxlQUFlLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBTzFDLElBQUksQ0FBQyxJQUFBLHFCQUFRLEVBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNwQixNQUFNLFNBQVMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxrQkFBZSxTQUFTLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const assert = require("assert");
|
|
4
|
+
const node_test_1 = require("node:test");
|
|
5
|
+
const parse_js_1 = require("../parse.js");
|
|
6
|
+
const stringify_js_1 = require("../stringify.js");
|
|
7
|
+
const v4_js_1 = require("../v4.js");
|
|
8
|
+
function splitmix32(a) {
|
|
9
|
+
return function () {
|
|
10
|
+
a |= 0;
|
|
11
|
+
a = (a + 0x9e3779b9) | 0;
|
|
12
|
+
let t = a ^ (a >>> 16);
|
|
13
|
+
t = Math.imul(t, 0x21f0aaad);
|
|
14
|
+
t = t ^ (t >>> 15);
|
|
15
|
+
t = Math.imul(t, 0x735a2d97);
|
|
16
|
+
return ((t = t ^ (t >>> 15)) >>> 0) / 4294967296;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
const rand = splitmix32(0x12345678);
|
|
20
|
+
function rng(bytes = new Uint8Array(16)) {
|
|
21
|
+
for (let i = 0; i < 16; i++) {
|
|
22
|
+
bytes[i] = rand() * 256;
|
|
23
|
+
}
|
|
24
|
+
return bytes;
|
|
25
|
+
}
|
|
26
|
+
(0, node_test_1.describe)('parse', () => {
|
|
27
|
+
(0, node_test_1.default)('String -> bytes parsing', () => {
|
|
28
|
+
assert.deepStrictEqual((0, parse_js_1.default)('0f5abcd1-c194-47f3-905b-2df7263a084b'), Uint8Array.from([
|
|
29
|
+
0x0f, 0x5a, 0xbc, 0xd1, 0xc1, 0x94, 0x47, 0xf3, 0x90, 0x5b, 0x2d, 0xf7, 0x26, 0x3a, 0x08,
|
|
30
|
+
0x4b,
|
|
31
|
+
]));
|
|
32
|
+
});
|
|
33
|
+
(0, node_test_1.default)('String -> bytes -> string symmetry for assorted uuids', () => {
|
|
34
|
+
for (let i = 0; i < 1000; i++) {
|
|
35
|
+
const uuid = (0, v4_js_1.default)({ rng });
|
|
36
|
+
assert.equal((0, stringify_js_1.default)((0, parse_js_1.default)(uuid)), uuid);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
(0, node_test_1.default)('Case neutrality', () => {
|
|
40
|
+
assert.deepStrictEqual((0, parse_js_1.default)('0f5abcd1-c194-47f3-905b-2df7263a084b'), (0, parse_js_1.default)('0f5abcd1-c194-47f3-905b-2df7263a084b'.toUpperCase()));
|
|
41
|
+
});
|
|
42
|
+
(0, node_test_1.default)('Null UUID case', () => {
|
|
43
|
+
assert.deepStrictEqual((0, parse_js_1.default)('00000000-0000-0000-0000-000000000000'), Uint8Array.from(new Array(16).fill(0)));
|
|
44
|
+
});
|
|
45
|
+
(0, node_test_1.default)('UUID validation', () => {
|
|
46
|
+
assert.throws(() => (0, parse_js_1.default)());
|
|
47
|
+
assert.throws(() => (0, parse_js_1.default)('invalid uuid'));
|
|
48
|
+
assert.throws(() => (0, parse_js_1.default)('zyxwvuts-rqpo-nmlk-jihg-fedcba000000'));
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0L3BhcnNlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMseUNBQTJDO0FBQzNDLDBDQUFnQztBQUNoQyxrREFBd0M7QUFDeEMsb0NBQThCO0FBSTlCLFNBQVMsVUFBVSxDQUFDLENBQVM7SUFDM0IsT0FBTztRQUNMLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDUCxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN2QixDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNuQixDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0IsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQztJQUNuRCxDQUFDLENBQUM7QUFDSixDQUFDO0FBQ0QsTUFBTSxJQUFJLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBRXBDLFNBQVMsR0FBRyxDQUFDLEtBQUssR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLENBQUM7SUFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQzVCLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDMUIsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELElBQUEsb0JBQVEsRUFBQyxPQUFPLEVBQUUsR0FBRyxFQUFFO0lBQ3JCLElBQUEsbUJBQUksRUFBQyx5QkFBeUIsRUFBRSxHQUFHLEVBQUU7UUFDbkMsTUFBTSxDQUFDLGVBQWUsQ0FDcEIsSUFBQSxrQkFBSyxFQUFDLHNDQUFzQyxDQUFDLEVBQzdDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDZCxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7WUFDeEYsSUFBSTtTQUNMLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLG1CQUFJLEVBQUMsdURBQXVELEVBQUUsR0FBRyxFQUFFO1FBQ2pFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUM5QixNQUFNLElBQUksR0FBRyxJQUFBLGVBQU0sRUFBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDN0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFBLHNCQUFTLEVBQUMsSUFBQSxrQkFBSyxFQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBQSxtQkFBSSxFQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtRQUUzQixNQUFNLENBQUMsZUFBZSxDQUNwQixJQUFBLGtCQUFLLEVBQUMsc0NBQXNDLENBQUMsRUFDN0MsSUFBQSxrQkFBSyxFQUFDLHNDQUFzQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQzVELENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsbUJBQUksRUFBQyxnQkFBZ0IsRUFBRSxHQUFHLEVBQUU7UUFDMUIsTUFBTSxDQUFDLGVBQWUsQ0FDcEIsSUFBQSxrQkFBSyxFQUFDLHNDQUFzQyxDQUFDLEVBQzdDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3ZDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsbUJBQUksRUFBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFFM0IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFBLGtCQUFLLEdBQUUsQ0FBQyxDQUFDO1FBRTdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBQSxrQkFBSyxFQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFBLGtCQUFLLEVBQUMsc0NBQXNDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const assert = require("assert");
|
|
4
|
+
const node_test_1 = require("node:test");
|
|
5
|
+
const rng_js_1 = require("../rng.js");
|
|
6
|
+
(0, node_test_1.describe)('rng', () => {
|
|
7
|
+
(0, node_test_1.default)('Node.js RNG', () => {
|
|
8
|
+
const bytes = (0, rng_js_1.default)();
|
|
9
|
+
assert.equal(bytes.length, 16);
|
|
10
|
+
for (let i = 0; i < bytes.length; ++i) {
|
|
11
|
+
assert.equal(typeof bytes[i], 'number');
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm5nLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdC9ybmcudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFpQztBQUNqQyx5Q0FBMkM7QUFDM0Msc0NBQTRCO0FBRTVCLElBQUEsb0JBQVEsRUFBQyxLQUFLLEVBQUUsR0FBRyxFQUFFO0lBQ25CLElBQUEsbUJBQUksRUFBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1FBQ3ZCLE1BQU0sS0FBSyxHQUFHLElBQUEsZ0JBQUcsR0FBRSxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUUvQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBSUwsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const assert = require("assert");
|
|
4
|
+
const node_test_1 = require("node:test");
|
|
5
|
+
const stringify_js_1 = require("../stringify.js");
|
|
6
|
+
const BYTES = Uint8Array.of(0x0f, 0x5a, 0xbc, 0xd1, 0xc1, 0x94, 0x47, 0xf3, 0x90, 0x5b, 0x2d, 0xf7, 0x26, 0x3a, 0x08, 0x4b);
|
|
7
|
+
(0, node_test_1.describe)('stringify', () => {
|
|
8
|
+
(0, node_test_1.default)('Stringify Array (unsafe)', () => {
|
|
9
|
+
assert.equal((0, stringify_js_1.unsafeStringify)(BYTES), '0f5abcd1-c194-47f3-905b-2df7263a084b');
|
|
10
|
+
});
|
|
11
|
+
(0, node_test_1.default)('Stringify w/ offset (unsafe)', () => {
|
|
12
|
+
const bytes = new Uint8Array(19).fill(0);
|
|
13
|
+
bytes.set(BYTES, 3);
|
|
14
|
+
assert.equal((0, stringify_js_1.unsafeStringify)(bytes, 3), '0f5abcd1-c194-47f3-905b-2df7263a084b');
|
|
15
|
+
});
|
|
16
|
+
(0, node_test_1.default)('Stringify Array (safe)', () => {
|
|
17
|
+
assert.equal((0, stringify_js_1.default)(BYTES), '0f5abcd1-c194-47f3-905b-2df7263a084b');
|
|
18
|
+
});
|
|
19
|
+
(0, node_test_1.default)('Throws on not enough values (safe)', () => {
|
|
20
|
+
const bytes = BYTES.slice(0, 15);
|
|
21
|
+
assert.throws(() => (0, stringify_js_1.default)(bytes));
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5naWZ5LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdC9zdHJpbmdpZnkudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFpQztBQUNqQyx5Q0FBMkM7QUFDM0Msa0RBQTZEO0FBRTdELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQ3pCLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksQ0FDTCxDQUFDO0FBRUYsSUFBQSxvQkFBUSxFQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUU7SUFDekIsSUFBQSxtQkFBSSxFQUFDLDBCQUEwQixFQUFFLEdBQUcsRUFBRTtRQUNwQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUEsOEJBQWUsRUFBQyxLQUFLLENBQUMsRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDO0lBQy9FLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBQSxtQkFBSSxFQUFDLDhCQUE4QixFQUFFLEdBQUcsRUFBRTtRQUN4QyxNQUFNLEtBQUssR0FBRyxJQUFJLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFBLDhCQUFlLEVBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7SUFDbEYsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLG1CQUFJLEVBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO1FBQ2xDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBQSxzQkFBUyxFQUFDLEtBQUssQ0FBQyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7SUFDekUsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLG1CQUFJLEVBQUMsb0NBQW9DLEVBQUUsR0FBRyxFQUFFO1FBQzlDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBQSxzQkFBUyxFQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export declare const TESTS: ({
|
|
2
|
+
value: string;
|
|
3
|
+
expectedValidate: boolean;
|
|
4
|
+
expectedVersion: number;
|
|
5
|
+
} | {
|
|
6
|
+
value: string;
|
|
7
|
+
expectedValidate: boolean;
|
|
8
|
+
expectedVersion?: undefined;
|
|
9
|
+
} | {
|
|
10
|
+
value: undefined;
|
|
11
|
+
expectedValidate: boolean;
|
|
12
|
+
expectedVersion?: undefined;
|
|
13
|
+
} | {
|
|
14
|
+
value: null;
|
|
15
|
+
expectedValidate: boolean;
|
|
16
|
+
expectedVersion?: undefined;
|
|
17
|
+
} | {
|
|
18
|
+
value: number;
|
|
19
|
+
expectedValidate: boolean;
|
|
20
|
+
expectedVersion?: undefined;
|
|
21
|
+
} | {
|
|
22
|
+
value: RegExp;
|
|
23
|
+
expectedValidate: boolean;
|
|
24
|
+
expectedVersion?: undefined;
|
|
25
|
+
} | {
|
|
26
|
+
value: Date;
|
|
27
|
+
expectedValidate: boolean;
|
|
28
|
+
expectedVersion?: undefined;
|
|
29
|
+
} | {
|
|
30
|
+
value: boolean;
|
|
31
|
+
expectedValidate: boolean;
|
|
32
|
+
expectedVersion?: undefined;
|
|
33
|
+
})[];
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TESTS = void 0;
|
|
4
|
+
const max_js_1 = require("../max.js");
|
|
5
|
+
const nil_js_1 = require("../nil.js");
|
|
6
|
+
exports.TESTS = [
|
|
7
|
+
{ value: nil_js_1.default, expectedValidate: true, expectedVersion: 0 },
|
|
8
|
+
{ value: max_js_1.default, expectedValidate: true, expectedVersion: 15 },
|
|
9
|
+
{ value: '00000000-0000-1000-8000-000000000000', expectedValidate: true, expectedVersion: 1 },
|
|
10
|
+
{ value: 'ffffffff-ffff-1fff-8fff-ffffffffffff', expectedValidate: true, expectedVersion: 1 },
|
|
11
|
+
{ value: '00000000-0000-2000-8000-000000000000', expectedValidate: true, expectedVersion: 2 },
|
|
12
|
+
{ value: 'ffffffff-ffff-2fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 2 },
|
|
13
|
+
{ value: '00000000-0000-3000-8000-000000000000', expectedValidate: true, expectedVersion: 3 },
|
|
14
|
+
{ value: 'ffffffff-ffff-3fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 3 },
|
|
15
|
+
{ value: '00000000-0000-4000-8000-000000000000', expectedValidate: true, expectedVersion: 4 },
|
|
16
|
+
{ value: 'ffffffff-ffff-4fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 4 },
|
|
17
|
+
{ value: '00000000-0000-5000-8000-000000000000', expectedValidate: true, expectedVersion: 5 },
|
|
18
|
+
{ value: 'ffffffff-ffff-5fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 5 },
|
|
19
|
+
{ value: '00000000-0000-6000-8000-000000000000', expectedValidate: true, expectedVersion: 6 },
|
|
20
|
+
{ value: 'ffffffff-ffff-6fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 6 },
|
|
21
|
+
{ value: '00000000-0000-7000-8000-000000000000', expectedValidate: true, expectedVersion: 7 },
|
|
22
|
+
{ value: 'ffffffff-ffff-7fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 7 },
|
|
23
|
+
{ value: '00000000-0000-8000-8000-000000000000', expectedValidate: true, expectedVersion: 8 },
|
|
24
|
+
{ value: 'ffffffff-ffff-8fff-bfff-ffffffffffff', expectedValidate: true, expectedVersion: 8 },
|
|
25
|
+
{ value: '00000000-0000-9000-8000-000000000000', expectedValidate: false },
|
|
26
|
+
{ value: 'ffffffff-ffff-9fff-bfff-ffffffffffff', expectedValidate: false },
|
|
27
|
+
{ value: '00000000-0000-a000-8000-000000000000', expectedValidate: false },
|
|
28
|
+
{ value: 'ffffffff-ffff-afff-bfff-ffffffffffff', expectedValidate: false },
|
|
29
|
+
{ value: '00000000-0000-b000-8000-000000000000', expectedValidate: false },
|
|
30
|
+
{ value: 'ffffffff-ffff-bfff-bfff-ffffffffffff', expectedValidate: false },
|
|
31
|
+
{ value: '00000000-0000-c000-8000-000000000000', expectedValidate: false },
|
|
32
|
+
{ value: 'ffffffff-ffff-cfff-bfff-ffffffffffff', expectedValidate: false },
|
|
33
|
+
{ value: '00000000-0000-d000-8000-000000000000', expectedValidate: false },
|
|
34
|
+
{ value: 'ffffffff-ffff-dfff-bfff-ffffffffffff', expectedValidate: false },
|
|
35
|
+
{ value: '00000000-0000-e000-8000-000000000000', expectedValidate: false },
|
|
36
|
+
{ value: 'ffffffff-ffff-efff-bfff-ffffffffffff', expectedValidate: false },
|
|
37
|
+
{ value: 'd9428888-122b-11e1-b85c-61cd3cbb3210', expectedValidate: true, expectedVersion: 1 },
|
|
38
|
+
{ value: '000003e8-2363-21ef-b200-325096b39f47', expectedValidate: true, expectedVersion: 2 },
|
|
39
|
+
{ value: 'a981a0c2-68b1-35dc-bcfc-296e52ab01ec', expectedValidate: true, expectedVersion: 3 },
|
|
40
|
+
{ value: '109156be-c4fb-41ea-b1b4-efe1671c5836', expectedValidate: true, expectedVersion: 4 },
|
|
41
|
+
{ value: '90123e1c-7512-523e-bb28-76fab9f2f73d', expectedValidate: true, expectedVersion: 5 },
|
|
42
|
+
{ value: '1ef21d2f-1207-6660-8c4f-419efbd44d48', expectedValidate: true, expectedVersion: 6 },
|
|
43
|
+
{ value: '017f22e2-79b0-7cc3-98c4-dc0c0c07398f', expectedValidate: true, expectedVersion: 7 },
|
|
44
|
+
{ value: '0d8f23a0-697f-83ae-802e-48f3756dd581', expectedValidate: true, expectedVersion: 8 },
|
|
45
|
+
{ value: '00000000-0000-1000-0000-000000000000', expectedValidate: false },
|
|
46
|
+
{ value: '00000000-0000-1000-1000-000000000000', expectedValidate: false },
|
|
47
|
+
{ value: '00000000-0000-1000-2000-000000000000', expectedValidate: false },
|
|
48
|
+
{ value: '00000000-0000-1000-3000-000000000000', expectedValidate: false },
|
|
49
|
+
{ value: '00000000-0000-1000-4000-000000000000', expectedValidate: false },
|
|
50
|
+
{ value: '00000000-0000-1000-5000-000000000000', expectedValidate: false },
|
|
51
|
+
{ value: '00000000-0000-1000-6000-000000000000', expectedValidate: false },
|
|
52
|
+
{ value: '00000000-0000-1000-7000-000000000000', expectedValidate: false },
|
|
53
|
+
{ value: '00000000-0000-1000-8000-000000000000', expectedValidate: true, expectedVersion: 1 },
|
|
54
|
+
{ value: '00000000-0000-1000-9000-000000000000', expectedValidate: true, expectedVersion: 1 },
|
|
55
|
+
{ value: '00000000-0000-1000-a000-000000000000', expectedValidate: true, expectedVersion: 1 },
|
|
56
|
+
{ value: '00000000-0000-1000-b000-000000000000', expectedValidate: true, expectedVersion: 1 },
|
|
57
|
+
{ value: '00000000-0000-1000-c000-000000000000', expectedValidate: false },
|
|
58
|
+
{ value: '00000000-0000-1000-d000-000000000000', expectedValidate: false },
|
|
59
|
+
{ value: '00000000-0000-1000-e000-000000000000', expectedValidate: false },
|
|
60
|
+
{ value: '00000000-0000-1000-f000-000000000000', expectedValidate: false },
|
|
61
|
+
{ value: '00000000000000000000000000000000', expectedValidate: false },
|
|
62
|
+
{ value: '', expectedValidate: false },
|
|
63
|
+
{ value: 'invalid uuid string', expectedValidate: false },
|
|
64
|
+
{
|
|
65
|
+
value: '=Y00a-f*vb*-c-d#-p00f\b-g0h-#i^-j*3&-L00k-\nl---00n-fg000-00p-00r+',
|
|
66
|
+
expectedValidate: false,
|
|
67
|
+
},
|
|
68
|
+
{ value: undefined, expectedValidate: false },
|
|
69
|
+
{ value: null, expectedValidate: false },
|
|
70
|
+
{ value: 123, expectedValidate: false },
|
|
71
|
+
{ value: /regex/, expectedValidate: false },
|
|
72
|
+
{ value: new Date(0), expectedValidate: false },
|
|
73
|
+
{ value: false, expectedValidate: false },
|
|
74
|
+
];
|
|
75
|
+
for (let charIndex = 0; charIndex < 36; charIndex++) {
|
|
76
|
+
if (charIndex === 8 ||
|
|
77
|
+
charIndex === 13 ||
|
|
78
|
+
charIndex === 14 ||
|
|
79
|
+
charIndex === 18 ||
|
|
80
|
+
charIndex === 23) {
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
const nilChars = nil_js_1.default.split('');
|
|
84
|
+
const maxChars = max_js_1.default.split('');
|
|
85
|
+
for (let i = 0; i < 4; i++) {
|
|
86
|
+
nilChars[charIndex] = (0x0 ^ (1 << i)).toString(16);
|
|
87
|
+
exports.TESTS.push({ value: nilChars.join(''), expectedValidate: false });
|
|
88
|
+
maxChars[charIndex] = (0xf ^ (1 << i)).toString(16);
|
|
89
|
+
exports.TESTS.push({ value: maxChars.join(''), expectedValidate: false });
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdC90ZXN0X2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzQ0FBNEI7QUFDNUIsc0NBQTRCO0FBR2YsUUFBQSxLQUFLLEdBQUc7SUFFbkIsRUFBRSxLQUFLLEVBQUUsZ0JBQUcsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLENBQUMsRUFBRTtJQUMxRCxFQUFFLEtBQUssRUFBRSxnQkFBRyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFO0lBRzNELEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBQzFFLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBQzFFLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBQzFFLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBRzFFLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBQzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxFQUFFO0lBRzdGLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBQzFFLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBQzFFLEVBQUUsS0FBSyxFQUFFLHNDQUFzQyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRTtJQUMxRSxFQUFFLEtBQUssRUFBRSxzQ0FBc0MsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUU7SUFDMUUsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUU7SUFDN0YsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUU7SUFDN0YsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUU7SUFDN0YsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUU7SUFDN0YsRUFBRSxLQUFLLEVBQUUsc0NBQXNDLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFO0lBQzFFLEVBQUUsS0FBSyxFQUFF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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const assert = require("assert");
|
|
4
|
+
const node_test_1 = require("node:test");
|
|
5
|
+
const parse_js_1 = require("../parse.js");
|
|
6
|
+
const v1_js_1 = require("../v1.js");
|
|
7
|
+
const TIME = 1321644961388;
|
|
8
|
+
const RFC_V1 = 'c232ab00-9414-11ec-b3c8-9f68deced846';
|
|
9
|
+
const RFC_V1_BYTES = (0, parse_js_1.default)(RFC_V1);
|
|
10
|
+
const RFC_OPTIONS = {
|
|
11
|
+
msecs: 0x17f22e279b0,
|
|
12
|
+
nsecs: 0,
|
|
13
|
+
clockseq: 0x33c8,
|
|
14
|
+
node: Uint8Array.of(0x9f, 0x68, 0xde, 0xce, 0xd8, 0x46),
|
|
15
|
+
};
|
|
16
|
+
const RFC_RANDOM = Uint8Array.of(0, 0, 0, 0, 0, 0, 0, 0, RFC_OPTIONS.clockseq >> 8, RFC_OPTIONS.clockseq & 0xff, ...RFC_OPTIONS.node);
|
|
17
|
+
function compareV1TimeField(a, b) {
|
|
18
|
+
a = a.split('-').slice(0, 3).reverse().join('');
|
|
19
|
+
b = b.split('-').slice(0, 3).reverse().join('');
|
|
20
|
+
return a < b ? -1 : a > b ? 1 : 0;
|
|
21
|
+
}
|
|
22
|
+
(0, node_test_1.describe)('v1', () => {
|
|
23
|
+
(0, node_test_1.default)('v1 sort order (default)', () => {
|
|
24
|
+
const ids = [(0, v1_js_1.default)(), (0, v1_js_1.default)(), (0, v1_js_1.default)(), (0, v1_js_1.default)(), (0, v1_js_1.default)()];
|
|
25
|
+
const sorted = [...ids].sort(compareV1TimeField);
|
|
26
|
+
assert.deepEqual(ids, sorted);
|
|
27
|
+
});
|
|
28
|
+
(0, node_test_1.default)('v1 sort order (time option)', () => {
|
|
29
|
+
const ids = [
|
|
30
|
+
(0, v1_js_1.default)({ msecs: TIME - 10 * 3600 * 1000 }),
|
|
31
|
+
(0, v1_js_1.default)({ msecs: TIME - 1 }),
|
|
32
|
+
(0, v1_js_1.default)({ msecs: TIME }),
|
|
33
|
+
(0, v1_js_1.default)({ msecs: TIME + 1 }),
|
|
34
|
+
(0, v1_js_1.default)({ msecs: TIME + 28 * 24 * 3600 * 1000 }),
|
|
35
|
+
];
|
|
36
|
+
const sorted = [...ids].sort(compareV1TimeField);
|
|
37
|
+
assert.deepEqual(ids, sorted);
|
|
38
|
+
});
|
|
39
|
+
(0, node_test_1.default)('v1(options)', () => {
|
|
40
|
+
assert.equal((0, v1_js_1.default)({ msecs: RFC_OPTIONS.msecs, random: RFC_RANDOM }), RFC_V1, 'minimal options');
|
|
41
|
+
assert.equal((0, v1_js_1.default)(RFC_OPTIONS), RFC_V1, 'full options');
|
|
42
|
+
});
|
|
43
|
+
(0, node_test_1.default)('v1(options) equality', () => {
|
|
44
|
+
assert.notEqual((0, v1_js_1.default)({ msecs: TIME }), (0, v1_js_1.default)({ msecs: TIME }), 'UUIDs with minimal options differ');
|
|
45
|
+
assert.equal((0, v1_js_1.default)(RFC_OPTIONS), (0, v1_js_1.default)(RFC_OPTIONS), 'UUIDs with full options are identical');
|
|
46
|
+
});
|
|
47
|
+
(0, node_test_1.default)('fills one UUID into a buffer as expected', () => {
|
|
48
|
+
const buffer = new Uint8Array(16);
|
|
49
|
+
const result = (0, v1_js_1.default)(RFC_OPTIONS, buffer);
|
|
50
|
+
assert.deepEqual(buffer, RFC_V1_BYTES);
|
|
51
|
+
assert.strictEqual(buffer, result);
|
|
52
|
+
});
|
|
53
|
+
(0, node_test_1.default)('fills two UUIDs into a buffer as expected', () => {
|
|
54
|
+
const buffer = new Uint8Array(32);
|
|
55
|
+
(0, v1_js_1.default)(RFC_OPTIONS, buffer, 0);
|
|
56
|
+
(0, v1_js_1.default)(RFC_OPTIONS, buffer, 16);
|
|
57
|
+
const expectedBuf = new Uint8Array(32);
|
|
58
|
+
expectedBuf.set(RFC_V1_BYTES);
|
|
59
|
+
expectedBuf.set(RFC_V1_BYTES, 16);
|
|
60
|
+
assert.deepEqual(buffer, expectedBuf);
|
|
61
|
+
});
|
|
62
|
+
(0, node_test_1.default)('v1() state transitions', () => {
|
|
63
|
+
const PRE_STATE = {
|
|
64
|
+
msecs: 10,
|
|
65
|
+
nsecs: 20,
|
|
66
|
+
clockseq: 0x1234,
|
|
67
|
+
node: Uint8Array.of(0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc),
|
|
68
|
+
};
|
|
69
|
+
const tests = [
|
|
70
|
+
{
|
|
71
|
+
title: 'initial state',
|
|
72
|
+
state: {},
|
|
73
|
+
now: 10,
|
|
74
|
+
expected: {
|
|
75
|
+
msecs: 10,
|
|
76
|
+
nsecs: 0,
|
|
77
|
+
clockseq: RFC_OPTIONS.clockseq,
|
|
78
|
+
node: RFC_OPTIONS.node,
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
title: 'same time interval',
|
|
83
|
+
state: { ...PRE_STATE },
|
|
84
|
+
now: PRE_STATE.msecs,
|
|
85
|
+
expected: {
|
|
86
|
+
...PRE_STATE,
|
|
87
|
+
nsecs: 21,
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
title: 'new time interval',
|
|
92
|
+
state: { ...PRE_STATE },
|
|
93
|
+
now: PRE_STATE.msecs + 1,
|
|
94
|
+
expected: {
|
|
95
|
+
...PRE_STATE,
|
|
96
|
+
msecs: PRE_STATE.msecs + 1,
|
|
97
|
+
nsecs: 0,
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
title: 'same time interval (nsecs overflow)',
|
|
102
|
+
state: { ...PRE_STATE, nsecs: 9999 },
|
|
103
|
+
now: PRE_STATE.msecs,
|
|
104
|
+
expected: {
|
|
105
|
+
...PRE_STATE,
|
|
106
|
+
nsecs: 0,
|
|
107
|
+
clockseq: RFC_OPTIONS.clockseq,
|
|
108
|
+
node: RFC_OPTIONS.node,
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
title: 'time regression',
|
|
113
|
+
state: { ...PRE_STATE },
|
|
114
|
+
now: PRE_STATE.msecs - 1,
|
|
115
|
+
expected: {
|
|
116
|
+
...PRE_STATE,
|
|
117
|
+
msecs: PRE_STATE.msecs - 1,
|
|
118
|
+
clockseq: RFC_OPTIONS.clockseq,
|
|
119
|
+
node: RFC_OPTIONS.node,
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
];
|
|
123
|
+
for (const { title, state, now, expected } of tests) {
|
|
124
|
+
assert.deepStrictEqual((0, v1_js_1.updateV1State)(state, now, RFC_RANDOM), expected, `Failed: ${title}`);
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjEudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0L3YxLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMseUNBQTJDO0FBQzNDLDBDQUFnQztBQUNoQyxvQ0FBNkM7QUFHN0MsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDO0FBSTNCLE1BQU0sTUFBTSxHQUFHLHNDQUFzQyxDQUFDO0FBQ3RELE1BQU0sWUFBWSxHQUFHLElBQUEsa0JBQUssRUFBQyxNQUFNLENBQUMsQ0FBQztBQUduQyxNQUFNLFdBQVcsR0FBRztJQUNsQixLQUFLLEVBQUUsYUFBYTtJQUNwQixLQUFLLEVBQUUsQ0FBQztJQUNSLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLElBQUksRUFBRSxVQUFVLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDO0NBQ3hELENBQUM7QUFHRixNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsRUFBRSxDQUU5QixDQUFDLEVBQ0QsQ0FBQyxFQUNELENBQUMsRUFDRCxDQUFDLEVBQ0QsQ0FBQyxFQUNELENBQUMsRUFDRCxDQUFDLEVBQ0QsQ0FBQyxFQUdELFdBQVcsQ0FBQyxRQUFRLElBQUksQ0FBQyxFQUN6QixXQUFXLENBQUMsUUFBUSxHQUFHLElBQUksRUFHM0IsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUNwQixDQUFDO0FBR0YsU0FBUyxrQkFBa0IsQ0FBQyxDQUFTLEVBQUUsQ0FBUztJQUM5QyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|