1
0
Fork 0
mirror of synced 2024-06-01 18:20:18 +12:00
budibase/packages/types/src/documents/app/app.ts

80 lines
1.6 KiB
TypeScript
Raw Normal View History

import { User, Document, Plugin, Snippet } from "../"
2024-02-27 06:28:37 +13:00
import { SocketSession } from "../../sdk"
export type AppMetadataErrors = { [key: string]: string[] }
export interface App extends Document {
2022-05-04 09:58:19 +12:00
appId: string
type: string
version: string
componentLibraries: string[]
name: string
url: string | undefined
template: string | undefined
instance: AppInstance
tenantId: string
status: string
theme?: string
customTheme?: AppCustomTheme
revertableVersion?: string
lockedBy?: User
sessions?: SocketSession[]
navigation?: AppNavigation
automationErrors?: AppMetadataErrors
2022-08-25 19:10:11 +12:00
icon?: AppIcon
features?: AppFeatures
2024-01-24 01:08:20 +13:00
automations?: AutomationSettings
usedPlugins?: Plugin[]
upgradableVersion?: string
snippets?: Snippet[]
}
export interface AppInstance {
_id: string
2022-05-04 09:58:19 +12:00
}
export interface AppNavigation {
navigation: string
title: string
navWidth: string
sticky?: boolean
hideLogo?: boolean
logoUrl?: string
hideTitle?: boolean
navBackground?: string
navTextColor?: string
links?: AppNavigationLink[]
}
export interface AppNavigationLink {
text: string
url: string
id?: string
roleId?: string
}
export interface AppCustomTheme {
buttonBorderRadius?: string
primaryColor?: string
primaryColorHover?: string
// Used to exist before new design UI
navTextColor?: string
navBackground?: string
}
2022-08-25 19:10:11 +12:00
export interface AppIcon {
name: string
color: string
}
export interface AppFeatures {
componentValidation?: boolean
disableUserMetadata?: boolean
skeletonLoader?: boolean
}
export interface AutomationSettings {
chainAutomations?: boolean
}