diff --git a/.opencode/skills/minivan/SKILL.md b/.opencode/skills/minivan/SKILL.md index 46f841b..d99f392 100644 --- a/.opencode/skills/minivan/SKILL.md +++ b/.opencode/skills/minivan/SKILL.md @@ -169,27 +169,15 @@ frontend/ ## API-эндпоинты -### Auth -- `/api/auth/login` — вход (POST) -- `/api/auth/register` — регистрация (POST) -- `/api/auth/logout` — выход (POST) -- `/api/auth/sign-out` — выход (POST, alias) -- `/api/auth/check-auth` — проверка авторизации (GET) -- `/api/auth/send-email` — отправка email (POST) -- `/api/auth/send-admin-notification` — уведомление админа (POST) -- `/api/auth/send-booking-confirmation` — подтверждение брони (POST) -- `/api/auth/google/index` — Google OAuth инициация (GET) -- `/api/auth/google/callback` — Google OAuth callback (GET) - -### Public -- `/api/contact` — контактная форма (POST) -- `/api/send-booking` — бронирование (POST) -- `/api/files-proxy/[collectionName]/[recordId]/[filename]` — прокси файлов (GET) - -### Reviews -- `/api/reviews` — GET все отзывы, POST создать, DELETE удалить -- `/api/reviews/[id]` — GET/DELETE один отзыв -- `/api/reviews/latest-reviews` — GET последние отзывы +- `/api/auth/login` — вход +- `/api/auth/register` — регистрация +- `/api/auth/logout` — выход +- `/api/auth/check-auth` — проверка авторизации +- `/api/auth/google/*` — Google OAuth +- `/api/contact` — контактная форма +- `/api/reviews` — отзывы (GET/POST/DELETE) +- `/api/send-booking` — бронирование +- `/api/files-proxy/*` — прокси файлов ## Переменные окружения diff --git a/frontend/package.json b/frontend/package.json index ac9180d..598ec56 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -5,7 +5,6 @@ "scripts": { "dev": "astro dev", "build": "astro build", - "postbuild": "node scripts/copy-sitemap.mjs", "preview": "astro preview", "astro": "astro" }, diff --git a/frontend/public/robots.txt b/frontend/public/robots.txt index 1b826aa..69dce68 100644 --- a/frontend/public/robots.txt +++ b/frontend/public/robots.txt @@ -8,5 +8,4 @@ Disallow: /email-verified Disallow: /profile Disallow: /auth/ -Sitemap: https://minivan-berlin.de/sitemap-index.xml -Sitemap: https://minivan-berlin.de/sitemap.xml \ No newline at end of file +Sitemap: https://minivan-berlin.de/sitemap-index.xml \ No newline at end of file diff --git a/frontend/scripts/copy-sitemap.mjs b/frontend/scripts/copy-sitemap.mjs deleted file mode 100644 index 39d1920..0000000 --- a/frontend/scripts/copy-sitemap.mjs +++ /dev/null @@ -1,16 +0,0 @@ -import { cpSync, existsSync } from 'node:fs'; -import { resolve, dirname } from 'node:path'; -import { fileURLToPath } from 'node:url'; - -const __dirname = dirname(fileURLToPath(import.meta.url)); -const distDir = resolve(__dirname, '..', 'dist', 'client'); - -const source = resolve(distDir, 'sitemap-0.xml'); -const target = resolve(distDir, 'sitemap.xml'); - -if (existsSync(source)) { - cpSync(source, target); - console.log('✅ sitemap.xml created'); -} else { - console.error('❌ sitemap-0.xml not found'); -} \ No newline at end of file diff --git a/frontend/src/env.d.ts b/frontend/src/env.d.ts index 3171bab..33147fa 100644 --- a/frontend/src/env.d.ts +++ b/frontend/src/env.d.ts @@ -12,8 +12,6 @@ interface ImportMetaEnv { readonly MAIL_PORT: string; readonly MAIL_FROM: string; readonly ADMIN_EMAIL: string; - readonly SENDER_EMAIL: string; - readonly PROD: string; } interface ImportMeta { @@ -24,14 +22,6 @@ interface ImportMeta { declare namespace App { interface Locals { pb: PocketBase; - user: RecordModel | null; - } -} - -// 3. Расширение window для глобальных функций -declare global { - interface Window { - closeModal?: (modalId: string) => void; - currentSelectedCar?: unknown; + user: RecordModel | undefined; } } \ No newline at end of file diff --git a/frontend/src/types/globalInterfaces.ts b/frontend/src/types/globalInterfaces.ts index 3c3993a..4e2806c 100644 --- a/frontend/src/types/globalInterfaces.ts +++ b/frontend/src/types/globalInterfaces.ts @@ -27,37 +27,6 @@ export interface Car extends BaseRecord { max_passengers: number; } -// Интерфейсы для пользователей -export interface User extends BaseRecord { - username: string; - email: string; - name: string; - avatar?: string; - phone?: string; - is_verified: boolean; - emailVisibility?: boolean; -} - -// Интерфейсы для бронирований -export interface Booking extends BaseRecord { - customer_name: string; - customer_email: string; - customer_phone: string; - pickup_location: string; - dropoff_location: string; - pickup_date: string; - pickup_time: string; - dropoff_date?: string; - dropoff_time?: string; - passengers: number; - vehicle_id?: string; - vehicle_name?: string; - message?: string; - status: 'pending' | 'confirmed' | 'cancelled' | 'completed'; - total_price?: string; - created: string; -} - export interface SliderCar extends BaseRecord { brand: string; model: string; @@ -163,43 +132,6 @@ export interface Review extends BaseRecord { createdAt: string; } -// Интерфейсы для постов блога -export interface BlogPost extends BaseRecord { - title: string; - slug: string; - excerpt: string; - content: string; - content_html?: string; - image: string; - alt_text?: string; - author: string; - author_name?: string; - author_avatar?: string; - published: boolean; - publish_date: string; - views: number; - tags: string[]; - category?: string; - featured: boolean; -} - -export type Post = BlogPost; - -// Интерфейсы для комментариев блога -export interface Comment extends BaseRecord { - post_id: string; - author_name: string; - author_email: string; - author_avatar?: string; - content: string; - parent_id?: string; - reply_to?: string; - is_verified: boolean; - is_spam: boolean; - is_published: boolean; - created: string; -} - // Интерфейс для отзыва в LatestReviews export interface LatestReview { id: string;