133 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			133 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|   | /** | ||
|  |  * Minified by jsDelivr using Terser v5.19.2. | ||
|  |  * Original file: /npm/uuidjs@5.1.0/dist/uuid.js | ||
|  |  * | ||
|  |  * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 | ||
|  |  */ | ||
|  | /** | ||
|  |  * UUID.js - RFC-compliant UUID Generator for JavaScript | ||
|  |  * | ||
|  |  * @author  LiosK | ||
|  |  * @version v5.1.0 | ||
|  |  * @license Apache License 2.0: Copyright (c) 2010-2024 LiosK | ||
|  |  * @packageDocumentation | ||
|  |  */ | ||
|  | var _a; | ||
|  | export class UUID { | ||
|  |     static generate() { | ||
|  |         var e = _a._getRandomInt, | ||
|  |             t = _a._hexAligner; | ||
|  |         return t(e(32), 8) + '-' + t(e(16), 4) + '-' + t(16384 | e(12), 4) + '-' + t(32768 | e(14), 4) + '-' + t(e(48), 12); | ||
|  |     } | ||
|  |     static _getRandomInt(e) { | ||
|  |         if (e < 0 || e > 53) return NaN; | ||
|  |         var t = 0 | (1073741824 * Math.random()); | ||
|  |         return e > 30 ? t + 1073741824 * (0 | (Math.random() * (1 << (e - 30)))) : t >>> (30 - e); | ||
|  |     } | ||
|  |     static _hexAligner(e, t) { | ||
|  |         for (var a = e.toString(16), i = t - a.length, n = '0'; i > 0; i >>>= 1, n += n) 1 & i && (a = n + a); | ||
|  |         return a; | ||
|  |     } | ||
|  |     static useMathRandom() { | ||
|  |         _a._getRandomInt = _a._mathPRNG; | ||
|  |     } | ||
|  |     static genV4() { | ||
|  |         var e = _a._getRandomInt; | ||
|  |         return new _a(e(32), e(16), 16384 | e(12), 128 | e(6), e(8), e(48)); | ||
|  |     } | ||
|  |     static parse(e) { | ||
|  |         var t; | ||
|  |         if ((t = /^\s*(urn:uuid:|\{)?([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{2})([0-9a-f]{2})-([0-9a-f]{12})(\})?\s*$/i.exec(e))) { | ||
|  |             var a = t[1] || '', | ||
|  |                 i = t[8] || ''; | ||
|  |             if (a + i === '' || ('{' === a && '}' === i) || ('urn:uuid:' === a.toLowerCase() && '' === i)) | ||
|  |                 return new _a(parseInt(t[2], 16), parseInt(t[3], 16), parseInt(t[4], 16), parseInt(t[5], 16), parseInt(t[6], 16), parseInt(t[7], 16)); | ||
|  |         } | ||
|  |         return null; | ||
|  |     } | ||
|  |     constructor(e, t, a, i, n, s) { | ||
|  |         var r = _a.FIELD_NAMES, | ||
|  |             _ = _a.FIELD_SIZES, | ||
|  |             h = _a._binAligner, | ||
|  |             d = _a._hexAligner; | ||
|  |         (this.intFields = new Array(6)), (this.bitFields = new Array(6)), (this.hexFields = new Array(6)); | ||
|  |         for (var o = 0; o < 6; o++) { | ||
|  |             var u = parseInt(arguments[o] || 0); | ||
|  |             (this.intFields[o] = this.intFields[r[o]] = u), (this.bitFields[o] = this.bitFields[r[o]] = h(u, _[o])), (this.hexFields[o] = this.hexFields[r[o]] = d(u, _[o] >>> 2)); | ||
|  |         } | ||
|  |         (this.version = (this.intFields.timeHiAndVersion >>> 12) & 15), | ||
|  |             (this.bitString = this.bitFields.join('')), | ||
|  |             (this.hexNoDelim = this.hexFields.join('')), | ||
|  |             (this.hexString = this.hexFields[0] + '-' + this.hexFields[1] + '-' + this.hexFields[2] + '-' + this.hexFields[3] + this.hexFields[4] + '-' + this.hexFields[5]), | ||
|  |             (this.urn = 'urn:uuid:' + this.hexString); | ||
|  |     } | ||
|  |     static _binAligner(e, t) { | ||
|  |         for (var a = e.toString(2), i = t - a.length, n = '0'; i > 0; i >>>= 1, n += n) 1 & i && (a = n + a); | ||
|  |         return a; | ||
|  |     } | ||
|  |     toString() { | ||
|  |         return this.hexString; | ||
|  |     } | ||
|  |     equals(e) { | ||
|  |         if (!(e instanceof _a)) return !1; | ||
|  |         for (var t = 0; t < 6; t++) if (this.intFields[t] !== e.intFields[t]) return !1; | ||
|  |         return !0; | ||
|  |     } | ||
|  |     static genV1() { | ||
|  |         null == _a._state && (_a._state = new UUIDState()); | ||
|  |         var e = new Date().getTime(), | ||
|  |             t = _a._state; | ||
|  |         e != t.timestamp ? (e < t.timestamp && t.sequence++, (t.timestamp = e), (t.tick = _a._getRandomInt(12))) : t.tick < 9992 ? (t.tick += 1 + _a._getRandomInt(3)) : t.sequence++; | ||
|  |         var a = _a._getTimeFieldValues(t.timestamp), | ||
|  |             i = a.low + t.tick, | ||
|  |             n = (4095 & a.hi) | 4096; | ||
|  |         t.sequence &= 16383; | ||
|  |         var s = (t.sequence >>> 8) | 128, | ||
|  |             r = 255 & t.sequence; | ||
|  |         return new _a(i, a.mid, n, s, r, t.node); | ||
|  |     } | ||
|  |     static resetState() { | ||
|  |         _a._state = new UUIDState(); | ||
|  |     } | ||
|  |     static _getTimeFieldValues(e) { | ||
|  |         var t = e - Date.UTC(1582, 9, 15), | ||
|  |             a = ((t / 4294967296) * 1e4) & 268435455; | ||
|  |         return { low: (1e4 * (268435455 & t)) % 4294967296, mid: 65535 & a, hi: a >>> 16, timestamp: t }; | ||
|  |     } | ||
|  |     static genV6() { | ||
|  |         null == _a._state && (_a._state = new UUIDState()); | ||
|  |         var e = new Date().getTime(), | ||
|  |             t = _a._state; | ||
|  |         e != t.timestamp ? (e < t.timestamp && t.sequence++, (t.timestamp = e), (t.tick = _a._getRandomInt(12))) : t.tick < 9992 ? (t.tick += 1 + _a._getRandomInt(3)) : t.sequence++; | ||
|  |         var a = t.timestamp - Date.UTC(1582, 9, 15), | ||
|  |             i = Math.floor((a / 268435456) * 1e4) % 4294967296, | ||
|  |             n = ((1e4 * (268435455 & a)) & 268435455) + t.tick, | ||
|  |             s = n >>> 12, | ||
|  |             r = (4095 & n) | 24576; | ||
|  |         t.sequence &= 16383; | ||
|  |         var _ = (t.sequence >>> 8) | 128, | ||
|  |             h = 255 & t.sequence; | ||
|  |         return new _a(i, s, r, _, h, t.node); | ||
|  |     } | ||
|  | } | ||
|  | (_a = UUID), | ||
|  |     (UUID._mathPRNG = _a._getRandomInt), | ||
|  |     'undefined' != typeof crypto && | ||
|  |         crypto.getRandomValues && | ||
|  |         (_a._getRandomInt = (e) => { | ||
|  |             if (e < 0 || e > 53) return NaN; | ||
|  |             var t = new Uint32Array(e > 32 ? 2 : 1); | ||
|  |             return crypto.getRandomValues(t), e > 32 ? t[0] + 4294967296 * (t[1] >>> (64 - e)) : t[0] >>> (32 - e); | ||
|  |         }), | ||
|  |     (UUID.FIELD_NAMES = ['timeLow', 'timeMid', 'timeHiAndVersion', 'clockSeqHiAndReserved', 'clockSeqLow', 'node']), | ||
|  |     (UUID.FIELD_SIZES = [32, 16, 16, 8, 8, 48]), | ||
|  |     (UUID.NIL = new _a(0, 0, 0, 0, 0, 0)), | ||
|  |     (UUID._state = null); | ||
|  | class UUIDState { | ||
|  |     constructor() { | ||
|  |         var e = UUID._getRandomInt; | ||
|  |         (this.timestamp = 0), (this.tick = 0), (this.sequence = e(14)), (this.node = 1099511627776 * (1 | e(8)) + e(40)); | ||
|  |     } | ||
|  | } | ||
|  | //# sourceMappingURL=/sm/14547599d24239455943f4481cadea00302ff64afee28ff8598a7fb36c36ddc0.map
 |