1 | import validate from './validate.js';
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | var byteToHex = [];
|
8 |
|
9 | for (var i = 0; i < 256; ++i) {
|
10 | byteToHex.push((i + 0x100).toString(16).substr(1));
|
11 | }
|
12 |
|
13 | function stringify(arr) {
|
14 | var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
15 |
|
16 |
|
17 | var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 | if (!validate(uuid)) {
|
24 | throw TypeError('Stringified UUID is invalid');
|
25 | }
|
26 |
|
27 | return uuid;
|
28 | }
|
29 |
|
30 | export default stringify; |
\ | No newline at end of file |