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, color=ft.colors.WHITE), 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, color=ft.colors.WHITE), 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, color=ft.colors.WHITE), 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, color=ft.colors.WHITE), 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, ], )