diff --git a/apps/blueprints/src/components/ImageEditor.tsx b/apps/blueprints/src/components/ImageEditor.tsx index cf2c172..8c0af77 100644 --- a/apps/blueprints/src/components/ImageEditor.tsx +++ b/apps/blueprints/src/components/ImageEditor.tsx @@ -41,17 +41,21 @@ export const ImageEditor: React.FC = ({ string, onError }) => // Load editor async, it does not work server side useEffect(() => { (async () => { - const FBE = await import("@fbe/editor"); - const editor = new FBE.Editor(); - const canvas = canvasRef.current; - if (!canvas) return; - await editor.init(canvas, PUBLIC_URL); - canvas.style.width = "100%"; - canvas.style.height = "auto"; - editor.setRendererSize(canvas.offsetWidth, canvas.offsetHeight); - FbeRef.current = FBE; - editorRef.current = editor; - setEditorLoaded(true); + try { + const FBE = await import("@fbe/editor"); + const editor = new FBE.Editor(); + const canvas = canvasRef.current; + if (!canvas) return; + await editor.init(canvas, PUBLIC_URL); + canvas.style.width = "100%"; + canvas.style.height = "auto"; + editor.setRendererSize(canvas.offsetWidth, canvas.offsetHeight); + FbeRef.current = FBE; + editorRef.current = editor; + setEditorLoaded(true); + } catch (error) { + console.log("Failed to init editor", error); + } })(); const resizeFn = () => { diff --git a/apps/blueprints/src/utils/validate.ts b/apps/blueprints/src/utils/validate.ts index cb81f7a..def3552 100644 --- a/apps/blueprints/src/utils/validate.ts +++ b/apps/blueprints/src/utils/validate.ts @@ -81,14 +81,14 @@ export const validateUserForm = (auth: AuthContextProps) => (values: UserFormVal return filterUndefined(errors); }; -export const joinValidations = (...validations: Array<(value: T) => string | undefined>) => ( - value: T -): string | undefined => { - for (let i = 0; i < validations.length; i++) { - const error = validations[i](value); - if (error) return error; - } -}; +export const joinValidations = + (...validations: Array<(value: T) => string | undefined>) => + (value: T): string | undefined => { + for (let i = 0; i < validations.length; i++) { + const error = validations[i](value); + if (error) return error; + } + }; export const validateBlueprintString = (value: string) => { if (value) { @@ -102,7 +102,5 @@ export const validateBlueprintString = (value: string) => { if (!parsed.blueprint && !parsed.blueprint_book) { return "Must have a blueprint or blueprint book"; } - } else { - return "Not recognised as a blueprint string"; } }; diff --git a/libs/database/src/lib/data/blueprint_page.ts b/libs/database/src/lib/data/blueprint_page.ts index dafd196..845f1fe 100644 --- a/libs/database/src/lib/data/blueprint_page.ts +++ b/libs/database/src/lib/data/blueprint_page.ts @@ -130,7 +130,7 @@ export async function searchBlueprintPages({ conditionals.push(sqltag`blueprint_page.tags ${matchSql} array[${join(tags)}::varchar]`); } if (user) { - conditionals.push(sqltag`blueprint_page.user_id = ${user}`); + conditionals.push(sqltag`blueprint_page.user_id = ${user}::uuid`); } if (absolute_snapping) { conditionals.push(sqltag`(blueprint.data -> 'absolute_snapping')::boolean = true`);