@fdm-monster/server 2.0.7 → 2.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/.yarn/install-state.gz +0 -0
  2. package/RELEASE_NOTES.MD +23 -0
  3. package/dist/controllers/print-job.controller.js +12 -151
  4. package/dist/controllers/print-job.controller.js.map +1 -1
  5. package/dist/controllers/print-queue.controller.js +82 -17
  6. package/dist/controllers/print-queue.controller.js.map +1 -1
  7. package/dist/controllers/printer-files.controller.js +8 -2
  8. package/dist/controllers/printer-files.controller.js.map +1 -1
  9. package/dist/controllers/printer.controller.js +3 -3
  10. package/dist/controllers/printer.controller.js.map +1 -1
  11. package/dist/entities/print-job.entity.js.map +1 -1
  12. package/dist/server.constants.js +1 -1
  13. package/dist/services/bambu/bambu-ftp.adapter.js +3 -13
  14. package/dist/services/bambu/bambu-ftp.adapter.js.map +1 -1
  15. package/dist/services/bambu.api.js +7 -18
  16. package/dist/services/bambu.api.js.map +1 -1
  17. package/dist/services/file-storage.service.js +11 -2
  18. package/dist/services/file-storage.service.js.map +1 -1
  19. package/dist/services/moonraker/moonraker.client.js +5 -17
  20. package/dist/services/moonraker/moonraker.client.js.map +1 -1
  21. package/dist/services/moonraker.api.js +3 -2
  22. package/dist/services/moonraker.api.js.map +1 -1
  23. package/dist/services/octoprint/octoprint.client.js +5 -17
  24. package/dist/services/octoprint/octoprint.client.js.map +1 -1
  25. package/dist/services/octoprint.api.js +3 -2
  26. package/dist/services/octoprint.api.js.map +1 -1
  27. package/dist/services/orm/print-job.service.js +55 -47
  28. package/dist/services/orm/print-job.service.js.map +1 -1
  29. package/dist/services/print-queue.service.js +90 -30
  30. package/dist/services/print-queue.service.js.map +1 -1
  31. package/dist/services/printer-api.interface.js +13 -0
  32. package/dist/services/printer-api.interface.js.map +1 -1
  33. package/dist/services/prusa-link/prusa-link.api.js +12 -22
  34. package/dist/services/prusa-link/prusa-link.api.js.map +1 -1
  35. package/dist/tasks/print-job-analysis.task.js.map +1 -1
  36. package/dist/utils/bgcode/bgcode-thumbnail.parser.js +50 -0
  37. package/dist/utils/bgcode/bgcode-thumbnail.parser.js.map +1 -0
  38. package/dist/utils/bgcode/bgcode.constants.js +57 -0
  39. package/dist/utils/bgcode/bgcode.constants.js.map +1 -0
  40. package/dist/utils/bgcode/bgcode.types.js +132 -0
  41. package/dist/utils/bgcode/bgcode.types.js.map +1 -0
  42. package/dist/utils/bgcode/bgcode.utils.js +288 -0
  43. package/dist/utils/bgcode/bgcode.utils.js.map +1 -0
  44. package/dist/utils/bgcode/heatshrink-decoder.js +172 -0
  45. package/dist/utils/bgcode/heatshrink-decoder.js.map +1 -0
  46. package/dist/utils/bgcode/png-encoder.js +76 -0
  47. package/dist/utils/bgcode/png-encoder.js.map +1 -0
  48. package/dist/utils/bgcode/qoi-decoder.js +141 -0
  49. package/dist/utils/bgcode/qoi-decoder.js.map +1 -0
  50. package/dist/utils/image-dimensions.js +62 -0
  51. package/dist/utils/image-dimensions.js.map +1 -0
  52. package/dist/utils/job-stats.util.js +79 -0
  53. package/dist/utils/job-stats.util.js.map +1 -0
  54. package/dist/utils/parsers/3mf.parser.js +39 -9
  55. package/dist/utils/parsers/3mf.parser.js.map +1 -1
  56. package/dist/utils/parsers/bgcode.parser.js +125 -144
  57. package/dist/utils/parsers/bgcode.parser.js.map +1 -1
  58. package/dist/utils/parsers/gcode.parser.js +13 -2
  59. package/dist/utils/parsers/gcode.parser.js.map +1 -1
  60. package/dist/utils/parsers/parser.types.js +6 -0
  61. package/dist/utils/parsers/parser.types.js.map +1 -0
  62. package/dist/utils/thumbnail.util.js +24 -0
  63. package/dist/utils/thumbnail.util.js.map +1 -0
  64. package/package.json +5 -5
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "PrusaLinkApi", {
10
10
  });
