From 1cee1b78e62cb1d6011c4d960af6f79f612387bb Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 29 Nov 2021 18:16:44 +0000 Subject: [PATCH] Adding validation around invalid JSON inputs and allowing input via a code mirror editor in data UI. --- .../backend/DataTable/RowFieldControl.svelte | 12 ++++++++++++ .../backend/DataTable/modals/JSONSchemaModal.svelte | 1 + packages/server/src/api/controllers/row/utils.js | 7 +++++++ 3 files changed, 20 insertions(+) diff --git a/packages/builder/src/components/backend/DataTable/RowFieldControl.svelte b/packages/builder/src/components/backend/DataTable/RowFieldControl.svelte index 25ad67b52e..0d9ca3644b 100644 --- a/packages/builder/src/components/backend/DataTable/RowFieldControl.svelte +++ b/packages/builder/src/components/backend/DataTable/RowFieldControl.svelte @@ -6,16 +6,20 @@ Toggle, TextArea, Multiselect, + Label, } from "@budibase/bbui" import Dropzone from "components/common/Dropzone.svelte" import { capitalise } from "helpers" import LinkedRowSelector from "components/common/LinkedRowSelector.svelte" + import Editor from "../../integration/QueryEditor.svelte" export let defaultValue export let meta export let value = defaultValue || (meta.type === "boolean" ? false : "") export let readonly + $: stringVal = + typeof value === "object" ? JSON.stringify(value, null, 2) : value $: type = meta?.type $: label = meta.name ? capitalise(meta.name) : "" @@ -40,6 +44,14 @@ {:else if type === "longform"}