sozsoft-platform/ui/src/views/intranet/dashboardWidget.ts
2026-07-01 20:37:44 +03:00

25 lines
646 B
TypeScript

import type { ReactNode } from 'react'
import type {
AnnouncementDto,
EventDto,
IntranetDashboardDto,
SurveyDto,
} from '@/proxy/intranet/models'
export type DashboardWidgetColumn = 'left' | 'center' | 'right'
export interface DashboardWidgetContext {
dashboard?: IntranetDashboardDto
openAnnouncement: (announcement: AnnouncementDto) => void
openEvent: (event: EventDto) => void
takeSurvey: (survey: SurveyDto) => void
}
export interface DashboardWidgetDefinition {
id: string
permission: string
column: DashboardWidgetColumn
labelKey: string
order: number
render: (context: DashboardWidgetContext) => ReactNode
}