From fc6d20c0b2bcf22f7d823edeaae6f498e28f1d0e Mon Sep 17 00:00:00 2001 From: Peter Clement Date: Wed, 25 Jan 2023 11:39:13 +0000 Subject: [PATCH] add environment bindings to rest query binding drawer --- .../builder/src/builderStore/dataBinding.js | 18 +++++++++++++++++- .../common/bindings/DrawerBindableInput.svelte | 2 +- .../integration/RestQueryViewer.svelte | 8 ++++++++ 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/packages/builder/src/builderStore/dataBinding.js b/packages/builder/src/builderStore/dataBinding.js index d188073b95..3f284f75c4 100644 --- a/packages/builder/src/builderStore/dataBinding.js +++ b/packages/builder/src/builderStore/dataBinding.js @@ -21,6 +21,7 @@ import { import { TableNames } from "../constants" import { JSONUtils } from "@budibase/frontend-core" import ActionDefinitions from "components/design/settings/controls/ButtonActionEditor/manifest.json" +import { environment } from "stores/portal" // Regex to match all instances of template strings const CAPTURE_VAR_INSIDE_TEMPLATE = /{{([^}]+)}}/g @@ -54,7 +55,7 @@ export const getBindableProperties = (asset, componentId) => { */ export const getRestBindings = () => { const userBindings = getUserBindings() - return [...userBindings, ...getAuthBindings()] + return [...userBindings, ...getAuthBindings(), ...getEnvironmentBindings()] } /** @@ -89,6 +90,21 @@ export const getAuthBindings = () => { return bindings } +export const getEnvironmentBindings = () => { + let envVars = get(environment).variables + let test = envVars.map(variable => { + return { + type: "context", + runtimeBinding: `env.${makePropSafe(variable.name)}`, + readableBinding: `env.${variable.name}`, + category: "Environment", + icon: "Key", + display: { type: "string", name: variable.name }, + } + }) + return test +} + /** * Utility - convert a key/value map to an array of custom 'context' bindings * @param {object} valueMap Key/value pairings diff --git a/packages/builder/src/components/common/bindings/DrawerBindableInput.svelte b/packages/builder/src/components/common/bindings/DrawerBindableInput.svelte index 6859e4f92b..f115ab89ce 100644 --- a/packages/builder/src/components/common/bindings/DrawerBindableInput.svelte +++ b/packages/builder/src/components/common/bindings/DrawerBindableInput.svelte @@ -20,7 +20,7 @@ export let allowHelpers = true export let updateOnChange = true export let drawerLeft - $: console.log(bindings) + const dispatch = createEventDispatcher() let bindingDrawer let valid = true diff --git a/packages/builder/src/components/integration/RestQueryViewer.svelte b/packages/builder/src/components/integration/RestQueryViewer.svelte index 2c381efa47..d67e4c939b 100644 --- a/packages/builder/src/components/integration/RestQueryViewer.svelte +++ b/packages/builder/src/components/integration/RestQueryViewer.svelte @@ -1,6 +1,7 @@