@fdm-monster/server 1.9.2 → 1.9.4

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.
Binary file
package/RELEASE_NOTES.MD CHANGED
@@ -1,7 +1,27 @@
1
1
  # Develop
2
2
 
3
+ # FDM Monster 1.9.4
4
+
5
+ ## Fixes
6
+
7
+ - Bambu mqtt adapter should connect using mqtts
8
+ - Bambu FTP works with .3mf (as well as gcode), FDM Monster now supports 3mf upload for bambu printer types
9
+ - Bambu: implemented socket state emitting for test functionality
10
+ - PrusaLink: implemented socket state emitting for test functionality
11
+ - Bambu: download file implemented via FTP
12
+ - FDM-Monster API: file upload now checks file extension after upload (not during upload)
13
+
14
+ # FDM Monster 1.9.3
15
+
16
+ ## Fixes
17
+
18
+ - Bambu port was 1883 in code instead of 8883
19
+ - Removed confusing app constants wrongly suggesting mqtt configuration is an option
20
+
3
21
  # FDM Monster 1.9.2
4
22
 
23
+ ## Features
24
+
5
25
  - Full yaml export with users, roles, settings
6
26
  - Full yaml import (especially when getting started)
7
27
  - Experimental bambu lab support (tested with mock bambu server)
@@ -8,18 +8,17 @@ const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
8
8
  const _nodefs = /*#__PURE__*/ _interop_require_default(require("node:fs"));
9
9
  const _nodeos = /*#__PURE__*/ _interop_require_default(require("node:os"));
10
10
  const _selfsigned = /*#__PURE__*/ _interop_require_default(require("selfsigned"));
11
- const _aedes = /*#__PURE__*/ _interop_require_default(require("aedes"));
12
- const _nodenet = require("node:net");
13
11
  function _interop_require_default(obj) {
14
12
  return obj && obj.__esModule ? obj : {
15
13
  default: obj
16
14
  };
17
15
  }
18
16
  const DEFAULT_PORT = 990;
19
- const DEFAULT_MQTT_PORT = 1883;
17
+ const DEFAULT_MQTT_PORT = 8883;
20
18
  const DEFAULT_SERIAL = "01P00A000000001";
21
19
  const DEFAULT_ACCESS_CODE = "12345678";
22
20
  const MESSAGE_INTERVAL = 1000;
21
+ const DEFAULT_USERNAME = 'bblp';
23
22
  const port = process.argv[2] ? Number.parseInt(process.argv[2]) : DEFAULT_PORT;
24
23
  const mqttPort = process.argv[3] ? Number.parseInt(process.argv[3]) : DEFAULT_MQTT_PORT;
25
24
  const serial = process.argv[4] || DEFAULT_SERIAL;
@@ -27,28 +26,10 @@ const accessCode = process.argv[5] || DEFAULT_ACCESS_CODE;
27
26
  console.log(`[BAMBU MOCK] Starting Bambu Lab mock server`);
28
27
  console.log(`[BAMBU MOCK] Configuration:`);
29
28
  console.log(`[BAMBU MOCK] FTP Port: ${port}`);
30
- console.log(`[BAMBU MOCK] Embedded MQTT Broker: localhost:${mqttPort}`);
29
+ console.log(`[BAMBU MOCK] MQTT Broker expected at: mqtts://localhost:${mqttPort}`);
31
30
  console.log(`[BAMBU MOCK] Serial: ${serial}`);
32
31
  console.log(`[BAMBU MOCK] Access Code: ${accessCode}`);
33
32
  console.log(`[BAMBU MOCK] Username: bblp`);
34
- const aedes = new _aedes.default();
35
- const mqttServer = (0, _nodenet.createServer)(aedes.handle);
36
- mqttServer.listen(mqttPort, ()=>{
37
- console.log(`[BAMBU MOCK MQTT] Embedded MQTT broker started on port ${mqttPort}`);
38
- });
39
- aedes.on('client', (client)=>{
40
- console.log(`[BAMBU MOCK MQTT] Client connected: ${client.id}`);
41
- });
42
- aedes.on('clientDisconnect', (client)=>{
43
- console.log(`[BAMBU MOCK MQTT] Client disconnected: ${client.id}`);
44
- });
45
- aedes.on('publish', (packet, client)=>{
46
- if (client) {
47
- if (!packet.topic.startsWith('$SYS')) {
48
- console.log(`[BAMBU MOCK MQTT] Message published to ${packet.topic} by ${client.id}`);
49
- }
50
- }
51
- });
52
33
  const ftpDir = _nodepath.default.join(_nodeos.default.tmpdir(), "bambu-mock-ftp", serial);
53
34
  const sdcardDir = _nodepath.default.join(ftpDir, "sdcard");
54
35
  if (!_nodefs.default.existsSync(ftpDir)) {
@@ -133,8 +114,11 @@ const PRINT_DURATION = 20;
133
114
  console.log(`[BAMBU MOCK FTP] FTP server is running on port ${port}`);
134
115
  console.log(`[BAMBU MOCK FTP] FTP directory: ${ftpDir}`);
135
116
  });
