;; Notification components

(defcomp ~federation-notification-preview (&key preview)
  (div :class "text-sm text-stone-500 mt-1 truncate" preview))

(defcomp ~federation-notification-card (&key cls avatar from-name from-username from-domain action-text preview time)
  (div :class cls
    (div :class "flex items-start gap-3"
      avatar
      (div :class "flex-1"
        (div :class "text-sm"
          (span :class "font-semibold" from-name)
          " " (span :class "text-stone-500" "@" from-username from-domain)
          " " (span :class "text-stone-600" action-text))
        preview
        (div :class "text-xs text-stone-400 mt-1" time)))))

(defcomp ~federation-notifications-list (&key items)
  (div :class "space-y-2" items))

(defcomp ~federation-notifications-page (&key notifs)
  (h1 :class "text-2xl font-bold mb-6" "Notifications") notifs)
