@signageos/cli 1.7.0 → 1.8.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 (30) hide show
  1. package/README.md +0 -3
  2. package/dist/Applet/Upload/appletUploadCommand.js +2 -2
  3. package/dist/Applet/Upload/appletUploadCommand.js.map +1 -1
  4. package/dist/Applet/Upload/appletUploadFacade.js +5 -5
  5. package/dist/Applet/Upload/appletUploadFacade.js.map +1 -1
  6. package/dist/CustomScript/Upload/customScriptUploadCommand.d.ts +25 -0
  7. package/dist/CustomScript/Upload/customScriptUploadCommand.js +143 -0
  8. package/dist/CustomScript/Upload/customScriptUploadCommand.js.map +1 -0
  9. package/dist/CustomScript/customScriptCommand.d.ts +29 -0
  10. package/dist/{Stream/helper.js → CustomScript/customScriptCommand.js} +16 -22
  11. package/dist/CustomScript/customScriptCommand.js.map +1 -0
  12. package/dist/CustomScript/customScriptFacade.d.ts +112 -0
  13. package/dist/CustomScript/customScriptFacade.js +390 -0
  14. package/dist/CustomScript/customScriptFacade.js.map +1 -0
  15. package/dist/Emulator/emulatorFactory.js +2 -2
  16. package/dist/Emulator/emulatorFactory.js.map +1 -1
  17. package/dist/Firmware/Upload/firmwareUploadFacade.js +3 -4
  18. package/dist/Firmware/Upload/firmwareUploadFacade.js.map +1 -1
  19. package/dist/Lib/archive.d.ts +8 -0
  20. package/dist/Lib/archive.js +85 -0
  21. package/dist/Lib/archive.js.map +1 -0
  22. package/dist/{FileSystem/helper.d.ts → Lib/fileSystem.d.ts} +1 -1
  23. package/dist/{FileSystem/helper.js → Lib/fileSystem.js} +19 -18
  24. package/dist/Lib/fileSystem.js.map +1 -0
  25. package/dist/index.js +2 -1
  26. package/dist/index.js.map +1 -1
  27. package/package.json +9 -5
  28. package/dist/FileSystem/helper.js.map +0 -1
  29. package/dist/Stream/helper.d.ts +0 -2
  30. package/dist/Stream/helper.js.map +0 -1
