@emuanalytics/flow-cli 1.3.31

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 (143) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +0 -0
  3. package/dist/commands/apikeys/create.js +144 -0
  4. package/dist/commands/apikeys/create.js.map +1 -0
  5. package/dist/commands/apikeys/delete.js +74 -0
  6. package/dist/commands/apikeys/delete.js.map +1 -0
  7. package/dist/commands/apikeys/list.js +53 -0
  8. package/dist/commands/apikeys/list.js.map +1 -0
  9. package/dist/commands/apikeys/metadata.js +59 -0
  10. package/dist/commands/apikeys/metadata.js.map +1 -0
  11. package/dist/commands/apikeys.js +13 -0
  12. package/dist/commands/apikeys.js.map +1 -0
  13. package/dist/commands/applications.js +13 -0
  14. package/dist/commands/applications.js.map +1 -0
  15. package/dist/commands/apps/create.js +167 -0
  16. package/dist/commands/apps/create.js.map +1 -0
  17. package/dist/commands/apps/delete.js +74 -0
  18. package/dist/commands/apps/delete.js.map +1 -0
  19. package/dist/commands/apps/export.js +94 -0
  20. package/dist/commands/apps/export.js.map +1 -0
  21. package/dist/commands/apps/import.js +119 -0
  22. package/dist/commands/apps/import.js.map +1 -0
  23. package/dist/commands/apps/list.js +54 -0
  24. package/dist/commands/apps/list.js.map +1 -0
  25. package/dist/commands/apps/metadata.js +61 -0
  26. package/dist/commands/apps/metadata.js.map +1 -0
  27. package/dist/commands/apps/update.js +110 -0
  28. package/dist/commands/apps/update.js.map +1 -0
  29. package/dist/commands/databases/create.js +190 -0
  30. package/dist/commands/databases/create.js.map +1 -0
  31. package/dist/commands/databases/delete.js +74 -0
  32. package/dist/commands/databases/delete.js.map +1 -0
  33. package/dist/commands/databases/list.js +52 -0
  34. package/dist/commands/databases/list.js.map +1 -0
  35. package/dist/commands/databases.js +13 -0
  36. package/dist/commands/databases.js.map +1 -0
  37. package/dist/commands/datasets/attributes.js +48 -0
  38. package/dist/commands/datasets/attributes.js.map +1 -0
  39. package/dist/commands/datasets/create.js +180 -0
  40. package/dist/commands/datasets/create.js.map +1 -0
  41. package/dist/commands/datasets/delete.js +74 -0
  42. package/dist/commands/datasets/delete.js.map +1 -0
  43. package/dist/commands/datasets/export.js +95 -0
  44. package/dist/commands/datasets/export.js.map +1 -0
  45. package/dist/commands/datasets/list.js +52 -0
  46. package/dist/commands/datasets/list.js.map +1 -0
  47. package/dist/commands/datasets/metadata.js +59 -0
  48. package/dist/commands/datasets/metadata.js.map +1 -0
  49. package/dist/commands/datasets/query.js +86 -0
  50. package/dist/commands/datasets/query.js.map +1 -0
  51. package/dist/commands/datasets/update.js +166 -0
  52. package/dist/commands/datasets/update.js.map +1 -0
  53. package/dist/commands/datasets.js +13 -0
  54. package/dist/commands/datasets.js.map +1 -0
  55. package/dist/commands/job.js +13 -0
  56. package/dist/commands/job.js.map +1 -0
  57. package/dist/commands/jobs/delete.js +74 -0
  58. package/dist/commands/jobs/delete.js.map +1 -0
  59. package/dist/commands/jobs/list.js +52 -0
  60. package/dist/commands/jobs/list.js.map +1 -0
  61. package/dist/commands/jobs/metadata.js +36 -0
  62. package/dist/commands/jobs/metadata.js.map +1 -0
  63. package/dist/commands/new.js +63 -0
  64. package/dist/commands/new.js.map +1 -0
  65. package/dist/commands/styles/create.js +130 -0
  66. package/dist/commands/styles/create.js.map +1 -0
  67. package/dist/commands/styles/delete.js +74 -0
  68. package/dist/commands/styles/delete.js.map +1 -0
  69. package/dist/commands/styles/edit.js +37 -0
  70. package/dist/commands/styles/edit.js.map +1 -0
  71. package/dist/commands/styles/list.js +51 -0
  72. package/dist/commands/styles/list.js.map +1 -0
  73. package/dist/commands/styles/metadata.js +61 -0
  74. package/dist/commands/styles/metadata.js.map +1 -0
  75. package/dist/commands/styles/view.js +37 -0
  76. package/dist/commands/styles/view.js.map +1 -0
  77. package/dist/commands/styles.js +13 -0
  78. package/dist/commands/styles.js.map +1 -0
  79. package/dist/commands/tiles/create.js +221 -0
  80. package/dist/commands/tiles/create.js.map +1 -0
  81. package/dist/commands/tiles/delete.js +74 -0
  82. package/dist/commands/tiles/delete.js.map +1 -0
  83. package/dist/commands/tiles/list.js +51 -0
  84. package/dist/commands/tiles/list.js.map +1 -0
  85. package/dist/commands/tiles/metadata.js +61 -0
  86. package/dist/commands/tiles/metadata.js.map +1 -0
  87. package/dist/commands/tiles/preview.js +33 -0
  88. package/dist/commands/tiles/preview.js.map +1 -0
  89. package/dist/commands/tiles/tilespec.js +44 -0
  90. package/dist/commands/tiles/tilespec.js.map +1 -0
  91. package/dist/commands/tiles/update.js +194 -0
  92. package/dist/commands/tiles/update.js.map +1 -0
  93. package/dist/commands/tiles.js +13 -0
  94. package/dist/commands/tiles.js.map +1 -0
  95. package/dist/commands/upload/list.js +51 -0
  96. package/dist/commands/upload/list.js.map +1 -0
  97. package/dist/commands/upload/upload.js +171 -0
  98. package/dist/commands/upload/upload.js.map +1 -0
  99. package/dist/commands/upload.js +13 -0
  100. package/dist/commands/upload.js.map +1 -0
  101. package/dist/commands/users/create.js +140 -0
  102. package/dist/commands/users/create.js.map +1 -0
  103. package/dist/commands/users/delete.js +74 -0
  104. package/dist/commands/users/delete.js.map +1 -0
  105. package/dist/commands/users/list.js +52 -0
  106. package/dist/commands/users/list.js.map +1 -0
  107. package/dist/commands/users/metadata.js +61 -0
  108. package/dist/commands/users/metadata.js.map +1 -0
  109. package/dist/commands/users/update.js +151 -0
  110. package/dist/commands/users/update.js.map +1 -0
  111. package/dist/commands/users.js +13 -0
  112. package/dist/commands/users.js.map +1 -0
  113. package/dist/commands/version.js +35 -0
  114. package/dist/commands/version.js.map +1 -0
  115. package/dist/create-app/create-app.js +147 -0
  116. package/dist/create-app/create-app.js.map +1 -0
  117. package/dist/create-app/download.js +52 -0
  118. package/dist/create-app/download.js.map +1 -0
  119. package/dist/create-app/starters.js +18 -0
  120. package/dist/create-app/starters.js.map +1 -0
  121. package/dist/create-app/unzip.js +89 -0
  122. package/dist/create-app/unzip.js.map +1 -0
  123. package/dist/create-app/utils.js +134 -0
  124. package/dist/create-app/utils.js.map +1 -0
  125. package/dist/create-app/version.js +9 -0
  126. package/dist/create-app/version.js.map +1 -0
  127. package/dist/index.js +71 -0
  128. package/dist/index.js.map +1 -0
  129. package/dist/style-server/app.js +119 -0
  130. package/dist/style-server/app.js.map +1 -0
  131. package/dist/style-server/index.js +97 -0
  132. package/dist/style-server/index.js.map +1 -0
  133. package/dist/utils/index.js +263 -0
  134. package/dist/utils/index.js.map +1 -0
  135. package/maputnik/app.8c54efadcc6633a431f7.js +64 -0
  136. package/maputnik/bundle-stats.html +53 -0
  137. package/maputnik/bundle-stats.json +93486 -0
  138. package/maputnik/favicon.ico +0 -0
  139. package/maputnik/fonts/Roboto-Medium.ttf +0 -0
  140. package/maputnik/fonts/Roboto-Regular.ttf +0 -0
  141. package/maputnik/index.html +131 -0
  142. package/maputnik/manifest.json +9 -0
  143. package/package.json +84 -0
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ exports.handler = exports.builder = exports.desc = exports.command = void 0;
39
+ const utils_1 = require("../../utils");
40
+ const inquirer = __importStar(require("inquirer"));
41
+ exports.command = ['delete <id>', 'rm', 'del'];
42
+ exports.desc = 'Delete a dataset';
43
+ const builder = (args) => {
44
+ return args
45
+ .option('yes', { alias: 'y', description: `Answer 'yes' to confirmation messages`, default: false })
46
+ .positional('id', { describe: 'Dataset id (or unique prefix)', type: 'string' });
47
+ };
48
+ exports.builder = builder;
49
+ function handler({ client, id, yes }) {
50
+ return __awaiter(this, void 0, void 0, function* () {
51
+ try {
52
+ const resource = yield (0, utils_1.resolveResource)(id, client.datasets);
53
+ let confirmed = yes;
54
+ if (!confirmed) {
55
+ const answers = yield inquirer.prompt({
56
+ name: 'confirmed',
57
+ type: 'confirm',
58
+ message: `Are you sure you want to delete '${resource.id}'`,
59
+ default: false
60
+ });
61
+ confirmed = answers.confirmed;
62
+ }
63
+ if (confirmed) {
64
+ yield client.datasets.delete(resource.id);
65
+ (0, utils_1.logDetail)('Deleted');
66
+ }
67
+ }
68
+ catch (e) {
69
+ (0, utils_1.logError)(e);
70
+ }
71
+ });
72
+ }
73
+ exports.handler = handler;
74
+ //# sourceMappingURL=delete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/datasets/delete.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAwE;AAExE,mDAAqC;AAGxB,QAAA,OAAO,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAEvC,QAAA,IAAI,GAAG,kBAAkB,CAAC;AAEhC,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE;IAC1C,OAAO,IAAI;SACR,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,uCAAuC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACnG,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AACrF,CAAC,CAAC;AAJW,QAAA,OAAO,WAIlB;AAQF,SAAsB,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAU;;QACvD,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAe,EAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE5D,IAAI,SAAS,GAAG,GAAG,CAAC;YAEpB,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBACpC,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,oCAAoC,QAAQ,CAAC,EAAE,GAAG;oBAC3D,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBACH,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;aAC/B;YAED,IAAI,SAAS,EAAE;gBACb,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC1C,IAAA,iBAAS,EAAC,SAAS,CAAC,CAAC;aACtB;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;SACb;IACH,CAAC;CAAA;AAvBD,0BAuBC"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ exports.handler = exports.builder = exports.desc = exports.command = void 0;
39
+ const utils_1 = require("../../utils");
40
+ const fs = __importStar(require("fs"));
41
+ exports.command = ['export <id> [destPath]'];
42
+ exports.desc = 'Export a dataset';
43
+ const builder = (args) => {
44
+ return args
45
+ .hide('f')
46
+ .option('o', {
47
+ alias: 'output',
48
+ default: 'geojson',
49
+ describe: 'Output format',
50
+ type: 'string',
51
+ choices: ['geojson', 'gpkg', 'shapefile']
52
+ })
53
+ .positional('id', { describe: 'Dataset id (or unique prefix)', type: 'string' })
54
+ .positional('destPath', { describe: 'Destination path', type: 'string' });
55
+ };
56
+ exports.builder = builder;
57
+ function handler({ client, id, output, destPath }) {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ try {
60
+ const ds = yield (0, utils_1.resolveResource)(id, client.datasets);
61
+ if (ds.type !== 'table') {
62
+ throw new Error(`Export of dataset type '${ds.type}' not supported`);
63
+ }
64
+ if (ds.type !== 'table') {
65
+ throw new Error(`Export of dataset type '${ds.type}' not supported`);
66
+ }
67
+ const exportUrl = client.datasets.getExportUrl(ds.id, output);
68
+ const stream = yield client._get(exportUrl, { responseType: 'stream' });
69
+ if (!destPath) {
70
+ let ext;
71
+ switch (output) {
72
+ case 'geojson':
73
+ ext = 'geojson';
74
+ break;
75
+ case 'gpkg':
76
+ ext = 'gpkg';
77
+ break;
78
+ case 'shapefile':
79
+ ext = 'shp.zip';
80
+ break;
81
+ default:
82
+ throw new Error(`Unsupported output format: ${output}`);
83
+ }
84
+ destPath = `${ds.id}.${ext}`;
85
+ }
86
+ stream.on('end', () => (0, utils_1.log)(`Dataset exported to '${destPath}'`));
87
+ stream.pipe(fs.createWriteStream(destPath));
88
+ }
89
+ catch (e) {
90
+ (0, utils_1.logError)(e);
91
+ }
92
+ });
93
+ }
94
+ exports.handler = handler;
95
+ //# sourceMappingURL=export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../src/commands/datasets/export.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAA6D;AAG7D,uCAAyB;AAEZ,QAAA,OAAO,GAAG,CAAC,wBAAwB,CAAC,CAAC;AAErC,QAAA,IAAI,GAAG,kBAAkB,CAAC;AAEhC,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE;IAC1C,OAAO,IAAI;SACR,IAAI,CAAC,GAAG,CAAC;SACT,MAAM,CAAC,GAAG,EAAE;QACX,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,eAAe;QACzB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC;KAC1C,CAAC;SACD,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;SAC/E,UAAU,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC9E,CAAC,CAAC;AAZW,QAAA,OAAO,WAYlB;AASF,SAAsB,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAU;;QACpE,IAAI;YACF,MAAM,EAAE,GAAG,MAAM,IAAA,uBAAe,EAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAEtD,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,2BAA2B,EAAE,CAAC,IAAI,iBAAiB,CAAC,CAAC;aACtE;YAED,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE;gBACvB,MAAM,IAAI,KAAK,CAAC,2BAA2B,EAAE,CAAC,IAAI,iBAAiB,CAAC,CAAC;aACtE;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAA0B,CAAC,CAAC;YAClF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;YAExE,IAAI,CAAC,QAAQ,EAAE;gBACb,IAAI,GAAW,CAAC;gBAChB,QAAQ,MAAM,EAAE;oBACd,KAAK,SAAS;wBACZ,GAAG,GAAG,SAAS,CAAC;wBAChB,MAAM;oBACR,KAAK,MAAM;wBACT,GAAG,GAAG,MAAM,CAAC;wBACb,MAAM;oBACR,KAAK,WAAW;wBACd,GAAG,GAAG,SAAS,CAAC;wBAChB,MAAM;oBACR;wBACE,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,EAAE,CAAC,CAAC;iBAC3D;gBAED,QAAQ,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC;aAC9B;YAED,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAA,WAAG,EAAC,wBAAwB,QAAQ,GAAG,CAAC,CAAC,CAAC;YACjE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;SAC7C;QAAC,OAAO,CAAC,EAAE;YACV,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;SACb;IACH,CAAC;CAAA;AAvCD,0BAuCC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
6
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7
+ return new (P || (P = Promise))(function (resolve, reject) {
8
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
9
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
10
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
11
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
12
+ });
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.handler = exports.builder = exports.desc = exports.command = void 0;
16
+ const utils_1 = require("../../utils");
17
+ exports.command = ['list [id]', 'ls', '$0'];
18
+ exports.desc = 'List datasets';
19
+ const builder = (args) => {
20
+ return args
21
+ .option('limit', { alias: 'n', type: 'number', describe: 'Limit to n results' })
22
+ .option('offset', { alias: ['o'], type: 'number', describe: 'Start list at offset n' })
23
+ .option('sort', { alias: ['s'], type: 'string', describe: 'Sort by attribute' })
24
+ .conflicts('id', ['limit', 'offset', 'sort'])
25
+ .positional('id', { describe: 'Dataset id (or unique prefix)', type: 'string' });
26
+ };
27
+ exports.builder = builder;
28
+ function handler({ client, id, format, offset, limit, sort }) {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ try {
31
+ let results;
32
+ if (id) {
33
+ const resource = yield (0, utils_1.resolveResource)(id, client.datasets);
34
+ (0, utils_1.logObject)(resource, format);
35
+ }
36
+ else {
37
+ results = yield client.datasets.list({ offset, limit, sort });
38
+ if (format === 'table') {
39
+ (0, utils_1.logObject)(results, 'table', ['id', 'name', 'description', 'type']);
40
+ }
41
+ else {
42
+ (0, utils_1.logObject)(results, format || 'json');
43
+ }
44
+ }
45
+ }
46
+ catch (e) {
47
+ (0, utils_1.logError)(e);
48
+ }
49
+ });
50
+ }
51
+ exports.handler = handler;
52
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/datasets/list.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;AAEH,uCAAmE;AAItD,QAAA,OAAO,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAEpC,QAAA,IAAI,GAAG,eAAe,CAAC;AAE7B,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE;IAC1C,OAAO,IAAI;SACR,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;SAC/E,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,wBAAwB,EAAE,CAAC;SACtF,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;SAC/E,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC5C,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AACrF,CAAC,CAAC;AAPW,QAAA,OAAO,WAOlB;AAWF,SAAsB,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAU;;QAC/E,IAAI;YACF,IAAI,OAAmB,CAAC;YAExB,IAAI,EAAE,EAAE;gBACN,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAe,EAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5D,IAAA,iBAAS,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aAC7B;iBAAM;gBACL,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC9D,IAAI,MAAM,KAAK,OAAO,EAAE;oBACtB,IAAA,iBAAS,EAAC,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;iBACpE;qBAAM;oBACL,IAAA,iBAAS,EAAC,OAAO,EAAE,MAAM,IAAI,MAAM,CAAC,CAAC;iBACtC;aACF;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;SACb;IACH,CAAC;CAAA;AAlBD,0BAkBC"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
6
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7
+ return new (P || (P = Promise))(function (resolve, reject) {
8
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
9
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
10
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
11
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
12
+ });
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.handler = exports.builder = exports.desc = exports.command = void 0;
16
+ const utils_1 = require("../../utils");
17
+ exports.command = ['metadata <id>', 'meta'];
18
+ exports.desc = 'Get/set resource metadata';
19
+ const builder = (args) => {
20
+ return args.positional('id', { describe: 'Dataset id (or unique prefix)', type: 'string' }).option('set', {
21
+ type: 'array',
22
+ describe: 'One or more key/values to set in form <key>=<value>. Use <key>= to delete a key.'
23
+ });
24
+ };
25
+ exports.builder = builder;
26
+ function handler({ client, id, set }) {
27
+ return __awaiter(this, void 0, void 0, function* () {
28
+ try {
29
+ if (!set) {
30
+ // Get metadata
31
+ const resource = yield (0, utils_1.resolveResource)(id, client.datasets);
32
+ (0, utils_1.logObject)(resource.metadata, 'json');
33
+ }
34
+ else {
35
+ // Set metadata
36
+ let resource = yield (0, utils_1.resolveResource)(id, client.datasets);
37
+ // Update metadata
38
+ const keyValues = (0, utils_1.getMetadataKeyValues)(set);
39
+ for (const key of Object.keys(keyValues)) {
40
+ const value = keyValues[key];
41
+ if (value === '') {
42
+ yield client.datasets.deleteMetadata(resource.id, key);
43
+ }
44
+ else {
45
+ yield client.datasets.setMetadata(resource.id, key, value);
46
+ }
47
+ }
48
+ // Reload
49
+ resource = yield (0, utils_1.resolveResource)(id, client.datasets);
50
+ (0, utils_1.logObject)(resource.metadata, 'json');
51
+ }
52
+ }
53
+ catch (e) {
54
+ (0, utils_1.logError)(e);
55
+ }
56
+ });
57
+ }
58
+ exports.handler = handler;
59
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/commands/datasets/metadata.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;AAEH,uCAAyF;AAI5E,QAAA,OAAO,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;AAEpC,QAAA,IAAI,GAAG,2BAA2B,CAAC;AAEzC,MAAM,OAAO,GAAG,CAAC,IAAgB,EAAE,EAAE;IAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE;QACxG,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,kFAAkF;KAC7F,CAAC,CAAC;AACL,CAAC,CAAC;AALW,QAAA,OAAO,WAKlB;AASF,SAAsB,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAU;;QACvD,IAAI;YACF,IAAI,CAAC,GAAG,EAAE;gBACR,eAAe;gBACf,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAe,EAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5D,IAAA,iBAAS,EAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aACtC;iBAAM;gBACL,eAAe;gBACf,IAAI,QAAQ,GAAG,MAAM,IAAA,uBAAe,EAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAE1D,kBAAkB;gBAClB,MAAM,SAAS,GAAG,IAAA,4BAAoB,EAAC,GAAG,CAAC,CAAC;gBAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;oBACxC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;oBAC7B,IAAI,KAAK,KAAK,EAAE,EAAE;wBAChB,MAAM,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;qBACxD;yBAAM;wBACL,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;qBAC5D;iBACF;gBAED,SAAS;gBACT,QAAQ,GAAG,MAAM,IAAA,uBAAe,EAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAEtD,IAAA,iBAAS,EAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aACtC;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;SACb;IACH,CAAC;CAAA;AA7BD,0BA6BC"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
6
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7
+ return new (P || (P = Promise))(function (resolve, reject) {
8
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
9
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
10
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
11
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
12
+ });
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.handler = exports.builder = exports.desc = exports.command = void 0;
16
+ const utils_1 = require("../../utils");
17
+ exports.command = ['query <id>'];
18
+ exports.desc = 'Query a dataset';
19
+ const builder = (args) => {
20
+ return args
21
+ .option('limit', { alias: 'n', type: 'number', default: 100, describe: 'Limit to n results' })
22
+ .option('offset', {
23
+ alias: ['s', 'skip'],
24
+ type: 'number',
25
+ default: 0,
26
+ describe: 'Start list at offset n'
27
+ })
28
+ .option('query', { alias: ['q'], type: 'string', default: '{}', describe: 'JSON-formatted query' })
29
+ .option('explain', {
30
+ alias: ['x'],
31
+ type: 'boolean',
32
+ default: false,
33
+ describe: 'Explain the generated query'
34
+ })
35
+ .option('explain-analyze', {
36
+ alias: ['xx', 'explain-analyse'],
37
+ type: 'boolean',
38
+ default: false,
39
+ describe: 'Explain and analyze the generated query'
40
+ })
41
+ .option('params', {
42
+ alias: ['p'],
43
+ type: 'array',
44
+ describe: 'One or more query parameters in form <name>=<value>'
45
+ })
46
+ .positional('id', { describe: 'Dataset id (or unique prefix)', type: 'string' });
47
+ };
48
+ exports.builder = builder;
49
+ function handler({ client, id, format, offset, limit, query, explain, explainAnalyze, params }) {
50
+ return __awaiter(this, void 0, void 0, function* () {
51
+ try {
52
+ const ds = yield (0, utils_1.resolveResource)(id, client.datasets);
53
+ // Query
54
+ const jsonQuery = JSON.parse(query);
55
+ jsonQuery.limit = limit;
56
+ jsonQuery.offset = offset;
57
+ // Query params
58
+ let keyValueParams = {};
59
+ try {
60
+ if (params) {
61
+ keyValueParams = params.reduce((accum, param) => {
62
+ const [key, value] = param.split('=');
63
+ accum[key] = value;
64
+ return accum;
65
+ }, {});
66
+ }
67
+ }
68
+ catch (e) {
69
+ throw new Error('Bad format for params: specify key/value pairs as <key>=<value>');
70
+ }
71
+ const queryDefinition = Object.assign(Object.assign({ datasetId: ds.id }, jsonQuery), { format: format === 'table' ? 'json' : format || 'json', params: Object.assign(Object.assign({}, keyValueParams), { explain: explainAnalyze ? 'analyze' : explain ? true : false }) });
72
+ const queryResults = yield client.datasets.query(queryDefinition);
73
+ if (format === 'csv') {
74
+ (0, utils_1.log)(queryResults);
75
+ }
76
+ else {
77
+ (0, utils_1.logObject)(queryResults, format);
78
+ }
79
+ }
80
+ catch (e) {
81
+ (0, utils_1.logError)(e);
82
+ }
83
+ });
84
+ }
85
+ exports.handler = handler;
86
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/commands/datasets/query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,166 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ exports.handler = exports.builder = exports.desc = exports.command = void 0;
39
+ const utils_1 = require("../../utils");
40
+ const inquirer = __importStar(require("inquirer"));
41
+ exports.command = ['update <id>'];
42
+ exports.desc = 'Update a dataset';
43
+ const builder = (args) => {
44
+ return args
45
+ .option('type', { alias: 't', description: 'Dataset type', type: 'string', choices: ['table', 'sql'] })
46
+ .option('source', { alias: 's', description: 'Dataset source', type: 'string' })
47
+ .option('name', { alias: 'n', description: 'Dataset name', type: 'string' })
48
+ .option('description', { alias: 'd', description: 'Dataset description', type: 'string' })
49
+ .option('interactive', {
50
+ alias: 'i',
51
+ describe: 'Show interactive prompts',
52
+ type: 'boolean',
53
+ default: 'true'
54
+ })
55
+ .option('autodetect', { describe: 'Autodetect geometry', type: 'boolean' })
56
+ .option('srid', { describe: 'Geometry SRID (ignored when autodetect=true)', type: 'number' })
57
+ .option('extent', {
58
+ description: 'Geometry extent x1,y1,x2,y2 (lng/lat) (ignored when autodetect=true)',
59
+ type: 'array'
60
+ })
61
+ .positional('id', { describe: 'Dataset id (or unique prefix)', type: 'string' });
62
+ };
63
+ exports.builder = builder;
64
+ function handler(params) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ const client = params.client;
67
+ const id = params.id;
68
+ try {
69
+ const ds = yield (0, utils_1.resolveResource)(id, client.datasets);
70
+ if (params.interactive) {
71
+ const answers = yield inquirer.prompt([
72
+ { type: 'input', name: 'name', message: 'Name', default: params.name || ds.name },
73
+ {
74
+ type: 'input',
75
+ name: 'description',
76
+ message: 'Description',
77
+ default: params.description || ds.description
78
+ },
79
+ {
80
+ type: 'confirm',
81
+ name: 'autodetect',
82
+ message: 'Autodetect geometry?',
83
+ default: params.hasOwnProperty('autodetect')
84
+ ? params.autodetect
85
+ : ds.options && ds.options.hasOwnProperty('autodetect')
86
+ ? ds.options.autodetect
87
+ : true
88
+ },
89
+ {
90
+ type: 'input',
91
+ name: 'srid',
92
+ message: 'Geometry SRID',
93
+ default: params.srid || (ds.options && ds.options.srid) || 4326,
94
+ validate: val => (0, utils_1.isNumeric)(val) || 'Enter a number',
95
+ when: ({ autodetect }) => autodetect === false
96
+ },
97
+ {
98
+ type: 'input',
99
+ name: 'extent',
100
+ message: 'Map extent (x1 y1 x2 y2) (in SRID units)',
101
+ default: (0, utils_1.extentToString)(params.extent || (ds.options && ds.options.extent) || [-180, -90, 180, 90]),
102
+ validate: val => (0, utils_1.isValidExtent)(val) || 'Enter lng/lat bounding box as x1 y1 x2 y2',
103
+ when: ({ autodetect }) => autodetect === false
104
+ },
105
+ {
106
+ type: 'list',
107
+ name: 'type',
108
+ message: 'Source type',
109
+ choices: ['table', 'sql'],
110
+ default: params.type || ds.type
111
+ },
112
+ {
113
+ type: 'input',
114
+ name: 'source',
115
+ message: 'Table name',
116
+ default: params.source || ds.source,
117
+ when: ({ type }) => type === 'table'
118
+ },
119
+ {
120
+ type: 'editor',
121
+ name: 'source',
122
+ message: 'SQL query',
123
+ default: params.source || ds.source,
124
+ when: ({ type }) => type === 'sql'
125
+ }
126
+ ]);
127
+ params.name = answers.name;
128
+ params.description = answers.description;
129
+ params.autodetect = answers.autodetect;
130
+ params.srid = answers.autodetect ? undefined : answers.srid;
131
+ params.extent = answers.autodetect ? undefined : (0, utils_1.extentFromString)(answers.extent);
132
+ params.type = answers.type;
133
+ params.source = answers.source.trim();
134
+ }
135
+ const updatedDs = yield client.datasets.update(ds.id, {
136
+ id: params.id,
137
+ name: params.name,
138
+ description: params.description,
139
+ type: params.type,
140
+ source: params.source,
141
+ options: {
142
+ autodetect: params.autodetect,
143
+ srid: params.srid,
144
+ extent: params.extent
145
+ }
146
+ });
147
+ const geomAttr = updatedDs.attributes.find(attr => attr.isGeometry);
148
+ if (params.format === 'table') {
149
+ (0, utils_1.logObject)(updatedDs, 'table');
150
+ }
151
+ else {
152
+ (0, utils_1.logObject)(updatedDs, 'json');
153
+ }
154
+ if (geomAttr && geomAttr.type === 'geometry' && updatedDs.options.autodetect) {
155
+ (0, utils_1.logError)(`Warning: could not auto-detect SRID or extent of field '${geomAttr.attribute}' (query produced no features)`);
156
+ (0, utils_1.logInfo)(`Using the following default values: SRID(${geomAttr.srid}), extent: ${(0, utils_1.extentToString)(geomAttr.extent)}`);
157
+ (0, utils_1.logInfo)(`Re-run with --auto-detection=false to manually specify values if this is not correct.`);
158
+ }
159
+ }
160
+ catch (e) {
161
+ (0, utils_1.logError)(e);
162
+ }
163
+ });
164
+ }
165
+ exports.handler = handler;
166
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/datasets/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.builder = exports.desc = exports.command = void 0;
7
+ exports.command = ['datasets <command>', 'ds'];
8
+ exports.desc = 'Dataset commands';
9
+ const builder = (y) => {
10
+ return y.commandDir('datasets').demandCommand(1);
11
+ };
12
+ exports.builder = builder;
13
+ //# sourceMappingURL=datasets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasets.js","sourceRoot":"","sources":["../../src/commands/datasets.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAIU,QAAA,OAAO,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;AAEvC,QAAA,IAAI,GAAG,kBAAkB,CAAC;AAEhC,MAAM,OAAO,GAAG,CAAC,CAAa,EAAE,EAAE;IACvC,OAAO,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2018 Emu Analytics
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.builder = exports.desc = exports.command = void 0;
7
+ exports.command = ['jobs <command>'];
8
+ exports.desc = 'Job commands';
9
+ const builder = (y) => {
10
+ return y.commandDir('jobs').demandCommand(1);
11
+ };
12
+ exports.builder = builder;
13
+ //# sourceMappingURL=job.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job.js","sourceRoot":"","sources":["../../src/commands/job.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAIU,QAAA,OAAO,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAE7B,QAAA,IAAI,GAAG,cAAc,CAAC;AAE5B,MAAM,OAAO,GAAG,CAAC,CAAa,EAAE,EAAE;IACvC,OAAO,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB"}