From ce075c97ffad62f992f930b8fefa9003093ef722 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Tue, 7 Dec 2021 18:50:29 +0000 Subject: [PATCH] Adding access controls to rest query ui. --- .../integration/AccessLevelSelect.svelte | 39 ++++++++++++++----- .../integration/KeyValueBuilder.svelte | 6 +-- .../components/integration/QueryViewer.svelte | 23 +---------- .../[selectedDatasource]/[query]/index.svelte | 14 ++++++- .../rest/[query]/index.svelte | 28 ++++++++++--- 5 files changed, 68 insertions(+), 42 deletions(-) diff --git a/packages/builder/src/components/integration/AccessLevelSelect.svelte b/packages/builder/src/components/integration/AccessLevelSelect.svelte index bcb2f1208..88814ed64 100644 --- a/packages/builder/src/components/integration/AccessLevelSelect.svelte +++ b/packages/builder/src/components/integration/AccessLevelSelect.svelte @@ -1,6 +1,8 @@ -{#if label} - +{#if loaded} + {#if label} + + {/if} + updateRole(e.detail)} - options={$roles} - getOptionLabel={x => x.name} - getOptionValue={x => x._id} -/> diff --git a/packages/builder/src/components/integration/KeyValueBuilder.svelte b/packages/builder/src/components/integration/KeyValueBuilder.svelte index 6fb34ba12..27d88378d 100644 --- a/packages/builder/src/components/integration/KeyValueBuilder.svelte +++ b/packages/builder/src/components/integration/KeyValueBuilder.svelte @@ -75,15 +75,15 @@ {#if Object.keys(object || {}).length > 0} {#if headings} -
+
- {#if activity} + {#if toggle} {/if}
{/if} -
+
{#each fields as field, idx} {#if options} diff --git a/packages/builder/src/components/integration/QueryViewer.svelte b/packages/builder/src/components/integration/QueryViewer.svelte index 64e2e4952..aed3c4730 100644 --- a/packages/builder/src/components/integration/QueryViewer.svelte +++ b/packages/builder/src/components/integration/QueryViewer.svelte @@ -18,17 +18,11 @@ import IntegrationQueryEditor from "components/integration/index.svelte" import ExternalDataSourceTable from "components/backend/DataTable/ExternalDataSourceTable.svelte" import ParameterBuilder from "components/integration/QueryParameterBuilder.svelte" - import { - datasources, - integrations, - queries, - permissions, - } from "stores/backend" + import { datasources, integrations, queries } from "stores/backend" import { capitalise } from "../../helpers" import CodeMirrorEditor from "components/common/CodeMirrorEditor.svelte" import JSONPreview from "./JSONPreview.svelte" - import { Roles, SchemaTypeOptions } from "constants/backend" - import { onMount } from "svelte" + import { SchemaTypeOptions } from "constants/backend" import KeyValueBuilder from "./KeyValueBuilder.svelte" import { fieldsToSchema, schemaToFields } from "helpers/data/utils" import AccessLevelSelect from "./AccessLevelSelect.svelte" @@ -38,7 +32,6 @@ let fields = query?.schema ? schemaToFields(query.schema) : [] let parameters let data = [] - let roleId let saveId const transformerDocs = "https://docs.budibase.com/building-apps/data/transformers" @@ -95,18 +88,6 @@ notifications.error(`Error creating query. ${err.message}`) } } - - onMount(async () => { - if (!query || !query._id) { - roleId = Roles.BASIC - return - } - try { - roleId = (await permissions.forResource(query._id))["read"] - } catch (err) { - roleId = Roles.BASIC - } - }) diff --git a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/index.svelte b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/index.svelte index c2d7c25b2..61e2ae5f1 100644 --- a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/index.svelte +++ b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/index.svelte @@ -1,8 +1,10 @@
diff --git a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte index 1b9ac2249..7d30b8a0a 100644 --- a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte +++ b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/rest/[query]/index.svelte @@ -36,6 +36,7 @@ SchemaTypeOptions, } from "constants/backend" import JSONPreview from "components/integration/JSONPreview.svelte" + import AccessLevelSelect from "components/integration/AccessLevelSelect.svelte" let query, datasource let breakQs = {} @@ -144,12 +145,18 @@
- (query.flags.urlName = false)} - /> +
+ (query.flags.urlName = false)} + /> +
+ + +
+