├── .bolt ├── config.json └── prompt ├── .claude └── settings.local.json ├── .env.example ├── .gitignore ├── AGENTS.md ├── CHANGELOG.md ├── CLAUDE.md ├── README.md ├── app ├── admin │ ├── announcements │ │ └── page.tsx │ ├── model-configs │ │ └── page.tsx │ └── templates │ │ ├── [id] │ │ └── page.tsx │ │ ├── new │ │ └── page.tsx │ │ └── page.tsx ├── api │ ├── admin │ │ ├── announcements │ │ │ └── route.ts │ │ ├── model-configs │ │ │ ├── [id] │ │ │ │ └── route.ts │ │ │ └── route.ts │ │ ├── templates │ │ │ ├── [id] │ │ │ │ └── route.ts │ │ │ └── route.ts │ │ └── upload-template-image │ │ │ └── route.ts │ ├── announcements │ │ └── route.ts │ ├── debug │ │ ├── check-data │ │ │ └── route.ts │ │ └── gallery │ │ │ └── route.ts │ ├── gallery │ │ └── route.ts │ ├── generate-image │ │ └── route.ts │ ├── generate-prompts │ │ └── route.ts │ ├── generate-single │ │ └── route.ts │ ├── generate-stream │ │ └── route.ts │ ├── generations │ │ └── [id] │ │ │ └── share │ │ │ └── route.ts │ ├── identify-image │ │ └── route.ts │ ├── images │ │ └── track-download │ │ │ └── route.ts │ ├── invite │ │ └── claim │ │ │ └── route.ts │ ├── model-configs │ │ └── active │ │ │ └── route.ts │ ├── model-sources │ │ └── available │ │ │ └── route.ts │ ├── orders │ │ ├── create │ │ │ └── route.ts │ │ ├── mock │ │ │ └── confirm │ │ │ │ └── route.ts │ │ ├── validate │ │ │ └── route.ts │ │ └── webhook │ │ │ └── stripe │ │ │ └── route.ts │ ├── templates │ │ └── route.ts │ ├── test-data │ │ └── route.ts │ └── upload-image │ │ └── route.ts ├── auth │ └── callback │ │ └── page.tsx ├── components │ ├── AnnouncementBanner.tsx │ ├── AuthModal.tsx │ ├── ConfirmDialog.tsx │ ├── CreatePage.tsx │ ├── Dashboard │ │ ├── DashboardHeader.tsx │ │ ├── DashboardTabs.tsx │ │ ├── EmptyState.tsx │ │ ├── ProjectCard.tsx │ │ ├── ProjectList.tsx │ │ ├── SingleGenerationList.tsx │ │ └── index.ts │ ├── DashboardPage.tsx │ ├── GeneratePromptsPage.tsx │ ├── GenerateSinglePage.tsx │ ├── GenerateSinglePage │ │ ├── GenerationSettings.tsx │ │ ├── ImagePreviewModal.tsx │ │ ├── ImageResultSection.tsx │ │ ├── ImageUploadSection.tsx │ │ ├── TemplateSelector.tsx │ │ └── types.ts │ ├── GeneratingTips.tsx │ ├── GenerationNotification.tsx │ ├── GenerationProgress.tsx │ ├── GenerationResults.tsx │ ├── Header.tsx │ ├── HomePage.tsx │ ├── ImageCompareSlider.tsx │ ├── ImagePreviewModal.tsx │ ├── PhotoGuideModal.tsx │ ├── PhotoUploader.tsx │ ├── PricingPage.tsx │ ├── ProjectActionsMenu.tsx │ ├── ProjectDetailModal.tsx │ ├── ProjectEditModal.tsx │ ├── ProjectFilters.tsx │ ├── ProjectProgress.tsx │ ├── ProjectStatsChart.tsx │ ├── ResultsPage.tsx │ ├── ShareModal.tsx │ ├── SingleGenerationCard.tsx │ ├── SingleGenerationDetailModal.tsx │ ├── StatCard.tsx │ ├── TemplatesPage.tsx │ ├── TestimonialsPage.tsx │ ├── Toast.tsx │ ├── admin │ │ ├── AdminLayout.tsx │ │ ├── ImageUploadField.tsx │ │ ├── ModelConfigForm.tsx │ │ ├── ModelConfigList.tsx │ │ ├── PromptConfigEditor.tsx │ │ ├── PromptListEditor.tsx │ │ └── TemplateForm.tsx │ ├── photo-uploader │ │ ├── PhotoUploadGuide.tsx │ │ ├── PhotoUploadZone.tsx │ │ └── SortablePhoto.tsx │ ├── react-bits │ │ ├── animations │ │ │ └── FadeIn.tsx │ │ ├── backgrounds │ │ │ ├── GradientBackground.css │ │ │ └── GradientBackground.tsx │ │ ├── components │ │ │ ├── GlassCard.css │ │ │ ├── GlassCard.tsx │ │ │ ├── SpotlightCard.css │ │ │ └── SpotlightCard.tsx │ │ ├── index.ts │ │ └── text-animations │ │ │ ├── GradientText.css │ │ │ └── GradientText.tsx │ └── ui │ │ ├── alert-dialog.tsx │ │ ├── button.tsx │ │ ├── card-skeleton.tsx │ │ ├── card.tsx │ │ ├── input.tsx │ │ ├── label.tsx │ │ ├── loading.tsx │ │ ├── progress-bar.tsx │ │ ├── select.tsx │ │ ├── skeleton.tsx │ │ ├── switch.tsx │ │ └── textarea.tsx ├── contexts │ └── AuthContext.tsx ├── create │ └── page.tsx ├── dashboard │ └── page.tsx ├── data │ └── mockData.ts ├── error.tsx ├── gallery │ └── page.tsx ├── generate-prompts │ └── page.tsx ├── generate-single │ └── page.tsx ├── global-error.tsx ├── globals.css ├── hooks │ ├── useAnnouncement.ts │ ├── useAvailableSources.ts │ ├── useEngagementStats.ts │ ├── useFavorites.ts │ ├── useGenerationPolling.ts │ ├── useImageGeneration.ts │ ├── useImageIdentification.ts │ ├── useImageLikes.ts │ ├── useImageUpload.ts │ ├── usePhotoSelection.ts │ ├── usePhotoUpload.ts │ ├── useProjects.ts │ ├── usePromptGeneration.ts │ ├── useSingleGenerations.ts │ ├── useStreamImageGeneration.ts │ ├── useTemplateSelection.ts │ └── useTemplates.ts ├── layout.tsx ├── lib │ ├── auth-admin.ts │ ├── constants.ts │ ├── errors.ts │ ├── generation-service.ts │ ├── image-compress.ts │ ├── image-quality-checker.ts │ ├── image-rating.ts │ ├── image-stream.ts │ ├── image.ts │ ├── logger.ts │ ├── minio-client.ts │ ├── mock-generator.ts │ ├── pricing-recommender.ts │ ├── share-card.ts │ ├── status.ts │ ├── supabase.ts │ ├── utils.ts │ └── validations.ts ├── page.tsx ├── pricing │ └── page.tsx ├── providers.tsx ├── results │ └── [id] │ │ └── page.tsx ├── shared │ └── HeaderBridge.tsx ├── templates │ └── page.tsx ├── test-announcement │ └── page.tsx ├── testimonials │ └── page.tsx └── types │ ├── admin.ts │ ├── database.ts │ ├── filters.ts │ ├── generation.ts │ ├── image.ts │ ├── model-config.ts │ ├── photo.ts │ ├── pricing.ts │ ├── prompt.ts │ ├── share.ts │ ├── status.ts │ └── storage.ts ├── components.json ├── database-migrations ├── 2025-10-14-add-template-prompt-list.sql ├── 2025-10-15-create-model-configs.sql ├── 2025-11-06-add-generate-prompts-type.sql ├── README-ANNOUNCEMENTS.md ├── add_gallery_sharing.sql ├── add_gallery_sharing_fixed.sql ├── add_single_generations.sql ├── check_triggers.sql ├── create-system-announcements.sql ├── create_generation_transaction.sql ├── diagnose-announcements.sql ├── diagnose_rls_issue.sql ├── fix-and-test-announcements.sql ├── fix-announcements-rls.sql ├── fix_existing_data.sql ├── fix_gallery_rls_policy.sql ├── fix_gallery_rls_policy_v2.sql ├── fix_insert_permissions.sql ├── fix_rls_final.sql ├── fix_single_generations_rls.sql └── fix_updated_at_trigger.sql ├── ecosystem.config.js ├── eslint.config.mjs ├── example ├── 1.md ├── CHANGELOG.md ├── README.md ├── image-edit-demo-302ai.html ├── image-edit-demo.html ├── index.html ├── list.json ├── openRouter.html └── template-data.js ├── init.sql ├── middleware.ts ├── next-env.d.ts ├── next.config.js ├── package.json ├── pnpm-lock.yaml ├── postcss.config.js ├── scripts ├── deploy.sh ├── fix-minio-403.sh ├── fix-minio-bucket-policy.ts ├── refresh-image-urls.ts ├── start-pm2.sh └── test-gallery-query.ts ├── tailwind.config.js └── tsconfig.json /.bolt/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "template": "bolt-vite-react-ts" 3 | } 4 | -------------------------------------------------------------------------------- /.bolt/prompt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/.bolt/prompt -------------------------------------------------------------------------------- /.claude/settings.local.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/.claude/settings.local.json -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/.env.example -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/.gitignore -------------------------------------------------------------------------------- /AGENTS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/AGENTS.md -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/CLAUDE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/README.md -------------------------------------------------------------------------------- /app/admin/announcements/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/admin/announcements/page.tsx -------------------------------------------------------------------------------- /app/admin/model-configs/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/admin/model-configs/page.tsx -------------------------------------------------------------------------------- /app/admin/templates/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/admin/templates/[id]/page.tsx -------------------------------------------------------------------------------- /app/admin/templates/new/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/admin/templates/new/page.tsx -------------------------------------------------------------------------------- /app/admin/templates/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/admin/templates/page.tsx -------------------------------------------------------------------------------- /app/api/admin/announcements/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/admin/announcements/route.ts -------------------------------------------------------------------------------- /app/api/admin/model-configs/[id]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/admin/model-configs/[id]/route.ts -------------------------------------------------------------------------------- /app/api/admin/model-configs/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/admin/model-configs/route.ts -------------------------------------------------------------------------------- /app/api/admin/templates/[id]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/admin/templates/[id]/route.ts -------------------------------------------------------------------------------- /app/api/admin/templates/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/admin/templates/route.ts -------------------------------------------------------------------------------- /app/api/admin/upload-template-image/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/admin/upload-template-image/route.ts -------------------------------------------------------------------------------- /app/api/announcements/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/announcements/route.ts -------------------------------------------------------------------------------- /app/api/debug/check-data/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/debug/check-data/route.ts -------------------------------------------------------------------------------- /app/api/debug/gallery/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/debug/gallery/route.ts -------------------------------------------------------------------------------- /app/api/gallery/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/gallery/route.ts -------------------------------------------------------------------------------- /app/api/generate-image/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/generate-image/route.ts -------------------------------------------------------------------------------- /app/api/generate-prompts/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/generate-prompts/route.ts -------------------------------------------------------------------------------- /app/api/generate-single/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/generate-single/route.ts -------------------------------------------------------------------------------- /app/api/generate-stream/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/generate-stream/route.ts -------------------------------------------------------------------------------- /app/api/generations/[id]/share/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/generations/[id]/share/route.ts -------------------------------------------------------------------------------- /app/api/identify-image/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/identify-image/route.ts -------------------------------------------------------------------------------- /app/api/images/track-download/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/images/track-download/route.ts -------------------------------------------------------------------------------- /app/api/invite/claim/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/invite/claim/route.ts -------------------------------------------------------------------------------- /app/api/model-configs/active/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/model-configs/active/route.ts -------------------------------------------------------------------------------- /app/api/model-sources/available/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/model-sources/available/route.ts -------------------------------------------------------------------------------- /app/api/orders/create/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/orders/create/route.ts -------------------------------------------------------------------------------- /app/api/orders/mock/confirm/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/orders/mock/confirm/route.ts -------------------------------------------------------------------------------- /app/api/orders/validate/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/orders/validate/route.ts -------------------------------------------------------------------------------- /app/api/orders/webhook/stripe/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/orders/webhook/stripe/route.ts -------------------------------------------------------------------------------- /app/api/templates/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/templates/route.ts -------------------------------------------------------------------------------- /app/api/test-data/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/test-data/route.ts -------------------------------------------------------------------------------- /app/api/upload-image/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/api/upload-image/route.ts -------------------------------------------------------------------------------- /app/auth/callback/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/auth/callback/page.tsx -------------------------------------------------------------------------------- /app/components/AnnouncementBanner.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/AnnouncementBanner.tsx -------------------------------------------------------------------------------- /app/components/AuthModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/AuthModal.tsx -------------------------------------------------------------------------------- /app/components/ConfirmDialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ConfirmDialog.tsx -------------------------------------------------------------------------------- /app/components/CreatePage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/CreatePage.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/DashboardHeader.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/DashboardHeader.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/DashboardTabs.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/DashboardTabs.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/EmptyState.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/EmptyState.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/ProjectCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/ProjectCard.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/ProjectList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/ProjectList.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/SingleGenerationList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/SingleGenerationList.tsx -------------------------------------------------------------------------------- /app/components/Dashboard/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Dashboard/index.ts -------------------------------------------------------------------------------- /app/components/DashboardPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/DashboardPage.tsx -------------------------------------------------------------------------------- /app/components/GeneratePromptsPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GeneratePromptsPage.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage/GenerationSettings.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage/GenerationSettings.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage/ImagePreviewModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage/ImagePreviewModal.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage/ImageResultSection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage/ImageResultSection.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage/ImageUploadSection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage/ImageUploadSection.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage/TemplateSelector.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage/TemplateSelector.tsx -------------------------------------------------------------------------------- /app/components/GenerateSinglePage/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerateSinglePage/types.ts -------------------------------------------------------------------------------- /app/components/GeneratingTips.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GeneratingTips.tsx -------------------------------------------------------------------------------- /app/components/GenerationNotification.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerationNotification.tsx -------------------------------------------------------------------------------- /app/components/GenerationProgress.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerationProgress.tsx -------------------------------------------------------------------------------- /app/components/GenerationResults.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/GenerationResults.tsx -------------------------------------------------------------------------------- /app/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Header.tsx -------------------------------------------------------------------------------- /app/components/HomePage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/HomePage.tsx -------------------------------------------------------------------------------- /app/components/ImageCompareSlider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ImageCompareSlider.tsx -------------------------------------------------------------------------------- /app/components/ImagePreviewModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ImagePreviewModal.tsx -------------------------------------------------------------------------------- /app/components/PhotoGuideModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/PhotoGuideModal.tsx -------------------------------------------------------------------------------- /app/components/PhotoUploader.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/PhotoUploader.tsx -------------------------------------------------------------------------------- /app/components/PricingPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/PricingPage.tsx -------------------------------------------------------------------------------- /app/components/ProjectActionsMenu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ProjectActionsMenu.tsx -------------------------------------------------------------------------------- /app/components/ProjectDetailModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ProjectDetailModal.tsx -------------------------------------------------------------------------------- /app/components/ProjectEditModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ProjectEditModal.tsx -------------------------------------------------------------------------------- /app/components/ProjectFilters.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ProjectFilters.tsx -------------------------------------------------------------------------------- /app/components/ProjectProgress.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ProjectProgress.tsx -------------------------------------------------------------------------------- /app/components/ProjectStatsChart.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ProjectStatsChart.tsx -------------------------------------------------------------------------------- /app/components/ResultsPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ResultsPage.tsx -------------------------------------------------------------------------------- /app/components/ShareModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ShareModal.tsx -------------------------------------------------------------------------------- /app/components/SingleGenerationCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/SingleGenerationCard.tsx -------------------------------------------------------------------------------- /app/components/SingleGenerationDetailModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/SingleGenerationDetailModal.tsx -------------------------------------------------------------------------------- /app/components/StatCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/StatCard.tsx -------------------------------------------------------------------------------- /app/components/TemplatesPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/TemplatesPage.tsx -------------------------------------------------------------------------------- /app/components/TestimonialsPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/TestimonialsPage.tsx -------------------------------------------------------------------------------- /app/components/Toast.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/Toast.tsx -------------------------------------------------------------------------------- /app/components/admin/AdminLayout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/AdminLayout.tsx -------------------------------------------------------------------------------- /app/components/admin/ImageUploadField.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/ImageUploadField.tsx -------------------------------------------------------------------------------- /app/components/admin/ModelConfigForm.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/ModelConfigForm.tsx -------------------------------------------------------------------------------- /app/components/admin/ModelConfigList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/ModelConfigList.tsx -------------------------------------------------------------------------------- /app/components/admin/PromptConfigEditor.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/PromptConfigEditor.tsx -------------------------------------------------------------------------------- /app/components/admin/PromptListEditor.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/PromptListEditor.tsx -------------------------------------------------------------------------------- /app/components/admin/TemplateForm.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/admin/TemplateForm.tsx -------------------------------------------------------------------------------- /app/components/photo-uploader/PhotoUploadGuide.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/photo-uploader/PhotoUploadGuide.tsx -------------------------------------------------------------------------------- /app/components/photo-uploader/PhotoUploadZone.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/photo-uploader/PhotoUploadZone.tsx -------------------------------------------------------------------------------- /app/components/photo-uploader/SortablePhoto.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/photo-uploader/SortablePhoto.tsx -------------------------------------------------------------------------------- /app/components/react-bits/animations/FadeIn.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/animations/FadeIn.tsx -------------------------------------------------------------------------------- /app/components/react-bits/backgrounds/GradientBackground.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/backgrounds/GradientBackground.css -------------------------------------------------------------------------------- /app/components/react-bits/backgrounds/GradientBackground.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/backgrounds/GradientBackground.tsx -------------------------------------------------------------------------------- /app/components/react-bits/components/GlassCard.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/components/GlassCard.css -------------------------------------------------------------------------------- /app/components/react-bits/components/GlassCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/components/GlassCard.tsx -------------------------------------------------------------------------------- /app/components/react-bits/components/SpotlightCard.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/components/SpotlightCard.css -------------------------------------------------------------------------------- /app/components/react-bits/components/SpotlightCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/components/SpotlightCard.tsx -------------------------------------------------------------------------------- /app/components/react-bits/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/index.ts -------------------------------------------------------------------------------- /app/components/react-bits/text-animations/GradientText.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/text-animations/GradientText.css -------------------------------------------------------------------------------- /app/components/react-bits/text-animations/GradientText.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/react-bits/text-animations/GradientText.tsx -------------------------------------------------------------------------------- /app/components/ui/alert-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/alert-dialog.tsx -------------------------------------------------------------------------------- /app/components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/button.tsx -------------------------------------------------------------------------------- /app/components/ui/card-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/card-skeleton.tsx -------------------------------------------------------------------------------- /app/components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/card.tsx -------------------------------------------------------------------------------- /app/components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/input.tsx -------------------------------------------------------------------------------- /app/components/ui/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/label.tsx -------------------------------------------------------------------------------- /app/components/ui/loading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/loading.tsx -------------------------------------------------------------------------------- /app/components/ui/progress-bar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/progress-bar.tsx -------------------------------------------------------------------------------- /app/components/ui/select.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/select.tsx -------------------------------------------------------------------------------- /app/components/ui/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/skeleton.tsx -------------------------------------------------------------------------------- /app/components/ui/switch.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/switch.tsx -------------------------------------------------------------------------------- /app/components/ui/textarea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/components/ui/textarea.tsx -------------------------------------------------------------------------------- /app/contexts/AuthContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/contexts/AuthContext.tsx -------------------------------------------------------------------------------- /app/create/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/create/page.tsx -------------------------------------------------------------------------------- /app/dashboard/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/dashboard/page.tsx -------------------------------------------------------------------------------- /app/data/mockData.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/data/mockData.ts -------------------------------------------------------------------------------- /app/error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/error.tsx -------------------------------------------------------------------------------- /app/gallery/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/gallery/page.tsx -------------------------------------------------------------------------------- /app/generate-prompts/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/generate-prompts/page.tsx -------------------------------------------------------------------------------- /app/generate-single/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/generate-single/page.tsx -------------------------------------------------------------------------------- /app/global-error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/global-error.tsx -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/globals.css -------------------------------------------------------------------------------- /app/hooks/useAnnouncement.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useAnnouncement.ts -------------------------------------------------------------------------------- /app/hooks/useAvailableSources.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useAvailableSources.ts -------------------------------------------------------------------------------- /app/hooks/useEngagementStats.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useEngagementStats.ts -------------------------------------------------------------------------------- /app/hooks/useFavorites.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useFavorites.ts -------------------------------------------------------------------------------- /app/hooks/useGenerationPolling.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useGenerationPolling.ts -------------------------------------------------------------------------------- /app/hooks/useImageGeneration.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useImageGeneration.ts -------------------------------------------------------------------------------- /app/hooks/useImageIdentification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useImageIdentification.ts -------------------------------------------------------------------------------- /app/hooks/useImageLikes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useImageLikes.ts -------------------------------------------------------------------------------- /app/hooks/useImageUpload.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useImageUpload.ts -------------------------------------------------------------------------------- /app/hooks/usePhotoSelection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/usePhotoSelection.ts -------------------------------------------------------------------------------- /app/hooks/usePhotoUpload.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/usePhotoUpload.ts -------------------------------------------------------------------------------- /app/hooks/useProjects.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useProjects.ts -------------------------------------------------------------------------------- /app/hooks/usePromptGeneration.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/usePromptGeneration.ts -------------------------------------------------------------------------------- /app/hooks/useSingleGenerations.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useSingleGenerations.ts -------------------------------------------------------------------------------- /app/hooks/useStreamImageGeneration.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useStreamImageGeneration.ts -------------------------------------------------------------------------------- /app/hooks/useTemplateSelection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useTemplateSelection.ts -------------------------------------------------------------------------------- /app/hooks/useTemplates.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/hooks/useTemplates.ts -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/lib/auth-admin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/auth-admin.ts -------------------------------------------------------------------------------- /app/lib/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/constants.ts -------------------------------------------------------------------------------- /app/lib/errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/errors.ts -------------------------------------------------------------------------------- /app/lib/generation-service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/generation-service.ts -------------------------------------------------------------------------------- /app/lib/image-compress.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/image-compress.ts -------------------------------------------------------------------------------- /app/lib/image-quality-checker.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/image-quality-checker.ts -------------------------------------------------------------------------------- /app/lib/image-rating.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/image-rating.ts -------------------------------------------------------------------------------- /app/lib/image-stream.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/image-stream.ts -------------------------------------------------------------------------------- /app/lib/image.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/image.ts -------------------------------------------------------------------------------- /app/lib/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/logger.ts -------------------------------------------------------------------------------- /app/lib/minio-client.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/minio-client.ts -------------------------------------------------------------------------------- /app/lib/mock-generator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/mock-generator.ts -------------------------------------------------------------------------------- /app/lib/pricing-recommender.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/pricing-recommender.ts -------------------------------------------------------------------------------- /app/lib/share-card.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/share-card.ts -------------------------------------------------------------------------------- /app/lib/status.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/status.ts -------------------------------------------------------------------------------- /app/lib/supabase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/supabase.ts -------------------------------------------------------------------------------- /app/lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/utils.ts -------------------------------------------------------------------------------- /app/lib/validations.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/lib/validations.ts -------------------------------------------------------------------------------- /app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/page.tsx -------------------------------------------------------------------------------- /app/pricing/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/pricing/page.tsx -------------------------------------------------------------------------------- /app/providers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/providers.tsx -------------------------------------------------------------------------------- /app/results/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/results/[id]/page.tsx -------------------------------------------------------------------------------- /app/shared/HeaderBridge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/shared/HeaderBridge.tsx -------------------------------------------------------------------------------- /app/templates/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/templates/page.tsx -------------------------------------------------------------------------------- /app/test-announcement/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/test-announcement/page.tsx -------------------------------------------------------------------------------- /app/testimonials/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/testimonials/page.tsx -------------------------------------------------------------------------------- /app/types/admin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/admin.ts -------------------------------------------------------------------------------- /app/types/database.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/database.ts -------------------------------------------------------------------------------- /app/types/filters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/filters.ts -------------------------------------------------------------------------------- /app/types/generation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/generation.ts -------------------------------------------------------------------------------- /app/types/image.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/image.ts -------------------------------------------------------------------------------- /app/types/model-config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/model-config.ts -------------------------------------------------------------------------------- /app/types/photo.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/photo.ts -------------------------------------------------------------------------------- /app/types/pricing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/pricing.ts -------------------------------------------------------------------------------- /app/types/prompt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/prompt.ts -------------------------------------------------------------------------------- /app/types/share.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/share.ts -------------------------------------------------------------------------------- /app/types/status.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/status.ts -------------------------------------------------------------------------------- /app/types/storage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/app/types/storage.ts -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/components.json -------------------------------------------------------------------------------- /database-migrations/2025-10-14-add-template-prompt-list.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/2025-10-14-add-template-prompt-list.sql -------------------------------------------------------------------------------- /database-migrations/2025-10-15-create-model-configs.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/2025-10-15-create-model-configs.sql -------------------------------------------------------------------------------- /database-migrations/2025-11-06-add-generate-prompts-type.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/2025-11-06-add-generate-prompts-type.sql -------------------------------------------------------------------------------- /database-migrations/README-ANNOUNCEMENTS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/README-ANNOUNCEMENTS.md -------------------------------------------------------------------------------- /database-migrations/add_gallery_sharing.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/add_gallery_sharing.sql -------------------------------------------------------------------------------- /database-migrations/add_gallery_sharing_fixed.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/add_gallery_sharing_fixed.sql -------------------------------------------------------------------------------- /database-migrations/add_single_generations.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/add_single_generations.sql -------------------------------------------------------------------------------- /database-migrations/check_triggers.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/check_triggers.sql -------------------------------------------------------------------------------- /database-migrations/create-system-announcements.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/create-system-announcements.sql -------------------------------------------------------------------------------- /database-migrations/create_generation_transaction.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/create_generation_transaction.sql -------------------------------------------------------------------------------- /database-migrations/diagnose-announcements.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/diagnose-announcements.sql -------------------------------------------------------------------------------- /database-migrations/diagnose_rls_issue.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/diagnose_rls_issue.sql -------------------------------------------------------------------------------- /database-migrations/fix-and-test-announcements.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix-and-test-announcements.sql -------------------------------------------------------------------------------- /database-migrations/fix-announcements-rls.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix-announcements-rls.sql -------------------------------------------------------------------------------- /database-migrations/fix_existing_data.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_existing_data.sql -------------------------------------------------------------------------------- /database-migrations/fix_gallery_rls_policy.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_gallery_rls_policy.sql -------------------------------------------------------------------------------- /database-migrations/fix_gallery_rls_policy_v2.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_gallery_rls_policy_v2.sql -------------------------------------------------------------------------------- /database-migrations/fix_insert_permissions.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_insert_permissions.sql -------------------------------------------------------------------------------- /database-migrations/fix_rls_final.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_rls_final.sql -------------------------------------------------------------------------------- /database-migrations/fix_single_generations_rls.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_single_generations_rls.sql -------------------------------------------------------------------------------- /database-migrations/fix_updated_at_trigger.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/database-migrations/fix_updated_at_trigger.sql -------------------------------------------------------------------------------- /ecosystem.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/ecosystem.config.js -------------------------------------------------------------------------------- /eslint.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/eslint.config.mjs -------------------------------------------------------------------------------- /example/1.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/1.md -------------------------------------------------------------------------------- /example/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/CHANGELOG.md -------------------------------------------------------------------------------- /example/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/README.md -------------------------------------------------------------------------------- /example/image-edit-demo-302ai.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/image-edit-demo-302ai.html -------------------------------------------------------------------------------- /example/image-edit-demo.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/image-edit-demo.html -------------------------------------------------------------------------------- /example/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/index.html -------------------------------------------------------------------------------- /example/list.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/list.json -------------------------------------------------------------------------------- /example/openRouter.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/openRouter.html -------------------------------------------------------------------------------- /example/template-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/example/template-data.js -------------------------------------------------------------------------------- /init.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/init.sql -------------------------------------------------------------------------------- /middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/middleware.ts -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/next-env.d.ts -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/postcss.config.js -------------------------------------------------------------------------------- /scripts/deploy.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/scripts/deploy.sh -------------------------------------------------------------------------------- /scripts/fix-minio-403.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/scripts/fix-minio-403.sh -------------------------------------------------------------------------------- /scripts/fix-minio-bucket-policy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/scripts/fix-minio-bucket-policy.ts -------------------------------------------------------------------------------- /scripts/refresh-image-urls.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/scripts/refresh-image-urls.ts -------------------------------------------------------------------------------- /scripts/start-pm2.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/scripts/start-pm2.sh -------------------------------------------------------------------------------- /scripts/test-gallery-query.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/scripts/test-gallery-query.ts -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/qqzhangyanhua/ai-wedding/HEAD/tsconfig.json --------------------------------------------------------------------------------