@@ -10,6 +10,7 @@ import { useSavedState } from "../../utils/saveload";
1010import { useGetFilamentsByIds } from "../filaments/functions" ;
1111import { IFilament } from "../filaments/model" ;
1212import {
13+ getConfiguredBaseUrl ,
1314 SpoolQRCodePrintSettings ,
1415 renderLabelContents ,
1516 renderTemplateText ,
@@ -29,18 +30,8 @@ interface FilamentQRCodeExportDialogProps {
2930const FilamentQRCodeExportDialog = ( { filamentIds } : FilamentQRCodeExportDialogProps ) => {
3031 const t = useTranslate ( ) ;
3132 const baseUrlSetting = useGetSetting ( "base_url" ) ;
32- let parsedBaseUrl = "" ;
33- if ( baseUrlSetting . data ?. value !== undefined ) {
34- try {
35- parsedBaseUrl = JSON . parse ( baseUrlSetting . data . value ) ?? "" ;
36- } catch {
37- // Older or manually edited settings may already be stored as a raw string.
38- parsedBaseUrl = baseUrlSetting . data . value ;
39- }
40- }
41- // Fall back to the current origin so QR export previews still work before `base_url`
42- // is configured explicitly.
43- const baseUrlRoot = parsedBaseUrl !== "" ? parsedBaseUrl : window . location . origin ;
33+ // Accept both JSON-backed settings and legacy plain strings so old `base_url` values do not crash the dialog.
34+ const baseUrlRoot = getConfiguredBaseUrl ( baseUrlSetting . data ?. value , window . location . origin ) ;
4435 const [ messageApi , contextHolder ] = message . useMessage ( ) ;
4536 const [ useHTTPUrl , setUseHTTPUrl ] = useSavedState ( "export-useHTTPUrl-filament" , false ) ;
4637
0 commit comments