216 lines
8 KiB
Go
216 lines
8 KiB
Go
package controllers
|
|
|
|
// SampleNavbarMenu returns the sample menu data for the navbar
|
|
// Migrated from liquid/data/menu.json (layout, dashboards, help sections)
|
|
func SampleNavbarMenu() TablerMenu {
|
|
return TablerMenu{
|
|
"dashboards": {
|
|
Title: "Dashboards",
|
|
Icon: "home",
|
|
Children: []*TablerMenuItem{
|
|
{Title: "Default", URL: "index.html", Icon: "dashboard"},
|
|
{Title: "Crypto", URL: "dashboard-crypto.html", Icon: "currency-bitcoin"},
|
|
},
|
|
},
|
|
"layout": {
|
|
Title: "Layout",
|
|
Icon: "layout-2",
|
|
Columns: 2,
|
|
Children: []*TablerMenuItem{
|
|
{Title: "Boxed", URL: "layout-boxed.html", Icon: "layout-navbar"},
|
|
{Title: "Combined", URL: "layout-combo.html", Icon: "layout-navbar"},
|
|
{Title: "Condensed", URL: "layout-condensed.html", Icon: "layout-navbar"},
|
|
{Title: "Fluid", URL: "layout-fluid.html", Icon: "layout-navbar"},
|
|
{Title: "Fluid vertical", URL: "layout-fluid-vertical.html", Icon: "layout-navbar"},
|
|
{Title: "Horizontal", URL: "layout-horizontal.html", Icon: "layout-navbar"},
|
|
{Title: "Navbar dark", URL: "layout-navbar-dark.html", Icon: "layout-navbar"},
|
|
{Title: "Navbar overlap", URL: "layout-navbar-overlap.html", Icon: "layout-navbar"},
|
|
{Title: "Navbar sticky", URL: "layout-navbar-sticky.html", Icon: "layout-navbar"},
|
|
{Title: "Right vertical", URL: "layout-vertical-right.html", Icon: "layout-navbar"},
|
|
{Title: "Vertical", URL: "layout-vertical.html", Icon: "layout-navbar"},
|
|
{Title: "Vertical transparent", URL: "layout-vertical-transparent.html", Icon: "layout-navbar"},
|
|
},
|
|
},
|
|
"help": {
|
|
Title: "Help",
|
|
Icon: "lifebuoy",
|
|
Children: []*TablerMenuItem{
|
|
{Title: "Documentation", URL: "https://tabler.io/docs", Icon: "book"},
|
|
{Title: "Changelog", URL: "changelog.html", Icon: "list"},
|
|
{Title: "Source code", URL: "https://github.com/tabler/tabler", Icon: "brand-github"},
|
|
{Title: "Sponsor project!", URL: "https://github.com/sponsors/codecalm", Color: "pink", Icon: "heart"},
|
|
},
|
|
},
|
|
}
|
|
}
|
|
|
|
// SampleTables returns two sample table components for the tables demo page.
|
|
// Table 1: Users table (avatar, name, city, status, date, tags, category).
|
|
// Table 2: Projects table (name, description, progress, priority, assignee, deadline).
|
|
func SampleTables() []TableComponent {
|
|
table1 := TableComponent{
|
|
ID: "users-table",
|
|
Title: "Users",
|
|
Striped: false,
|
|
Hover: true,
|
|
Headers: []TableComponentHeader{
|
|
{Name: "Name", Sort: "sort-name"},
|
|
{Name: "City", Sort: "sort-city"},
|
|
{Name: "Status", Sort: "sort-status"},
|
|
{Name: "Start date", Sort: "sort-date"},
|
|
{Name: "Tags", Sort: "sort-tags"},
|
|
{Name: "Category", Sort: "sort-category"},
|
|
},
|
|
Rows: []TableComponentRow{
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Paweł Kuna", AvatarID: "000m", Subtext: "paweluna@howstuffworks.com"},
|
|
{Type: "text", Value: "Peimei, China"},
|
|
{Type: "status", Value: "VIP", StatusColor: "bg-blue"},
|
|
{Type: "date", Value: "2025-04-07"},
|
|
{Type: "tags", Tags: []string{"High Volume"}},
|
|
{Type: "badge", Value: "Training", BadgeColor: "bg-muted-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Jeffie Lewzey", AvatarID: "052f", Subtext: "jlewzey1@seesaa.net"},
|
|
{Type: "text", Value: "Indaial, Brazil"},
|
|
{Type: "status", Value: "New", StatusColor: "bg-green"},
|
|
{Type: "date", Value: "2024-12-12"},
|
|
{Type: "tags", Tags: []string{"No Refunds"}},
|
|
{Type: "badge", Value: "Support", BadgeColor: "bg-blue-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Mallory Hulme", AvatarID: "002m", Subtext: "mhulme2@domainmarket.com"},
|
|
{Type: "text", Value: "Cimuncang, Indonesia"},
|
|
{Type: "status", Value: "VIP", StatusColor: "bg-blue"},
|
|
{Type: "date", Value: "2025-01-09"},
|
|
{Type: "tags", Tags: []string{"High Value", "No Refunds", "Loyal"}},
|
|
{Type: "badge", Value: "Support", BadgeColor: "bg-blue-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Dunn Slane", AvatarID: "003m", Subtext: "dslane3@epa.gov"},
|
|
{Type: "text", Value: "Liutang, China"},
|
|
{Type: "status", Value: "Regular", StatusColor: "bg-muted"},
|
|
{Type: "date", Value: "2022-10-01"},
|
|
{Type: "tags", Tags: []string{"No Refunds"}},
|
|
{Type: "badge", Value: "Sales", BadgeColor: "bg-green-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Emmy Levet", AvatarID: "000f", Subtext: "elevet4@senate.gov"},
|
|
{Type: "text", Value: "Kaliprak, Indonesia"},
|
|
{Type: "status", Value: "Regular", StatusColor: "bg-muted"},
|
|
{Type: "date", Value: "2025-05-18"},
|
|
{Type: "tags", Tags: []string{"Standard"}},
|
|
{Type: "badge", Value: "Accounting", BadgeColor: "bg-yellow-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Maryjo Lebarree", AvatarID: "001f", Subtext: "mlebarree5@unc.edu"},
|
|
{Type: "text", Value: "Hantai, China"},
|
|
{Type: "status", Value: "Regular", StatusColor: "bg-muted"},
|
|
{Type: "date", Value: "2025-06-06"},
|
|
{Type: "tags", Tags: []string{"No Refunds", "Loyal"}},
|
|
{Type: "badge", Value: "Product Management", BadgeColor: "bg-orange-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Egan Poetz", AvatarID: "004m", Subtext: "epoetz6@free.fr"},
|
|
{Type: "text", Value: "Villaguay, Argentina"},
|
|
{Type: "status", Value: "New", StatusColor: "bg-green"},
|
|
{Type: "date", Value: "2024-08-21"},
|
|
{Type: "tags", Tags: []string{"No Refunds"}},
|
|
{Type: "badge", Value: "Engineering", BadgeColor: "bg-blue-lt"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "avatar", Value: "Kellie Skingley", AvatarID: "002f", Subtext: "kskingley7@columbia.edu"},
|
|
{Type: "text", Value: "Sidon, Lebanon"},
|
|
{Type: "status", Value: "VIP", StatusColor: "bg-blue"},
|
|
{Type: "date", Value: "2025-02-23"},
|
|
{Type: "tags", Tags: []string{"No Refunds", "Loyal"}},
|
|
{Type: "badge", Value: "Services", BadgeColor: "bg-purple-lt"},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
table2 := TableComponent{
|
|
ID: "projects-table",
|
|
Title: "Projects",
|
|
Striped: true,
|
|
Hover: true,
|
|
Headers: []TableComponentHeader{
|
|
{Name: "Project", Sort: "sort-project"},
|
|
{Name: "Progress", Sort: "sort-progress"},
|
|
{Name: "Priority"},
|
|
{Name: "Assignee", Sort: "sort-assignee"},
|
|
{Name: "Deadline", Sort: "sort-deadline"},
|
|
{Name: "", Width: "w-1"},
|
|
},
|
|
Rows: []TableComponentRow{
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "text", Value: "Tabler UI Kit"},
|
|
{Type: "text", Value: "75%"},
|
|
{Type: "badge", Value: "High", BadgeColor: "bg-red-lt"},
|
|
{Type: "avatar", Value: "Paweł Kuna", AvatarID: "000m", Subtext: "Lead Designer"},
|
|
{Type: "date", Value: "2025-06-30"},
|
|
{Type: "actions"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "text", Value: "Mobile App v2"},
|
|
{Type: "text", Value: "45%"},
|
|
{Type: "badge", Value: "Medium", BadgeColor: "bg-yellow-lt"},
|
|
{Type: "avatar", Value: "Jeffie Lewzey", AvatarID: "052f", Subtext: "Developer"},
|
|
{Type: "date", Value: "2025-07-15"},
|
|
{Type: "actions"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "text", Value: "API Gateway"},
|
|
{Type: "text", Value: "90%"},
|
|
{Type: "badge", Value: "Low", BadgeColor: "bg-green-lt"},
|
|
{Type: "avatar", Value: "Mallory Hulme", AvatarID: "002m", Subtext: "Backend Engineer"},
|
|
{Type: "date", Value: "2025-05-01"},
|
|
{Type: "actions"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "text", Value: "Admin Dashboard"},
|
|
{Type: "text", Value: "30%"},
|
|
{Type: "badge", Value: "Critical", BadgeColor: "bg-red-lt"},
|
|
{Type: "avatar", Value: "Dunn Slane", AvatarID: "003m", Subtext: "Frontend Dev"},
|
|
{Type: "date", Value: "2025-08-20"},
|
|
{Type: "actions"},
|
|
},
|
|
},
|
|
{
|
|
Cells: []TableCell{
|
|
{Type: "text", Value: "Data Pipeline"},
|
|
{Type: "text", Value: "60%"},
|
|
{Type: "badge", Value: "Medium", BadgeColor: "bg-yellow-lt"},
|
|
{Type: "avatar", Value: "Emmy Levet", AvatarID: "000f", Subtext: "Data Engineer"},
|
|
{Type: "date", Value: "2025-06-15"},
|
|
{Type: "actions"},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
return []TableComponent{table1, table2}
|
|
}
|