@fdm-monster/server 1.6.0-rc1 → 1.6.0-rc3
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.
- package/.gitattributes +2 -0
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/yarn-4.1.0.cjs +893 -0
- package/.yarnrc.yml +4 -0
- package/README.md +1 -1
- package/dist/consoles/sqlite-torm.js +31 -0
- package/dist/consoles/sqlite-torm.js.map +1 -0
- package/dist/consoles/typeorm-generate.js +194 -0
- package/dist/consoles/typeorm-generate.js.map +1 -0
- package/dist/consoles/typeorm-migrate.js +48 -0
- package/dist/consoles/typeorm-migrate.js.map +1 -0
- package/dist/container.js +64 -19
- package/dist/container.js.map +1 -1
- package/dist/container.tokens.js +2 -0
- package/dist/container.tokens.js.map +1 -1
- package/dist/controllers/batch-call.controller.js +15 -5
- package/dist/controllers/batch-call.controller.js.map +1 -1
- package/dist/controllers/dto/update-client-dist.dto.js +38 -0
- package/dist/controllers/dto/update-client-dist.dto.js.map +1 -0
- package/dist/controllers/printer-files.controller.js +2 -8
- package/dist/controllers/printer-files.controller.js.map +1 -1
- package/dist/controllers/printer.controller.js +2 -1
- package/dist/controllers/printer.controller.js.map +1 -1
- package/dist/controllers/server-private.controller.js +25 -6
- package/dist/controllers/server-private.controller.js.map +1 -1
- package/dist/controllers/validation/batch-controller.validation.js +9 -0
- package/dist/controllers/validation/batch-controller.validation.js.map +1 -1
- package/dist/data-source.js +66 -0
- package/dist/data-source.js.map +1 -0
- package/dist/entities/camera-stream.entity.js +94 -0
- package/dist/entities/camera-stream.entity.js.map +1 -0
- package/dist/entities/custom-gcode.entity.js +50 -0
- package/dist/entities/custom-gcode.entity.js.map +1 -0
- package/dist/entities/floor-position.entity.js +78 -0
- package/dist/entities/floor-position.entity.js.map +1 -0
- package/dist/entities/floor.entity.js +53 -0
- package/dist/entities/floor.entity.js.map +1 -0
- package/dist/entities/index.js +58 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/entities/permission.entity.js +38 -0
- package/dist/entities/permission.entity.js.map +1 -0
- package/dist/entities/print-completion.entity.js +91 -0
- package/dist/entities/print-completion.entity.js.map +1 -0
- package/dist/entities/printer-file.entity.js +140 -0
- package/dist/entities/printer-file.entity.js.map +1 -0
- package/dist/entities/printer.entity.js +105 -0
- package/dist/entities/printer.entity.js.map +1 -0
- package/dist/entities/refresh-token.entity.js +70 -0
- package/dist/entities/refresh-token.entity.js.map +1 -0
- package/dist/entities/role.entity.js +46 -0
- package/dist/entities/role.entity.js.map +1 -0
- package/dist/entities/settings.entity.js +89 -0
- package/dist/entities/settings.entity.js.map +1 -0
- package/dist/entities/user-role.entity.js +70 -0
- package/dist/entities/user-role.entity.js.map +1 -0
- package/dist/entities/user.entity.js +90 -0
- package/dist/entities/user.entity.js.map +1 -0
- package/dist/middleware/exception.filter.js +2 -1
- package/dist/middleware/exception.filter.js.map +1 -1
- package/dist/middleware/passport.js.map +1 -1
- package/dist/migrations/1706829146617-InitSqlite.js +670 -0
- package/dist/migrations/1706829146617-InitSqlite.js.map +1 -0
- package/dist/models/Floor.js.map +1 -1
- package/dist/models/PrinterFile.js +4 -0
- package/dist/models/PrinterFile.js.map +1 -1
- package/dist/server.constants.js +4 -2
- package/dist/server.constants.js.map +1 -1
- package/dist/server.core.js +10 -1
- package/dist/server.core.js.map +1 -1
- package/dist/server.host.js +11 -3
- package/dist/server.host.js.map +1 -1
- package/dist/services/batch-call.service.js +67 -20
- package/dist/services/batch-call.service.js.map +1 -1
- package/dist/services/core/client-bundle.service.js +98 -27
- package/dist/services/core/client-bundle.service.js.map +1 -1
- package/dist/services/core/github.service.js +18 -14
- package/dist/services/core/github.service.js.map +1 -1
- package/dist/services/core/task-manager.service.js +1 -1
- package/dist/services/core/task-manager.service.js.map +1 -1
- package/dist/services/core/yaml.service.js.map +1 -1
- package/dist/services/floor.service.js +1 -1
- package/dist/services/floor.service.js.map +1 -1
- package/dist/services/interfaces/printer-file.dto.js +29 -3
- package/dist/services/interfaces/printer-file.dto.js.map +1 -1
- package/dist/services/octoprint/dto/connection-state.dto.js +0 -25
- package/dist/services/octoprint/dto/connection-state.dto.js.map +1 -1
- package/dist/services/octoprint/dto/connection.dto.js +6 -0
- package/dist/services/octoprint/dto/connection.dto.js.map +1 -0
- package/dist/services/octoprint/dto/octoprint-event.dto.js.map +1 -1
- package/dist/services/octoprint/models/octoprint-file.dto.js +6 -0
- package/dist/services/octoprint/models/octoprint-file.dto.js.map +1 -0
- package/dist/services/octoprint/octoprint-api.routes.js +9 -3
- package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
- package/dist/services/octoprint/octoprint-api.service.js +17 -2
- package/dist/services/octoprint/octoprint-api.service.js.map +1 -1
- package/dist/services/octoprint/octoprint-sockio.adapter.js +53 -45
- package/dist/services/octoprint/octoprint-sockio.adapter.js.map +1 -1
- package/dist/services/octoprint/utils/file.utils.js +44 -0
- package/dist/services/octoprint/utils/file.utils.js.map +1 -0
- package/dist/services/orm/base.service.js +3 -0
- package/dist/services/orm/base.service.js.map +1 -1
- package/dist/services/orm/camera-stream.service.js +25 -0
- package/dist/services/orm/camera-stream.service.js.map +1 -0
- package/dist/services/orm/custom-gcode.service.js +42 -0
- package/dist/services/orm/custom-gcode.service.js.map +1 -0
- package/dist/services/orm/floor-position.service.js +55 -0
- package/dist/services/orm/floor-position.service.js.map +1 -0
- package/dist/services/orm/floor.service.js +122 -0
- package/dist/services/orm/floor.service.js.map +1 -0
- package/dist/services/orm/permission.service.js +77 -0
- package/dist/services/orm/permission.service.js.map +1 -0
- package/dist/services/orm/print-completion.service.js +90 -0
- package/dist/services/orm/print-completion.service.js.map +1 -0
- package/dist/services/orm/printer-files.service.js +123 -0
- package/dist/services/orm/printer-files.service.js.map +1 -0
- package/dist/services/orm/printer.service.js +145 -0
- package/dist/services/orm/printer.service.js.map +1 -0
- package/dist/services/orm/refresh-token.service.js +107 -0
- package/dist/services/orm/refresh-token.service.js.map +1 -0
- package/dist/services/orm/role.service.js +131 -0
- package/dist/services/orm/role.service.js.map +1 -0
- package/dist/services/orm/settings.service.js +208 -0
- package/dist/services/orm/settings.service.js.map +1 -0
- package/dist/services/orm/user-role.service.js +55 -0
- package/dist/services/orm/user-role.service.js.map +1 -0
- package/dist/services/orm/user.service.js +146 -0
- package/dist/services/orm/user.service.js.map +1 -0
- package/dist/services/orm-migration.service.js +20 -0
- package/dist/services/orm-migration.service.js.map +1 -0
- package/dist/services/printer-files.service.js +3 -0
- package/dist/services/printer-files.service.js.map +1 -1
- package/dist/services/typeorm/typeorm.service.js +48 -0
- package/dist/services/typeorm/typeorm.service.js.map +1 -0
- package/dist/state/file.cache.js +2 -9
- package/dist/state/file.cache.js.map +1 -1
- package/dist/state/printer-connection.cache.js +21 -0
- package/dist/state/printer-connection.cache.js.map +1 -0
- package/dist/state/printer-events.cache.js +16 -7
- package/dist/state/printer-events.cache.js.map +1 -1
- package/dist/state/printer-files.store.js +3 -4
- package/dist/state/printer-files.store.js.map +1 -1
- package/dist/state/printer-socket.store.js +3 -3
- package/dist/state/printer-socket.store.js.map +1 -1
- package/dist/state/printer.cache.js +3 -0
- package/dist/state/printer.cache.js.map +1 -1
- package/dist/state/settings.store.js +3 -0
- package/dist/state/settings.store.js.map +1 -1
- package/dist/state/test-printer-socket.store.js +1 -1
- package/dist/task.presets.js.map +1 -1
- package/dist/tasks/boot.task.js +30 -18
- package/dist/tasks/boot.task.js.map +1 -1
- package/dist/tasks/print-completion.socketio.task.js +15 -1
- package/dist/tasks/print-completion.socketio.task.js.map +1 -1
- package/dist/tasks/printer-file-clean.task.js +14 -0
- package/dist/tasks/printer-file-clean.task.js.map +1 -1
- package/dist/tasks/printer-state-update-poll.task.js +89 -0
- package/dist/tasks/printer-state-update-poll.task.js.map +1 -0
- package/dist/tasks/printer-websocket-restore.task.js +4 -3
- package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
- package/dist/tasks/printer-websocket.task.js +1 -1
- package/dist/tasks/printer-websocket.task.js.map +1 -1
- package/dist/tasks/socketio.task.js +1 -1
- package/dist/tasks/socketio.task.js.map +1 -1
- package/dist/tasks.js +2 -1
- package/dist/tasks.js.map +1 -1
- package/dist/utils/semver.utils.js +19 -4
- package/dist/utils/semver.utils.js.map +1 -1
- package/package.json +31 -30
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/print-completion.socketio.task.ts"],"names":["PrintCompletionSocketIoTask","eventEmitter2","socketIoGateway","logger","printCompletionService","contextCache","constructor","loggerFactory","name","that","on","octoPrintWebsocketEvent","octoPrintEvent","data","handleMessage","event","contexts","fdmEvent","printerId","log","completion","status","payload","type","fileName","createdAt","Date","now","completionLog","error","context","correlationId","EVENT_TYPES","EStop","PrintCancelling","PrintCancelled","Home","TransferStarted","TransferDone","Disconnecting","Disconnected","MetadataAnalysisStarted","MetadataAnalysisFinished","Error","corrId","updateContext","PrintStarted","token","generateCorrelationToken","create","PrintFailed","PrintDone","emit","fdmMonsterPrinterStoppedEvent","run","loadPrintContexts"],"mappings":";;;;+
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/print-completion.socketio.task.ts"],"names":["PrintCompletionSocketIoTask","eventEmitter2","socketIoGateway","logger","printerEventsCache","printCompletionService","contextCache","constructor","loggerFactory","name","that","on","octoPrintWebsocketEvent","octoPrintEvent","data","handleMessage","event","contexts","fdmEvent","printerId","log","completion","status","payload","type","fileName","createdAt","Date","now","completionLog","error","context","correlationId","EVENT_TYPES","EStop","PrintCancelling","PrintCancelled","Home","TransferStarted","TransferDone","Disconnecting","Disconnected","MetadataAnalysisStarted","MetadataAnalysisFinished","Error","setSubstate","text","flags","operational","printing","ready","closedOrError","corrId","updateContext","PrintStarted","token","generateCorrelationToken","create","PrintFailed","PrintDone","emit","fdmMonsterPrinterStoppedEvent","run","loadPrintContexts"],"mappings":"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"}
|
|
@@ -36,6 +36,20 @@ class PrinterFileCleanTask {
|
|
|
36
36
|
} else {
|
|
37
37
|
this.logger.log(`Reporting about old files of ${printers.length} printers.`);
|
|
38
38
|
}
|
|
39
|
+
const errorPrinters = [];
|
|
40
|
+
for (let printer of printers){
|
|
41
|
+
try {
|
|
42
|
+
await this.printerFilesStore.eagerLoadPrinterFiles(printer.id, false);
|
|
43
|
+
} catch (e) {
|
|
44
|
+
errorPrinters.push({
|
|
45
|
+
e,
|
|
46
|
+
printer
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (errorPrinters.length > 0) {
|
|
51
|
+
this.logger.error(`Error loading some files, ${errorPrinters.length} printer(s) (${errorPrinters.map((ep)=>`${ep.printer.name} ${ep.e.toString()}`)}) did not respond or returned an unexpected status code. Those will depend on previously cached files.`);
|
|
52
|
+
}
|
|
39
53
|
for (let printer of printers){
|
|
40
54
|
const outdatedFiles = this.getPrinterOutdatedFiles(printer);
|
|
41
55
|
if (!outdatedFiles?.length) continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/printer-file-clean.task.ts"],"names":["PrinterFileCleanTask","logger","printerFilesStore","printerCache","settingsStore","taskManagerService","octoPrintApiService","constructor","loggerFactory","name","ageDaysMaxSetting","getSettings","autoRemoveOldFilesCriteriumDays","run","printers","listCachedPrinters","fileCleanSettings","autoCleanAtBootEnabled","autoRemoveOldFilesAtBoot","log","length","printer","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-file-clean.task.ts"],"names":["PrinterFileCleanTask","logger","printerFilesStore","printerCache","settingsStore","taskManagerService","octoPrintApiService","constructor","loggerFactory","name","ageDaysMaxSetting","getSettings","autoRemoveOldFilesCriteriumDays","run","printers","listCachedPrinters","fileCleanSettings","autoCleanAtBootEnabled","autoRemoveOldFilesAtBoot","log","length","errorPrinters","printer","eagerLoadPrinterFiles","id","e","push","error","map","ep","toString","outdatedFiles","getPrinterOutdatedFiles","cleanPrinterFiles","printerId","deleteOutdatedFiles","ageDaysMax","getOutdatedFiles","getFileCleanSettings"],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "PrinterStateUpdatePollTask", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return PrinterStateUpdatePollTask;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _nodefs = require("node:fs");
|
|
12
|
+
const _serverconstants = require("../server.constants");
|
|
13
|
+
class PrinterStateUpdatePollTask {
|
|
14
|
+
printerCache;
|
|
15
|
+
printerConnectionCache;
|
|
16
|
+
printerEventsCache;
|
|
17
|
+
settingsStore;
|
|
18
|
+
configService;
|
|
19
|
+
octoPrintApiService;
|
|
20
|
+
taskManagerService;
|
|
21
|
+
logger;
|
|
22
|
+
constructor({ printerCache, printerConnectionCache, printerEventsCache, octoPrintApiService, settingsStore, configService, taskManagerService, loggerFactory }){
|
|
23
|
+
this.printerCache = printerCache;
|
|
24
|
+
this.printerConnectionCache = printerConnectionCache;
|
|
25
|
+
this.printerEventsCache = printerEventsCache;
|
|
26
|
+
this.settingsStore = settingsStore;
|
|
27
|
+
this.configService = configService;
|
|
28
|
+
this.octoPrintApiService = octoPrintApiService;
|
|
29
|
+
this.taskManagerService = taskManagerService;
|
|
30
|
+
this.logger = loggerFactory(PrinterStateUpdatePollTask.name);
|
|
31
|
+
}
|
|
32
|
+
async run() {
|
|
33
|
+
const startTime = Date.now();
|
|
34
|
+
const disabledPrintersCount = await this.printerCache.countDisabledPrinters();
|
|
35
|
+
const printers = await this.printerCache.listCachedPrinters(false);
|
|
36
|
+
const promisesStateUpdate = [];
|
|
37
|
+
let failures = 0;
|
|
38
|
+
let operational = 0;
|
|
39
|
+
let disconnected = 0;
|
|
40
|
+
let offlineAfterError = 0;
|
|
41
|
+
let printing = 0;
|
|
42
|
+
let paused = 0;
|
|
43
|
+
for (const printer of printers){
|
|
44
|
+
const login = this.printerCache.getLoginDto(printer.id);
|
|
45
|
+
try {
|
|
46
|
+
const promise = await this.octoPrintApiService.getConnection(login).then(async (connection)=>{
|
|
47
|
+
await this.printerConnectionCache.setPrinterConnection(printer.id, connection);
|
|
48
|
+
if (this._isDebugMode()) {
|
|
49
|
+
(0, _nodefs.writeFileSync)(`printer_connection_${printer.id}.txt`, JSON.stringify(connection, null, 2));
|
|
50
|
+
}
|
|
51
|
+
const current = await this.octoPrintApiService.getPrinterCurrent(login, false, null, [
|
|
52
|
+
"sd",
|
|
53
|
+
"temperature"
|
|
54
|
+
]).catch(async (e)=>{
|
|
55
|
+
if (e.isAxiosError) {
|
|
56
|
+
const castError = e;
|
|
57
|
+
if (castError?.response?.status == 409) {
|
|
58
|
+
await this.printerEventsCache.setSubstate(printer.id, "current", "state", {});
|
|
59
|
+
disconnected += 1;
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
throw e;
|
|
64
|
+
});
|
|
65
|
+
if (!current) return;
|
|
66
|
+
if (this._isDebugMode()) {
|
|
67
|
+
(0, _nodefs.writeFileSync)(`printer_current_${printer.id}.txt`, JSON.stringify(current, null, 2));
|
|
68
|
+
}
|
|
69
|
+
const currentState = current.state;
|
|
70
|
+
operational += currentState?.flags.operational ? 1 : 0;
|
|
71
|
+
disconnected += currentState?.flags.closedOrError ? 1 : 0;
|
|
72
|
+
printing += currentState?.flags.printing ? 1 : 0;
|
|
73
|
+
paused += currentState?.flags.paused ? 1 : 0;
|
|
74
|
+
await this.printerEventsCache.setSubstate(printer.id, "current", "state", current);
|
|
75
|
+
});
|
|
76
|
+
promisesStateUpdate.push(promise);
|
|
77
|
+
} catch (e) {
|
|
78
|
+
failures++;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
await Promise.all(promisesStateUpdate);
|
|
82
|
+
this.logger.log(`Printer state updates (total: ${printers.length}, failed: ${failures}, disabled: ${disabledPrintersCount}, operational: ${operational}, disconnected: ${disconnected}, offlineAfterError: ${offlineAfterError}, printing: ${printing}, paused: ${paused}) completed (${Date.now() - startTime}ms)`);
|
|
83
|
+
}
|
|
84
|
+
_isDebugMode() {
|
|
85
|
+
return this.configService.get(_serverconstants.AppConstants.debugFileWritePrinterStatesKey, _serverconstants.AppConstants.defaultDebugFileWritePrinterStates) === "true";
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
//# sourceMappingURL=printer-state-update-poll.task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-state-update-poll.task.ts"],"names":["PrinterStateUpdatePollTask","printerCache","printerConnectionCache","printerEventsCache","settingsStore","configService","octoPrintApiService","taskManagerService","logger","constructor","loggerFactory","name","run","startTime","Date","now","disabledPrintersCount","countDisabledPrinters","printers","listCachedPrinters","promisesStateUpdate","failures","operational","disconnected","offlineAfterError","printing","paused","printer","login","getLoginDto","id","promise","getConnection","then","connection","setPrinterConnection","_isDebugMode","writeFileSync","JSON","stringify","current","getPrinterCurrent","catch","e","isAxiosError","castError","response","status","setSubstate","currentState","state","flags","closedOrError","push","Promise","all","log","length","get","AppConstants","debugFileWritePrinterStatesKey","defaultDebugFileWritePrinterStates"],"mappings":";;;;+BAaaA;;;eAAAA;;;wBANiB;iCAED;AAItB,MAAMA;IACXC,aAA2B;IAC3BC,uBAA+C;IAC/CC,mBAAuC;IACvCC,cAA6B;IAC7BC,cAA6B;IAC7BC,oBAAyC;IACzCC,mBAAuC;IACvCC,OAAsB;IAEtBC,YAAY,EACVR,YAAY,EACZC,sBAAsB,EACtBC,kBAAkB,EAClBG,mBAAmB,EACnBF,aAAa,EACbC,aAAa,EACbE,kBAAkB,EAClBG,aAAa,EAUd,CAAE;QACD,IAAI,CAACT,YAAY,GAAGA;QACpB,IAAI,CAACC,sBAAsB,GAAGA;QAC9B,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,aAAa,GAAGA;QACrB,IAAI,CAACC,aAAa,GAAGA;QACrB,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,MAAM,GAAGE,cAAcV,2BAA2BW,IAAI;IAC7D;IAEA,MAAMC,MAAM;QACV,MAAMC,YAAYC,KAAKC,GAAG;QAE1B,MAAMC,wBAAwB,MAAM,IAAI,CAACf,YAAY,CAACgB,qBAAqB;QAE3E,MAAMC,WAAW,MAAM,IAAI,CAACjB,YAAY,CAACkB,kBAAkB,CAAC;QAC5D,MAAMC,sBAAsB,EAAE;QAC9B,IAAIC,WAAW;QACf,IAAIC,cAAc;QAClB,IAAIC,eAAe;QACnB,IAAIC,oBAAoB;QACxB,IAAIC,WAAW;QACf,IAAIC,SAAS;QACb,KAAK,MAAMC,WAAWT,SAAU;YAC9B,MAAMU,QAAQ,IAAI,CAAC3B,YAAY,CAAC4B,WAAW,CAACF,QAAQG,EAAE;YACtD,IAAI;gBACF,MAAMC,UAAU,MAAM,IAAI,CAACzB,mBAAmB,CAAC0B,aAAa,CAACJ,OAAOK,IAAI,CAAC,OAAOC;oBAC9E,MAAM,IAAI,CAAChC,sBAAsB,CAACiC,oBAAoB,CAACR,QAAQG,EAAE,EAAEI;oBACnE,IAAI,IAAI,CAACE,YAAY,IAAI;wBACvBC,IAAAA,qBAAa,EAAC,CAAC,mBAAmB,EAAEV,QAAQG,EAAE,CAAC,IAAI,CAAC,EAAEQ,KAAKC,SAAS,CAACL,YAAY,MAAM;oBACzF;oBAEA,MAAMM,UAAU,MAAM,IAAI,CAAClC,mBAAmB,CAC3CmC,iBAAiB,CAACb,OAAO,OAAO,MAAM;wBAAC;wBAAM;qBAAc,EAC3Dc,KAAK,CAAC,OAAOC;wBACZ,IAAI,AAACA,EAAiBC,YAAY,EAAE;4BAClC,MAAMC,YAAYF;4BAClB,IAAIE,WAAWC,UAAUC,UAAU,KAAK;gCAEtC,MAAM,IAAI,CAAC5C,kBAAkB,CAAC6C,WAAW,CAACrB,QAAQG,EAAE,EAAE,WAAW,SAAS,CAAC;gCAC3EP,gBAAgB;gCAEhB,OAAO;4BACT;wBACF;wBAEA,MAAMoB;oBACR;oBAEF,IAAI,CAACH,SAAS;oBACd,IAAI,IAAI,CAACJ,YAAY,IAAI;wBACvBC,IAAAA,qBAAa,EAAC,CAAC,gBAAgB,EAAEV,QAAQG,EAAE,CAAC,IAAI,CAAC,EAAEQ,KAAKC,SAAS,CAACC,SAAS,MAAM;oBACnF;oBACA,MAAMS,eAAeT,QAAQU,KAAK;oBAClC5B,eAAe2B,cAAcE,MAAM7B,cAAc,IAAI;oBACrDC,gBAAgB0B,cAAcE,MAAMC,gBAAgB,IAAI;oBACxD3B,YAAYwB,cAAcE,MAAM1B,WAAW,IAAI;oBAC/CC,UAAUuB,cAAcE,MAAMzB,SAAS,IAAI;oBAC3C,MAAM,IAAI,CAACvB,kBAAkB,CAAC6C,WAAW,CAACrB,QAAQG,EAAE,EAAE,WAAW,SAASU;gBAC5E;gBACApB,oBAAoBiC,IAAI,CAACtB;YAC3B,EAAE,OAAOY,GAAQ;gBACftB;YACF;QACF;QAEA,MAAMiC,QAAQC,GAAG,CAACnC;QAElB,IAAI,CAACZ,MAAM,CAACgD,GAAG,CACb,CAAC,8BAA8B,EAC7BtC,SAASuC,MAAM,CAChB,UAAU,EAAEpC,SAAS,YAAY,EAAEL,sBAAsB,eAAe,EAAEM,YAAY,gBAAgB,EAAEC,aAAa,qBAAqB,EAAEC,kBAAkB,YAAY,EAAEC,SAAS,UAAU,EAAEC,OAAO,aAAa,EACpNZ,KAAKC,GAAG,KAAKF,UACd,GAAG,CAAC;IAET;IAEQuB,eAAe;QACrB,OACE,IAAI,CAAC/B,aAAa,CAACqD,GAAG,CAACC,6BAAY,CAACC,8BAA8B,EAAED,6BAAY,CAACE,kCAAkC,MACnH;IAEJ;AACF"}
|
|
@@ -31,17 +31,18 @@ class PrinterWebsocketRestoreTask {
|
|
|
31
31
|
if (socket.isClosedOrAborted()) {
|
|
32
32
|
socket.close();
|
|
33
33
|
socket.resetSocketState();
|
|
34
|
+
this.logger.warn("Socket was closed or aborted, manually removing it");
|
|
34
35
|
resetAdapterIds.push(socket.printerId);
|
|
35
36
|
continue;
|
|
36
37
|
}
|
|
37
38
|
} catch (e) {
|
|
38
|
-
this.logger.error(`WebSocket
|
|
39
|
+
this.logger.error(`Resetting WebSocket socket failed for '${socket.printerId}' with error '${(0, _errorutils.errorSummary)(e)}'`, e.stack);
|
|
39
40
|
continue;
|
|
40
41
|
}
|
|
41
42
|
if (socket.apiState !== _octoprintsockioadapter.API_STATE.unset && !socket.lastMessageReceivedTimestamp || Date.now() - socket.lastMessageReceivedTimestamp > 10 * 1000) {
|
|
43
|
+
const result = await this.octoPrintApiService.getConnection(socket.loginDto);
|
|
42
44
|
silentSocketIds.push(socket.printerId);
|
|
43
45
|
try {
|
|
44
|
-
const result = await this.octoPrintApiService.getConnection(socket.loginDto);
|
|
45
46
|
if (result?.current?.state !== "Closed") {
|
|
46
47
|
this.logger.warn(`Silence was detected, but the OctoPrint current connection was not closed. Connection state ${result?.current?.state}, printerId: ${socket.printerId}.`);
|
|
47
48
|
}
|
|
@@ -51,7 +52,7 @@ class PrinterWebsocketRestoreTask {
|
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
54
|
const duration = Date.now() - startTime;
|
|
54
|
-
if (this.settingsStore.
|
|
55
|
+
if (this.settingsStore.getSettingsSensitive()?.server?.debugSettings.debugSocketRetries) {
|
|
55
56
|
this.logger.log(`Reset ${resetAdapterIds.length} closed/aborted sockets and detected ${silentSocketIds.length} silent sockets (duration ${duration}ms)`);
|
|
56
57
|
}
|
|
57
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/printer-websocket-restore.task.ts"],"names":["PrinterWebsocketRestoreTask","settingsStore","printerSocketStore","octoPrintApiService","logger","constructor","loggerFactory","name","run","startTime","Date","now","existingSockets","listPrinterSockets","resetAdapterIds","silentSocketIds","socket","isClosedOrAborted","close","resetSocketState","push","printerId","e","error","errorSummary","stack","apiState","API_STATE","unset","lastMessageReceivedTimestamp","result","getConnection","loginDto","current","state","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-websocket-restore.task.ts"],"names":["PrinterWebsocketRestoreTask","settingsStore","printerSocketStore","octoPrintApiService","logger","constructor","loggerFactory","name","run","startTime","Date","now","existingSockets","listPrinterSockets","resetAdapterIds","silentSocketIds","socket","isClosedOrAborted","close","resetSocketState","warn","push","printerId","e","error","errorSummary","stack","apiState","API_STATE","unset","lastMessageReceivedTimestamp","result","getConnection","loginDto","current","state","duration","getSettingsSensitive","server","debugSettings","debugSocketRetries","log","length"],"mappings":";;;;+BAQaA;;;eAAAA;;;4BARgB;wCACH;AAOnB,MAAMA;IACXC,cAA6B;IAC7BC,mBAAuC;IACvCC,oBAAyC;IACzCC,OAAsB;IAEtBC,YAAY,EACVH,kBAAkB,EAClBC,mBAAmB,EACnBF,aAAa,EACbK,aAAa,EAMd,CAAE;QACD,IAAI,CAACJ,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACF,aAAa,GAAGA;QACrB,IAAI,CAACG,MAAM,GAAGE,cAAcN,4BAA4BO,IAAI;IAC9D;IAEA,MAAMC,MAAM;QACV,MAAMC,YAAYC,KAAKC,GAAG;QAE1B,MAAMC,kBAAkB,IAAI,CAACV,kBAAkB,CAACW,kBAAkB;QAClE,MAAMC,kBAAkB,EAAE;QAC1B,MAAMC,kBAAkB,EAAE;QAC1B,KAAK,MAAMC,UAAUJ,gBAAiB;YACpC,IAAI;gBACF,IAAII,OAAOC,iBAAiB,IAAI;oBAC9BD,OAAOE,KAAK;oBACZF,OAAOG,gBAAgB;oBACvB,IAAI,CAACf,MAAM,CAACgB,IAAI,CAAC;oBACjBN,gBAAgBO,IAAI,CAACL,OAAOM,SAAS;oBACrC;gBACF;YACF,EAAE,OAAOC,GAAQ;gBACf,IAAI,CAACnB,MAAM,CAACoB,KAAK,CAAC,CAAC,uCAAuC,EAAER,OAAOM,SAAS,CAAC,cAAc,EAAEG,IAAAA,wBAAY,EAACF,GAAG,CAAC,CAAC,EAAEA,EAAEG,KAAK;gBACxH;YACF;YAGA,IACE,AAACV,OAAOW,QAAQ,KAAKC,iCAAS,CAACC,KAAK,IAAI,CAACb,OAAOc,4BAA4B,IAC5EpB,KAAKC,GAAG,KAAKK,OAAOc,4BAA4B,GAAG,KAAK,MACxD;gBACA,MAAMC,SAAS,MAAM,IAAI,CAAC5B,mBAAmB,CAAC6B,aAAa,CAAChB,OAAOiB,QAAQ;gBAE3ElB,gBAAgBM,IAAI,CAACL,OAAOM,SAAS;gBAErC,IAAI;oBACF,IAAIS,QAAQG,SAASC,UAAU,UAAU;wBACvC,IAAI,CAAC/B,MAAM,CAACgB,IAAI,CACd,CAAC,4FAA4F,EAAEW,QAAQG,SAASC,MAAM,aAAa,EAAEnB,OAAOM,SAAS,CAAC,CAAC,CAAC;oBAE5J;gBACF,EAAE,OAAOC,GAAG;oBACV,IAAI,CAACnB,MAAM,CAACoB,KAAK,CACf,CAAC,uFAAuF,EAAER,OAAOM,SAAS,CAAC,CAAC,CAAC;gBAEjH;YACF;QACF;QAEA,MAAMc,WAAW1B,KAAKC,GAAG,KAAKF;QAC9B,IAAI,IAAI,CAACR,aAAa,CAACoC,oBAAoB,IAAIC,QAAQC,cAAcC,oBAAoB;YACvF,IAAI,CAACpC,MAAM,CAACqC,GAAG,CACb,CAAC,MAAM,EAAE3B,gBAAgB4B,MAAM,CAAC,qCAAqC,EAAE3B,gBAAgB2B,MAAM,CAAC,0BAA0B,EAAEN,SAAS,GAAG,CAAC;QAE3I;IACF;AACF"}
|
|
@@ -24,7 +24,7 @@ class PrinterWebsocketTask {
|
|
|
24
24
|
async run() {
|
|
25
25
|
const startTime = Date.now();
|
|
26
26
|
const result = await this.printerSocketStore.reconnectPrinterSockets();
|
|
27
|
-
if (this.settingsStore.
|
|
27
|
+
if (this.settingsStore.getDebugSettingsSensitive()?.debugSocketReconnect) {
|
|
28
28
|
this.logger.log(`Socket reconnect (${Date.now() - startTime}ms)`, result);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/printer-websocket.task.ts"],"names":["PrinterWebsocketTask","printerSocketStore","settingsStore","octoPrintApiService","taskManagerService","logger","constructor","loggerFactory","name","run","startTime","Date","now","result","reconnectPrinterSockets","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/printer-websocket.task.ts"],"names":["PrinterWebsocketTask","printerSocketStore","settingsStore","octoPrintApiService","taskManagerService","logger","constructor","loggerFactory","name","run","startTime","Date","now","result","reconnectPrinterSockets","getDebugSettingsSensitive","debugSocketReconnect","log"],"mappings":";;;;+BAOaA;;;eAAAA;;;AAAN,MAAMA;IACXC,mBAAuC;IACvCC,cAA6B;IAC7BC,oBAAyC;IACzCC,mBAAuC;IAEvCC,OAAsB;IAEtBC,YAAY,EACVL,kBAAkB,EAClBE,mBAAmB,EACnBD,aAAa,EACbE,kBAAkB,EAClBG,aAAa,EAOd,CAAE;QACD,IAAI,CAACN,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,aAAa,GAAGA;QACrB,IAAI,CAACC,mBAAmB,GAAGA;QAC3B,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACC,MAAM,GAAGE,cAAcP,qBAAqBQ,IAAI;IACvD;IAEA,MAAMC,MAAM;QACV,MAAMC,YAAYC,KAAKC,GAAG;QAC1B,MAAMC,SAAS,MAAM,IAAI,CAACZ,kBAAkB,CAACa,uBAAuB;QACpE,IAAI,IAAI,CAACZ,aAAa,CAACa,yBAAyB,IAAIC,sBAAsB;YACxE,IAAI,CAACX,MAAM,CAACY,GAAG,CAAC,CAAC,kBAAkB,EAAEN,KAAKC,GAAG,KAAKF,UAAU,GAAG,CAAC,EAAEG;QACpE;IACF;AACF"}
|
|
@@ -55,7 +55,7 @@ class SocketIoTask {
|
|
|
55
55
|
printerEvents,
|
|
56
56
|
trackedUploads
|
|
57
57
|
};
|
|
58
|
-
if (this.settingsStore.
|
|
58
|
+
if (this.settingsStore.getDebugSettingsSensitive()?.debugSocketIoBandwidth) {
|
|
59
59
|
const kbDataString = Object.entries(socketIoData).map(([id, state])=>{
|
|
60
60
|
return `${id} ${(0, _metricutils.formatKB)(state)}`;
|
|
61
61
|
}).join(" ");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/socketio.task.ts"],"names":["SocketIoTask","socketIoGateway","printerSocketStore","printerEventsCache","floorStore","fileUploadTrackerCache","eventEmitter2","printerCache","logger","settingsStore","aggregateSizeCounter","aggregateWindowLength","aggregateSizes","rounding","constructor","loggerFactory","name","on","socketIoConnectedEvent","sendUpdate","run","floors","listCache","printers","listCachedPrinters","socketStates","getSocketStatesById","printerEvents","getAllKeyValues","trackedUploads","getUploads","socketIoData","
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/socketio.task.ts"],"names":["SocketIoTask","socketIoGateway","printerSocketStore","printerEventsCache","floorStore","fileUploadTrackerCache","eventEmitter2","printerCache","logger","settingsStore","aggregateSizeCounter","aggregateWindowLength","aggregateSizes","rounding","constructor","loggerFactory","name","on","socketIoConnectedEvent","sendUpdate","run","floors","listCache","printers","listCachedPrinters","socketStates","getSocketStatesById","printerEvents","getAllKeyValues","trackedUploads","getUploads","socketIoData","getDebugSettingsSensitive","debugSocketIoBandwidth","kbDataString","Object","entries","map","id","state","formatKB","join","log","serializedData","JSON","stringify","transportDataSize","sizeKB","updateAggregator","send","IO_MESSAGES","LegacyUpdate","transportDataLength","summedPayloadSize","reduce","t","n","averagePayloadSize","toFixed","push"],"mappings":"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"}
|
package/dist/tasks.js
CHANGED
|
@@ -23,7 +23,7 @@ function registerTask(task, preset, milliseconds = 0, runImmediately = false) {
|
|
|
23
23
|
...preset
|
|
24
24
|
};
|
|
25
25
|
timingPreset.milliseconds = preset.milliseconds || milliseconds;
|
|
26
|
-
timingPreset.runImmediately = runImmediately
|
|
26
|
+
timingPreset.runImmediately = runImmediately || false;
|
|
27
27
|
return {
|
|
28
28
|
id: task.name || task,
|
|
29
29
|
task,
|
|
@@ -39,6 +39,7 @@ class ServerTasks {
|
|
|
39
39
|
registerTask(_containertokens.DITokens.printCompletionSocketIoTask, _taskpresets.TASK_PRESETS.RUNONCE),
|
|
40
40
|
registerTask(_containertokens.DITokens.printerFileCleanTask, _taskpresets.TASK_PRESETS.RUNONCE, 60 * 1000, true),
|
|
41
41
|
registerTask(_containertokens.DITokens.printerWebsocketTask, _taskpresets.TASK_PRESETS.PERIODIC, 2000, true),
|
|
42
|
+
registerTask(_containertokens.DITokens.printerStateUpdatePollTask, _taskpresets.TASK_PRESETS.PERIODIC, 10 * 1000, true),
|
|
42
43
|
registerTask(_containertokens.DITokens.printerWebsocketRestoreTask, _taskpresets.TASK_PRESETS.PERIODIC, 15 * 1000, false)
|
|
43
44
|
];
|
|
44
45
|
}
|
package/dist/tasks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/tasks.ts"],"names":["ServerTasks","registerTask","task","preset","milliseconds","runImmediately","timingPreset","id","name","SERVER_BOOT_TASK","DITokens","bootTask","TaskPresets","PERIODIC_DISABLED","BOOT_TASKS","softwareUpdateTask","RUNDELAYED","clientDistDownloadTask","RUNONCE","socketIoTask","PERIODIC","printCompletionSocketIoTask","printerFileCleanTask","printerWebsocketTask","printerWebsocketRestoreTask"],"mappings":";;;;;;;;;;;IAsBaA,WAAW;eAAXA;;IAXGC,YAAY;eAAZA;;;
|
|
1
|
+
{"version":3,"sources":["../src/tasks.ts"],"names":["ServerTasks","registerTask","task","preset","milliseconds","runImmediately","timingPreset","id","name","SERVER_BOOT_TASK","DITokens","bootTask","TaskPresets","PERIODIC_DISABLED","BOOT_TASKS","softwareUpdateTask","RUNDELAYED","clientDistDownloadTask","RUNONCE","socketIoTask","PERIODIC","printCompletionSocketIoTask","printerFileCleanTask","printerWebsocketTask","printerStateUpdatePollTask","printerWebsocketRestoreTask"],"mappings":";;;;;;;;;;;IAsBaA,WAAW;eAAXA;;IAXGC,YAAY;eAAZA;;;6BAX0C;iCACjC;AAUlB,SAASA,aAAaC,IAAI,EAAEC,MAAoB,EAAEC,eAAe,CAAC,EAAEC,iBAAiB,KAAK;IAC/F,IAAIC,eAAe;QAAE,GAAGH,MAAM;IAAC;IAC/BG,aAAaF,YAAY,GAAGD,OAAOC,YAAY,IAAIA;IACnDE,aAAaD,cAAc,GAAGA,kBAAkB;IAChD,OAAO;QACLE,IAAIL,KAAKM,IAAI,IAAIN;QACjBA;QACAC,QAAQG;IACV;AACF;AAEO,MAAMN;IACX,OAAOS,mBAAmBR,aAAaS,yBAAQ,CAACC,QAAQ,EAAEC,yBAAW,CAACC,iBAAiB,EAAE,MAAM,OAAO;IACtG,OAAOC,aAAa;QAClBb,aAAaS,yBAAQ,CAACK,kBAAkB,EAAEH,yBAAW,CAACI,UAAU,EAAE;QAClEf,aAAaS,yBAAQ,CAACO,sBAAsB,EAAEL,yBAAW,CAACM,OAAO;QACjEjB,aAAaS,yBAAQ,CAACS,YAAY,EAAEP,yBAAW,CAACQ,QAAQ,EAAE;QAC1DnB,aAAaS,yBAAQ,CAACW,2BAA2B,EAAET,yBAAW,CAACM,OAAO;QACtEjB,aAAaS,yBAAQ,CAACY,oBAAoB,EAAEV,yBAAW,CAACM,OAAO,EAAE,KAAK,MAAM;QAE5EjB,aAAaS,yBAAQ,CAACa,oBAAoB,EAAEX,yBAAW,CAACQ,QAAQ,EAAE,MAAM;QAExEnB,aAAaS,yBAAQ,CAACc,0BAA0B,EAAEZ,yBAAW,CAACQ,QAAQ,EAAE,KAAK,MAAM;QAEnFnB,aAAaS,yBAAQ,CAACe,2BAA2B,EAAEb,yBAAW,CAACQ,QAAQ,EAAE,KAAK,MAAM;KACrF,CAAC;AACJ"}
|
|
@@ -2,16 +2,31 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
checkVersionSatisfiesMinimum: function() {
|
|
8
13
|
return checkVersionSatisfiesMinimum;
|
|
14
|
+
},
|
|
15
|
+
getMaximumOfVersionsSafe: function() {
|
|
16
|
+
return getMaximumOfVersionsSafe;
|
|
9
17
|
}
|
|
10
18
|
});
|
|
11
19
|
const _semver = require("semver");
|
|
12
20
|
function checkVersionSatisfiesMinimum(newVersion, minimumVersion) {
|
|
13
21
|
const comparison = (0, _semver.compare)(newVersion, minimumVersion);
|
|
14
|
-
return comparison
|
|
22
|
+
return comparison !== -1;
|
|
23
|
+
}
|
|
24
|
+
function getMaximumOfVersionsSafe(v1, v2) {
|
|
25
|
+
if (!v2) return v1;
|
|
26
|
+
const comparison = (0, _semver.compare)(v1, v2);
|
|
27
|
+
if (comparison === 0) return v1;
|
|
28
|
+
if (comparison === -1) return v2;
|
|
29
|
+
return v1;
|
|
15
30
|
}
|
|
16
31
|
|
|
17
32
|
//# sourceMappingURL=semver.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/semver.utils.ts"],"names":["checkVersionSatisfiesMinimum","newVersion","minimumVersion","comparison","compare"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../src/utils/semver.utils.ts"],"names":["checkVersionSatisfiesMinimum","getMaximumOfVersionsSafe","newVersion","minimumVersion","comparison","compare","v1","v2"],"mappings":";;;;;;;;;;;IAEgBA,4BAA4B;eAA5BA;;IAQAC,wBAAwB;eAAxBA;;;wBAVQ;AAEjB,SAASD,6BAA6BE,UAAkB,EAAEC,cAAsB;IACrF,MAAMC,aAAaC,IAAAA,eAAO,EAACH,YAAYC;IAIvC,OAAOC,eAAe,CAAC;AACzB;AAEO,SAASH,yBAAyBK,EAAU,EAAEC,EAAW;IAC9D,IAAI,CAACA,IAAI,OAAOD;IAChB,MAAMF,aAAaC,IAAAA,eAAO,EAACC,IAAIC;IAC/B,IAAIH,eAAe,GAAG,OAAOE;IAC7B,IAAIF,eAAe,CAAC,GAAG,OAAOG;IAC9B,OAAOD;AACT"}
|
package/package.json
CHANGED
|
@@ -6,8 +6,7 @@
|
|
|
6
6
|
},
|
|
7
7
|
"author": "David Zwart",
|
|
8
8
|
"license": "AGPL-3.0-or-later",
|
|
9
|
-
"
|
|
10
|
-
"version": "1.6.0-rc1",
|
|
9
|
+
"version": "1.6.0-rc3",
|
|
11
10
|
"bin": {
|
|
12
11
|
"fdm-monster": "dist/index.js",
|
|
13
12
|
"fdmm": "dist/index.js"
|
|
@@ -21,8 +20,8 @@
|
|
|
21
20
|
"console:torm": "yarn build && cross-env NODE_ENV=development nodemon --watch \"dist/**/*\" -e js ./dist/consoles/sqlite-torm.js",
|
|
22
21
|
"console:migrate": "yarn build && cross-env NODE_ENV=development nodemon --watch \"dist/**/*\" -e js ./dist/consoles/typeorm-migrate.js",
|
|
23
22
|
"console:generate": "yarn build && cross-env NODE_ENV=development node ./dist/consoles/typeorm-generate.js",
|
|
24
|
-
"build": "swc src -d dist",
|
|
25
|
-
"build:watch": "swc src -w -d dist",
|
|
23
|
+
"build": "swc src -d dist --strip-leading-paths",
|
|
24
|
+
"build:watch": "swc src -w -d dist --strip-leading-paths",
|
|
26
25
|
"start:dev": "ts-node src/index.ts",
|
|
27
26
|
"start": "cross-env NODE_ENV=production node dist/index.js",
|
|
28
27
|
"migration:create": "migrate-mongo create printer-files-simpler",
|
|
@@ -32,8 +31,10 @@
|
|
|
32
31
|
"format": "prettier --write \"src/**/*.js\" \"test/**/*.js\"",
|
|
33
32
|
"swc": "swc",
|
|
34
33
|
"tsc": "tsc --noEmit",
|
|
35
|
-
"test": "jest --forceExit --maxConcurrency=8 --runInBand ",
|
|
36
|
-
"test:
|
|
34
|
+
"test": "cross-env SQLITE_MODE=false jest --forceExit --maxConcurrency=8 --runInBand ",
|
|
35
|
+
"test:sqlite": "cross-env SQLITE_MODE=true jest --forceExit --maxConcurrency=8 --runInBand ",
|
|
36
|
+
"test:cov": "cross-env SQLITE_MODE=false jest --forceExit --coverage --maxConcurrency=8 --runInBand ",
|
|
37
|
+
"test:cov-sqlite": "cross-env SQLITE_MODE=true jest --forceExit --coverage --maxConcurrency=8 --runInBand ",
|
|
37
38
|
"cov:show": "./coverage/lcov-report/index.html",
|
|
38
39
|
"torm": "ts-node --swc -r tsconfig-paths/register ./node_modules/typeorm/cli.js",
|
|
39
40
|
"typeorm:generate": "yarn torm migration:generate -d src/data-source.ts --pretty src/migrations/CustomGCode",
|
|
@@ -51,22 +52,23 @@
|
|
|
51
52
|
"vue"
|
|
52
53
|
],
|
|
53
54
|
"dependencies": {
|
|
54
|
-
"@fdm-monster/client": "1.5.0-
|
|
55
|
+
"@fdm-monster/client": "1.5.0-rc8",
|
|
55
56
|
"@influxdata/influxdb-client": "1.33.2",
|
|
56
|
-
"@
|
|
57
|
+
"@octokit/plugin-throttling": "8.1.3",
|
|
58
|
+
"@sentry/node": "7.99.0",
|
|
57
59
|
"adm-zip": "0.5.10",
|
|
58
60
|
"awilix": "10.0.1",
|
|
59
61
|
"awilix-express": "9.0.1",
|
|
60
|
-
"axios": "1.6.
|
|
62
|
+
"axios": "1.6.7",
|
|
61
63
|
"bcryptjs": "2.4.3",
|
|
62
|
-
"better-sqlite3": "9.
|
|
64
|
+
"better-sqlite3": "9.4.0",
|
|
63
65
|
"cache-manager": "4.1.0",
|
|
64
66
|
"class-validator": "0.14.1",
|
|
65
67
|
"connect-history-api-fallback": "2.0.0",
|
|
66
68
|
"cookie-parser": "1.4.6",
|
|
67
69
|
"cors": "2.8.5",
|
|
68
70
|
"cross-env": "7.0.3",
|
|
69
|
-
"dotenv": "16.
|
|
71
|
+
"dotenv": "16.4.1",
|
|
70
72
|
"eventemitter2": "6.4.9",
|
|
71
73
|
"express": "4.18.2",
|
|
72
74
|
"form-data": "4.0.0",
|
|
@@ -77,21 +79,20 @@
|
|
|
77
79
|
"lodash": "4.17.21",
|
|
78
80
|
"luxon": "3.4.4",
|
|
79
81
|
"migrate-mongo": "11.0.0",
|
|
80
|
-
"mongoose": "6.12.
|
|
81
|
-
"mqtt": "5.3.4",
|
|
82
|
+
"mongoose": "6.12.6",
|
|
82
83
|
"multer": "1.4.5-lts.1",
|
|
83
84
|
"node-input-validator": "4.5.1",
|
|
84
|
-
"nodemon": "3.0.
|
|
85
|
+
"nodemon": "3.0.3",
|
|
85
86
|
"octokit": "3.1.2",
|
|
86
87
|
"passport": "0.7.0",
|
|
87
88
|
"passport-anonymous": "1.0.1",
|
|
88
89
|
"passport-jwt": "4.0.1",
|
|
89
90
|
"reflect-metadata": "0.2.1",
|
|
90
|
-
"semver": "7.
|
|
91
|
+
"semver": "7.6.0",
|
|
91
92
|
"simple-git": "3.22.0",
|
|
92
93
|
"socket.io": "4.7.4",
|
|
93
|
-
"toad-scheduler": "3.0.
|
|
94
|
-
"typeorm": "0.3.
|
|
94
|
+
"toad-scheduler": "3.0.1",
|
|
95
|
+
"typeorm": "0.3.20",
|
|
95
96
|
"uuid": "9.0.1",
|
|
96
97
|
"winston": "3.11.0",
|
|
97
98
|
"ws": "8.16.0"
|
|
@@ -99,29 +100,28 @@
|
|
|
99
100
|
"devDependencies": {
|
|
100
101
|
"@lcov-viewer/cli": "1.3.0",
|
|
101
102
|
"@lcov-viewer/istanbul-report": "1.4.0",
|
|
102
|
-
"@swc/cli": "0.
|
|
103
|
-
"@swc/core": "1.
|
|
104
|
-
"@swc/jest": "0.2.
|
|
103
|
+
"@swc/cli": "0.3.9",
|
|
104
|
+
"@swc/core": "1.4.0",
|
|
105
|
+
"@swc/jest": "0.2.36",
|
|
105
106
|
"@types/adm-zip": "0.5.5",
|
|
106
107
|
"@types/bcryptjs": "2.4.6",
|
|
107
108
|
"@types/cache-manager": "4.0.6",
|
|
108
109
|
"@types/connect-history-api-fallback": "1.5.4",
|
|
109
110
|
"@types/cookie-parser": "1.4.6",
|
|
110
111
|
"@types/express": "4.17.21",
|
|
111
|
-
"@types/express-session": "1.17.10",
|
|
112
112
|
"@types/ip": "1.1.3",
|
|
113
|
-
"@types/jest": "29.5.
|
|
113
|
+
"@types/jest": "29.5.12",
|
|
114
114
|
"@types/js-yaml": "4.0.9",
|
|
115
115
|
"@types/lodash": "4.14.202",
|
|
116
|
-
"@types/luxon": "3.4.
|
|
116
|
+
"@types/luxon": "3.4.2",
|
|
117
117
|
"@types/migrate-mongo": "10.0.4",
|
|
118
118
|
"@types/multer": "1.4.11",
|
|
119
|
-
"@types/node": "20.11.
|
|
119
|
+
"@types/node": "20.11.16",
|
|
120
120
|
"@types/passport-anonymous": "1.0.5",
|
|
121
|
-
"@types/passport-jwt": "4.0.
|
|
121
|
+
"@types/passport-jwt": "4.0.1",
|
|
122
122
|
"@types/semver": "7.5.6",
|
|
123
123
|
"@types/supertest": "6.0.2",
|
|
124
|
-
"@types/uuid": "9.0.
|
|
124
|
+
"@types/uuid": "9.0.8",
|
|
125
125
|
"chokidar": "3.5.3",
|
|
126
126
|
"concurrently": "8.2.2",
|
|
127
127
|
"eslint": "8.56.0",
|
|
@@ -135,10 +135,10 @@
|
|
|
135
135
|
"express-list-routes": "1.1.9",
|
|
136
136
|
"jest": "29.7.0",
|
|
137
137
|
"jest-27-expect-message": "1.1.0",
|
|
138
|
-
"mongodb-memory-server": "9.1.
|
|
139
|
-
"nock": "13.
|
|
138
|
+
"mongodb-memory-server": "9.1.6",
|
|
139
|
+
"nock": "13.5.1",
|
|
140
140
|
"prettier": "2.8.8",
|
|
141
|
-
"supertest": "6.3.
|
|
141
|
+
"supertest": "6.3.4",
|
|
142
142
|
"ts-node": "10.9.2",
|
|
143
143
|
"typescript": "5.3.3"
|
|
144
144
|
},
|
|
@@ -160,5 +160,6 @@
|
|
|
160
160
|
"docker/*"
|
|
161
161
|
],
|
|
162
162
|
"delay": 100
|
|
163
|
-
}
|
|
163
|
+
},
|
|
164
|
+
"packageManager": "yarn@4.1.0"
|
|
164
165
|
}
|