Add different gallery layouts

This commit is contained in:
2025-07-12 23:30:52 +02:00
parent 505e1e28b8
commit f0d44ff807
18 changed files with 2449 additions and 4 deletions

164
ToDo2.md Normal file
View File

@ -0,0 +1,164 @@
---
## 🖥 Frontend App (`app.fellies.art`)
### Commission Pricing & Display
- [x] Commission pricing overview page
- [x] Display commission types as cards
- [x] Show base options (headshot, halfbody, fullbody)
- [x] Show extras (backgrounds, NSFW, complexity, etc.)
- [x] Use `€` currency and place symbol **after** price
- [x] Include example images per type
- [x] Collapsible image section (individual per card)
- [x] Fix equal-height card issue (use natural height)
### Commission Ordering Form
- [x] Build commission ordering form
- [x] Use `react-hook-form` and `zod` for validation
- [x] Dynamically update form based on selected commission type
- [x] Show calculated total price
- [x] Support selecting:
- [x] Body option (headshot, halfbody, fullbody)
- [x] Extras (toggle and range input)
- [x] Contact info (email, handle, etc.)
- [x] Description / project notes
- [x] File upload for reference images
- [ ] Preview summary with price (🚧 basic version shown; styled preview TBD)
- [x] Dynamically render custom fields per selected commission type
### TOS / Info
- [ ] Add Terms of Service (TOS) section
- [ ] Styled output from Markdown or HTML
- [ ] Editable via admin
- [ ] Add “Will draw / Wont draw” section
- [ ] Display below form or in collapsible panel
- [ ] Editable via admin
### UI / Theme
- [ ] Dark/light theme toggle (`next-themes`)
- [ ] Violet-tinted dark theme
- [ ] Neutral grey light theme
---
## 🛠 Admin App (`admin.fellies.art`)
### Commission Type Management
- [x] Manage commission types
- [x] Create/edit name, description
- [ ] Upload & sort example images
- [x] Set sort index (drag and drop)
- [x] Manage commission options (e.g. headshot)
- [x] Set base price per type
- [x] Reordering support
- [x] Manage commission extras (e.g. backgrounds, NSFW)
- [x] Support price, percentage, range
- [x] Restrict extras to certain types
- [x] Reordering support
- [x] Attach options and extras to commission types
- [x] UI for assigning options/extras
- [x] Editable price overrides per type
- [x] Manage custom input fields
- [x] Create/select CommissionCustomInput from shared list
- [x] Prefill input type and label
- [x] Attach to type with overrides (label, required, etc.)
- [x] Store in join table correctly
- [x] Support sorting
### TOS / Info Management
- [ ] TOS editor (Tiptap)
- [ ] Markdown + HTML storage
- [ ] Preview panel
- [ ] “Will draw / Wont draw” editor
- [ ] Markdown or tags input
- [ ] Save both sections independently
### Order Management (future)
- [ ] Commission order list view
- [ ] View all submissions
- [ ] Filter by status
- [ ] Assign status (pending, accepted, done)
- [ ] Contact user
---
## 🧩 Shared Logic & Utilities
### Data & Generation
- [x] Base mock definitions
- [x] `commissionTypes`
- [x] `commissionOptions`
- [x] `commissionExtras`
- [x] Generate `rawCommissions` using base data
- [x] Inject price/percentage data
- [ ] Add example image mapping per type
### Types & Validation
- [x] Define `@types/commissions`
- [x] Type for `CommissionType`, `Option`, `Extra`, `CommissionForm`
- [x] Create `zod` schemas
- [x] Commission form input schema
- [x] Type/extras validation
- [x] Custom field input schema
- [x] Admin-side validation schema
### Helpers
- [x] Price calculation utilities
- [x] Handle fixed/percent/range extras
- [x] Return itemized breakdown
- [ ] Order-to-submission transformer
- [ ] Format data for admin review
- [ ] Utility to generate total price summary
### Admin Panel
- [x] Commission type create/edit form
- [ ] Commission option/extra CRUD UI
- [ ] View list of commission requests
- [ ] View single request details
- [ ] Update request status (pending, accepted, rejected, etc.)
- [ ] Filter and sort commission requests
- [ ] View submitted files / references
- [ ] Tag, flag, or star requests for tracking
- [ ] Delete / archive requests
### Backend & Actions
- [ ] Submit commission request server action
- [ ] Upload reference image(s) action
- [ ] Create YCH offer action
- [ ] Claim YCH slot action
- [ ] Send confirmation email (optional)
- [ ] Notify artist via email or admin panel
- [ ] Export commission request to JSON or PDF (optional)
### Extras
- [ ] Kanban-style board for request tracking
- [ ] Queue page (public or admin)
- [x] Markdown/WYSIWYG editor for ToS and descriptions
- [ ] Analytics for commission activity
- [ ] iCal or Notion export
- [ ] Stripe or Ko-fi payment integration