import { HStack, Image, Text, VStack } from "@expo/ui/swift-ui";
import {
font,
foregroundStyle,
frame,
monospacedDigit,
padding,
} from "@expo/ui/swift-ui/modifiers";
import { createLiveActivity, type LiveActivityEnvironment } from "expo-widgets";
import type { TimeClockActivityProps } from "@/lib/time-clock-live-activity.types";
const TIMER_GREEN = "#4ADE80";
const SUBTLE_TEXT = "#E5E5E5";
const MUTED_TEXT = "#D4D4D4";
function ElapsedText({
value,
size,
weight = "semibold",
}: {
value: string;
size: number;
weight?: "regular" | "medium" | "semibold" | "bold";
}) {
return (
{value}
);
}
function BrandMark({ uri, size }: { uri?: string; size: number }) {
if (uri) {
return ;
}
return ;
}
function BrandLogo({ uri, height = 18 }: { uri?: string; height?: number }) {
if (uri) {
return ;
}
return (
beenvoice
);
}
function TimeClockActivity(props: TimeClockActivityProps, _environment: LiveActivityEnvironment) {
"widget";
const title = props.description.trim() || "Timer running";
const subtitle = [props.clientName, props.invoiceLabel].filter(Boolean).join(" ยท ");
return {
banner: (
),
compactLeading: ,
compactTrailing: ,
minimal: ,
expandedLeading: (
{props.clockTime}
),
expandedTrailing: (
elapsed
),
expandedBottom: (
{title}
{subtitle ? (
{subtitle}
) : null}
total
),
};
}
export default createLiveActivity("TimeClockActivity", TimeClockActivity);