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.
Files changed (347) hide show
  1. package/CHANGELOG.md +170 -0
  2. package/README.md +71 -171
  3. package/dist/cjs/_types.d.ts +21 -0
  4. package/dist/cjs/_types.js +3 -0
  5. package/dist/cjs/index.d.ts +14 -0
  6. package/dist/cjs/index.js +32 -0
  7. package/dist/cjs/max.d.ts +2 -0
  8. package/dist/cjs/max.js +4 -0
  9. package/dist/cjs/md5.d.ts +2 -0
  10. package/dist/cjs/md5.js +14 -0
  11. package/dist/cjs/native.d.ts +5 -0
  12. package/dist/cjs/native.js +5 -0
  13. package/dist/cjs/nil.d.ts +2 -0
  14. package/dist/cjs/nil.js +4 -0
  15. package/dist/cjs/package.json +1 -0
  16. package/dist/cjs/parse.d.ts +2 -0
  17. package/dist/cjs/parse.js +12 -0
  18. package/dist/cjs/regex.d.ts +2 -0
  19. package/dist/cjs/regex.js +4 -0
  20. package/dist/cjs/rng.d.ts +1 -0
  21. package/dist/cjs/rng.js +14 -0
  22. package/dist/cjs/sha1.d.ts +2 -0
  23. package/dist/cjs/sha1.js +14 -0
  24. package/dist/cjs/stringify.d.ts +3 -0
  25. package/dist/cjs/stringify.js +39 -0
  26. package/dist/cjs/test/parse.test.d.ts +1 -0
  27. package/dist/cjs/test/parse.test.js +51 -0
  28. package/dist/cjs/test/rng.test.d.ts +1 -0
  29. package/dist/cjs/test/rng.test.js +15 -0
  30. package/dist/cjs/test/stringify.test.d.ts +1 -0
  31. package/dist/cjs/test/stringify.test.js +24 -0
  32. package/dist/cjs/test/test_constants.d.ts +33 -0
  33. package/dist/cjs/test/test_constants.js +92 -0
  34. package/dist/cjs/test/v1.test.d.ts +1 -0
  35. package/dist/cjs/test/v1.test.js +128 -0
  36. package/dist/cjs/test/v35.test.d.ts +1 -0
  37. package/dist/cjs/test/v35.test.js +144 -0
  38. package/dist/cjs/test/v4.test.d.ts +1 -0
  39. package/dist/cjs/test/v4.test.js +61 -0
  40. package/dist/cjs/test/v6.test.d.ts +1 -0
  41. package/dist/cjs/test/v6.test.js +57 -0
  42. package/dist/cjs/test/v7.test.d.ts +1 -0
  43. package/dist/cjs/test/v7.test.js +195 -0
  44. package/dist/cjs/test/validate.test.d.ts +1 -0
  45. package/dist/cjs/test/validate.test.js +14 -0
  46. package/dist/cjs/test/version.test.d.ts +1 -0
  47. package/dist/cjs/test/version.test.js +21 -0
  48. package/dist/cjs/uuid-bin.d.ts +1 -0
  49. package/dist/cjs/uuid-bin.js +73 -0
  50. package/dist/cjs/v1.d.ts +11 -0
  51. package/dist/cjs/v1.js +79 -0
  52. package/dist/cjs/v1ToV6.d.ts +2 -0
  53. package/dist/cjs/v1ToV6.js +14 -0
  54. package/dist/cjs/v3.d.ts +9 -0
  55. package/dist/cjs/v3.js +15 -0
  56. package/dist/cjs/v35.d.ts +7 -0
  57. package/dist/cjs/v35.js +42 -0
  58. package/dist/cjs/v4.d.ts +4 -0
  59. package/dist/cjs/v4.js +24 -0
  60. package/dist/cjs/v5.d.ts +9 -0
  61. package/dist/cjs/v5.js +15 -0
  62. package/dist/cjs/v6.d.ts +4 -0
  63. package/dist/cjs/v6.js +20 -0
  64. package/dist/cjs/v6ToV1.d.ts +2 -0
  65. package/dist/cjs/v6ToV1.js +14 -0
  66. package/dist/cjs/v7.d.ts +9 -0
  67. package/dist/cjs/v7.js +61 -0
  68. package/dist/cjs/validate.d.ts +2 -0
  69. package/dist/cjs/validate.js +8 -0
  70. package/dist/cjs/version.d.ts +2 -0
  71. package/dist/cjs/version.js +11 -0
  72. package/dist/cjs-browser/_types.d.ts +21 -0
  73. package/dist/cjs-browser/_types.js +3 -0
  74. package/dist/{esm-node/index.js → cjs-browser/index.d.ts} +1 -1
  75. package/dist/cjs-browser/index.js +32 -0
  76. package/dist/cjs-browser/max.d.ts +2 -0
  77. package/dist/cjs-browser/max.js +4 -0
  78. package/dist/cjs-browser/md5.d.ts +2 -0
  79. package/dist/cjs-browser/md5.js +138 -0
  80. package/dist/cjs-browser/native.d.ts +4 -0
  81. package/dist/cjs-browser/native.js +5 -0
  82. package/dist/cjs-browser/nil.d.ts +2 -0
  83. package/dist/cjs-browser/nil.js +4 -0
  84. package/dist/cjs-browser/package.json +1 -0
  85. package/dist/cjs-browser/parse.d.ts +2 -0
  86. package/dist/cjs-browser/parse.js +12 -0
  87. package/dist/cjs-browser/regex.d.ts +2 -0
  88. package/dist/cjs-browser/regex.js +4 -0
  89. package/dist/cjs-browser/rng.d.ts +1 -0
  90. package/dist/cjs-browser/rng.js +15 -0
  91. package/dist/cjs-browser/sha1.d.ts +2 -0
  92. package/dist/cjs-browser/sha1.js +73 -0
  93. package/dist/cjs-browser/stringify.d.ts +3 -0
  94. package/dist/cjs-browser/stringify.js +39 -0
  95. package/dist/cjs-browser/test/parse.test.d.ts +1 -0
  96. package/dist/cjs-browser/test/parse.test.js +51 -0
  97. package/dist/cjs-browser/test/rng.test.d.ts +1 -0
  98. package/dist/cjs-browser/test/rng.test.js +15 -0
  99. package/dist/cjs-browser/test/stringify.test.d.ts +1 -0
  100. package/dist/cjs-browser/test/stringify.test.js +24 -0
  101. package/dist/cjs-browser/test/test_constants.d.ts +33 -0
  102. package/dist/cjs-browser/test/test_constants.js +92 -0
  103. package/dist/cjs-browser/test/v1.test.d.ts +1 -0
  104. package/dist/cjs-browser/test/v1.test.js +128 -0
  105. package/dist/cjs-browser/test/v35.test.d.ts +1 -0
  106. package/dist/cjs-browser/test/v35.test.js +144 -0
  107. package/dist/cjs-browser/test/v4.test.d.ts +1 -0
  108. package/dist/cjs-browser/test/v4.test.js +61 -0
  109. package/dist/cjs-browser/test/v6.test.d.ts +1 -0
  110. package/dist/cjs-browser/test/v6.test.js +57 -0
  111. package/dist/cjs-browser/test/v7.test.d.ts +1 -0
  112. package/dist/cjs-browser/test/v7.test.js +195 -0
  113. package/dist/cjs-browser/test/validate.test.d.ts +1 -0
  114. package/dist/cjs-browser/test/validate.test.js +14 -0
  115. package/dist/cjs-browser/test/version.test.d.ts +1 -0
  116. package/dist/cjs-browser/test/version.test.js +21 -0
  117. package/dist/cjs-browser/uuid-bin.d.ts +1 -0
  118. package/dist/cjs-browser/uuid-bin.js +73 -0
  119. package/dist/cjs-browser/v1.d.ts +11 -0
  120. package/dist/cjs-browser/v1.js +79 -0
  121. package/dist/cjs-browser/v1ToV6.d.ts +2 -0
  122. package/dist/cjs-browser/v1ToV6.js +14 -0
  123. package/dist/cjs-browser/v3.d.ts +9 -0
  124. package/dist/cjs-browser/v3.js +15 -0
  125. package/dist/cjs-browser/v35.d.ts +7 -0
  126. package/dist/cjs-browser/v35.js +42 -0
  127. package/dist/cjs-browser/v4.d.ts +4 -0
  128. package/dist/cjs-browser/v4.js +24 -0
  129. package/dist/cjs-browser/v5.d.ts +9 -0
  130. package/dist/cjs-browser/v5.js +15 -0
  131. package/dist/cjs-browser/v6.d.ts +4 -0
  132. package/dist/cjs-browser/v6.js +20 -0
  133. package/dist/cjs-browser/v6ToV1.d.ts +2 -0
  134. package/dist/cjs-browser/v6ToV1.js +14 -0
  135. package/dist/cjs-browser/v7.d.ts +9 -0
  136. package/dist/cjs-browser/v7.js +61 -0
  137. package/dist/cjs-browser/validate.d.ts +2 -0
  138. package/dist/cjs-browser/validate.js +8 -0
  139. package/dist/cjs-browser/version.d.ts +2 -0
  140. package/dist/cjs-browser/version.js +11 -0
  141. package/dist/esm/_types.d.ts +21 -0
  142. package/dist/esm/_types.js +2 -0
  143. package/dist/esm/bin/uuid +2 -0
  144. package/dist/esm/index.d.ts +14 -0
  145. package/dist/esm/index.js +15 -0
  146. package/dist/esm/max.d.ts +2 -0
  147. package/dist/esm/max.js +2 -0
  148. package/dist/esm/md5.d.ts +2 -0
  149. package/dist/esm/md5.js +12 -0
  150. package/dist/esm/native.d.ts +5 -0
  151. package/dist/esm/native.js +3 -0
  152. package/dist/esm/nil.d.ts +2 -0
  153. package/dist/esm/nil.js +2 -0
  154. package/dist/esm/parse.d.ts +2 -0
  155. package/dist/esm/parse.js +10 -0
  156. package/dist/esm/regex.d.ts +2 -0
  157. package/dist/esm/regex.js +2 -0
  158. package/dist/esm/rng.d.ts +1 -0
  159. package/dist/esm/rng.js +11 -0
  160. package/dist/esm/sha1.d.ts +2 -0
  161. package/dist/esm/sha1.js +12 -0
  162. package/dist/esm/stringify.d.ts +3 -0
  163. package/dist/esm/stringify.js +36 -0
  164. package/dist/esm/test/parse.test.d.ts +1 -0
  165. package/dist/esm/test/parse.test.js +49 -0
  166. package/dist/esm/test/rng.test.d.ts +1 -0
  167. package/dist/esm/test/rng.test.js +13 -0
  168. package/dist/esm/test/stringify.test.d.ts +1 -0
  169. package/dist/esm/test/stringify.test.js +22 -0
  170. package/dist/esm/test/test_constants.d.ts +33 -0
  171. package/dist/esm/test/test_constants.js +89 -0
  172. package/dist/esm/test/v1.test.d.ts +1 -0
  173. package/dist/esm/test/v1.test.js +126 -0
  174. package/dist/esm/test/v35.test.d.ts +1 -0
  175. package/dist/esm/test/v35.test.js +142 -0
  176. package/dist/esm/test/v4.test.d.ts +1 -0
  177. package/dist/esm/test/v4.test.js +59 -0
  178. package/dist/esm/test/v6.test.d.ts +1 -0
  179. package/dist/esm/test/v6.test.js +55 -0
  180. package/dist/esm/test/v7.test.d.ts +1 -0
  181. package/dist/esm/test/v7.test.js +193 -0
  182. package/dist/esm/test/validate.test.d.ts +1 -0
  183. package/dist/esm/test/validate.test.js +12 -0
  184. package/dist/esm/test/version.test.d.ts +1 -0
  185. package/dist/esm/test/version.test.js +19 -0
  186. package/dist/esm/uuid-bin.d.ts +1 -0
  187. package/dist/esm/uuid-bin.js +71 -0
  188. package/dist/esm/v1.d.ts +11 -0
  189. package/dist/esm/v1.js +76 -0
  190. package/dist/esm/v1ToV6.d.ts +2 -0
  191. package/dist/esm/v1ToV6.js +11 -0
  192. package/dist/esm/v3.d.ts +9 -0
  193. package/dist/esm/v3.js +10 -0
  194. package/dist/esm/v35.d.ts +7 -0
  195. package/dist/esm/v35.js +37 -0
  196. package/dist/esm/v4.d.ts +4 -0
  197. package/dist/esm/v4.js +22 -0
  198. package/dist/esm/v5.d.ts +9 -0
  199. package/dist/esm/v5.js +10 -0
  200. package/dist/esm/v6.d.ts +4 -0
  201. package/dist/esm/v6.js +18 -0
  202. package/dist/esm/v6ToV1.d.ts +2 -0
  203. package/dist/esm/v6ToV1.js +11 -0
  204. package/dist/esm/v7.d.ts +9 -0
  205. package/dist/esm/v7.js +58 -0
  206. package/dist/esm/validate.d.ts +2 -0
  207. package/dist/esm/validate.js +6 -0
  208. package/dist/esm/version.d.ts +2 -0
  209. package/dist/esm/version.js +9 -0
  210. package/dist/esm-browser/_types.d.ts +21 -0
  211. package/dist/esm-browser/_types.js +2 -0
  212. package/dist/esm-browser/index.d.ts +14 -0
  213. package/dist/esm-browser/index.js +2 -1
  214. package/dist/esm-browser/max.d.ts +2 -0
  215. package/dist/esm-browser/max.js +2 -1
  216. package/dist/esm-browser/md5.d.ts +2 -0
  217. package/dist/esm-browser/md5.js +114 -172
  218. package/dist/esm-browser/native.d.ts +4 -0
  219. package/dist/esm-browser/native.js +3 -4
  220. package/dist/esm-browser/nil.d.ts +2 -0
  221. package/dist/esm-browser/nil.js +2 -1
  222. package/dist/esm-browser/parse.d.ts +2 -0
  223. package/dist/esm-browser/parse.js +7 -34
  224. package/dist/esm-browser/regex.d.ts +2 -0
  225. package/dist/esm-browser/regex.js +2 -1
  226. package/dist/esm-browser/rng.d.ts +1 -0
  227. package/dist/esm-browser/rng.js +9 -14
  228. package/dist/esm-browser/sha1.d.ts +2 -0
  229. package/dist/esm-browser/sha1.js +63 -68
  230. package/dist/esm-browser/stringify.d.ts +3 -0
  231. package/dist/esm-browser/stringify.js +30 -25
  232. package/dist/esm-browser/test/parse.test.d.ts +1 -0
  233. package/dist/esm-browser/test/parse.test.js +49 -0
  234. package/dist/esm-browser/test/rng.test.d.ts +1 -0
  235. package/dist/esm-browser/test/rng.test.js +13 -0
  236. package/dist/esm-browser/test/stringify.test.d.ts +1 -0
  237. package/dist/esm-browser/test/stringify.test.js +22 -0
  238. package/dist/esm-browser/test/test_constants.d.ts +33 -0
  239. package/dist/esm-browser/test/test_constants.js +89 -0
  240. package/dist/esm-browser/test/v1.test.d.ts +1 -0
  241. package/dist/esm-browser/test/v1.test.js +126 -0
  242. package/dist/esm-browser/test/v35.test.d.ts +1 -0
  243. package/dist/esm-browser/test/v35.test.js +142 -0
  244. package/dist/esm-browser/test/v4.test.d.ts +1 -0
  245. package/dist/esm-browser/test/v4.test.js +59 -0
  246. package/dist/esm-browser/test/v6.test.d.ts +1 -0
  247. package/dist/esm-browser/test/v6.test.js +55 -0
  248. package/dist/esm-browser/test/v7.test.d.ts +1 -0
  249. package/dist/esm-browser/test/v7.test.js +193 -0
  250. package/dist/esm-browser/test/validate.test.d.ts +1 -0
  251. package/dist/esm-browser/test/validate.test.js +12 -0
  252. package/dist/esm-browser/test/version.test.d.ts +1 -0
  253. package/dist/esm-browser/test/version.test.js +19 -0
  254. package/dist/esm-browser/uuid-bin.d.ts +1 -0
  255. package/dist/esm-browser/uuid-bin.js +71 -0
  256. package/dist/esm-browser/v1.d.ts +11 -0
  257. package/dist/esm-browser/v1.js +68 -117
  258. package/dist/esm-browser/v1ToV6.d.ts +2 -0
  259. package/dist/esm-browser/v1ToV6.js +7 -16
  260. package/dist/esm-browser/v3.d.ts +9 -0
  261. package/dist/esm-browser/v3.js +9 -3
  262. package/dist/esm-browser/v35.d.ts +7 -0
  263. package/dist/esm-browser/v35.js +29 -47
  264. package/dist/esm-browser/v4.d.ts +4 -0
  265. package/dist/esm-browser/v4.js +16 -19
  266. package/dist/esm-browser/v5.d.ts +9 -0
  267. package/dist/esm-browser/v5.js +9 -3
  268. package/dist/esm-browser/v6.d.ts +4 -0
  269. package/dist/esm-browser/v6.js +14 -32
  270. package/dist/esm-browser/v6ToV1.d.ts +2 -0
  271. package/dist/esm-browser/v6ToV1.js +6 -15
  272. package/dist/esm-browser/v7.d.ts +9 -0
  273. package/dist/esm-browser/v7.js +51 -139
  274. package/dist/esm-browser/validate.d.ts +2 -0
  275. package/dist/esm-browser/validate.js +3 -2
  276. package/dist/esm-browser/version.d.ts +2 -0
  277. package/dist/esm-browser/version.js +6 -5
  278. package/package.json +54 -64
  279. package/wrapper.mjs +1 -1
  280. package/dist/bin/uuid +0 -2
  281. package/dist/commonjs-browser/index.js +0 -104
  282. package/dist/commonjs-browser/max.js +0 -7
  283. package/dist/commonjs-browser/md5.js +0 -200
  284. package/dist/commonjs-browser/native.js +0 -10
  285. package/dist/commonjs-browser/nil.js +0 -7
  286. package/dist/commonjs-browser/parse.js +0 -44
  287. package/dist/commonjs-browser/regex.js +0 -7
  288. package/dist/commonjs-browser/rng.js +0 -23
  289. package/dist/commonjs-browser/sha1.js +0 -82
  290. package/dist/commonjs-browser/stringify.js +0 -38
  291. package/dist/commonjs-browser/v1.js +0 -131
  292. package/dist/commonjs-browser/v1ToV6.js +0 -26
  293. package/dist/commonjs-browser/v3.js +0 -11
  294. package/dist/commonjs-browser/v35.js +0 -63
  295. package/dist/commonjs-browser/v4.js +0 -32
  296. package/dist/commonjs-browser/v5.js +0 -11
  297. package/dist/commonjs-browser/v6.js +0 -42
  298. package/dist/commonjs-browser/v6ToV1.js +0 -26
  299. package/dist/commonjs-browser/v7.js +0 -152
  300. package/dist/commonjs-browser/validate.js +0 -12
  301. package/dist/commonjs-browser/version.js +0 -15
  302. package/dist/esm-node/max.js +0 -1
  303. package/dist/esm-node/md5.js +0 -10
  304. package/dist/esm-node/native.js +0 -4
  305. package/dist/esm-node/nil.js +0 -1
  306. package/dist/esm-node/parse.js +0 -37
  307. package/dist/esm-node/regex.js +0 -1
  308. package/dist/esm-node/rng.js +0 -10
  309. package/dist/esm-node/sha1.js +0 -10
  310. package/dist/esm-node/stringify.js +0 -31
  311. package/dist/esm-node/v1.js +0 -125
  312. package/dist/esm-node/v1ToV6.js +0 -20
  313. package/dist/esm-node/v3.js +0 -4
  314. package/dist/esm-node/v35.js +0 -55
  315. package/dist/esm-node/v4.js +0 -25
  316. package/dist/esm-node/v5.js +0 -4
  317. package/dist/esm-node/v6.js +0 -32
  318. package/dist/esm-node/v6ToV1.js +0 -20
  319. package/dist/esm-node/v7.js +0 -146
  320. package/dist/esm-node/validate.js +0 -5
  321. package/dist/esm-node/version.js +0 -8
  322. package/dist/index.js +0 -104
  323. package/dist/max.js +0 -7
  324. package/dist/md5-browser.js +0 -200
  325. package/dist/md5.js +0 -17
  326. package/dist/native-browser.js +0 -10
  327. package/dist/native.js +0 -11
  328. package/dist/nil.js +0 -7
  329. package/dist/parse.js +0 -44
  330. package/dist/regex.js +0 -7
  331. package/dist/rng-browser.js +0 -23
  332. package/dist/rng.js +0 -17
  333. package/dist/sha1-browser.js +0 -82
  334. package/dist/sha1.js +0 -17
  335. package/dist/stringify.js +0 -38
  336. package/dist/uuid-bin.js +0 -75
  337. package/dist/v1.js +0 -131
  338. package/dist/v1ToV6.js +0 -26
  339. package/dist/v3.js +0 -11
  340. package/dist/v35.js +0 -63
  341. package/dist/v4.js +0 -32
  342. package/dist/v5.js +0 -11
  343. package/dist/v6.js +0 -38
  344. package/dist/v6ToV1.js +0 -26
  345. package/dist/v7.js +0 -152
  346. package/dist/validate.js +0 -12
  347. package/dist/version.js +0 -15
@@ -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
+ import { randomUUID } from 'crypto';
2
+ declare const _default: {
3
+ randomUUID: typeof randomUUID;
4
+ };
5
+ export default _default;
@@ -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==
@@ -0,0 +1,2 @@
1
+ declare const _default: "00000000-0000-0000-0000-000000000000";
2
+ export default _default;
@@ -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,2 @@
1
+ declare function parse(uuid: string): Uint8Array;
2
+ export default parse;
@@ -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,2 @@
1
+ declare const _default: RegExp;
2
+ export default _default;
@@ -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;
@@ -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=
@@ -0,0 +1,2 @@
1
+ declare function sha1(bytes: Uint8Array): Buffer;
2
+ export default sha1;
@@ -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,3 @@
1
+ export declare function unsafeStringify(arr: Uint8Array, offset?: number): string;
2
+ declare function stringify(arr: Uint8Array, offset?: number): string;
3
+ export default stringify;
@@ -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 {};