rc1
This commit is contained in:
1 parent
4f4fb0baf2
commit
c5495ddffa
2 files changed
+9
-17
No files matched your search
+4
-10
@@ -28,6 +28,7 @@ import {
|
||||
Trash2,
|
||||
UserCog,
|
||||
UserCircle,
|
||||
FolderGit,
|
||||
X,
|
||||
} from "lucide-react";
|
||||
import { FormEvent, MouseEvent, useCallback, useEffect, useMemo, useRef, useState } from "react";
|
||||
@@ -1245,7 +1246,7 @@ export function App() {
|
||||
<SidebarMenuButton asChild>
|
||||
<a href={isAdmin ? "/admin/users" : "/timer"} onClick={navHandler(isAdmin ? "/admin/users" : "/timer")}>
|
||||
<Command />
|
||||
<span className="font-semibold text-base">TicketTracker </span><span className="font-medium text-muted-foreground">v1.0.0-rc1</span>
|
||||
<span className="font-semibold text-base">TicketTracker </span>
|
||||
</a>
|
||||
</SidebarMenuButton>
|
||||
</SidebarMenuItem>
|
||||
@@ -1373,18 +1374,11 @@ export function App() {
|
||||
</SidebarContent>
|
||||
|
||||
<SidebarFooter>
|
||||
{!isAdmin ? <div className="mx-2 rounded-lg border bg-card p-3 text-sm shadow-xs group-data-[collapsible=icon]:hidden">
|
||||
<div className="mb-2 flex items-center gap-2 font-medium">
|
||||
<CheckCircle2 className="size-4 text-muted-foreground" />
|
||||
Abschluss
|
||||
</div>
|
||||
<p className="text-muted-foreground">Offene Bewertungen findest du im Monatsabschluss.</p>
|
||||
</div> : null}
|
||||
<SidebarMenu>
|
||||
<SidebarMenuItem>
|
||||
<SidebarMenuButton tooltip="Worklog">
|
||||
<UserCircle />
|
||||
<span>Worklog lokal</span>
|
||||
<FolderGit />
|
||||
<span className="text-xs text-muted-foreground">v1.0.0-rc1</span>
|
||||
</SidebarMenuButton>
|
||||
</SidebarMenuItem>
|
||||
</SidebarMenu>
|
||||
|
||||
@@ -670,12 +670,12 @@ export function AnalysisPage({ onNavigate }: AnalysisPageProps) {
|
||||
<Card>
|
||||
<CardHeader className="gap-3 p-4 sm:flex-row sm:items-center sm:justify-between sm:space-y-0">
|
||||
<div>
|
||||
<CardTitle>Tickets im Zeitraum</CardTitle>
|
||||
<CardTitle>Sessions im Zeitraum</CardTitle>
|
||||
<CardDescription>
|
||||
{periodType === "month" ? "Sessions prüfen, bewerten und bei Bedarf Tickets öffnen." : "Tagesansicht ohne eigenen Abschluss."}
|
||||
</CardDescription>
|
||||
</div>
|
||||
<HelpLink anchor="auswertung" label="Hilfe zu Tickets im Zeitraum" />
|
||||
<HelpLink anchor="auswertung" label="Hilfe zu Sessions im Zeitraum" />
|
||||
</CardHeader>
|
||||
<CardContent className="px-4 pb-4">
|
||||
<div className="hidden md:block">
|
||||
@@ -687,7 +687,6 @@ export function AnalysisPage({ onNavigate }: AnalysisPageProps) {
|
||||
<TableHead>Art</TableHead>
|
||||
<TableHead>Sessions</TableHead>
|
||||
<TableHead>Zeit abgerechnet</TableHead>
|
||||
<TableHead>Sessions abgerechnet</TableHead>
|
||||
<TableHead>Status</TableHead>
|
||||
<TableHead />
|
||||
</TableRow>
|
||||
@@ -704,7 +703,7 @@ export function AnalysisPage({ onNavigate }: AnalysisPageProps) {
|
||||
<span className="truncate text-base font-semibold">{section.label}</span>
|
||||
</div>
|
||||
<div className="flex flex-wrap items-center gap-2">
|
||||
<Badge variant="outline">{section.ticketCount} Ticket(s)</Badge>
|
||||
<Badge variant="outline">{section.ticketCount} Session(s)</Badge>
|
||||
<Badge variant="outline">{formatMinutes(section.totalMinutes)}</Badge>
|
||||
{section.openCount > 0 ? <Badge variant="warning">{section.openCount} offen</Badge> : <Badge variant="success">bewertet</Badge>}
|
||||
</div>
|
||||
@@ -728,7 +727,6 @@ export function AnalysisPage({ onNavigate }: AnalysisPageProps) {
|
||||
<TableCell>{workTypeLabel(ticket.work_type)}</TableCell>
|
||||
<TableCell>{ticket.session_count}</TableCell>
|
||||
<TableCell>{formatMinutes(ticket.total_minutes)}</TableCell>
|
||||
<TableCell>{ticket.billed_count}</TableCell>
|
||||
<TableCell>
|
||||
<TicketStatus ticket={ticket} />
|
||||
</TableCell>
|
||||
@@ -760,7 +758,7 @@ export function AnalysisPage({ onNavigate }: AnalysisPageProps) {
|
||||
<span className="truncate text-base font-semibold">{section.label}</span>
|
||||
</div>
|
||||
<div className="flex flex-wrap items-center gap-2">
|
||||
<Badge variant="outline">{section.ticketCount} Ticket(s)</Badge>
|
||||
<Badge variant="outline">{section.ticketCount} Session(s)</Badge>
|
||||
<Badge variant="outline">{formatMinutes(section.totalMinutes)}</Badge>
|
||||
{section.openCount > 0 ? <Badge variant="warning">{section.openCount} offen</Badge> : <Badge variant="success">bewertet</Badge>}
|
||||
</div>
|
||||
@@ -810,7 +808,7 @@ export function AnalysisPage({ onNavigate }: AnalysisPageProps) {
|
||||
{tickets.length === 0 ? (
|
||||
<p className="py-8 text-center text-sm text-muted-foreground">Für diesen Zeitraum sind noch keine Sessions vorhanden.</p>
|
||||
) : visibleTickets.length === 0 ? (
|
||||
<p className="py-8 text-center text-sm text-muted-foreground">Keine Tickets passend zu den aktuellen Filtern.</p>
|
||||
<p className="py-8 text-center text-sm text-muted-foreground">Keine Sessions passend zu den aktuellen Filtern.</p>
|
||||
) : null}
|
||||
</CardContent>
|
||||
</Card>
|
||||
|
||||
Reference in new issue
Block a user