Files
ArchiTools/src/core/notifications/index.ts
T
Claude VM f44d57629f feat: county sync on monitor page + in-app notification system
- GET /api/eterra/counties — distinct county list from GisUat
- POST /api/eterra/sync-county — background sync all UATs in a county
  (TERENURI + CLADIRI + INTRAVILAN), magic mode for enriched UATs,
  concurrency guard, creates notification on completion
- In-app notification service (KeyValueStore, CRUD, unread count)
- GET/PATCH /api/notifications/app — list and mark-read endpoints
- NotificationBell component in header with popover + polling
- Monitor page: county select dropdown + SyncTestButton with customBody

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 22:56:59 +03:00

27 lines
574 B
TypeScript

export type {
NotificationType,
NotificationTypeInfo,
NotificationPreference,
DigestSection,
DigestItem,
DigestResult,
EmailPayload,
} from "./types";
export { NOTIFICATION_TYPES, defaultPreference } from "./types";
export { sendEmail } from "./email-service";
export {
getPreference,
savePreference,
getAllPreferences,
runDigest,
} from "./notification-service";
export {
createAppNotification,
getAppNotifications,
getUnreadCount,
markAsRead,
markAllAsRead,
type AppNotification,
type AppNotificationType,
} from "./app-notifications";