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,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 {};
@@ -0,0 +1,144 @@
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 md5_js_1 = require("../md5.js");
6
+ const sha1_js_1 = require("../sha1.js");
7
+ const v3_js_1 = require("../v3.js");
8
+ const v35_js_1 = require("../v35.js");
9
+ const v5_js_1 = require("../v5.js");
10
+ (0, node_test_1.describe)('v35', () => {
11
+ const HASH_SAMPLES = [
12
+ {
13
+ input: (0, v35_js_1.stringToBytes)(''),
14
+ sha1: 'da39a3ee5e6b4b0d3255bfef95601890afd80709',
15
+ md5: 'd41d8cd98f00b204e9800998ecf8427e',
16
+ },
17
+ {
18
+ input: (0, v35_js_1.stringToBytes)('\t\b\f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA\u00AB\u00AC\u00AE\u00AF\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u00FE\u00FF'),
19
+ sha1: 'ca4a426a3d536f14cfd79011e79e10d64de950a0',
20
+ md5: 'e8098ec21950f841731d28749129d3ee',
21
+ },
22
+ {
23
+ input: (0, v35_js_1.stringToBytes)('\u00A5\u0104\u018F\u0256\u02B1o\u0315\u038E\u0409\u0500\u0531\u05E1\u05B6\u0920\u0903\u09A4\u0983\u0A20\u0A02\u0AA0\u0A83\u0B06\u0C05\u0C03\u1401\u16A0'),
24
+ sha1: 'f2753ebc390e5f637e333c2a4179644a93ae9f65',
25
+ md5: '231b309e277b6be8bb3d6c688b7f098b',
26
+ },
27
+ ];
28
+ function hashToHex(hash) {
29
+ const chars = new Array(hash.length);
30
+ for (let i = 0; i < hash.length; i++) {
31
+ chars[i] = hash[i].toString(16).padStart(2, '0');
32
+ }
33
+ return chars.join('');
34
+ }
35
+ HASH_SAMPLES.forEach(function (sample, i) {
36
+ (0, node_test_1.default)(`sha1(node) HASH_SAMPLES[${i}]`, () => {
37
+ assert.equal(hashToHex((0, sha1_js_1.default)(sample.input)), sample.sha1);
38
+ });
39
+ });
40
+ HASH_SAMPLES.forEach(function (sample, i) {
41
+ (0, node_test_1.default)(`md5(node) HASH_SAMPLES[${i}]`, () => {
42
+ assert.equal(hashToHex((0, md5_js_1.default)(sample.input)), sample.md5);
43
+ });
44
+ });
45
+ (0, node_test_1.default)('v3', () => {
46
+ assert.strictEqual((0, v3_js_1.default)('hello.example.com', v3_js_1.default.DNS), '9125a8dc-52ee-365b-a5aa-81b0b3681cf6');
47
+ assert.strictEqual((0, v3_js_1.default)('http://example.com/hello', v3_js_1.default.URL), 'c6235813-3ba4-3801-ae84-e0a6ebb7d138');
48
+ assert.strictEqual((0, v3_js_1.default)('hello', '0f5abcd1-c194-47f3-905b-2df7263a084b'), 'a981a0c2-68b1-35dc-bcfc-296e52ab01ec');
49
+ });
50
+ (0, node_test_1.default)('v3 namespace.toUpperCase', () => {
51
+ assert.strictEqual((0, v3_js_1.default)('hello.example.com', v3_js_1.default.DNS.toUpperCase()), '9125a8dc-52ee-365b-a5aa-81b0b3681cf6');
52
+ assert.strictEqual((0, v3_js_1.default)('http://example.com/hello', v3_js_1.default.URL.toUpperCase()), 'c6235813-3ba4-3801-ae84-e0a6ebb7d138');
53
+ assert.strictEqual((0, v3_js_1.default)('hello', '0f5abcd1-c194-47f3-905b-2df7263a084b'.toUpperCase()), 'a981a0c2-68b1-35dc-bcfc-296e52ab01ec');
54
+ });
55
+ (0, node_test_1.default)('v3 namespace string validation', () => {
56
+ assert.throws(() => {
57
+ (0, v3_js_1.default)('hello.example.com', 'zyxwvuts-rqpo-nmlk-jihg-fedcba000000');
58
+ });
59
+ assert.throws(() => {
60
+ (0, v3_js_1.default)('hello.example.com', 'invalid uuid value');
61
+ });
62
+ assert.ok((0, v3_js_1.default)('hello.example.com', '00000000-0000-0000-0000-000000000000'));
63
+ });
64
+ (0, node_test_1.default)('v3 namespace buffer validation', () => {
65
+ assert.throws(() => {
66
+ (0, v3_js_1.default)('hello.example.com', new Uint8Array(15));
67
+ });
68
+ assert.throws(() => {
69
+ (0, v3_js_1.default)('hello.example.com', new Uint8Array(17));
70
+ });
71
+ assert.ok((0, v3_js_1.default)('hello.example.com', new Uint8Array(16).fill(0)));
72
+ });
73
+ (0, node_test_1.default)('v3 fill buffer', () => {
74
+ let buf = new Uint8Array(16);
75
+ const expectedUuid = Uint8Array.of(0x91, 0x25, 0xa8, 0xdc, 0x52, 0xee, 0x36, 0x5b, 0xa5, 0xaa, 0x81, 0xb0, 0xb3, 0x68, 0x1c, 0xf6);
76
+ const result = (0, v3_js_1.default)('hello.example.com', v3_js_1.default.DNS, buf);
77
+ assert.deepEqual(buf, expectedUuid);
78
+ assert.strictEqual(result, buf);
79
+ buf = new Uint8Array(19).fill(0xaa);
80
+ const expectedBuf = new Uint8Array(19).fill(0xaa);
81
+ expectedBuf.set(expectedUuid, 3);
82
+ (0, v3_js_1.default)('hello.example.com', v3_js_1.default.DNS, buf, 3);
83
+ assert.deepEqual(buf, expectedBuf);
84
+ });
85
+ (0, node_test_1.default)('v3 undefined/null', () => {
86
+ assert.throws(() => (0, v3_js_1.default)());
87
+ assert.throws(() => (0, v3_js_1.default)('hello'));
88
+ assert.throws(() => (0, v3_js_1.default)('hello.example.com', undefined));
89
+ assert.throws(() => (0, v3_js_1.default)('hello.example.com', null, new Uint8Array(16)));
90
+ });
91
+ (0, node_test_1.default)('v5', () => {
92
+ assert.strictEqual((0, v5_js_1.default)('hello.example.com', v5_js_1.default.DNS), 'fdda765f-fc57-5604-a269-52a7df8164ec');
93
+ assert.strictEqual((0, v5_js_1.default)('http://example.com/hello', v5_js_1.default.URL), '3bbcee75-cecc-5b56-8031-b6641c1ed1f1');
94
+ assert.strictEqual((0, v5_js_1.default)('hello', '0f5abcd1-c194-47f3-905b-2df7263a084b'), '90123e1c-7512-523e-bb28-76fab9f2f73d');
95
+ });
96
+ (0, node_test_1.default)('v5 namespace.toUpperCase', () => {
97
+ assert.strictEqual((0, v5_js_1.default)('hello.example.com', v5_js_1.default.DNS.toUpperCase()), 'fdda765f-fc57-5604-a269-52a7df8164ec');
98
+ assert.strictEqual((0, v5_js_1.default)('http://example.com/hello', v5_js_1.default.URL.toUpperCase()), '3bbcee75-cecc-5b56-8031-b6641c1ed1f1');
99
+ assert.strictEqual((0, v5_js_1.default)('hello', '0f5abcd1-c194-47f3-905b-2df7263a084b'.toUpperCase()), '90123e1c-7512-523e-bb28-76fab9f2f73d');
100
+ });
101
+ (0, node_test_1.default)('v5 namespace string validation', () => {
102
+ assert.throws(() => {
103
+ (0, v5_js_1.default)('hello.example.com', 'zyxwvuts-rqpo-nmlk-jihg-fedcba000000');
104
+ });
105
+ assert.throws(() => {
106
+ (0, v5_js_1.default)('hello.example.com', 'invalid uuid value');
107
+ });
108
+ assert.ok((0, v5_js_1.default)('hello.example.com', '00000000-0000-0000-0000-000000000000'));
109
+ });
110
+ (0, node_test_1.default)('v5 namespace buffer validation', () => {
111
+ assert.throws(() => {
112
+ (0, v5_js_1.default)('hello.example.com', new Uint8Array(15));
113
+ });
114
+ assert.throws(() => {
115
+ (0, v5_js_1.default)('hello.example.com', new Uint8Array(17));
116
+ });
117
+ assert.ok((0, v5_js_1.default)('hello.example.com', new Uint8Array(16).fill(0)));
118
+ });
119
+ (0, node_test_1.default)('v5 fill buffer', () => {
120
+ let buf = new Uint8Array(16);
121
+ const expectedUuid = Uint8Array.of(0xfd, 0xda, 0x76, 0x5f, 0xfc, 0x57, 0x56, 0x04, 0xa2, 0x69, 0x52, 0xa7, 0xdf, 0x81, 0x64, 0xec);
122
+ const result = (0, v5_js_1.default)('hello.example.com', v5_js_1.default.DNS, buf);
123
+ assert.deepEqual(buf, expectedUuid);
124
+ assert.strictEqual(result, buf);
125
+ buf = new Uint8Array(19).fill(0xaa);
126
+ const expectedBuf = new Uint8Array(19).fill(0xaa);
127
+ expectedBuf.set(expectedUuid, 3);
128
+ (0, v5_js_1.default)('hello.example.com', v5_js_1.default.DNS, buf, 3);
129
+ assert.deepEqual(buf, expectedBuf);
130
+ });
131
+ (0, node_test_1.default)('v5 undefined/null', () => {
132
+ assert.throws(() => (0, v5_js_1.default)());
133
+ assert.throws(() => (0, v5_js_1.default)('hello'));
134
+ assert.throws(() => (0, v5_js_1.default)('hello.example.com', undefined));
135
+ assert.throws(() => (0, v5_js_1.default)('hello.example.com', null, new Uint8Array(16)));
136
+ });
137
+ (0, node_test_1.default)('v3/v5 constants', () => {
138
+ assert.strictEqual(v3_js_1.default.DNS, '6ba7b810-9dad-11d1-80b4-00c04fd430c8');
139
+ assert.strictEqual(v3_js_1.default.URL, '6ba7b811-9dad-11d1-80b4-00c04fd430c8');
140
+ assert.strictEqual(v5_js_1.default.DNS, '6ba7b810-9dad-11d1-80b4-00c04fd430c8');
141
+ assert.strictEqual(v5_js_1.default.URL, '6ba7b811-9dad-11d1-80b4-00c04fd430c8');
142
+ });
143
+ });
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjM1LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdC92MzUudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFpQztBQUNqQyx5Q0FBMkM7QUFDM0Msc0NBQTRCO0FBQzVCLHdDQUE4QjtBQUM5QixvQ0FBMEI7QUFDMUIsc0NBQTBDO0FBQzFDLG9DQUEwQjtBQUUxQixJQUFBLG9CQUFRLEVBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRTtJQUNuQixNQUFNLFlBQVksR0FBRztRQUNuQjtZQUNFLEtBQUssRUFBRSxJQUFBLHNCQUFhLEVBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUksRUFBRSwwQ0FBMEM7WUFDaEQsR0FBRyxFQUFFLGtDQUFrQztTQUN4QztRQUdEO1lBQ0UsS0FBSyxFQUFFLElBQUEsc0JBQWEsRUFDbEIsOHBCQUE4cEIsQ0FDL3BCO1lBQ0QsSUFBSSxFQUFFLDBDQUEwQztZQUNoRCxHQUFHLEVBQUUsa0NBQWtDO1NBQ3hDO1FBR0Q7WUFDRSxLQUFLLEVBQUUsSUFBQSxzQkFBYSxFQUNsQix5SkFBeUosQ0FDMUo7WUFDRCxJQUFJLEVBQUUsMENBQTBDO1lBQ2hELEdBQUcsRUFBRSxrQ0FBa0M7U0FDeEM7S0FDRixDQUFDO0lBRUYsU0FBUyxTQUFTLENBQUMsSUFBZ0I7UUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDckMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBQ0QsT0FBTyxLQUFL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
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,61 @@
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 native_js_1 = require("../native.js");
6
+ const v4_js_1 = require("../v4.js");
7
+ const randomBytesFixture = Uint8Array.of(0x10, 0x91, 0x56, 0xbe, 0xc4, 0xfb, 0xc1, 0xea, 0x71, 0xb4, 0xef, 0xe1, 0x67, 0x1c, 0x58, 0x36);
8
+ const expectedBytes = Uint8Array.of(16, 145, 86, 190, 196, 251, 65, 234, 177, 180, 239, 225, 103, 28, 88, 54);
9
+ (0, node_test_1.describe)('v4', () => {
10
+ (0, node_test_1.default)('subsequent UUIDs are different', () => {
11
+ const id1 = (0, v4_js_1.default)();
12
+ const id2 = (0, v4_js_1.default)();
13
+ assert.ok(id1 !== id2);
14
+ });
15
+ (0, node_test_1.default)('should uses native randomUUID() if no option is passed', async () => {
16
+ const mock = (await Promise.resolve().then(() => require('node:test'))).default.mock;
17
+ if (!mock) {
18
+ return;
19
+ }
20
+ const mockRandomUUID = mock.method(native_js_1.default, 'randomUUID');
21
+ assert.equal(mockRandomUUID.mock.callCount(), 0);
22
+ (0, v4_js_1.default)();
23
+ assert.equal(mockRandomUUID.mock.callCount(), 1);
24
+ mock.restoreAll();
25
+ });
26
+ (0, node_test_1.default)('should not use native randomUUID() if an option is passed', async () => {
27
+ const mock = (await Promise.resolve().then(() => require('node:test'))).default.mock;
28
+ if (!mock) {
29
+ return;
30
+ }
31
+ const mockRandomUUID = mock.method(native_js_1.default, 'randomUUID');
32
+ assert.equal(mockRandomUUID.mock.callCount(), 0);
33
+ (0, v4_js_1.default)({});
34
+ assert.equal(mockRandomUUID.mock.callCount(), 0);
35
+ mock.restoreAll();
36
+ });
37
+ (0, node_test_1.default)('explicit options.random produces expected result', () => {
38
+ const id = (0, v4_js_1.default)({ random: randomBytesFixture });
39
+ assert.strictEqual(id, '109156be-c4fb-41ea-b1b4-efe1671c5836');
40
+ });
41
+ (0, node_test_1.default)('explicit options.rng produces expected result', () => {
42
+ const id = (0, v4_js_1.default)({ rng: () => randomBytesFixture });
43
+ assert.strictEqual(id, '109156be-c4fb-41ea-b1b4-efe1671c5836');
44
+ });
45
+ (0, node_test_1.default)('fills one UUID into a buffer as expected', () => {
46
+ const buffer = new Uint8Array(16);
47
+ const result = (0, v4_js_1.default)({ random: randomBytesFixture }, buffer);
48
+ assert.deepEqual(buffer, expectedBytes);
49
+ assert.strictEqual(buffer, result);
50
+ });
51
+ (0, node_test_1.default)('fills two UUIDs into a buffer as expected', () => {
52
+ const buffer = new Uint8Array(32);
53
+ (0, v4_js_1.default)({ random: randomBytesFixture }, buffer, 0);
54
+ (0, v4_js_1.default)({ random: randomBytesFixture }, buffer, 16);
55
+ const expectedBuf = new Uint8Array(32);
56
+ expectedBuf.set(expectedBytes);
57
+ expectedBuf.set(expectedBytes, 16);
58
+ assert.deepEqual(buffer, expectedBuf);
59
+ });
60
+ });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0L3Y0LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMseUNBQTJDO0FBQzNDLDRDQUFrQztBQUNsQyxvQ0FBMEI7QUFFMUIsTUFBTSxrQkFBa0IsR0FBRyxVQUFVLENBQUMsRUFBRSxDQUN0QyxJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLENBQ0wsQ0FBQztBQUVGLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQ2pDLEVBQUUsRUFDRixHQUFHLEVBQ0gsRUFBRSxFQUNGLEdBQUcsRUFDSCxHQUFHLEVBQ0gsR0FBRyxFQUNILEVBQUUsRUFDRixHQUFHLEVBQ0gsR0FBRyxFQUNILEdBQUcsRUFDSCxHQUFHLEVBQ0gsR0FBRyxFQUNILEdBQUcsRUFDSCxFQUFFLEVBQ0YsRUFBRSxFQUNGLEVBQUUsQ0FDSCxDQUFDO0FBRUYsSUFBQSxvQkFBUSxFQUFDLElBQUksRUFBRSxHQUFHLEVBQUU7SUFDbEIsSUFBQSxtQkFBSSxFQUFDLGdDQUFnQyxFQUFFLEdBQUcsRUFBRTtRQUMxQyxNQUFNLEdBQUcsR0FBRyxJQUFBLGVBQUUsR0FBRSxDQUFDO1FBQ2pCLE1BQU0sR0FBRyxHQUFHLElBQUEsZUFBRSxHQUFFLENBQUM7UUFFakIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDekIsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLG1CQUFJLEVBQUMsd0RBQXdELEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFJeEUsTUFBTSxJQUFJLEdBQUcsQ0FBQywyQ0FB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
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,57 @@
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 v1ToV6_js_1 = require("../v1ToV6.js");
6
+ const v6_js_1 = require("../v6.js");
7
+ const v6ToV1_js_1 = require("../v6ToV1.js");
8
+ (0, node_test_1.describe)('v6', () => {
9
+ const V1_ID = 'f1207660-21d2-11ef-8c4f-419efbd44d48';
10
+ const V6_ID = '1ef21d2f-1207-6660-8c4f-419efbd44d48';
11
+ const fullOptions = {
12
+ msecs: 0x133b891f705,
13
+ nsecs: 0x1538,
14
+ clockseq: 0x385c,
15
+ node: Uint8Array.of(0x61, 0xcd, 0x3c, 0xbb, 0x32, 0x10),
16
+ };
17
+ const EXPECTED_BYTES = Uint8Array.of(0x1e, 0x11, 0x22, 0xbd, 0x94, 0x28, 0x68, 0x88, 0xb8, 0x5c, 0x61, 0xcd, 0x3c, 0xbb, 0x32, 0x10);
18
+ (0, node_test_1.default)('default behavior', () => {
19
+ const id = (0, v6_js_1.default)();
20
+ assert.ok(/[0-9a-f]{8}-[0-9a-f]{4}-6[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/.test(id), 'id is valid v6 UUID');
21
+ });
22
+ (0, node_test_1.default)('default behavior (binary type)', () => {
23
+ const buffer = new Uint8Array(16);
24
+ const result = (0, v6_js_1.default)(fullOptions, buffer);
25
+ assert.deepEqual(buffer, EXPECTED_BYTES);
26
+ assert.strictEqual(buffer, result);
27
+ });
28
+ (0, node_test_1.default)('all options', () => {
29
+ const id = (0, v6_js_1.default)(fullOptions);
30
+ assert.equal(id, '1e1122bd-9428-6888-b85c-61cd3cbb3210');
31
+ });
32
+ (0, node_test_1.default)('sort by creation time', () => {
33
+ const ids = [];
34
+ for (let i = 0; i < 5; i++) {
35
+ ids.push((0, v6_js_1.default)({ msecs: i * 1000 }));
36
+ }
37
+ assert.deepEqual(ids, ids.slice().sort());
38
+ });
39
+ (0, node_test_1.default)('creating at array offset', () => {
40
+ const buffer = new Uint8Array(32);
41
+ (0, v6_js_1.default)(fullOptions, buffer, 0);
42
+ (0, v6_js_1.default)(fullOptions, buffer, 16);
43
+ const expectedBuf = new Uint8Array(32);
44
+ expectedBuf.set(EXPECTED_BYTES, 0);
45
+ expectedBuf.set(EXPECTED_BYTES, 16);
46
+ assert.deepEqual(buffer, expectedBuf);
47
+ });
48
+ (0, node_test_1.default)('v1 -> v6 conversion', () => {
49
+ const id = (0, v1ToV6_js_1.default)(V1_ID);
50
+ assert.equal(id, V6_ID);
51
+ });
52
+ (0, node_test_1.default)('v6 -> v1 conversion', () => {
53
+ const id = (0, v6ToV1_js_1.default)(V6_ID);
54
+ assert.equal(id, V1_ID);
55
+ });
56
+ });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjYudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZXN0L3Y2LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxpQ0FBaUM7QUFDakMseUNBQTJDO0FBQzNDLDRDQUFrQztBQUNsQyxvQ0FBMEI7QUFDMUIsNENBQWtDO0FBRWxDLElBQUEsb0JBQVEsRUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFO0lBQ2xCLE1BQU0sS0FBSyxHQUFHLHNDQUFzQyxDQUFDO0lBQ3JELE1BQU0sS0FBSyxHQUFHLHNDQUFzQyxDQUFDO0lBRXJELE1BQU0sV0FBVyxHQUFHO1FBQ2xCLEtBQUssRUFBRSxhQUFhO1FBQ3BCLEtBQUssRUFBRSxNQUFNO1FBQ2IsUUFBUSxFQUFFLE1BQU07UUFDaEIsSUFBSSxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7S0FDeEQsQ0FBQztJQUVGLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQ2xDLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksQ0FDTCxDQUFDO0lBRUYsSUFBQSxtQkFBSSxFQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRTtRQUU1QixNQUFNLEVBQUUsR0FBRyxJQUFBLGVBQUUsR0FBRSxDQUFDO1FBQ2hCLE1BQU0sQ0FBQyxFQUFFLENBQ1AscUVBQXFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUU5RSxxQkFBcUIsQ0FDdEIsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBQSxtQkFBSSxFQUFDLGdDQUFnQyxF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
@@ -0,0 +1 @@
1
+ export {};