From c03711770872d2875507d0f06383ea6f144693f0 Mon Sep 17 00:00:00 2001 From: Faton Ramadani Date: Fri, 12 Apr 2024 16:14:13 +0200 Subject: [PATCH] fix(frontend): Correctly handle undefined actions --- .../src/lib/components/apps/editor/AppEditorHeader.svelte | 5 ++++- frontend/src/lib/components/apps/editor/appUtils.ts | 5 ++++- .../inlineScriptsPanel/InlineScriptsPanelWithTable.svelte | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte b/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte index add0256ff8..f6bb45e670 100644 --- a/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte +++ b/frontend/src/lib/components/apps/editor/AppEditorHeader.svelte @@ -184,7 +184,10 @@ if (c.type === 'tablecomponent') { r.push(...c.actionButtons.map((x) => ({ input: x.componentInput, id: x.id }))) } - if (c.type === 'aggridcomponent' || c.type === 'aggridcomponentee') { + if ( + (c.type === 'aggridcomponent' || c.type === 'aggridcomponentee') && + Array.isArray(c.actions) + ) { r.push(...c.actions.map((x) => ({ input: x.componentInput, id: x.id }))) } if (c.type === 'menucomponent') { diff --git a/frontend/src/lib/components/apps/editor/appUtils.ts b/frontend/src/lib/components/apps/editor/appUtils.ts index 48304b06cc..4550569b74 100644 --- a/frontend/src/lib/components/apps/editor/appUtils.ts +++ b/frontend/src/lib/components/apps/editor/appUtils.ts @@ -170,7 +170,10 @@ export function allsubIds(app: App, parentId: string): string[] { if (item.data.type === 'tablecomponent') { subIds.push(...item.data.actionButtons?.map((x) => x.id)) } - if (item.data.type === 'aggridcomponent' || item.data.type === 'aggridcomponentee') { + if ( + item.data.type === 'aggridcomponent' || + (item.data.type === 'aggridcomponentee' && Array.isArray(item.data.actions)) + ) { subIds.push(...item.data.actions?.map((x) => x.id)) } if (item.data.type === 'menucomponent') { diff --git a/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelWithTable.svelte b/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelWithTable.svelte index 65111cf03a..fa8b626e51 100644 --- a/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelWithTable.svelte +++ b/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelWithTable.svelte @@ -35,7 +35,7 @@ {/if} {#if gridItem?.data?.type === 'aggridcomponent' || (gridItem?.data?.type === 'aggridcomponentee' && Array.isArray(gridItem.data.actions))} - {#each gridItem.data.actions as actionButton, index (index)} + {#each gridItem.data.actions ?? [] as actionButton, index (index)} {#if actionButton?.id === $selectedComponentInEditor || actionButton?.id + '_transformer' === $selectedComponentInEditor}