@fdm-monster/server 1.7.5 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/{yarn-4.5.2.cjs → yarn-4.5.3.cjs} +80 -80
- package/.yarnrc.yml +1 -1
- package/README.md +3 -2
- package/RELEASE_NOTES.MD +27 -0
- package/dist/consoles/gcode-scanner-poc.console.js +52 -0
- package/dist/consoles/gcode-scanner-poc.console.js.map +1 -0
- package/dist/constants/server-settings.constants.js +4 -2
- package/dist/constants/server-settings.constants.js.map +1 -1
- package/dist/container.js +6 -6
- package/dist/container.js.map +1 -1
- package/dist/container.tokens.js +4 -3
- package/dist/container.tokens.js.map +1 -1
- package/dist/controllers/camera-stream.controller.js +79 -15
- package/dist/controllers/camera-stream.controller.js.map +1 -1
- package/dist/controllers/printer-files.controller.js +90 -10
- package/dist/controllers/printer-files.controller.js.map +1 -1
- package/dist/controllers/printer.controller.js +5 -5
- package/dist/controllers/printer.controller.js.map +1 -1
- package/dist/controllers/settings.controller.js +20 -1
- package/dist/controllers/settings.controller.js.map +1 -1
- package/dist/entities/settings.entity.js.map +1 -1
- package/dist/middleware/printer.js.map +1 -1
- package/dist/models/Settings.js +10 -0
- package/dist/models/Settings.js.map +1 -1
- package/dist/server.constants.js +7 -1
- package/dist/server.constants.js.map +1 -1
- package/dist/services/core/multer.service.js +8 -8
- package/dist/services/core/multer.service.js.map +1 -1
- package/dist/services/interfaces/settings.dto.js.map +1 -1
- package/dist/services/mongoose/permission.service.js.map +1 -0
- package/dist/services/mongoose/refresh-token.service.js.map +1 -0
- package/dist/services/mongoose/role.service.js.map +1 -0
- package/dist/services/mongoose/settings.service.js +2 -1
- package/dist/services/mongoose/settings.service.js.map +1 -1
- package/dist/services/{authentication → mongoose}/user.service.js +2 -2
- package/dist/services/mongoose/user.service.js.map +1 -0
- package/dist/services/moonraker/moonraker-websocket.adapter.js +9 -5
- package/dist/services/moonraker/moonraker-websocket.adapter.js.map +1 -1
- package/dist/services/moonraker/moonraker.client.js +7 -0
- package/dist/services/moonraker/moonraker.client.js.map +1 -1
- package/dist/services/moonraker.api.js +12 -0
- package/dist/services/moonraker.api.js.map +1 -1
- package/dist/services/octoprint/octoprint-websocket.adapter.js +8 -3
- package/dist/services/octoprint/octoprint-websocket.adapter.js.map +1 -1
- package/dist/services/octoprint/octoprint.client.js +11 -0
- package/dist/services/octoprint/octoprint.client.js.map +1 -1
- package/dist/services/octoprint.api.js +14 -2
- package/dist/services/octoprint.api.js.map +1 -1
- package/dist/services/orm/settings.service.js +2 -1
- package/dist/services/orm/settings.service.js.map +1 -1
- package/dist/services/orm/user.service.js +38 -3
- package/dist/services/orm/user.service.js.map +1 -1
- package/dist/services/validators/settings-service.validation.js +10 -2
- package/dist/services/validators/settings-service.validation.js.map +1 -1
- package/dist/services/validators/yaml-service.validation.js +1 -1
- package/dist/services/validators/yaml-service.validation.js.map +1 -1
- package/dist/shared/websocket-rpc-extended.adapter.js +0 -2
- package/dist/shared/websocket-rpc-extended.adapter.js.map +1 -1
- package/dist/shared/websocket.adapter.js +7 -0
- package/dist/shared/websocket.adapter.js.map +1 -1
- package/dist/state/printer-socket.store.js +3 -5
- package/dist/state/printer-socket.store.js.map +1 -1
- package/dist/state/printer-thumbnail.cache.js +226 -0
- package/dist/state/printer-thumbnail.cache.js.map +1 -0
- package/dist/state/settings.store.js +14 -2
- package/dist/state/settings.store.js.map +1 -1
- package/dist/state/test-printer-socket.store.js +2 -2
- package/dist/state/test-printer-socket.store.js.map +1 -1
- package/dist/tasks/boot.task.js +7 -1
- package/dist/tasks/boot.task.js.map +1 -1
- package/dist/utils/cache/key-diff.cache.js +0 -3
- package/dist/utils/cache/key-diff.cache.js.map +1 -1
- package/dist/utils/gcode.utils.js +48 -0
- package/dist/utils/gcode.utils.js.map +1 -0
- package/dist/utils/normalize-url.js +1 -1
- package/dist/utils/normalize-url.js.map +1 -1
- package/dist/utils/url.utils.js +5 -4
- package/dist/utils/url.utils.js.map +1 -1
- package/package.json +14 -15
- package/requests/printer-file/get-partial-file-moonraker.http +5 -0
- package/requests/printer-file/get-thumbnails.http +5 -0
- package/requests/printer-file/reload-printer-thumbnails.http +10 -0
- package/requests/printer-file/testfile.gcode +5665 -0
- package/requests/printer-file/upload-file.http +11 -0
- package/requests/printer-file/upload-slicer-file.http +11 -0
- package/requests/printers/list.http +5 -0
- package/dist/services/authentication/permission.service.js.map +0 -1
- package/dist/services/authentication/refresh-token.service.js.map +0 -1
- package/dist/services/authentication/role.service.js.map +0 -1
- package/dist/services/authentication/user.service.js.map +0 -1
- package/dist/services/influxdb-v2/influx-db-v2-base.service.js +0 -41
- package/dist/services/influxdb-v2/influx-db-v2-base.service.js.map +0 -1
- /package/dist/services/{authentication → mongoose}/permission.service.js +0 -0
- /package/dist/services/{authentication → mongoose}/refresh-token.service.js +0 -0
- /package/dist/services/{authentication → mongoose}/role.service.js +0 -0
|
@@ -0,0 +1,226 @@
|
|
|
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: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
PrinterThumbnailCache: function() {
|
|
13
|
+
return PrinterThumbnailCache;
|
|
14
|
+
},
|
|
15
|
+
gcodeMaxLinesToRead: function() {
|
|
16
|
+
return gcodeMaxLinesToRead;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _keydiffcache = require("../utils/cache/key-diff.cache");
|
|
20
|
+
const _path = require("path");
|
|
21
|
+
const _fsutils = require("../utils/fs.utils");
|
|
22
|
+
const _serverconstants = require("../server.constants");
|
|
23
|
+
const _nodefs = require("node:fs");
|
|
24
|
+
const _fs = require("fs");
|
|
25
|
+
const _gcodeutils = require("../utils/gcode.utils");
|
|
26
|
+
const _promises = require("node:readline/promises");
|
|
27
|
+
const _promises1 = require("node:fs/promises");
|
|
28
|
+
const _node = require("@sentry/node");
|
|
29
|
+
const _eventconstants = require("../constants/event.constants");
|
|
30
|
+
const gcodeMaxLinesToRead = 10000;
|
|
31
|
+
class PrinterThumbnailCache extends _keydiffcache.KeyDiffCache {
|
|
32
|
+
printerCache;
|
|
33
|
+
printerApiFactory;
|
|
34
|
+
logger;
|
|
35
|
+
eventEmitter2;
|
|
36
|
+
settingsStore;
|
|
37
|
+
constructor({ printerCache, printerApiFactory, loggerFactory, eventEmitter2, settingsStore }){
|
|
38
|
+
super();
|
|
39
|
+
this.printerCache = printerCache;
|
|
40
|
+
this.printerApiFactory = printerApiFactory;
|
|
41
|
+
this.logger = loggerFactory(PrinterThumbnailCache.name);
|
|
42
|
+
this.eventEmitter2 = eventEmitter2;
|
|
43
|
+
this.settingsStore = settingsStore;
|
|
44
|
+
this.eventEmitter2.on(_eventconstants.printerEvents.printersDeleted, this.handlePrintersDeleted.bind(this));
|
|
45
|
+
}
|
|
46
|
+
async resetCache() {
|
|
47
|
+
const keys = Object.keys(this.keyValueStore);
|
|
48
|
+
await this.deleteKeysBatch(keys);
|
|
49
|
+
}
|
|
50
|
+
async loadCache() {
|
|
51
|
+
if (!this.settingsStore.isThumbnailSupportEnabled()) return;
|
|
52
|
+
const printers = await this.printerCache.listCachedPrinters();
|
|
53
|
+
const baseFolder = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultPrinterThumbnailsStorage);
|
|
54
|
+
this.resetDiffs();
|
|
55
|
+
Object.keys(this.keyValueStore).forEach((key)=>{
|
|
56
|
+
delete this.keyValueStore[key];
|
|
57
|
+
});
|
|
58
|
+
for (const printer of printers){
|
|
59
|
+
const printerIdStr = printer.id.toString();
|
|
60
|
+
const thumbnailFile = (0, _path.join)(baseFolder, printer.id.toString() + ".dat");
|
|
61
|
+
if ((0, _nodefs.existsSync)(thumbnailFile)) {
|
|
62
|
+
const data = (0, _fs.readFileSync)(thumbnailFile, "utf8");
|
|
63
|
+
await this.setPrinterThumbnail(printerIdStr, data);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
async handlePrintersDeleted({ printerIds }) {
|
|
68
|
+
if (!this.settingsStore.isThumbnailSupportEnabled()) return;
|
|
69
|
+
for (const printerId of printerIds){
|
|
70
|
+
await this.removeThumbnailFile(printerId);
|
|
71
|
+
await this.unsetPrinterThumbnail(printerId);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
async setPrinterThumbnail(id, imageData) {
|
|
75
|
+
await this.setKeyValue(id, {
|
|
76
|
+
id: id,
|
|
77
|
+
thumbnailBase64: imageData
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
async unsetPrinterThumbnail(id) {
|
|
81
|
+
await this.deleteKeyValue(id);
|
|
82
|
+
}
|
|
83
|
+
async loadPrinterThumbnailRemote(login, printerId, file) {
|
|
84
|
+
if (!this.settingsStore.isThumbnailSupportEnabled()) return;
|
|
85
|
+
const id = printerId.toString();
|
|
86
|
+
try {
|
|
87
|
+
const thumbnailData = await this.extractRemoteThumbnailBase64(login, file);
|
|
88
|
+
await this.writeThumbnailFile(id, thumbnailData);
|
|
89
|
+
await this.setPrinterThumbnail(id, thumbnailData);
|
|
90
|
+
return thumbnailData;
|
|
91
|
+
} catch (e) {
|
|
92
|
+
this.logger.error("Could not parse thumbnail, clearing printer thumbnail", e);
|
|
93
|
+
(0, _node.captureException)(e);
|
|
94
|
+
await this.removeThumbnailFile(id);
|
|
95
|
+
await this.unsetPrinterThumbnail(id);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
async loadPrinterThumbnailLocal(printerId, file) {
|
|
99
|
+
if (!this.settingsStore.isThumbnailSupportEnabled()) return;
|
|
100
|
+
const id = printerId.toString();
|
|
101
|
+
try {
|
|
102
|
+
const thumbnailData = await this.extractThumbnailBase64(file);
|
|
103
|
+
await this.writeThumbnailFile(id, thumbnailData);
|
|
104
|
+
await this.setPrinterThumbnail(id, thumbnailData);
|
|
105
|
+
return thumbnailData;
|
|
106
|
+
} catch (e) {
|
|
107
|
+
this.logger.error("Could not parse thumbnail, clearing printer thumbnail", e);
|
|
108
|
+
(0, _node.captureException)(e);
|
|
109
|
+
await this.removeThumbnailFile(id);
|
|
110
|
+
await this.unsetPrinterThumbnail(id);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
async writeThumbnailFile(printerId, thumbnailData) {
|
|
114
|
+
if (!thumbnailData?.length) {
|
|
115
|
+
await this.removeThumbnailFile(printerId);
|
|
116
|
+
await this.unsetPrinterThumbnail(printerId);
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
const baseFolder = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultPrinterThumbnailsStorage);
|
|
120
|
+
const thumbnailPath = (0, _path.join)(baseFolder, printerId + ".dat");
|
|
121
|
+
(0, _fsutils.ensureDirExists)(baseFolder);
|
|
122
|
+
await (0, _promises1.writeFile)(thumbnailPath, thumbnailData);
|
|
123
|
+
}
|
|
124
|
+
async removeThumbnailFile(printerId) {
|
|
125
|
+
const baseFolder = (0, _path.join)((0, _fsutils.superRootPath)(), _serverconstants.AppConstants.defaultPrinterThumbnailsStorage);
|
|
126
|
+
const thumbnailPath = (0, _path.join)(baseFolder, printerId + ".dat");
|
|
127
|
+
if ((0, _nodefs.existsSync)(thumbnailPath)) {
|
|
128
|
+
(0, _nodefs.rmSync)(thumbnailPath);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
async extractRemoteThumbnailBase64(login, file) {
|
|
132
|
+
const lines = await this.readRemoteGcodeLines(login, file, gcodeMaxLinesToRead);
|
|
133
|
+
if (!lines?.length) {
|
|
134
|
+
throw new Error("No gcode lines were returned.");
|
|
135
|
+
}
|
|
136
|
+
let collecting = false;
|
|
137
|
+
let currentThumbnailBase64 = "";
|
|
138
|
+
let index = 0;
|
|
139
|
+
for (const line of lines){
|
|
140
|
+
if (line.startsWith("; thumbnail begin")) {
|
|
141
|
+
collecting = true;
|
|
142
|
+
currentThumbnailBase64 = "";
|
|
143
|
+
} else if (collecting && line.startsWith("; thumbnail") && line.includes("end")) {
|
|
144
|
+
collecting = false;
|
|
145
|
+
break;
|
|
146
|
+
} else if (collecting) {
|
|
147
|
+
const trim = line.trim().replace(/^;/, "").trim();
|
|
148
|
+
currentThumbnailBase64 += trim;
|
|
149
|
+
}
|
|
150
|
+
if (index > gcodeMaxLinesToRead) {
|
|
151
|
+
throw new Error("Thumbnail not found (within 10000 lines).");
|
|
152
|
+
}
|
|
153
|
+
index++;
|
|
154
|
+
}
|
|
155
|
+
return currentThumbnailBase64;
|
|
156
|
+
}
|
|
157
|
+
async readRemoteGcodeLines(login, file, numberOfLines, fromEnd = false, endCondition = "; thumbnail end") {
|
|
158
|
+
const printer = this.printerApiFactory.getScopedPrinter(login);
|
|
159
|
+
const fileData = await printer.getFile(file);
|
|
160
|
+
const fileSize = fileData.size;
|
|
161
|
+
let lines = [];
|
|
162
|
+
let position = fromEnd ? fileSize : 0;
|
|
163
|
+
let iterationsLeft = 5;
|
|
164
|
+
while(lines.length <= numberOfLines && (fromEnd ? position > 0 : position < fileSize)){
|
|
165
|
+
iterationsLeft--;
|
|
166
|
+
if (iterationsLeft <= 0) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
const bytesToRead = Math.min(_gcodeutils.gcodeScanningChunkSize, fromEnd ? position : fileSize - position);
|
|
170
|
+
const start = fromEnd ? position - bytesToRead : position;
|
|
171
|
+
const end = fromEnd ? position : position + bytesToRead;
|
|
172
|
+
position = fromEnd ? start : end;
|
|
173
|
+
const remoteChunk = await printer.getFileChunk(file, start, end);
|
|
174
|
+
const chunkLines = remoteChunk.data.split("\n");
|
|
175
|
+
if (fromEnd) {
|
|
176
|
+
lines = chunkLines.concat(lines);
|
|
177
|
+
} else {
|
|
178
|
+
lines = lines.concat(chunkLines);
|
|
179
|
+
}
|
|
180
|
+
if (endCondition) {
|
|
181
|
+
const endIndex = lines.findIndex((line)=>line.includes(endCondition));
|
|
182
|
+
if (endIndex !== -1) {
|
|
183
|
+
lines = lines.slice(0, endIndex + 1);
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
} else if (lines.length >= numberOfLines) {
|
|
187
|
+
break;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
return fromEnd ? lines.slice(-numberOfLines) : lines.slice(0, numberOfLines);
|
|
191
|
+
}
|
|
192
|
+
async extractThumbnailBase64(gcodePath) {
|
|
193
|
+
const fileStream = (0, _fs.createReadStream)(gcodePath);
|
|
194
|
+
const rl = (0, _promises.createInterface)({
|
|
195
|
+
input: fileStream,
|
|
196
|
+
crlfDelay: Infinity
|
|
197
|
+
});
|
|
198
|
+
let collecting = false;
|
|
199
|
+
let currentThumbnailBase64 = "";
|
|
200
|
+
let index = 0;
|
|
201
|
+
for await (const line of rl){
|
|
202
|
+
if (line.startsWith("; thumbnail begin")) {
|
|
203
|
+
collecting = true;
|
|
204
|
+
currentThumbnailBase64 = "";
|
|
205
|
+
} else if (collecting && line.startsWith("; thumbnail") && line.includes("end")) {
|
|
206
|
+
collecting = false;
|
|
207
|
+
rl.close();
|
|
208
|
+
break;
|
|
209
|
+
} else if (collecting) {
|
|
210
|
+
const trim = line.trim().replace(/^;/, "").trim();
|
|
211
|
+
currentThumbnailBase64 += trim;
|
|
212
|
+
}
|
|
213
|
+
if (index > gcodeMaxLinesToRead) {
|
|
214
|
+
throw new Error("Thumbnail not found (within 10000 lines).");
|
|
215
|
+
}
|
|
216
|
+
index++;
|
|
217
|
+
}
|
|
218
|
+
if (!currentThumbnailBase64?.length) {
|
|
219
|
+
throw new Error("Thumbnail not found (within 10000 lines).");
|
|
220
|
+
}
|
|
221
|
+
Buffer.from(currentThumbnailBase64, "base64");
|
|
222
|
+
return currentThumbnailBase64;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
//# sourceMappingURL=printer-thumbnail.cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/state/printer-thumbnail.cache.ts"],"names":["PrinterThumbnailCache","gcodeMaxLinesToRead","KeyDiffCache","printerCache","printerApiFactory","logger","eventEmitter2","settingsStore","constructor","loggerFactory","name","on","printerEvents","printersDeleted","handlePrintersDeleted","bind","resetCache","keys","Object","keyValueStore","deleteKeysBatch","loadCache","isThumbnailSupportEnabled","printers","listCachedPrinters","baseFolder","join","superRootPath","AppConstants","defaultPrinterThumbnailsStorage","resetDiffs","forEach","key","printer","printerIdStr","id","toString","thumbnailFile","existsSync","data","readFileSync","setPrinterThumbnail","printerIds","printerId","removeThumbnailFile","unsetPrinterThumbnail","imageData","setKeyValue","thumbnailBase64","deleteKeyValue","loadPrinterThumbnailRemote","login","file","thumbnailData","extractRemoteThumbnailBase64","writeThumbnailFile","e","error","captureException","loadPrinterThumbnailLocal","extractThumbnailBase64","length","thumbnailPath","ensureDirExists","writeFile","rmSync","lines","readRemoteGcodeLines","Error","collecting","currentThumbnailBase64","index","line","startsWith","includes","trim","replace","numberOfLines","fromEnd","endCondition","getScopedPrinter","fileData","getFile","fileSize","size","position","iterationsLeft","bytesToRead","Math","min","gcodeScanningChunkSize","start","end","remoteChunk","getFileChunk","chunkLines","split","concat","endIndex","findIndex","slice","gcodePath","fileStream","createReadStream","rl","createInterface","input","crlfDelay","Infinity","close","Buffer","from"],"mappings":"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"}
|
|
@@ -33,7 +33,8 @@ class SettingsStore {
|
|
|
33
33
|
sentryDiagnosticsEnabled: settings[_serversettingsconstants.serverSettingsKey].sentryDiagnosticsEnabled,
|
|
34
34
|
experimentalMoonrakerSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalMoonrakerSupport,
|
|
35
35
|
experimentalTypeormSupport: this.isTypeOrmMode,
|
|
36
|
-
experimentalClientSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalClientSupport
|
|
36
|
+
experimentalClientSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalClientSupport,
|
|
37
|
+
experimentalThumbnailSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalThumbnailSupport
|
|
37
38
|
},
|
|
38
39
|
[_serversettingsconstants.wizardSettingKey]: settings[_serversettingsconstants.wizardSettingKey],
|
|
39
40
|
[_serversettingsconstants.frontendSettingKey]: settings[_serversettingsconstants.frontendSettingKey],
|
|
@@ -54,7 +55,8 @@ class SettingsStore {
|
|
|
54
55
|
debugSettings: settings[_serversettingsconstants.serverSettingsKey].debugSettings,
|
|
55
56
|
experimentalMoonrakerSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalMoonrakerSupport,
|
|
56
57
|
experimentalTypeormSupport: this.isTypeOrmMode,
|
|
57
|
-
experimentalClientSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalClientSupport
|
|
58
|
+
experimentalClientSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalClientSupport,
|
|
59
|
+
experimentalThumbnailSupport: settings[_serversettingsconstants.serverSettingsKey].experimentalThumbnailSupport
|
|
58
60
|
}
|
|
59
61
|
});
|
|
60
62
|
}
|
|
@@ -100,6 +102,10 @@ class SettingsStore {
|
|
|
100
102
|
if (!this.settings) throw new _runtimeexceptions.InternalServerException("Could not check server settings (server settings not loaded");
|
|
101
103
|
return this.settings[_serversettingsconstants.serverSettingsKey].registration;
|
|
102
104
|
}
|
|
105
|
+
isThumbnailSupportEnabled() {
|
|
106
|
+
if (!this.settings) throw new _runtimeexceptions.InternalServerException("Could not check server settings (server settings not loaded");
|
|
107
|
+
return this.settings[_serversettingsconstants.serverSettingsKey].experimentalThumbnailSupport;
|
|
108
|
+
}
|
|
103
109
|
getServerSettings() {
|
|
104
110
|
return this.getSettings()[_serversettingsconstants.serverSettingsKey];
|
|
105
111
|
}
|
|
@@ -164,6 +170,12 @@ class SettingsStore {
|
|
|
164
170
|
});
|
|
165
171
|
return this.getSettings();
|
|
166
172
|
}
|
|
173
|
+
async setExperimentalThumbnailSupport(thumbnailsEnabled) {
|
|
174
|
+
this.settings = await this.settingsService.patchServerSettings({
|
|
175
|
+
experimentalThumbnailSupport: thumbnailsEnabled
|
|
176
|
+
});
|
|
177
|
+
return this.getSettings();
|
|
178
|
+
}
|
|
167
179
|
async setExperimentalClientSupport(experimentalClientEnabled) {
|
|
168
180
|
this.settings = await this.settingsService.patchServerSettings({
|
|
169
181
|
experimentalClientSupport: experimentalClientEnabled
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/state/settings.store.ts"],"names":["SettingsStore","isTypeOrmMode","settingsService","logger","settings","constructor","loggerFactory","isTypeormMode","name","getSettings","InternalServerException","Object","freeze","serverSettingsKey","loginRequired","registration","sentryDiagnosticsEnabled","experimentalMoonrakerSupport","experimentalTypeormSupport","experimentalClientSupport","wizardSettingKey","frontendSettingKey","printerFileCleanSettingKey","timeoutSettingKey","getSettingsSensitive","credentialSettingsKey","jwtExpiresIn","refreshTokenAttempts","refreshTokenExpiry","debugSettings","getDebugSettingsSensitive","loadSettings","getOrCreate","processSentryEnabled","getCredentialSettings","getAnonymousDiagnosticsEnabled","persistOptionalCredentialSettings","overrideJwtSecret","overrideJwtExpiresIn","updateCredentialSettings","jwtSecret","parseInt","getWizardState","wizardCompleted","wizardVersion","latestWizardVersion","AppConstants","currentWizardVersion","isWizardCompleted","getWizardSettings","isRegistrationEnabled","getServerSettings","getFrontendSettings","getFileCleanSettings","isPreUploadFileCleanEnabled","autoRemoveOldFilesBeforeUpload","setWizardCompleted","version","patchWizardSettings","wizardCompletedAt","Date","setRegistrationEnabled","patchServerSettings","getLoginRequired","setLoginRequired","updateServerSettings","serverSettings","updateTimeoutSettings","timeoutSettings","patchFileCleanSettings","fileClean","credentialSettings","patchCredentialSettings","setSentryDiagnosticsEnabled","setExperimentalMoonrakerSupport","moonrakerEnabled","setExperimentalClientSupport","experimentalClientEnabled","updateFrontendSettings","frontendSettings","sentryEnabled","log","isTestEnvironment","client","getCurrentHub","getClient","warn","getOptions","enabled"],"mappings":";;;;+BAwBaA;;;eAAAA;;;mCAxB2B;yCAQjC;sBACuB;0BACI;iCACL;AAatB,MAAMA;
|
|
1
|
+
{"version":3,"sources":["../../src/state/settings.store.ts"],"names":["SettingsStore","isTypeOrmMode","settingsService","logger","settings","constructor","loggerFactory","isTypeormMode","name","getSettings","InternalServerException","Object","freeze","serverSettingsKey","loginRequired","registration","sentryDiagnosticsEnabled","experimentalMoonrakerSupport","experimentalTypeormSupport","experimentalClientSupport","experimentalThumbnailSupport","wizardSettingKey","frontendSettingKey","printerFileCleanSettingKey","timeoutSettingKey","getSettingsSensitive","credentialSettingsKey","jwtExpiresIn","refreshTokenAttempts","refreshTokenExpiry","debugSettings","getDebugSettingsSensitive","loadSettings","getOrCreate","processSentryEnabled","getCredentialSettings","getAnonymousDiagnosticsEnabled","persistOptionalCredentialSettings","overrideJwtSecret","overrideJwtExpiresIn","updateCredentialSettings","jwtSecret","parseInt","getWizardState","wizardCompleted","wizardVersion","latestWizardVersion","AppConstants","currentWizardVersion","isWizardCompleted","getWizardSettings","isRegistrationEnabled","isThumbnailSupportEnabled","getServerSettings","getFrontendSettings","getFileCleanSettings","isPreUploadFileCleanEnabled","autoRemoveOldFilesBeforeUpload","setWizardCompleted","version","patchWizardSettings","wizardCompletedAt","Date","setRegistrationEnabled","patchServerSettings","getLoginRequired","setLoginRequired","updateServerSettings","serverSettings","updateTimeoutSettings","timeoutSettings","patchFileCleanSettings","fileClean","credentialSettings","patchCredentialSettings","setSentryDiagnosticsEnabled","setExperimentalMoonrakerSupport","moonrakerEnabled","setExperimentalThumbnailSupport","thumbnailsEnabled","setExperimentalClientSupport","experimentalClientEnabled","updateFrontendSettings","frontendSettings","sentryEnabled","log","isTestEnvironment","client","getCurrentHub","getClient","warn","getOptions","enabled"],"mappings":"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"}
|
|
@@ -45,8 +45,7 @@ class TestPrinterSocketStore {
|
|
|
45
45
|
apiKey: printer.apiKey,
|
|
46
46
|
printerURL: printer.printerURL,
|
|
47
47
|
printerType: printer.printerType
|
|
48
|
-
}
|
|
49
|
-
protocol: "ws"
|
|
48
|
+
}
|
|
50
49
|
});
|
|
51
50
|
const testEvents = [
|
|
52
51
|
(0, _octoprintwebsocketadapter.octoPrintEvent)(_octoprintwebsocketadapter.WsMessage.WS_STATE_UPDATED),
|
|
@@ -101,6 +100,7 @@ class TestPrinterSocketStore {
|
|
|
101
100
|
this.logger.error(`Test harness error ${(0, _errorutils.errorSummary)(e)}`);
|
|
102
101
|
(0, _node.captureException)(e);
|
|
103
102
|
} finally{
|
|
103
|
+
this.testSocket.disallowEmittingEvents();
|
|
104
104
|
if (this.testSocket) {
|
|
105
105
|
this.testSocket.close();
|
|
106
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/state/test-printer-socket.store.ts"],"names":["TestPrinterSocketStore","testSocket","socketIoGateway","socketFactory","eventEmitter2","logger","constructor","loggerFactory","name","setupTestPrinter","printer","close","validatedData","validateInput","createTestPrinterRules","enabled","correlationToken","createInstance","printerType","registerCredentials","printerId","loginDto","apiKey","printerURL","
|
|
1
|
+
{"version":3,"sources":["../../src/state/test-printer-socket.store.ts"],"names":["TestPrinterSocketStore","testSocket","socketIoGateway","socketFactory","eventEmitter2","logger","constructor","loggerFactory","name","setupTestPrinter","printer","close","validatedData","validateInput","createTestPrinterRules","enabled","correlationToken","createInstance","printerType","registerCredentials","printerId","loginDto","apiKey","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","open","startTime","setInterval","warn","socketState","SOCKET_STATE","authenticated","race","setTimeout","AppConstants","defaultWebsocketHandshakeTimeout","e","error","errorSummary","captureException","disallowEmittingEvents","emit","printerEvents","printersDeleted","printerIds","off"],"mappings":"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"}
|
package/dist/tasks/boot.task.js
CHANGED
|
@@ -72,7 +72,8 @@ class BootTask {
|
|
|
72
72
|
configService;
|
|
73
73
|
isTypeormMode;
|
|
74
74
|
typeormService;
|
|
75
|
-
|
|
75
|
+
printerThumbnailCache;
|
|
76
|
+
constructor({ loggerFactory, serverTasks, settingsService, settingsStore, multerService, printerSocketStore, printerFilesStore, permissionService, roleService, userService, taskManagerService, pluginRepositoryCache, floorStore, pluginFirmwareUpdateService, clientBundleService, configService, typeormService, isTypeormMode, printerThumbnailCache }){
|
|
76
77
|
this.isTypeormMode = isTypeormMode;
|
|
77
78
|
this.logger = loggerFactory(BootTask.name);
|
|
78
79
|
this.serverTasks = serverTasks;
|
|
@@ -91,6 +92,7 @@ class BootTask {
|
|
|
91
92
|
this.clientBundleService = clientBundleService;
|
|
92
93
|
this.configService = configService;
|
|
93
94
|
this.typeormService = typeormService;
|
|
95
|
+
this.printerThumbnailCache = printerThumbnailCache;
|
|
94
96
|
}
|
|
95
97
|
async runOnce() {
|
|
96
98
|
this.taskManagerService.registerJobOrTask(this.serverTasks.SERVER_BOOT_TASK);
|
|
@@ -153,6 +155,10 @@ class BootTask {
|
|
|
153
155
|
await this.printerFilesStore.loadFilesStore();
|
|
154
156
|
this.logger.log("Loading floor store");
|
|
155
157
|
await this.floorStore.loadStore();
|
|
158
|
+
this.logger.log("Loading printer thumbnail cache");
|
|
159
|
+
await this.printerThumbnailCache.loadCache();
|
|
160
|
+
const length = await this.printerThumbnailCache.getAllValues();
|
|
161
|
+
this.logger.log(`Loaded ${length.length} thumbnail(s)`);
|
|
156
162
|
if (process.env.SAFEMODE_ENABLED === "true") {
|
|
157
163
|
this.logger.warn("Starting in safe mode due to SAFEMODE_ENABLED");
|
|
158
164
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tasks/boot.task.ts"],"names":["BootTask","logger","taskManagerService","serverTasks","settingsStore","settingsService","multerService","printerSocketStore","printerFilesStore","permissionService","roleService","userService","pluginRepositoryCache","floorStore","pluginFirmwareUpdateService","clientBundleService","configService","isTypeormMode","typeormService","constructor","loggerFactory","name","runOnce","registerJobOrTask","SERVER_BOOT_TASK","log","run","createConnection","migrateDatabase","e","mongoose","Error","message","includes","error","scheduleDisabledJob","DITokens","bootTask","loadSettings","syncPermissions","syncRoles","isDemoMode","warn","AppConstants","OVERRIDE_IS_DEMO_MODE","createOrUpdateDemoAccount","setLoginRequired","setRegistrationEnabled","loginRequired","get","OVERRIDE_LOGIN_REQUIRED","registrationEnabled","OVERRIDE_REGISTRATION_ENABLED","overrideJwtSecret","OVERRIDE_JWT_SECRET","undefined","overrideJwtExpiresIn","OVERRIDE_JWT_EXPIRES_IN","persistOptionalCredentialSettings","clearUploadsFolder","loadPrinterSockets","loadFilesStore","loadStore","process","env","SAFEMODE_ENABLED","BOOT_TASKS","forEach","task","disableJob","demoUsername","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","demoPassword","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","demoRole","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","adminRole","getRoleByName","demoUserId","getDemoUserId","register","username","password","isDemoUser","isVerified","isRootUser","needsPasswordChange","roles","id","setVerifiedById","setIsRootUserById","updatePasswordUnsafeByUsername","setUserRoleIds","envUrl","fetchMongoDBConnectionString","connect","serverSelectionTimeoutMS","syncIndexes","runMigrations","connection","db","getClient"],"mappings":";;;;+
|
|
1
|
+
{"version":3,"sources":["../../src/tasks/boot.task.ts"],"names":["BootTask","logger","taskManagerService","serverTasks","settingsStore","settingsService","multerService","printerSocketStore","printerFilesStore","permissionService","roleService","userService","pluginRepositoryCache","floorStore","pluginFirmwareUpdateService","clientBundleService","configService","isTypeormMode","typeormService","printerThumbnailCache","constructor","loggerFactory","name","runOnce","registerJobOrTask","SERVER_BOOT_TASK","log","run","createConnection","migrateDatabase","e","mongoose","Error","message","includes","error","scheduleDisabledJob","DITokens","bootTask","loadSettings","syncPermissions","syncRoles","isDemoMode","warn","AppConstants","OVERRIDE_IS_DEMO_MODE","createOrUpdateDemoAccount","setLoginRequired","setRegistrationEnabled","loginRequired","get","OVERRIDE_LOGIN_REQUIRED","registrationEnabled","OVERRIDE_REGISTRATION_ENABLED","overrideJwtSecret","OVERRIDE_JWT_SECRET","undefined","overrideJwtExpiresIn","OVERRIDE_JWT_EXPIRES_IN","persistOptionalCredentialSettings","clearUploadsFolder","loadPrinterSockets","loadFilesStore","loadStore","loadCache","length","getAllValues","process","env","SAFEMODE_ENABLED","BOOT_TASKS","forEach","task","disableJob","demoUsername","OVERRIDE_DEMO_USERNAME","DEFAULT_DEMO_USERNAME","demoPassword","OVERRIDE_DEMO_PASSWORD","DEFAULT_DEMO_PASSWORD","demoRole","OVERRIDE_DEMO_ROLE","DEFAULT_DEMO_ROLE","adminRole","getRoleByName","demoUserId","getDemoUserId","register","username","password","isDemoUser","isVerified","isRootUser","needsPasswordChange","roles","id","setVerifiedById","setIsRootUserById","updatePasswordUnsafeByUsername","setUserRoleIds","envUrl","fetchMongoDBConnectionString","connect","serverSelectionTimeoutMS","syncIndexes","runMigrations","connection","db","getClient"],"mappings":"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"}
|
|
@@ -75,9 +75,6 @@ class KeyDiffCache {
|
|
|
75
75
|
if (!keyString?.length) {
|
|
76
76
|
throw new Error("Key must be a non-empty serializable string");
|
|
77
77
|
}
|
|
78
|
-
if (this.deletedKeys.includes(keyString)) {
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
78
|
this.keyValueStore[keyString] = value;
|
|
82
79
|
if (markUpdated) {
|
|
83
80
|
this.markUpdated(keyString);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/cache/key-diff.cache.ts"],"names":["KeyDiffCache","deletedKeys","updatedKeys","keyValueStore","getAllValues","keys","Object","getValuesBatch","getAllKeyValues","getValue","key","keyString","toString","length","Error","processStateDiffs","updatedValues","resetDiffs","setKeyValuesBatch","keyValues","markUpdated","forEach","value","setKeyValue","map","batchMarkUpdated","deleteKeysBatch","markDeleted","deleteKeyValue","batchMarkDeleted","keyStrings","some","values","push","convertToKeyString","includes","splice","indexOf"],"mappings":";;;;+BAEaA;;;eAAAA;;;AAAN,MAAMA;IACXC,cAAyB,EAAE,CAAC;IAC5BC,cAAyB,EAAE,CAAC;IAElBC,gBAAsC,CAAC,EAAE;IAEnD,MAAaC,eAAkC;QAC7C,MAAMC,OAAOC,OAAOD,IAAI,CAAC,IAAI,CAACF,aAAa;QAC3C,OAAQ,MAAM,IAAI,CAACI,cAAc,CAACF;IACpC;IAEA,MAAaG,kBAAkB;QAC7B,OAAO,IAAI,CAACL,aAAa;IAC3B;IAEA,MAAaM,SAASC,GAAY,EAAc;QAC9C,MAAMC,YAAYD,KAAKE;QACvB,IAAI,CAACD,WAAWE,QAAQ;YACtB,MAAM,IAAIC,MAAM;QAClB;QACA,OAAO,IAAI,CAACX,aAAa,CAACQ,UAAU;IACtC;IAEA,MAAMI,oBAAoB;QACxB,MAAMb,cAAc;eAAI,IAAI,CAACA,WAAW;SAAC;QACzC,MAAMc,gBAAgB,MAAM,IAAI,CAACT,cAAc,CAACL;QAChD,MAAMD,cAAc;eAAI,IAAI,CAACA,WAAW;SAAC;QAEzC,IAAI,CAACgB,UAAU;QACf,OAAO;YACLf;YACAc;YACAf;QACF;IACF;IAEA,MAAgBiB,kBAAkBC,SAA4C,EAAEC,cAAuB,IAAI,EAAE;QAC3GD,UAAUE,OAAO,CAAC,CAAC,EAAEX,GAAG,EAAEY,KAAK,EAAE;YAC/B,IAAI,CAACC,WAAW,CAACb,KAAKY;QACxB;QACA,IAAIF,aAAa;YACf,MAAMlB,cAAciB,UAAUK,GAAG,CAAC,CAAC,EAAEd,GAAG,EAAE,GAAKA;YAC/C,IAAI,CAACe,gBAAgB,CAACvB;QACxB;IACF;IAEA,MAAgBwB,gBAAgBrB,IAAoB,EAAEsB,cAAuB,IAAI,EAAE;QACjFtB,KAAKgB,OAAO,CAAC,CAACX;YACZ,IAAI,CAACkB,cAAc,CAAClB;QACtB;QACA,IAAIiB,aAAa;YACf,IAAI,CAACE,gBAAgB,CAACxB;QACxB;IACF;IAEA,MAAgBE,eAAeF,IAAoB,EAAqB;QACtE,MAAMyB,aAAazB,KAAKmB,GAAG,CAAC,CAACd,MAAQA,KAAKE;QAC1C,IAAIkB,WAAWC,IAAI,CAAC,CAACrB,MAAQ,CAACA,KAAKG,SAAS;YAC1C,MAAM,IAAIC,MAAM;QAClB;QAEA,MAAMkB,SAAS,EAAE;QACjB,KAAK,MAAMrB,aAAamB,WAAY;YAClC,MAAMR,QAAQ,MAAM,IAAI,CAACb,QAAQ,CAACE,UAAUC,QAAQ;YACpDoB,OAAOC,IAAI,CAACX;QACd;QACA,OAAOU;IACT;IAEA,MAAgBT,YAAYb,GAAY,EAAEY,KAAQ,EAAEF,cAAuB,IAAI,EAAE;QAC/E,MAAMT,YAAY,IAAI,CAACuB,kBAAkB,CAACxB;QAC1C,IAAI,CAACC,WAAWE,QAAQ;YACtB,MAAM,IAAIC,MAAM;QAClB;
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/cache/key-diff.cache.ts"],"names":["KeyDiffCache","deletedKeys","updatedKeys","keyValueStore","getAllValues","keys","Object","getValuesBatch","getAllKeyValues","getValue","key","keyString","toString","length","Error","processStateDiffs","updatedValues","resetDiffs","setKeyValuesBatch","keyValues","markUpdated","forEach","value","setKeyValue","map","batchMarkUpdated","deleteKeysBatch","markDeleted","deleteKeyValue","batchMarkDeleted","keyStrings","some","values","push","convertToKeyString","includes","splice","indexOf"],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
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: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
gcodeScanningChunkSize: function() {
|
|
13
|
+
return gcodeScanningChunkSize;
|
|
14
|
+
},
|
|
15
|
+
readLastLinesLocal: function() {
|
|
16
|
+
return readLastLinesLocal;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _promises = require("node:fs/promises");
|
|
20
|
+
const gcodeScanningChunkSize = 64 * 1024;
|
|
21
|
+
async function readLastLinesLocal(filePath, numberOfLines) {
|
|
22
|
+
const file = await (0, _promises.open)(filePath, "r");
|
|
23
|
+
try {
|
|
24
|
+
const buffer = Buffer.alloc(gcodeScanningChunkSize);
|
|
25
|
+
const fileSize = await file.stat();
|
|
26
|
+
let lines = [];
|
|
27
|
+
let position = fileSize.size;
|
|
28
|
+
let iterationsLeft = 100;
|
|
29
|
+
while(lines.length <= numberOfLines && position > 0){
|
|
30
|
+
iterationsLeft--;
|
|
31
|
+
if (iterationsLeft <= 0) {
|
|
32
|
+
throw new Error("Too many iterations reached, 'readLastLines' aborted");
|
|
33
|
+
}
|
|
34
|
+
const bytesToRead = Math.min(gcodeScanningChunkSize, position);
|
|
35
|
+
position -= bytesToRead;
|
|
36
|
+
await file.read(buffer, 0, bytesToRead, position);
|
|
37
|
+
const chunk = buffer.toString("utf-8", 0, bytesToRead);
|
|
38
|
+
lines = chunk.split("\n").concat(lines);
|
|
39
|
+
await file.close();
|
|
40
|
+
}
|
|
41
|
+
return lines.slice(-numberOfLines);
|
|
42
|
+
} catch (e) {
|
|
43
|
+
await file.close();
|
|
44
|
+
throw e;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=gcode.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/gcode.utils.ts"],"names":["gcodeScanningChunkSize","readLastLinesLocal","filePath","numberOfLines","file","open","buffer","Buffer","alloc","fileSize","stat","lines","position","size","iterationsLeft","length","Error","bytesToRead","Math","min","read","chunk","toString","split","concat","close","slice","e"],"mappings":";;;;;;;;;;;IAEaA,sBAAsB;eAAtBA;;IAMSC,kBAAkB;eAAlBA;;;0BARD;AAEd,MAAMD,yBAAyB,KAAK;AAMpC,eAAeC,mBAAmBC,QAAgB,EAAEC,aAAqB;IAC9E,MAAMC,OAAO,MAAMC,IAAAA,cAAI,EAACH,UAAU;IAElC,IAAI;QACF,MAAMI,SAASC,OAAOC,KAAK,CAACR;QAC5B,MAAMS,WAAW,MAAML,KAAKM,IAAI;QAChC,IAAIC,QAAkB,EAAE;QACxB,IAAIC,WAAWH,SAASI,IAAI;QAC5B,IAAIC,iBAAiB;QAErB,MAAOH,MAAMI,MAAM,IAAIZ,iBAAiBS,WAAW,EAAG;YACpDE;YACA,IAAIA,kBAAkB,GAAG;gBACvB,MAAM,IAAIE,MAAM;YAClB;YAEA,MAAMC,cAAcC,KAAKC,GAAG,CAACnB,wBAAwBY;YACrDA,YAAYK;YAEZ,MAAMb,KAAKgB,IAAI,CAACd,QAAQ,GAAGW,aAAaL;YACxC,MAAMS,QAAQf,OAAOgB,QAAQ,CAAC,SAAS,GAAGL;YAG1CN,QAAQU,MAAME,KAAK,CAAC,MAAMC,MAAM,CAACb;YAEjC,MAAMP,KAAKqB,KAAK;QAClB;QAEA,OAAOd,MAAMe,KAAK,CAAC,CAACvB;IACtB,EAAE,OAAOwB,GAAG;QACV,MAAMvB,KAAKqB,KAAK;QAChB,MAAME;IACR;AACF"}
|
|
@@ -19,7 +19,7 @@ const supportedProtocols = new Set([
|
|
|
19
19
|
const hasCustomProtocol = (urlString)=>{
|
|
20
20
|
try {
|
|
21
21
|
const { protocol } = new URL(urlString);
|
|
22
|
-
return protocol.endsWith(":") && !supportedProtocols.has(protocol);
|
|
22
|
+
return protocol.endsWith(":") && !protocol.includes(".") && !supportedProtocols.has(protocol);
|
|
23
23
|
} catch {
|
|
24
24
|
return false;
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/normalize-url.ts"],"names":["normalizeUrl","DATA_URL_DEFAULT_MIME_TYPE","DATA_URL_DEFAULT_CHARSET","testParameter","name","filters","some","filter","RegExp","test","supportedProtocols","Set","hasCustomProtocol","urlString","protocol","URL","endsWith","has","normalizeDataURL","stripHash","match","exec","Error","type","data","hash","groups","mediaType","split","isBase64","length","pop","mimeType","shift","toLowerCase","attributes","map","attribute","key","value","string","trim","Boolean","normalizedMediaType","push","unshift","join","options","defaultProtocol","normalizeProtocol","forceHttp","forceHttps","stripAuthentication","stripTextFragment","stripWWW","removeQueryParameters","removeTrailingSlash","removeSingleSlash","removeDirectoryIndex","removeExplicitPort","sortQueryParameters","hasRelativeProtocol","startsWith","isRelativeUrl","replace","urlObject","username","password","pathname","protocolRegex","lastIndex","result","protocolAtIndex","index","intermediate","slice","remnant","decodeURI","Array","isArray","pathComponents","lastComponent","hostname","searchParams","keys","delete","keepQueryParameters","search","sort","decodeURIComponent","port","oldUrlString","toString","stripProtocol"],"mappings":";;;;+
|
|
1
|
+
{"version":3,"sources":["../../src/utils/normalize-url.ts"],"names":["normalizeUrl","DATA_URL_DEFAULT_MIME_TYPE","DATA_URL_DEFAULT_CHARSET","testParameter","name","filters","some","filter","RegExp","test","supportedProtocols","Set","hasCustomProtocol","urlString","protocol","URL","endsWith","includes","has","normalizeDataURL","stripHash","match","exec","Error","type","data","hash","groups","mediaType","split","isBase64","length","pop","mimeType","shift","toLowerCase","attributes","map","attribute","key","value","string","trim","Boolean","normalizedMediaType","push","unshift","join","options","defaultProtocol","normalizeProtocol","forceHttp","forceHttps","stripAuthentication","stripTextFragment","stripWWW","removeQueryParameters","removeTrailingSlash","removeSingleSlash","removeDirectoryIndex","removeExplicitPort","sortQueryParameters","hasRelativeProtocol","startsWith","isRelativeUrl","replace","urlObject","username","password","pathname","protocolRegex","lastIndex","result","protocolAtIndex","index","intermediate","slice","remnant","decodeURI","Array","isArray","pathComponents","lastComponent","hostname","searchParams","keys","delete","keepQueryParameters","search","sort","decodeURIComponent","port","oldUrlString","toString","stripProtocol"],"mappings":"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"}
|
package/dist/utils/url.utils.js
CHANGED
|
@@ -17,16 +17,17 @@ _export(exports, {
|
|
|
17
17
|
}
|
|
18
18
|
});
|
|
19
19
|
const _normalizeurl = require("./normalize-url");
|
|
20
|
-
function httpToWsUrl(url
|
|
21
|
-
const
|
|
22
|
-
wsUrl
|
|
20
|
+
function httpToWsUrl(url) {
|
|
21
|
+
const protocolNormalizedUrl = normalizeURLWithProtocol(url);
|
|
22
|
+
const wsUrl = new URL("/sockjs/websocket", protocolNormalizedUrl);
|
|
23
|
+
wsUrl.protocol = protocolNormalizedUrl.startsWith("https://") ? "wss" : "ws";
|
|
23
24
|
wsUrl.pathname = "/sockjs/websocket";
|
|
24
25
|
return wsUrl;
|
|
25
26
|
}
|
|
26
27
|
function normalizeURLWithProtocol(printerURL) {
|
|
27
28
|
if (!printerURL) return;
|
|
28
29
|
if (!printerURL.startsWith("http://") && !printerURL.startsWith("https://")) {
|
|
29
|
-
printerURL = `
|
|
30
|
+
printerURL = `httpS://${printerURL}`;
|
|
30
31
|
}
|
|
31
32
|
return (0, _normalizeurl.normalizeUrl)(printerURL);
|
|
32
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/url.utils.ts"],"names":["httpToWsUrl","normalizeURLWithProtocol","url","
|
|
1
|
+
{"version":3,"sources":["../../src/utils/url.utils.ts"],"names":["httpToWsUrl","normalizeURLWithProtocol","url","protocolNormalizedUrl","wsUrl","URL","protocol","startsWith","pathname","printerURL","normalizeUrl"],"mappings":";;;;;;;;;;;IAEgBA,WAAW;eAAXA;;IAQAC,wBAAwB;eAAxBA;;;8BAVa;AAEtB,SAASD,YAAYE,GAAW;IACrC,MAAMC,wBAAwBF,yBAAyBC;IACvD,MAAME,QAAQ,IAAIC,IAAI,qBAAqBF;IAC3CC,MAAME,QAAQ,GAAGH,sBAAsBI,UAAU,CAAC,cAAc,QAAQ;IACxEH,MAAMI,QAAQ,GAAG;IACjB,OAAOJ;AACT;AAEO,SAASH,yBAAyBQ,UAAkB;IACzD,IAAI,CAACA,YAAY;IAEjB,IAAI,CAACA,WAAWF,UAAU,CAAC,cAAc,CAACE,WAAWF,UAAU,CAAC,aAAa;QAC3EE,aAAa,CAAC,QAAQ,EAAEA,YAAY;IACtC;IAEA,OAAOC,IAAAA,0BAAY,EAACD;AACtB"}
|