136
- const mqttClient = _mqtt.default.connect(`mqtt://localhost:${mqttPort}`, {
137
- clientId: `bambu_mock_${serial}_${Date.now()}`
117
+ const mqttClient = _mqtt.default.connect(`mqtts://localhost:${mqttPort}`, {
118
+ clientId: `bambu_mock_${serial}_${Date.now()}`,
119
+ username: DEFAULT_USERNAME,
120
+ password: accessCode,
121
+ rejectUnauthorized: false
138
122
  });
139
123
  mqttClient.on("connect", ()=>{
140
124
  console.log(`[BAMBU MOCK MQTT] Connected to MQTT broker at localhost:${mqttPort}`);
@@ -267,15 +251,6 @@ const PRINT_DURATION = 20;
267
251
  console.log("[BAMBU MOCK MQTT] Disconnecting MQTT client...");
268
252
  await mqttClient.endAsync();
269
253
  }
270
- console.log("[BAMBU MOCK MQTT] Closing embedded MQTT broker...");
271
- await new Promise((resolve)=>{
272
- mqttServer.close(()=>{
273
- aedes.close(()=>{
274
- console.log("[BAMBU MOCK MQTT] Embedded MQTT broker closed");
275
- resolve();
276
- });
277
- });
278
- });
279
254
  console.log("[BAMBU MOCK FTP] Closing FTP server...");
280
255
  await ftpServer.close();
281
256
  console.log("[BAMBU MOCK] Cleanup complete. Exiting.");
@@ -286,13 +261,6 @@ const PRINT_DURATION = 20;
286
261
  if (mqttClient.connected) {
287
262
  await mqttClient.endAsync();
288
263
  }
289
- await new Promise((resolve)=>{
290
- mqttServer.close(()=>{
291
- aedes.close(()=>{
292
- resolve();
293
- });
294
- });
295
- });
296
264
  await ftpServer.close();
297
265
  process.exit(0);
298
266
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/consoles/mock-bambu.server.ts"],"names":["DEFAULT_PORT","DEFAULT_MQTT_PORT","DEFAULT_SERIAL","DEFAULT_ACCESS_CODE","MESSAGE_INTERVAL","port","process","argv","Number","parseInt","mqttPort","serial","accessCode","console","log","aedes","Aedes","mqttServer","createServer","handle","listen","on","client","id","packet","topic","startsWith","ftpDir","path","join","os","tmpdir","sdcardDir","fs","existsSync","mkdirSync","recursive","generateSelfSignedCert","attrs","name","value","options","days","algorithm","keySize","pems","selfsigned","generate","key","private","cert","minVersion","ciphers","isPrinting","currentPrintFile","printProgress","isPaused","nozzleTemp","bedTemp","printStartTime","PRINT_DURATION","tlsCerts","ftpServer","FtpSrv","url","pasv_url","pasv_min","pasv_max","tls","anonymous","greeting","connection","username","password","resolve","reject","root","Error","context","error","then","mqttClient","mqtt","connect","clientId","Date","now","reportTopic","requestTopic","subscribe","err","publishState","elapsedSeconds","Math","min","max","state","print","nozzle_temper","round","nozzle_target_temper","bed_temper","bed_target_temper","chamber_temper","mc_percent","mc_remaining_time","mc_print_stage","gcode_state","gcode_file","wifi_signal","layer_num","floor","total_layer_num","subtask_name","heatbreak_fan_speed","cooling_fan_speed","big_fan1_speed","big_fan2_speed","spd_lvl","spd_mag","print_error","lifecycle","command","msg","sequence_id","String","publish","JSON","stringify","qos","setInterval","message","payload","parse","toString","filename","param","endsWith","pausedProgress","connected","endAsync","Promise","close","exit","catch"],"mappings":";;;;+DAwCmB;6DACF;iEACA;+DACF;+DACA;mEACQ;8DAEL;yBACW;;;;;;AAE7B,MAAMA,eAAe;AACrB,MAAMC,oBAAoB;AAC1B,MAAMC,iBAAiB;AACvB,MAAMC,sBAAsB;AAC5B,MAAMC,mBAAmB;AAEzB,MAAMC,OAAOC,QAAQC,IAAI,CAAC,EAAE,GAAGC,OAAOC,QAAQ,CAACH,QAAQC,IAAI,CAAC,EAAE,IAAIP;AAClE,MAAMU,WAAWJ,QAAQC,IAAI,CAAC,EAAE,GAAGC,OAAOC,QAAQ,CAACH,QAAQC,IAAI,CAAC,EAAE,IAAIN;AACtE,MAAMU,SAASL,QAAQC,IAAI,CAAC,EAAE,IAAIL;AAClC,MAAMU,aAAaN,QAAQC,IAAI,CAAC,EAAE,IAAIJ;AAEtCU,QAAQC,GAAG,CAAC,CAAC,2CAA2C,CAAC;AACzDD,QAAQC,GAAG,CAAC,CAAC,2BAA2B,CAAC;AACzCD,QAAQC,GAAG,CAAC,CAAC,yBAAyB,EAAET,MAAM;AAC9CQ,QAAQC,GAAG,CAAC,CAAC,+CAA+C,EAAEJ,UAAU;AACxEG,QAAQC,GAAG,CAAC,CAAC,uBAAuB,EAAEH,QAAQ;AAC9CE,QAAQC,GAAG,CAAC,CAAC,4BAA4B,EAAEF,YAAY;AACvDC,QAAQC,GAAG,CAAC,CAAC,6BAA6B,CAAC;AAG3C,MAAMC,QAAQ,IAAIC,cAAK;AACvB,MAAMC,aAAaC,IAAAA,qBAAY,EAACH,MAAMI,MAAM;AAE5CF,WAAWG,MAAM,CAACV,UAAU;IAC1BG,QAAQC,GAAG,CAAC,CAAC,uDAAuD,EAAEJ,UAAU;AAClF;AAEAK,MAAMM,EAAE,CAAC,UAAU,CAACC;IAClBT,QAAQC,GAAG,CAAC,CAAC,oCAAoC,EAAEQ,OAAOC,EAAE,EAAE;AAChE;AAEAR,MAAMM,EAAE,CAAC,oBAAoB,CAACC;IAC5BT,QAAQC,GAAG,CAAC,CAAC,uCAAuC,EAAEQ,OAAOC,EAAE,EAAE;AACnE;AAEAR,MAAMM,EAAE,CAAC,WAAW,CAACG,QAAQF;IAC3B,IAAIA,QAAQ;QAEV,IAAI,CAACE,OAAOC,KAAK,CAACC,UAAU,CAAC,SAAS;YACpCb,QAAQC,GAAG,CAAC,CAAC,uCAAuC,EAAEU,OAAOC,KAAK,CAAC,IAAI,EAAEH,OAAOC,EAAE,EAAE;QACtF;IACF;AACF;AAEA,MAAMI,SAASC,iBAAI,CAACC,IAAI,CAACC,eAAE,CAACC,MAAM,IAAI,kBAAkBpB;AACxD,MAAMqB,YAAYJ,iBAAI,CAACC,IAAI,CAACF,QAAQ;AAEpC,IAAI,CAACM,eAAE,CAACC,UAAU,CAACP,SAAS;IAC1Bd,QAAQC,GAAG,CAAC,CAAC,qCAAqC,EAAEa,QAAQ;IAC5DM,eAAE,CAACE,SAAS,CAACR,QAAQ;QAAES,WAAW;IAAK;AACzC;AAEA,IAAI,CAACH,eAAE,CAACC,UAAU,CAACF,YAAY;IAC7BnB,QAAQC,GAAG,CAAC,CAAC,wCAAwC,EAAEkB,WAAW;IAClEC,eAAE,CAACE,SAAS,CAACH,WAAW;QAAEI,WAAW;IAAK;AAC5C;AAMA,eAAeC;IACbxB,QAAQC,GAAG,CAAC,CAAC,0DAA0D,CAAC;IAExE,MAAMwB,QAAQ;QACZ;YAAEC,MAAM;YAAcC,OAAO;QAAwB;QACrD;YAAED,MAAM;YAAeC,OAAO;QAAK;QACnC;YAAED,MAAM;YAAoBC,OAAO;QAAiB;KACrD;IAED,MAAMC,UAAU;QACdC,MAAM;QACNC,WAAW;QACXC,SAAS;IACX;IAEA,MAAMC,OAAO,MAAMC,mBAAU,CAACC,QAAQ,CAACT,OAAOG;IAE9C5B,QAAQC,GAAG,CAAC,CAAC,2DAA2D,CAAC;IAEzE,OAAO;QACLkC,KAAKH,KAAKI,OAAO;QACjBC,MAAML,KAAKK,IAAI;QAEfC,YAAY;QACZC,SAAS;IACX;AACF;AAGA,IAAIC,aAAa;AACjB,IAAIC,mBAAmB;AACvB,IAAIC,gBAAgB;AACpB,IAAIC,WAAW;AACf,IAAIC,aAAa;AACjB,IAAIC,UAAU;AACd,IAAIC,iBAAiB;AACrB,MAAMC,iBAAiB;AAGtB,CAAA;IACC,MAAMC,WAAW,MAAMxB;IAEzB,MAAMyB,YAAY,IAAIC,eAAM,CAAC;QAC3BC,KAAK,CAAC,cAAc,EAAE3D,MAAM;QAC5B4D,UAAU;QACVC,UAAU;QACVC,UAAU;QACVC,KAAKP;QACLQ,WAAW;QACXC,UAAU;YAAC;SAAuC;IACpD;IAEAR,UAAUzC,EAAE,CAAC,SAAS,CAAC,EAAEkD,UAAU,EAAEC,QAAQ,EAAEC,QAAQ,EAAE,EAAEC,SAASC;QAClE9D,QAAQC,GAAG,CAAC,CAAC,2CAA2C,EAAE0D,UAAU;QAEpE,IAAIA,aAAa,UAAUC,aAAa7D,YAAY;YAClDC,QAAQC,GAAG,CAAC,CAAC,0CAA0C,CAAC;YACxD4D,QAAQ;gBAAEE,MAAMjD;YAAO;QACzB,OAAO;YACLd,QAAQC,GAAG,CAAC,CAAC,sCAAsC,CAAC;YACpD6D,OAAO,IAAIE,MAAM;QACnB;IACF;IAEAf,UAAUzC,EAAE,CAAC,gBAAgB,CAAC,EAAEkD,UAAU,EAAEO,OAAO,EAAEC,KAAK,EAAE;QAC1DlE,QAAQkE,KAAK,CAAC,CAAC,8BAA8B,CAAC,EAAEA;IAClD;IAEAjB,UAAU1C,MAAM,GAAG4D,IAAI,CAAC;QACtBnE,QAAQC,GAAG,CAAC,CAAC,+CAA+C,EAAET,MAAM;QACpEQ,QAAQC,GAAG,CAAC,CAAC,gCAAgC,EAAEa,QAAQ;IACzD;IAEA,MAAMsD,aAAaC,aAAI,CAACC,OAAO,CAAC,CAAC,iBAAiB,EAAEzE,UAAU,EAAE;QAC9D0E,UAAU,CAAC,WAAW,EAAEzE,OAAO,CAAC,EAAE0E,KAAKC,GAAG,IAAI;IAChD;IAEAL,WAAW5D,EAAE,CAAC,WAAW;QACvBR,QAAQC,GAAG,CAAC,CAAC,wDAAwD,EAAEJ,UAAU;QACjFG,QAAQC,GAAG,CAAC,CAAC,8CAA8C,EAAEH,OAAO,OAAO,CAAC;QAE5E,MAAM4E,cAAc,CAAC,OAAO,EAAE5E,OAAO,OAAO,CAAC;QAC7C,MAAM6E,eAAe,CAAC,OAAO,EAAE7E,OAAO,QAAQ,CAAC;QAE/CsE,WAAWQ,SAAS,CAACD,cAAc,CAACE;YAClC,IAAIA,KAAK;gBACP7E,QAAQkE,KAAK,CAAC,CAAC,yCAAyC,EAAES,aAAa,CAAC,CAAC,EAAEE;YAC7E,OAAO;gBACL7E,QAAQC,GAAG,CAAC,CAAC,uCAAuC,EAAE0E,cAAc;YACtE;QACF;QAEA,MAAMG,eAAe;YACnB,IAAItC,cAAc,CAACG,UAAU;gBAE3B,MAAMoC,iBAAiB,AAACP,CAAAA,KAAKC,GAAG,KAAK3B,cAAa,IAAK;gBACvDJ,gBAAgBsC,KAAKC,GAAG,CAAC,AAACF,iBAAiBhC,iBAAkB,KAAK;gBAGlE,IAAIL,gBAAgB,IAAI;oBACtBE,aAAaoC,KAAKC,GAAG,CAACrC,aAAa,IAAI;oBACvCC,UAAUmC,KAAKC,GAAG,CAACpC,UAAU,GAAG;gBAClC,OAAO;oBACLD,aAAa;oBACbC,UAAU;gBACZ;gBAEA,IAAIH,iBAAiB,KAAK;oBACxBF,aAAa;oBACbE,gBAAgB;oBAChBD,mBAAmB;oBACnBzC,QAAQC,GAAG,CAAC,CAAC,iCAAiC,CAAC;gBACjD;YACF;YAEA,IAAI,CAACuC,cAAcI,aAAa,IAAI;gBAClCA,aAAaoC,KAAKE,GAAG,CAACtC,aAAa,GAAG;gBACtCC,UAAUmC,KAAKE,GAAG,CAACrC,UAAU,GAAG;YAClC;YAEA,MAAMsC,QAAQ;gBACZC,OAAO;oBACLC,eAAeL,KAAKM,KAAK,CAAC1C;oBAC1B2C,sBAAsB/C,aAAa,MAAM;oBACzCgD,YAAYR,KAAKM,KAAK,CAACzC;oBACvB4C,mBAAmBjD,aAAa,KAAK;oBACrCkD,gBAAgB;oBAChBC,YAAYX,KAAKM,KAAK,CAAC5C;oBACvBkD,mBAAmBpD,aAAawC,KAAKM,KAAK,CAAEvC,iBAAiB,AAACyB,CAAAA,KAAKC,GAAG,KAAK3B,cAAa,IAAK,QAAS;oBACtG+C,gBAAgBrD,aAAcG,WAAW,WAAW,aAAc;oBAClEmD,aAAatD,aAAa,aAAa;oBACvCuD,YAAYvD,aAAaC,mBAAmB;oBAC5CuD,aAAa;oBACbC,WAAWzD,aAAawC,KAAKkB,KAAK,CAACxD,gBAAgB,KAAK;oBACxDyD,iBAAiB3D,aAAa,KAAK;oBACnC4D,cAAc5D,aAAaC,mBAAmB;oBAC9C4D,qBAAqB7D,aAAa,SAAS;oBAC3C8D,mBAAmB9D,aAAa,SAAS;oBACzC+D,gBAAgB/D,aAAa,SAAS;oBACtCgE,gBAAgBhE,aAAa,SAAS;oBACtCiE,SAAS;oBACTC,SAAS;oBACTC,aAAa;oBACbC,WAAW;oBACXC,SAAS;oBACTC,KAAK;oBACLC,aAAaC,OAAOxC,KAAKC,GAAG;gBAC9B;YACF;YAEAL,WAAW6C,OAAO,CAACvC,aAAawC,KAAKC,SAAS,CAAChC,QAAQ;gBAAEiC,KAAK;YAAE,GAAG,CAACvC;gBAClE,IAAIA,KAAK;oBACP7E,QAAQkE,KAAK,CAAC,CAAC,0CAA0C,CAAC,EAAEW;gBAC9D;YACF;QACF;QAEAwC,YAAYvC,cAAcvF;QAE1BuF;IACF;IAEAV,WAAW5D,EAAE,CAAC,WAAW,CAACI,OAAO0G;QAC/B,IAAI;YACF,MAAMC,UAAUL,KAAKM,KAAK,CAACF,QAAQG,QAAQ;YAC3CzH,QAAQC,GAAG,CAAC,CAAC,sCAAsC,EAAEW,MAAM,CAAC,CAAC,EAAEsG,KAAKC,SAAS,CAACI;YAE9E,IAAIA,QAAQnC,KAAK,IAAImC,QAAQnC,KAAK,CAACyB,OAAO,EAAE;gBAC1C,MAAMA,UAAUU,QAAQnC,KAAK,CAACyB,OAAO;gBACrC7G,QAAQC,GAAG,CAAC,CAAC,sCAAsC,EAAE4G,SAAS;gBAE9D,IAAIA,YAAY,kBAAkBA,YAAY,SAAS;oBAErD,MAAMa,WAAWH,QAAQnC,KAAK,CAACuC,KAAK,IAAIJ,QAAQnC,KAAK,CAACgB,YAAY,IAAI;oBAGtE,IAAIsB,SAASE,QAAQ,CAAC,aAAaF,SAASE,QAAQ,CAAC,SAAS;wBAC5DpF,aAAa;wBACbG,WAAW;wBACXG,iBAAiB0B,KAAKC,GAAG;wBACzB/B,gBAAgB;wBAChBD,mBAAmBiF;wBACnB1H,QAAQC,GAAG,CAAC,CAAC,kCAAkC,EAAEyH,SAAS,qBAAqB,CAAC;oBAClF,OAAO;wBACL1H,QAAQC,GAAG,CAAC,CAAC,2DAA2D,EAAEyH,UAAU;oBACtF;gBACF,OAAO,IAAIb,YAAY,SAAS;oBAC9B,IAAIrE,YAAY;wBACdG,WAAW;wBACX3C,QAAQC,GAAG,CAAC,CAAC,+BAA+B,CAAC;oBAC/C;gBACF,OAAO,IAAI4G,YAAY,UAAU;oBAC/B,IAAIrE,cAAcG,UAAU;wBAC1BA,WAAW;wBAEX,MAAMkF,iBAAiBnF;wBACvBI,iBAAiB0B,KAAKC,GAAG,KAAMoD,iBAAiB,MAAM9E,iBAAiB;wBACvE/C,QAAQC,GAAG,CAAC,CAAC,sCAAsC,EAAE+E,KAAKM,KAAK,CAACuC,gBAAgB,CAAC,CAAC;oBACpF;gBACF,OAAO,IAAIhB,YAAY,QAAQ;oBAC7B,IAAIrE,YAAY;wBACdA,aAAa;wBACbG,WAAW;wBACXD,gBAAgB;wBAChBD,mBAAmB;wBACnBzC,QAAQC,GAAG,CAAC,CAAC,gCAAgC,CAAC;oBAChD;gBACF;YACF;QACF,EAAE,OAAOiE,OAAO;YACdlE,QAAQkE,KAAK,CAAC,CAAC,2CAA2C,CAAC,EAAEA;QAC/D;IACF;IAEAE,WAAW5D,EAAE,CAAC,SAAS,CAAC0D;QACtBlE,QAAQkE,KAAK,CAAC,CAAC,6BAA6B,CAAC,EAAEA;IACjD;IAEAE,WAAW5D,EAAE,CAAC,cAAc;QAC1BR,QAAQC,GAAG,CAAC,CAAC,+CAA+C,CAAC;IAC/D;IAEAR,QAAQe,EAAE,CAAC,UAAU;QACnBR,QAAQC,GAAG,CAAC;QAEZ,IAAImE,WAAW0D,SAAS,EAAE;YACxB9H,QAAQC,GAAG,CAAC;YACZ,MAAMmE,WAAW2D,QAAQ;QAC3B;QAEA/H,QAAQC,GAAG,CAAC;QACZ,MAAM,IAAI+H,QAAc,CAACnE;YACvBzD,WAAW6H,KAAK,CAAC;gBACf/H,MAAM+H,KAAK,CAAC;oBACVjI,QAAQC,GAAG,CAAC;oBACZ4D;gBACF;YACF;QACF;QAEA7D,QAAQC,GAAG,CAAC;QACZ,MAAMgD,UAAUgF,KAAK;QAErBjI,QAAQC,GAAG,CAAC;QACZR,QAAQyI,IAAI,CAAC;IACf;IAEAzI,QAAQe,EAAE,CAAC,WAAW;QACpBR,QAAQC,GAAG,CAAC;QAEZ,IAAImE,WAAW0D,SAAS,EAAE;YACxB,MAAM1D,WAAW2D,QAAQ;QAC3B;QAEA,MAAM,IAAIC,QAAc,CAACnE;YACvBzD,WAAW6H,KAAK,CAAC;gBACf/H,MAAM+H,KAAK,CAAC;oBACVpE;gBACF;YACF;QACF;QAEA,MAAMZ,UAAUgF,KAAK;QACrBxI,QAAQyI,IAAI,CAAC;IACf;IAEAlI,QAAQC,GAAG,CAAC,CAAC,0DAA0D,CAAC;AACxE,CAAA,IAAKkI,KAAK,CAAC,CAACjE;IACVlE,QAAQkE,KAAK,CAAC,4CAA4CA;IAC1DzE,QAAQyI,IAAI,CAAC;AACf"}
1
+ {"version":3,"sources":["../../src/consoles/mock-bambu.server.ts"],"names":["DEFAULT_PORT","DEFAULT_MQTT_PORT","DEFAULT_SERIAL","DEFAULT_ACCESS_CODE","MESSAGE_INTERVAL","DEFAULT_USERNAME","port","process","argv","Number","parseInt","mqttPort","serial","accessCode","console","log","ftpDir","path","join","os","tmpdir","sdcardDir","fs","existsSync","mkdirSync","recursive","generateSelfSignedCert","attrs","name","value","options","days","algorithm","keySize","pems","selfsigned","generate","key","private","cert","minVersion","ciphers","isPrinting","currentPrintFile","printProgress","isPaused","nozzleTemp","bedTemp","printStartTime","PRINT_DURATION","tlsCerts","ftpServer","FtpSrv","url","pasv_url","pasv_min","pasv_max","tls","anonymous","greeting","on","connection","username","password","resolve","reject","root","Error","context","error","listen","then","mqttClient","mqtt","connect","clientId","Date","now","rejectUnauthorized","reportTopic","requestTopic","subscribe","err","publishState","elapsedSeconds","Math","min","max","state","print","nozzle_temper","round","nozzle_target_temper","bed_temper","bed_target_temper","chamber_temper","mc_percent","mc_remaining_time","mc_print_stage","gcode_state","gcode_file","wifi_signal","layer_num","floor","total_layer_num","subtask_name","heatbreak_fan_speed","cooling_fan_speed","big_fan1_speed","big_fan2_speed","spd_lvl","spd_mag","print_error","lifecycle","command","msg","sequence_id","String","publish","JSON","stringify","qos","setInterval","topic","message","payload","parse","toString","filename","param","endsWith","pausedProgress","connected","endAsync","close","exit","catch"],"mappings":"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"}
@@ -147,18 +147,19 @@ class PrinterFilesController {
147
147
  res.send(printerThumbnail);
148
148
  }
149
149
  async uploadPrinterFile(req, res) {
150
- const { currentPrinterId } = (0, _printerresolver.getScopedPrinter)(req);
151
- const files = await this.multerService.multerLoadFileAsync(req, res, _serverconstants.AppConstants.defaultAcceptedGcodeExtensions, true);
150
+ const { currentPrinterId, currentPrinter } = (0, _printerresolver.getScopedPrinter)(req);
151
+ const acceptedExtensions = this.getAcceptedFileExtensions(currentPrinter.printerType);
152
+ const files = await this.multerService.multerLoadFileAsync(req, res, acceptedExtensions, true);
152
153
  const { startPrint: startPrintString } = await (0, _validators.validateInput)(req.body, _printerfilescontrollervalidation.uploadFileSchema);
153
154
  const startPrint = startPrintString === "true";
154
155
  if (!files?.length) {
155
156
  throw new _runtimeexceptions.ValidationException({
156
- error: `No file was available for upload. Did you upload files with one of these extensions: ${_serverconstants.AppConstants.defaultAcceptedGcodeExtensions.join(", ")}?`
157
+ error: `No file was available for upload. Did you upload files with one of these extensions: ${acceptedExtensions.join(", ")}?`
157
158
  });
158
159
  }
159
160
  if (files.length > 1) {
160
161
  throw new _runtimeexceptions.ValidationException({
161
- error: "Only 1 .gcode file can be uploaded at a time"
162
+ error: "Only 1 file can be uploaded at a time"
162
163
  });
163
164
  }
164
165
  const fileCleanEnabled = this.settingsStore.isPreUploadFileCleanEnabled();
@@ -191,6 +192,12 @@ class PrinterFilesController {
191
192
  }
192
193
  res.send();
193
194
  }
195
+ getAcceptedFileExtensions(printerType) {
196
+ if (printerType === _printerapiinterface.BambuType) {
197
+ return _serverconstants.AppConstants.defaultAcceptedBambuExtensions;
198
+ }
199
+ return _serverconstants.AppConstants.defaultAcceptedGcodeExtensions;
200
+ }
194
201
  }
195
202
  _ts_decorate([
196
203
  (0, _awilixexpress.POST)(),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/controllers/printer-files.controller.ts"],"names":["PrinterFilesController","logger","loggerFactory","printerApi","printerLogin","printerFilesStore","printerFileCleanTask","settingsStore","multerService","printerThumbnailCache","name","purgeIndexedFiles","req","res","purgeFiles","send","getThumbnails","thumbnails","getAllValues","getFiles","currentPrinterId","getScopedPrinter","log","files","loadFiles","reloadThumbnail","filePath","validateInput","body","startPrintFileSchema","isThumbnailSupportEnabled","loadPrinterThumbnailRemote","params","id","e","error","errorSummary","captureException","startPrintFile","encodedFilePath","encodeURIComponent","startPrint","getFilesCache","currentPrinter","downloadFile","path","downloadFileSchema","response","setHeader","headers","length","data","pipe","deleteFileOrFolder","query","getFileSchema","result","deleteFile","clearPrinterFiles","failedFiles","succeededFiles","nonRecursiveFiles","file","push","purgePrinterFiles","getPrinterThumbnail","printerThumbnail","getValue","toString","uploadPrinterFile","multerLoadFileAsync","AppConstants","defaultAcceptedGcodeExtensions","startPrintString","uploadFileSchema","ValidationException","join","fileCleanEnabled","isPreUploadFileCleanEnabled","cleanPrinterFiles","uploadedFile","token","startTrackingSession","uploadFile","catch","clearUploadedFile","loadPrinterThumbnailLocal","PrinterFiles","Clear","Get","Actions","Delete","Upload","apiRoute","authenticate","authorizeRoles","ROLES","ADMIN","OPERATOR","printerResolveMiddleware"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/controllers/printer-files.controller.ts"],"names":["PrinterFilesController","logger","loggerFactory","printerApi","printerLogin","printerFilesStore","printerFileCleanTask","settingsStore","multerService","printerThumbnailCache","name","purgeIndexedFiles","req","res","purgeFiles","send","getThumbnails","thumbnails","getAllValues","getFiles","currentPrinterId","getScopedPrinter","log","files","loadFiles","reloadThumbnail","filePath","validateInput","body","startPrintFileSchema","isThumbnailSupportEnabled","loadPrinterThumbnailRemote","params","id","e","error","errorSummary","captureException","startPrintFile","encodedFilePath","encodeURIComponent","startPrint","getFilesCache","currentPrinter","downloadFile","path","downloadFileSchema","response","setHeader","headers","length","data","pipe","deleteFileOrFolder","query","getFileSchema","result","deleteFile","clearPrinterFiles","failedFiles","succeededFiles","nonRecursiveFiles","file","push","purgePrinterFiles","getPrinterThumbnail","printerThumbnail","getValue","toString","uploadPrinterFile","acceptedExtensions","getAcceptedFileExtensions","printerType","multerLoadFileAsync","startPrintString","uploadFileSchema","ValidationException","join","fileCleanEnabled","isPreUploadFileCleanEnabled","cleanPrinterFiles","uploadedFile","token","startTrackingSession","uploadFile","catch","clearUploadedFile","loadPrinterThumbnailLocal","BambuType","AppConstants","defaultAcceptedBambuExtensions","defaultAcceptedGcodeExtensions","PrinterFiles","Clear","Get","Actions","Delete","Upload","apiRoute","authenticate","authorizeRoles","ROLES","ADMIN","OPERATOR","printerResolveMiddleware"],"mappings":";;;;+BA6BaA;;;eAAAA;;;+BA7BoC;8BACQ;4BAC3B;iCACD;kDAMtB;mCAC6B;yBACK;wCACZ;mCACK;+BACJ;+BACA;sCACO;+BAEN;yBACG;qCACI;uCACA;sBACL;4BACJ;0BACJ;iCACQ;;;;;;;;;;AAI1B,MAAMA;;;;;;;;IACMC,OAAsB;IAEvC,YACEC,aAA6B,EAC7B,AAAiBC,UAAuB,EACxC,AAAiBC,YAAsB,EACvC,AAAiBC,iBAAoC,EACrD,AAAiBC,oBAA0C,EAC3D,AAAiBC,aAA4B,EAC7C,AAAiBC,aAA4B,EAC7C,AAAiBC,qBAA4C,CAC7D;aAPiBN,aAAAA;aACAC,eAAAA;aACAC,oBAAAA;aACAC,uBAAAA;aACAC,gBAAAA;aACAC,gBAAAA;aACAC,wBAAAA;QAEjB,IAAI,CAACR,MAAM,GAAGC,cAAcF,uBAAuBU,IAAI;IACzD;IAEA,MAGMC,kBAAkBC,GAAY,EAAEC,GAAa,EAAE;QACnD,MAAM,IAAI,CAACR,iBAAiB,CAACS,UAAU;QACvCD,IAAIE,IAAI;IACV;IAEA,MAGMC,cAAcJ,GAAY,EAAEC,GAAa,EAAE;QAC/C,MAAMI,aAAa,MAAM,IAAI,CAACR,qBAAqB,CAACS,YAAY;QAChEL,IAAIE,IAAI,CAACE;IACX;IAEA,MAGME,SAASP,GAAY,EAAEC,GAAa,EAAE;QAC1C,MAAM,EAAEO,gBAAgB,EAAE,GAAGC,IAAAA,iCAAgB,EAACT;QAC9C,IAAI,CAACX,MAAM,CAACqB,GAAG,CAAC;QAChB,MAAMC,QAAQ,MAAM,IAAI,CAAClB,iBAAiB,CAACmB,SAAS,CAACJ;QACrDP,IAAIE,IAAI,CAACQ;IACX;IAEA,MAGME,gBAAgBb,GAAY,EAAEC,GAAa,EAAE;QACjD,MAAM,EAAEa,QAAQ,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACf,IAAIgB,IAAI,EAAEC,sDAAoB;QAEvE,IAAI;YACF,IAAI,IAAI,CAACtB,aAAa,CAACuB,yBAAyB,IAAI;gBAClD,MAAM,IAAI,CAACrB,qBAAqB,CAACsB,0BAA0B,CAAC,IAAI,CAAC3B,YAAY,EAAEQ,IAAIoB,MAAM,CAACC,EAAE,EAAEP;YAChG;QACF,EAAE,OAAOQ,GAAG;YACV,IAAI,CAACjC,MAAM,CAACkC,KAAK,CAAC,CAAC,sCAAsC,EAAEC,IAAAA,wBAAY,EAACF,IAAI;YAC5EG,IAAAA,sBAAgB,EAACH;QACnB;QAEArB,IAAIE,IAAI;IACV;IAEA,MAOMuB,eAAe1B,GAAY,EAAEC,GAAa,EAAE;QAChD,MAAM,EAAEa,QAAQ,EAAE,GAAG,MAAMC,IAAAA,yBAAa,EAACf,IAAIgB,IAAI,EAAEC,sDAAoB;QACvE,MAAMU,kBAAkBC,mBAAmBd;QAC3C,MAAM,IAAI,CAACvB,UAAU,CAACsC,UAAU,CAACF;QAEjC,IAAI;YACF,IAAI,IAAI,CAAChC,aAAa,CAACuB,yBAAyB,IAAI;gBAClD,MAAM,IAAI,CAACrB,qBAAqB,CAACsB,0BAA0B,CAAC,IAAI,CAAC3B,YAAY,EAAEQ,IAAIoB,MAAM,CAACC,EAAE,EAAEM;YAChG;QACF,EAAE,OAAOL,GAAG;YACV,IAAI,CAACjC,MAAM,CAACkC,KAAK,CAAC,CAAC,sCAAsC,EAAEC,IAAAA,wBAAY,EAACF,IAAI;YAC5EG,IAAAA,sBAAgB,EAACH;QACnB;QAEArB,IAAIE,IAAI;IACV;IAEA,MAGM2B,cAAc9B,GAAY,EAAEC,GAAa,EAAE;QAC/C,MAAM,EAAE8B,cAAc,EAAE,GAAGtB,IAAAA,iCAAgB,EAACT;QAC5CC,IAAIE,IAAI,CAAC,IAAI,CAACV,iBAAiB,CAACc,QAAQ,CAACwB,eAAeV,EAAE;IAC5D;IAEA,MAGMW,aAAahC,GAAY,EAAEC,GAAa,EAAE;QAC9C,IAAI,CAACZ,MAAM,CAACqB,GAAG,CAAC,CAAC,iBAAiB,EAAEV,IAAIoB,MAAM,CAACa,IAAI,EAAE;QACrD,MAAM,EAAEA,IAAI,EAAE,GAAG,MAAMlB,IAAAA,yBAAa,EAACf,IAAIoB,MAAM,EAAEc,oDAAkB;QACnE,MAAMP,kBAAkBC,mBAAmBK;QAE3C,MAAME,WAAW,MAAM,IAAI,CAAC5C,UAAU,CAACyC,YAAY,CAACL;QACpD1B,IAAImC,SAAS,CAAC,gBAAgBD,SAASE,OAAO,CAAC,eAAe;QAC9DpC,IAAImC,SAAS,CAAC,kBAAkBD,SAASE,OAAO,CAAC,iBAAiB;QAClEpC,IAAImC,SAAS,CAAC,uBAAuBD,SAASE,OAAO,CAAC,sBAAsB;QAC5E,IAAIF,SAASE,OAAO,CAAC,OAAO,EAAEC,QAAQ;YACpCrC,IAAImC,SAAS,CAAC,QAAQD,SAASE,OAAO,CAAC,OAAO;QAChD;QACAF,SAASI,IAAI,CAACC,IAAI,CAACvC;IACrB;IAEA,MAGMwC,mBAAmBzC,GAAY,EAAEC,GAAa,EAAE;QACpD,MAAM,EAAEO,gBAAgB,EAAE,GAAGC,IAAAA,iCAAgB,EAACT;QAC9C,MAAM,EAAEiC,IAAI,EAAE,GAAG,MAAMlB,IAAAA,yBAAa,EAACf,IAAI0C,KAAK,EAAEC,+CAAa;QAC7D,MAAMhB,kBAAkBC,mBAAmBK;QAE3C,MAAMW,SAAS,MAAM,IAAI,CAACrD,UAAU,CAACsD,UAAU,CAAClB;QAChD,MAAM,IAAI,CAAClC,iBAAiB,CAACoD,UAAU,CAACrC,kBAAkByB;QAC1DhC,IAAIE,IAAI,CAACyC;IACX;IAEA,MAGME,kBAAkB9C,GAAY,EAAEC,GAAa,EAAE;QACnD,MAAM,EAAEO,gBAAgB,EAAE,GAAGC,IAAAA,iCAAgB,EAACT;QAE9C,MAAM+C,cAAc,EAAE;QACtB,MAAMC,iBAAiB,EAAE;QAEzB,MAAMC,oBAAoB,MAAM,IAAI,CAAC1D,UAAU,CAACgB,QAAQ;QACxD,KAAK,IAAI2C,QAAQD,kBAAmB;YAClC,IAAI;gBACF,MAAMtB,kBAAkBC,mBAAmBsB,KAAKjB,IAAI;gBACpD,MAAM,IAAI,CAAC1C,UAAU,CAACsD,UAAU,CAAClB;gBACjCqB,eAAeG,IAAI,CAACD;YACtB,EAAE,OAAO5B,GAAG;gBACVyB,YAAYI,IAAI,CAACD;YACnB;QACF;QAEA,MAAM,IAAI,CAACzD,iBAAiB,CAAC2D,iBAAiB,CAAC5C;QAE/CP,IAAIE,IAAI,CAAC;YACP4C;YACAC;QACF;IACF;IAEA,MAGMK,oBAAoBrD,GAAY,EAAEC,GAAa,EAAE;QACrD,MAAM,EAAEO,gBAAgB,EAAE,GAAGC,IAAAA,iCAAgB,EAACT;QAC9C,MAAMsD,mBAAmB,MAAM,IAAI,CAACzD,qBAAqB,CAAC0D,QAAQ,CAAC/C,iBAAiBgD,QAAQ;QAC5FvD,IAAIE,IAAI,CAACmD;IACX;IAEA,MAGMG,kBAAkBzD,GAAY,EAAEC,GAAa,EAAE;QACnD,MAAM,EAAEO,gBAAgB,EAAEuB,cAAc,EAAE,GAAGtB,IAAAA,iCAAgB,EAACT;QAG9D,MAAM0D,qBAAqB,IAAI,CAACC,yBAAyB,CAAC5B,eAAe6B,WAAW;QAEpF,MAAMjD,QAAQ,MAAM,IAAI,CAACf,aAAa,CAACiE,mBAAmB,CACxD7D,KACAC,KACAyD,oBACA;QAIF,MAAM,EAAE7B,YAAYiC,gBAAgB,EAAE,GAAG,MAAM/C,IAAAA,yBAAa,EAACf,IAAIgB,IAAI,EAAE+C,kDAAgB;QACvF,MAAMlC,aAAaiC,qBAAqB;QAExC,IAAI,CAACnD,OAAO2B,QAAQ;YAClB,MAAM,IAAI0B,sCAAmB,CAAC;gBAC5BzC,OAAO,CAAC,qFAAqF,EAAEmC,mBAAmBO,IAAI,CACpH,MACA,CAAC,CAAC;YACN;QACF;QACA,IAAItD,MAAM2B,MAAM,GAAG,GAAG;YACpB,MAAM,IAAI0B,sCAAmB,CAAC;gBAC5BzC,OAAO;YACT;QACF;QAGA,MAAM2C,mBAAmB,IAAI,CAACvE,aAAa,CAACwE,2BAA2B;QACvE,IAAID,kBAAkB;YACpB,MAAM,IAAI,CAACxE,oBAAoB,CAAC0E,iBAAiB,CAAC5D;QACpD;QAEA,MAAM6D,eAAe1D,KAAK,CAAC,EAAE;QAC7B,MAAM2D,QAAQ,IAAI,CAAC1E,aAAa,CAAC2E,oBAAoB,CAACF,cAAc7D;QAEpE,MAAM,IAAI,CAACjB,UAAU,CAACiF,UAAU,CAACH,cAAcxC,YAAYyC,OAAOG,KAAK,CAAC,CAACnD;YACvE,IAAI;gBACF,IAAI,CAAC1B,aAAa,CAAC8E,iBAAiB,CAACL;YACvC,EAAE,OAAO/C,GAAG;gBACV,IAAI,CAACjC,MAAM,CAACkC,KAAK,CAAC,CAAC,sDAAsD,EAAEC,IAAAA,wBAAY,EAACF,IAAI;YAC9F;YACA,MAAMA;QACR;QACA,MAAM,IAAI,CAAC7B,iBAAiB,CAACmB,SAAS,CAACJ;QAEvC,IAAI;YACF,IAAI,IAAI,CAACb,aAAa,CAACuB,yBAAyB,IAAI;gBAClD,MAAM,IAAI,CAACrB,qBAAqB,CAAC8E,yBAAyB,CAACnE,kBAAkBG,KAAK,CAAC,EAAE,CAACsB,IAAI;YAC5F;QACF,EAAE,OAAOX,GAAG;YACV,IAAI,CAACjC,MAAM,CAACkC,KAAK,CAAC,CAAC,sCAAsC,EAAEC,IAAAA,wBAAY,EAACF,IAAI;YAC5EG,IAAAA,sBAAgB,EAACH;QACnB;QAEA,IAAI;YACF,IAAI,CAAC1B,aAAa,CAAC8E,iBAAiB,CAACL;QACvC,EAAE,OAAO/C,GAAG;YACV,IAAI,CAACjC,MAAM,CAACkC,KAAK,CAAC,CAAC,sDAAsD,EAAEC,IAAAA,wBAAY,EAACF,IAAI;QAC9F;QAEArB,IAAIE,IAAI;IACV;IAEQwD,0BAA0BC,WAAmB,EAAY;QAC/D,IAAIA,gBAAgBgB,8BAAS,EAAE;YAC7B,OAAOC,6BAAY,CAACC,8BAA8B;QACpD;QACA,OAAOD,6BAAY,CAACE,8BAA8B;IACpD;AACF;;;;2FA1N2BC,aAAaC;;;;;;;;;;;2FAQbD,aAAaE;;;;;;;;;;;2FAQbF,aAAaE;;;;;;;;;;;2FAUbF,aAAaG;;;;;;;;;;;;2FAsBbH,aAAaG;;;;;;;;;;;2FAoBbH,aAAaE;;;;;;;;;;;2FAQbF,aAAaE;;;;;;;;;;;2FAkBbF,aAAaI;;;;;;;;;;;2FAabJ,aAAaC;;;;;;;;;;;2FA4BbD,aAAaE;;;;;;;;;;;2FASbF,aAAaK;;;;;;;;;8BApKjCR,6BAAY,CAACS,QAAQ,GAAG;;QACtBC,IAAAA,0BAAY;QAAIC,IAAAA,4BAAc,EAAC;YAACC,6BAAK,CAACC,KAAK;YAAED,6BAAK,CAACE,QAAQ;SAAC;QAAGC,IAAAA,iCAAwB"}
@@ -28,6 +28,10 @@ const AppConstants = {
28
28
  ".gcode",
29
29
  ".bgcode"
30
30
  ],
31
+ defaultAcceptedBambuExtensions: [
32
+ ".gcode",
33
+ ".3mf"
34
+ ],
31
35
  defaultServerPort: 4000,
32
36
  defaultMongoStringUnauthenticated: "mongodb://127.0.0.1:27017/fdm-monster",
33
37
  apiRoute: "/api",
@@ -71,7 +75,7 @@ const AppConstants = {
71
75
  githubUrl: "https://github.com/fdm-monster/fdm-monster",
72
76
  orgName: "fdm-monster",
73
77
  currentWizardVersion: 1,
74
- defaultClientMinimum: "1.12.0",
78
+ defaultClientMinimum: "1.12.3",
75
79
  influxUrl: "INFLUX_URL",
76
80
  influxToken: "INFLUX_TOKEN",
77
81
  influxOrg: "INFLUX_ORG",
@@ -80,13 +84,6 @@ const AppConstants = {
80
84
  defaultSocketThrottleRate: 1,
81
85
  debugSocketStatesKey: "DEBUG_SOCKET_STATES",
82
86
  defaultDebugSocketStates: "false",
83
- enableMqttAutoDiscoveryToken: "ENABLE_MQTT_AUTODISCOVERY",
84
- enableMqttAutoDiscoveryDefault: "false",
85
- mqttUrlToken: "MQTT_HOST",
86
- mqttPortToken: "MQTT_PORT",
87
- mqttPortDefault: 1883,
88
- mqttUsernameToken: "MQTT_USERNAME",
89
- mqttPasswordToken: "MQTT_PASSWORD",
90
87
  monsterPiFilePath: "/etc/monsterpi_version",
91
88
  sentryCustomDsnToken: "SENTRY_CUSTOM_DSN",
92
89
  sentryCustomDsnDefault: "https://164b8028a8a745bba3dbcab991b84ae7@o4503975545733120.ingest.sentry.io/4505101598261248",
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server.constants.ts"],"names":["AppConstants","NODE_ENV_KEY","VERSION_KEY","SERVER_PORT_KEY","MONGO_KEY","DATABASE_PATH","DATABASE_FILE","pm2ServiceName","logAppName","defaultFileStorageFolder","defaultLogsFolder","defaultLogZipsFolder","defaultClientBundleStorage","defaultClientBundleZipsStorage","defaultPrinterThumbnailsStorage","defaultFileUploadsStorage","defaultAcceptedGcodeExtensions","defaultServerPort","defaultMongoStringUnauthenticated","apiRoute","enableClientDistAutoUpdateKey","OVERRIDE_LOGIN_REQUIRED","OVERRIDE_REGISTRATION_ENABLED","DEFAULT_USERNAME_MINLEN","DEFAULT_PASSWORD_MINLEN","OVERRIDE_JWT_SECRET","OVERRIDE_JWT_EXPIRES_IN","DEFAULT_JWT_EXPIRES_IN","DEFAULT_REFRESH_TOKEN_ATTEMPTS","DEFAULT_REFRESH_TOKEN_EXPIRY","OVERRIDE_JWT_ISSUER","DEFAULT_JWT_ISSUER","OVERRIDE_JWT_AUDIENCE","DEFAULT_JWT_AUDIENCE","OVERRIDE_IS_DEMO_MODE","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","defaultDevelopmentEnv","ENABLE_COLORED_LOGS_KEY","defaultTestEnv","defaultProductionEnv","knownEnvNames","GITHUB_PAT","serverPackageName","serverRepoName","clientPackageName","clientRepoName","clientNextPackageName","clientNextRepoName","githubUrl","orgName","currentWizardVersion","defaultClientMinimum","influxUrl","influxToken","influxOrg","influxBucket","defaultWebsocketHandshakeTimeout","defaultSocketThrottleRate","debugSocketStatesKey","defaultDebugSocketStates","enableMqttAutoDiscoveryToken","enableMqttAutoDiscoveryDefault","mqttUrlToken","mqttPortToken","mqttPortDefault","mqttUsernameToken","mqttPasswordToken","monsterPiFilePath","sentryCustomDsnToken","sentryCustomDsnDefault","debugRoutesKey","ENABLE_EXPERIMENTAL_TYPEORM","enableExperimentalTypeormDefault","ENABLE_PROMETHEUS_METRICS","ENABLE_LOKI_LOGGING","LOKI_ADDRESS","LOKI_TIMEOUT_SECONDS","LOKI_INTERVAL"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,eAAe;IAC1BC,cAAc;IACdC,aAAa;IACbC,iBAAiB;IACjBC,WAAW;IACXC,eAAe;IACfC,eAAe;IAEfC,gBAAgB;IAChBC,YAAY;IAGZC,0BAA0B;IAC1BC,mBAAmB;IACnBC,sBAAsB;IAEtBC,4BAA4B;IAC5BC,gCAAgC;IAChCC,iCAAiC;IACjCC,2BAA2B;IAC3BC,gCAAgC;QAAC;QAAU;KAAU;IACrDC,mBAAmB;IACnBC,mCAAmC;IACnCC,UAAU;IACVC,+BAA+B;IAG/BC,yBAAyB;IAEzBC,+BAA+B;IAE/BC,yBAAyB;IAEzBC,yBAAyB;IAEzBC,qBAAqB;IAErBC,yBAAyB;IACzBC,wBAAwB,KAAK;IAE7BC,gCAAgC,CAAC;IAEjCC,8BAA8B,KAAK,KAAK,KAAK;IAE7CC,qBAAqB;IACrBC,oBAAoB;IAEpBC,uBAAuB;IACvBC,sBAAsB;IAEtBC,uBAAuB;IACvBC,wBAAwB;IACxBC,uBAAuB;IACvBC,wBAAwB;IACxBC,uBAAuB;IACvBC,oBAAoB;IACpBC,mBAAmB;IAEnBC,uBAAuB;IACvBC,yBAAyB;IACzBC,gBAAgB;IAChBC,sBAAsB;IACtBC,eAAe;QAAC;QAAe;QAAc;KAAO;IACpDC,YAAY;IACZC,mBAAmB;IACnBC,gBAAgB;IAChBC,mBAAmB;IACnBC,gBAAgB;IAChBC,uBAAuB;IACvBC,oBAAoB;IACpBC,WAAW;IACXC,SAAS;IAETC,sBAAsB;IACtBC,sBAAsB;IAEtBC,WAAW;IACXC,aAAa;IACbC,WAAW;IACXC,cAAc;IAGdC,kCAAkC;IAClCC,2BAA2B;IAC3BC,sBAAsB;IACtBC,0BAA0B;IAG1BC,8BAA8B;IAC9BC,gCAAgC;IAChCC,cAAc;IACdC,eAAe;IACfC,iBAAiB;IACjBC,mBAAmB;IACnBC,mBAAmB;IAGnBC,mBAAmB;IAGnBC,sBAAsB;IACtBC,wBACE;IAEFC,gBAAgB;IAEhBC,6BAA6B;IAC7BC,kCAAkC;IAClCC,2BAA2B;IAC3BC,qBAAqB;IACrBC,cAAc;IACdC,sBAAsB;IACtBC,eAAe;AACjB"}
1
+ {"version":3,"sources":["../src/server.constants.ts"],"names":["AppConstants","NODE_ENV_KEY","VERSION_KEY","SERVER_PORT_KEY","MONGO_KEY","DATABASE_PATH","DATABASE_FILE","pm2ServiceName","logAppName","defaultFileStorageFolder","defaultLogsFolder","defaultLogZipsFolder","defaultClientBundleStorage","defaultClientBundleZipsStorage","defaultPrinterThumbnailsStorage","defaultFileUploadsStorage","defaultAcceptedGcodeExtensions","defaultAcceptedBambuExtensions","defaultServerPort","defaultMongoStringUnauthenticated","apiRoute","enableClientDistAutoUpdateKey","OVERRIDE_LOGIN_REQUIRED","OVERRIDE_REGISTRATION_ENABLED","DEFAULT_USERNAME_MINLEN","DEFAULT_PASSWORD_MINLEN","OVERRIDE_JWT_SECRET","OVERRIDE_JWT_EXPIRES_IN","DEFAULT_JWT_EXPIRES_IN","DEFAULT_REFRESH_TOKEN_ATTEMPTS","DEFAULT_REFRESH_TOKEN_EXPIRY","OVERRIDE_JWT_ISSUER","DEFAULT_JWT_ISSUER","OVERRIDE_JWT_AUDIENCE","DEFAULT_JWT_AUDIENCE","OVERRIDE_IS_DEMO_MODE","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","defaultDevelopmentEnv","ENABLE_COLORED_LOGS_KEY","defaultTestEnv","defaultProductionEnv","knownEnvNames","GITHUB_PAT","serverPackageName","serverRepoName","clientPackageName","clientRepoName","clientNextPackageName","clientNextRepoName","githubUrl","orgName","currentWizardVersion","defaultClientMinimum","influxUrl","influxToken","influxOrg","influxBucket","defaultWebsocketHandshakeTimeout","defaultSocketThrottleRate","debugSocketStatesKey","defaultDebugSocketStates","monsterPiFilePath","sentryCustomDsnToken","sentryCustomDsnDefault","debugRoutesKey","ENABLE_EXPERIMENTAL_TYPEORM","enableExperimentalTypeormDefault","ENABLE_PROMETHEUS_METRICS","ENABLE_LOKI_LOGGING","LOKI_ADDRESS","LOKI_TIMEOUT_SECONDS","LOKI_INTERVAL"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,MAAMA,eAAe;IAC1BC,cAAc;IACdC,aAAa;IACbC,iBAAiB;IACjBC,WAAW;IACXC,eAAe;IACfC,eAAe;IAEfC,gBAAgB;IAChBC,YAAY;IAGZC,0BAA0B;IAC1BC,mBAAmB;IACnBC,sBAAsB;IAEtBC,4BAA4B;IAC5BC,gCAAgC;IAChCC,iCAAiC;IACjCC,2BAA2B;IAC3BC,gCAAgC;QAAC;QAAU;KAAU;IACrDC,gCAAgC;QAAC;QAAU;KAAO;IAClDC,mBAAmB;IACnBC,mCAAmC;IACnCC,UAAU;IACVC,+BAA+B;IAG/BC,yBAAyB;IAEzBC,+BAA+B;IAE/BC,yBAAyB;IAEzBC,yBAAyB;IAEzBC,qBAAqB;IAErBC,yBAAyB;IACzBC,wBAAwB,KAAK;IAE7BC,gCAAgC,CAAC;IAEjCC,8BAA8B,KAAK,KAAK,KAAK;IAE7CC,qBAAqB;IACrBC,oBAAoB;IAEpBC,uBAAuB;IACvBC,sBAAsB;IAEtBC,uBAAuB;IACvBC,wBAAwB;IACxBC,uBAAuB;IACvBC,wBAAwB;IACxBC,uBAAuB;IACvBC,oBAAoB;IACpBC,mBAAmB;IAEnBC,uBAAuB;IACvBC,yBAAyB;IACzBC,gBAAgB;IAChBC,sBAAsB;IACtBC,eAAe;QAAC;QAAe;QAAc;KAAO;IACpDC,YAAY;IACZC,mBAAmB;IACnBC,gBAAgB;IAChBC,mBAAmB;IACnBC,gBAAgB;IAChBC,uBAAuB;IACvBC,oBAAoB;IACpBC,WAAW;IACXC,SAAS;IAETC,sBAAsB;IACtBC,sBAAsB;IAEtBC,WAAW;IACXC,aAAa;IACbC,WAAW;IACXC,cAAc;IAGdC,kCAAkC;IAClCC,2BAA2B;IAC3BC,sBAAsB;IACtBC,0BAA0B;IAG1BC,mBAAmB;IAGnBC,sBAAsB;IACtBC,wBACE;IAEFC,gBAAgB;IAEhBC,6BAA6B;IAC7BC,kCAAkC;IAClCC,2BAA2B;IAC3BC,qBAAqB;IACrBC,cAAc;IACdC,sBAAsB;IACtBC,eAAe;AACjB"}
@@ -11,8 +11,9 @@ Object.defineProperty(exports, "BambuFtpAdapter", {
11
11
  const _basicftp = require("basic-ftp");
12
12
  const _eventconstants = require("../../constants/event.constants");
13
13
  const _nodefs = require("node:fs");
14
- const _nodeos = require("node:os");
15
14
  const _nodepath = require("node:path");
15
+ const _serverconstants = require("../../server.constants");
16
+ const _fsutils = require("../../utils/fs.utils");
16
17
  class BambuFtpAdapter {
17
18
  settingsStore;
18
19
  eventEmitter2;
@@ -91,10 +92,19 @@ class BambuFtpAdapter {
91
92
  throw error;
92
93
  }
93
94
  }
95
+ getFileStoragePath(filename) {
96
+ const storagePath = (0, _nodepath.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder);
97
+ if (!(0, _nodefs.existsSync)(storagePath)) {
98
+ (0, _nodefs.mkdirSync)(storagePath, {
99
+ recursive: true
100
+ });
101
+ }
102
+ return (0, _nodepath.join)(storagePath, filename);
103
+ }
94
104
  async uploadFile(fileBuffer, filename, progressToken) {
95
105
  this.ensureConnected();
96
106
  const remotePath = `/sdcard/${filename}`;
97
- const tempPath = (0, _nodepath.join)((0, _nodeos.tmpdir)(), `bambu-upload-${Date.now()}-${filename}`);
107
+ const tempPath = this.getFileStoragePath(`bambu-upload-${Date.now()}-${filename}`);
98
108
  try {
99
109
  (0, _nodefs.writeFileSync)(tempPath, fileBuffer);
100
110
  this.logger.debug(`Wrote temp file: ${tempPath}`);
@@ -139,6 +149,38 @@ class BambuFtpAdapter {
139
149
  throw error;
140
150
  }
141
151
  }
152
+ async downloadFileAsStream(remotePath) {
153
+ this.ensureConnected();
154
+ const filename = remotePath.split("/").pop() || "download";
155
+ const tempPath = this.getFileStoragePath(`bambu-download-${Date.now()}-${filename}`);
156
+ try {
157
+ this.logger.log(`Downloading ${remotePath} to temp file for streaming`);
158
+ await this.ftpClient.downloadTo(tempPath, remotePath);
159
+ this.logger.log(`File downloaded successfully: ${remotePath}`);
160
+ const stream = (0, _nodefs.createReadStream)(tempPath);
161
+ const cleanup = ()=>{
162
+ try {
163
+ (0, _nodefs.unlinkSync)(tempPath);
164
+ this.logger.debug(`Cleaned up temp file: ${tempPath}`);
165
+ } catch (cleanupError) {
166
+ this.logger.warn(`Failed to cleanup temp file ${tempPath}:`, cleanupError);
167
+ }
168
+ };
169
+ stream.on("close", cleanup);
170
+ stream.on("error", cleanup);
171
+ return {
172
+ stream,
173
+ tempPath,
174
+ cleanup
175
+ };
176
+ } catch (error) {
177
+ try {
178
+ (0, _nodefs.unlinkSync)(tempPath);
179
+ } catch {}
180
+ this.logger.error(`Download failed for ${remotePath}:`, error);
181
+ throw error;
182
+ }
183
+ }
142
184
  async deleteFile(remotePath) {
143
185
  this.ensureConnected();
144
186
  try {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/bambu/bambu-ftp.adapter.ts"],"names":["BambuFtpAdapter","logger","ftpClient","host","accessCode","isConnecting","settingsStore","loggerFactory","eventEmitter2","name","connect","closed","debug","Error","sanitizedHost","sanitizeHost","sanitizedAccessCode","sanitizeAccessCode","timeout","getTimeoutSettings","apiTimeout","log","Client","ftp","verbose","access","port","user","password","secure","secureOptions","rejectUnauthorized","minVersion","maxVersion","error","cleanup","disconnect","close","listFiles","dirPath","ensureConnected","files","list","length","uploadFile","fileBuffer","filename","progressToken","remotePath","tempPath","join","tmpdir","Date","now","writeFileSync","trackProgress","info","emit","uploadProgressEvent","loaded","bytes","total","bytesOverall","uploadFrom","uploadDoneEvent","uploadFailedEvent","message","unlinkSync","cleanupError","warn","downloadFile","localPath","downloadTo","deleteFile","remove","isConnected","trimmed","trim","ipv4Pattern","hostnamePattern","test","parts","split","map","Number","some","part","alphanumericPattern"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/services/bambu/bambu-ftp.adapter.ts"],"names":["BambuFtpAdapter","logger","ftpClient","host","accessCode","isConnecting","settingsStore","loggerFactory","eventEmitter2","name","connect","closed","debug","Error","sanitizedHost","sanitizeHost","sanitizedAccessCode","sanitizeAccessCode","timeout","getTimeoutSettings","apiTimeout","log","Client","ftp","verbose","access","port","user","password","secure","secureOptions","rejectUnauthorized","minVersion","maxVersion","error","cleanup","disconnect","close","listFiles","dirPath","ensureConnected","files","list","length","getFileStoragePath","filename","storagePath","join","superRootPath","AppConstants","defaultFileStorageFolder","existsSync","mkdirSync","recursive","uploadFile","fileBuffer","progressToken","remotePath","tempPath","Date","now","writeFileSync","trackProgress","info","emit","uploadProgressEvent","loaded","bytes","total","bytesOverall","uploadFrom","uploadDoneEvent","uploadFailedEvent","message","unlinkSync","cleanupError","warn","downloadFile","localPath","downloadTo","downloadFileAsStream","split","pop","stream","createReadStream","on","deleteFile","remove","isConnected","trimmed","trim","ipv4Pattern","hostnamePattern","test","parts","map","Number","some","part","alphanumericPattern"],"mappings":"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"}
@@ -20,6 +20,7 @@ const _mqtt = /*#__PURE__*/ _interop_require_default(require("mqtt"));
20
20
  const _socketstatetype = require("../../shared/dtos/socket-state.type");
21
21
  const _apistatetype = require("../../shared/dtos/api-state.type");
22
22
  const _printerapiinterface = require("../printer-api.interface");
23
+ const _octoprintwebsocketadapter = require("../octoprint/octoprint-websocket.adapter");
23
24
  function _interop_require_default(obj) {
24
25
  return obj && obj.__esModule ? obj : {
25
26
  default: obj
@@ -78,7 +79,7 @@ class BambuMqttAdapter {
78
79
  }
79
80
  this.connect(this.host, this.accessCode, this.serial).catch((err)=>{
80
81
  this.logger.error("Failed to open MQTT connection: " + err.toString());
81
- this.socketState = _socketstatetype.SOCKET_STATE.error;
82
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.error);
82
83
  });
83
84
  }
84
85
  close() {
@@ -88,12 +89,12 @@ class BambuMqttAdapter {
88
89
  }
89
90
  async setupSocketSession() {
90
91
  if (!this.host || !this.accessCode || !this.serial) {
91
- this.socketState = _socketstatetype.SOCKET_STATE.aborted;
92
- this.apiState = _apistatetype.API_STATE.noResponse;
92
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.aborted);
93
+ this.updateApiState(_apistatetype.API_STATE.noResponse);
93
94
  throw new Error("Credentials not properly registered");
94
95
  }
95
- this.socketState = _socketstatetype.SOCKET_STATE.opening;
96
- this.apiState = _apistatetype.API_STATE.responding;
96
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.opening);
97
+ this.updateApiState(_apistatetype.API_STATE.responding);
97
98
  }
98
99
  allowEmittingEvents() {
99
100
  this.eventsAllowed = true;
@@ -104,7 +105,7 @@ class BambuMqttAdapter {
104
105
  async connect(host, accessCode, serial) {
105
106
  if (this.mqttClient?.connected) {
106
107
  this.logger.debug("MQTT already connected");
107
- this.socketState = _socketstatetype.SOCKET_STATE.opened;
108
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.opened);
108
109
  return;
109
110
  }
110
111
  if (this.isConnecting) {
@@ -114,14 +115,14 @@ class BambuMqttAdapter {
114
115
  this.accessCode = accessCode;
115
116
  this.serial = serial;
116
117
  this.isConnecting = true;
117
- this.socketState = _socketstatetype.SOCKET_STATE.opening;
118
- const mqttUrl = `mqtt://${host}:1883`;
118
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.opening);
119
+ const mqttUrl = `mqtts://${host}:8883`;
119
120
  const timeout = this.settingsStore.getTimeoutSettings().apiTimeout;
120
121
  this.logger.log(`Connecting to Bambu MQTT at ${mqttUrl}`);
121
122
  return new Promise((resolve, reject)=>{
122
123
  const connectionTimeout = setTimeout(()=>{
123
124
  this.isConnecting = false;
124
- this.socketState = _socketstatetype.SOCKET_STATE.error;
125
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.error);
125
126
  this.cleanup();
126
127
  reject(new Error("MQTT connection timeout"));
127
128
  }, timeout);
@@ -130,16 +131,17 @@ class BambuMqttAdapter {
130
131
  username: "bblp",
131
132
  password: accessCode,
132
133
  clientId: `fdm_monster_${serial}_${Date.now()}`,
133
- protocol: "mqtt",
134
+ protocol: "mqtts",
134
135
  connectTimeout: timeout,
135
136
  reconnectPeriod: 5000,
136
- keepalive: 60
137
+ keepalive: 60,
138
+ rejectUnauthorized: false
137
139
  });
138
140
  this.mqttClient.on("connect", ()=>{
139
141
  clearTimeout(connectionTimeout);
140
142
  this.isConnecting = false;
141
- this.socketState = _socketstatetype.SOCKET_STATE.authenticated;
142
- this.apiState = _apistatetype.API_STATE.responding;
143
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.authenticated);
144
+ this.updateApiState(_apistatetype.API_STATE.responding);
143
145
  this.logger.log("MQTT connected successfully");
144
146
  const reportTopic = `device/${serial}/report`;
145
147
  this.mqttClient.subscribe(reportTopic, {
@@ -147,7 +149,7 @@ class BambuMqttAdapter {
147
149
  }, (err)=>{
148
150
  if (err) {
149
151
  this.logger.error(`Failed to subscribe to ${reportTopic}:`, err);
150
- this.socketState = _socketstatetype.SOCKET_STATE.error;
152
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.error);
151
153
  reject(new Error(`Subscribe failed: ${err.message}`));
152
154
  } else {
153
155
  this.logger.debug(`Subscribed to ${reportTopic}`);
@@ -158,7 +160,8 @@ class BambuMqttAdapter {
158
160
  this.mqttClient.on("error", (error)=>{
159
161
  clearTimeout(connectionTimeout);
160
162
  this.isConnecting = false;
161
- this.socketState = _socketstatetype.SOCKET_STATE.error;
163
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.error);
164
+ this.emitEvent(_octoprintwebsocketadapter.WsMessage.WS_ERROR, error.message).catch(()=>{});
162
165
  this.logger.error("MQTT error:", error);
163
166
  if (!this.mqttClient?.connected) {
164
167
  reject(error);
@@ -169,21 +172,23 @@ class BambuMqttAdapter {
169
172
  this.handleMessage(topic, message);
170
173
  });
171
174
  this.mqttClient.on("disconnect", ()=>{
172
- this.socketState = _socketstatetype.SOCKET_STATE.closed;
175
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.closed);
176
+ this.emitEvent(_octoprintwebsocketadapter.WsMessage.WS_CLOSED, "disconnected").catch(()=>{});
173
177
  this.logger.warn("MQTT disconnected");
174
178
  });
175
179
  this.mqttClient.on("reconnect", ()=>{
176
- this.socketState = _socketstatetype.SOCKET_STATE.opening;
180
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.opening);
177
181
  this.logger.debug("MQTT reconnecting...");
178
182
  });
179
183
  this.mqttClient.on("close", ()=>{
180
- this.socketState = _socketstatetype.SOCKET_STATE.closed;
184
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.closed);
185
+ this.emitEvent(_octoprintwebsocketadapter.WsMessage.WS_CLOSED, "connection closed").catch(()=>{});
181
186
  this.logger.debug("MQTT connection closed");
182
187
  });
183
188
  } catch (error) {
184
189
  clearTimeout(connectionTimeout);
185
190
  this.isConnecting = false;
186
- this.socketState = _socketstatetype.SOCKET_STATE.error;
191
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.error);
187
192
  this.cleanup();
188
193
  reject(error);
189
194
  }
@@ -191,11 +196,11 @@ class BambuMqttAdapter {
191
196
  }
192
197
  async disconnect() {
193
198
  if (!this.mqttClient) {
194
- this.socketState = _socketstatetype.SOCKET_STATE.closed;
199
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.closed);
195
200
  return;
196
201
  }
197
202
  this.logger.log("Disconnecting MQTT");
198
- this.socketState = _socketstatetype.SOCKET_STATE.closed;
203
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.closed);
199
204
  return new Promise((resolve)=>{
200
205
  if (this.mqttClient?.connected) {
201
206
  this.mqttClient.end(false, {}, ()=>{
@@ -281,6 +286,14 @@ class BambuMqttAdapter {
281
286
  resetSocketState() {
282
287
  this.lastState = null;
283
288
  }
289
+ updateSocketState(state) {
290
+ this.socketState = state;
291
+ this.emitEventSync(_octoprintwebsocketadapter.WsMessage.WS_STATE_UPDATED, state);
292
+ }
293
+ updateApiState(state) {
294
+ this.apiState = state;
295
+ this.emitEventSync(_octoprintwebsocketadapter.WsMessage.API_STATE_UPDATED, state);
296
+ }
284
297
  async emitEvent(event, payload) {
285
298
  if (!this.eventsAllowed) {
286
299
  return;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/bambu/bambu-mqtt.adapter.ts"],"names":["BambuMqttAdapter","bambuEvent","event","logger","settingsStore","eventEmitter2","printerType","BambuType","printerId","socketState","SOCKET_STATE","unopened","apiState","API_STATE","unset","login","lastMessageReceivedTimestamp","mqttClient","host","accessCode","serial","lastState","isConnecting","eventsAllowed","loggerFactory","name","registerCredentials","socketLogin","loginDto","printerURL","replace","password","username","needsReopen","isApiOnline","responding","closed","error","needsSetup","needsReauth","isClosedOrAborted","aborted","reauthSession","debug","open","Error","connect","catch","err","toString","close","disconnect","setupSocketSession","noResponse","opening","allowEmittingEvents","disallowEmittingEvents","connected","opened","mqttUrl","timeout","getTimeoutSettings","apiTimeout","log","Promise","resolve","reject","connectionTimeout","setTimeout","cleanup","mqtt","clientId","Date","now","protocol","connectTimeout","reconnectPeriod","keepalive","on","clearTimeout","authenticated","reportTopic","subscribe","qos","message","topic","handleMessage","warn","end","getLastState","sendCommand","payload","requestTopic","JSON","stringify","publish","startPrint","filename","print","command","param","url","subtask_name","sequence_id","String","pausePrint","resumePrint","stopPrint","sendGcode","gcode","resetSocketState","emitEvent","emitAsync","emitEventSync","emit","transformStateToCurrentMessage","state","isPrinting","gcode_state","mc_print_stage","isPaused","isPausedText","text","flags","operational","printing","paused","ready","print_error","cancelling","pausing","sdReady","closedOrError","temps","time","tool0","actual","nozzle_temper","target","nozzle_target_temper","bed","bed_temper","bed_target_temper","chamber","chamber_temper","progress","completion","mc_percent","printTime","printTimeLeft","mc_remaining_time","job","file","gcode_file","currentZ","layer_num","offsets","resends","count","transmitted","ratio","logs","messages","parse","endsWith","currentMessage","removeAllListeners"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/services/bambu/bambu-mqtt.adapter.ts"],"names":["BambuMqttAdapter","bambuEvent","event","logger","settingsStore","eventEmitter2","printerType","BambuType","printerId","socketState","SOCKET_STATE","unopened","apiState","API_STATE","unset","login","lastMessageReceivedTimestamp","mqttClient","host","accessCode","serial","lastState","isConnecting","eventsAllowed","loggerFactory","name","registerCredentials","socketLogin","loginDto","printerURL","replace","password","username","needsReopen","isApiOnline","responding","closed","error","needsSetup","needsReauth","isClosedOrAborted","aborted","reauthSession","debug","open","Error","connect","catch","err","toString","updateSocketState","close","disconnect","setupSocketSession","updateApiState","noResponse","opening","allowEmittingEvents","disallowEmittingEvents","connected","opened","mqttUrl","timeout","getTimeoutSettings","apiTimeout","log","Promise","resolve","reject","connectionTimeout","setTimeout","cleanup","mqtt","clientId","Date","now","protocol","connectTimeout","reconnectPeriod","keepalive","rejectUnauthorized","on","clearTimeout","authenticated","reportTopic","subscribe","qos","message","emitEvent","WsMessage","WS_ERROR","topic","handleMessage","WS_CLOSED","warn","end","getLastState","sendCommand","payload","requestTopic","JSON","stringify","publish","startPrint","filename","print","command","param","url","subtask_name","sequence_id","String","pausePrint","resumePrint","stopPrint","sendGcode","gcode","resetSocketState","state","emitEventSync","WS_STATE_UPDATED","API_STATE_UPDATED","emitAsync","emit","transformStateToCurrentMessage","isPrinting","gcode_state","mc_print_stage","isPaused","isPausedText","text","flags","operational","printing","paused","ready","print_error","cancelling","pausing","sdReady","closedOrError","temps","time","tool0","actual","nozzle_temper","target","nozzle_target_temper","bed","bed_temper","bed_target_temper","chamber","chamber_temper","progress","completion","mc_percent","printTime","printTimeLeft","mc_remaining_time","job","file","gcode_file","currentZ","layer_num","offsets","resends","count","transmitted","ratio","logs","messages","parse","endsWith","currentMessage","removeAllListeners"],"mappings":"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"}
@@ -139,9 +139,27 @@ class BambuApi {
139
139
  date: f.modifiedAt ? new Date(f.modifiedAt).getTime() : null
140
140
  }));
141
141
  }
142
- downloadFile(path) {
143
- this.logger.warn("downloadFile not implemented via HTTP for Bambu Lab printers");
144
- throw new Error("Method not implemented. Use FTP adapter directly if needed.");
142
+ async downloadFile(path) {
143
+ this.logger.log(`Downloading file via FTP: ${path}`, this.logMeta());
144
+ await this.ensureFtpConnected();
145
+ const remotePath = path.startsWith("/sdcard/") ? path : `/sdcard/${path}`;
146
+ const { stream, tempPath } = await this.client.ftp.downloadFileAsStream(remotePath);
147
+ const stats = (0, _nodefs.statSync)(tempPath);
148
+ const filename = remotePath.split("/").pop() || "download";
149
+ const response = {
150
+ data: stream,
151
+ status: 200,
152
+ statusText: "OK",
153
+ headers: {
154
+ "content-type": "application/octet-stream",
155
+ "content-length": String(stats.size),
156
+ "content-disposition": `attachment; filename="${filename}"`
157
+ },
158
+ config: {
159
+ headers: {}
160
+ }
161
+ };
162
+ return response;
145
163
  }
146
164
  getFileChunk(path, startBytes, endBytes) {
147
165
  this.logger.warn("getFileChunk not implemented for Bambu Lab printers");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/services/bambu.api.ts"],"names":["BambuApi","defaultLog","adapter","logger","client","printerLogin","printerSocketStore","printerId","bambuClient","loggerFactory","name","debug","logMeta","setPrinterId","getMqttAdapter","Error","getPrinterSocket","BambuMqttAdapter","ensureFtpConnected","isConnected","connect","type","BambuType","login","getVersion","response","getApiVersion","version","disconnect","restartServer","warn","restartHost","restartPrinterFirmware","startPrint","path","log","mqttAdapter","pausePrint","resumePrint","cancelPrint","stopPrint","quickStop","sendGcode","script","movePrintHead","amounts","homeAxes","axes","getFile","files","ftp","listFiles","file","find","f","endsWith","size","date","modifiedAt","Date","getTime","getFiles","filter","isFile","map","downloadFile","getFileChunk","startBytes","endBytes","uploadFile","fileOrBuffer","uploadToken","fileBuffer","filename","Buffer","isBuffer","now","filePath","originalname","readFileSync","length","error","message","deleteFile","deleteFolder","getSettings","getReprintState","state","getLastState","reprintState","ReprintState","PrinterNotAvailable","connectionState","lastFile","gcode_file","NoLastPrint","LastPrintReady"],"mappings":";;;;+BAgCaA;;;eAAAA;;;qCAzBN;kCAK0B;wBAKJ;AAE7B,MAAMC,aAAa;IAAEC,SAAS;AAAY;AAanC,MAAMF;IACXG,OAAsB;IACtBC,OAAoB;IACpBC,aAAuB;IACfC,mBAAuC;IACvCC,UAAmB;IAE3B,YACEC,WAAwB,EACxBH,YAAsB,EACtBC,kBAAsC,EACtCG,aAA6B,CAC7B;QACA,IAAI,CAACN,MAAM,GAAGM,cAAcT,SAASU,IAAI;QACzC,IAAI,CAACN,MAAM,GAAGI;QACd,IAAI,CAACH,YAAY,GAAGA;QACpB,IAAI,CAACC,kBAAkB,GAAGA;QAC1B,IAAI,CAACH,MAAM,CAACQ,KAAK,CAAC,gCAAgC,IAAI,CAACC,OAAO;IAChE;IAKAC,aAAaN,SAAiB,EAAQ;QACpC,IAAI,CAACA,SAAS,GAAGA;IACnB;IAKQO,iBAAmC;QACzC,IAAI,CAAC,IAAI,CAACP,SAAS,EAAE;YACnB,MAAM,IAAIQ,MAAM;QAClB;QAEA,MAAMb,UAAU,IAAI,CAACI,kBAAkB,CAACU,gBAAgB,CAAC,IAAI,CAACT,SAAS;QACvE,IAAI,CAACL,SAAS;YACZ,MAAM,IAAIa,MAAM,CAAC,mCAAmC,EAAE,IAAI,CAACR,SAAS,EAAE;QACxE;QAEA,IAAI,CAAEL,CAAAA,mBAAmBe,kCAAgB,AAAD,GAAI;YAC1C,MAAM,IAAIF,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAACR,SAAS,CAAC,0BAA0B,CAAC;QACnF;QAEA,OAAOL;IACT;IAKA,MAAcgB,qBAAoC;QAChD,IAAI,CAAC,IAAI,CAACd,MAAM,CAACe,WAAW,EAAE;YAC5B,IAAI,CAAChB,MAAM,CAACQ,KAAK,CAAC;YAClB,MAAM,IAAI,CAACP,MAAM,CAACgB,OAAO,CAAC,IAAI,CAACf,YAAY;QAC7C;IACF;IAEA,IAAIgB,OAAoB;QACtB,OAAOC,8BAAS;IAClB;IAEA,IAAIC,MAAMA,KAAe,EAAE;QACzB,IAAI,CAAClB,YAAY,GAAGkB;IACtB;IAEA,MAAMC,aAA8B;QAClC,MAAMC,WAAW,MAAM,IAAI,CAACrB,MAAM,CAACsB,aAAa,CAAC,IAAI,CAACrB,YAAY;QAClE,OAAOoB,SAASE,OAAO;IACzB;IAEA,MAAMP,UAAyB;QAC7B,MAAM,IAAI,CAAChB,MAAM,CAACgB,OAAO,CAAC,IAAI,CAACf,YAAY;IAC7C;IAEA,MAAMuB,aAA4B;QAChC,MAAM,IAAI,CAACxB,MAAM,CAACwB,UAAU;IAC9B;IAEAC,gBAA+B;QAC7B,IAAI,CAAC1B,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEAgB,cAA6B;QAC3B,IAAI,CAAC5B,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEAiB,yBAAwC;QACtC,IAAI,CAAC7B,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEA,MAAMkB,WAAWC,IAAY,EAAiB;QAC5C,IAAI,CAAC/B,MAAM,CAACgC,GAAG,CAAC,CAAC,gBAAgB,EAAED,MAAM,EAAE,IAAI,CAACtB,OAAO;QACvD,MAAMwB,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMsB,YAAYH,UAAU,CAACC;IAC/B;IAEA,MAAMG,aAA4B;QAChC,IAAI,CAAClC,MAAM,CAACgC,GAAG,CAAC,iBAAiB,IAAI,CAACvB,OAAO;QAC7C,MAAMwB,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMsB,YAAYC,UAAU;IAC9B;IAEA,MAAMC,cAA6B;QACjC,IAAI,CAACnC,MAAM,CAACgC,GAAG,CAAC,kBAAkB,IAAI,CAACvB,OAAO;QAC9C,MAAMwB,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMsB,YAAYE,WAAW;IAC/B;IAEA,MAAMC,cAA6B;QACjC,IAAI,CAACpC,MAAM,CAACgC,GAAG,CAAC,mBAAmB,IAAI,CAACvB,OAAO;QAC/C,MAAMwB,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMsB,YAAYI,SAAS;IAC7B;IAEA,MAAMC,YAA2B;QAC/B,IAAI,CAACtC,MAAM,CAACgC,GAAG,CAAC,yCAAyC,IAAI,CAACvB,OAAO;QACrE,MAAMwB,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMsB,YAAYI,SAAS;IAC7B;IAEA,MAAME,UAAUC,MAAc,EAAiB;QAC7C,IAAI,CAACxC,MAAM,CAACgC,GAAG,CAAC,CAAC,eAAe,EAAEQ,QAAQ,EAAE,IAAI,CAAC/B,OAAO;QACxD,MAAMwB,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMsB,YAAYM,SAAS,CAACC;IAC9B;IAEAC,cAAcC,OAA+D,EAAiB;QAC5F,IAAI,CAAC1C,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEA+B,SAASC,IAA+C,EAAiB;QACvE,IAAI,CAAC5C,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEA,MAAMiC,QAAQd,IAAY,EAAoB;QAC5C,IAAI,CAAC/B,MAAM,CAACQ,KAAK,CAAC,CAAC,mBAAmB,EAAEuB,MAAM,EAAE,IAAI,CAACtB,OAAO;QAC5D,MAAM,IAAI,CAACM,kBAAkB;QAC7B,MAAM+B,QAAQ,MAAM,IAAI,CAAC7C,MAAM,CAAC8C,GAAG,CAACC,SAAS,CAAC;QAE9C,MAAMC,OAAOH,MAAMI,IAAI,CAAC,CAACC,IAAMA,EAAE5C,IAAI,KAAKwB,QAAQoB,EAAE5C,IAAI,CAAC6C,QAAQ,CAACrB;QAClE,IAAI,CAACkB,MAAM;YACT,MAAM,IAAIrC,MAAM,CAAC,gBAAgB,EAAEmB,MAAM;QAC3C;QAEA,OAAO;YACLA,MAAMkB,KAAK1C,IAAI;YACf8C,MAAMJ,KAAKI,IAAI;YACfC,MAAML,KAAKM,UAAU,GAAG,IAAIC,KAAKP,KAAKM,UAAU,EAAEE,OAAO,KAAK;QAChE;IACF;IAEA,MAAMC,WAA+B;QACnC,IAAI,CAAC1D,MAAM,CAACQ,KAAK,CAAC,iBAAiB,IAAI,CAACC,OAAO;QAC/C,MAAM,IAAI,CAACM,kBAAkB;QAC7B,MAAM+B,QAAQ,MAAM,IAAI,CAAC7C,MAAM,CAAC8C,GAAG,CAACC,SAAS,CAAC;QAE9C,OAAOF,MACJa,MAAM,CAAC,CAACR,IAAMA,EAAES,MAAM,EACtBC,GAAG,CAAC,CAACV,IAAO,CAAA;gBACXpB,MAAMoB,EAAE5C,IAAI;gBACZ8C,MAAMF,EAAEE,IAAI;gBACZC,MAAMH,EAAEI,UAAU,GAAG,IAAIC,KAAKL,EAAEI,UAAU,EAAEE,OAAO,KAAK;YAC1D,CAAA;IACJ;IAEAK,aAAa/B,IAAY,EAAuC;QAC9D,IAAI,CAAC/B,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEAmD,aAAahC,IAAY,EAAEiC,UAAkB,EAAEC,QAAgB,EAAwB;QACrF,IAAI,CAACjE,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEA,MAAMsD,WACJC,YAA0C,EAC1CrC,UAAmB,EACnBsC,WAAoB,EACL;QACf,IAAIC;QACJ,IAAIC;QAGJ,IAAIC,OAAOC,QAAQ,CAACL,eAAe;YACjC,IAAI,CAACnE,MAAM,CAACgC,GAAG,CAAC;YAChBqC,aAAaF;YACbG,WAAW,CAAC,OAAO,EAAEd,KAAKiB,GAAG,GAAG,IAAI,CAAC;QACvC,OAAO;YACL,MAAMC,WAAWP,aAAapC,IAAI;YAClCuC,WAAWH,aAAaQ,YAAY;YACpC,IAAI,CAAC3E,MAAM,CAACgC,GAAG,CAAC,CAAC,mCAAmC,EAAE0C,UAAU;YAChEL,aAAaO,IAAAA,oBAAY,EAACF;QAC5B;QAEA,IAAI,CAAC1E,MAAM,CAACgC,GAAG,CAAC,CAAC,gBAAgB,EAAEsC,SAAS,EAAE,EAAED,WAAWQ,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,CAACpE,OAAO;QAExF,IAAI;YACF,MAAM,IAAI,CAACM,kBAAkB;YAC7B,MAAM,IAAI,CAACd,MAAM,CAAC8C,GAAG,CAACmB,UAAU,CAACG,YAAYC,UAAUF;YAEvD,IAAItC,YAAY;gBACd,IAAI,CAAC9B,MAAM,CAACgC,GAAG,CAAC,CAAC,6BAA6B,EAAEsC,UAAU,EAAE,IAAI,CAAC7D,OAAO;gBACxE,MAAMwB,cAAc,IAAI,CAACtB,cAAc;gBACvC,MAAMsB,YAAYH,UAAU,CAACwC;YAC/B;QACF,EAAE,OAAOQ,OAAO;YACd,IAAI,CAAC9E,MAAM,CAAC8E,KAAK,CAAC,CAAC,eAAe,EAAE,AAACA,MAAgBC,OAAO,EAAE,EAAE,IAAI,CAACtE,OAAO;YAC5E,MAAMqE;QACR;IACF;IAEA,MAAME,WAAWjD,IAAY,EAAiB;QAC5C,IAAI,CAAC/B,MAAM,CAACgC,GAAG,CAAC,CAAC,eAAe,EAAED,MAAM,EAAE,IAAI,CAACtB,OAAO;QACtD,MAAM,IAAI,CAACM,kBAAkB;QAC7B,MAAM,IAAI,CAACd,MAAM,CAAC8C,GAAG,CAACiC,UAAU,CAAC,CAAC,QAAQ,EAAEjD,MAAM;IACpD;IAEAkD,aAAalD,IAAY,EAAiB;QACxC,IAAI,CAAC/B,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEAsE,cAAsD;QACpD,IAAI,CAAClF,MAAM,CAAC2B,IAAI,CAAC;QACjB,MAAM,IAAIf,MAAM;IAClB;IAEA,MAAMuE,kBAAkD;QACtD,MAAMlD,cAAc,IAAI,CAACtB,cAAc;QACvC,MAAMyE,QAAQnD,YAAYoD,YAAY;QAEtC,IAAI,CAACD,OAAO;YACV,OAAO;gBACLE,cAAcC,iCAAY,CAACC,mBAAmB;gBAC9CC,iBAAiB;YACnB;QACF;QAEA,MAAMC,WAAWN,MAAMO,UAAU;QAEjC,IAAI,CAACD,UAAU;YACb,OAAO;gBACLJ,cAAcC,iCAAY,CAACK,WAAW;gBACtCH,iBAAiB;YACnB;QACF;QAEA,OAAO;YACLxC,MAAM;gBACJlB,MAAM2D;gBACNrC,MAAM,CAAC;gBACPC,MAAM;YACR;YACAgC,cAAcC,iCAAY,CAACM,cAAc;YACzCJ,iBAAiB;QACnB;IACF;IAEQhF,UAAU;QAChB,OAAOX;IACT;AACF"}
1
+ {"version":3,"sources":["../../src/services/bambu.api.ts"],"names":["BambuApi","defaultLog","adapter","logger","client","printerLogin","printerSocketStore","printerId","bambuClient","loggerFactory","name","debug","logMeta","setPrinterId","getMqttAdapter","Error","getPrinterSocket","BambuMqttAdapter","ensureFtpConnected","isConnected","connect","type","BambuType","login","getVersion","response","getApiVersion","version","disconnect","restartServer","warn","restartHost","restartPrinterFirmware","startPrint","path","log","mqttAdapter","pausePrint","resumePrint","cancelPrint","stopPrint","quickStop","sendGcode","script","movePrintHead","amounts","homeAxes","axes","getFile","files","ftp","listFiles","file","find","f","endsWith","size","date","modifiedAt","Date","getTime","getFiles","filter","isFile","map","downloadFile","remotePath","startsWith","stream","tempPath","downloadFileAsStream","stats","statSync","filename","split","pop","data","status","statusText","headers","String","config","getFileChunk","startBytes","endBytes","uploadFile","fileOrBuffer","uploadToken","fileBuffer","Buffer","isBuffer","now","filePath","originalname","readFileSync","length","error","message","deleteFile","deleteFolder","getSettings","getReprintState","state","getLastState","reprintState","ReprintState","PrinterNotAvailable","connectionState","lastFile","gcode_file","NoLastPrint","LastPrintReady"],"mappings":"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"}
@@ -9,12 +9,12 @@ Object.defineProperty(exports, "MulterService", {
9
9
  }
10
10
  });
11
11
  const _multer = /*#__PURE__*/ _interop_require_wildcard(require("multer"));
12
- const _path = require("path");
13
- const _fs = require("fs");
12
+ const _nodepath = require("node:path");
13
+ const _nodefs = require("node:fs");
14
14
  const _fsutils = require("../../utils/fs.utils");
15
15
  const _serverconstants = require("../../server.constants");
16
- const _nodefs = require("node:fs");
17
16
  const _errorutils = require("../../utils/error.utils");
17
+ const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
18
18
  function _getRequireWildcardCache(nodeInterop) {
19
19
  if (typeof WeakMap !== "function") return null;
20
20
  var cacheBabelInterop = new WeakMap();
@@ -58,112 +58,78 @@ function _interop_require_wildcard(obj, nodeInterop) {
58
58
  }
59
59
  class MulterService {
60
60
  fileUploadTrackerCache;
61
- httpClientFactory;
62
61
  logger;
63
- constructor(loggerFactory, fileUploadTrackerCache, httpClientFactory){
62
+ constructor(loggerFactory, fileUploadTrackerCache){
64
63
  this.fileUploadTrackerCache = fileUploadTrackerCache;
65
- this.httpClientFactory = httpClientFactory;
66
64
  this.logger = loggerFactory(MulterService.name);
67
65
  }
68
66
  startTrackingSession(multerFile, printerId) {
69
67
  return this.fileUploadTrackerCache.addUploadTracker(multerFile, printerId);
70
68
  }
71
69
  clearUploadsFolder() {
72
- const fileStoragePath = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder);
73
- if (!(0, _fs.existsSync)(fileStoragePath)) return;
74
- const files = (0, _fs.readdirSync)(fileStoragePath, {
70
+ const fileStoragePath = (0, _nodepath.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder);
71
+ if (!(0, _nodefs.existsSync)(fileStoragePath)) return;
72
+ const files = (0, _nodefs.readdirSync)(fileStoragePath, {
75
73
  withFileTypes: true
76
74
  }).filter((item)=>!item.isDirectory()).map((item)=>item.name);
77
75
  for (const file of files){
78
76
  try {
79
- (0, _nodefs.rmSync)((0, _path.join)(fileStoragePath, file));
77
+ (0, _nodefs.rmSync)((0, _nodepath.join)(fileStoragePath, file));
80
78
  } catch (error) {
81
79
  this.logger.error(`Could not clear upload file in temporary folder ${(0, _errorutils.errorSummary)(error)}`);
82
80
  }
83
81
  }
84
82
  }
85
83
  clearUploadedFile(multerFile) {
86
- if ((0, _fs.existsSync)(multerFile.path)) {
84
+ if ((0, _nodefs.existsSync)(multerFile.path)) {
87
85
  (0, _nodefs.rmSync)(multerFile.path);
88
86
  } else {
89
87
  this.logger.warn("Cannot unlink temporarily uploaded file as it was not found");
90
88
  }
91
89
  }
92
- getNewestFile(collection) {
93
- const dirPath = this.collectionPath(collection);
94
- const files = this.orderRecentFiles(dirPath);
95
- const latestFile = files.length ? files[0] : undefined;
96
- return latestFile ? (0, _path.join)(dirPath, latestFile.file) : undefined;
97
- }
98
90
  fileExists(downloadFilename, collection) {
99
- const downloadPath = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder, collection, downloadFilename);
100
- return (0, _fs.existsSync)(downloadPath);
101
- }
102
- async downloadFile(downloadUrl, downloadFilename, collection) {
103
- const downloadFolder = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder, collection);
104
- if (!(0, _fs.existsSync)(downloadFolder)) {
105
- (0, _fs.mkdirSync)(downloadFolder, {
106
- recursive: true
107
- });
108
- }
109
- const downloadPath = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder, collection, downloadFilename);
110
- const fileStream = (0, _fs.createWriteStream)(downloadPath);
111
- const defaultHttpClient = this.httpClientFactory.createDefaultClient();
112
- const res = await defaultHttpClient.get(downloadUrl);
113
- return await new Promise((resolve, reject)=>{
114
- fileStream.write(res.data);
115
- fileStream.on("error", (err)=>{
116
- return reject(err);
117
- });
118
- fileStream.on("finish", async ()=>{
119
- return resolve(null);
120
- });
121
- fileStream.on("close", async ()=>{
122
- return resolve(null);
123
- });
124
- resolve(null);
125
- });
91
+ const downloadPath = (0, _nodepath.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder, collection, downloadFilename);
92
+ return (0, _nodefs.existsSync)(downloadPath);
126
93
  }
127
94
  getMulterGCodeFileFilter(storeAsFile = true) {
128
- return this.getMulterFileFilter(_serverconstants.AppConstants.defaultAcceptedGcodeExtensions, storeAsFile);
95
+ return this.getMulterFileFilter(storeAsFile);
129
96
  }
130
97
  async multerLoadFileAsync(req, res, fileExtensions, storeAsFile = true) {
131
- return await new Promise((resolve, reject)=>this.getMulterFileFilter(fileExtensions, storeAsFile)(req, res, (err)=>{
132
- if (err) {
133
- return reject(err);
134
- }
98
+ const files = await new Promise((resolve, reject)=>this.getMulterFileFilter(storeAsFile)(req, res, (err)=>{
99
+ if (err) return reject(err);
135
100
  resolve(req.files);
136
101
  }));
102
+ this.validateUploadedFiles(files, fileExtensions, storeAsFile);
103
+ return files;
137
104
  }
138
- getMulterFileFilter(fileExtensions, storeAsFile = true) {
105
+ validateUploadedFiles(files, allowedExtensions, storeAsFile) {
106
+ if (!files?.length || !allowedExtensions?.length) return;
107
+ for (const file of files){
108
+ const ext = (0, _nodepath.extname)(file.originalname)?.toLowerCase();
109
+ if (!allowedExtensions.includes(ext)) {
110
+ if (storeAsFile && file.path && (0, _nodefs.existsSync)(file.path)) {
111
+ try {
112
+ (0, _nodefs.rmSync)(file.path);
113
+ } catch (e) {
114
+ this.logger.error(`Could not remove invalid file ${(0, _errorutils.errorSummary)(e)}`);
115
+ }
116
+ }
117
+ throw new _runtimeexceptions.ValidationException({
118
+ error: `Only files with extensions ${allowedExtensions.join(", ")} are allowed`
119
+ });
120
+ }
121
+ }
122
+ }
123
+ getMulterFileFilter(storeAsFile = true) {
139
124
  return (0, _multer.default)({
140
125
  storage: storeAsFile ? (0, _multer.diskStorage)({
141
- destination: (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder)
142
- }) : (0, _multer.memoryStorage)(),
143
- fileFilter: this.multerFileFilter(fileExtensions)
126
+ destination: (0, _nodepath.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder)
127
+ }) : (0, _multer.memoryStorage)()
144
128
  }).any();
145
129
  }
146
- multerFileFilter(extensions) {
147
- return (_, file, callback)=>{
148
- const ext = (0, _path.extname)(file.originalname);
149
- if (extensions?.length && !extensions.includes(ext?.toLowerCase())) {
150
- return callback(new Error(`Only files with extensions ${extensions} are allowed`));
151
- }
152
- return callback(null, true);
153
- };
154
- }
155
130
  getSessions() {
156
131
  return this.fileUploadTrackerCache.getUploads();
157
132
  }
158
- orderRecentFiles = (dir)=>{
159
- return (0, _fs.readdirSync)(dir).filter((file)=>(0, _fs.lstatSync)((0, _path.join)(dir, file)).isFile()).map((file)=>({
160
- file,
161
- mtime: (0, _fs.lstatSync)((0, _path.join)(dir, file)).mtime
162
- })).sort((a, b)=>b.mtime.getTime() - a.mtime.getTime());
163
- };
164
- collectionPath(collection) {
165
- return (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultFileStorageFolder, collection);
166
- }
167
133
  }
168
134
 
169
135
  //# sourceMappingURL=multer.service.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/core/multer.service.ts"],"names":["MulterService","logger","loggerFactory","fileUploadTrackerCache","httpClientFactory","name","startTrackingSession","multerFile","printerId","addUploadTracker","clearUploadsFolder","fileStoragePath","join","superRootPath","AppConstants","defaultFileStorageFolder","existsSync","files","readdirSync","withFileTypes","filter","item","isDirectory","map","file","rmSync","error","errorSummary","clearUploadedFile","path","warn","getNewestFile","collection","dirPath","collectionPath","orderRecentFiles","latestFile","length","undefined","fileExists","downloadFilename","downloadPath","downloadFile","downloadUrl","downloadFolder","mkdirSync","recursive","fileStream","createWriteStream","defaultHttpClient","createDefaultClient","res","get","Promise","resolve","reject","write","data","on","err","getMulterGCodeFileFilter","storeAsFile","getMulterFileFilter","defaultAcceptedGcodeExtensions","multerLoadFileAsync","req","fileExtensions","multer","storage","diskStorage","destination","memoryStorage","fileFilter","multerFileFilter","any","extensions","_","callback","ext","extname","originalname","includes","toLowerCase","Error","getSessions","getUploads","dir","lstatSync","isFile","mtime","sort","a","b","getTime"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/services/core/multer.service.ts"],"names":["MulterService","logger","loggerFactory","fileUploadTrackerCache","name","startTrackingSession","multerFile","printerId","addUploadTracker","clearUploadsFolder","fileStoragePath","join","superRootPath","AppConstants","defaultFileStorageFolder","existsSync","files","readdirSync","withFileTypes","filter","item","isDirectory","map","file","rmSync","error","errorSummary","clearUploadedFile","path","warn","fileExists","downloadFilename","collection","downloadPath","getMulterGCodeFileFilter","storeAsFile","getMulterFileFilter","multerLoadFileAsync","req","res","fileExtensions","Promise","resolve","reject","err","validateUploadedFiles","allowedExtensions","length","ext","extname","originalname","toLowerCase","includes","e","ValidationException","multer","storage","diskStorage","destination","memoryStorage","any","getSessions","getUploads"],"mappings":"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"}
@@ -9,8 +9,11 @@ Object.defineProperty(exports, "PrusaLinkHttpPollingAdapter", {
9
9
  }
10
10
  });
11
11
  const _printerapiinterface = require("../printer-api.interface");
12
+ const _socketstatetype = require("../../shared/dtos/socket-state.type");
13
+ const _apistatetype = require("../../shared/dtos/api-state.type");
12
14
  const _errorutils = require("../../utils/error.utils");
13
15
  const _prusalinkconstants = require("./constants/prusalink.constants");
16
+ const _octoprintwebsocketadapter = require("../octoprint/octoprint-websocket.adapter");
14
17
  const defaultLog = {
15
18
  adapter: "prusa-link"
16
19
  };
@@ -80,7 +83,7 @@ class PrusaLinkHttpPollingAdapter {
80
83
  this.stopPolling();
81
84
  return;
82
85
  }
83
- this.socketState = "opening";
86
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.opening);
84
87
  try {
85
88
  this.prusaLinkApi.login = {
86
89
  printerURL: this.login.printerURL,
@@ -89,14 +92,14 @@ class PrusaLinkHttpPollingAdapter {
89
92
  apiKey: "",
90
93
  printerType: _printerapiinterface.PrusaLinkType
91
94
  };
92
- this.socketState = "authenticating";
95
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.authenticating);
93
96
  const printerState = await this.prusaLinkApi.getPrinterState();
94
97
  if (printerState.state.flags?.link_state && printerState.state.flags?.link_state !== "PRINTING") {
95
98
  printerState.state.text = printerState.state.flags.link_state;
96
99
  }
97
100
  const jobState = await this.prusaLinkApi.getJobState();
98
- this.socketState = "authenticated";
99
- this.apiState = "responding";
101
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.authenticated);
102
+ this.updateApiState(_apistatetype.API_STATE.responding);
100
103
  await this.emitEvent("current", {
101
104
  ...printerState,
102
105
  job: jobState.job,
@@ -107,7 +110,7 @@ class PrusaLinkHttpPollingAdapter {
107
110
  }
108
111
  });
109
112
  } catch (error) {
110
- this.socketState = "error";
113
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.error);
111
114
  this.logger.error(`Failed to fetch PrusaLink status ${(0, _errorutils.errorSummary)(error)}`, this.logMeta());
112
115
  }
113
116
  }, 5000);
@@ -117,7 +120,7 @@ class PrusaLinkHttpPollingAdapter {
117
120
  this.logger.debug("Polling adapter stopping, clearing interval.", this.logMeta());
118
121
  clearInterval(this.refreshPrinterCurrentInterval);
119
122
  this.refreshPrinterCurrentInterval = undefined;
120
- this.socketState = "closed";
123
+ this.updateSocketState(_socketstatetype.SOCKET_STATE.closed);
121
124
  }
122
125
  }
123
126
  async emitEvent(event, payload) {
@@ -132,6 +135,25 @@ class PrusaLinkHttpPollingAdapter {
132
135
  printerType: _printerapiinterface.PrusaLinkType
133
136
  });
134
137
  }
138
+ emitEventSync(event, payload) {
139
+ if (!this.eventEmittingAllowed) {
140
+ return;
141
+ }
142
+ this.eventEmitter2.emit((0, _prusalinkconstants.prusaLinkEvent)(event), {
143
+ event,
144
+ payload,
145
+ printerId: this.printerId,
146
+ printerType: _printerapiinterface.PrusaLinkType
147
+ });
148
+ }
149
+ updateSocketState(state) {
150
+ this.socketState = state;
151
+ this.emitEventSync(_octoprintwebsocketadapter.WsMessage.WS_STATE_UPDATED, state);
152
+ }
153
+ updateApiState(state) {
154
+ this.apiState = state;
155
+ this.emitEventSync(_octoprintwebsocketadapter.WsMessage.API_STATE_UPDATED, state);
156
+ }
135
157
  logMeta() {
136
158
  return defaultLog;
137
159
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/prusa-link/prusa-link-http-polling.adapter.ts"],"names":["PrusaLinkHttpPollingAdapter","defaultLog","adapter","printerType","PrusaLinkType","printerId","login","socketState","apiState","lastMessageReceivedTimestamp","refreshPrinterCurrentInterval","eventEmittingAllowed","loggerFactory","prusaLinkApi","eventEmitter2","configService","logger","name","allowEmittingEvents","disallowEmittingEvents","needsReopen","needsSetup","needsReauth","Error","isClosedOrAborted","reauthSession","registerCredentials","socketLogin","loginDto","open","startPolling","close","debug","logMeta","stopPolling","setupSocketSession","warn","Promise","resolve","resetSocketState","setInterval","printerURL","username","password","apiKey","printerState","getPrinterState","state","flags","link_state","text","jobState","getJobState","emitEvent","job","progress","printTime","printTimeLeft","completion","error","errorSummary","clearInterval","undefined","event","payload","prusaLinkEvent","emitAsync"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/services/prusa-link/prusa-link-http-polling.adapter.ts"],"names":["PrusaLinkHttpPollingAdapter","defaultLog","adapter","printerType","PrusaLinkType","printerId","login","socketState","apiState","lastMessageReceivedTimestamp","refreshPrinterCurrentInterval","eventEmittingAllowed","loggerFactory","prusaLinkApi","eventEmitter2","configService","logger","name","allowEmittingEvents","disallowEmittingEvents","needsReopen","needsSetup","needsReauth","Error","isClosedOrAborted","reauthSession","registerCredentials","socketLogin","loginDto","open","startPolling","close","debug","logMeta","stopPolling","setupSocketSession","warn","Promise","resolve","resetSocketState","setInterval","updateSocketState","SOCKET_STATE","opening","printerURL","username","password","apiKey","authenticating","printerState","getPrinterState","state","flags","link_state","text","jobState","getJobState","authenticated","updateApiState","API_STATE","responding","emitEvent","job","progress","printTime","printTimeLeft","completion","error","errorSummary","clearInterval","undefined","closed","event","payload","prusaLinkEvent","emitAsync","emitEventSync","emit","WsMessage","WS_STATE_UPDATED","API_STATE_UPDATED"],"mappings":"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"}
@@ -17,6 +17,8 @@ const _errorutils = require("../utils/error.utils");
17
17
  const _node = require("@sentry/node");
18
18
  const _socketstatetype = require("../shared/dtos/socket-state.type");
19
19
  const _moonrakerconstants = require("../services/moonraker/constants/moonraker.constants");
20
+ const _bambumqttadapter = require("../services/bambu/bambu-mqtt.adapter");
21
+ const _prusalinkconstants = require("../services/prusa-link/constants/prusalink.constants");
20
22
  const _eventconstants = require("../constants/event.constants");
21
23
  class TestPrinterSocketStore {
22
24
  socketFactory;
@@ -58,7 +60,17 @@ class TestPrinterSocketStore {
58
60
  (0, _moonrakerconstants.moonrakerEvent)(_octoprintwebsocketadapter.WsMessage.API_STATE_UPDATED),
59
61
  (0, _moonrakerconstants.moonrakerEvent)(_octoprintwebsocketadapter.WsMessage.WS_CLOSED),
60
62
  (0, _moonrakerconstants.moonrakerEvent)(_octoprintwebsocketadapter.WsMessage.WS_OPENED),
61
- (0, _moonrakerconstants.moonrakerEvent)(_octoprintwebsocketadapter.WsMessage.WS_ERROR)
63
+ (0, _moonrakerconstants.moonrakerEvent)(_octoprintwebsocketadapter.WsMessage.WS_ERROR),
64
+ (0, _bambumqttadapter.bambuEvent)(_octoprintwebsocketadapter.WsMessage.WS_STATE_UPDATED),
65
+ (0, _bambumqttadapter.bambuEvent)(_octoprintwebsocketadapter.WsMessage.API_STATE_UPDATED),
66
+ (0, _bambumqttadapter.bambuEvent)(_octoprintwebsocketadapter.WsMessage.WS_CLOSED),
67
+ (0, _bambumqttadapter.bambuEvent)(_octoprintwebsocketadapter.WsMessage.WS_OPENED),
68
+ (0, _bambumqttadapter.bambuEvent)(_octoprintwebsocketadapter.WsMessage.WS_ERROR),
69
+ (0, _prusalinkconstants.prusaLinkEvent)(_octoprintwebsocketadapter.WsMessage.WS_STATE_UPDATED),
70
+ (0, _prusalinkconstants.prusaLinkEvent)(_octoprintwebsocketadapter.WsMessage.API_STATE_UPDATED),
71
+ (0, _prusalinkconstants.prusaLinkEvent)(_octoprintwebsocketadapter.WsMessage.WS_CLOSED),
72
+ (0, _prusalinkconstants.prusaLinkEvent)(_octoprintwebsocketadapter.WsMessage.WS_OPENED),
73
+ (0, _prusalinkconstants.prusaLinkEvent)(_octoprintwebsocketadapter.WsMessage.WS_ERROR)
62
74
  ];
63
75
  const listener = ({ event, payload, printerId })=>{
64
76
  if (printerId !== correlationToken) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/state/test-printer-socket.store.ts"],"names":["TestPrinterSocketStore","testSocket","logger","loggerFactory","socketFactory","socketIoGateway","eventEmitter2","name","setupTestPrinter","correlationToken","printer","close","validatedData","validateInput","createTestPrinterSchema","enabled","createInstance","printerType","registerCredentials","printerId","loginDto","apiKey","username","password","printerURL","testEvents","octoPrintEvent","WsMessage","WS_STATE_UPDATED","API_STATE_UPDATED","WS_CLOSED","WS_OPENED","WS_ERROR","moonrakerEvent","listener","event","payload","send","forEach","te","on","log","setupSocketSession","promise","Promise","resolve","reject","error","open","_startTime","setInterval","warn","Error","socketState","SOCKET_STATE","authenticated","race","setTimeout","AppConstants","defaultWebsocketHandshakeTimeout","e","errorSummary","captureException","disallowEmittingEvents","emit","printerEvents","printersDeleted","printerIds","off"],"mappings":";;;;+BAmBaA;;;eAAAA;;;0BAnB2B;4BACV;6CACU;2CACE;iCACb;4BAMA;sBACI;iCACJ;oCAEE;gCACD;AAIvB,MAAMA;;;;IACXC,WAA+B;IACdC,OAAsB;IAEvC,YACEC,aAA6B,EAC7B,AAAiBC,aAA4B,EAC7C,AAAiBC,eAAgC,EACjD,AAAiBC,aAA4B,CAC7C;aAHiBF,gBAAAA;aACAC,kBAAAA;aACAC,gBAAAA;QAEjB,IAAI,CAACJ,MAAM,GAAGC,cAAcH,uBAAuBO,IAAI;IACzD;IAEA,MAAMC,iBAAiBC,gBAAwB,EAAEC,OAAgD,EAAiB;QAChH,IAAI,IAAI,CAACT,UAAU,EAAE;YACnB,IAAI,CAACA,UAAU,CAACU,KAAK;YACrB,OAAO,IAAI,CAACV,UAAU;QACxB;QAEA,MAAMW,gBAAgB,MAAMC,IAAAA,yBAAa,EAACH,SAASI,oDAAuB;QAC1EF,cAAcG,OAAO,GAAG;QAGxB,IAAI,CAACd,UAAU,GAAG,IAAI,CAACG,aAAa,CAACY,cAAc,CAACN,QAAQO,WAAW;QAGvE,IAAI,CAAChB,UAAU,CAACiB,mBAAmB,CAAC;YAClCC,WAAWV;YACXW,UAAU;gBACRC,QAAQX,QAAQW,MAAM;gBACtBC,UAAUZ,QAAQY,QAAQ;gBAC1BC,UAAUb,QAAQa,QAAQ;gBAC1BC,YAAYd,QAAQc,UAAU;gBAC9BP,aAAaP,QAAQO,WAAW;YAClC;QACF;QAEA,MAAMQ,aAAa;YACjBC,IAAAA,yCAAc,EAACC,oCAAS,CAACC,gBAAgB;YACzCF,IAAAA,yCAAc,EAACC,oCAAS,CAACE,iBAAiB;YAC1CH,IAAAA,yCAAc,EAACC,oCAAS,CAACG,SAAS;YAClCJ,IAAAA,yCAAc,EAACC,oCAAS,CAACI,SAAS;YAClCL,IAAAA,yCAAc,EAACC,oCAAS,CAACK,QAAQ;YACjCC,IAAAA,kCAAc,EAACN,oCAAS,CAACC,gBAAgB;YACzCK,IAAAA,kCAAc,EAACN,oCAAS,CAACE,iBAAiB;YAC1CI,IAAAA,kCAAc,EAACN,oCAAS,CAACG,SAAS;YAClCG,IAAAA,kCAAc,EAACN,oCAAS,CAACI,SAAS;YAClCE,IAAAA,kCAAc,EAACN,oCAAS,CAACK,QAAQ;SAClC;QACD,MAAME,WAAW,CAAC,EAAEC,KAAK,EAAEC,OAAO,EAAEjB,SAAS,EAAqB;YAChE,IAAIA,cAAcV,kBAAkB;gBAClC;YACF;YACA,IAAI,CAACJ,eAAe,CAACgC,IAAI,CAAC,sBAAsB;gBAC9CF;gBACAC;gBACA3B;YACF;QACF;QACAgB,WAAWa,OAAO,CAAC,CAACC;YAClB,IAAI,CAACjC,aAAa,CAACkC,EAAE,CAACD,IAAIL;QAC5B;QAEA,IAAI;YACF,IAAI,CAAChC,MAAM,CAACuC,GAAG,CAAC;YAChB,MAAM,IAAI,CAACxC,UAAU,CAACyC,kBAAkB;YAExC,IAAI,CAACxC,MAAM,CAACuC,GAAG,CAAC;YAChB,MAAME,UAAU,IAAIC,QAAQ,OAAOC,SAASC;gBAC1C,IAAI,CAAC,IAAI,CAAC7C,UAAU,EAAE;oBACpB,IAAI,CAACC,MAAM,CAAC6C,KAAK,CAAC;oBAClB;gBACF;gBACA,IAAI,CAAC9C,UAAU,CAAC+C,IAAI;gBACpB,WAAW,MAAMC,cAAcC,IAAAA,qBAAW,EAAC,KAAM;oBAC/C,IAAI,CAAC,IAAI,CAACjD,UAAU,EAAE;wBACpB,IAAI,CAACC,MAAM,CAACiD,IAAI,CAAC;wBACjBL,OAAO,IAAIM,MAAM;wBACjB;oBACF;oBACA,IAAI,IAAI,CAACnD,UAAU,CAACoD,WAAW,KAAKC,6BAAY,CAACC,aAAa,EAAE;wBAC9D,IAAI,CAACrD,MAAM,CAACuC,GAAG,CAAC;wBAChBI,QAAQ;wBACR;oBACF;gBACF;YACF;YAEA,MAAMD,QAAQY,IAAI,CAAC;gBAACb;gBAASc,IAAAA,oBAAU,EAACC,6BAAY,CAACC,gCAAgC;aAAE;YAEvF,IAAI,CAACzD,MAAM,CAACuC,GAAG,CAAC;QAClB,EAAE,OAAOmB,GAAG;YACV,IAAI,CAAC1D,MAAM,CAAC6C,KAAK,CAAC,CAAC,mBAAmB,EAAEc,IAAAA,wBAAY,EAACD,IAAI;YACzDE,IAAAA,sBAAgB,EAACF;QACnB,SAAU;YAER,IAAI,CAAC3D,UAAU,CAAC8D,sBAAsB;YAEtC,IAAI,IAAI,CAAC9D,UAAU,EAAE;gBACnB,IAAI,CAACA,UAAU,CAACU,KAAK;YACvB;YACA,IAAI,CAACL,aAAa,CAAC0D,IAAI,CAACC,6BAAa,CAACC,eAAe,EAAE;gBACrDC,YAAY;oBAAC1D;iBAAiB;YAChC;YACA,OAAO,IAAI,CAACR,UAAU;YACtBwB,WAAWa,OAAO,CAAC,CAACC;gBAClB,IAAI,CAACjC,aAAa,CAAC8D,GAAG,CAAC7B,IAAIL;YAC7B;QACF;IACF;AACF"}
1
+ {"version":3,"sources":["../../src/state/test-printer-socket.store.ts"],"names":["TestPrinterSocketStore","testSocket","logger","loggerFactory","socketFactory","socketIoGateway","eventEmitter2","name","setupTestPrinter","correlationToken","printer","close","validatedData","validateInput","createTestPrinterSchema","enabled","createInstance","printerType","registerCredentials","printerId","loginDto","apiKey","username","password","printerURL","testEvents","octoPrintEvent","WsMessage","WS_STATE_UPDATED","API_STATE_UPDATED","WS_CLOSED","WS_OPENED","WS_ERROR","moonrakerEvent","bambuEvent","prusaLinkEvent","listener","event","payload","send","forEach","te","on","log","setupSocketSession","promise","Promise","resolve","reject","error","open","_startTime","setInterval","warn","Error","socketState","SOCKET_STATE","authenticated","race","setTimeout","AppConstants","defaultWebsocketHandshakeTimeout","e","errorSummary","captureException","disallowEmittingEvents","emit","printerEvents","printersDeleted","printerIds","off"],"mappings":"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"}
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  },
7
7
  "author": "David Zwart",
8
8
  "license": "AGPL-3.0-or-later",
9
- "version": "1.9.2",
9
+ "version": "1.9.4",
10
10
  "bin": {
11
11
  "fdm-monster": "dist/index.js",
12
12
  "fdmm": "dist/index.js"
@@ -63,8 +63,8 @@
63
63
  "tr46": "6.0.0"
64
64
  },
65
65
  "dependencies": {
66
- "@fdm-monster/client": "1.12.0",
67
- "@fdm-monster/client-next": "0.0.22",
66
+ "@fdm-monster/client": "1.12.3",
67
+ "@fdm-monster/client-next": "0.0.26",
68
68
  "@octokit/plugin-throttling": "8.2.0",
69
69
  "@sentry/node": "10.32.1",
70
70
  "adm-zip": "0.5.16",
@@ -99,7 +99,7 @@
99
99
  "prom-client": "15.1.3",
100
100
  "reflect-metadata": "0.2.2",
101
101
  "semver": "7.7.3",
102
- "socket.io": "4.8.1",
102
+ "socket.io": "4.8.3",
103
103
  "toad-scheduler": "3.1.0",
104
104
  "typeorm": "0.3.28",
105
105
  "uuid": "11.1.0",
@@ -133,15 +133,14 @@
133
133
  "@types/supertest": "6.0.3",
134
134
  "@types/uuid": "10.0.0",
135
135
  "@types/ws": "8.18.1",
136
- "aedes": "0.51.3",
137
136
  "chokidar": "5.0.0",
138
137
  "express-list-routes": "1.3.2",
139
138
  "ftp-srv": "4.6.3",
140
139
  "jest": "29.7.0",
141
140
  "jest-27-expect-message": "1.1.0",
142
- "mongodb-memory-server": "11.0.0",
141
+ "mongodb-memory-server": "11.0.1",
143
142
  "nock": "13.5.6",
144
- "selfsigned": "5.2.0",
143
+ "selfsigned": "5.4.0",
145
144
  "supertest": "7.1.4",
146
145
  "ts-node": "10.9.2",
147
146
  "typescript": "5.9.3"