UNPKG

1.89 kBJavaScriptView Raw
1"use strict";
2
3var _assert = _interopRequireDefault(require("assert"));
4
5var _v = _interopRequireDefault(require("./v1.js"));
6
7var _v2 = _interopRequireDefault(require("./v3.js"));
8
9var _v3 = _interopRequireDefault(require("./v4.js"));
10
11var _v4 = _interopRequireDefault(require("./v5.js"));
12
13function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
15function usage() {
16 console.log('Usage:');
17 console.log(' uuid');
18 console.log(' uuid v1');
19 console.log(' uuid v3 <name> <namespace uuid>');
20 console.log(' uuid v4');
21 console.log(' uuid v5 <name> <namespace uuid>');
22 console.log(' uuid --help');
23 console.log('\nNote: <namespace uuid> may be "URL" or "DNS" to use the corresponding UUIDs defined by RFC4122');
24}
25
26var args = process.argv.slice(2);
27
28if (args.indexOf('--help') >= 0) {
29 usage();
30 process.exit(0);
31}
32
33var version = args.shift() || 'v4';
34
35switch (version) {
36 case 'v1':
37 console.log((0, _v.default)());
38 break;
39
40 case 'v3':
41 var name = args.shift();
42 var namespace = args.shift();
43 (0, _assert.default)(name != null, 'v3 name not specified');
44 (0, _assert.default)(namespace != null, 'v3 namespace not specified');
45 if (namespace === 'URL') namespace = _v2.default.URL;
46 if (namespace === 'DNS') namespace = _v2.default.DNS;
47 console.log((0, _v2.default)(name, namespace));
48 break;
49
50 case 'v4':
51 console.log((0, _v3.default)());
52 break;
53
54 case 'v5':
55 var name = args.shift();
56 var namespace = args.shift();
57 (0, _assert.default)(name != null, 'v5 name not specified');
58 (0, _assert.default)(namespace != null, 'v5 namespace not specified');
59 if (namespace === 'URL') namespace = _v4.default.URL;
60 if (namespace === 'DNS') namespace = _v4.default.DNS;
61 console.log((0, _v4.default)(name, namespace));
62 break;
63
64 default:
65 usage();
66 process.exit(1);
67}
\No newline at end of file