Skip to content

Commit ebe59c2

Browse files
committed
Merge branch 'develop'
Signed-off-by: Pedro Lamas <[email protected]>
2 parents 238dba1 + fda559a commit ebe59c2

File tree

101 files changed

+4306
-737
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+4306
-737
lines changed

.husky/pre-commit

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
FILES_TO_LINT=$(git diff --cached --name-only --diff-filter=ACMR | grep -iE "\.(js|jsx|mjs|ts|tsx|vue)$" || true)
1+
FILES_TO_LINT=$(git diff --cached --name-only --diff-filter=ACMR | grep -iE "\.(js|mjs|ts|vue)$" || true)
22

33
if [ -n "$FILES_TO_LINT" ]; then
44
npx --no eslint -- --max-warnings 0 $FILES_TO_LINT
55
fi
66

7-
SVG_FILES=$(git diff --cached --name-only --diff-filter=ACMR | grep -iE "\.(svg)$" || true)
7+
FILES_TO_OPTIMIZE_SVG=$(git diff --cached --name-only --diff-filter=ACMR | grep -iE "^src\/globals\.ts$|\.(vue|svg)$" || true)
88

9-
if [ -n "$SVG_FILES" ]; then
10-
npx --no svgo -- -q $SVG_FILES
9+
if [ -n "$FILES_TO_OPTIMIZE_SVG" ]; then
10+
node tools/svgo.mjs $FILES_TO_OPTIMIZE_SVG
1111

1212
git update-index --again
1313
fi

.versionrc.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@
2121
"hidden": true
2222
},
2323
{
24-
"type": "refactor",
25-
"section": "Code Refactorings"
24+
"type": "perf",
25+
"section": "Performance Improvements"
2626
},
2727
{
28-
"type": "perf",
29-
"hidden": true
28+
"type": "refactor",
29+
"section": "Code Refactorings"
3030
},
3131
{
3232
"type": "test",

package-lock.json

Lines changed: 141 additions & 239 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@
3838
"@jaames/iro": "^5.5.2",
3939
"axios": "^1.13.2",
4040
"consola": "^3.4.2",
41-
"dompurify": "^3.3.0",
41+
"dompurify": "^3.3.1",
4242
"echarts": "^5.6.0",
4343
"echarts-gl": "^2.0.9",
4444
"hls.js": "^1.6.15",
45-
"ipaddr.js": "^2.2.0",
45+
"ipaddr.js": "^2.3.0",
4646
"jwt-decode": "^4.0.0",
4747
"lodash-es": "^4.17.21",
4848
"marked": "^17.0.1",
@@ -81,7 +81,7 @@
8181
"@types/jsdom": "^27.0.0",
8282
"@types/lodash-es": "^4.17.12",
8383
"@types/md5": "^2.3.6",
84-
"@types/node": "^24.10.1",
84+
"@types/node": "^24.10.2",
8585
"@types/semver": "^7.7.1",
8686
"@types/sortablejs": "^1.15.9",
8787
"@vitejs/plugin-vue2": "^2.3.4",
@@ -92,7 +92,7 @@
9292
"eslint-plugin-regexp": "^2.10.0",
9393
"eslint-plugin-vue": "^9.33.0",
9494
"husky": "^9.1.7",
95-
"jsdom": "^27.2.0",
95+
"jsdom": "^27.3.0",
9696
"mockdate": "^3.0.5",
9797
"monaco-vscode-textmate-theme-converter": "^0.1.7",
9898
"neostandard": "^0.12.2",
@@ -102,17 +102,17 @@
102102
"standard-version": "^9.5.0",
103103
"svgo": "^4.0.0",
104104
"typescript": "^5.9.3",
105-
"typescript-eslint": "^8.48.0",
105+
"typescript-eslint": "^8.49.0",
106106
"unplugin-vue-components": "^30.0.0",
107107
"vite": "^6.4.1",
108-
"vite-plugin-checker": "^0.11.0",
108+
"vite-plugin-checker": "^0.12.0",
109109
"vite-plugin-monaco-editor-esm": "^2.0.2",
110-
"vite-plugin-pwa": "^1.1.0",
110+
"vite-plugin-pwa": "^1.2.0",
111111
"vitest": "^3.2.4",
112112
"vue-debounce-decorator": "^1.0.1",
113113
"vue-i18n-extract": "^2.0.7",
114114
"vue-template-compiler": "^2.7.16",
115-
"vue-tsc": "^3.0.8",
115+
"vue-tsc": "~3.0.8",
116116
"workbox-build": "^7.4.0",
117117
"workbox-core": "^7.4.0",
118118
"workbox-precaching": "^7.4.0",

src/api/httpClientActions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export type AxiosRequestConfigForReturnType<T = unknown, D = unknown> = AxiosReq
1010
? { responseType: 'blob' }
1111
: T extends FormData
1212
? { responseType: 'formdata' }
13-
: {}
13+
: unknown
1414
)
1515

