diff --git a/packages/svelte/src/toolbar/configure.js b/packages/svelte/src/toolbar/configure.js index 3b491b502c..7ea6282945 100644 --- a/packages/svelte/src/toolbar/configure.js +++ b/packages/svelte/src/toolbar/configure.js @@ -10,15 +10,16 @@ const config = { * @param {Partial} options */ export function configure(options) { - for (const [key, value] of options) { + for (const [key, value] of Object.entries(options)) { if (key === 'tools') { for (let tool of /** @type {import('./public.d.ts').Config.tools[0][]}*/ value) { if(typeof tool === 'function') { - tool = tool(); + tool = tool(); // TODO lazy init? } + /** @type {import('./public.d.ts').Tool}*/ const existing = config.tools.find((t) => t.name === tool.name); if (existing) { - for (const [k, v] of tool) { + for (const [k, v] of Object.entries(tool)) { existing[k] = v; } } else { diff --git a/packages/svelte/src/toolbar/public.d.ts b/packages/svelte/src/toolbar/public.d.ts index 87a05ba716..aa2d16894e 100644 --- a/packages/svelte/src/toolbar/public.d.ts +++ b/packages/svelte/src/toolbar/public.d.ts @@ -3,8 +3,8 @@ export * from './index.js'; export interface Tool { name: string; icon: string; // url or svg - activate(); - deactivate(); + activate:()=>void; + deactivate:()=>void; keyCombo?: string; disabled?: boolean; }