diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/NavigationEditor/NavigationDrawer.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/NavigationEditor/NavigationDrawer.svelte
new file mode 100644
index 0000000000..9e33c627d9
--- /dev/null
+++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/NavigationEditor/NavigationDrawer.svelte
@@ -0,0 +1,114 @@
+
+
+
+
+
+ {#if links?.length}
+
+ {#each links as link (link.id)}
+
+
+
+
+ removeLink(link.id)}
+ />
+
+ {/each}
+
+ {/if}
+
+
+
+
+
+
+
+
diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/NavigationEditor/NavigationEditor.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/NavigationEditor/NavigationEditor.svelte
new file mode 100644
index 0000000000..b7a272e608
--- /dev/null
+++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/NavigationEditor/NavigationEditor.svelte
@@ -0,0 +1,23 @@
+
+
+
Configure Links
+
+
+ Configure the links in your navigation bar.
+
+
+
+
diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SectionSelect.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SectionSelect.svelte
new file mode 100644
index 0000000000..6b3cf72016
--- /dev/null
+++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/SectionSelect.svelte
@@ -0,0 +1,75 @@
+
+
+
{layoutMap[value].name}
+
+ dispatch("change", selected)}
+ size="L"
+ title="Select layout"
+ >
+
+ {#each Object.entries(layoutMap) as [key, value]}
+
+ {/each}
+
+
+
+
+
diff --git a/packages/builder/src/components/design/PropertiesPanel/SettingsView.svelte b/packages/builder/src/components/design/PropertiesPanel/SettingsView.svelte
index 31b6c0d381..9dcd5f0daa 100644
--- a/packages/builder/src/components/design/PropertiesPanel/SettingsView.svelte
+++ b/packages/builder/src/components/design/PropertiesPanel/SettingsView.svelte
@@ -15,6 +15,8 @@
import FieldSelect from "./PropertyControls/FieldSelect.svelte"
import MultiFieldSelect from "./PropertyControls/MultiFieldSelect.svelte"
import SchemaSelect from "./PropertyControls/SchemaSelect.svelte"
+ import SectionSelect from "./PropertyControls/SectionSelect.svelte"
+ import NavigationEditor from "./PropertyControls/NavigationEditor/NavigationEditor.svelte"
import EventsEditor from "./PropertyControls/EventsEditor"
import FilterEditor from "./PropertyControls/FilterEditor/FilterEditor.svelte"
import { IconSelect } from "./PropertyControls/IconSelect"
@@ -62,6 +64,8 @@
field: FieldSelect,
multifield: MultiFieldSelect,
schema: SchemaSelect,
+ section: SectionSelect,
+ navigation: NavigationEditor,
filter: FilterEditor,
"field/string": StringFieldSelect,
"field/number": NumberFieldSelect,
diff --git a/packages/builder/src/components/settings/Integration.svelte b/packages/builder/src/components/settings/Integration.svelte
deleted file mode 100644
index cd2a38ba1b..0000000000
--- a/packages/builder/src/components/settings/Integration.svelte
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
Zoom
-
- Lorem, ipsum dolor sit amet consectetur adipisicing elit
-
-
-
-
-
-
-
diff --git a/packages/builder/src/components/settings/Link.svelte b/packages/builder/src/components/settings/Link.svelte
deleted file mode 100644
index c8f42084f9..0000000000
--- a/packages/builder/src/components/settings/Link.svelte
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/packages/builder/src/components/settings/SettingsModal.svelte b/packages/builder/src/components/settings/SettingsModal.svelte
deleted file mode 100644
index f881720305..0000000000
--- a/packages/builder/src/components/settings/SettingsModal.svelte
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/packages/builder/src/components/settings/tabs/APIKeys.svelte b/packages/builder/src/components/settings/tabs/APIKeys.svelte
deleted file mode 100644
index 6476b91374..0000000000
--- a/packages/builder/src/components/settings/tabs/APIKeys.svelte
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
updateKey(["budibase", e.detail])}
- value={keys.budibase}
- label="Budibase Cloud API Key"
- />
-
- Log in to the Budibase Hosting Portal to get your API Key. →
-
-
-
- {$database._id}
-
-
-
-
diff --git a/packages/builder/src/components/settings/tabs/DangerZone.svelte b/packages/builder/src/components/settings/tabs/DangerZone.svelte
deleted file mode 100644
index e941cfd418..0000000000
--- a/packages/builder/src/components/settings/tabs/DangerZone.svelte
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
- Type
-
DELETE
- into the textbox, then click the following button to delete your entire web app.
-
-
(value = e.detail)}
- disabled={loading}
- placeholder=""
- />
-
-
-
-
-
-
diff --git a/packages/builder/src/components/settings/tabs/General.svelte b/packages/builder/src/components/settings/tabs/General.svelte
deleted file mode 100644
index 4a8d24ed58..0000000000
--- a/packages/builder/src/components/settings/tabs/General.svelte
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
- updateApplication({ name: e.detail })}
- value={$store.name}
- error={nameError}
- label="App Name"
- />
- updateApplication({ url: e.detail })}
- value={$store.url}
- error={urlError}
- label="App URL"
- />
-
-
-
diff --git a/packages/builder/src/components/settings/tabs/Integrations.svelte b/packages/builder/src/components/settings/tabs/Integrations.svelte
deleted file mode 100644
index e0e3cb5987..0000000000
--- a/packages/builder/src/components/settings/tabs/Integrations.svelte
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
Your Integrations
-
-
-
-
-
-
-
Recommended apps
-
-
-
-
-
-
-
-
-
diff --git a/packages/builder/src/components/settings/tabs/Permissions.svelte b/packages/builder/src/components/settings/tabs/Permissions.svelte
deleted file mode 100644
index ca206fbdda..0000000000
--- a/packages/builder/src/components/settings/tabs/Permissions.svelte
+++ /dev/null
@@ -1 +0,0 @@
-Permissions
diff --git a/packages/builder/src/components/settings/tabs/index.js b/packages/builder/src/components/settings/tabs/index.js
deleted file mode 100644
index 2f0e958112..0000000000
--- a/packages/builder/src/components/settings/tabs/index.js
+++ /dev/null
@@ -1,5 +0,0 @@
-export { default as General } from "./General.svelte"
-export { default as Integrations } from "./Integrations.svelte"
-export { default as Permissions } from "./Permissions.svelte"
-export { default as APIKeys } from "./APIKeys.svelte"
-export { default as DangerZone } from "./DangerZone.svelte"
diff --git a/packages/builder/src/constants/index.js b/packages/builder/src/constants/index.js
index 8a0e8fd60e..aefc1fab0e 100644
--- a/packages/builder/src/constants/index.js
+++ b/packages/builder/src/constants/index.js
@@ -31,3 +31,5 @@ export const LAYOUT_NAMES = {
PUBLIC: "layout_private_master",
},
}
+
+export const BUDIBASE_INTERNAL_DB = "bb_internal"
diff --git a/packages/builder/src/pages/builder/app/[application]/data/_layout.svelte b/packages/builder/src/pages/builder/app/[application]/data/_layout.svelte
index 6910d3e925..6ce765d424 100644
--- a/packages/builder/src/pages/builder/app/[application]/data/_layout.svelte
+++ b/packages/builder/src/pages/builder/app/[application]/data/_layout.svelte
@@ -1,49 +1,27 @@
-
-
-
-
-
+
+
@@ -54,7 +32,7 @@
diff --git a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/_layout.svelte b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/_layout.svelte
index 4d6acc22ae..4fa864ce7a 100644
--- a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/_layout.svelte
+++ b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/[query]/_layout.svelte
@@ -1,13 +1 @@
-
-
diff --git a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/index.svelte b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/index.svelte
index 98379607c9..f805a5724f 100644
--- a/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/index.svelte
+++ b/packages/builder/src/pages/builder/app/[application]/data/datasource/[selectedDatasource]/index.svelte
@@ -1,7 +1,7 @@
-{#if datasource}
+{#if datasource && integration}
@@ -66,6 +86,34 @@
on:change={setUnsaved}
/>
+ {#if datasource.plus}
+
+
+
+ This datasource can determine tables automatically. Budibase can fetch
+ your tables directly from the database and you can use them without
+ having to write any queries at all.
+
+
+ {#if datasource.entities}
+ {#each Object.keys(datasource.entities) as entity}
+
onClickTable(datasource.entities[entity])}
+ >
+
{entity}
+
Primary Key: {datasource.entities[entity].primary}
+
→
+
+ {/each}
+ {/if}
+
+ {/if}