1616
export const httpClientActions = {

src/components/layout/AppNotificationMenu.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ export default class AppNotificationMenu extends Mixins(BrowserMixin) {
191191
*/
192192
get color () {
193193
if (this.notifications.length <= 0) return undefined
194-
let c
194+
let c: string | undefined
195195
for (const n of this.notifications) {
196196
if (n.type === 'warning' && c !== 'error') c = 'warning'
197197
if (n.type === 'error' && c !== 'error') {

src/components/settings/GcodePreviewSettings.vue

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
<v-divider />
4040

4141
<app-setting :title="$t('app.setting.label.default_min_layer_height')">
42-
<v-text-field
42+
<app-text-field
4343
:value="minLayerHeight"
4444
:rules="[
4545
$rules.required,
@@ -51,14 +51,15 @@
5151
single-line
5252
hide-details="auto"
5353
suffix="mm"
54-
@change="setMinLayerHeight"
54+
submit-on-change
55+
@submit="setMinLayerHeight"
5556
/>
5657
</app-setting>
5758

5859
<v-divider />
5960

6061
<app-setting :title="$t('app.setting.label.extrusion_line_width')">
61-
<v-text-field
62+
<app-text-field
6263
:value="extrusionLineWidth"
6364
:rules="[
6465
$rules.required,
@@ -70,14 +71,15 @@
7071
single-line
7172
hide-details="auto"
7273
suffix="mm"
73-
@change="setExtrusionLineWidth"
74+
submit-on-change
75+
@submit="setExtrusionLineWidth"
7476
/>
7577
</app-setting>
7678

7779
<v-divider />
7880

7981
<app-setting :title="$t('app.setting.label.move_line_width')">
80-
<v-text-field
82+
<app-text-field
8183
:value="moveLineWidth"
8284
:rules="[
8385
$rules.required,
@@ -89,14 +91,15 @@
8991
single-line
9092
hide-details="auto"
9193
suffix="mm"
92-
@change="setMoveLineWidth"
94+
submit-on-change
95+
@submit="setMoveLineWidth"
9396
/>
9497
</app-setting>
9598

9699
<v-divider />
97100

98101
<app-setting :title="$t('app.setting.label.retraction_icon_size')">
99-
<v-text-field
102+
<app-text-field
100103
:value="retractionIconSize"
101104
:rules="[
102105
$rules.required,
@@ -108,7 +111,8 @@
108111
single-line
109112
hide-details="auto"
110113
suffix="mm"
111-
@change="setRetractionIconSize"
114+
submit-on-change
115+
@submit="setRetractionIconSize"
112116
/>
113117
</app-setting>
114118

src/components/settings/GeneralSettings.vue

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
class="mb-4"
1010
>
1111
<app-setting :title="$t('app.setting.label.printer_name')">
12-
<v-text-field
13-
ref="instanceName"
12+
<app-text-field
1413
filled
1514
dense
1615
single-line
@@ -20,7 +19,8 @@
2019
]"
2120
:value="instanceName"
2221
:default-value="$globals.APP_NAME"
23-
@change="setInstanceName"
22+
submit-on-change
23+
@submit="setInstanceName"
2424
/>
2525
</app-setting>
2626

@@ -275,7 +275,6 @@
275275
import { Component, Mixins, Ref } from 'vue-property-decorator'
276276
import StateMixin from '@/mixins/state'
277277
import BrowserMixin from '@/mixins/browser'
278-
import type { VInput } from '@/types'
279278
import { SupportedLocales, DateFormats, TimeFormats } from '@/globals'
280279
import type { OutputPin } from '@/store/printer/types'
281280
import type { Device } from '@/store/power/types'
@@ -290,9 +289,6 @@ import downloadUrl from '@/util/download-url'
290289
291290
@Component({})
292291
export default class GeneralSettings extends Mixins(StateMixin, BrowserMixin) {
293-
@Ref('instanceName')
294-
readonly instanceNameElement!: VInput
295-
296292
@Ref('uploadSettingsFile')
297293
readonly uploadSettingsFile!: HTMLInputElement
298294
@@ -301,7 +297,7 @@ export default class GeneralSettings extends Mixins(StateMixin, BrowserMixin) {
301297
}
302298
303299
setInstanceName (value: string) {
304-
if (this.instanceNameElement.valid) this.$typedDispatch('config/updateInstance', value)
300+
this.$typedDispatch('config/updateInstance', value)
305301
}
306302
307303
get locale (): string {

src/components/settings/ToolheadSettings.vue

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@
217217
</template>
218218

219219
<app-setting :title="$t('app.setting.label.default_toolhead_xy_speed')">
220-
<v-text-field
220+
<app-text-field
221221
:value="defaultToolheadXYSpeed"
222222
:rules="[
223223
$rules.required,
@@ -229,14 +229,15 @@
229229
single-line
230230
hide-details="auto"
231231
suffix="mm/s"
232-
@change="setDefaultToolheadYXSpeed"
232+
submit-on-change
233+
@submit="setDefaultToolheadXYSpeed"
233234
/>
234235
</app-setting>
235236

236237
<v-divider />
237238

238239
<app-setting :title="$t('app.setting.label.default_toolhead_z_speed')">
239-
<v-text-field
240+
<app-text-field
240241
:value="defaultToolheadZSpeed"
241242
:rules="[
242243
$rules.required,
@@ -248,7 +249,8 @@
248249
single-line
249250
hide-details="auto"
250251
suffix="mm/s"
251-
@change="setDefaultToolheadZSpeed"
252+
submit-on-change
253+
@submit="setDefaultToolheadZSpeed"
252254
/>
253255
</app-setting>
254256

@@ -278,7 +280,7 @@
278280
<v-divider />
279281

280282
<app-setting :title="$t('app.setting.label.default_extrude_length')">
281-
<v-text-field
283+
<app-text-field
282284
:value="defaultExtrudeLength"
283285
:rules="[
284286
$rules.required,
@@ -290,14 +292,15 @@
290292
single-line
291293
hide-details="auto"
292294
suffix="mm"
293-
@change="setDefaultExtrudeLength"
295+
submit-on-change
296+
@submit="setDefaultExtrudeLength"
294297
/>
295298
</app-setting>
296299

297300
<v-divider />
298301

299302
<app-setting :title="$t('app.setting.label.default_extrude_speed')">
300-
<v-text-field
303+
<app-text-field
301304
:value="defaultExtrudeSpeed"
302305
:rules="[
303306
$rules.required,
@@ -309,7 +312,8 @@
309312
single-line
310313
hide-details="auto"
311314
suffix="mm/s"
312-
@change="setDefaultExtrudeSpeed"
315+
submit-on-change
316+
@submit="setDefaultExtrudeSpeed"
313317
/>
314318
</app-setting>
315319

@@ -383,7 +387,7 @@
383387
<script lang="ts">
384388
import { Component, Ref, Mixins } from 'vue-property-decorator'
385389
import { defaultState } from '@/store/config/state'
386-
import type { VInput } from '@/types'
390+
import type { VCombobox } from 'vuetify/lib'
387391
import ToolheadMixin from '@/mixins/toolhead'
388392
import type { GeneralConfig, ToolheadControlStyle } from '@/store/config/types'
389393
import type { KlipperPrinterSettings } from '@/store/printer/types'
@@ -393,22 +397,22 @@ import type { KlipperPrinterSettings } from '@/store/printer/types'
393397
})
394398
export default class ToolHeadSettings extends Mixins(ToolheadMixin) {
395399
@Ref('toolheadMoveDistances')
396-
readonly toolheadMoveDistancesElement!: VInput
400+
readonly toolheadMoveDistancesElement!: VCombobox
397401
398402
@Ref('toolheadXYMoveDistances')
399-
readonly toolheadXYMoveDistancesElement!: VInput
403+
readonly toolheadXYMoveDistancesElement!: VCombobox
400404
401405
@Ref('toolheadZMoveDistances')
402-
readonly toolheadZMoveDistancesElement!: VInput
406+
readonly toolheadZMoveDistancesElement!: VCombobox
403407
404408
@Ref('toolheadCircleXYMoveDistances')
405-
readonly toolheadCircleXYMoveDistancesElement!: VInput
409+
readonly toolheadCircleXYMoveDistancesElement!: VCombobox
406410
407411
@Ref('toolheadCircleZMoveDistances')
408-
readonly toolheadCircleZMoveDistancesElement!: VInput
412+
readonly toolheadCircleZMoveDistancesElement!: VCombobox
409413
410414
@Ref('zAdjustValues')
411-
readonly zAdjustValuesElement!: VInput
415+
readonly zAdjustValuesElement!: VCombobox
412416
413417
get defaultExtrudeSpeed (): number {
414418
return this.$typedState.config.uiSettings.general.defaultExtrudeSpeed
@@ -450,7 +454,7 @@ export default class ToolHeadSettings extends Mixins(ToolheadMixin) {
450454
return this.$typedState.config.uiSettings.general.defaultToolheadXYSpeed
451455
}
452456
453-
setDefaultToolheadYXSpeed (value: number) {
457+
setDefaultToolheadXYSpeed (value: number) {
454458
this.$typedDispatch('config/saveByPath', {
455459
path: 'uiSettings.general.defaultToolheadXYSpeed',
456460
value: +value,

0 commit comments

Comments
 (0)