goffeetabler/controllers/tablerdata.go
2026-05-03 01:29:32 -05:00

625 lines
22 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"},
},
},
}
}
// SampleUserSettings returns sample data for the user settings page.
func SampleUserSettings() FormtablerUserSettingsPage {
return FormtablerUserSettingsPage{
ActiveTab: "My Account",
SidebarSections: []FormtablerUserSettingsSection{
{
Title: "Business settings",
SubItems: []FormtablerUserSettingsNavItem{
{Title: "My Account", Link: "/user/settings", Active: true},
{Title: "My Notifications", Link: "#"},
{Title: "Connected Apps", Link: "#"},
{Title: "Plans", Link: "#"},
{Title: "Billing & Invoices", Link: "#"},
},
},
{
Title: "Experience",
SubItems: []FormtablerUserSettingsNavItem{
{Title: "Give Feedback", Link: "#"},
},
},
},
}
}
// SampleComponents returns sample data for alerts, breadcrumbs, and toasts.
func SampleComponents() FormtablerComponentsPage {
return FormtablerComponentsPage{
Alerts: []FormtablerAlert{
{
Type: "success",
Title: "Success alert!",
ShowClose: true,
},
{
Type: "warning",
Title: "Warning alert with description",
Description: "This is a warning alert with additional description text to provide more context to the user.",
List: []string{"Item one is important", "Item two requires attention", "Item three is optional"},
},
{
Type: "danger",
Title: "Danger alert",
Action: "Undo",
Buttons: true,
},
{
Type: "info",
Title: "Info alert with link",
Link: "Learn more",
ShowClose: true,
},
{
Type: "success",
Title: "Important alert",
Important: true,
ShowClose: true,
},
{
Type: "warning",
Title: "Minor alert variant",
Minor: true,
},
},
Breadcrumbs: []FormtablerBreadcrumb{
{
Items: []FormtablerBreadcrumbItem{
{Title: "Home", Link: "/", HomeIcon: true},
{Title: "Library", Link: "/library"},
{Title: "Data"},
},
},
{
Separator: "arrows",
Items: []FormtablerBreadcrumbItem{
{Title: "Dashboard", Link: "/"},
{Title: "Components", Link: "/components"},
{Title: "Alerts"},
},
},
{
Separator: "dots",
Items: []FormtablerBreadcrumbItem{
{Title: "Home", Link: "/", HomeIcon: true},
{Title: "Settings", Link: "/settings"},
{Title: "Profile"},
},
},
},
Toasts: []FormtablerToast{
{
ID: "simple",
Show: true,
PersonName: "Paweł Kuna",
PersonSrc: "/static/avatars/000m.jpg",
Date: "2 mins ago",
Text: "Hello, world! This is a toast message.",
},
{
ID: "avatar-toast",
Show: true,
PersonName: "Jeffie Lewzey",
PersonSrc: "/static/avatars/052f.jpg",
Date: "5 mins ago",
Text: "Your report has been generated successfully.",
},
{
ID: "cookies",
Show: true,
Date: "just now",
Cookies: true,
},
{
ID: "no-header",
Show: true,
HideHeader: true,
Text: "This toast has no header — just a plain message body.",
},
},
}
}
// SampleCards returns 6 sample cards showing different variants.
func SampleCards() []FormtablerCard {
defaultBody := &FormtablerCardBody{
Text: "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aperiam deleniti fugit incidunt, iste, itaque minima neque pariatur perferendis sed suscipit velit vitae voluptatem.",
}
return []FormtablerCard{
// 1. Card with header, body text, and footer
{
Header: &FormtablerCardHeader{Title: "Card with header and footer"},
Body: defaultBody,
Footer: &FormtablerCardFooter{Text: "This is standard card footer"},
},
// 2. Card with image top, status bar, and action button in body
{
Image: &FormtablerCardImage{Position: "top", Src: "/public/static/photos/coffee-on-a-table-with-other-items.jpg"},
Status: &FormtablerCardStatus{Position: "top", Color: "red"},
Body: &FormtablerCardBody{
Title: "Card with image & status",
Subtitle: "Featured card",
Text: "This card has an image at the top, a red status bar, and a call-to-action button.",
HasButton: true,
ButtonText: "View details",
},
},
// 3. Card with image bottom, progress bar, and footer with elements
{
Image: &FormtablerCardImage{Position: "bottom", Src: "/public/static/photos/coffee-on-a-table-with-other-items.jpg"},
Body: defaultBody,
Footer: &FormtablerCardFooter{
HasSwitch: true,
HasMore: true,
},
Progress: &FormtablerCardProgress{Percent: 60, Color: "green"},
},
// 4. Card with header tabs, alert, and footer buttons
{
Header: &FormtablerCardHeader{
UseTabs: true,
Tabs: []FormtablerCardTab{
{Title: "Active", Active: true, Link: "#"},
{Title: "Second", Link: "#"},
{Title: "Disabled", Disabled: true, Link: "#"},
},
},
Alert: &FormtablerCardAlert{Text: "This is an alert message inside the card.", Type: "info"},
Body: defaultBody,
Footer: &FormtablerCardFooter{
ButtonsCancel: "Cancel",
ButtonsAction: "Continue",
},
},
// 5. Card with inactive state, no footer
{
Inactive: true,
Header: &FormtablerCardHeader{Title: "Inactive card"},
Body: &FormtablerCardBody{
Title: "This card is inactive",
Text: "Inactive cards have reduced opacity. They are useful for showing disabled or expired content.",
},
},
// 6. Card with header pills, footer with avatars, and active state
{
Active: true,
Header: &FormtablerCardHeader{
UsePills: true,
Pills: []FormtablerCardTab{
{Title: "All", Active: true, Link: "#"},
{Title: "Active", Link: "#"},
{Title: "Completed", Link: "#"},
},
},
Body: defaultBody,
Footer: &FormtablerCardFooter{
HasCheck: true,
HasAvatars: true,
},
},
}
}
// SampleFormElements returns sample data for all 25 formtabler components.
func SampleFormElements() FormtablerFormElementsPage {
return FormtablerFormElementsPage{
TextInputs: []FormtablerTextInput{
{Label: "Static", Type: "static", Value: "Input value"},
{Label: "Password", Type: "password", Placeholder: "Input placeholder"},
{Label: "Text", Type: "text", Placeholder: "Input placeholder"},
{Label: "Textarea", Type: "textarea", Placeholder: "Textarea placeholder"},
},
IconInputs: []FormtablerIconInput{
{Label: "Icon input", Placeholder: "Search for…", Prepend: false},
{Label: "Icon input", Placeholder: "Username", Icon: "user", Prepend: true},
{Label: "Loader input", Placeholder: "Loading…", Loader: true},
{Label: "Loader input", Placeholder: "Loading…", Icon: "user", Loader: true, Prepend: true},
},
IconSeparated: FormtablerIconSeparated{Label: "Separated inputs", Placeholder: "Search for…", ButtonIcon: "search"},
InputSizing: FormtablerInputSizing{},
FileInput: FormtablerFileInput{Label: "Custom File Input"},
ColorInput: FormtablerColorInput{
Label: "Color Input",
Name: "color",
Type: "radio",
Rounded: false,
Colors: []FormtablerSwatch{
{Color: "dark"}, {Color: "white", Checked: true}, {Color: "blue"},
{Color: "azure"}, {Color: "indigo"}, {Color: "purple"},
{Color: "pink"}, {Color: "red"}, {Color: "orange"}, {Color: "yellow"},
},
},
ColorPicker: FormtablerColorPicker{Label: "Color picker", Color: "#206bc4"},
RangeInput: FormtablerRangeInput{Label: "Range input"},
Datalist: FormtablerDatalist{
Label: "Datalist example",
Placeholder: "Type to search...",
Options: []string{
"Afghanistan", "Albania", "Algeria", "Andorra", "Angola",
"Antarctica", "Argentina", "Armenia", "Australia", "Austria",
},
},
ImageCheck: FormtablerImageCheck{
Label: "Image Check",
Images: []FormtablerImageItem{
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 1", Checked: true},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 2"},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 3", Checked: true},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 4"},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 5"},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 6", Checked: true},
},
},
ImageRadio: FormtablerImageRadio{
Label: "Image Check Radio",
Images: []FormtablerImageItem{
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 1", Checked: true},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 2"},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 3", Checked: true},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 4"},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 5"},
{Src: "/public/static/photos/0246c91f-47c2-4f6e-b85d-d7a4806b30c9.jpg", Alt: "Image 6", Checked: true},
},
},
ImagePerson: FormtablerImagePerson{
Label: "Person Check",
AvatarSize: "md",
People: []FormtablerPersonItem{
{Name: "Paweł Kuna", Src: "/public/static/avatars/000m.jpg", Checked: true},
{Name: "Jeffie Lewzey", Src: "/public/static/avatars/052f.jpg"},
{Name: "Mallory Hulme", Src: "/public/static/avatars/002m.jpg", Checked: true},
{Name: "Dunn Slane", Src: "/public/static/avatars/003m.jpg"},
{Name: "Emmy Levet", Src: "/public/static/avatars/000f.jpg"},
{Name: "Maryjo Lebarree", Src: "/public/static/avatars/001f.jpg", Checked: true},
{Name: "Egan Poetz", Src: "/public/static/avatars/004m.jpg"},
{Name: "Kellie Skingley", Src: "/public/static/avatars/002f.jpg"},
{Name: "Christy Maciak", Src: "/public/static/avatars/003f.jpg"},
},
},
Checkboxes: FormtablerCheckboxes{
Label: "Checkboxes",
Checkboxes: []FormtablerCheckItem{
{Title: "Option 1", Checked: false, Disabled: false},
{Title: "Option 2", Checked: false, Disabled: true},
{Title: "Option 3", Checked: true, Disabled: false},
},
},
CheckboxesInline: FormtablerCheckboxesInline{
Label: "Inline Checkboxes",
Checkboxes: []FormtablerCheckItem{
{Title: "Option 1", Checked: false, Disabled: false},
{Title: "Option 2", Checked: false, Disabled: true},
{Title: "Option 3", Checked: true, Disabled: false},
},
},
Radios: FormtablerRadios{
Label: "Radios",
Name: "radios",
Radios: []FormtablerCheckItem{
{Title: "Option 1", Checked: true, Disabled: false},
{Title: "Option 2", Checked: false, Disabled: false},
{Title: "Option 3", Checked: false, Disabled: true},
{Title: "Option 4", Checked: true, Disabled: true},
},
},
RadiosInline: FormtablerRadiosInline{
Label: "Inline Radios",
Name: "radios-inline",
Radios: []FormtablerCheckItem{
{Title: "Option 1", Checked: true, Disabled: false},
{Title: "Option 2", Checked: false, Disabled: false},
{Title: "Option 3", Checked: false, Disabled: true},
},
},
Toggles: FormtablerToggle{
Label: "Toggle switches",
Toggles: []FormtablerCheckItem{
{Title: "Option 1", Checked: true},
{Title: "Option 2"},
{Title: "Option 3"},
},
},
ToggleSingle: FormtablerToggleSingle{Label: "Single switch", Title: "I agree with terms and conditions"},
Select: FormtablerSelect{
Label: "Select",
Options: []string{"One", "Two", "Three"},
Multiple: false,
},
Selectgroups: []FormtablerSelectGroup{
{
Title: "Simple selectgroup",
Values: []FormtablerSelectGroupValue{
{Label: "HTML", Value: "html", Checked: true},
{Label: "CSS", Value: "css"},
{Label: "PHP", Value: "php"},
{Label: "JavaScript", Value: "js"},
},
},
{
Title: "Icon input",
Values: []FormtablerSelectGroupValue{
{Label: "Sun", Value: "sun", Icon: "sun", Checked: true},
{Label: "Moon", Value: "moon", Icon: "moon"},
{Label: "Cloud Rain", Value: "cloud-rain", Icon: "cloud-rain"},
{Label: "Cloud", Value: "cloud", Icon: "cloud"},
{Label: "Other", Value: "other"},
},
},
{
Title: "Selectgroup with icons and text",
Name: "icons",
Type: "radio",
WithText: true,
Values: []FormtablerSelectGroupValue{
{Label: "Home", Value: "home", Icon: "home", WithText: true, Checked: true},
{Label: "User", Value: "user", Icon: "user", WithText: true},
{Label: "Circle", Value: "circle", Icon: "circle", WithText: true},
{Label: "Square", Value: "square", Icon: "square", WithText: true},
},
},
{
Title: "Different style",
Pills: true,
Values: []FormtablerSelectGroupValue{
{Label: "HTML", Value: "html", Checked: true},
{Label: "CSS", Value: "css"},
{Label: "PHP", Value: "php"},
{Label: "JavaScript", Value: "js"},
},
},
},
SelectgroupPayments: FormtablerSelectgroupPayments{
Label: "Payment method",
Items: []FormtablerPaymentItem{
{Provider: "visa", Ending: "4532", Checked: true},
{Provider: "mastercard", Ending: "8721"},
{Provider: "paypal"},
},
},
SelectgroupProjectManager: FormtablerSelectgroupProjectManager{
Label: "Project Manager",
Managers: []FormtablerPersonItemWithJob{
{Name: "Paweł Kuna", Src: "/public/static/avatars/000m.jpg", JobTitle: "UI Designer", Checked: true},
{Name: "Jeffie Lewzey", Src: "/public/static/avatars/052f.jpg", JobTitle: "Chemical Engineer"},
{Name: "Mallory Hulme", Src: "/public/static/avatars/002m.jpg", JobTitle: "Geologist IV"},
{Name: "Dunn Slane", Src: "/public/static/avatars/003m.jpg", JobTitle: "Research Nurse"},
{Name: "Emmy Levet", Src: "/public/static/avatars/000f.jpg", JobTitle: "VP Product Management"},
},
},
Fieldset: FormtablerFieldset{
Label: "Fieldset",
Inputs: []FormtablerFieldsetInput{
{Label: "Full name", Type: "text", Required: true},
{Label: "Company", Type: "text", Required: true},
{Label: "Email", Type: "email", Required: true},
{Label: "Phone number", Type: "tel"},
},
},
CheckboxesList: FormtablerCheckboxesList{
Label: "Checkboxes list",
Items: []FormtablerCheckListItem{
{Title: "Push Notifications", Checked: true},
{Title: "SMS Notifications"},
{Title: "Email Notifications", Checked: true},
},
},
ValidationStates: FormtablerValidationStates{Label: "Validation States"},
}
}
// 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}
}