@@ -0,0 +1,390 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.uploadCode = exports.ensureCustomScriptVersion = exports.addToConfigFile = exports.getConfig = void 0;
40
+ var path = require("path");
41
+ var os = require("os");
42
+ var fs = require("fs-extra");
43
+ var z = require("zod");
44
+ var prompts = require("prompts");
45
+ var chalk_1 = require("chalk");
46
+ var log_1 = require("@signageos/sdk/dist/Console/log");
47
+ var archive_1 = require("../Lib/archive");
48
+ var fileSystem_1 = require("../Lib/fileSystem");
49
+ var runtimeFileSystem_1 = require("@signageos/sdk/dist/Development/runtimeFileSystem");
50
+ var CONFIG_FILE_NAME = '.sosconfig.json';
51
+ var CUSTOM_SCRIPTS_BUILDS_DIRNAME = 'custom_scripts_builds';
52
+ var PlatformSchema = z.strictObject({
53
+ /** List of files/directories that are part of the custom script for a particular platform. */
54
+ rootDir: z.string(),
55
+ /** Main file of the particular platform script that will be executed. */
56
+ mainFile: z.string(),
57
+ /** What type of runtime is the script for the particular platform (i.e. node.js, bash,...). */
58
+ runtime: z.string(),
59
+ });
60
+ var ConfigSchema = z.object({
61
+ uid: z.string().optional(),
62
+ name: z.string(),
63
+ version: z.string(),
64
+ description: z.string().optional(),
65
+ dangerLevel: z.string(),
66
+ /**
67
+ * Config of individual custom script implementations for each target platform.
68
+ *
69
+ * A Custom Script is only a virtual unit that consists of multiple platform-specific scripts.
70
+ * This record is a mapping of platform names to their respective platform-specific scripts.
71
+ */
72
+ platforms: z.record(z.string(), PlatformSchema),
73
+ configDefinition: z.array(z.object({}).passthrough()), // outsource validation to API because it's a bit complex
74
+ });
75
+ /**
76
+ * Load and validate the config file .sosconfig.json
77
+ */
78
+ function getConfig(workDir) {
79
+ return __awaiter(this, void 0, void 0, function () {
80
+ var config;
81
+ return __generator(this, function (_a) {
82
+ switch (_a.label) {
83
+ case 0: return [4 /*yield*/, loadConfigFromFile(workDir)];
84
+ case 1:
85
+ config = _a.sent();
86
+ return [2 /*return*/, ConfigSchema.parse(config)];
87
+ }
88
+ });
89
+ });
90
+ }
91
+ exports.getConfig = getConfig;
92
+ /**
93
+ * Add data to the config file .sosconfig.json
94
+ */
95
+ function addToConfigFile(workDir, data) {
96
+ return __awaiter(this, void 0, void 0, function () {
97
+ var previousContent, filePath, newContent;
98
+ return __generator(this, function (_a) {
99
+ switch (_a.label) {
100
+ case 0: return [4 /*yield*/, loadConfigFromFile(workDir)];
101
+ case 1:
102
+ previousContent = _a.sent();
103
+ filePath = getConfigFilePath(workDir);
104
+ newContent = Object.assign({}, previousContent, data);
105
+ return [4 /*yield*/, fs.writeFile(filePath, JSON.stringify(newContent, undefined, '\t') + '\n')];
106
+ case 2:
107
+ _a.sent();
108
+ return [2 /*return*/];
109
+ }
110
+ });
111
+ });
112
+ }
113
+ exports.addToConfigFile = addToConfigFile;
114
+ function loadConfigFromFile(workDir) {
115
+ return __awaiter(this, void 0, void 0, function () {
116
+ var filePath, fileContent;
117
+ return __generator(this, function (_a) {
118
+ switch (_a.label) {
119
+ case 0:
120
+ filePath = getConfigFilePath(workDir);
121
+ return [4 /*yield*/, fs.pathExists(filePath)];
122
+ case 1:
123
+ if (!(_a.sent())) {
124
+ throw new Error("Config file ".concat(CONFIG_FILE_NAME, " not found"));
125
+ }
126
+ fileContent = fs.readFileSync(filePath, 'utf-8');
127
+ return [2 /*return*/, JSON.parse(fileContent)];
128
+ }
129
+ });
130
+ });
131
+ }
132
+ function getConfigFilePath(workDir) {
133
+ return path.join(workDir, CONFIG_FILE_NAME);
134
+ }
135
+ function ensureCustomScriptVersion(restApi, config) {
136
+ return __awaiter(this, void 0, void 0, function () {
137
+ var customScript, customScriptVersion, response;
138
+ return __generator(this, function (_a) {
139
+ switch (_a.label) {
140
+ case 0: return [4 /*yield*/, ensureCustomScript(restApi, config)];
141
+ case 1:
142
+ customScript = _a.sent();
143
+ return [4 /*yield*/, restApi.customScript.version.get({
144
+ customScriptUid: customScript.uid,
145
+ version: config.version,
146
+ })];
147
+ case 2:
148
+ customScriptVersion = _a.sent();
149
+ if (customScriptVersion) {
150
+ return [2 /*return*/, customScriptVersion];
151
+ }
152
+ return [4 /*yield*/, prompts({
153
+ type: 'confirm',
154
+ name: 'newVersion',
155
+ message: "Do you want to create new custom script version ".concat(config.version, "?"),
156
+ })];
157
+ case 3:
158
+ response = _a.sent();
159
+ if (!response.newVersion) {
160
+ throw new Error('Custom Script version creation was canceled.');
161
+ }
162
+ (0, log_1.log)('info', chalk_1.default.yellow("Creating Custom Script version ".concat(config.version)));
163
+ return [4 /*yield*/, restApi.customScript.version.create({
164
+ customScriptUid: customScript.uid,
165
+ version: config.version,
166
+ configDefinition: config.configDefinition,
167
+ })];
168
+ case 4: return [2 /*return*/, _a.sent()];
169
+ }
170
+ });
171
+ });
172
+ }
173
+ exports.ensureCustomScriptVersion = ensureCustomScriptVersion;
174
+ function ensureCustomScript(restApi, config) {
175
+ return __awaiter(this, void 0, void 0, function () {
176
+ var customScript, response, createdCustomScript;
177
+ return __generator(this, function (_a) {
178
+ switch (_a.label) {
179
+ case 0:
180
+ if (!config.uid) return [3 /*break*/, 4];
181
+ return [4 /*yield*/, restApi.customScript.get(config.uid)];
182
+ case 1:
183
+ customScript = _a.sent();
184
+ if (!customScript) return [3 /*break*/, 3];
185
+ return [4 /*yield*/, restApi.customScript.update(customScript.uid, {
186
+ name: config.name,
187
+ title: config.name,
188
+ description: config.description,
189
+ dangerLevel: config.dangerLevel,
190
+ })];
191
+ case 2:
192
+ _a.sent();
193
+ return [2 /*return*/, customScript];
194
+ case 3: throw new Error("Custom Script with uid \"".concat(config.uid, "\" not found"));
195
+ case 4: return [4 /*yield*/, prompts({
196
+ type: 'confirm',
197
+ name: 'create',
198
+ message: "Custom Script \"".concat(config.name, "\" does not exist. Do you want to create it?"),
199
+ })];
200
+ case 5:
201
+ response = _a.sent();
202
+ if (!response.create) {
203
+ throw new Error('Custom Script upload was canceled.');
204
+ }
205
+ (0, log_1.log)('info', chalk_1.default.yellow("Creating Custom Script \"".concat(config.name, "\"")));
206
+ return [4 /*yield*/, restApi.customScript.create({
207
+ name: config.name,
208
+ title: config.name,
209
+ description: config.description,
210
+ dangerLevel: config.dangerLevel,
211
+ })];
212
+ case 6:
213
+ createdCustomScript = _a.sent();
214
+ // TODO ask for permission or read from CLI arg
215
+ (0, log_1.log)('info', chalk_1.default.yellow('Adding Custom Script uid to the config file'));
216
+ return [4 /*yield*/, addToConfigFile(process.cwd(), { uid: createdCustomScript.uid })];
217
+ case 7:
218
+ _a.sent();
219
+ return [2 /*return*/, createdCustomScript];
220
+ }
221
+ });
222
+ });
223
+ }
224
+ function uploadCode(_a) {
225
+ var restApi = _a.restApi, workDir = _a.workDir, platform = _a.platform, config = _a.config, customScriptVersion = _a.customScriptVersion;
226
+ return __awaiter(this, void 0, void 0, function () {
227
+ var mainFile, runtime, codeArchive, customScriptVersionPlatform;
228
+ return __generator(this, function (_b) {
229
+ switch (_b.label) {
230
+ case 0:
231
+ mainFile = config.mainFile, runtime = config.runtime;
232
+ return [4 /*yield*/, generateCustomScriptPlatformCodeArchive(workDir, config, customScriptVersion, platform)];
233
+ case 1:
234
+ codeArchive = _b.sent();
235
+ return [4 /*yield*/, restApi.customScript.version.platform.get({
236
+ customScriptUid: customScriptVersion.customScriptUid,
237
+ version: customScriptVersion.version,
238
+ platform: platform,
239
+ })];
240
+ case 2:
241
+ customScriptVersionPlatform = _b.sent();
242
+ if ((customScriptVersionPlatform === null || customScriptVersionPlatform === void 0 ? void 0 : customScriptVersionPlatform.md5Checksum) === codeArchive.md5Checksum) {
243
+ (0, log_1.log)('info', chalk_1.default.yellow("Skipping upload for ".concat(platform, " - no changes detected")));
244
+ return [2 /*return*/];
245
+ }
246
+ _b.label = 3;
247
+ case 3:
248
+ _b.trys.push([3, , 6, 8]);
249
+ (0, log_1.log)('info', chalk_1.default.yellow("Uploading files for ".concat(platform)));
250
+ return [4 /*yield*/, uploadCodeArchive({
251
+ restApi: restApi,
252
+ customScriptVersion: customScriptVersion,
253
+ platform: platform,
254
+ codeArchive: codeArchive,
255
+ })];
256
+ case 4:
257
+ _b.sent();
258
+ return [4 /*yield*/, restApi.customScript.version.platform.update({
259
+ customScriptUid: customScriptVersion.customScriptUid,
260
+ version: customScriptVersion.version,
261
+ platform: platform,
262
+ mainFile: mainFile,
263
+ runtime: runtime,
264
+ md5Checksum: codeArchive.md5Checksum,
265
+ })];
266
+ case 5:
267
+ _b.sent();
268
+ return [3 /*break*/, 8];
269
+ case 6: return [4 /*yield*/, codeArchive.delete()];
270
+ case 7:
271
+ _b.sent();
272
+ return [7 /*endfinally*/];
273
+ case 8: return [2 /*return*/];
274
+ }
275
+ });
276
+ });
277
+ }
278
+ exports.uploadCode = uploadCode;
279
+ function uploadCodeArchive(_a) {
280
+ var restApi = _a.restApi, customScriptVersion = _a.customScriptVersion, platform = _a.platform, codeArchive = _a.codeArchive;
281
+ return __awaiter(this, void 0, void 0, function () {
282
+ var filePath, fileSize, fileStream;
283
+ return __generator(this, function (_b) {
284
+ switch (_b.label) {
285
+ case 0:
286
+ filePath = codeArchive.filePath;
287
+ return [4 /*yield*/, fs.stat(filePath)];
288
+ case 1:
289
+ fileSize = (_b.sent()).size;
290
+ fileStream = fs.createReadStream(filePath);
291
+ return [4 /*yield*/, restApi.customScript.version.platform.archive.upload({
292
+ customScriptUid: customScriptVersion.customScriptUid,
293
+ version: customScriptVersion.version,
294
+ platform: platform,
295
+ md5Checksum: codeArchive.md5Checksum,
296
+ size: fileSize,
297
+ stream: fileStream,
298
+ })];
299
+ case 2:
300
+ _b.sent();
301
+ return [2 /*return*/];
302
+ }
303
+ });
304
+ });
305
+ }
306
+ /**
307
+ * Generates an archive with the code for a particular platform, defined by the provided configuration.
308
+ *
309
+ * Archive is generated and stored in the runtime /tmp/signageos/custom_scripts_builds/:uid/:version/ directory.
310
+ * After archive isn't needed anymore, it should be deleted using the delete method.
311
+ */
312
+ function generateCustomScriptPlatformCodeArchive(workDir, config, customScriptVersion, platform) {
313
+ return __awaiter(this, void 0, void 0, function () {
314
+ var buildsDir, archiveFileName, archiveFilePath, md5Checksum;
315
+ return __generator(this, function (_a) {
316
+ switch (_a.label) {
317
+ case 0: return [4 /*yield*/, ensureBuildsDirectory(customScriptVersion)];
318
+ case 1:
319
+ buildsDir = _a.sent();
320
+ archiveFileName = "".concat(platform, ".zip");
321
+ archiveFilePath = path.join(buildsDir, archiveFileName);
322
+ return [4 /*yield*/, (0, archive_1.generateZip)(workDir, config.rootDir, archiveFilePath)];
323
+ case 2:
324
+ _a.sent();
325
+ return [4 /*yield*/, (0, fileSystem_1.getFileMD5Checksum)(archiveFilePath)];
326
+ case 3:
327
+ md5Checksum = _a.sent();
328
+ return [2 /*return*/, {
329
+ filePath: archiveFilePath,
330
+ md5Checksum: md5Checksum,
331
+ delete: function () {
332
+ return __awaiter(this, void 0, void 0, function () {
333
+ return __generator(this, function (_a) {
334
+ switch (_a.label) {
335
+ case 0: return [4 /*yield*/, fs.unlink(archiveFilePath)];
336
+ case 1:
337
+ _a.sent();
338
+ return [2 /*return*/];
339
+ }
340
+ });
341
+ });
342
+ },
343
+ }];
344
+ }
345
+ });
346
+ });
347
+ }
348
+ /**
349
+ * Ensure that the runtime directory for custom script version exists in the current working directory.
350
+ *
351
+ * This directory is used to store temporary files generated by the CLI.
352
+ */
353
+ function ensureBuildsDirectory(customScriptVersion) {
354
+ return __awaiter(this, void 0, void 0, function () {
355
+ var runtimeDir, buildsDir;
356
+ return __generator(this, function (_a) {
357
+ switch (_a.label) {
358
+ case 0: return [4 /*yield*/, ensureRuntimeDir()];
359
+ case 1:
360
+ runtimeDir = _a.sent();
361
+ buildsDir = path.join(runtimeDir, customScriptVersion.customScriptUid, customScriptVersion.version);
362
+ return [4 /*yield*/, fs.ensureDir(buildsDir)];
363
+ case 2:
364
+ _a.sent();
365
+ return [2 /*return*/, buildsDir];
366
+ }
367
+ });
368
+ });
369
+ }
370
+ /**
371
+ * Ensure that the runtime directory exists in the current working directory.
372
+ *
373
+ * This directory is used to store temporary files generated by the CLI.
374
+ */
375
+ function ensureRuntimeDir() {
376
+ return __awaiter(this, void 0, void 0, function () {
377
+ var runtimeDir;
378
+ return __generator(this, function (_a) {
379
+ switch (_a.label) {
380
+ case 0:
381
+ runtimeDir = path.join(os.tmpdir(), runtimeFileSystem_1.RUNTIME_DIRNAME, CUSTOM_SCRIPTS_BUILDS_DIRNAME);
382
+ return [4 /*yield*/, fs.ensureDir(runtimeDir)];
383
+ case 1:
384
+ _a.sent();
385
+ return [2 /*return*/, runtimeDir];
386
+ }
387
+ });
388
+ });
389
+ }
390
+ //# sourceMappingURL=customScriptFacade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customScriptFacade.js","sourceRoot":"","sources":["../../src/CustomScript/customScriptFacade.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ var mime = require("mime");
47
47
  var fsExtra = require("fs-extra");
