diff --git a/package-lock.json b/package-lock.json index 68205a730..9e799ca9e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -59,7 +59,7 @@ "sass": "~1.32", "sass-loader": "^13.3.2", "semver": "^7.5.4", - "simple-keyboard": "^3.7.34", + "simple-keyboard": "^3.7.35", "stylus": "^0.59.0", "stylus-loader": "^7.1.3", "turbo-crc32": "^1.0.1", @@ -2004,9 +2004,9 @@ } }, "node_modules/@duet3d/objectmodel": { - "version": "3.5.0-rc.6", - "resolved": "https://registry.npmjs.org/@duet3d/objectmodel/-/objectmodel-3.5.0-rc.6.tgz", - "integrity": "sha512-mI4ed40y2uANk7E3L2MiYvwMxgndemtxOYIKElm3G2DcojQQc6IvuSpy7VK9JHVscQEHutxDr4E2kgvSpa4skQ==", + "version": "3.5.0-rc.7", + "resolved": "https://registry.npmjs.org/@duet3d/objectmodel/-/objectmodel-3.5.0-rc.7.tgz", + "integrity": "sha512-kVwOTs0g+ZMKZCJa3WsVR7oYIKfW0/J5DLMljTFZtP0AG8PZh/IQoGHuxfJEKmKUgZEmSW1FTBlhXqt+meASOw==", "dev": true }, "node_modules/@fortawesome/fontawesome-common-types": { @@ -2463,9 +2463,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.44.8", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.8.tgz", - "integrity": "sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw==", + "version": "8.44.9", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.9.tgz", + "integrity": "sha512-6yBxcvwnnYoYT1Uk2d+jvIfsuP4mb2EdIxFnrPABj5a/838qe5bGkNLFOiipX4ULQ7XVQvTxOh7jO+BTAiqsEw==", "dev": true, "dependencies": { "@types/estree": "*", @@ -2607,9 +2607,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "18.2.43", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.43.tgz", - "integrity": "sha512-nvOV01ZdBdd/KW6FahSbcNplt2jCJfyWdTos61RYHV+FVv5L/g9AOX1bmbVcWcLFL8+KHQfh1zVIQrud6ihyQA==", + "version": "18.2.45", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.45.tgz", + "integrity": "sha512-TtAxCNrlrBp8GoeEp1npd5g+d/OejJHFxS3OWmrPBMFaVQMSN0OFySozJio5BHxTuTeug00AVXVAjfDSfk+lUg==", "dev": true, "peer": true, "dependencies": { @@ -4490,9 +4490,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001568", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001568.tgz", - "integrity": "sha512-vSUkH84HontZJ88MiNrOau1EBrCqEQYgkC5gIySiDlpsm8sGVrhU7Kx4V6h0tnqaHzIHZv08HlJIwPbL4XL9+A==", + "version": "1.0.30001570", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz", + "integrity": "sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==", "dev": true, "funding": [ { @@ -6324,9 +6324,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.609", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.609.tgz", - "integrity": "sha512-ihiCP7PJmjoGNuLpl7TjNA8pCQWu09vGyjlPYw1Rqww4gvNuCcmvl+44G+2QyJ6S2K4o+wbTS++Xz0YN8Q9ERw==", + "version": "1.4.612", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.612.tgz", + "integrity": "sha512-dM8BMtXtlH237ecSMnYdYuCkib2QHq0kpWfUnavjdYsyr/6OsAwg5ZGUfnQ9KD1Ga4QgB2sqXlB2NT8zy2GnVg==", "dev": true }, "node_modules/emoji-regex": { @@ -11769,9 +11769,9 @@ "dev": true }, "node_modules/simple-keyboard": { - "version": "3.7.34", - "resolved": "https://registry.npmjs.org/simple-keyboard/-/simple-keyboard-3.7.34.tgz", - "integrity": "sha512-UlyZ6uzKNvmzwSED7Iv5/R3cumimXvmMf+nk2LUKYuGTrz8iG+dYiPlSkQIAA7TKrEg3uHZuyGnXMfKw0cvG9Q==", + "version": "3.7.35", + "resolved": "https://registry.npmjs.org/simple-keyboard/-/simple-keyboard-3.7.35.tgz", + "integrity": "sha512-EhHJuqihBDyuhY9BOXfPslbKYyBQEXbUOBMo2SBkaQzZmXxGHacwi/KmK3hQCkuRFAHpXeKTef15mtJfMrgC/Q==", "dev": true }, "node_modules/sirv": { @@ -13485,9 +13485,9 @@ } }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.15.0.tgz", - "integrity": "sha512-H/Z3H55mrcrgjFwI+5jKavgXvwQLtfPCUEp6pi35VhoB0pfcHnSoyuTzkBEZpzq49g1193CUEwIvmsjcotenYw==", + "version": "8.15.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.15.1.tgz", + "integrity": "sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==", "dev": true, "engines": { "node": ">=10.0.0" @@ -13585,9 +13585,9 @@ } }, "node_modules/whatwg-fetch": { - "version": "3.6.19", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.19.tgz", - "integrity": "sha512-d67JP4dHSbm2TrpFj8AbO8DnL1JXL5J9u0Kq2xW6d0TFDbCA3Muhdt8orXC22utleTVj7Prqt82baN6RBvnEgw==", + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", "dev": true }, "node_modules/whatwg-url": { diff --git a/package.json b/package.json index 0f8949dd2..9525681c0 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "sass": "~1.32", "sass-loader": "^13.3.2", "semver": "^7.5.4", - "simple-keyboard": "^3.7.34", + "simple-keyboard": "^3.7.35", "stylus": "^0.59.0", "stylus-loader": "^7.1.3", "turbo-crc32": "^1.0.1", diff --git a/src/components/dialogs/FileEditDialog.vue b/src/components/dialogs/FileEditDialog.vue index 2df2ff3e7..540933a6d 100644 --- a/src/components/dialogs/FileEditDialog.vue +++ b/src/components/dialogs/FileEditDialog.vue @@ -193,6 +193,10 @@ export default Vue.extend({ this.close(true); try { + if (this.filename.endsWith("/daemon.g")) { + // daemon.g may be still open and running at this time, move it first + await store.dispatch("machine/move", { from: this.filename, to: this.filename + ".bak", force: true }); + } await store.dispatch("machine/upload", { filename: this.filename, content }); this.$emit("editComplete", this.filename); } catch (e) { diff --git a/src/store/machine/connector/PollConnector.ts b/src/store/machine/connector/PollConnector.ts index 64324a8fd..7a555e44c 100644 --- a/src/store/machine/connector/PollConnector.ts +++ b/src/store/machine/connector/PollConnector.ts @@ -933,7 +933,7 @@ export default class PollConnector extends BaseConnector { deleteexisting: force ? "yes" : "no" }, "json", null, this.requestTimeout, from); - if (response.err !== 0) { + if (!force && response.err !== 0) { throw new OperationFailedError(`err ${response.err}`); } }