feat: Add PrimeProgress, PrimeSelect, and PrimeSkeleton components with customizable styles and props

- Implemented PrimeProgress component with support for labels, helper text, and various styles (size, variant, color).
- Created PrimeSelect component with dropdown functionality, custom templates, and validation states.
- Developed PrimeSkeleton component for loading placeholders with different shapes and animations.
- Updated index.ts to export new components for easy import.
- Enhanced PrimeVueTest.vue to include tests for new components and their functionalities.
- Introduced a custom ThrillWiki theme for PrimeVue with tailored color schemes and component styles.
- Added ambient type declarations for various components to improve TypeScript support.
This commit is contained in:
pacnpal
2025-08-27 21:00:02 -04:00
parent 6125c4ee44
commit 08a4a2d034
164 changed files with 73094 additions and 11001 deletions

View File

@@ -8,9 +8,44 @@ from rest_framework.response import Response
from rest_framework import status
from rest_framework.permissions import AllowAny
from django.contrib.sites.shortcuts import get_current_site
from drf_spectacular.utils import extend_schema
from apps.email_service.services import EmailService
@extend_schema(
summary="Send email",
description="Send an email via the email service.",
request={
"type": "object",
"properties": {
"to": {
"type": "string",
"format": "email",
"description": "Recipient email address",
},
"subject": {"type": "string", "description": "Email subject"},
"text": {"type": "string", "description": "Email body text"},
"from_email": {
"type": "string",
"format": "email",
"description": "Sender email address (optional)",
},
},
"required": ["to", "subject", "text"],
},
responses={
200: {
"type": "object",
"properties": {
"message": {"type": "string"},
"response": {"type": "object"},
},
},
400: "Bad Request",
500: "Internal Server Error",
},
tags=["Email"],
)
class SendEmailView(APIView):
"""
API endpoint for sending emails.