@go.Package { name = "github.com/onsonr/sonr/pkg/nebula/models" } module models import "package://pkg.pkl-lang.org/pkl-go/pkl.golang@0.5.0#/go.pkl" // ╭───────────────────────────────────────────────────────────╮ // │ General Components │ // ╰───────────────────────────────────────────────────────────╯ typealias FormState = "initial" | "error" | "success" | "warning" class Image { src: String width: String height: String } class Link { text: String href: String } class SocialLink { link: Link icon: String } class Button { text: String href: String } class Input { label: String type: String placeholder: String value: String? error: String? help: String? required: Boolean } // ╭───────────────────────────────────────────────────────────╮ // │ Homepage Components │ // ╰───────────────────────────────────────────────────────────╯ class Stats { firstValue: String firstLabel: String secondValue: String secondLabel: String thirdValue: String thirdLabel: String } class Hero { titleFirst: String titleEmphasis: String titleSecond: String subtitle: String primaryButton: Button secondaryButton: Button image: Image } class Footer { logo: Image mediumLink: SocialLink twitterLink: SocialLink discordLink: SocialLink githubLink: SocialLink companyLinks: List resourcesLinks: List } hero : Hero stats : Stats // ╭───────────────────────────────────────────────────────────╮ // │ Registration Components │ // ╰───────────────────────────────────────────────────────────╯ class RegistrationForm { title: String description: String state: FormState inputs: List }