Vadym Samoilenko
|
9d4333cf92
|
fix: bug fixes + Phase 3 middleware/UTM
Bug fixes:
- Add beforeValidate slug hooks to Blog, Events, Pages, LandingPages (slugify)
- Add auto-generation hooks for orderNumber (Orders) and ticketCode (Tickets)
- Restrict Tickets.create to isAuthenticated (was publicly accessible)
- Rename isAdminOrPublished → isAuthenticatedOrPublished for clarity
- Remove redundant brand CSS utilities (Tailwind v4 generates them from @theme)
- Remove autoprefixer (redundant with @tailwindcss/postcss)
- Replace real API keys/IDs with placeholders in .env.example
Phase 3:
- src/middleware.ts — UTM first-touch cookies + maintenance mode redirect
- src/lib/utm.ts — getUtmFromCookies(), getGoogleClientId()
- src/app/(frontend)/maintenance/page.tsx — maintenance page
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-04 17:09:36 +01:00 |
|
Vadym Samoilenko
|
61e73033fe
|
feat: Phase 2 complete — content model, blocks, collections, globals
- 11 Page Builder blocks: HeroBlock, TextBlock, FeaturesBlock,
LocationCardBlock, PricingBlock, GalleryBlock, FormBlock (with label
relation for lead tracking), CTABlock, CountdownBlock, BlogPreviewBlock,
MapBlock
- Collections: Labels, Pages, LandingPages, Blog, Events, Leads (UTM +
googleClientId + label relation), Orders, Tickets
- Globals: SiteSettings (GTM/GA4/Binotel/Umami), TicketsConfig, Navigation
- Added "type": "module" to package.json for Payload CLI ESM compatibility
- payload-types.ts generated (1874 lines)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 17:52:54 +01:00 |
|
Vadym Samoilenko
|
04b112d476
|
feat: Фаза 1 — фундамент проєкту Shumiland
- Ініціалізація Next.js 15.4.11 + Payload CMS 3.x (PostgreSQL/Drizzle)
- Docker Compose: PostgreSQL, Twenty CRM, Umami, Metabase
- Tailwind CSS 4 з brand кольорами (green/orange/blue/purple/yellow)
- Шрифти: Montserrat Alternates + Rubik через next/font/google
- shadcn/ui компоненти: Button, Input, Label, Textarea, Badge, Card, Separator
- Payload колекції: Users (ролі SUPER_ADMIN/ADMIN/EDITOR), Media (upload з sizes)
- Access control: isAdmin, isEditor, isSuperAdmin, isAdminOrPublished
- .env.example з усіма змінними середовища
- Dockerfile (multi-stage, output: standalone)
- Білд успішно проходить перевірку TypeScript
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-02 14:54:13 +01:00 |
|