UNPKG

@getsolara/solara.canvas

Version:

Optional canvas and image manipulation functionality for @getsolara/solara.js

27 lines 1.43 kB
module.exports = { name: "$loadImage", description: "Loads an image for drawing onto the canvas. Stores internally. Args: urlOrPath;[variableName]", takesBrackets: true, execute: async (context, args) => { if (context.client.canvasInitialized === false) { return "[Error: $loadImage requires canvas features to be enabled. Ensure @getsolara/solara.canvas is installed and configured correctly.]"; } if (!args[0]) return "[Error: $loadImage requires an image URL or file path]"; const source = args[0]; const varName = args[1]?.trim() || `loadedImage_${Date.now()}`; try { const { loadImage } = require('canvas'); const image = await loadImage(source); context.localVariables = context.localVariables || new Map(); context.localVariables.set(varName, image); return varName; } catch (e) { if (e.code === 'MODULE_NOT_FOUND' && e.message.includes('canvas')) { console.error("Solara.canvas ($loadImage): 'canvas' module not found. This is a dependency of @getsolara/solara.canvas."); return "[Error: $loadImage - canvas module missing.]"; } console.error(`Solara.canvas Error ($loadImage for source "${source}"):`, e); return `[Error loading image: ${e.message}]`; } } };