@fdm-monster/server 1.8.1 → 1.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/{yarn-4.5.3.cjs → yarn-4.7.0.cjs} +256 -255
- package/.yarnrc.yml +1 -1
- package/README.md +14 -4
- package/RELEASE_NOTES.MD +35 -4
- package/dist/consoles/http-file-receiver.console.js +81 -0
- package/dist/consoles/http-file-receiver.console.js.map +1 -0
- package/dist/constants/event.constants.js +8 -0
- package/dist/constants/event.constants.js.map +1 -1
- package/dist/container.js +2 -14
- package/dist/container.js.map +1 -1
- package/dist/container.tokens.js +1 -3
- package/dist/container.tokens.js.map +1 -1
- package/dist/controllers/plugin-firmware-update.controller.js +4 -6
- package/dist/controllers/plugin-firmware-update.controller.js.map +1 -1
- package/dist/controllers/printer-files.controller.js +19 -22
- package/dist/controllers/printer-files.controller.js.map +1 -1
- package/dist/controllers/printer-settings.controller.js +3 -3
- package/dist/controllers/printer-settings.controller.js.map +1 -1
- package/dist/controllers/printer.controller.js +14 -8
- package/dist/controllers/printer.controller.js.map +1 -1
- package/dist/controllers/server-private.controller.js +2 -16
- package/dist/controllers/server-private.controller.js.map +1 -1
- package/dist/controllers/server-public.controller.js +0 -2
- package/dist/controllers/server-public.controller.js.map +1 -1
- package/dist/handlers/validators.js +9 -6
- package/dist/handlers/validators.js.map +1 -1
- package/dist/server.constants.js +1 -2
- package/dist/server.constants.js.map +1 -1
- package/dist/server.env.js +3 -25
- package/dist/server.env.js.map +1 -1
- package/dist/server.host.js +3 -1
- package/dist/server.host.js.map +1 -1
- package/dist/services/core/http-client.factory.js +40 -0
- package/dist/services/core/http-client.factory.js.map +1 -0
- package/dist/services/core/logs-manager.service.js +4 -3
- package/dist/services/core/logs-manager.service.js.map +1 -1
- package/dist/services/core/multer.service.js +72 -22
- package/dist/services/core/multer.service.js.map +1 -1
- package/dist/services/interfaces/file-upload-tracker.interface.js +6 -0
- package/dist/services/interfaces/file-upload-tracker.interface.js.map +1 -0
- package/dist/services/interfaces/printer.dto.js +6 -0
- package/dist/services/interfaces/printer.dto.js.map +1 -1
- package/dist/services/mongoose/printer.service.js +10 -3
- package/dist/services/mongoose/printer.service.js.map +1 -1
- package/dist/services/moonraker/moonraker-websocket.adapter.js +6 -2
- package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
- package/dist/services/moonraker/moonraker.client.js +196 -156
- package/dist/services/moonraker/moonraker.client.js.map +1 -1
- package/dist/services/octoprint/dto/plugin.dto.js +6 -0
- package/dist/services/octoprint/dto/plugin.dto.js.map +1 -0
- package/dist/services/octoprint/octoprint-api.routes.js +0 -61
- package/dist/services/octoprint/octoprint-api.routes.js.map +1 -1
- package/dist/services/octoprint/octoprint-websocket.adapter.js +11 -5
- package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
- package/dist/services/octoprint/octoprint.client.js +118 -201
- package/dist/services/octoprint/octoprint.client.js.map +1 -1
- package/dist/services/octoprint/plugin-base.service.js +15 -15
- package/dist/services/octoprint/plugin-base.service.js.map +1 -1
- package/dist/services/octoprint/plugin-firmware-update.service.js +1 -1
- package/dist/services/octoprint/plugin-firmware-update.service.js.map +1 -1
- package/dist/services/octoprint/plugin-repository.cache.js +2 -1
- package/dist/services/octoprint/plugin-repository.cache.js.map +1 -1
- package/dist/services/octoprint/utils/octoprint-http-client.builder.js +31 -0
- package/dist/services/octoprint/utils/octoprint-http-client.builder.js.map +1 -0
- package/dist/services/octoprint.api.js +6 -4
- package/dist/services/octoprint.api.js.map +1 -1
- package/dist/services/orm/printer.service.js +8 -3
- package/dist/services/orm/printer.service.js.map +1 -1
- package/dist/shared/default-http-client.builder.js +94 -0
- package/dist/shared/default-http-client.builder.js.map +1 -0
- package/dist/shared/websocket.adapter.js.map +1 -1
- package/dist/state/file-upload-tracker.cache.js +30 -40
- package/dist/state/file-upload-tracker.cache.js.map +1 -1
- package/dist/state/settings.store.js +4 -1
- package/dist/state/settings.store.js.map +1 -1
- package/dist/state/test-printer-socket.store.js.map +1 -1
- package/dist/state/validation/create-test-printer.validation.js +1 -0
- package/dist/state/validation/create-test-printer.validation.js.map +1 -1
- package/dist/tasks/boot.task.js +1 -2
- package/dist/tasks/boot.task.js.map +1 -1
- package/dist/tasks/printer-websocket-restore.task.js +1 -1
- package/dist/tasks/printer-websocket-restore.task.js.map +1 -1
- package/dist/tasks/socketio.task.js +2 -2
- package/dist/tasks/socketio.task.js.map +1 -1
- package/dist/tasks.js.map +1 -1
- package/dist/utils/env.utils.js +0 -42
- package/dist/utils/env.utils.js.map +1 -1
- package/dist/utils/normalize-url.js +3 -1
- package/dist/utils/normalize-url.js.map +1 -1
- package/dist/utils/pretty-print.utils.js +1 -1
- package/dist/utils/pretty-print.utils.js.map +1 -1
- package/dist/utils/url.utils.js +12 -14
- package/dist/utils/url.utils.js.map +1 -1
- package/package.json +40 -55
- package/dist/services/core/server-update.service.js +0 -71
- package/dist/services/core/server-update.service.js.map +0 -1
- package/requests/moonraker/api_job.http +0 -5
- package/requests/moonraker/api_printer.http +0 -5
- package/requests/moonraker/api_settings.http +0 -5
- package/requests/moonraker/printer_info.http +0 -5
- package/requests/moonraker/printer_objects_list.http +0 -6
- package/requests/moonraker/printer_objects_pause_resume.http +0 -6
- package/requests/moonraker/printer_objects_print_stats.http +0 -6
- package/requests/moonraker/printer_objects_webhooks.http +0 -6
- package/requests/moonraker/server_info.http +0 -5
- package/requests/octoprint/octoprint-api-printer-current.http +0 -7
- package/requests/octoprint/octoprint-pluginmanager-plugins.http +0 -7
- package/requests/printer-file/get-partial-file-moonraker.http +0 -5
- package/requests/printer-file/get-thumbnails.http +0 -5
- package/requests/printer-file/reload-printer-thumbnails.http +0 -10
- package/requests/printer-file/testfile.gcode +0 -5665
- package/requests/printer-file/upload-file.http +0 -11
- package/requests/printer-file/upload-slicer-file.http +0 -11
- package/requests/printers/list.http +0 -5
|
@@ -15,9 +15,9 @@ const _octoprintserviceconstants = require("./constants/octoprint-service.consta
|
|
|
15
15
|
const _eventconstants = require("../../constants/event.constants");
|
|
16
16
|
const _runtimeexceptions = require("../../exceptions/runtime.exceptions");
|
|
17
17
|
const _octoprintapiroutes = require("./octoprint-api.routes");
|
|
18
|
-
const _axios = /*#__PURE__*/ _interop_require_default(require("axios"));
|
|
19
18
|
const _fileutils = require("./utils/file.utils");
|
|
20
19
|
const _node = require("@sentry/node");
|
|
20
|
+
const _octoprinthttpclientbuilder = require("./utils/octoprint-http-client.builder");
|
|
21
21
|
function _interop_require_default(obj) {
|
|
22
22
|
return obj && obj.__esModule ? obj : {
|
|
23
23
|
default: obj
|
|
@@ -66,31 +66,25 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
66
66
|
}
|
|
67
67
|
class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
68
68
|
eventEmitter2;
|
|
69
|
-
|
|
69
|
+
httpClientFactory;
|
|
70
70
|
logger;
|
|
71
|
-
constructor({
|
|
72
|
-
super(
|
|
73
|
-
|
|
74
|
-
});
|
|
75
|
-
this.httpClient = httpClient;
|
|
71
|
+
constructor({ httpClientFactory, loggerFactory, eventEmitter2 }){
|
|
72
|
+
super();
|
|
73
|
+
this.httpClientFactory = httpClientFactory;
|
|
76
74
|
this.eventEmitter2 = eventEmitter2;
|
|
77
75
|
this.logger = loggerFactory(OctoprintClient.name);
|
|
78
76
|
}
|
|
79
|
-
async getApiVersion(login
|
|
80
|
-
|
|
81
|
-
return await this.httpClient.get(url, options);
|
|
77
|
+
async getApiVersion(login) {
|
|
78
|
+
return await this.createClient(login).get(this.apiVersion);
|
|
82
79
|
}
|
|
83
80
|
async getServer(login) {
|
|
84
|
-
|
|
85
|
-
return await this.httpClient.get(url, options);
|
|
81
|
+
return await this.createClient(login).get(this.apiServer);
|
|
86
82
|
}
|
|
87
83
|
async login(login) {
|
|
88
|
-
|
|
89
|
-
return await this.httpClient.post(url, {}, options);
|
|
84
|
+
return await this.createClient(login).post(this.apiLogin);
|
|
90
85
|
}
|
|
91
86
|
async sendConnectionCommand(login, commandData) {
|
|
92
|
-
|
|
93
|
-
await this.httpClient.post(url, data, options);
|
|
87
|
+
await this.createClient(login).post(this.apiConnection, commandData);
|
|
94
88
|
}
|
|
95
89
|
async sendPrintHeadJogCommand(login, amounts) {
|
|
96
90
|
const axesToHome = {
|
|
@@ -123,80 +117,57 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
123
117
|
return this.sendPrintHeadCommand(login, commandData);
|
|
124
118
|
}
|
|
125
119
|
async sendPrintHeadCommand(login, commandData) {
|
|
126
|
-
|
|
127
|
-
const response = await this.httpClient.post(url, data, options);
|
|
128
|
-
return response?.data;
|
|
120
|
+
await this.createClient(login).post(this.apiPrinterHead, commandData);
|
|
129
121
|
}
|
|
130
122
|
async sendCustomGCodeCommand(login, commandString) {
|
|
131
|
-
|
|
123
|
+
await this.createClient(login).post(this.apiPrinterCustomCommand, {
|
|
132
124
|
command: commandString
|
|
133
125
|
});
|
|
134
|
-
const response = await this.httpClient.post(url, data, options);
|
|
135
|
-
return response?.data;
|
|
136
126
|
}
|
|
137
127
|
async getJob(login) {
|
|
138
|
-
|
|
139
|
-
const response = await this.httpClient.get(url, options);
|
|
140
|
-
return response?.data;
|
|
128
|
+
return await this.createClient(login).get(this.apiJob);
|
|
141
129
|
}
|
|
142
130
|
async sendJobCommand(login, commandData) {
|
|
143
|
-
|
|
144
|
-
const response = await this.httpClient.post(url, data, options);
|
|
145
|
-
return response?.data;
|
|
131
|
+
return await this.createClient(login).post(this.apiJob, commandData);
|
|
146
132
|
}
|
|
147
133
|
async sendBedTempCommand(login, targetTemp) {
|
|
148
|
-
const
|
|
149
|
-
|
|
150
|
-
return response?.data;
|
|
134
|
+
const data = this.getBedTargetCommand(targetTemp);
|
|
135
|
+
return await this.createClient(login).post(this.apiPrinterBed, data);
|
|
151
136
|
}
|
|
152
137
|
async getSettings(login) {
|
|
153
|
-
|
|
154
|
-
const response = await this.httpClient.get(url, options);
|
|
155
|
-
return response?.data;
|
|
138
|
+
return await this.createClient(login).get(this.apiSettingsPart);
|
|
156
139
|
}
|
|
157
140
|
async updatePrinterNameSetting(login, printerName) {
|
|
158
|
-
const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
|
|
159
141
|
const settingPatch = this.printerNameSetting(printerName);
|
|
160
|
-
|
|
161
|
-
return response?.data;
|
|
142
|
+
return await this.createClient(login).post(this.apiSettingsPart, settingPatch);
|
|
162
143
|
}
|
|
163
144
|
async updateFirmwareUpdaterSettings(login, firmwareUpdateConfig) {
|
|
164
|
-
const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
|
|
165
145
|
const settingPatch = this.pluginFirmwareUpdaterSettings(firmwareUpdateConfig);
|
|
166
|
-
|
|
167
|
-
return response?.data;
|
|
146
|
+
return await this.createClient(login).post(this.apiSettingsPart, settingPatch);
|
|
168
147
|
}
|
|
169
148
|
async setGCodeAnalysis(login, enabled) {
|
|
170
|
-
const { url, options } = this.prepareRequest(login, this.apiSettingsPart);
|
|
171
149
|
const settingPatch = this.gcodeAnalysisSetting(enabled);
|
|
172
|
-
|
|
173
|
-
return response?.data;
|
|
150
|
+
return await this.createClient(login).post(this.apiSettingsPart, settingPatch);
|
|
174
151
|
}
|
|
175
152
|
async getCurrentUser(login) {
|
|
176
|
-
|
|
177
|
-
const response = await this.httpClient.get(url, options);
|
|
178
|
-
return response?.data;
|
|
153
|
+
return await this.createClient(login).get(this.apiCurrentUser);
|
|
179
154
|
}
|
|
180
155
|
async getAdminUserOrDefault(login) {
|
|
181
|
-
const
|
|
182
|
-
return
|
|
156
|
+
const currentUserResponse = await this.getCurrentUser(login);
|
|
157
|
+
return currentUserResponse?.data?.name;
|
|
183
158
|
}
|
|
184
159
|
async getUsers(login) {
|
|
185
|
-
|
|
186
|
-
const response = await this.httpClient.get(url, options);
|
|
187
|
-
return response?.data;
|
|
160
|
+
return await this.createClient(login).get(this.apiUsers);
|
|
188
161
|
}
|
|
189
162
|
async getLocalFiles(login, recursive = false) {
|
|
190
|
-
const
|
|
191
|
-
|
|
192
|
-
return response?.data?.files?.filter((f)=>f.date).map((f)=>{
|
|
163
|
+
const response = await this.createClient(login).get(this.apiGetFiles(recursive));
|
|
164
|
+
return response?.data?.files?.filter((f)=>f.date && f.type === "machinecode").map((f)=>{
|
|
193
165
|
return (0, _fileutils.normalizePrinterFile)(f);
|
|
194
166
|
}) || [];
|
|
195
167
|
}
|
|
196
168
|
async getFile(login, path) {
|
|
197
|
-
const
|
|
198
|
-
const
|
|
199
|
-
const response = await this.httpClient.get(url, options);
|
|
169
|
+
const urlPath = this.apiFile(path);
|
|
170
|
+
const response = await this.createClient(login).get(urlPath);
|
|
200
171
|
try {
|
|
201
172
|
return (0, _fileutils.normalizePrinterFile)(response?.data);
|
|
202
173
|
} catch (e) {
|
|
@@ -206,52 +177,37 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
206
177
|
}
|
|
207
178
|
}
|
|
208
179
|
async downloadFile(login, path) {
|
|
209
|
-
const
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
responseType: "stream",
|
|
213
|
-
...options
|
|
180
|
+
const urlPath = this.downloadFileLocal(path);
|
|
181
|
+
return await this.createClient(login).get(urlPath, {
|
|
182
|
+
responseType: "stream"
|
|
214
183
|
});
|
|
215
184
|
}
|
|
216
|
-
getFileChunk(login, filePath, startBytes, endBytes) {
|
|
185
|
+
async getFileChunk(login, filePath, startBytes, endBytes) {
|
|
217
186
|
const pathUrl = this.downloadFileLocal(filePath);
|
|
218
|
-
|
|
219
|
-
return this.httpClient.get(url, {
|
|
220
|
-
headers: {
|
|
221
|
-
...options.headers,
|
|
187
|
+
return await this.createClient(login, (o)=>o.withHeaders({
|
|
222
188
|
Range: `bytes=${startBytes}-${endBytes}`
|
|
223
|
-
}
|
|
224
|
-
timeout: options.timeout
|
|
225
|
-
});
|
|
189
|
+
})).get(pathUrl);
|
|
226
190
|
}
|
|
227
191
|
async createFolder(login, path, foldername) {
|
|
228
|
-
const { url, options } = this.prepareRequest(login, this.apiFilesLocal);
|
|
229
192
|
const formData = new _formdata.default();
|
|
230
193
|
formData.append("path", path);
|
|
231
194
|
formData.append("foldername", foldername);
|
|
232
195
|
const headers = {
|
|
233
|
-
...options.headers,
|
|
234
196
|
...formData.getHeaders(),
|
|
235
|
-
"Content-Length": formData.getLengthSync()
|
|
197
|
+
"Content-Length": formData.getLengthSync().toString()
|
|
236
198
|
};
|
|
237
|
-
|
|
238
|
-
headers
|
|
239
|
-
});
|
|
240
|
-
return response?.data;
|
|
199
|
+
return await this.createClient(login, (o)=>o.withHeaders(headers)).post(this.apiFilesLocal, formData);
|
|
241
200
|
}
|
|
242
201
|
async moveFileOrFolder(login, path, destination) {
|
|
243
|
-
const { url, options } = this.prepareRequest(login, this.apiFile(path));
|
|
244
202
|
const command = this.moveFileCommand(destination);
|
|
245
|
-
|
|
246
|
-
return response?.data;
|
|
203
|
+
return await this.createClient(login).post(this.apiFile(path), command);
|
|
247
204
|
}
|
|
248
205
|
async postSelectPrintFile(login, path, print) {
|
|
249
|
-
const { url, options } = this.prepareRequest(login, this.apiFile(path));
|
|
250
206
|
const command = this.selectCommand(print);
|
|
251
|
-
await this.
|
|
207
|
+
await this.createClient(login).post(this.apiFile(path), command);
|
|
252
208
|
}
|
|
253
|
-
async uploadFileAsMultiPart(login, multerFileOrBuffer, commands,
|
|
254
|
-
const
|
|
209
|
+
async uploadFileAsMultiPart(login, multerFileOrBuffer, commands, progressToken) {
|
|
210
|
+
const urlPath = this.apiFilesLocal;
|
|
255
211
|
const formData = new _formdata.default();
|
|
256
212
|
if (commands.select) {
|
|
257
213
|
formData.append("select", "true");
|
|
@@ -259,14 +215,21 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
259
215
|
if (commands.print) {
|
|
260
216
|
formData.append("print", "true");
|
|
261
217
|
}
|
|
262
|
-
let
|
|
263
|
-
const
|
|
264
|
-
if (
|
|
265
|
-
|
|
218
|
+
let fileBuffer = multerFileOrBuffer.buffer;
|
|
219
|
+
const filename = multerFileOrBuffer.originalname;
|
|
220
|
+
if (fileBuffer) {
|
|
221
|
+
this.logger.log("Attaching file from memory buffer to formdata for upload");
|
|
222
|
+
formData.append("file", fileBuffer, {
|
|
223
|
+
filename
|
|
224
|
+
});
|
|
225
|
+
} else {
|
|
226
|
+
const filePath = multerFileOrBuffer.path;
|
|
227
|
+
const fileStream = (0, _fs.createReadStream)(filePath);
|
|
228
|
+
this.logger.log(`Attaching file from disk to formdata for upload`);
|
|
229
|
+
formData.append("file", fileStream, {
|
|
230
|
+
filename
|
|
231
|
+
});
|
|
266
232
|
}
|
|
267
|
-
formData.append("file", source, {
|
|
268
|
-
filename: multerFileOrBuffer.originalname
|
|
269
|
-
});
|
|
270
233
|
const result = await new Promise((resolve, reject)=>{
|
|
271
234
|
return formData.getLength((err, length)=>{
|
|
272
235
|
if (err) resolve(null);
|
|
@@ -274,27 +237,18 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
274
237
|
});
|
|
275
238
|
});
|
|
276
239
|
try {
|
|
277
|
-
const
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
method: "POST",
|
|
284
|
-
url,
|
|
285
|
-
data: formData,
|
|
286
|
-
headers,
|
|
287
|
-
onUploadProgress: (p)=>{
|
|
288
|
-
if (token) {
|
|
289
|
-
this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(token)}`, token, p);
|
|
240
|
+
const response = await this.createClient(login, (builder)=>builder.withMultiPartFormData().withHeaders({
|
|
241
|
+
...formData.getHeaders(),
|
|
242
|
+
"Content-Length": result.toString()
|
|
243
|
+
}).withOnUploadProgress((p)=>{
|
|
244
|
+
if (progressToken) {
|
|
245
|
+
this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(progressToken)}`, progressToken, p);
|
|
290
246
|
}
|
|
291
|
-
}
|
|
292
|
-
});
|
|
247
|
+
})).post(urlPath, formData);
|
|
248
|
+
this.eventEmitter2.emit(`${(0, _eventconstants.uploadDoneEvent)(progressToken)}`, progressToken);
|
|
293
249
|
return response.data;
|
|
294
250
|
} catch (e) {
|
|
295
|
-
this.eventEmitter2.emit(`${(0, _eventconstants.
|
|
296
|
-
failed: true
|
|
297
|
-
}, e);
|
|
251
|
+
this.eventEmitter2.emit(`${(0, _eventconstants.uploadFailedEvent)(progressToken)}`, progressToken, e?.message);
|
|
298
252
|
let data;
|
|
299
253
|
try {
|
|
300
254
|
data = JSON.parse(e.response?.body);
|
|
@@ -311,50 +265,36 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
311
265
|
}
|
|
312
266
|
}
|
|
313
267
|
async deleteFileOrFolder(login, path) {
|
|
314
|
-
|
|
315
|
-
const response = await this.httpClient.delete(url, options);
|
|
316
|
-
return response?.data;
|
|
268
|
+
await this.createClient(login).delete(this.apiFile(path));
|
|
317
269
|
}
|
|
318
270
|
async getPrinterCurrent(login, history, limit, exclude) {
|
|
319
271
|
const pathUrl = this.apiPrinterCurrent(history, limit, exclude);
|
|
320
|
-
|
|
321
|
-
return await this.httpClient.get(url, options);
|
|
272
|
+
return await this.createClient(login).get(pathUrl);
|
|
322
273
|
}
|
|
323
274
|
async getConnection(login) {
|
|
324
|
-
|
|
325
|
-
const response = await this.httpClient.get(url, options);
|
|
326
|
-
return response?.data;
|
|
275
|
+
return await this.createClient(login).get(this.apiConnection);
|
|
327
276
|
}
|
|
328
277
|
async getPrinterProfiles(login) {
|
|
329
|
-
|
|
330
|
-
const response = await this.httpClient.get(url, options);
|
|
331
|
-
return response?.data;
|
|
278
|
+
return await this.createClient(login).get(this.apiPrinterProfiles);
|
|
332
279
|
}
|
|
333
280
|
async postSoftwareUpdate(login, targets) {
|
|
334
|
-
|
|
281
|
+
return await this.createClient(login).post(this.pluginSoftwareUpdateUpdate, {
|
|
335
282
|
targets
|
|
336
283
|
});
|
|
337
|
-
const response = await this.httpClient.post(url, {}, options);
|
|
338
|
-
return response?.data;
|
|
339
284
|
}
|
|
340
285
|
async getPluginManagerPlugins(login) {
|
|
341
|
-
|
|
342
|
-
const response = await this.httpClient.get(url, options);
|
|
343
|
-
return response?.data;
|
|
286
|
+
return await this.createClient(login).get(this.pluginManagerPlugins);
|
|
344
287
|
}
|
|
345
288
|
async getPluginManagerPlugin(login, pluginName) {
|
|
346
|
-
const
|
|
347
|
-
|
|
348
|
-
return response?.data;
|
|
289
|
+
const urlPath = this.pluginManagerPlugin(pluginName);
|
|
290
|
+
return await this.createClient(login).get(urlPath);
|
|
349
291
|
}
|
|
350
292
|
async postApiPluginManagerCommand(login, pluginCommand, pluginUrl) {
|
|
351
|
-
const { url, options } = this.prepareRequest(login, this.apiPluginManager);
|
|
352
293
|
const command = this.pluginManagerCommand(pluginCommand, pluginUrl);
|
|
353
|
-
|
|
354
|
-
return response?.data;
|
|
294
|
+
return await this.createClient(login).post(this.apiPluginManager, command);
|
|
355
295
|
}
|
|
356
296
|
async postPluginFirmwareUpdateFlash(currentPrinterId, login, firmwarePath) {
|
|
357
|
-
const
|
|
297
|
+
const urlPath = this.pluginFirmwareUpdaterFlash;
|
|
358
298
|
const formData = new _formdata.default();
|
|
359
299
|
formData.append("port", "/dev/op2");
|
|
360
300
|
formData.append("profile", "default");
|
|
@@ -364,22 +304,16 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
364
304
|
filename
|
|
365
305
|
});
|
|
366
306
|
try {
|
|
367
|
-
const
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
};
|
|
371
|
-
const response = await this.httpClient.post(url, {
|
|
372
|
-
body: formData,
|
|
373
|
-
headers,
|
|
374
|
-
uploadProgress: (p)=>{
|
|
307
|
+
const response = await this.createClient(login, (builder)=>builder.withMultiPartFormData().withHeaders({
|
|
308
|
+
...formData.getHeaders()
|
|
309
|
+
}).withOnUploadProgress((p)=>{
|
|
375
310
|
if (currentPrinterId) {
|
|
376
311
|
this.eventEmitter2.emit(`${(0, _eventconstants.firmwareFlashUploadEvent)(currentPrinterId)}`, currentPrinterId, p);
|
|
377
312
|
}
|
|
378
|
-
}
|
|
379
|
-
});
|
|
313
|
+
})).post(urlPath, formData);
|
|
380
314
|
return response?.data;
|
|
381
315
|
} catch (e) {
|
|
382
|
-
this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(currentPrinterId)}`, currentPrinterId, {
|
|
316
|
+
this.eventEmitter2.emit(`${(0, _eventconstants.uploadProgressEvent)(currentPrinterId.toString())}`, currentPrinterId, {
|
|
383
317
|
failed: true
|
|
384
318
|
}, e);
|
|
385
319
|
let data;
|
|
@@ -398,80 +332,52 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
398
332
|
}
|
|
399
333
|
}
|
|
400
334
|
async getPluginFirmwareUpdateStatus(login) {
|
|
401
|
-
|
|
402
|
-
const response = await this.httpClient.get(url, options);
|
|
403
|
-
return response?.data;
|
|
335
|
+
return await this.createClient(login).get(this.pluginFirmwareUpdaterStatus);
|
|
404
336
|
}
|
|
405
337
|
async fetchOctoPrintPlugins() {
|
|
406
|
-
|
|
407
|
-
const response = await this.httpClient.get(url, options);
|
|
408
|
-
return response?.data;
|
|
338
|
+
return await this.createAnonymousClient(_octoprintserviceconstants.pluginRepositoryUrl).get("");
|
|
409
339
|
}
|
|
410
340
|
async getSystemInfo(login) {
|
|
411
|
-
|
|
412
|
-
const response = await this.httpClient.get(url, options);
|
|
413
|
-
return response?.data;
|
|
341
|
+
return await this.createClient(login).get(this.apiSystemInfo);
|
|
414
342
|
}
|
|
415
343
|
async getSystemCommands(login) {
|
|
416
|
-
|
|
417
|
-
const response = await this.httpClient.get(url, options);
|
|
418
|
-
return response?.data;
|
|
344
|
+
return await this.createClient(login).get(this.apiSystemCommands);
|
|
419
345
|
}
|
|
420
346
|
async postServerRestartCommand(login) {
|
|
421
|
-
|
|
422
|
-
const response = await this.httpClient.post(url, {}, options);
|
|
423
|
-
return response?.data;
|
|
347
|
+
await this.createClient(login).post(this.apiServerRestartCommand);
|
|
424
348
|
}
|
|
425
349
|
async getSoftwareUpdateCheck(login, force) {
|
|
426
|
-
|
|
427
|
-
const response = await this.httpClient.get(url, options);
|
|
428
|
-
return response?.data;
|
|
350
|
+
return await this.createClient(login).get(this.apiSoftwareUpdateCheck(force));
|
|
429
351
|
}
|
|
430
352
|
async getPluginPiSupport(login) {
|
|
431
|
-
|
|
432
|
-
const response = await this.httpClient.get(url, options);
|
|
433
|
-
return response?.data;
|
|
353
|
+
return await this.createClient(login).get(this.apiPluginPiSupport);
|
|
434
354
|
}
|
|
435
355
|
async deleteTimeLapse(login, fileName) {
|
|
436
|
-
const
|
|
437
|
-
|
|
438
|
-
const response = await this.httpClient.delete(url, options);
|
|
439
|
-
return response?.data;
|
|
356
|
+
const urlPath = `${this.apiTimelapse}/${fileName}`;
|
|
357
|
+
await this.createClient(login).delete(urlPath);
|
|
440
358
|
}
|
|
441
359
|
async listUnrenderedTimeLapses(login) {
|
|
442
|
-
const
|
|
443
|
-
|
|
444
|
-
const response = await this.httpClient.get(url, options);
|
|
445
|
-
return response?.data;
|
|
360
|
+
const urlPath = `${this.apiTimelapse}?unrendered=true`;
|
|
361
|
+
return await this.createClient(login).get(urlPath);
|
|
446
362
|
}
|
|
447
363
|
async listProfiles(login) {
|
|
448
|
-
|
|
449
|
-
const response = await this.httpClient.get(url, options);
|
|
450
|
-
return response?.data;
|
|
364
|
+
return await this.createClient(login).get(this.apiProfiles);
|
|
451
365
|
}
|
|
452
366
|
async getBackupOverview(login) {
|
|
453
|
-
|
|
454
|
-
const response = await this.httpClient.get(url, options);
|
|
455
|
-
return response?.data;
|
|
367
|
+
return await this.createClient(login).get(this.pluginBackupIndex);
|
|
456
368
|
}
|
|
457
369
|
async getBackups(login) {
|
|
458
|
-
|
|
459
|
-
const response = await this.httpClient.get(url, options);
|
|
460
|
-
return response?.data;
|
|
370
|
+
return await this.createClient(login).get(this.pluginBackupEndpoint);
|
|
461
371
|
}
|
|
462
372
|
async createBackup(login, excludeArray) {
|
|
463
|
-
|
|
464
|
-
const response = await this.httpClient.post(url, {
|
|
373
|
+
return await this.createClient(login).post(this.pluginBackupEndpoint, {
|
|
465
374
|
exclude: excludeArray
|
|
466
|
-
}
|
|
467
|
-
return response?.data;
|
|
375
|
+
});
|
|
468
376
|
}
|
|
469
377
|
async getDownloadBackupStream(login, filename) {
|
|
470
|
-
const
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
...options
|
|
474
|
-
}).catch((e)=>{
|
|
378
|
+
const response = await this.createClient(login, (builder)=>{
|
|
379
|
+
builder.withStreamResponse();
|
|
380
|
+
}).get(this.pluginBackupFileDownload(filename)).catch((e)=>{
|
|
475
381
|
throw new _runtimeexceptions.ExternalServiceError({
|
|
476
382
|
error: e.message,
|
|
477
383
|
statusCode: e.response?.statusCode,
|
|
@@ -479,20 +385,16 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
479
385
|
stack: e.stack
|
|
480
386
|
}, "OctoPrint");
|
|
481
387
|
});
|
|
482
|
-
return response
|
|
388
|
+
return response?.data;
|
|
483
389
|
}
|
|
484
390
|
async forwardRestoreBackupFileStream(login, buffer) {
|
|
485
|
-
const { url, options } = this.prepareRequest(login, this.pluginBackupFileRestore, null, _octoprintserviceconstants.multiPartContentType);
|
|
486
391
|
const formData = new _formdata.default();
|
|
487
392
|
formData.append("file", buffer, {
|
|
488
393
|
filename: "op-fdmm-restore.zip"
|
|
489
394
|
});
|
|
490
|
-
const response = await this.
|
|
491
|
-
headers: {
|
|
492
|
-
...options.headers,
|
|
395
|
+
const response = await this.createClient(login, (builder)=>builder.withMultiPartFormData().withHeaders({
|
|
493
396
|
...formData.getHeaders()
|
|
494
|
-
}
|
|
495
|
-
}).catch((e)=>{
|
|
397
|
+
})).post(this.pluginBackupFileRestore, formData).catch((e)=>{
|
|
496
398
|
throw new _runtimeexceptions.ExternalServiceError({
|
|
497
399
|
error: e.message,
|
|
498
400
|
statusCode: e.response?.statusCode,
|
|
@@ -503,9 +405,24 @@ class OctoprintClient extends _octoprintapiroutes.OctoprintRoutes {
|
|
|
503
405
|
return response?.data;
|
|
504
406
|
}
|
|
505
407
|
async deleteBackup(login, filename) {
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
408
|
+
return await this.createClient(login).delete(this.pluginBackupFile(filename));
|
|
409
|
+
}
|
|
410
|
+
createClient(login, buildFluentOptions) {
|
|
411
|
+
const baseAddress = login.printerURL;
|
|
412
|
+
return this.createAnonymousClient(baseAddress, (o)=>{
|
|
413
|
+
if (buildFluentOptions) {
|
|
414
|
+
buildFluentOptions(o);
|
|
415
|
+
}
|
|
416
|
+
o.withXApiKeyHeader(login.apiKey);
|
|
417
|
+
});
|
|
418
|
+
}
|
|
419
|
+
createAnonymousClient(baseAddress, buildFluentOptions) {
|
|
420
|
+
const builder = new _octoprinthttpclientbuilder.OctoprintHttpClientBuilder();
|
|
421
|
+
return this.httpClientFactory.createClientWithBaseUrl(builder, baseAddress, (b)=>{
|
|
422
|
+
if (buildFluentOptions) {
|
|
423
|
+
buildFluentOptions(b);
|
|
424
|
+
}
|
|
425
|
+
});
|
|
509
426
|
}
|
|
510
427
|
}
|
|
511
428
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/octoprint/octoprint.client.ts"],"names":["OctoprintClient","OctoprintRoutes","eventEmitter2","httpClient","logger","constructor","settingsStore","loggerFactory","name","getApiVersion","login","timeout","url","options","prepareRequest","apiVersion","get","getServer","apiServer","apiLogin","post","sendConnectionCommand","commandData","data","prepareJsonRequest","apiConnection","sendPrintHeadJogCommand","amounts","axesToHome","x","y","z","command","sendPrintHeadCommand","sendPrintHeadHomeCommand","axes","apiPrinterHead","response","sendCustomGCodeCommand","commandString","apiPrinterCustomCommand","getJob","apiJob","sendJobCommand","sendBedTempCommand","targetTemp","apiPrinterBed","getBedTargetCommand","getSettings","apiSettingsPart","updatePrinterNameSetting","printerName","settingPatch","printerNameSetting","updateFirmwareUpdaterSettings","firmwareUpdateConfig","pluginFirmwareUpdaterSettings","setGCodeAnalysis","enabled","gcodeAnalysisSetting","getCurrentUser","apiCurrentUser","getAdminUserOrDefault","currentUser","getUsers","apiUsers","getLocalFiles","recursive","apiGetFiles","files","filter","f","date","map","normalizePrinterFile","getFile","path","pathUrl","apiFile","e","captureException","error","downloadFile","downloadFileLocal","responseType","getFileChunk","filePath","startBytes","endBytes","headers","Range","createFolder","foldername","apiFilesLocal","formData","FormData","append","getHeaders","getLengthSync","moveFileOrFolder","destination","moveFileCommand","postSelectPrintFile","print","selectCommand","uploadFileAsMultiPart","multerFileOrBuffer","commands","token","multiPartContentType","select","source","buffer","isPhysicalFile","createReadStream","filename","originalname","result","Promise","resolve","reject","getLength","err","length","axios","method","onUploadProgress","p","emit","uploadProgressEvent","failed","JSON","parse","body","ExternalServiceError","message","statusCode","success","stack","deleteFileOrFolder","delete","getPrinterCurrent","history","limit","exclude","apiPrinterCurrent","getConnection","getPrinterProfiles","apiPrinterProfiles","postSoftwareUpdate","targets","pluginSoftwareUpdateUpdate","getPluginManagerPlugins","pluginManagerPlugins","getPluginManagerPlugin","pluginName","pluginManagerPlugin","postApiPluginManagerCommand","pluginCommand","pluginUrl","apiPluginManager","pluginManagerCommand","postPluginFirmwareUpdateFlash","currentPrinterId","firmwarePath","pluginFirmwareUpdaterFlash","basename","fileReadStream","fs","uploadProgress","firmwareFlashUploadEvent","getPluginFirmwareUpdateStatus","pluginFirmwareUpdaterStatus","fetchOctoPrintPlugins","prepareAnonymousRequest","pluginRepositoryUrl","getSystemInfo","apiSystemInfo","getSystemCommands","apiSystemCommands","postServerRestartCommand","apiServerRestartCommand","getSoftwareUpdateCheck","force","apiSoftwareUpdateCheck","getPluginPiSupport","apiPluginPiSupport","deleteTimeLapse","fileName","apiTimelapse","listUnrenderedTimeLapses","listProfiles","apiProfiles","getBackupOverview","pluginBackupIndex","getBackups","pluginBackupEndpoint","createBackup","excludeArray","getDownloadBackupStream","pluginBackupFileDownload","catch","forwardRestoreBackupFileStream","pluginBackupFileRestore","deleteBackup","pluginBackupFile"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/services/octoprint/octoprint.client.ts"],"names":["OctoprintClient","OctoprintRoutes","eventEmitter2","httpClientFactory","logger","constructor","loggerFactory","name","getApiVersion","login","createClient","get","apiVersion","getServer","apiServer","post","apiLogin","sendConnectionCommand","commandData","apiConnection","sendPrintHeadJogCommand","amounts","axesToHome","x","y","z","command","sendPrintHeadCommand","sendPrintHeadHomeCommand","axes","apiPrinterHead","sendCustomGCodeCommand","commandString","apiPrinterCustomCommand","getJob","apiJob","sendJobCommand","sendBedTempCommand","targetTemp","data","getBedTargetCommand","apiPrinterBed","getSettings","apiSettingsPart","updatePrinterNameSetting","printerName","settingPatch","printerNameSetting","updateFirmwareUpdaterSettings","firmwareUpdateConfig","pluginFirmwareUpdaterSettings","setGCodeAnalysis","enabled","gcodeAnalysisSetting","getCurrentUser","apiCurrentUser","getAdminUserOrDefault","currentUserResponse","getUsers","apiUsers","getLocalFiles","recursive","response","apiGetFiles","files","filter","f","date","type","map","normalizePrinterFile","getFile","path","urlPath","apiFile","e","captureException","error","downloadFile","downloadFileLocal","responseType","getFileChunk","filePath","startBytes","endBytes","pathUrl","o","withHeaders","Range","createFolder","foldername","formData","FormData","append","headers","getHeaders","getLengthSync","toString","apiFilesLocal","moveFileOrFolder","destination","moveFileCommand","postSelectPrintFile","print","selectCommand","uploadFileAsMultiPart","multerFileOrBuffer","commands","progressToken","select","fileBuffer","buffer","filename","originalname","log","fileStream","createReadStream","result","Promise","resolve","reject","getLength","err","length","builder","withMultiPartFormData","withOnUploadProgress","p","emit","uploadProgressEvent","uploadDoneEvent","uploadFailedEvent","message","JSON","parse","body","ExternalServiceError","statusCode","success","stack","deleteFileOrFolder","delete","getPrinterCurrent","history","limit","exclude","apiPrinterCurrent","getConnection","getPrinterProfiles","apiPrinterProfiles","postSoftwareUpdate","targets","pluginSoftwareUpdateUpdate","getPluginManagerPlugins","pluginManagerPlugins","getPluginManagerPlugin","pluginName","pluginManagerPlugin","postApiPluginManagerCommand","pluginCommand","pluginUrl","pluginManagerCommand","apiPluginManager","postPluginFirmwareUpdateFlash","currentPrinterId","firmwarePath","pluginFirmwareUpdaterFlash","basename","fileReadStream","fs","firmwareFlashUploadEvent","failed","getPluginFirmwareUpdateStatus","pluginFirmwareUpdaterStatus","fetchOctoPrintPlugins","createAnonymousClient","pluginRepositoryUrl","getSystemInfo","apiSystemInfo","getSystemCommands","apiSystemCommands","postServerRestartCommand","apiServerRestartCommand","getSoftwareUpdateCheck","force","apiSoftwareUpdateCheck","getPluginPiSupport","apiPluginPiSupport","deleteTimeLapse","fileName","apiTimelapse","listUnrenderedTimeLapses","listProfiles","apiProfiles","getBackupOverview","pluginBackupIndex","getBackups","pluginBackupEndpoint","createBackup","excludeArray","getDownloadBackupStream","withStreamResponse","pluginBackupFileDownload","catch","forwardRestoreBackupFileStream","pluginBackupFileRestore","deleteBackup","pluginBackupFile","buildFluentOptions","baseAddress","printerURL","withXApiKeyHeader","apiKey","OctoprintHttpClientBuilder","createClientWithBaseUrl","b"],"mappings":"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"}
|