2020-12-19 07:19:43 +13:00
|
|
|
<script>
|
2021-01-09 07:22:03 +13:00
|
|
|
import { TextArea, Label, Input, Heading, Spacer } from "@budibase/bbui"
|
2021-01-13 05:49:11 +13:00
|
|
|
import Editor from "./SvelteEditor.svelte"
|
2021-01-09 01:06:37 +13:00
|
|
|
import ParameterBuilder from "./QueryParameterBuilder.svelte"
|
2021-01-07 01:28:51 +13:00
|
|
|
|
2020-12-19 07:19:43 +13:00
|
|
|
const QueryTypes = {
|
|
|
|
SQL: "sql",
|
2021-01-12 10:01:21 +13:00
|
|
|
JSON: "json",
|
|
|
|
FIELDS: "fields",
|
2020-12-19 07:19:43 +13:00
|
|
|
}
|
|
|
|
|
|
|
|
export let query
|
2021-01-12 06:18:22 +13:00
|
|
|
|
|
|
|
function updateQuery({ detail }) {
|
2021-01-13 05:49:11 +13:00
|
|
|
query.queryString = detail.value
|
2021-01-12 06:18:22 +13:00
|
|
|
}
|
2020-12-19 07:19:43 +13:00
|
|
|
</script>
|
|
|
|
|
2021-01-12 23:28:41 +13:00
|
|
|
<ParameterBuilder bind:parameters={query.parameters} bindable={false} />
|
|
|
|
<Spacer large />
|
|
|
|
|
2021-01-13 05:49:11 +13:00
|
|
|
<Heading extraSmall black>Query</Heading>
|
|
|
|
<Spacer large />
|
2021-01-12 23:28:41 +13:00
|
|
|
|
2021-01-08 02:13:46 +13:00
|
|
|
{#if query.queryType === QueryTypes.SQL}
|
2021-01-13 05:49:11 +13:00
|
|
|
<!-- <TextArea bind:value={query.queryString} /> -->
|
|
|
|
<Editor
|
|
|
|
label="Query"
|
|
|
|
mode="sql"
|
|
|
|
on:change={updateQuery}
|
|
|
|
value={query.queryString} />
|
2021-01-12 10:01:21 +13:00
|
|
|
{:else if query.queryType === QueryTypes.JSON}
|
2021-01-12 23:28:41 +13:00
|
|
|
<Spacer large />
|
2021-01-13 05:49:11 +13:00
|
|
|
<Editor
|
|
|
|
label="Query"
|
|
|
|
mode="json"
|
|
|
|
on:change={updateQuery}
|
|
|
|
value={query.queryString} />
|
2021-01-12 23:28:41 +13:00
|
|
|
{:else if query.queryType === QueryTypes.FIELDS}
|
|
|
|
<!-- {#each Object.keys()} -->
|
|
|
|
{/if}
|