From 9f285b32a73ba9b09dbd6d9aea51f206ec114418 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Tue, 7 Nov 2023 13:21:13 +0000 Subject: [PATCH] Allow using ephemeral action context for 'buttons' type settings --- .../ButtonConfiguration/ButtonConfiguration.svelte | 10 +++++++++- .../FieldConfiguration/FieldConfiguration.svelte | 1 + packages/client/manifest.json | 9 ++++++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/components/design/settings/controls/ButtonConfiguration/ButtonConfiguration.svelte b/packages/builder/src/components/design/settings/controls/ButtonConfiguration/ButtonConfiguration.svelte index 6fed8abdba..9126fa0f77 100644 --- a/packages/builder/src/components/design/settings/controls/ButtonConfiguration/ButtonConfiguration.svelte +++ b/packages/builder/src/components/design/settings/controls/ButtonConfiguration/ButtonConfiguration.svelte @@ -4,10 +4,13 @@ import { createEventDispatcher } from "svelte" import { store } from "builderStore" import { Helpers } from "@budibase/bbui" + import { getEventContextBindings } from "builderStore/dataBinding" + export let componentInstance export let componentBindings export let bindings export let value + export let key const dispatch = createEventDispatcher() @@ -15,9 +18,14 @@ $: buttonList = sanitizeValue(value) || [] $: buttonCount = buttonList.length + $: eventContextBindings = getEventContextBindings({ + componentInstance, + settingKey: key, + }) + $: allBindings = [...bindings, ...eventContextBindings] $: itemProps = { componentBindings: componentBindings || [], - bindings, + bindings: allBindings, removeButton, canRemove: true, } diff --git a/packages/builder/src/components/design/settings/controls/FieldConfiguration/FieldConfiguration.svelte b/packages/builder/src/components/design/settings/controls/FieldConfiguration/FieldConfiguration.svelte index 6c74705ab0..c1bf903584 100644 --- a/packages/builder/src/components/design/settings/controls/FieldConfiguration/FieldConfiguration.svelte +++ b/packages/builder/src/components/design/settings/controls/FieldConfiguration/FieldConfiguration.svelte @@ -17,6 +17,7 @@ export let value const dispatch = createEventDispatcher() + let sanitisedFields let fieldList let schema diff --git a/packages/client/manifest.json b/packages/client/manifest.json index 0627646c6f..6bd1643756 100644 --- a/packages/client/manifest.json +++ b/packages/client/manifest.json @@ -6346,7 +6346,14 @@ "settings": [ { "type": "buttonConfiguration", - "key": "buttons" + "key": "buttons", + "nested": true, + "context": [ + { + "label": "Clicked row", + "key": "row" + } + ] } ] }