11
11
  const _printerapiinterface = require("../printer-api.interface");
12
12
  const _prusalinkhttpclientbuilder = require("./utils/prusa-link-http-client.builder");
13
- const _fs = require("fs");
14
13
  const _eventconstants = require("../../constants/event.constants");
15
14
  const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
16
15
  const defaultLog = {
@@ -143,37 +142,28 @@ class PrusaLinkApi {
143
142
  Range: `bytes=${startBytes}-${endBytes}`
144
143
  })).get(pathUrl);
145
144
  }
146
- async uploadFile(multerFileOrBuffer, startPrint, progressToken) {
145
+ async uploadFile(input) {
146
+ const validated = _printerapiinterface.uploadFileInputSchema.parse(input);
147
147
  try {
148
- let fileBuffer;
149
- const filename = multerFileOrBuffer.originalname;
150
- if (Buffer.isBuffer(multerFileOrBuffer)) {
151
- this.logger.log("Using file directly from memory buffer for upload");
152
- fileBuffer = multerFileOrBuffer;
153
- } else {
154
- const filePath = multerFileOrBuffer.path;
155
- this.logger.log(`Reading file from disk for upload: ${filePath}`);
156
- fileBuffer = (0, _fs.readFileSync)(filePath);
157
- }
158
- const contentLength = fileBuffer.length;
159
148
  const response = await this.createClient((b)=>{
160
149
  b.withHeaders({
161
- "Content-Length": contentLength.toString(),
150
+ "Content-Type": "application/octet-stream",
151
+ "Content-Length": validated.contentLength.toString(),
162
152
  Overwrite: "?1",
163
- "Print-After-Upload": startPrint ? "?1" : "?0"
153
+ "Print-After-Upload": validated.startPrint ? "?1" : "?0"
164
154
  }).withTimeout(this.settingsStore.getTimeoutSettings().apiUploadTimeout).withOnUploadProgress((p)=>{
165
- if (progressToken) {
166
- this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(progressToken)}`, progressToken, p);
155
+ if (validated.uploadToken) {
156
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(validated.uploadToken)}`, validated.uploadToken, p);
167
157
  }
168
158
  });
169
- }).put(`/api/v1/files/usb/${encodeURIComponent(filename)}`, fileBuffer);
170
- if (progressToken) {
171
- this.eventEmitter2.emit(`${(0, _eventconstants.uploadDoneEvent)(progressToken)}`, progressToken);
159
+ }).put(`/api/v1/files/usb/${encodeURIComponent(validated.fileName)}`, validated.stream);
160
+ if (validated.uploadToken) {
161
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadDoneEvent)(validated.uploadToken)}`, validated.uploadToken);
172
162
  }
173
163
  return response.data;
174
164
  } catch (e) {
175
- if (progressToken) {
176
- this.eventEmitter2.emit(`${(0, _eventconstants.uploadFailedEvent)(progressToken)}`, progressToken, e?.message);
165
+ if (validated.uploadToken) {
166
+ this.eventEmitter2.emit(`${(0, _eventconstants.uploadFailedEvent)(validated.uploadToken)}`, validated.uploadToken, e?.message);
177
167
  }
178
168
  let data;
179
169
  try {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/services/prusa-link/prusa-link.api.ts"],"names":["PrusaLinkApi","defaultLog","adapter","logger","authHeader","loggerFactory","eventEmitter2","httpClientFactory","settingsStore","printerLogin","name","debug","logMeta","type","PrusaLinkType","login","client","createClient","getVersion","response","get","data","server","validateConnection","getFiles","files","filter","dir","path","children","map","f","display","date","size","getFile","getFileRaw","getStatus","getPrinterState","getJobState","connect","Error","disconnect","restartServer","restartHost","restartPrinterFirmware","startPrint","post","pausePrint","jobId","getCurrentJobId","warn","put","resumePrint","cancelPrint","delete","quickStop","sendGcode","script","movePrintHead","amounts","homeAxes","axes","downloadFile","fileReference","pathUrl","refs","download","responseType","getFileChunk","startBytes","endBytes","o","withHeaders","Range","uploadFile","multerFileOrBuffer","progressToken","fileBuffer","filename","originalname","Buffer","isBuffer","log","filePath","readFileSync","contentLength","length","b","toString","Overwrite","withTimeout","getTimeoutSettings","apiUploadTimeout","withOnUploadProgress","p","emit","uploadProgressEvent","encodeURIComponent","uploadDoneEvent","e","uploadFailedEvent","message","JSON","parse","body","ExternalServiceError","error","statusCode","success","stack","deleteFile","deleteFolder","getSettings","getReprintState","status","job","id","buildFluentOptions","builder","PrusaLinkHttpClientBuilder","createClientWithBaseUrl","printerURL","withDigestAuth","username","password","attemptCount","config","method","toUpperCase","url","withAuthHeader"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/services/prusa-link/prusa-link.api.ts"],"names":["PrusaLinkApi","defaultLog","adapter","logger","authHeader","loggerFactory","eventEmitter2","httpClientFactory","settingsStore","printerLogin","name","debug","logMeta","type","PrusaLinkType","login","client","createClient","getVersion","response","get","data","server","validateConnection","getFiles","files","filter","dir","path","children","map","f","display","date","size","getFile","getFileRaw","getStatus","getPrinterState","getJobState","connect","Error","disconnect","restartServer","restartHost","restartPrinterFirmware","startPrint","post","pausePrint","jobId","getCurrentJobId","warn","put","resumePrint","cancelPrint","delete","quickStop","sendGcode","script","movePrintHead","amounts","homeAxes","axes","downloadFile","fileReference","pathUrl","refs","download","responseType","getFileChunk","startBytes","endBytes","o","withHeaders","Range","uploadFile","input","validated","uploadFileInputSchema","parse","b","contentLength","toString","Overwrite","withTimeout","getTimeoutSettings","apiUploadTimeout","withOnUploadProgress","p","uploadToken","emit","uploadProgressEvent","encodeURIComponent","fileName","stream","uploadDoneEvent","e","uploadFailedEvent","message","JSON","body","ExternalServiceError","error","statusCode","success","stack","deleteFile","deleteFolder","getSettings","getReprintState","status","job","id","buildFluentOptions","builder","PrusaLinkHttpClientBuilder","createClientWithBaseUrl","printerURL","withDigestAuth","username","password","attemptCount","log","config","method","toUpperCase","url","withAuthHeader"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/tasks/print-job-analysis.task.ts"],"names":["PrintJobAnalysisTask","logger","printJobRepository","loggerFactory","printJobService","fileAnalysisService","fileStorageService","typeormService","name","getDataSource","getRepository","PrintJob","run","pendingJobs","find","where","analysisState","status","take","length","log","job","analyzeJob","error","id","fileName","statusReason","Error","message","save","fileStorageId","cachedMetadata","loadMetadata","metadata","thumbnails","filePath","resolveFilePath","exists","needsAnalysis","analysisResult","analyzeFile","thumbnailMetadata","saveThumbnails","fileHash","undefined","saveMetadata","handleFileAnalyzed","fileExists","warn","getFilePath","debug"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/tasks/print-job-analysis.task.ts"],"names":["PrintJobAnalysisTask","logger","printJobRepository","loggerFactory","printJobService","fileAnalysisService","fileStorageService","typeormService","name","getDataSource","getRepository","PrintJob","run","pendingJobs","find","where","analysisState","status","take","length","log","job","analyzeJob","error","id","fileName","statusReason","Error","message","save","fileStorageId","cachedMetadata","loadMetadata","metadata","thumbnails","filePath","resolveFilePath","exists","needsAnalysis","analysisResult","analyzeFile","thumbnailMetadata","saveThumbnails","fileHash","undefined","saveMetadata","handleFileAnalyzed","fileExists","warn","getFilePath","debug"],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get convertQoiToPng () {
13
+ return convertQoiToPng;
14
+ },
15
+ get processThumbnail () {
16
+ return processThumbnail;
17
+ }
18
+ });
19
+ const _bgcodetypes = require("./bgcode.types");
20
+ const _qoidecoder = require("./qoi-decoder");
21
+ const _pngencoder = require("./png-encoder");
22
+ function convertQoiToPng(qoiBuffer) {
23
+ const decoded = (0, _qoidecoder.decodeQOI)(qoiBuffer);
24
+ return (0, _pngencoder.encodePNG)(decoded.width, decoded.height, decoded.data);
25
+ }
26
+ function processThumbnail(data, parameters) {
27
+ switch(parameters.format){
28
+ case _bgcodetypes.BgCodeThumbnailFormats.PNG:
29
+ return {
30
+ extension: _bgcodetypes.BgCodeThumbnailFormatExtension[_bgcodetypes.BgCodeThumbnailFormats.PNG],
31
+ data: data
32
+ };
33
+ case _bgcodetypes.BgCodeThumbnailFormats.JPG:
34
+ return {
35
+ extension: _bgcodetypes.BgCodeThumbnailFormatExtension[_bgcodetypes.BgCodeThumbnailFormats.JPG],
36
+ data: data
37
+ };
38
+ case _bgcodetypes.BgCodeThumbnailFormats.QOI:
39
+ const pngData = convertQoiToPng(data);
40
+ return {
41
+ extension: _bgcodetypes.BgCodeThumbnailFormatExtension[_bgcodetypes.BgCodeThumbnailFormats.PNG],
42
+ data: pngData,
43
+ converted: true
44
+ };
45
+ default:
46
+ throw new Error(`Unsupported thumbnail format: ${parameters.format}`);
47
+ }
48
+ }
49
+
50
+ //# sourceMappingURL=bgcode-thumbnail.parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/bgcode/bgcode-thumbnail.parser.ts"],"names":["convertQoiToPng","processThumbnail","qoiBuffer","decoded","decodeQOI","encodePNG","width","height","data","parameters","format","BgCodeThumbnailFormats","PNG","extension","BgCodeThumbnailFormatExtension","JPG","QOI","pngData","converted","Error"],"mappings":";;;;;;;;;;;QAcgBA;eAAAA;;QAKAC;eAAAA;;;6BAfT;4BACmB;4BACA;AAQnB,SAASD,gBAAgBE,SAAiB;IAC/C,MAAMC,UAAUC,IAAAA,qBAAS,EAACF;IAC1B,OAAOG,IAAAA,qBAAS,EAACF,QAAQG,KAAK,EAAEH,QAAQI,MAAM,EAAEJ,QAAQK,IAAI;AAC9D;AAEO,SAASP,iBAAiBO,IAAY,EAAEC,UAAqC;IAClF,OAAQA,WAAWC,MAAM;QACvB,KAAKC,mCAAsB,CAACC,GAAG;YAC7B,OAAO;gBACLC,WAAWC,2CAA8B,CAACH,mCAAsB,CAACC,GAAG,CAAC;gBACrEJ,MAAMA;YACR;QAEF,KAAKG,mCAAsB,CAACI,GAAG;YAC7B,OAAO;gBACLF,WAAWC,2CAA8B,CAACH,mCAAsB,CAACI,GAAG,CAAC;gBACrEP,MAAMA;YACR;QAEF,KAAKG,mCAAsB,CAACK,GAAG;YAC7B,MAAMC,UAAUjB,gBAAgBQ;YAChC,OAAO;gBACLK,WAAWC,2CAA8B,CAACH,mCAAsB,CAACC,GAAG,CAAC;gBACrEJ,MAAMS;gBACNC,WAAW;YACb;QAEF;YACE,MAAM,IAAIC,MAAM,CAAC,8BAA8B,EAAEV,WAAWC,MAAM,EAAE;IACxE;AACF"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get BGCODE_EXPECTED_HEADERS () {
13
+ return BGCODE_EXPECTED_HEADERS;
14
+ },
15
+ get BGCODE_HEADER_MARKER () {
16
+ return BGCODE_HEADER_MARKER;
17
+ },
18
+ get BGCODE_HEADER_SIZE () {
19
+ return BGCODE_HEADER_SIZE;
20
+ },
21
+ get BGCODE_MAX_BLOCK_HEADER_SIZE () {
22
+ return BGCODE_MAX_BLOCK_HEADER_SIZE;
23
+ },
24
+ get BGCODE_MAX_BLOCK_TYPE () {
25
+ return BGCODE_MAX_BLOCK_TYPE;
26
+ },
27
+ get BGCODE_MAX_CHECKSUM_TYPE () {
28
+ return BGCODE_MAX_CHECKSUM_TYPE;
29
+ },
30
+ get BGCODE_MAX_COMPRESSION () {
31
+ return BGCODE_MAX_COMPRESSION;
32
+ },
33
+ get BGCODE_MIN_BLOCK_HEADER_SIZE () {
34
+ return BGCODE_MIN_BLOCK_HEADER_SIZE;
35
+ },
36
+ get BGCODE_PARAMETER_THUMBNAIL_MAX_FORMAT () {
37
+ return BGCODE_PARAMETER_THUMBNAIL_MAX_FORMAT;
38
+ }
39
+ });
40
+ const BGCODE_HEADER_SIZE = 10;
41
+ const BGCODE_MIN_BLOCK_HEADER_SIZE = 8;
42
+ const BGCODE_MAX_BLOCK_HEADER_SIZE = 12;
43
+ const BGCODE_HEADER_MARKER = "GCDE";
44
+ const BGCODE_MAX_BLOCK_TYPE = 5;
45
+ const BGCODE_MAX_COMPRESSION = 3;
46
+ const BGCODE_EXPECTED_HEADERS = [
47
+ 0,
48
+ 3,
49
+ 5,
50
+ 4,
51
+ 2,
52
+ 1
53
+ ];
54
+ const BGCODE_MAX_CHECKSUM_TYPE = 1;
55
+ const BGCODE_PARAMETER_THUMBNAIL_MAX_FORMAT = 2;
56
+
57
+ //# sourceMappingURL=bgcode.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/bgcode/bgcode.constants.ts"],"names":["BGCODE_EXPECTED_HEADERS","BGCODE_HEADER_MARKER","BGCODE_HEADER_SIZE","BGCODE_MAX_BLOCK_HEADER_SIZE","BGCODE_MAX_BLOCK_TYPE","BGCODE_MAX_CHECKSUM_TYPE","BGCODE_MAX_COMPRESSION","BGCODE_MIN_BLOCK_HEADER_SIZE","BGCODE_PARAMETER_THUMBNAIL_MAX_FORMAT"],"mappings":";;;;;;;;;;;QA4BaA;eAAAA;;QAvBAC;eAAAA;;QALAC;eAAAA;;QAIAC;eAAAA;;QASAC;eAAAA;;QAiBAC;eAAAA;;QAXAC;eAAAA;;QAhBAC;eAAAA;;QA6BAC;eAAAA;;;AAhCN,MAAMN,qBAAqB;AAG3B,MAAMK,+BAA+B;AACrC,MAAMJ,+BAA+B;AACrC,MAAMF,uBAAuB;AAQ7B,MAAMG,wBAAwB;AAM9B,MAAME,yBAAyB;AAS/B,MAAMN,0BAA0B;IAAC;IAAG;IAAG;IAAG;IAAG;IAAG;CAAE;AAElD,MAAMK,2BAA2B;AAEjC,MAAMG,wCAAwC"}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get BgCodeBlockParameterSizes () {
13
+ return BgCodeBlockParameterSizes;
14
+ },
15
+ get BgCodeBlockTypeName () {
16
+ return BgCodeBlockTypeName;
17
+ },
18
+ get BgCodeBlockTypes () {
19
+ return BgCodeBlockTypes;
20
+ },
21
+ get BgCodeChecksumTypeSize () {
22
+ return BgCodeChecksumTypeSize;
23
+ },
24
+ get BgCodeChecksumTypes () {
25
+ return BgCodeChecksumTypes;
26
+ },
27
+ get BgCodeCompression () {
28
+ return BgCodeCompression;
29
+ },
30
+ get BgCodeCompressionInfo () {
31
+ return BgCodeCompressionInfo;
32
+ },
33
+ get BgCodeCompressionName () {
34
+ return BgCodeCompressionName;
35
+ },
36
+ get BgCodeThumbnailFormatExtension () {
37
+ return BgCodeThumbnailFormatExtension;
38
+ },
39
+ get BgCodeThumbnailFormatName () {
40
+ return BgCodeThumbnailFormatName;
41
+ },
42
+ get BgCodeThumbnailFormats () {
43
+ return BgCodeThumbnailFormats;
44
+ },
45
+ get GcodeEncodingTypes () {
46
+ return GcodeEncodingTypes;
47
+ }
48
+ });
49
+ const BgCodeBlockTypes = {
50
+ FileMetadata: 0,
51
+ PrinterMetadata: 3,
52
+ Thumbnail: 5,
53
+ PrintMetadata: 4,
54
+ SlicerMetadata: 2,
55
+ GCode: 1
56
+ };
57
+ const BgCodeBlockTypeName = {
58
+ [BgCodeBlockTypes.FileMetadata]: "FileMetadata",
59
+ [BgCodeBlockTypes.GCode]: "GCode",
60
+ [BgCodeBlockTypes.SlicerMetadata]: "SlicerMetadata",
61
+ [BgCodeBlockTypes.PrinterMetadata]: "PrinterMetadata",
62
+ [BgCodeBlockTypes.PrintMetadata]: "PrintMetadata",
63
+ [BgCodeBlockTypes.Thumbnail]: "Thumbnail"
64
+ };
65
+ const BgCodeBlockParameterSizes = {
66
+ [BgCodeBlockTypes.FileMetadata]: 2,
67
+ [BgCodeBlockTypes.GCode]: 2,
68
+ [BgCodeBlockTypes.SlicerMetadata]: 2,
69
+ [BgCodeBlockTypes.PrinterMetadata]: 2,
70
+ [BgCodeBlockTypes.PrintMetadata]: 2,
71
+ [BgCodeBlockTypes.Thumbnail]: 6
72
+ };
73
+ const BgCodeCompression = {
74
+ None: 0,
75
+ Deflate: 1,
76
+ Heatshrink_11_4: 2,
77
+ Heatshrink_12_4: 3
78
+ };
79
+ const BgCodeCompressionInfo = {
80
+ 0: {
81
+ kind: "none"
82
+ },
83
+ 1: {
84
+ kind: "deflate"
85
+ },
86
+ 2: {
87
+ kind: "heatshrink",
88
+ window: 11,
89
+ lookahead: 4
90
+ },
91
+ 3: {
92
+ kind: "heatshrink",
93
+ window: 12,
94
+ lookahead: 4
95
+ }
96
+ };
97
+ const BgCodeCompressionName = {
98
+ 0: "None",
99
+ 1: "Deflate",
100
+ 2: "Heatshrink(11,4)",
101
+ 3: "Heatshrink(12,4)"
102
+ };
103
+ const BgCodeChecksumTypes = {
104
+ None: 0,
105
+ Crc32: 1
106
+ };
107
+ const BgCodeChecksumTypeSize = {
108
+ [BgCodeChecksumTypes.None]: 0,
109
+ [BgCodeChecksumTypes.Crc32]: 4
110
+ };
111
+ const BgCodeThumbnailFormats = {
112
+ PNG: 0,
113
+ JPG: 1,
114
+ QOI: 2
115
+ };
116
+ const BgCodeThumbnailFormatName = {
117
+ [BgCodeThumbnailFormats.PNG]: "PNG",
118
+ [BgCodeThumbnailFormats.JPG]: "JPG",
119
+ [BgCodeThumbnailFormats.QOI]: "QOI"
120
+ };
121
+ const BgCodeThumbnailFormatExtension = {
122
+ [BgCodeThumbnailFormats.PNG]: "png",
123
+ [BgCodeThumbnailFormats.JPG]: "jpg",
124
+ [BgCodeThumbnailFormats.QOI]: "qoi"
125
+ };
126
+ const GcodeEncodingTypes = {
127
+ None: 0,
128
+ MeatPack: 1,
129
+ MeatPackKeepingComments: 2
130
+ };
131
+
132
+ //# sourceMappingURL=bgcode.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/bgcode/bgcode.types.ts"],"names":["BgCodeBlockParameterSizes","BgCodeBlockTypeName","BgCodeBlockTypes","BgCodeChecksumTypeSize","BgCodeChecksumTypes","BgCodeCompression","BgCodeCompressionInfo","BgCodeCompressionName","BgCodeThumbnailFormatExtension","BgCodeThumbnailFormatName","BgCodeThumbnailFormats","GcodeEncodingTypes","FileMetadata","PrinterMetadata","Thumbnail","PrintMetadata","SlicerMetadata","GCode","None","Deflate","Heatshrink_11_4","Heatshrink_12_4","kind","window","lookahead","Crc32","PNG","JPG","QOI","MeatPack","MeatPackKeepingComments"],"mappings":";;;;;;;;;;;QAsCaA;eAAAA;;QATAC;eAAAA;;QAXAC;eAAAA;;QAmEAC;eAAAA;;QAPAC;eAAAA;;QA7BAC;eAAAA;;QAUAC;eAAAA;;QAYAC;eAAAA;;QAiCAC;eAAAA;;QANAC;eAAAA;;QARAC;eAAAA;;QAkCAC;eAAAA;;;AA1GN,MAAMT,mBAAmB;IAC9BU,cAAc;IACdC,iBAAiB;IACjBC,WAAW;IACXC,eAAe;IACfC,gBAAgB;IAChBC,OAAO;AACT;AAIO,MAAMhB,sBAAuD;IAClE,CAACC,iBAAiBU,YAAY,CAAC,EAAE;IACjC,CAACV,iBAAiBe,KAAK,CAAC,EAAE;IAC1B,CAACf,iBAAiBc,cAAc,CAAC,EAAE;IACnC,CAACd,iBAAiBW,eAAe,CAAC,EAAE;IACpC,CAACX,iBAAiBa,aAAa,CAAC,EAAE;IAClC,CAACb,iBAAiBY,SAAS,CAAC,EAAE;AAChC;AAEO,MAAMd,4BAA4B;IACvC,CAACE,iBAAiBU,YAAY,CAAC,EAAE;IACjC,CAACV,iBAAiBe,KAAK,CAAC,EAAE;IAC1B,CAACf,iBAAiBc,cAAc,CAAC,EAAE;IACnC,CAACd,iBAAiBW,eAAe,CAAC,EAAE;IACpC,CAACX,iBAAiBa,aAAa,CAAC,EAAE;IAClC,CAACb,iBAAiBY,SAAS,CAAC,EAAE;AAChC;AAIO,MAAMT,oBAAoB;IAC/Ba,MAAM;IACNC,SAAS;IACTC,iBAAiB;IACjBC,iBAAiB;AACnB;AAKO,MAAMf,wBAKT;IACF,GAAG;QAAEgB,MAAM;IAAO;IAClB,GAAG;QAAEA,MAAM;IAAU;IACrB,GAAG;QAAEA,MAAM;QAAcC,QAAQ;QAAIC,WAAW;IAAE;IAClD,GAAG;QAAEF,MAAM;QAAcC,QAAQ;QAAIC,WAAW;IAAE;AACpD;AAEO,MAAMjB,wBAA2D;IACtE,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;AACL;AAEO,MAAMH,sBAAsB;IACjCc,MAAM;IACNO,OAAO;AACT;AAIO,MAAMtB,yBAA6D;IACxE,CAACC,oBAAoBc,IAAI,CAAC,EAAE;IAC5B,CAACd,oBAAoBqB,KAAK,CAAC,EAAE;AAC/B;AAEO,MAAMf,yBAAyB;IACpCgB,KAAK;IACLC,KAAK;IACLC,KAAK;AACP;AAIO,MAAMnB,4BAAmE;IAC9E,CAACC,uBAAuBgB,GAAG,CAAC,EAAE;IAC9B,CAAChB,uBAAuBiB,GAAG,CAAC,EAAE;IAC9B,CAACjB,uBAAuBkB,GAAG,CAAC,EAAE;AAChC;AAEO,MAAMpB,iCAAwE;IACnF,CAACE,uBAAuBgB,GAAG,CAAC,EAAE;IAC9B,CAAChB,uBAAuBiB,GAAG,CAAC,EAAE;IAC9B,CAACjB,uBAAuBkB,GAAG,CAAC,EAAE;AAChC;AAgBO,MAAMjB,qBAAqB;IAChCO,MAAM;IACNW,UAAU;IACVC,yBAAyB;AAC3B"}