diff --git a/package.json b/package.json
index 7429805b1..f6f4e2644 100644
--- a/package.json
+++ b/package.json
@@ -40,6 +40,10 @@
"build:docker:staging": "cd hosting/scripts/linux/ && ./release-to-docker-hub.sh staging && cd -"
},
"dependencies": {
+ "@spectrum-css/actionbutton": "^1.0.1",
+ "@spectrum-css/actiongroup": "^1.0.1",
+ "@spectrum-css/link": "^3.1.1",
+ "@spectrum-css/menu": "^3.0.1",
"@spectrum-css/toast": "^3.0.1"
}
}
diff --git a/packages/bbui/src/ActionButton/ActionButton.svelte b/packages/bbui/src/ActionButton/ActionButton.svelte
new file mode 100644
index 000000000..df087dd62
--- /dev/null
+++ b/packages/bbui/src/ActionButton/ActionButton.svelte
@@ -0,0 +1,65 @@
+
+
+
+
+ {#if longPressable}
+
+
+
+ {/if}
+ {#if icon}
+
+
+
+ {/if}
+ {#if $$slots}
+
+ {/if}
+
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/ActionGroup/ActionGroup.svelte b/packages/bbui/src/ActionGroup/ActionGroup.svelte
new file mode 100644
index 000000000..c4d0aeba7
--- /dev/null
+++ b/packages/bbui/src/ActionGroup/ActionGroup.svelte
@@ -0,0 +1,24 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/ActionMenu/ActionMenu.svelte b/packages/bbui/src/ActionMenu/ActionMenu.svelte
new file mode 100644
index 000000000..33b2fcbdd
--- /dev/null
+++ b/packages/bbui/src/ActionMenu/ActionMenu.svelte
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/Actions/position_dropdown.js b/packages/bbui/src/Actions/position_dropdown.js
index 9bf5a40a6..a25cc1bbd 100644
--- a/packages/bbui/src/Actions/position_dropdown.js
+++ b/packages/bbui/src/Actions/position_dropdown.js
@@ -18,10 +18,10 @@ export default function positionDropdown(element, { anchor, align }) {
if (spaceAbove > spaceBelow) {
positionSide = "bottom"
maxHeight = spaceAbove - 20
- y = window.innerHeight - spaceAbove
+ y = window.innerHeight - spaceAbove + 5
} else {
positionSide = "top"
- y = bottom
+ y = bottom + 5
maxHeight = spaceBelow - 20
}
diff --git a/packages/bbui/src/Button/Button.svelte b/packages/bbui/src/Button/Button.svelte
index 80cd5aff1..b646f00c7 100644
--- a/packages/bbui/src/Button/Button.svelte
+++ b/packages/bbui/src/Button/Button.svelte
@@ -1,15 +1,13 @@
-{#if href}
-
- {#if icon}
-
-
-
- {/if}
+
+ {#if icon}
+
+
+
+ {/if}
+ {#if $$slots}
-
-{:else}
-
- {#if icon}
-
-
-
- {/if}
- {#if $$slots}
-
- {/if}
-
-{/if}
+ {/if}
+
diff --git a/packages/bbui/src/Button/TextButton.svench b/packages/bbui/src/Button/TextButton.svench
deleted file mode 100644
index e3c347780..000000000
--- a/packages/bbui/src/Button/TextButton.svench
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-
-
-
- alert('Clicked!')}>
-
- Add View
-
- alert('Clicked!')}>
-
- Add Column
-
- alert('Clicked!')}>
-
- Add Row
-
- alert('Clicked!')}>
-
- Disabled Text Button
-
- alert('Clicked!')}>
-
- Active Calculation
-
-
-
-
-
-
- alert('Clicked!')}>
-
- Add View
-
- alert('Clicked!')}>
-
- Add Column
-
- alert('Clicked!')}>
-
- Add Row
-
- alert('Clicked!')}>
-
- Delete
-
- alert('Clicked!')}>
-
- Calculate
-
-
-
-
-
-
- This is a link
-
-
diff --git a/packages/bbui/src/DatePicker/DatePicker.svelte b/packages/bbui/src/DatePicker/DatePicker.svelte
index 2f87a48a4..d6f6a0075 100644
--- a/packages/bbui/src/DatePicker/DatePicker.svelte
+++ b/packages/bbui/src/DatePicker/DatePicker.svelte
@@ -1,6 +1,6 @@
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/Menu/Item.svelte b/packages/bbui/src/Menu/Item.svelte
new file mode 100644
index 000000000..58b031fe7
--- /dev/null
+++ b/packages/bbui/src/Menu/Item.svelte
@@ -0,0 +1,15 @@
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/Menu/Menu.svelte b/packages/bbui/src/Menu/Menu.svelte
new file mode 100644
index 000000000..2fa102173
--- /dev/null
+++ b/packages/bbui/src/Menu/Menu.svelte
@@ -0,0 +1,7 @@
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/Menu/Menu.svench b/packages/bbui/src/Menu/Menu.svench
new file mode 100644
index 000000000..1da76869b
--- /dev/null
+++ b/packages/bbui/src/Menu/Menu.svench
@@ -0,0 +1,19 @@
+
+
+
+
+ - Some Item 1
+ - Some Item 2
+ - Some Item 3
+
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/Menu/Section.svelte b/packages/bbui/src/Menu/Section.svelte
new file mode 100644
index 000000000..54ae4123b
--- /dev/null
+++ b/packages/bbui/src/Menu/Section.svelte
@@ -0,0 +1,9 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/bbui/src/Menu/Separator.svelte b/packages/bbui/src/Menu/Separator.svelte
new file mode 100644
index 000000000..187fab234
--- /dev/null
+++ b/packages/bbui/src/Menu/Separator.svelte
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/packages/bbui/src/Modal/ModalContent.svelte b/packages/bbui/src/Modal/ModalContent.svelte
index 533568926..c07bc57b4 100644
--- a/packages/bbui/src/Modal/ModalContent.svelte
+++ b/packages/bbui/src/Modal/ModalContent.svelte
@@ -46,11 +46,11 @@
{/each}
{#if stepId === 'WEBHOOK'}
- webhookModal.show()}>
+ webhookModal.show()}>
Set Up Webhook
{/if}
diff --git a/packages/builder/src/components/automation/SetupPanel/SetupPanel.svelte b/packages/builder/src/components/automation/SetupPanel/SetupPanel.svelte
index ad3eccf9c..3c01b4361 100644
--- a/packages/builder/src/components/automation/SetupPanel/SetupPanel.svelte
+++ b/packages/builder/src/components/automation/SetupPanel/SetupPanel.svelte
@@ -65,7 +65,7 @@
{webhookModal} />
{:else if $automationStore.selectedAutomation}
{automation.name}
- Test Automation
+ Test Automation
{/if}
-
Calculate
diff --git a/packages/builder/src/components/backend/DataTable/buttons/CreateColumnButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/CreateColumnButton.svelte
index 31f0aff8f..a58a96b78 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/CreateColumnButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/CreateColumnButton.svelte
@@ -10,7 +10,7 @@
let modal
-
+
Create New Column
diff --git a/packages/builder/src/components/backend/DataTable/buttons/CreateRowButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/CreateRowButton.svelte
index 8ad8d2adf..cb65525f6 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/CreateRowButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/CreateRowButton.svelte
@@ -8,7 +8,7 @@
let modal
-
+
{title}
diff --git a/packages/builder/src/components/backend/DataTable/buttons/CreateViewButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/CreateViewButton.svelte
index 020c8af3c..aca1f3001 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/CreateViewButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/CreateViewButton.svelte
@@ -7,7 +7,7 @@
-
+
Create New View
diff --git a/packages/builder/src/components/backend/DataTable/buttons/DeleteRowsButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/DeleteRowsButton.svelte
index 32ce7b83b..18bbef612 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/DeleteRowsButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/DeleteRowsButton.svelte
@@ -13,7 +13,7 @@
}
-
+
Delete
{selectedRows.length}
row(s)
diff --git a/packages/builder/src/components/backend/DataTable/buttons/EditRolesButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/EditRolesButton.svelte
index 533d4c618..1cc930471 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/EditRolesButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/EditRolesButton.svelte
@@ -6,7 +6,7 @@
-
+
Edit Roles
diff --git a/packages/builder/src/components/backend/DataTable/buttons/ExportButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/ExportButton.svelte
index fe383d99a..7b5d93cf8 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/ExportButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/ExportButton.svelte
@@ -9,7 +9,7 @@
-
+
Export
diff --git a/packages/builder/src/components/backend/DataTable/buttons/FilterButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/FilterButton.svelte
index cfe558a36..889b9bdcf 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/FilterButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/FilterButton.svelte
@@ -9,7 +9,7 @@
-
Filter
diff --git a/packages/builder/src/components/backend/DataTable/buttons/GroupByButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/GroupByButton.svelte
index fe7d29071..cd9a0af36 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/GroupByButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/GroupByButton.svelte
@@ -9,7 +9,7 @@
-
+
Group By
diff --git a/packages/builder/src/components/backend/DataTable/buttons/HideAutocolumnButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/HideAutocolumnButton.svelte
index 891dc0feb..1f9204338 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/HideAutocolumnButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/HideAutocolumnButton.svelte
@@ -12,7 +12,7 @@
-
+
{#if hideAutocolumns}
Show Auto Columns
{:else}
diff --git a/packages/builder/src/components/backend/DataTable/buttons/ManageAccessButton.svelte b/packages/builder/src/components/backend/DataTable/buttons/ManageAccessButton.svelte
index 426a4f962..996396d9d 100644
--- a/packages/builder/src/components/backend/DataTable/buttons/ManageAccessButton.svelte
+++ b/packages/builder/src/components/backend/DataTable/buttons/ManageAccessButton.svelte
@@ -16,7 +16,7 @@
-
+
Manage Access
diff --git a/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte b/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte
index 392909d3e..2d1733888 100644
--- a/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte
+++ b/packages/builder/src/components/backend/DataTable/modals/CreateEditColumn.svelte
@@ -288,10 +288,10 @@
{/if}
{#if !uneditable && originalName != null}
- Delete Column
+ Delete Column
{/if}
Cancel
-
+
Save Column
diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/EventsEditor/actions/SaveFields.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/EventsEditor/actions/SaveFields.svelte
index 5510358af..5b9237fb9 100644
--- a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/EventsEditor/actions/SaveFields.svelte
+++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/EventsEditor/actions/SaveFields.svelte
@@ -81,7 +81,7 @@
{/each}
-
+
Add
{fieldLabel}
diff --git a/packages/builder/src/components/settings/tabs/APIKeys.svelte b/packages/builder/src/components/settings/tabs/APIKeys.svelte
index 729f464fd..affc3fffd 100644
--- a/packages/builder/src/components/settings/tabs/APIKeys.svelte
+++ b/packages/builder/src/components/settings/tabs/APIKeys.svelte
@@ -1,5 +1,5 @@
-
-
- Settings
+
+ Settings
-
-
diff --git a/packages/builder/src/pages/builder/index.svelte b/packages/builder/src/pages/builder/index.svelte
index 7a04d3b92..21fdeb012 100644
--- a/packages/builder/src/pages/builder/index.svelte
+++ b/packages/builder/src/pages/builder/index.svelte
@@ -3,7 +3,7 @@
import AppList from "components/start/AppList.svelte"
import { get } from "builderStore/api"
import CreateAppModal from "components/start/CreateAppModal.svelte"
- import { Button, Heading, Modal, Spacer } from "@budibase/bbui"
+ import { Button, Heading, Modal, Spacer, Menu, MenuSection, MenuItem } from "@budibase/bbui"
import TemplateList from "components/start/TemplateList.svelte"
import analytics from "analytics"
import Banner from "/assets/orange-landscape.png"
@@ -61,7 +61,7 @@
Import Web App
- Create New Web App
+ Create New Web App
diff --git a/yarn.lock b/yarn.lock
index 5f0162a7e..f8d5893de 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -824,6 +824,26 @@
estree-walker "^1.0.1"
micromatch "^4.0.2"
+"@spectrum-css/actionbutton@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@spectrum-css/actionbutton/-/actionbutton-1.0.1.tgz#9c75da37ea6915919fb574c74bd60dacc03b6577"
+ integrity sha512-AUqtyNabHF451Aj9i3xz82TxS5Z6k1dttA68/1hMeU9kbPCSS4P6Viw3vaRGs9CSspuR8xnnhDgrq+F+zMy2Hw==
+
+"@spectrum-css/actiongroup@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@spectrum-css/actiongroup/-/actiongroup-1.0.1.tgz#b95b86e7af229e90fe1e70399d8d4b547b4bd31c"
+ integrity sha512-5Q6uMjzv5BFA2TwGASr/jAtJpTWl26fhWvgGY8kOA0RCSij35l+YJg/FPXf6Nnj2qCOl8DkNycjT9YXJ+bhyVA==
+
+"@spectrum-css/link@^3.1.1":
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/@spectrum-css/link/-/link-3.1.1.tgz#cb526a2e10b50ef5a7ae29cca7272e2610d597eb"
+ integrity sha512-Bi88lRhTY7g6nM/ryW1yY4Cji211ZYNtRxkxbV7n2lPvwMAAQtyx0qVD3ru4kTGj/FFVvmPR3XiOE10K13HSNA==
+
+"@spectrum-css/menu@^3.0.1":
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/@spectrum-css/menu/-/menu-3.0.1.tgz#2a376f991acc24e12ec892bb6b9db2650fc41fbe"
+ integrity sha512-Qjg0+1O0eC89sb/bRFq2AGnQ8XqhVy23TUXHyffNM8qdcMssnlny3QmhzjURCZKvx/Y5UytCpzhedPQqSpQwZg==
+
"@spectrum-css/toast@^3.0.1":
version "3.0.1"
resolved "https://registry.yarnpkg.com/@spectrum-css/toast/-/toast-3.0.1.tgz#36f62ea05302761e59b9d53e05f6c04423861796"