feat: обновил типы в компонентах
Frontend CI / build-and-check (push) Failing after 19s
🚀 Create and publish a Docker image / Detect changes in backend and frontend (push) Successful in 5s
🚀 Create and publish a Docker image / Build & publish backend image (push) Successful in 8s
🚀 Create and publish a Docker image / Build & publish frontend image (push) Successful in 16s
🚀 Create and publish a Docker image / Update stack on Portainer (push) Successful in 3s

This commit is contained in:
2026-05-28 19:54:38 +03:00
parent ef2fd39508
commit c93d205e34
6 changed files with 16 additions and 8 deletions
@@ -17,9 +17,10 @@ import EmptyState from '@/components/ui/EmptyState.vue'
import CreateLectureModal from '@/components/admin/CreateLectureModal.vue'
type TabKey = 'lectures' | 'courses' | 'rooms' | 'tags'
type DataTableColumn = { key: string; label: string; align?: 'left' | 'center' | 'right' }
type TabConfig = {
title: string
columns: Array<{ key: string; label: string; align?: string }>
columns: DataTableColumn[]
rows: Record<string, unknown>[]
}
@@ -7,7 +7,9 @@ import EmptyState from '@/components/ui/EmptyState.vue'
import { reviewsApi } from '@/api'
import type { ApiReviewLlmStatus, ApiReviewSentiment, ReviewDto } from '@/api/types'
const columns = [
type DataTableColumn = { key: string; label: string; align?: 'left' | 'center' | 'right' }
const columns: DataTableColumn[] = [
{ key: 'id', label: 'ID' },
{ key: 'lecture', label: 'Лекция' },
{ key: 'student', label: 'Студент' },
+3 -1
View File
@@ -13,7 +13,9 @@ const users = ref<UserDto[]>([])
const loading = ref(false)
const error = ref('')
const columns = [
type DataTableColumn = { key: string; label: string; align?: 'left' | 'center' | 'right' }
const columns: DataTableColumn[] = [
{ key: 'name', label: 'Имя' },
{ key: 'email', label: 'Email' },
{ key: 'role', label: 'Роль', align: 'center' },
+3 -1
View File
@@ -11,6 +11,8 @@ import ModalDialog from '@/components/ui/ModalDialog.vue'
import EnrollmentLimitModal from '@/components/ui/EnrollmentLimitModal.vue'
const lecturesStore = useLecturesStore()
type DataTableColumn = { key: string; label: string; align?: 'left' | 'center' | 'right' }
const search = ref('')
const viewMode = ref<'cards' | 'list' | 'calendar'>('cards')
const dateFilter = ref('Любая дата')
@@ -102,7 +104,7 @@ const appliedFilters = computed(() => {
return filters
})
const tableColumns = [
const tableColumns: DataTableColumn[] = [
{ key: 'title', label: 'Лекция' },
{ key: 'teacher', label: 'Преподаватель' },
{ key: 'date', label: 'Дата' },
@@ -8,8 +8,9 @@ import StatusBadge from '@/components/ui/StatusBadge.vue'
import EmptyState from '@/components/ui/EmptyState.vue'
const auth = useAuthStore()
const lecturesStore = useLecturesStore()
type DataTableColumn = { key: string; label: string; align?: 'left' | 'center' | 'right' }
const columns = [
const columns: DataTableColumn[] = [
{ key: 'title', label: 'Лекция' },
{ key: 'date', label: 'Дата' },
{ key: 'status', label: 'Статус', align: 'center' },