merge
This commit is contained in:
commit
816d06d9e9
|
@ -68,5 +68,5 @@
|
||||||
{/if}
|
{/if}
|
||||||
<ManageAccessButton resourceId={decodeURI(name)} />
|
<ManageAccessButton resourceId={decodeURI(name)} />
|
||||||
<HideAutocolumnButton bind:hideAutocolumns />
|
<HideAutocolumnButton bind:hideAutocolumns />
|
||||||
<ExportButton {view} />
|
<ExportButton view={view.name} />
|
||||||
</Table>
|
</Table>
|
||||||
|
|
|
@ -64,7 +64,7 @@ export default `
|
||||||
appId,
|
appId,
|
||||||
theme,
|
theme,
|
||||||
customTheme,
|
customTheme,
|
||||||
previewDevice
|
previewDevice,
|
||||||
} = parsed
|
} = parsed
|
||||||
|
|
||||||
// Set some flags so the app knows we're in the builder
|
// Set some flags so the app knows we're in the builder
|
||||||
|
|
|
@ -33,7 +33,10 @@
|
||||||
</div>
|
</div>
|
||||||
{/each}
|
{/each}
|
||||||
<div class="template start-from-scratch" on:click={() => onSelect(null)}>
|
<div class="template start-from-scratch" on:click={() => onSelect(null)}>
|
||||||
<div class="background-icon" style={`background: var(--background);`}>
|
<div
|
||||||
|
class="background-icon"
|
||||||
|
style={`background: rgb(50, 50, 50); color: white;`}
|
||||||
|
>
|
||||||
<Icon name="Add" />
|
<Icon name="Add" />
|
||||||
</div>
|
</div>
|
||||||
<Heading size="XS">Start from scratch</Heading>
|
<Heading size="XS">Start from scratch</Heading>
|
||||||
|
@ -74,7 +77,7 @@
|
||||||
align-items: center;
|
align-items: center;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
background: #1a1a1a;
|
background: var(--background-alt);
|
||||||
padding: 8px 16px;
|
padding: 8px 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -46,11 +46,16 @@
|
||||||
title: "Theming",
|
title: "Theming",
|
||||||
href: "/builder/portal/settings/theming",
|
href: "/builder/portal/settings/theming",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: "Updates",
|
|
||||||
href: "/builder/portal/settings/update",
|
|
||||||
},
|
|
||||||
])
|
])
|
||||||
|
|
||||||
|
if (!$adminStore.cloud) {
|
||||||
|
menu = menu.concat([
|
||||||
|
{
|
||||||
|
title: "Updates",
|
||||||
|
href: "/builder/portal/settings/update",
|
||||||
|
},
|
||||||
|
])
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
menu = menu.concat([
|
menu = menu.concat([
|
||||||
{
|
{
|
||||||
|
|
|
@ -10,14 +10,14 @@
|
||||||
Label,
|
Label,
|
||||||
} from "@budibase/bbui"
|
} from "@budibase/bbui"
|
||||||
import api from "builderStore/api"
|
import api from "builderStore/api"
|
||||||
import { auth } from "stores/portal"
|
import { auth, admin } from "stores/portal"
|
||||||
import { redirect } from "@roxi/routify"
|
import { redirect } from "@roxi/routify"
|
||||||
|
|
||||||
let version
|
let version
|
||||||
|
|
||||||
// Only admins allowed here
|
// Only admins allowed here
|
||||||
$: {
|
$: {
|
||||||
if (!$auth.isAdmin) {
|
if (!$auth.isAdmin || $admin.cloud) {
|
||||||
$redirect("../../portal")
|
$redirect("../../portal")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,7 +56,7 @@ export function createAuthStore() {
|
||||||
analytics.identify(user._id, user)
|
analytics.identify(user._id, user)
|
||||||
analytics.showChat({
|
analytics.showChat({
|
||||||
email: user.email,
|
email: user.email,
|
||||||
created_at: user.createdAt || Date.now(),
|
created_at: (user.createdAt || Date.now()) / 1000,
|
||||||
name: user.name,
|
name: user.name,
|
||||||
user_id: user._id,
|
user_id: user._id,
|
||||||
tenant: user.tenantId,
|
tenant: user.tenantId,
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
<a
|
||||||
|
href="https://www.budibase.com/?utm_source=budibase-apps-public-screens&utm_medium=badge&utm_campaign=made-in-budibase"
|
||||||
|
>
|
||||||
|
<div>
|
||||||
|
<img src="https://i.imgur.com/Xhdt1YP.png" alt="Budibase" />
|
||||||
|
<p>Made In Budibase</p>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div {
|
||||||
|
position: absolute;
|
||||||
|
right: 20px;
|
||||||
|
bottom: 20px;
|
||||||
|
padding: 10px;
|
||||||
|
border-radius: 5px;
|
||||||
|
background: var(--spectrum-alias-background-color-primary);
|
||||||
|
z-index: 999999 !important;
|
||||||
|
visibility: visible !important;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
border: 1px solid;
|
||||||
|
border-color: var(--spectrum-global-color-gray-300) !important;
|
||||||
|
height: 45px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
text-decoration: none;
|
||||||
|
color: var(--spectrum-heading-m-text-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
a:visited {
|
||||||
|
text-decoration: none;
|
||||||
|
color: var(--spectrum-heading-m-text-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
height: 20px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -21,9 +21,12 @@ exports.endUserPing = async ctx => {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
posthogClient.capture("budibase:end_user_ping", {
|
posthogClient.capture({
|
||||||
userId: ctx.user && ctx.user._id,
|
event: "budibase:end_user_ping",
|
||||||
appId: ctx.appId,
|
distinctId: ctx.user && ctx.user._id,
|
||||||
|
properties: {
|
||||||
|
appId: ctx.appId,
|
||||||
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
ctx.body = {
|
ctx.body = {
|
||||||
|
|
|
@ -2,6 +2,8 @@ const {
|
||||||
ViewNames,
|
ViewNames,
|
||||||
generateMemoryViewID,
|
generateMemoryViewID,
|
||||||
getMemoryViewParams,
|
getMemoryViewParams,
|
||||||
|
DocumentTypes,
|
||||||
|
SEPARATOR,
|
||||||
} = require("../../../db/utils")
|
} = require("../../../db/utils")
|
||||||
const env = require("../../../environment")
|
const env = require("../../../environment")
|
||||||
|
|
||||||
|
@ -10,6 +12,11 @@ exports.getView = async (db, viewName) => {
|
||||||
const designDoc = await db.get("_design/database")
|
const designDoc = await db.get("_design/database")
|
||||||
return designDoc.views[viewName]
|
return designDoc.views[viewName]
|
||||||
} else {
|
} else {
|
||||||
|
// This is a table view, don't read the view from the DB
|
||||||
|
if (viewName.startsWith(DocumentTypes.TABLE + SEPARATOR)) {
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
|
||||||
const viewDoc = await db.get(generateMemoryViewID(viewName))
|
const viewDoc = await db.get(generateMemoryViewID(viewName))
|
||||||
return viewDoc.view
|
return viewDoc.view
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue