- Enhanced the quiz retrieval logic to ensure a valid random index is calculated based on the number of available quizzes, preventing potential errors when no quizzes are present.
- Updated the logic to use 'nrOfQuestions' from the quiz object for slicing the quizzes array, ensuring consistent behavior in quiz selection.
- Improved code clarity by refining comments related to the quiz selection process.
- Added logic to require 'scheduleId' for customers when retrieving quizzes, ensuring proper association with schedules.
- Implemented error handling for missing 'scheduleId' and non-existent schedules, improving robustness and user feedback.
- Refactored quiz retrieval logic for customers and center mentors to utilize the correct center mentor ID from the schedule, enhancing data integrity.
- Updated comments for clarity regarding the quiz selection process based on user roles.
- Removed the 'amount' argument from the quiz retrieval query to streamline the schema.
- Updated the quiz retrieval logic to use 'nrOfQuestions' from the quiz object instead of the removed 'amount' argument, ensuring consistent behavior in quiz selection.
- Improved code clarity by refining comments related to quiz selection logic.
- Added a new 'amount' argument to the quiz retrieval query, allowing users to specify the number of quizzes to return.
- Implemented a seeded randomization mechanism to select quizzes based on the user's ID, improving the randomness of quiz selection.
- Refactored the quiz retrieval logic to utilize the new randomization and amount features, enhancing user experience and engagement.
- Updated the MessageSchema to include context-aware filtering for notifications, allowing retrieval of messages based on recipientId when the context is NOTIFICATION.
- Improved the resolve function to handle subscription checks, ensuring that unauthorized access is properly managed.
- Added error handling for cases where the context is not allowed, enhancing overall robustness of the message retrieval process.
- Updated the RefundTicket schema to allow both customers and center mentors to request refunds, improving flexibility in refund processing.
- Refined bank detail checks to differentiate between customers and center mentors, ensuring appropriate handling of bank information.
- Implemented special handling for center mentors to always allow full refunds, enhancing user experience.
- Improved error messages and validation checks throughout the refund process for better clarity and user guidance.
- Introduced a new cron job in CronService to check for schedules with status WAITING_QUIZ and notify customers to complete their quizzes.
- Enhanced the Quiz schema by adding an optional 'scheduleId' argument to facilitate quiz retrieval based on specific schedules, improving user experience and data association.
- Updated role-based access control logic to ensure proper handling of quiz queries for customers and center mentors.
- Changed the centerMentorId reference in the Quiz schema to use centerMentor.mentorId instead of the current user's ID.
- This adjustment ensures that the correct mentor association is maintained in the query logic, enhancing data integrity and access control.
- Updated authorization logic to allow both CENTER_MENTOR and CENTER_OWNER roles access to Quiz queries and mutations.
- Enhanced security by refining user role checks to ensure proper access control.
- Added role-based access control to restrict access to Quiz queries and mutations for users with the CENTER_MENTOR role.
- Updated error messages for unauthorized access to improve clarity.
- Introduced a required 'serviceId' argument in the quizzes query to ensure proper filtering and association with the center mentor.
- Refactored existing authentication checks to maintain consistent error handling across the Quiz schema.
- Introduced 'service' field in the Quiz creation input to enhance data structure.
- Added validation to ensure 'service ID' is provided during Quiz creation, improving data integrity.
- Updated centerMentor association logic to connect the current user as the center mentor for the Quiz.
- Enabled useIgnoreFile in biome.json for better file management.
- Updated various correctness and style rules in biome.json to enforce stricter coding standards.
- Added new biome lint command in package.json for improved code quality checks.
- Refactored error handling in multiple schema files to use consistent error throwing patterns, enhancing readability and maintainability.
- Improved user authentication checks across various schemas to ensure proper access control.
- Updated biome.json to include "graphql.d.ts" in the ignored files list.
- Updated subproject commit reference in epess-database to the latest version.
- Removed unused script from package.json and streamlined module file extensions in tsconfig.json.
- Consolidated exclude patterns in tsconfig.build.json for clarity.
- Refactored imports across multiple schema files for consistency and improved readability.
- Enhanced various schema files by ensuring proper import order and removing redundant code.
- Improved error handling and data integrity checks in several service and schema files.
- Updated the subproject commit reference in epess-database to the latest version.
- Enhanced QuizSchema by adding quizAttempt relation and submitQuiz mutation for improved quiz attempt handling.
- Updated Prisma types to include QuizAttempt, ensuring consistency across the application.
- Updated QuizSchema to expose correctAnswer as a field with a resolver, improving data retrieval for quizzes.
- Introduced new object types for correctAnswer, allowing for flexible data structures (StringType and StringListType).
- Modified createQuiz mutation to automatically associate the current user as centerMentorId, enhancing data integrity.
- Added personalMilestone relation to ScheduleSchema, linking schedules to personal milestones for better tracking.
- Included quiz relation in ServiceSchema, establishing a connection between services and their associated quizzes.
- Updated Prisma types to reflect the new relationships and fields, ensuring consistency across the application.
- Deleted the MilestoneModule and its associated schema to streamline the codebase.
- Updated QuizSchema to replace scheduleId with serviceId, enhancing the relationship structure.
- Removed references to Milestone in ServiceSchema, improving clarity and focus on relevant entities.
- Updated Prisma types to reflect the removal of Milestone, ensuring data integrity across the application.
- Introduced QuizSchema and QuestionSchema extending PothosSchema for enhanced GraphQL capabilities.
- Added methods to expose Quiz and Question fields, including relations and various attributes.
- Implemented query and mutation fields for creating, updating, and retrieving quizzes, ensuring proper authentication and error handling.
- Enhanced the overall structure of the schema to improve data integrity and access control.
- Updated the subproject commit reference in epess-database to the latest version.
- Added Logger to the ServiceFeedback schema for improved logging of arguments during feedback submission.
- Modified the Prisma types to include new Quiz and Question entities, enhancing the schema's capabilities and data structure.