import flet as ft from utils import AppView, Title from modules.settings import config from datetime import datetime def greet(time: datetime): if 5 <= time.hour < 12: return "Goodmorning," elif 12 <= time.hour < 18: return "Goodafternoon," else: return "Goodevening," def Home(page: ft.Page): contentColumn = ft.Container( padding=10, content=ft.Column( controls=[ ft.Text( greet(datetime.now()), size=50, weight=ft.FontWeight.W_200, ), ft.Text( config.get('general', 'name').split(" ")[0], size=40, weight=ft.FontWeight.W_200, ), ft.Divider(), ft.ResponsiveRow( [ ft.Container( content=ft.Text("A"), margin=10, padding=10, bgcolor=ft.colors.with_opacity(0.1, '#000000'), border_radius=10, ), ft.Divider(), ft.Container( content=ft.Text("B"), margin=10, padding=10, bgcolor=ft.colors.with_opacity(0.1, '#000000'), border_radius=10, ), ft.Divider(), ft.Container( content=ft.Text("C"), margin=10, padding=10, bgcolor=ft.colors.with_opacity(0.1, '#000000'), border_radius=10, ), ft.Divider(), ft.Container( content=ft.Text("D"), margin=10, padding=10, bgcolor=ft.colors.with_opacity(0.1, '#000000'), border_radius=10, ), ], alignment=ft.MainAxisAlignment.CENTER, ), ft.Divider(), ft.Container( margin=10, padding=10, bgcolor=ft.colors.with_opacity(0.1, '#000000'), border_radius=10, content=ft.Row( [ ft.Container( content=ft.Icon(ft.icons.APPS), margin=10, padding=10, alignment=ft.alignment.center, bgcolor=ft.colors.GREY_700, width=60, height=60, border_radius=10, on_click=None, ), ft.Container( content=ft.Icon(ft.icons.HISTORY), margin=10, padding=10, alignment=ft.alignment.center, bgcolor=ft.colors.GREY_700, width=60, height=60, border_radius=10, on_click=None, ), ft.Container( content=ft.Icon(ft.icons.SETTINGS), margin=10, padding=10, alignment=ft.alignment.center, bgcolor=ft.colors.GREY_700, width=60, height=60, border_radius=10, ink=True, on_click=lambda _: page.go("/settings"), ), ft.Container( content=ft.Icon(ft.icons.LIST), margin=10, padding=10, alignment=ft.alignment.center, bgcolor=ft.colors.GREY_700, width=60, height=60, border_radius=10, ink=True, on_click=lambda e: print("Clickable with Ink clicked!"), ), ], alignment=ft.MainAxisAlignment.CENTER, ), ), ], ), ) return AppView( '/', [ ft.AppBar( title=ft.Text(Title(__file__)), # actions=[ # ft.IconButton( # icon=ft.icons.SETTINGS, # on_click=lambda _: page.go('/settings'), # ), # ], ), contentColumn, ], )