48
48
  var chalk_1 = require("chalk");
49
49
  var log_1 = require("@signageos/sdk/dist/Console/log");
50
- var helper_1 = require("../FileSystem/helper");
50
+ var fileSystem_1 = require("../Lib/fileSystem");
51
51
  var DUMMY_CHECKSUM = '0000000000ffffffffff';
52
52
  var APPLET_DIRECTORY_PATH = '/applet';
53
53
  function createEmulator(params, organizationUid, dev) {
@@ -102,7 +102,7 @@ function createEmulator(params, organizationUid, dev) {
102
102
  })];
103
103
  case 1:
104
104
  appletFilePaths = _a.sent();
105
- if (!(0, helper_1.isPathIncluded)(appletFilePaths, absoluteFilePath)) {
105
+ if (!(0, fileSystem_1.isPathIncluded)(appletFilePaths, absoluteFilePath)) {
106
106
  res.status(404).send("File \"".concat(relativeFilePath, "\" was not found"));
107
107
  return [2 /*return*/];
108
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"emulatorFactory.js","sourceRoot":"","sources":["../../src/Emulator/emulatorFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAA6B;AAC7B,2BAA6B;AAC7B,yBAA2B;AAC3B,iCAAmC;AACnC,2BAA6B;AAC7B,0CAA4C;AAC5C,2BAA6B;AAC7B,kCAAoC;AACpC,+BAA0B;AAE1B,uDAAsD;AAEtD,+CAAsD;AAWtD,IAAM,cAAc,GAAG,sBAAsB,CAAC;AAC9C,IAAM,qBAAqB,GAAG,SAAS,CAAC;AAYxC,SAAsB,cAAc,CAAC,MAA6B,EAAE,eAAuB,EAAE,GAAgB;;;;;YACpG,SAAS,GAA2E,MAAM,UAAjF,EAAE,aAAa,GAA4D,MAAM,cAAlE,EAAE,kBAAkB,GAAwC,MAAM,mBAA9C,EAAE,UAAU,GAA4B,MAAM,WAAlC,EAAE,qBAAqB,GAAK,MAAM,sBAAX,CAAY;YAC7F,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;YAErE,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,uCAAuC,EAAE,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;YACnH,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;YAEjE,IAAI,CAAC,eAAe,EAAE;gBACrB,MAAM,IAAI,KAAK,CAAC,gDAAyC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,YAAS,CAAC,CAAC;aAC/G;YAEK,OAAO,GAAa;gBACzB,GAAG,EAAE,SAAS,IAAI,oBAAoB;gBACtC,OAAO,EAAE,aAAa,IAAI,OAAO;gBACjC,eAAe,iBAAA;gBACf,cAAc,EAAE,UAAG,qBAAqB,cAAI,qBAAqB,CAAE;gBACnE,QAAQ,EAAE,cAAc;gBACxB,kBAAkB,EAAE,EAAE;gBACtB,qBAAqB,EAAE,EAAE,EAAE,2BAA2B;aACtD,CAAC;YAEI,GAAG,GAAG,OAAO,EAAE,CAAC;YAEtB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAEhB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAC,GAAoB,EAAE,GAAqB;gBACxD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;oBACpB,GAAG,CAAC,QAAQ,CAAC,UAAG,GAAG,CAAC,WAAW,SAAG,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,kBAAQ,MAAM,CAAC,WAAW,CAAE,CAAC,CAAC;iBACzG;qBAAM;oBACN,IAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;oBAC5F,IAAM,MAAM,GAAG,wHAG4C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,oDAC/D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,wDACvB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,yDAC9B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,mEACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAC,sEACvC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,qBAAqB,CAAC,2GAEhD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,iBACjF,CAAC;oBAER,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAG,MAAM,YAAS,CAAC,CAAC,CAAC;iBACtD;YACF,CAAC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAErC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;gBACjC,IAAM,WAAW,GAAG,2BAAoB,kBAAkB,CAAE,CAAC;gBAC7D,IAAA,SAAG,EAAC,MAAM,EAAE,iCAA0B,eAAK,CAAC,IAAI,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,CAAC;YAC9E,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,UAAO,GAAoB,EAAE,GAAqB;;;;;4BAC1E,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;4BAC7B,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;4BACzE,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;4BAEzC,qBAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;oCAC9D,UAAU,YAAA;iCACV,CAAC,EAAA;;4BAFI,eAAe,GAAG,SAEtB;4BAEF,IAAI,CAAC,IAAA,uBAAc,EAAC,eAAe,EAAE,gBAAgB,CAAC,EAAE;gCACvD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAS,gBAAgB,qBAAiB,CAAC,CAAC;gCACjE,sBAAO;6BACP;iCAEG,CAAA,gBAAgB,KAAK,qBAAqB,CAAA,EAA1C,wBAA0C;4BAEvC,kBAAkB,GAAG,2FAA2F,CAAC;4BACvH,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;4BAC9B,qBAAM,OAAO,CAAC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAA;;4BAA5D,IAAI,GAAG,SAAqD;4BAClE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAG,kBAAkB,YAAS,CAAC,CAAC,CAAC;4BAClE,sBAAO;;4BAGF,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,0BAA0B,CAAC;4BACjF,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;4BACrC,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;4BAC9D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;;;iBACrB,CAAC,CAAC;YAEH,sBAAO;oBACA,IAAI,EAAV;;;;4CACC,qBAAM,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM,IAAK,OAAA,MAAM,CAAC,KAAK,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,EAAnC,CAAmC,CAAC,EAA5D,CAA4D,CAAC,EAAA;;wCAA1G,SAA0G,CAAC;;;;;qBAC3G;iBACD,EAAC;;;CACF;AAxFD,wCAwFC"}
1
+ {"version":3,"file":"emulatorFactory.js","sourceRoot":"","sources":["../../src/Emulator/emulatorFactory.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.uploadFirmwareVersion = void 0;
40
40
  var path = require("path");
41
41
  var fs = require("fs-extra");
42
- var helper_1 = require("../../Stream/helper");
42
+ var fileSystem_1 = require("../../Lib/fileSystem");
43
43
  function uploadFirmwareVersion(parameters) {
44
44
  return __awaiter(this, void 0, void 0, function () {
45
45
  var restApi, firmware, pathArr, progressBar, sizes, totalSize, _loop_1, _a, _b, _i, index;
@@ -66,15 +66,14 @@ function uploadFirmwareVersion(parameters) {
66
66
  progressBar.init({ size: totalSize, name: pathArr.join(',') });
67
67
  }
68
68
  _loop_1 = function (index) {
69
- var filePath, fileSize, fileName, streamForComputation, md5Hash, stream;
69
+ var filePath, fileSize, fileName, md5Hash, stream;
70
70
  return __generator(this, function (_d) {
71
71
  switch (_d.label) {
72
72
  case 0:
73
73
  filePath = pathArr[index];
74
74
  fileSize = sizes[index];
75
75
  fileName = path.basename(filePath);
76
- streamForComputation = fs.createReadStream(filePath);
77
- return [4 /*yield*/, (0, helper_1.computeMD5)(streamForComputation)];
76
+ return [4 /*yield*/, (0, fileSystem_1.getFileMD5Checksum)(filePath)];
78
77
  case 1:
79
78
  md5Hash = _d.sent();
80
79
  stream = fs.createReadStream(filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"firmwareUploadFacade.js","sourceRoot":"","sources":["../../../src/Firmware/Upload/firmwareUploadFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAA6B;AAI7B,6BAA+B;AAC/B,8CAAiD;AAEjD,SAAsB,qBAAqB,CAAC,UAM3C;;;;;;;oBACQ,OAAO,GAAqC,UAAU,QAA/C,EAAE,QAAQ,GAA2B,UAAU,SAArC,EAAE,OAAO,GAAkB,UAAU,QAA5B,EAAE,WAAW,GAAK,UAAU,YAAf,CAAgB;oBAEjD,qBAAM,OAAO,CAAC,GAAG,CAC9B,OAAO,CAAC,GAAG,CAAC,UAAO,QAAgB;;;;4CACrB,qBAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAA;;wCAA9B,IAAI,GAAG,SAAuB;wCACpC,sBAAO,IAAI,CAAC,IAAI,EAAC;;;6BACjB,CAAC,CACF,EAAA;;oBALK,KAAK,GAAG,SAKb;oBACK,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,GAAW,EAAE,IAAI,IAAK,OAAA,GAAG,GAAG,IAAI,EAAV,CAAU,EAAE,CAAC,CAAC,CAAC;oBAErE,IAAI,WAAW,EAAE;wBAChB,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;qBAC/D;wCAEQ,KAAK;;;;;oCACP,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oCAC1B,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;oCACxB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oCAEnC,oBAAoB,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oCAC3C,qBAAM,IAAA,mBAAU,EAAC,oBAAoB,CAAC,EAAA;;oCAAhD,OAAO,GAAG,SAAsC;oCAEhD,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oCAC7C,MAAM,CAAC,KAAK,EAAE,CAAC;oCACf,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAC,KAAa;wCAC/B,IAAI,WAAW,EAAE;4CAChB,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;yCAC1D;oCACF,CAAC,CAAC,CAAC;oCAEH,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;wCACnB,IAAI,EAAE,OAAO;wCACb,OAAO,EAAE,MAAM;wCACf,IAAI,EAAE,QAAQ;qCACd,CAAC,CAAC;;;;;;+BApBc,OAAO;;;;;;;kDAAhB,KAAK;;;;;;;;;oBAuBb,qBAAM,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,EAAA;;oBAAhE,SAAgE,CAAC;;;oBAEjE,IAAI,WAAW,EAAE;wBAChB,WAAW,CAAC,GAAG,EAAE,CAAC;qBAClB;;;;;;CAEF;AAlDD,sDAkDC"}
1
+ {"version":3,"file":"firmwareUploadFacade.js","sourceRoot":"","sources":["../../../src/Firmware/Upload/firmwareUploadFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAA6B;AAI7B,6BAA+B;AAC/B,mDAA0D;AAE1D,SAAsB,qBAAqB,CAAC,UAM3C;;;;;;;oBACQ,OAAO,GAAqC,UAAU,QAA/C,EAAE,QAAQ,GAA2B,UAAU,SAArC,EAAE,OAAO,GAAkB,UAAU,QAA5B,EAAE,WAAW,GAAK,UAAU,YAAf,CAAgB;oBAEjD,qBAAM,OAAO,CAAC,GAAG,CAC9B,OAAO,CAAC,GAAG,CAAC,UAAO,QAAgB;;;;4CACrB,qBAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAA;;wCAA9B,IAAI,GAAG,SAAuB;wCACpC,sBAAO,IAAI,CAAC,IAAI,EAAC;;;6BACjB,CAAC,CACF,EAAA;;oBALK,KAAK,GAAG,SAKb;oBACK,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,GAAW,EAAE,IAAI,IAAK,OAAA,GAAG,GAAG,IAAI,EAAV,CAAU,EAAE,CAAC,CAAC,CAAC;oBAErE,IAAI,WAAW,EAAE;wBAChB,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;qBAC/D;wCAEQ,KAAK;;;;;oCACP,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oCAC1B,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;oCACxB,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oCAEzB,qBAAM,IAAA,+BAAkB,EAAC,QAAQ,CAAC,EAAA;;oCAA5C,OAAO,GAAG,SAAkC;oCAE5C,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;oCAC7C,MAAM,CAAC,KAAK,EAAE,CAAC;oCACf,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAC,KAAa;wCAC/B,IAAI,WAAW,EAAE;4CAChB,WAAW,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;yCAC1D;oCACF,CAAC,CAAC,CAAC;oCAEH,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;wCACnB,IAAI,EAAE,OAAO;wCACb,OAAO,EAAE,MAAM;wCACf,IAAI,EAAE,QAAQ;qCACd,CAAC,CAAC;;;;;;+BAnBc,OAAO;;;;;;;kDAAhB,KAAK;;;;;;;;;oBAsBb,qBAAM,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,EAAA;;oBAAhE,SAAgE,CAAC;;;oBAEjE,IAAI,WAAW,EAAE;wBAChB,WAAW,CAAC,GAAG,EAAE,CAAC;qBAClB;;;;;;CAEF;AAjDD,sDAiDC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Generate zip archive from a list of files and directories
3
+ *
4
+ * @param workDir Absolute path to current working directory
5
+ * @param rootDir Relative path from the working directory to the root directory that should be archived
6
+ * @param outputPath Path to the output zip archive
7
+ */
8
+ export declare function generateZip(workDir: string, rootDir: string, outputPath: string): Promise<void>;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.generateZip = void 0;
40
+ var path = require("path");
41
+ var fs = require("fs-extra");
42
+ var archiver = require("archiver");
43
+ /**
44
+ * Generate zip archive from a list of files and directories
45
+ *
46
+ * @param workDir Absolute path to current working directory
47
+ * @param rootDir Relative path from the working directory to the root directory that should be archived
48
+ * @param outputPath Path to the output zip archive
49
+ */
50
+ function generateZip(workDir, rootDir, outputPath) {
51
+ return __awaiter(this, void 0, void 0, function () {
52
+ var output, outputPromise, archive, fileFullPath, stat;
53
+ return __generator(this, function (_a) {
54
+ switch (_a.label) {
55
+ case 0:
56
+ output = fs.createWriteStream(outputPath);
57
+ outputPromise = new Promise(function (resolve, reject) {
58
+ output.on('close', resolve);
59
+ output.on('error', reject);
60
+ });
61
+ archive = archiver('zip', {
62
+ zlib: { level: 9 },
63
+ });
64
+ archive.pipe(output);
65
+ fileFullPath = path.join(workDir, rootDir);
66
+ return [4 /*yield*/, fs.stat(fileFullPath)];
67
+ case 1:
68
+ stat = _a.sent();
69
+ if (!stat.isDirectory()) {
70
+ throw new Error("".concat(rootDir, " is not a directory"));
71
+ }
72
+ archive.directory(fileFullPath, false);
73
+ return [4 /*yield*/, archive.finalize()];
74
+ case 2:
75
+ _a.sent();
76
+ return [4 /*yield*/, outputPromise];
77
+ case 3:
78
+ _a.sent();
79
+ return [2 /*return*/];
80
+ }
81
+ });
82
+ });
83
+ }
84
+ exports.generateZip = generateZip;
85
+ //# sourceMappingURL=archive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/Lib/archive.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAA6B;AAC7B,6BAA+B;AAC/B,mCAAqC;AAErC;;;;;;GAMG;AACH,SAAsB,WAAW,CAAC,OAAe,EAAE,OAAe,EAAE,UAAkB;;;;;;oBAC/E,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBAE1C,aAAa,GAAG,IAAI,OAAO,CAAO,UAAC,OAAO,EAAE,MAAM;wBACvD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC5B,CAAC,CAAC,CAAC;oBAEG,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE;wBAC/B,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;qBAClB,CAAC,CAAC;oBAEH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAEf,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBACpC,qBAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAA;;oBAAlC,IAAI,GAAG,SAA2B;oBAExC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;wBACxB,MAAM,IAAI,KAAK,CAAC,UAAG,OAAO,wBAAqB,CAAC,CAAC;qBACjD;oBAED,OAAO,CAAC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;oBAEvC,qBAAM,OAAO,CAAC,QAAQ,EAAE,EAAA;;oBAAxB,SAAwB,CAAC;oBACzB,qBAAM,aAAa,EAAA;;oBAAnB,SAAmB,CAAC;;;;;CACpB;AAzBD,kCAyBC"}
@@ -1,4 +1,3 @@
1
- export declare function computeFileMD5(filePath: string): Promise<string>;
2
1
  export declare function getFileType(filePath: string): Promise<string>;
3
2
  export declare function validateAllFormalities(appletPath: string, entryFileAbsolutePath: string, appletFilePaths: string[]): Promise<void>;
4
3
  /**
@@ -7,3 +6,4 @@ export declare function validateAllFormalities(appletPath: string, entryFileAbso
7
6
  * This function will ignore differences in slashes. It will only check if the file is included no matter what slashes are used.
8
7
  */
9
8
  export declare function isPathIncluded(filePaths: string[], filePath: string): boolean;
9
+ export declare function getFileMD5Checksum(filePath: string): Promise<string>;
@@ -36,29 +36,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
36
36
  }
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.isPathIncluded = exports.validateAllFormalities = exports.getFileType = exports.computeFileMD5 = void 0;
40
- var fs = require("fs-extra");
39
+ exports.getFileMD5Checksum = exports.isPathIncluded = exports.validateAllFormalities = exports.getFileType = void 0;
41
40
  var path = require("path");
42
41
  var file_1 = require("@signageos/file");
42
+ var crypto_1 = require("crypto");
43
+ var fs = require("fs-extra");
43
44
  var Debug = require("debug");
44
- var helper_1 = require("../Stream/helper");
45
45
  var packageConfig_1 = require("@signageos/sdk/dist/FileSystem/packageConfig");
46
46
  var debug = Debug('@signageos/cli:FileSystem:helper');
47
47
  var DEFAULT_FILE_TYPE = 'application/octet-stream';
48
- function computeFileMD5(filePath) {
49
- return __awaiter(this, void 0, void 0, function () {
50
- var fileStream;
51
- return __generator(this, function (_a) {
52
- switch (_a.label) {
53
- case 0:
54
- fileStream = fs.createReadStream(filePath);
55
- return [4 /*yield*/, (0, helper_1.computeMD5)(fileStream)];
56
- case 1: return [2 /*return*/, _a.sent()];
57
- }
58
- });
59
- });
60
- }
61
- exports.computeFileMD5 = computeFileMD5;
62
48
  function getFileType(filePath) {
63
49
  return __awaiter(this, void 0, void 0, function () {
64
50
  var fileResult;
@@ -113,4 +99,19 @@ function isPathIncluded(filePaths, filePath) {
113
99
  return sanitizedFilePaths.includes(sanitizedFilePath);
114
100
  }
115
101
  exports.isPathIncluded = isPathIncluded;
116
- //# sourceMappingURL=helper.js.map
102
+ function getFileMD5Checksum(filePath) {
103
+ return __awaiter(this, void 0, void 0, function () {
104
+ var hash, stream;
105
+ return __generator(this, function (_a) {
106
+ hash = (0, crypto_1.createHash)('md5');
107
+ stream = fs.createReadStream(filePath);
108
+ return [2 /*return*/, new Promise(function (resolve, reject) {
109
+ stream.on('data', function (data) { return hash.update(data); });
110
+ stream.on('end', function () { return resolve(hash.digest('base64')); });
111
+ stream.on('error', reject);
112
+ })];
113
+ });
114
+ });
115
+ }
116
+ exports.getFileMD5Checksum = getFileMD5Checksum;
117
+ //# sourceMappingURL=fileSystem.js.map