diff --git a/lerna.json b/lerna.json
index 18235a5914..78af255b1f 100644
--- a/lerna.json
+++ b/lerna.json
@@ -1,5 +1,5 @@
{
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"npmClient": "yarn",
"packages": [
"packages/*"
diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json
index 14fcbea357..6069396490 100644
--- a/packages/backend-core/package.json
+++ b/packages/backend-core/package.json
@@ -1,6 +1,6 @@
{
"name": "@budibase/backend-core",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"description": "Budibase backend core libraries used in server and worker",
"main": "src/index.js",
"author": "Budibase",
diff --git a/packages/bbui/package.json b/packages/bbui/package.json
index 83af25fba5..c1d3f4957f 100644
--- a/packages/bbui/package.json
+++ b/packages/bbui/package.json
@@ -1,7 +1,7 @@
{
"name": "@budibase/bbui",
"description": "A UI solution used in the different Budibase projects.",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"license": "MPL-2.0",
"svelte": "src/index.js",
"module": "dist/bbui.es.js",
diff --git a/packages/builder/cypress/support/commands.js b/packages/builder/cypress/support/commands.js
index e67057344a..d99e2b271f 100644
--- a/packages/builder/cypress/support/commands.js
+++ b/packages/builder/cypress/support/commands.js
@@ -35,7 +35,13 @@ Cypress.Commands.add("login", () => {
Cypress.Commands.add("createApp", name => {
cy.visit(`localhost:${Cypress.env("PORT")}/builder`)
cy.wait(500)
- cy.contains(/Start from scratch/).dblclick()
+ cy.request(`${Cypress.config().baseUrl}api/applications?status=all`)
+ .its("body")
+ .then(body => {
+ if (body.length > 0) {
+ cy.get(".spectrum-Button").contains("Create app").click({ force: true })
+ }
+ })
cy.get(".spectrum-Modal").within(() => {
cy.get("input").eq(0).type(name).should("have.value", name).blur()
cy.get(".spectrum-ButtonGroup").contains("Create app").click()
diff --git a/packages/builder/package.json b/packages/builder/package.json
index fcd4dd17e1..960a320c53 100644
--- a/packages/builder/package.json
+++ b/packages/builder/package.json
@@ -1,6 +1,6 @@
{
"name": "@budibase/builder",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"license": "GPL-3.0",
"private": true,
"scripts": {
@@ -65,10 +65,10 @@
}
},
"dependencies": {
- "@budibase/bbui": "^1.0.44-alpha.6",
- "@budibase/client": "^1.0.44-alpha.6",
+ "@budibase/bbui": "^1.0.44-alpha.9",
+ "@budibase/client": "^1.0.44-alpha.9",
"@budibase/colorpicker": "1.1.2",
- "@budibase/string-templates": "^1.0.44-alpha.6",
+ "@budibase/string-templates": "^1.0.44-alpha.9",
"@sentry/browser": "5.19.1",
"@spectrum-css/page": "^3.0.1",
"@spectrum-css/vars": "^3.0.1",
diff --git a/packages/builder/src/components/start/CreateAppModal.svelte b/packages/builder/src/components/start/CreateAppModal.svelte
index 178588f608..60065b6eef 100644
--- a/packages/builder/src/components/start/CreateAppModal.svelte
+++ b/packages/builder/src/components/start/CreateAppModal.svelte
@@ -11,7 +11,6 @@
import { capitalise } from "helpers"
import { goto } from "@roxi/routify"
import { APP_NAME_REGEX } from "constants"
- import TemplateList from "./TemplateList.svelte"
export let template
export let inline
@@ -147,58 +146,34 @@
}
-{#if showTemplateSelection}
- {
- template = {}
- return false
- }}
- showCancelButton={!inline}
- showCloseIcon={!inline}
- >
- {
- if (!selected) {
- template = useImport ? { fromFile: true } : {}
- return
- }
- template = selected
+
+ {#if template?.fromFile}
+ {
+ $values.file = e.detail?.[0]
+ $touched.file = true
}}
/>
-
-{:else}
-
- {#if template?.fromFile}
- {
- $values.file = e.detail?.[0]
- $touched.file = true
- }}
- />
- {/if}
- ($touched.name = true)}
- label="Name"
- placeholder={$auth.user.firstName
- ? `${$auth.user.firstName}'s app`
- : "My app"}
- />
-
-{/if}
+ {/if}
+ ($touched.name = true)}
+ label="Name"
+ placeholder={$auth.user.firstName
+ ? `${$auth.user.firstName}'s app`
+ : "My app"}
+ />
+
diff --git a/packages/builder/src/components/start/TemplateList.svelte b/packages/builder/src/components/start/TemplateList.svelte
deleted file mode 100644
index 90573bddff..0000000000
--- a/packages/builder/src/components/start/TemplateList.svelte
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
- onSelect(null)}>
-
-
-
-
Start from scratch
-
BLANK
-
- onSelect(null, { useImport: true })}
- >
-
-
-
-
Import an app
-
BLANK
-
-
-
-
diff --git a/packages/builder/src/pages/builder/portal/apps/index.svelte b/packages/builder/src/pages/builder/portal/apps/index.svelte
index ac10b5317f..047c60e979 100644
--- a/packages/builder/src/pages/builder/portal/apps/index.svelte
+++ b/packages/builder/src/pages/builder/portal/apps/index.svelte
@@ -11,6 +11,7 @@
notifications,
Body,
Search,
+ Icon,
} from "@budibase/bbui"
import Spinner from "components/common/Spinner.svelte"
import CreateAppModal from "components/start/CreateAppModal.svelte"
@@ -27,6 +28,7 @@
import AppRow from "components/start/AppRow.svelte"
import { AppStatus } from "constants"
import analytics, { Events } from "analytics"
+ import Logo from "assets/bb-space-man.svg"
let sortBy = "name"
let template
@@ -78,6 +80,7 @@
}
const initiateAppCreation = () => {
+ template = {}
creationModal.show()
creatingApp = true
}
@@ -300,14 +303,26 @@
{#if cloud}
-
@@ -389,9 +404,24 @@
{#if !enrichedApps.length && !creatingApp && loaded}
-
-
-
+
+
+
+
+
+ Create a business app in minutes!
+
+ initiateAppCreation()} size="M" cta>
+
+
+
+
{/if}
@@ -474,12 +504,15 @@
}
.grid {
+ height: 200px;
display: grid;
+ overflow: hidden;
grid-gap: var(--spacing-xl);
grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
+ grid-template-rows: minmax(70px, 1fr) minmax(100px, 1fr) minmax(0px, 0);
}
.template-card {
- height: 80px;
+ height: 70px;
border-radius: var(--border-radius-s);
border: 1px solid var(--spectrum-global-color-gray-300);
cursor: pointer;
@@ -533,4 +566,42 @@
justify-content: center;
align-items: center;
}
+
+ .centered {
+ width: calc(100% - 350px);
+ height: calc(100% - 100px);
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ }
+
+ .main {
+ width: 300px;
+ }
+
+ .new-screen-text {
+ width: 160px;
+ text-align: center;
+ color: #2c2c2c;
+ font-weight: 600;
+ }
+
+ .new-screen-button {
+ margin-left: 5px;
+ height: 20px;
+ width: 100px;
+ display: flex;
+ align-items: center;
+ }
+
+ .img-size {
+ width: 160px;
+ height: 160px;
+ }
+
+ .background-icon {
+ margin-top: 4px;
+ margin-right: 4px;
+ }
diff --git a/packages/cli/package.json b/packages/cli/package.json
index 335ea917c4..9a1f80e3a7 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@budibase/cli",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"description": "Budibase CLI, for developers, self hosting and migrations.",
"main": "src/index.js",
"bin": {
diff --git a/packages/client/package.json b/packages/client/package.json
index a5e3264aca..e08f78dff8 100644
--- a/packages/client/package.json
+++ b/packages/client/package.json
@@ -1,6 +1,6 @@
{
"name": "@budibase/client",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"license": "MPL-2.0",
"module": "dist/budibase-client.js",
"main": "dist/budibase-client.js",
@@ -19,9 +19,9 @@
"dev:builder": "rollup -cw"
},
"dependencies": {
- "@budibase/bbui": "^1.0.44-alpha.6",
+ "@budibase/bbui": "^1.0.44-alpha.9",
"@budibase/standard-components": "^0.9.139",
- "@budibase/string-templates": "^1.0.44-alpha.6",
+ "@budibase/string-templates": "^1.0.44-alpha.9",
"regexparam": "^1.3.0",
"shortid": "^2.2.15",
"svelte-spa-router": "^3.0.5"
diff --git a/packages/server/package.json b/packages/server/package.json
index a2e5aa5bb9..a444c5d092 100644
--- a/packages/server/package.json
+++ b/packages/server/package.json
@@ -1,7 +1,7 @@
{
"name": "@budibase/server",
"email": "hi@budibase.com",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"description": "Budibase Web Server",
"main": "src/index.ts",
"repository": {
@@ -70,9 +70,9 @@
"license": "GPL-3.0",
"dependencies": {
"@apidevtools/swagger-parser": "^10.0.3",
- "@budibase/backend-core": "^1.0.44-alpha.6",
- "@budibase/client": "^1.0.44-alpha.6",
- "@budibase/string-templates": "^1.0.44-alpha.6",
+ "@budibase/backend-core": "^1.0.44-alpha.9",
+ "@budibase/client": "^1.0.44-alpha.9",
+ "@budibase/string-templates": "^1.0.44-alpha.9",
"@bull-board/api": "^3.7.0",
"@bull-board/koa": "^3.7.0",
"@elastic/elasticsearch": "7.10.0",
diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json
index 0a745d6129..278d60cabe 100644
--- a/packages/string-templates/package.json
+++ b/packages/string-templates/package.json
@@ -1,6 +1,6 @@
{
"name": "@budibase/string-templates",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"description": "Handlebars wrapper for Budibase templating.",
"main": "src/index.cjs",
"module": "dist/bundle.mjs",
diff --git a/packages/worker/package.json b/packages/worker/package.json
index 979d67a067..5e0a1b69cf 100644
--- a/packages/worker/package.json
+++ b/packages/worker/package.json
@@ -1,7 +1,7 @@
{
"name": "@budibase/worker",
"email": "hi@budibase.com",
- "version": "1.0.44-alpha.6",
+ "version": "1.0.44-alpha.9",
"description": "Budibase background service",
"main": "src/index.ts",
"repository": {
@@ -34,8 +34,8 @@
"author": "Budibase",
"license": "GPL-3.0",
"dependencies": {
- "@budibase/backend-core": "^1.0.44-alpha.6",
- "@budibase/string-templates": "^1.0.44-alpha.6",
+ "@budibase/backend-core": "^1.0.44-alpha.9",
+ "@budibase/string-templates": "^1.0.44-alpha.9",
"@koa/router": "^8.0.0",
"@sentry/node": "^6.0.0",
"@techpass/passport-openidconnect": "^0.3.0",
diff --git a/packages/worker/src/api/controllers/system/environment.js b/packages/worker/src/api/controllers/system/environment.js
index 4edf1ff8d3..609c3e83c5 100644
--- a/packages/worker/src/api/controllers/system/environment.js
+++ b/packages/worker/src/api/controllers/system/environment.js
@@ -7,6 +7,6 @@ exports.fetch = async ctx => {
accountPortalUrl: env.ACCOUNT_PORTAL_URL,
disableAccountPortal: env.DISABLE_ACCOUNT_PORTAL,
// in test need to pretend its in production for the UI (Cypress)
- isDev: env.isDev() && !env.isTest(),
+ isDev: env.isDev(),
}
}