4 Commits

Author SHA1 Message Date
6bc913bbe4 __New File Created:__ (500+ lines)
__Features Implemented:__

1. __Image Display Grid__

   - Responsive grid layout (2-4 columns)
   - Image previews with hover effects
   - Public/Private visibility badges
   - Caption display on images

2. __Upload Functionality__

   - Drag-and-drop upload zone
   - Multiple file upload support
   - File type validation (PNG, JPG, WebP)
   - Size limit enforcement (5MB per file)
   - Upload progress feedback
   - Integration with  endpoint

3. __Edit Capabilities__

   - Modal dialog for editing images
   - Caption editor (textarea)
   - Tag management (add/remove tags)
   - Visibility toggle (public/private)
   - Image preview in edit dialog
   - Form validation with Zod

4. __Delete Functionality__

   - Confirmation dialog before deletion
   - Permanent deletion warning
   - Integration with  DELETE endpoint

5. __User Experience__

   - Loading states during fetch/upload/edit/delete
   - Error handling with toast notifications
   - Success confirmations
   - Optimistic UI updates
   - Automatic data refresh after operations

__Integration:__

- Added PortfolioManager to
- Positioned below artist form for logical workflow
- Automatic refresh of artist data when portfolio changes
- Callback system for parent component updates

##
2025-10-06 04:51:57 -06:00
b20db98051 feat(ci,flags,ops): ship end-to-end CI, feature-flag framework, gated surfaces, and ops docs
Some checks failed
CI / build-and-test (pull_request) Failing after 1m19s
CI (.gitea/workflows/ci.yaml): lint → typecheck → vitest w/ coverage → OpenNext build → preview smoke → bundle-size budgets; Node 20; npm ci; artifacts; safe env; D1 dry-run scaffold.

Budgets: add scripts/budgets.mjs; TOTAL_STATIC_MAX_BYTES and MAX_ASSET_BYTES thresholds; report top offenders; fail on breach; README CI section.

Flags: add lib/flags.ts with typed booleans and safe defaults (ADMIN_ENABLED, ARTISTS_MODULE_ENABLED, UPLOADS_ADMIN_ENABLED, BOOKING_ENABLED, PUBLIC_APPOINTMENT_REQUESTS_ENABLED, REFERENCE_UPLOADS_PUBLIC_ENABLED, DEPOSITS_ENABLED, PUBLIC_DB_ARTISTS_ENABLED, ADVANCED_NAV_SCROLL_ANIMATIONS_ENABLED, STRICT_CI_GATES_ENABLED, ISR_CACHE_R2_ENABLED); robust parsing; client provider; unit tests.

Wiring: gate Admin shell and admin write APIs (503 JSON on uploads and artists writes); disable booking submit and short-circuit booking mutations when off; render static Hero/Artists when advanced animations off; tests for UI and API guards.

Ops: expand docs/prd/rollback-strategy.md with “Feature Flags Operations,” Cloudflare Dashboard and wrangler.toml steps, preview simulation, incident playbook, and post-toggle smoke checklist.

Release: add docs/releases/2025-09-19-feature-flags-rollout.md with last-good commit, preview/production flag matrices, rollback notes, and smoke results; link from rollback doc.

Chore: fix TS issues (gift-cards boolean handling, Lenis options, tailwind darkMode), remove next-on-pages peer conflict, update package.json scripts, configure Gitea act_runner label, open draft PR to trigger CI.

Refs: CI-1, FF-1, FF-2, FF-3, OPS-1
Impact: defaults preserve current behavior; no runtime changes unless flags flipped
2025-09-19 21:33:09 -06:00
16cee69250 __Admin dashboard scaffolded with D1 database and R2 file uploads__
This commit implements the core admin dashboard functionality including NextAuth authentication, Cloudflare D1 database integration with complete schema, and Cloudflare R2 file upload system for portfolio images. Features include artist management, appointment scheduling, and data migration capabilities.
2025-09-17 16:08:34 -06:00
8216198c88 Scaffolded admin dashboard, added nextauth, cloudflare d1 and R2 2025-09-17 11:24:00 -06:00