@goat-it/schemas 0.0.13-beta → 0.0.15-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/question/index.d.mts +3 -1
  2. package/dist/question/index.mjs +3 -1
  3. package/dist/src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.d.mts +1 -0
  4. package/dist/src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.mjs +3 -0
  5. package/dist/src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.mjs.map +1 -1
  6. package/dist/src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.d.mts +1 -0
  7. package/dist/src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.mjs +3 -0
  8. package/dist/src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.mjs.map +1 -1
  9. package/dist/src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.d.mts +12 -0
  10. package/dist/src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.mjs +14 -0
  11. package/dist/src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.mjs.map +1 -0
  12. package/dist/src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.d.mts +15 -0
  13. package/dist/src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.mjs +17 -0
  14. package/dist/src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.mjs.map +1 -0
  15. package/dist/src/contexts/question/application/dto/shared/zod/validators/question.dto.zod.validators.mjs +12 -1
  16. package/dist/src/contexts/question/application/dto/shared/zod/validators/question.dto.zod.validators.mjs.map +1 -1
  17. package/dist/src/contexts/question-theme/application/dto/admin-find-question-themes-query/admin-find-question-themes-query.dto.shape.d.mts +1 -0
  18. package/dist/src/contexts/question-theme/application/dto/admin-find-question-themes-query/admin-find-question-themes-query.dto.shape.mjs +3 -0
  19. package/dist/src/contexts/question-theme/application/dto/admin-find-question-themes-query/admin-find-question-themes-query.dto.shape.mjs.map +1 -1
  20. package/dist/src/contexts/question-theme/application/dto/find-question-themes-query/find-question-themes-query.dto.shape.d.mts +1 -0
  21. package/dist/src/contexts/question-theme/application/dto/find-question-themes-query/find-question-themes-query.dto.shape.mjs +4 -1
  22. package/dist/src/contexts/question-theme/application/dto/find-question-themes-query/find-question-themes-query.dto.shape.mjs.map +1 -1
  23. package/dist/src/shared/application/dto/constants/limit-query.dto.constants.mjs +6 -0
  24. package/dist/src/shared/application/dto/constants/limit-query.dto.constants.mjs.map +1 -0
  25. package/dist/src/shared/application/dto/zod/validators/array/array.zod.validators.mjs +22 -0
  26. package/dist/src/shared/application/dto/zod/validators/array/array.zod.validators.mjs.map +1 -0
  27. package/dist/src/shared/infrastructure/http/dto/api-response-exception/api-response-exception-validation-details/api-response-exception-validation-details.dto.shape.d.mts +1 -0
  28. package/dist/src/shared/infrastructure/http/dto/api-response-exception/api-response-exception-validation-details/api-response-exception-validation-details.dto.shape.mjs +1 -0
  29. package/dist/src/shared/infrastructure/http/dto/api-response-exception/api-response-exception-validation-details/api-response-exception-validation-details.dto.shape.mjs.map +1 -1
  30. package/dist/src/shared/infrastructure/http/dto/api-response-exception/api-response-exception.dto.shape.d.mts +1 -0
  31. package/dist/src/shared/infrastructure/http/zod/validators/limit/constants/limit.zod.validators.constants.mjs +6 -0
  32. package/dist/src/shared/infrastructure/http/zod/validators/limit/constants/limit.zod.validators.constants.mjs.map +1 -0
  33. package/dist/src/shared/infrastructure/http/zod/validators/limit/limit.zod.validators.mjs +10 -0
  34. package/dist/src/shared/infrastructure/http/zod/validators/limit/limit.zod.validators.mjs.map +1 -0
  35. package/package.json +1 -1
@@ -3,9 +3,11 @@ import { QuestionAuthorRole, QuestionCategory, QuestionCognitiveDifficulty, Ques
3
3
  import { ADMIN_FIND_QUESTIONS_QUERY_DTO, AdminFindQuestionsQueryDto } from "../src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.mjs";
4
4
  import { ADMIN_QUESTION_DTO, AdminQuestionDto } from "../src/contexts/question/application/dto/admin-question/admin-question.dto.shape.mjs";
5
5
  import { FIND_QUESTIONS_QUERY_DTO, FindQuestionsQueryDto } from "../src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.mjs";
6
+ import { FIND_RANDOM_QUESTIONS_QUERY_DTO, FindRandomQuestionsQueryDto } from "../src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.mjs";
6
7
  import { QUESTION_CREATION_DTO, QuestionCreationDto } from "../src/contexts/question/application/dto/question-creation/question-creation.dto.shape.mjs";
7
8
  import { QUESTION_THEME_ASSIGNMENT_CREATION_DTO, QuestionThemeAssignmentCreationDto } from "../src/contexts/question/application/dto/question-creation/question-theme-assignment-creation/question-theme-assignment-creation.dto.shape.mjs";
8
9
  import { QUESTION_MODIFICATION_DTO, QuestionModificationDto } from "../src/contexts/question/application/dto/question-modification/question-modification.dto.shape.mjs";
9
10
  import { QUESTION_THEME_ASSIGNMENT_MODIFICATION_DTO, QuestionThemeAssignmentModificationDto } from "../src/contexts/question/application/dto/question-theme-assignment-modification/question-theme-assignment-modification.dto.shape.mjs";
10
11
  import { QUESTION_DTO, QuestionDto } from "../src/contexts/question/application/dto/question/question.dto.shape.mjs";
11
- export { ADMIN_FIND_QUESTIONS_QUERY_DTO, ADMIN_QUESTION_DTO, ADMIN_QUESTION_SORTABLE_FIELDS, type AdminFindQuestionsQueryDto, type AdminQuestionDto, FIND_QUESTIONS_QUERY_DTO, type FindQuestionsQueryDto, QUESTION_AUTHOR_NAME_MAX_LENGTH, QUESTION_AUTHOR_NAME_MIN_LENGTH, QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_COGNITIVE_DIFFICULTIES, QUESTION_CREATION_AUTHOR_ROLES, QUESTION_CREATION_DTO, QUESTION_CREATION_STATUSES, QUESTION_DTO, QUESTION_MODIFICATION_DTO, QUESTION_REJECTION_TYPES, QUESTION_SORTABLE_FIELDS, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_STATUS_ACTIVE, QUESTION_STATUS_ARCHIVED, QUESTION_STATUS_PENDING, QUESTION_STATUS_REJECTED, QUESTION_THEME_ASSIGNMENTS_MAX_ITEMS, QUESTION_THEME_ASSIGNMENTS_MIN_ITEMS, QUESTION_THEME_ASSIGNMENT_CREATION_DTO, QUESTION_THEME_ASSIGNMENT_MODIFICATION_DTO, type QuestionAuthorRole, type QuestionCategory, type QuestionCognitiveDifficulty, type QuestionCreationDto, type QuestionDto, type QuestionModificationDto, type QuestionRejectionType, type QuestionStatus, type QuestionThemeAssignmentCreationDto, type QuestionThemeAssignmentModificationDto };
12
+ import { RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DEFAULT, RANDOM_QUESTIONS_LIMIT_MAXIMUM, RANDOM_QUESTIONS_LIMIT_MINIMUM } from "../src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.mjs";
13
+ export { ADMIN_FIND_QUESTIONS_QUERY_DTO, ADMIN_QUESTION_DTO, ADMIN_QUESTION_SORTABLE_FIELDS, type AdminFindQuestionsQueryDto, type AdminQuestionDto, FIND_QUESTIONS_QUERY_DTO, FIND_RANDOM_QUESTIONS_QUERY_DTO, type FindQuestionsQueryDto, type FindRandomQuestionsQueryDto, QUESTION_AUTHOR_NAME_MAX_LENGTH, QUESTION_AUTHOR_NAME_MIN_LENGTH, QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_COGNITIVE_DIFFICULTIES, QUESTION_CREATION_AUTHOR_ROLES, QUESTION_CREATION_DTO, QUESTION_CREATION_STATUSES, QUESTION_DTO, QUESTION_MODIFICATION_DTO, QUESTION_REJECTION_TYPES, QUESTION_SORTABLE_FIELDS, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_STATUS_ACTIVE, QUESTION_STATUS_ARCHIVED, QUESTION_STATUS_PENDING, QUESTION_STATUS_REJECTED, QUESTION_THEME_ASSIGNMENTS_MAX_ITEMS, QUESTION_THEME_ASSIGNMENTS_MIN_ITEMS, QUESTION_THEME_ASSIGNMENT_CREATION_DTO, QUESTION_THEME_ASSIGNMENT_MODIFICATION_DTO, type QuestionAuthorRole, type QuestionCategory, type QuestionCognitiveDifficulty, type QuestionCreationDto, type QuestionDto, type QuestionModificationDto, type QuestionRejectionType, type QuestionStatus, type QuestionThemeAssignmentCreationDto, type QuestionThemeAssignmentModificationDto, RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DEFAULT, RANDOM_QUESTIONS_LIMIT_MAXIMUM, RANDOM_QUESTIONS_LIMIT_MINIMUM };
@@ -1,10 +1,12 @@
1
1
  import { ADMIN_QUESTION_SORTABLE_FIELDS, QUESTION_AUTHOR_NAME_MAX_LENGTH, QUESTION_AUTHOR_NAME_MIN_LENGTH, QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_COGNITIVE_DIFFICULTIES, QUESTION_CREATION_AUTHOR_ROLES, QUESTION_CREATION_STATUSES, QUESTION_REJECTION_TYPES, QUESTION_SORTABLE_FIELDS, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_STATUS_ACTIVE, QUESTION_STATUS_ARCHIVED, QUESTION_STATUS_PENDING, QUESTION_STATUS_REJECTED, QUESTION_THEME_ASSIGNMENTS_MAX_ITEMS, QUESTION_THEME_ASSIGNMENTS_MIN_ITEMS } from "../src/contexts/question/domain/constants/question.constants.mjs";
2
+ import { RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DEFAULT, RANDOM_QUESTIONS_LIMIT_MAXIMUM, RANDOM_QUESTIONS_LIMIT_MINIMUM } from "../src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.mjs";
2
3
  import { ADMIN_FIND_QUESTIONS_QUERY_DTO } from "../src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.mjs";
3
4
  import { ADMIN_QUESTION_DTO } from "../src/contexts/question/application/dto/admin-question/admin-question.dto.shape.mjs";
4
5
  import { FIND_QUESTIONS_QUERY_DTO } from "../src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.mjs";
6
+ import { FIND_RANDOM_QUESTIONS_QUERY_DTO } from "../src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.mjs";
5
7
  import { QUESTION_THEME_ASSIGNMENT_CREATION_DTO } from "../src/contexts/question/application/dto/question-creation/question-theme-assignment-creation/question-theme-assignment-creation.dto.shape.mjs";
6
8
  import { QUESTION_CREATION_DTO } from "../src/contexts/question/application/dto/question-creation/question-creation.dto.shape.mjs";
7
9
  import { QUESTION_MODIFICATION_DTO } from "../src/contexts/question/application/dto/question-modification/question-modification.dto.shape.mjs";
8
10
  import { QUESTION_THEME_ASSIGNMENT_MODIFICATION_DTO } from "../src/contexts/question/application/dto/question-theme-assignment-modification/question-theme-assignment-modification.dto.shape.mjs";
9
11
  import { QUESTION_DTO } from "../src/contexts/question/application/dto/question/question.dto.shape.mjs";
10
- export { ADMIN_FIND_QUESTIONS_QUERY_DTO, ADMIN_QUESTION_DTO, ADMIN_QUESTION_SORTABLE_FIELDS, FIND_QUESTIONS_QUERY_DTO, QUESTION_AUTHOR_NAME_MAX_LENGTH, QUESTION_AUTHOR_NAME_MIN_LENGTH, QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_COGNITIVE_DIFFICULTIES, QUESTION_CREATION_AUTHOR_ROLES, QUESTION_CREATION_DTO, QUESTION_CREATION_STATUSES, QUESTION_DTO, QUESTION_MODIFICATION_DTO, QUESTION_REJECTION_TYPES, QUESTION_SORTABLE_FIELDS, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_STATUS_ACTIVE, QUESTION_STATUS_ARCHIVED, QUESTION_STATUS_PENDING, QUESTION_STATUS_REJECTED, QUESTION_THEME_ASSIGNMENTS_MAX_ITEMS, QUESTION_THEME_ASSIGNMENTS_MIN_ITEMS, QUESTION_THEME_ASSIGNMENT_CREATION_DTO, QUESTION_THEME_ASSIGNMENT_MODIFICATION_DTO };
12
+ export { ADMIN_FIND_QUESTIONS_QUERY_DTO, ADMIN_QUESTION_DTO, ADMIN_QUESTION_SORTABLE_FIELDS, FIND_QUESTIONS_QUERY_DTO, FIND_RANDOM_QUESTIONS_QUERY_DTO, QUESTION_AUTHOR_NAME_MAX_LENGTH, QUESTION_AUTHOR_NAME_MIN_LENGTH, QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_COGNITIVE_DIFFICULTIES, QUESTION_CREATION_AUTHOR_ROLES, QUESTION_CREATION_DTO, QUESTION_CREATION_STATUSES, QUESTION_DTO, QUESTION_MODIFICATION_DTO, QUESTION_REJECTION_TYPES, QUESTION_SORTABLE_FIELDS, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_STATUS_ACTIVE, QUESTION_STATUS_ARCHIVED, QUESTION_STATUS_PENDING, QUESTION_STATUS_REJECTED, QUESTION_THEME_ASSIGNMENTS_MAX_ITEMS, QUESTION_THEME_ASSIGNMENTS_MIN_ITEMS, QUESTION_THEME_ASSIGNMENT_CREATION_DTO, QUESTION_THEME_ASSIGNMENT_MODIFICATION_DTO, RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DEFAULT, RANDOM_QUESTIONS_LIMIT_MAXIMUM, RANDOM_QUESTIONS_LIMIT_MINIMUM };
@@ -12,6 +12,7 @@ declare const ADMIN_FIND_QUESTIONS_QUERY_DTO: z.ZodObject<{
12
12
  cognitiveDifficulty: "cognitiveDifficulty";
13
13
  }>>>;
14
14
  "sort-order": z.ZodDefault<z.ZodOptional<z.ZodEnum<TupleToEnum<readonly ["asc", "desc"]>>>>;
15
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<unknown>>>;
15
16
  status: z.ZodOptional<z.ZodEnum<QuestionStatusEnum>>;
16
17
  category: z.ZodOptional<z.ZodEnum<QuestionCategoryEnum>>;
17
18
  "cognitive-difficulty": z.ZodOptional<z.ZodEnum<QuestionCognitiveDifficultyEnum>>;
@@ -1,5 +1,7 @@
1
1
  import { ADMIN_QUESTION_SORTABLE_FIELDS } from "../../../domain/constants/question.constants.mjs";
2
+ import { LIMIT_QUERY_KEY } from "../../../../../shared/application/dto/constants/limit-query.dto.constants.mjs";
2
3
  import { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from "../../../../../shared/application/dto/constants/sort-query.dto.constants.mjs";
4
+ import { zLimit } from "../../../../../shared/infrastructure/http/zod/validators/limit/limit.zod.validators.mjs";
3
5
  import { zSortOrder } from "../../../../../shared/infrastructure/http/zod/validators/sort/sort.zod.validators.mjs";
4
6
  import { QUESTION_AUTHOR_ROLE_QUERY_KEY, QUESTION_CATEGORY_QUERY_KEY, QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY, QUESTION_STATUS_QUERY_KEY, QUESTION_THEME_IDS_QUERY_KEY } from "../shared/constants/question-filter-query.dto.constants.mjs";
5
7
  import { QUESTION_SORT_BY_DEFAULT, QUESTION_SORT_BY_DESCRIPTION } from "../shared/zod/validators/constants/question-sort.dto.zod.validators.constants.mjs";
@@ -9,6 +11,7 @@ import { z } from "zod";
9
11
  const ADMIN_FIND_QUESTIONS_QUERY_DTO = z.object({
10
12
  [SORT_BY_QUERY_KEY]: z.enum(ADMIN_QUESTION_SORTABLE_FIELDS).optional().default(QUESTION_SORT_BY_DEFAULT).describe(QUESTION_SORT_BY_DESCRIPTION).meta({ example: QUESTION_SORT_BY_DEFAULT }),
11
13
  [SORT_ORDER_QUERY_KEY]: zSortOrder(),
14
+ [LIMIT_QUERY_KEY]: zLimit(),
12
15
  [QUESTION_STATUS_QUERY_KEY]: zQuestionStatus().optional(),
13
16
  [QUESTION_CATEGORY_QUERY_KEY]: zQuestionCategory().optional(),
14
17
  [QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY]: zQuestionCognitiveDifficulty().optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"admin-find-questions-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { zSortOrder } from \"@shared/infrastructure/http/zod/validators/sort/sort.zod.validators\";\n\nimport { ADMIN_QUESTION_SORTABLE_FIELDS } from \"@question/domain/constants/question.constants\";\nimport { QUESTION_AUTHOR_ROLE_QUERY_KEY, QUESTION_CATEGORY_QUERY_KEY, QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY, QUESTION_STATUS_QUERY_KEY, QUESTION_THEME_IDS_QUERY_KEY } from \"@question/application/dto/shared/constants/question-filter-query.dto.constants\";\nimport { QUESTION_SORT_BY_DEFAULT, QUESTION_SORT_BY_DESCRIPTION } from \"@question/application/dto/shared/zod/validators/constants/question-sort.dto.zod.validators.constants\";\nimport { zQuestionAuthorRole, zQuestionCategory, zQuestionCognitiveDifficulty, zQuestionStatus, zQuestionThemeIdsFilter } from \"@question/application/dto/shared/zod/validators/question.dto.zod.validators\";\n\nconst ADMIN_FIND_QUESTIONS_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(ADMIN_QUESTION_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_SORT_BY_DEFAULT)\n .describe(QUESTION_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: zSortOrder(),\n [QUESTION_STATUS_QUERY_KEY]: zQuestionStatus().optional(),\n [QUESTION_CATEGORY_QUERY_KEY]: zQuestionCategory().optional(),\n [QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY]: zQuestionCognitiveDifficulty().optional(),\n [QUESTION_AUTHOR_ROLE_QUERY_KEY]: zQuestionAuthorRole().optional(),\n [QUESTION_THEME_IDS_QUERY_KEY]: zQuestionThemeIdsFilter(),\n});\n\ntype AdminFindQuestionsQueryDto = z.infer<typeof ADMIN_FIND_QUESTIONS_QUERY_DTO>;\n\nexport type { AdminFindQuestionsQueryDto };\n\nexport { ADMIN_FIND_QUESTIONS_QUERY_DTO };"],"mappings":";;;;;;;;AAUA,MAAM,iCAAiC,EAAE,OAAO;EAC7C,oBAAoB,EAAE,KAAK,8BAA8B,EACvD,SAAS,EACT,QAAQ,wBAAwB,EAChC,SAAS,4BAA4B,EACrC,KAAK,EAAE,SAAS,yBAAyB,CAAC;EAC5C,uBAAuB,WAAW;EAClC,4BAA4B,gBAAgB,EAAE,SAAS;EACvD,8BAA8B,kBAAkB,EAAE,SAAS;EAC3D,0CAA0C,6BAA6B,EAAE,SAAS;EAClF,iCAAiC,oBAAoB,EAAE,SAAS;EAChE,+BAA+B,wBAAwB;AAC1D,CAAC"}
1
+ {"version":3,"file":"admin-find-questions-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question/application/dto/admin-find-questions-query/admin-find-questions-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { LIMIT_QUERY_KEY } from \"@shared/application/dto/constants/limit-query.dto.constants\";\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { zLimit } from \"@shared/infrastructure/http/zod/validators/limit/limit.zod.validators\";\nimport { zSortOrder } from \"@shared/infrastructure/http/zod/validators/sort/sort.zod.validators\";\n\nimport { ADMIN_QUESTION_SORTABLE_FIELDS } from \"@question/domain/constants/question.constants\";\nimport { QUESTION_AUTHOR_ROLE_QUERY_KEY, QUESTION_CATEGORY_QUERY_KEY, QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY, QUESTION_STATUS_QUERY_KEY, QUESTION_THEME_IDS_QUERY_KEY } from \"@question/application/dto/shared/constants/question-filter-query.dto.constants\";\nimport { QUESTION_SORT_BY_DEFAULT, QUESTION_SORT_BY_DESCRIPTION } from \"@question/application/dto/shared/zod/validators/constants/question-sort.dto.zod.validators.constants\";\nimport { zQuestionAuthorRole, zQuestionCategory, zQuestionCognitiveDifficulty, zQuestionStatus, zQuestionThemeIdsFilter } from \"@question/application/dto/shared/zod/validators/question.dto.zod.validators\";\n\nconst ADMIN_FIND_QUESTIONS_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(ADMIN_QUESTION_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_SORT_BY_DEFAULT)\n .describe(QUESTION_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: zSortOrder(),\n [LIMIT_QUERY_KEY]: zLimit(),\n [QUESTION_STATUS_QUERY_KEY]: zQuestionStatus().optional(),\n [QUESTION_CATEGORY_QUERY_KEY]: zQuestionCategory().optional(),\n [QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY]: zQuestionCognitiveDifficulty().optional(),\n [QUESTION_AUTHOR_ROLE_QUERY_KEY]: zQuestionAuthorRole().optional(),\n [QUESTION_THEME_IDS_QUERY_KEY]: zQuestionThemeIdsFilter(),\n});\n\ntype AdminFindQuestionsQueryDto = z.infer<typeof ADMIN_FIND_QUESTIONS_QUERY_DTO>;\n\nexport type { AdminFindQuestionsQueryDto };\n\nexport { ADMIN_FIND_QUESTIONS_QUERY_DTO };"],"mappings":";;;;;;;;;;AAYA,MAAM,iCAAiC,EAAE,OAAO;EAC7C,oBAAoB,EAAE,KAAK,8BAA8B,EACvD,SAAS,EACT,QAAQ,wBAAwB,EAChC,SAAS,4BAA4B,EACrC,KAAK,EAAE,SAAS,yBAAyB,CAAC;EAC5C,uBAAuB,WAAW;EAClC,kBAAkB,OAAO;EACzB,4BAA4B,gBAAgB,EAAE,SAAS;EACvD,8BAA8B,kBAAkB,EAAE,SAAS;EAC3D,0CAA0C,6BAA6B,EAAE,SAAS;EAClF,iCAAiC,oBAAoB,EAAE,SAAS;EAChE,+BAA+B,wBAAwB;AAC1D,CAAC"}
@@ -11,6 +11,7 @@ declare const FIND_QUESTIONS_QUERY_DTO: z.ZodObject<{
11
11
  cognitiveDifficulty: "cognitiveDifficulty";
12
12
  }>>>;
13
13
  "sort-order": z.ZodDefault<z.ZodOptional<z.ZodEnum<TupleToEnum<readonly ["asc", "desc"]>>>>;
14
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<unknown>>>;
14
15
  category: z.ZodOptional<z.ZodEnum<QuestionCategoryEnum>>;
15
16
  "cognitive-difficulty": z.ZodOptional<z.ZodEnum<QuestionCognitiveDifficultyEnum>>;
16
17
  "author-role": z.ZodOptional<z.ZodEnum<QuestionAuthorRoleEnum>>;
@@ -1,5 +1,7 @@
1
1
  import { QUESTION_SORTABLE_FIELDS } from "../../../domain/constants/question.constants.mjs";
2
+ import { LIMIT_QUERY_KEY } from "../../../../../shared/application/dto/constants/limit-query.dto.constants.mjs";
2
3
  import { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from "../../../../../shared/application/dto/constants/sort-query.dto.constants.mjs";
4
+ import { zLimit } from "../../../../../shared/infrastructure/http/zod/validators/limit/limit.zod.validators.mjs";
3
5
  import { zSortOrder } from "../../../../../shared/infrastructure/http/zod/validators/sort/sort.zod.validators.mjs";
4
6
  import { QUESTION_AUTHOR_ROLE_QUERY_KEY, QUESTION_CATEGORY_QUERY_KEY, QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY, QUESTION_THEME_IDS_QUERY_KEY } from "../shared/constants/question-filter-query.dto.constants.mjs";
5
7
  import { QUESTION_SORT_BY_DEFAULT, QUESTION_SORT_BY_DESCRIPTION } from "../shared/zod/validators/constants/question-sort.dto.zod.validators.constants.mjs";
@@ -9,6 +11,7 @@ import { z } from "zod";
9
11
  const FIND_QUESTIONS_QUERY_DTO = z.object({
10
12
  [SORT_BY_QUERY_KEY]: z.enum(QUESTION_SORTABLE_FIELDS).optional().default(QUESTION_SORT_BY_DEFAULT).describe(QUESTION_SORT_BY_DESCRIPTION).meta({ example: QUESTION_SORT_BY_DEFAULT }),
11
13
  [SORT_ORDER_QUERY_KEY]: zSortOrder(),
14
+ [LIMIT_QUERY_KEY]: zLimit(),
12
15
  [QUESTION_CATEGORY_QUERY_KEY]: zQuestionCategory().optional(),
13
16
  [QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY]: zQuestionCognitiveDifficulty().optional(),
14
17
  [QUESTION_AUTHOR_ROLE_QUERY_KEY]: zQuestionAuthorRole().optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"find-questions-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { zSortOrder } from \"@shared/infrastructure/http/zod/validators/sort/sort.zod.validators\";\n\nimport { QUESTION_SORTABLE_FIELDS } from \"@question/domain/constants/question.constants\";\nimport { QUESTION_AUTHOR_ROLE_QUERY_KEY, QUESTION_CATEGORY_QUERY_KEY, QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY, QUESTION_THEME_IDS_QUERY_KEY } from \"@question/application/dto/shared/constants/question-filter-query.dto.constants\";\nimport { QUESTION_SORT_BY_DEFAULT, QUESTION_SORT_BY_DESCRIPTION } from \"@question/application/dto/shared/zod/validators/constants/question-sort.dto.zod.validators.constants\";\nimport { zQuestionAuthorRole, zQuestionCategory, zQuestionCognitiveDifficulty, zQuestionThemeIdsFilter } from \"@question/application/dto/shared/zod/validators/question.dto.zod.validators\";\n\nconst FIND_QUESTIONS_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(QUESTION_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_SORT_BY_DEFAULT)\n .describe(QUESTION_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: zSortOrder(),\n [QUESTION_CATEGORY_QUERY_KEY]: zQuestionCategory().optional(),\n [QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY]: zQuestionCognitiveDifficulty().optional(),\n [QUESTION_AUTHOR_ROLE_QUERY_KEY]: zQuestionAuthorRole().optional(),\n [QUESTION_THEME_IDS_QUERY_KEY]: zQuestionThemeIdsFilter(),\n});\n\ntype FindQuestionsQueryDto = z.infer<typeof FIND_QUESTIONS_QUERY_DTO>;\n\nexport type { FindQuestionsQueryDto };\n\nexport { FIND_QUESTIONS_QUERY_DTO };"],"mappings":";;;;;;;;AAUA,MAAM,2BAA2B,EAAE,OAAO;EACvC,oBAAoB,EAAE,KAAK,wBAAwB,EACjD,SAAS,EACT,QAAQ,wBAAwB,EAChC,SAAS,4BAA4B,EACrC,KAAK,EAAE,SAAS,yBAAyB,CAAC;EAC5C,uBAAuB,WAAW;EAClC,8BAA8B,kBAAkB,EAAE,SAAS;EAC3D,0CAA0C,6BAA6B,EAAE,SAAS;EAClF,iCAAiC,oBAAoB,EAAE,SAAS;EAChE,+BAA+B,wBAAwB;AAC1D,CAAC"}
1
+ {"version":3,"file":"find-questions-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question/application/dto/find-questions-query/find-questions-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { LIMIT_QUERY_KEY } from \"@shared/application/dto/constants/limit-query.dto.constants\";\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { zLimit } from \"@shared/infrastructure/http/zod/validators/limit/limit.zod.validators\";\nimport { zSortOrder } from \"@shared/infrastructure/http/zod/validators/sort/sort.zod.validators\";\n\nimport { QUESTION_SORTABLE_FIELDS } from \"@question/domain/constants/question.constants\";\nimport { QUESTION_AUTHOR_ROLE_QUERY_KEY, QUESTION_CATEGORY_QUERY_KEY, QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY, QUESTION_THEME_IDS_QUERY_KEY } from \"@question/application/dto/shared/constants/question-filter-query.dto.constants\";\nimport { QUESTION_SORT_BY_DEFAULT, QUESTION_SORT_BY_DESCRIPTION } from \"@question/application/dto/shared/zod/validators/constants/question-sort.dto.zod.validators.constants\";\nimport { zQuestionAuthorRole, zQuestionCategory, zQuestionCognitiveDifficulty, zQuestionThemeIdsFilter } from \"@question/application/dto/shared/zod/validators/question.dto.zod.validators\";\n\nconst FIND_QUESTIONS_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(QUESTION_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_SORT_BY_DEFAULT)\n .describe(QUESTION_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: zSortOrder(),\n [LIMIT_QUERY_KEY]: zLimit(),\n [QUESTION_CATEGORY_QUERY_KEY]: zQuestionCategory().optional(),\n [QUESTION_COGNITIVE_DIFFICULTY_QUERY_KEY]: zQuestionCognitiveDifficulty().optional(),\n [QUESTION_AUTHOR_ROLE_QUERY_KEY]: zQuestionAuthorRole().optional(),\n [QUESTION_THEME_IDS_QUERY_KEY]: zQuestionThemeIdsFilter(),\n});\n\ntype FindQuestionsQueryDto = z.infer<typeof FIND_QUESTIONS_QUERY_DTO>;\n\nexport type { FindQuestionsQueryDto };\n\nexport { FIND_QUESTIONS_QUERY_DTO };"],"mappings":";;;;;;;;;;AAYA,MAAM,2BAA2B,EAAE,OAAO;EACvC,oBAAoB,EAAE,KAAK,wBAAwB,EACjD,SAAS,EACT,QAAQ,wBAAwB,EAChC,SAAS,4BAA4B,EACrC,KAAK,EAAE,SAAS,yBAAyB,CAAC;EAC5C,uBAAuB,WAAW;EAClC,kBAAkB,OAAO;EACzB,8BAA8B,kBAAkB,EAAE,SAAS;EAC3D,0CAA0C,6BAA6B,EAAE,SAAS;EAClF,iCAAiC,oBAAoB,EAAE,SAAS;EAChE,+BAA+B,wBAAwB;AAC1D,CAAC"}
@@ -0,0 +1,12 @@
1
+ //#region ../../src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.d.ts
2
+ declare const RANDOM_QUESTIONS_LIMIT_DEFAULT = 20;
3
+ declare const RANDOM_QUESTIONS_LIMIT_MINIMUM = 1;
4
+ declare const RANDOM_QUESTIONS_LIMIT_MAXIMUM = 50;
5
+ declare const RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY = "excluded-ids";
6
+ declare const RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY = "categories";
7
+ declare const RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY = "cognitive-difficulties";
8
+ declare const RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM = 1;
9
+ declare const RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM = 200;
10
+ //#endregion
11
+ export { RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DEFAULT, RANDOM_QUESTIONS_LIMIT_MAXIMUM, RANDOM_QUESTIONS_LIMIT_MINIMUM };
12
+ //# sourceMappingURL=find-random-questions-query.dto.constants.d.mts.map
@@ -0,0 +1,14 @@
1
+ //#region ../../src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.ts
2
+ const RANDOM_QUESTIONS_LIMIT_DEFAULT = 20;
3
+ const RANDOM_QUESTIONS_LIMIT_MINIMUM = 1;
4
+ const RANDOM_QUESTIONS_LIMIT_MAXIMUM = 50;
5
+ const RANDOM_QUESTIONS_LIMIT_DESCRIPTION = "Number of random questions to return.";
6
+ const RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY = "excluded-ids";
7
+ const RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY = "categories";
8
+ const RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY = "cognitive-difficulties";
9
+ const RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM = 1;
10
+ const RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM = 200;
11
+ //#endregion
12
+ export { RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DEFAULT, RANDOM_QUESTIONS_LIMIT_DESCRIPTION, RANDOM_QUESTIONS_LIMIT_MAXIMUM, RANDOM_QUESTIONS_LIMIT_MINIMUM };
13
+
14
+ //# sourceMappingURL=find-random-questions-query.dto.constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-random-questions-query.dto.constants.mjs","names":[],"sources":["../../../../../../../../../../src/contexts/question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants.ts"],"sourcesContent":["const RANDOM_QUESTIONS_LIMIT_DEFAULT = 20;\nconst RANDOM_QUESTIONS_LIMIT_MINIMUM = 1;\nconst RANDOM_QUESTIONS_LIMIT_MAXIMUM = 50;\nconst RANDOM_QUESTIONS_LIMIT_DESCRIPTION = \"Number of random questions to return.\";\n\nconst RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY = \"excluded-ids\";\nconst RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY = \"categories\";\nconst RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY = \"cognitive-difficulties\";\n\nconst RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM = 1;\nconst RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM = 200;\n\nexport {\n RANDOM_QUESTIONS_LIMIT_DEFAULT,\n RANDOM_QUESTIONS_LIMIT_MINIMUM,\n RANDOM_QUESTIONS_LIMIT_MAXIMUM,\n RANDOM_QUESTIONS_LIMIT_DESCRIPTION,\n RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY,\n RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY,\n RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY,\n RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM,\n RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM,\n};"],"mappings":";AAAA,MAAM,iCAAiC;AACvC,MAAM,iCAAiC;AACvC,MAAM,iCAAiC;AACvC,MAAM,qCAAqC;AAE3C,MAAM,0CAA0C;AAChD,MAAM,wCAAwC;AAC9C,MAAM,oDAAoD;AAE1D,MAAM,wCAAwC;AAC9C,MAAM,wCAAwC"}
@@ -0,0 +1,15 @@
1
+ import { QuestionCategoryEnum, QuestionCognitiveDifficultyEnum } from "../../../domain/types/question.value-objects.mjs";
2
+ import { z } from "zod";
3
+
4
+ //#region ../../src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.d.ts
5
+ declare const FIND_RANDOM_QUESTIONS_QUERY_DTO: z.ZodObject<{
6
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<unknown>>>;
7
+ "excluded-ids": z.ZodOptional<z.ZodPreprocess<z.ZodArray<z.ZodString>>>;
8
+ categories: z.ZodOptional<z.ZodPreprocess<z.ZodArray<z.ZodEnum<QuestionCategoryEnum>>>>;
9
+ "cognitive-difficulties": z.ZodOptional<z.ZodPreprocess<z.ZodArray<z.ZodEnum<QuestionCognitiveDifficultyEnum>>>>;
10
+ "theme-ids": z.ZodOptional<z.ZodPreprocess<z.ZodArray<z.ZodString>>>;
11
+ }, z.core.$strip>;
12
+ type FindRandomQuestionsQueryDto = z.infer<typeof FIND_RANDOM_QUESTIONS_QUERY_DTO>;
13
+ //#endregion
14
+ export { FIND_RANDOM_QUESTIONS_QUERY_DTO, type FindRandomQuestionsQueryDto };
15
+ //# sourceMappingURL=find-random-questions-query.dto.shape.d.mts.map
@@ -0,0 +1,17 @@
1
+ import { LIMIT_QUERY_KEY } from "../../../../../shared/application/dto/constants/limit-query.dto.constants.mjs";
2
+ import { QUESTION_THEME_IDS_QUERY_KEY } from "../shared/constants/question-filter-query.dto.constants.mjs";
3
+ import { RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY, RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY, RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY, RANDOM_QUESTIONS_LIMIT_DESCRIPTION } from "./constants/find-random-questions-query.dto.constants.mjs";
4
+ import { zQuestionCategoriesFilter, zQuestionCognitiveDifficultiesFilter, zQuestionExcludedIdsFilter, zQuestionThemeIdsFilter } from "../shared/zod/validators/question.dto.zod.validators.mjs";
5
+ import { z } from "zod";
6
+ //#region ../../src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.ts
7
+ const FIND_RANDOM_QUESTIONS_QUERY_DTO = z.object({
8
+ [LIMIT_QUERY_KEY]: z.coerce.number().int().min(1).max(50).optional().default(20).describe(RANDOM_QUESTIONS_LIMIT_DESCRIPTION).meta({ example: 20 }),
9
+ [RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY]: zQuestionExcludedIdsFilter(),
10
+ [RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY]: zQuestionCategoriesFilter(),
11
+ [RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY]: zQuestionCognitiveDifficultiesFilter(),
12
+ [QUESTION_THEME_IDS_QUERY_KEY]: zQuestionThemeIdsFilter()
13
+ });
14
+ //#endregion
15
+ export { FIND_RANDOM_QUESTIONS_QUERY_DTO };
16
+
17
+ //# sourceMappingURL=find-random-questions-query.dto.shape.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-random-questions-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question/application/dto/find-random-questions-query/find-random-questions-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { LIMIT_QUERY_KEY } from \"@shared/application/dto/constants/limit-query.dto.constants\";\n\nimport {\n RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY,\n RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY,\n RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY,\n RANDOM_QUESTIONS_LIMIT_DEFAULT,\n RANDOM_QUESTIONS_LIMIT_DESCRIPTION,\n RANDOM_QUESTIONS_LIMIT_MAXIMUM,\n RANDOM_QUESTIONS_LIMIT_MINIMUM,\n} from \"@question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants\";\nimport { QUESTION_THEME_IDS_QUERY_KEY } from \"@question/application/dto/shared/constants/question-filter-query.dto.constants\";\nimport {\n zQuestionCategoriesFilter,\n zQuestionCognitiveDifficultiesFilter,\n zQuestionExcludedIdsFilter,\n zQuestionThemeIdsFilter,\n} from \"@question/application/dto/shared/zod/validators/question.dto.zod.validators\";\n\nconst FIND_RANDOM_QUESTIONS_QUERY_DTO = z.object({\n [LIMIT_QUERY_KEY]: z.coerce.number()\n .int()\n .min(RANDOM_QUESTIONS_LIMIT_MINIMUM)\n .max(RANDOM_QUESTIONS_LIMIT_MAXIMUM)\n .optional()\n .default(RANDOM_QUESTIONS_LIMIT_DEFAULT)\n .describe(RANDOM_QUESTIONS_LIMIT_DESCRIPTION)\n .meta({ example: RANDOM_QUESTIONS_LIMIT_DEFAULT }),\n [RANDOM_QUESTIONS_EXCLUDED_IDS_QUERY_KEY]: zQuestionExcludedIdsFilter(),\n [RANDOM_QUESTIONS_CATEGORIES_QUERY_KEY]: zQuestionCategoriesFilter(),\n [RANDOM_QUESTIONS_COGNITIVE_DIFFICULTIES_QUERY_KEY]: zQuestionCognitiveDifficultiesFilter(),\n [QUESTION_THEME_IDS_QUERY_KEY]: zQuestionThemeIdsFilter(),\n});\n\ntype FindRandomQuestionsQueryDto = z.infer<typeof FIND_RANDOM_QUESTIONS_QUERY_DTO>;\n\nexport type { FindRandomQuestionsQueryDto };\n\nexport { FIND_RANDOM_QUESTIONS_QUERY_DTO };"],"mappings":";;;;;;AAqBA,MAAM,kCAAkC,EAAE,OAAO;EAC9C,kBAAkB,EAAE,OAAO,OAAO,EAChC,IAAI,EACJ,IAAA,CAAkC,EAClC,IAAA,EAAkC,EAClC,SAAS,EACT,QAAA,EAAsC,EACtC,SAAS,kCAAkC,EAC3C,KAAK,EAAE,SAAA,GAAwC,CAAC;EAClD,0CAA0C,2BAA2B;EACrE,wCAAwC,0BAA0B;EAClE,oDAAoD,qCAAqC;EACzF,+BAA+B,wBAAwB;AAC1D,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import { QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_COGNITIVE_DIFFICULTIES, QUESTION_STATUSES } from "../../../../../domain/constants/question.constants.mjs";
2
2
  import { areValuesUniqueFromStrings } from "../../../../../../../shared/application/dto/zod/refinements/array/array.zod.refinements.mjs";
3
3
  import { normalizeToArray } from "../../../../../../../shared/application/dto/zod/preprocessors/array/array.zod.preprocessors.mjs";
4
+ import { zCreateFilterArray } from "../../../../../../../shared/application/dto/zod/validators/array/array.zod.validators.mjs";
4
5
  import { zIsoDateTime, zMongoId } from "../../../../../../../shared/infrastructure/http/zod/validators/string/string.zod.validators.mjs";
6
+ import "../../../find-random-questions-query/constants/find-random-questions-query.dto.constants.mjs";
5
7
  import { z } from "zod";
6
8
  //#region ../../src/contexts/question/application/dto/shared/zod/validators/question.dto.zod.validators.ts
7
9
  function zQuestionAuthorRole() {
@@ -19,6 +21,15 @@ function zQuestionCategory() {
19
21
  function zQuestionSourceUrls() {
20
22
  return z.array(z.url()).min(1).max(5).refine(areValuesUniqueFromStrings, { message: "Source URLs must be unique" }).describe("List of unique source URLs for the question").meta({ example: ["https://example.com/source1", "https://example.com/source2"] });
21
23
  }
24
+ function zQuestionExcludedIdsFilter() {
25
+ return zCreateFilterArray(zMongoId().describe("Question ID to exclude"), "Excluded IDs must be unique", "List of question IDs to exclude from the random pool", 1, 200);
26
+ }
27
+ function zQuestionCategoriesFilter() {
28
+ return zCreateFilterArray(z.enum(QUESTION_CATEGORIES), "Categories must be unique", "List of categories to include (OR logic)", 1);
29
+ }
30
+ function zQuestionCognitiveDifficultiesFilter() {
31
+ return zCreateFilterArray(z.enum(QUESTION_COGNITIVE_DIFFICULTIES), "Cognitive difficulties must be unique", "List of cognitive difficulties to include (OR logic)", 1);
32
+ }
22
33
  function zQuestionThemeIdsFilter() {
23
34
  return z.preprocess(normalizeToArray, z.array(zMongoId().describe("Theme ID to filter questions by")).min(1)).optional().describe("List of theme IDs to filter questions by (OR logic)");
24
35
  }
@@ -32,6 +43,6 @@ function zQuestionUpdatedAt() {
32
43
  return zIsoDateTime().describe("Question's last update date");
33
44
  }
34
45
  //#endregion
35
- export { zQuestionAuthorRole, zQuestionCategory, zQuestionCognitiveDifficulty, zQuestionCreatedAt, zQuestionId, zQuestionSourceUrls, zQuestionStatus, zQuestionThemeIdsFilter, zQuestionUpdatedAt };
46
+ export { zQuestionAuthorRole, zQuestionCategoriesFilter, zQuestionCategory, zQuestionCognitiveDifficultiesFilter, zQuestionCognitiveDifficulty, zQuestionCreatedAt, zQuestionExcludedIdsFilter, zQuestionId, zQuestionSourceUrls, zQuestionStatus, zQuestionThemeIdsFilter, zQuestionUpdatedAt };
36
47
 
37
48
  //# sourceMappingURL=question.dto.zod.validators.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"question.dto.zod.validators.mjs","names":[],"sources":["../../../../../../../../../../../src/contexts/question/application/dto/shared/zod/validators/question.dto.zod.validators.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { areValuesUniqueFromStrings } from \"@shared/application/dto/zod/refinements/array/array.zod.refinements\";\nimport { normalizeToArray } from \"@shared/application/dto/zod/preprocessors/array/array.zod.preprocessors\";\nimport { zIsoDateTime, zMongoId } from \"@shared/infrastructure/http/zod/validators/string/string.zod.validators\";\n\nimport { QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_COGNITIVE_DIFFICULTIES } from \"@question/domain/constants/question.constants\";\nimport type { QuestionAuthorRoleEnum, QuestionCategoryEnum, QuestionStatusEnum, QuestionCognitiveDifficultyEnum } from \"@question/domain/types/question.value-objects\";\n\nimport type { ZodEnum, ZodURL, ZodArray, ZodString, ZodISODateTime, ZodOptional, ZodPreprocess } from \"zod\";\n\nfunction zQuestionAuthorRole(): ZodEnum<QuestionAuthorRoleEnum> {\n return z.enum(QUESTION_AUTHOR_ROLES)\n .describe(\"Question author's role\");\n}\n\nfunction zQuestionCognitiveDifficulty(): ZodEnum<QuestionCognitiveDifficultyEnum> {\n return z.enum(QUESTION_COGNITIVE_DIFFICULTIES)\n .describe(\"Question's cognitive difficulty level\");\n}\n\nfunction zQuestionStatus(): ZodEnum<QuestionStatusEnum> {\n return z.enum(QUESTION_STATUSES)\n .describe(\"Question's status\");\n}\n\nfunction zQuestionCategory(): ZodEnum<QuestionCategoryEnum> {\n return z.enum(QUESTION_CATEGORIES)\n .describe(\"Question's category\");\n}\n\nfunction zQuestionSourceUrls(): ZodArray<ZodURL> {\n return z.array(z.url())\n .min(QUESTION_SOURCE_URLS_MIN_ITEMS)\n .max(QUESTION_SOURCE_URLS_MAX_ITEMS)\n .refine(areValuesUniqueFromStrings, { message: \"Source URLs must be unique\" })\n .describe(\"List of unique source URLs for the question\")\n .meta({ example: [\"https://example.com/source1\", \"https://example.com/source2\"] });\n}\n\nfunction zQuestionThemeIdsFilter(): ZodOptional<ZodPreprocess<ZodArray<ZodString>>> {\n return z.preprocess(\n normalizeToArray,\n z.array(zMongoId().describe(\"Theme ID to filter questions by\")).min(1),\n )\n .optional()\n .describe(\"List of theme IDs to filter questions by (OR logic)\");\n}\n\nfunction zQuestionId(): ZodString {\n return zMongoId()\n .describe(\"Question's unique identifier\");\n}\n\nfunction zQuestionCreatedAt(): ZodISODateTime {\n return zIsoDateTime()\n .describe(\"Question's creation date\");\n}\n\nfunction zQuestionUpdatedAt(): ZodISODateTime {\n return zIsoDateTime()\n .describe(\"Question's last update date\");\n}\n\nexport {\n zQuestionAuthorRole,\n zQuestionCognitiveDifficulty,\n zQuestionStatus,\n zQuestionCategory,\n zQuestionSourceUrls,\n zQuestionThemeIdsFilter,\n zQuestionId,\n zQuestionCreatedAt,\n zQuestionUpdatedAt,\n};"],"mappings":";;;;;;AAWA,SAAS,sBAAuD;CAC9D,OAAO,EAAE,KAAK,qBAAqB,EAChC,SAAS,wBAAwB;AACtC;AAEA,SAAS,+BAAyE;CAChF,OAAO,EAAE,KAAK,+BAA+B,EAC1C,SAAS,uCAAuC;AACrD;AAEA,SAAS,kBAA+C;CACtD,OAAO,EAAE,KAAK,iBAAiB,EAC5B,SAAS,mBAAmB;AACjC;AAEA,SAAS,oBAAmD;CAC1D,OAAO,EAAE,KAAK,mBAAmB,EAC9B,SAAS,qBAAqB;AACnC;AAEA,SAAS,sBAAwC;CAC/C,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EACnB,IAAA,CAAkC,EAClC,IAAA,CAAkC,EAClC,OAAO,4BAA4B,EAAE,SAAS,6BAA6B,CAAC,EAC5E,SAAS,6CAA6C,EACtD,KAAK,EAAE,SAAS,CAAC,+BAA+B,6BAA6B,EAAE,CAAC;AACrF;AAEA,SAAS,0BAA2E;CAClF,OAAO,EAAE,WACP,kBACA,EAAE,MAAM,SAAS,EAAE,SAAS,iCAAiC,CAAC,EAAE,IAAI,CAAC,CACvE,EACG,SAAS,EACT,SAAS,qDAAqD;AACnE;AAEA,SAAS,cAAyB;CAChC,OAAO,SAAS,EACb,SAAS,8BAA8B;AAC5C;AAEA,SAAS,qBAAqC;CAC5C,OAAO,aAAa,EACjB,SAAS,0BAA0B;AACxC;AAEA,SAAS,qBAAqC;CAC5C,OAAO,aAAa,EACjB,SAAS,6BAA6B;AAC3C"}
1
+ {"version":3,"file":"question.dto.zod.validators.mjs","names":[],"sources":["../../../../../../../../../../../src/contexts/question/application/dto/shared/zod/validators/question.dto.zod.validators.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { areValuesUniqueFromStrings } from \"@shared/application/dto/zod/refinements/array/array.zod.refinements\";\nimport { normalizeToArray } from \"@shared/application/dto/zod/preprocessors/array/array.zod.preprocessors\";\nimport { zCreateFilterArray } from \"@shared/application/dto/zod/validators/array/array.zod.validators\";\nimport { zIsoDateTime, zMongoId } from \"@shared/infrastructure/http/zod/validators/string/string.zod.validators\";\n\nimport { QUESTION_AUTHOR_ROLES, QUESTION_CATEGORIES, QUESTION_SOURCE_URLS_MAX_ITEMS, QUESTION_SOURCE_URLS_MIN_ITEMS, QUESTION_STATUSES, QUESTION_COGNITIVE_DIFFICULTIES } from \"@question/domain/constants/question.constants\";\nimport { RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM, RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM } from \"@question/application/dto/find-random-questions-query/constants/find-random-questions-query.dto.constants\";\nimport type { QuestionAuthorRoleEnum, QuestionCategoryEnum, QuestionStatusEnum, QuestionCognitiveDifficultyEnum } from \"@question/domain/types/question.value-objects\";\n\nimport type { ZodEnum, ZodURL, ZodArray, ZodString, ZodISODateTime, ZodOptional, ZodPreprocess } from \"zod\";\n\nfunction zQuestionAuthorRole(): ZodEnum<QuestionAuthorRoleEnum> {\n return z.enum(QUESTION_AUTHOR_ROLES)\n .describe(\"Question author's role\");\n}\n\nfunction zQuestionCognitiveDifficulty(): ZodEnum<QuestionCognitiveDifficultyEnum> {\n return z.enum(QUESTION_COGNITIVE_DIFFICULTIES)\n .describe(\"Question's cognitive difficulty level\");\n}\n\nfunction zQuestionStatus(): ZodEnum<QuestionStatusEnum> {\n return z.enum(QUESTION_STATUSES)\n .describe(\"Question's status\");\n}\n\nfunction zQuestionCategory(): ZodEnum<QuestionCategoryEnum> {\n return z.enum(QUESTION_CATEGORIES)\n .describe(\"Question's category\");\n}\n\nfunction zQuestionSourceUrls(): ZodArray<ZodURL> {\n return z.array(z.url())\n .min(QUESTION_SOURCE_URLS_MIN_ITEMS)\n .max(QUESTION_SOURCE_URLS_MAX_ITEMS)\n .refine(areValuesUniqueFromStrings, { message: \"Source URLs must be unique\" })\n .describe(\"List of unique source URLs for the question\")\n .meta({ example: [\"https://example.com/source1\", \"https://example.com/source2\"] });\n}\n\nfunction zQuestionExcludedIdsFilter(): ZodOptional<ZodPreprocess<ZodArray<ZodString>>> {\n return zCreateFilterArray(\n zMongoId().describe(\"Question ID to exclude\"),\n \"Excluded IDs must be unique\",\n \"List of question IDs to exclude from the random pool\",\n RANDOM_QUESTIONS_EXCLUDED_IDS_MINIMUM,\n RANDOM_QUESTIONS_EXCLUDED_IDS_MAXIMUM,\n );\n}\n\nfunction zQuestionCategoriesFilter(): ZodOptional<ZodPreprocess<ZodArray<ZodEnum<QuestionCategoryEnum>>>> {\n return zCreateFilterArray(\n z.enum(QUESTION_CATEGORIES),\n \"Categories must be unique\",\n \"List of categories to include (OR logic)\",\n 1,\n );\n}\n\nfunction zQuestionCognitiveDifficultiesFilter(): ZodOptional<ZodPreprocess<ZodArray<ZodEnum<QuestionCognitiveDifficultyEnum>>>> {\n return zCreateFilterArray(\n z.enum(QUESTION_COGNITIVE_DIFFICULTIES),\n \"Cognitive difficulties must be unique\",\n \"List of cognitive difficulties to include (OR logic)\",\n 1,\n );\n}\n\nfunction zQuestionThemeIdsFilter(): ZodOptional<ZodPreprocess<ZodArray<ZodString>>> {\n return z.preprocess(\n normalizeToArray,\n z.array(zMongoId().describe(\"Theme ID to filter questions by\")).min(1),\n )\n .optional()\n .describe(\"List of theme IDs to filter questions by (OR logic)\");\n}\n\nfunction zQuestionId(): ZodString {\n return zMongoId()\n .describe(\"Question's unique identifier\");\n}\n\nfunction zQuestionCreatedAt(): ZodISODateTime {\n return zIsoDateTime()\n .describe(\"Question's creation date\");\n}\n\nfunction zQuestionUpdatedAt(): ZodISODateTime {\n return zIsoDateTime()\n .describe(\"Question's last update date\");\n}\n\nexport {\n zQuestionAuthorRole,\n zQuestionCognitiveDifficulty,\n zQuestionStatus,\n zQuestionCategory,\n zQuestionSourceUrls,\n zQuestionExcludedIdsFilter,\n zQuestionCategoriesFilter,\n zQuestionCognitiveDifficultiesFilter,\n zQuestionThemeIdsFilter,\n zQuestionId,\n zQuestionCreatedAt,\n zQuestionUpdatedAt,\n};"],"mappings":";;;;;;;;AAaA,SAAS,sBAAuD;CAC9D,OAAO,EAAE,KAAK,qBAAqB,EAChC,SAAS,wBAAwB;AACtC;AAEA,SAAS,+BAAyE;CAChF,OAAO,EAAE,KAAK,+BAA+B,EAC1C,SAAS,uCAAuC;AACrD;AAEA,SAAS,kBAA+C;CACtD,OAAO,EAAE,KAAK,iBAAiB,EAC5B,SAAS,mBAAmB;AACjC;AAEA,SAAS,oBAAmD;CAC1D,OAAO,EAAE,KAAK,mBAAmB,EAC9B,SAAS,qBAAqB;AACnC;AAEA,SAAS,sBAAwC;CAC/C,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EACnB,IAAA,CAAkC,EAClC,IAAA,CAAkC,EAClC,OAAO,4BAA4B,EAAE,SAAS,6BAA6B,CAAC,EAC5E,SAAS,6CAA6C,EACtD,KAAK,EAAE,SAAS,CAAC,+BAA+B,6BAA6B,EAAE,CAAC;AACrF;AAEA,SAAS,6BAA8E;CACrF,OAAO,mBACL,SAAS,EAAE,SAAS,wBAAwB,GAC5C,+BACA,wDAAA,GAAA,GAGF;AACF;AAEA,SAAS,4BAAiG;CACxG,OAAO,mBACL,EAAE,KAAK,mBAAmB,GAC1B,6BACA,4CACA,CACF;AACF;AAEA,SAAS,uCAAuH;CAC9H,OAAO,mBACL,EAAE,KAAK,+BAA+B,GACtC,yCACA,wDACA,CACF;AACF;AAEA,SAAS,0BAA2E;CAClF,OAAO,EAAE,WACP,kBACA,EAAE,MAAM,SAAS,EAAE,SAAS,iCAAiC,CAAC,EAAE,IAAI,CAAC,CACvE,EACG,SAAS,EACT,SAAS,qDAAqD;AACnE;AAEA,SAAS,cAAyB;CAChC,OAAO,SAAS,EACb,SAAS,8BAA8B;AAC5C;AAEA,SAAS,qBAAqC;CAC5C,OAAO,aAAa,EACjB,SAAS,0BAA0B;AACxC;AAEA,SAAS,qBAAqC;CAC5C,OAAO,aAAa,EACjB,SAAS,6BAA6B;AAC3C"}
@@ -13,6 +13,7 @@ declare const ADMIN_FIND_QUESTION_THEMES_QUERY_DTO: z.ZodObject<{
13
13
  asc: "asc";
14
14
  desc: "desc";
15
15
  }>>>;
16
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<unknown>>>;
16
17
  status: z.ZodOptional<z.ZodEnum<QuestionThemeStatusEnum>>;
17
18
  }, z.core.$strip>;
18
19
  type AdminFindQuestionThemesQueryDto = z.infer<typeof ADMIN_FIND_QUESTION_THEMES_QUERY_DTO>;
@@ -1,5 +1,7 @@
1
1
  import { SORT_ORDERS } from "../../../../../shared/domain/constants/sort/sort.constants.mjs";
2
+ import { LIMIT_QUERY_KEY } from "../../../../../shared/application/dto/constants/limit-query.dto.constants.mjs";
2
3
  import { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from "../../../../../shared/application/dto/constants/sort-query.dto.constants.mjs";
4
+ import { zLimit } from "../../../../../shared/infrastructure/http/zod/validators/limit/limit.zod.validators.mjs";
3
5
  import { ADMIN_QUESTION_THEME_SORTABLE_FIELDS } from "../../../domain/constants/question-theme.constants.mjs";
4
6
  import { zQuestionThemeStatus } from "../zod/validators/question-theme.dto.zod.validators.mjs";
5
7
  import { QUESTION_THEME_SORT_BY_DEFAULT, QUESTION_THEME_SORT_BY_DESCRIPTION, QUESTION_THEME_SORT_ORDER_DESCRIPTION } from "../zod/validators/constants/question-theme-sort.dto.zod.validators.constants.mjs";
@@ -8,6 +10,7 @@ import { z } from "zod";
8
10
  const ADMIN_FIND_QUESTION_THEMES_QUERY_DTO = z.object({
9
11
  [SORT_BY_QUERY_KEY]: z.enum(ADMIN_QUESTION_THEME_SORTABLE_FIELDS).optional().default(QUESTION_THEME_SORT_BY_DEFAULT).describe(QUESTION_THEME_SORT_BY_DESCRIPTION).meta({ example: QUESTION_THEME_SORT_BY_DEFAULT }),
10
12
  [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS).optional().default("asc").describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION).meta({ example: "asc" }),
13
+ [LIMIT_QUERY_KEY]: zLimit(),
11
14
  status: zQuestionThemeStatus().optional()
12
15
  });
13
16
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"admin-find-question-themes-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question-theme/application/dto/admin-find-question-themes-query/admin-find-question-themes-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { ADMIN_QUESTION_THEME_SORTABLE_FIELDS } from \"@question-theme/domain/constants/question-theme.constants\";\nimport { zQuestionThemeStatus } from \"@question-theme/application/dto/zod/validators/question-theme.dto.zod.validators\";\nimport { QUESTION_THEME_SORT_BY_DEFAULT, QUESTION_THEME_SORT_BY_DESCRIPTION, QUESTION_THEME_SORT_ORDER_DEFAULT, QUESTION_THEME_SORT_ORDER_DESCRIPTION } from \"@question-theme/application/dto/zod/validators/constants/question-theme-sort.dto.zod.validators.constants\";\n\nimport { SORT_ORDERS } from \"@shared/domain/constants/sort/sort.constants\";\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\n\nconst ADMIN_FIND_QUESTION_THEMES_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(ADMIN_QUESTION_THEME_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_THEME_SORT_BY_DEFAULT)\n .describe(QUESTION_THEME_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS)\n .optional()\n .default(QUESTION_THEME_SORT_ORDER_DEFAULT)\n .describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_ORDER_DEFAULT }),\n status: zQuestionThemeStatus().optional(),\n});\n\ntype AdminFindQuestionThemesQueryDto = z.infer<typeof ADMIN_FIND_QUESTION_THEMES_QUERY_DTO>;\n\nexport type { AdminFindQuestionThemesQueryDto };\n\nexport { ADMIN_FIND_QUESTION_THEMES_QUERY_DTO };"],"mappings":";;;;;;;AASA,MAAM,uCAAuC,EAAE,OAAO;EACnD,oBAAoB,EAAE,KAAK,oCAAoC,EAC7D,SAAS,EACT,QAAQ,8BAA8B,EACtC,SAAS,kCAAkC,EAC3C,KAAK,EAAE,SAAS,+BAA+B,CAAC;EAClD,uBAAuB,EAAE,KAAK,WAAW,EACvC,SAAS,EACT,QAAA,KAAyC,EACzC,SAAS,qCAAqC,EAC9C,KAAK,EAAE,SAAA,MAA2C,CAAC;CACtD,QAAQ,qBAAqB,EAAE,SAAS;AAC1C,CAAC"}
1
+ {"version":3,"file":"admin-find-question-themes-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question-theme/application/dto/admin-find-question-themes-query/admin-find-question-themes-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { ADMIN_QUESTION_THEME_SORTABLE_FIELDS } from \"@question-theme/domain/constants/question-theme.constants\";\nimport { zQuestionThemeStatus } from \"@question-theme/application/dto/zod/validators/question-theme.dto.zod.validators\";\nimport { QUESTION_THEME_SORT_BY_DEFAULT, QUESTION_THEME_SORT_BY_DESCRIPTION, QUESTION_THEME_SORT_ORDER_DEFAULT, QUESTION_THEME_SORT_ORDER_DESCRIPTION } from \"@question-theme/application/dto/zod/validators/constants/question-theme-sort.dto.zod.validators.constants\";\n\nimport { SORT_ORDERS } from \"@shared/domain/constants/sort/sort.constants\";\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { LIMIT_QUERY_KEY } from \"@shared/application/dto/constants/limit-query.dto.constants\";\nimport { zLimit } from \"@shared/infrastructure/http/zod/validators/limit/limit.zod.validators\";\n\nconst ADMIN_FIND_QUESTION_THEMES_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(ADMIN_QUESTION_THEME_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_THEME_SORT_BY_DEFAULT)\n .describe(QUESTION_THEME_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS)\n .optional()\n .default(QUESTION_THEME_SORT_ORDER_DEFAULT)\n .describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_ORDER_DEFAULT }),\n [LIMIT_QUERY_KEY]: zLimit(),\n status: zQuestionThemeStatus().optional(),\n});\n\ntype AdminFindQuestionThemesQueryDto = z.infer<typeof ADMIN_FIND_QUESTION_THEMES_QUERY_DTO>;\n\nexport type { AdminFindQuestionThemesQueryDto };\n\nexport { ADMIN_FIND_QUESTION_THEMES_QUERY_DTO };"],"mappings":";;;;;;;;;AAWA,MAAM,uCAAuC,EAAE,OAAO;EACnD,oBAAoB,EAAE,KAAK,oCAAoC,EAC7D,SAAS,EACT,QAAQ,8BAA8B,EACtC,SAAS,kCAAkC,EAC3C,KAAK,EAAE,SAAS,+BAA+B,CAAC;EAClD,uBAAuB,EAAE,KAAK,WAAW,EACvC,SAAS,EACT,QAAA,KAAyC,EACzC,SAAS,qCAAqC,EAC9C,KAAK,EAAE,SAAA,MAA2C,CAAC;EACrD,kBAAkB,OAAO;CAC1B,QAAQ,qBAAqB,EAAE,SAAS;AAC1C,CAAC"}
@@ -11,6 +11,7 @@ declare const FIND_QUESTION_THEMES_QUERY_DTO: z.ZodObject<{
11
11
  asc: "asc";
12
12
  desc: "desc";
13
13
  }>>>;
14
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<unknown>>>;
14
15
  }, z.core.$strip>;
15
16
  type FindQuestionThemesQueryDto = z.infer<typeof FIND_QUESTION_THEMES_QUERY_DTO>;
16
17
  //#endregion
@@ -1,12 +1,15 @@
1
1
  import { SORT_ORDERS } from "../../../../../shared/domain/constants/sort/sort.constants.mjs";
2
+ import { LIMIT_QUERY_KEY } from "../../../../../shared/application/dto/constants/limit-query.dto.constants.mjs";
2
3
  import { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from "../../../../../shared/application/dto/constants/sort-query.dto.constants.mjs";
4
+ import { zLimit } from "../../../../../shared/infrastructure/http/zod/validators/limit/limit.zod.validators.mjs";
3
5
  import { QUESTION_THEME_SORTABLE_FIELDS } from "../../../domain/constants/question-theme.constants.mjs";
4
6
  import { QUESTION_THEME_SORT_BY_DEFAULT, QUESTION_THEME_SORT_BY_DESCRIPTION, QUESTION_THEME_SORT_ORDER_DESCRIPTION } from "../zod/validators/constants/question-theme-sort.dto.zod.validators.constants.mjs";
5
7
  import { z } from "zod";
6
8
  //#region ../../src/contexts/question-theme/application/dto/find-question-themes-query/find-question-themes-query.dto.shape.ts
7
9
  const FIND_QUESTION_THEMES_QUERY_DTO = z.object({
8
10
  [SORT_BY_QUERY_KEY]: z.enum(QUESTION_THEME_SORTABLE_FIELDS).optional().default(QUESTION_THEME_SORT_BY_DEFAULT).describe(QUESTION_THEME_SORT_BY_DESCRIPTION).meta({ example: QUESTION_THEME_SORT_BY_DEFAULT }),
9
- [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS).optional().default("asc").describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION).meta({ example: "asc" })
11
+ [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS).optional().default("asc").describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION).meta({ example: "asc" }),
12
+ [LIMIT_QUERY_KEY]: zLimit()
10
13
  });
11
14
  //#endregion
12
15
  export { FIND_QUESTION_THEMES_QUERY_DTO };
@@ -1 +1 @@
1
- {"version":3,"file":"find-question-themes-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question-theme/application/dto/find-question-themes-query/find-question-themes-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { QUESTION_THEME_SORTABLE_FIELDS } from \"@question-theme/domain/constants/question-theme.constants\";\nimport { QUESTION_THEME_SORT_BY_DEFAULT, QUESTION_THEME_SORT_BY_DESCRIPTION, QUESTION_THEME_SORT_ORDER_DEFAULT, QUESTION_THEME_SORT_ORDER_DESCRIPTION } from \"@question-theme/application/dto/zod/validators/constants/question-theme-sort.dto.zod.validators.constants\";\n\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { SORT_ORDERS } from \"@shared/domain/constants/sort/sort.constants\";\n\nconst FIND_QUESTION_THEMES_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(QUESTION_THEME_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_THEME_SORT_BY_DEFAULT)\n .describe(QUESTION_THEME_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS)\n .optional()\n .default(QUESTION_THEME_SORT_ORDER_DEFAULT)\n .describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_ORDER_DEFAULT }),\n});\n\ntype FindQuestionThemesQueryDto = z.infer<typeof FIND_QUESTION_THEMES_QUERY_DTO>;\n\nexport type { FindQuestionThemesQueryDto };\n\nexport { FIND_QUESTION_THEMES_QUERY_DTO };"],"mappings":";;;;;;AAQA,MAAM,iCAAiC,EAAE,OAAO;EAC7C,oBAAoB,EAAE,KAAK,8BAA8B,EACvD,SAAS,EACT,QAAQ,8BAA8B,EACtC,SAAS,kCAAkC,EAC3C,KAAK,EAAE,SAAS,+BAA+B,CAAC;EAClD,uBAAuB,EAAE,KAAK,WAAW,EACvC,SAAS,EACT,QAAA,KAAyC,EACzC,SAAS,qCAAqC,EAC9C,KAAK,EAAE,SAAA,MAA2C,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"find-question-themes-query.dto.shape.mjs","names":[],"sources":["../../../../../../../../../src/contexts/question-theme/application/dto/find-question-themes-query/find-question-themes-query.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { QUESTION_THEME_SORTABLE_FIELDS } from \"@question-theme/domain/constants/question-theme.constants\";\nimport { QUESTION_THEME_SORT_BY_DEFAULT, QUESTION_THEME_SORT_BY_DESCRIPTION, QUESTION_THEME_SORT_ORDER_DEFAULT, QUESTION_THEME_SORT_ORDER_DESCRIPTION } from \"@question-theme/application/dto/zod/validators/constants/question-theme-sort.dto.zod.validators.constants\";\n\nimport { LIMIT_QUERY_KEY } from \"@shared/application/dto/constants/limit-query.dto.constants\";\nimport { SORT_BY_QUERY_KEY, SORT_ORDER_QUERY_KEY } from \"@shared/application/dto/constants/sort-query.dto.constants\";\nimport { SORT_ORDERS } from \"@shared/domain/constants/sort/sort.constants\";\nimport { zLimit } from \"@shared/infrastructure/http/zod/validators/limit/limit.zod.validators\";\n\nconst FIND_QUESTION_THEMES_QUERY_DTO = z.object({\n [SORT_BY_QUERY_KEY]: z.enum(QUESTION_THEME_SORTABLE_FIELDS)\n .optional()\n .default(QUESTION_THEME_SORT_BY_DEFAULT)\n .describe(QUESTION_THEME_SORT_BY_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_BY_DEFAULT }),\n [SORT_ORDER_QUERY_KEY]: z.enum(SORT_ORDERS)\n .optional()\n .default(QUESTION_THEME_SORT_ORDER_DEFAULT)\n .describe(QUESTION_THEME_SORT_ORDER_DESCRIPTION)\n .meta({ example: QUESTION_THEME_SORT_ORDER_DEFAULT }),\n [LIMIT_QUERY_KEY]: zLimit(),\n});\n\ntype FindQuestionThemesQueryDto = z.infer<typeof FIND_QUESTION_THEMES_QUERY_DTO>;\n\nexport type { FindQuestionThemesQueryDto };\n\nexport { FIND_QUESTION_THEMES_QUERY_DTO };"],"mappings":";;;;;;;;AAUA,MAAM,iCAAiC,EAAE,OAAO;EAC7C,oBAAoB,EAAE,KAAK,8BAA8B,EACvD,SAAS,EACT,QAAQ,8BAA8B,EACtC,SAAS,kCAAkC,EAC3C,KAAK,EAAE,SAAS,+BAA+B,CAAC;EAClD,uBAAuB,EAAE,KAAK,WAAW,EACvC,SAAS,EACT,QAAA,KAAyC,EACzC,SAAS,qCAAqC,EAC9C,KAAK,EAAE,SAAA,MAA2C,CAAC;EACrD,kBAAkB,OAAO;AAC5B,CAAC"}
@@ -0,0 +1,6 @@
1
+ //#region ../../src/shared/application/dto/constants/limit-query.dto.constants.ts
2
+ const LIMIT_QUERY_KEY = "limit";
3
+ //#endregion
4
+ export { LIMIT_QUERY_KEY };
5
+
6
+ //# sourceMappingURL=limit-query.dto.constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limit-query.dto.constants.mjs","names":[],"sources":["../../../../../../../../src/shared/application/dto/constants/limit-query.dto.constants.ts"],"sourcesContent":["const LIMIT_QUERY_KEY = \"limit\";\n\nexport { LIMIT_QUERY_KEY };"],"mappings":";AAAA,MAAM,kBAAkB"}
@@ -0,0 +1,22 @@
1
+ import { normalizeToArray } from "../../preprocessors/array/array.zod.preprocessors.mjs";
2
+ import { z } from "zod";
3
+ //#region ../../src/shared/application/dto/zod/validators/array/array.zod.validators.ts
4
+ /**
5
+ * Creates a Zod schema for an optional array filter parameter from query strings.
6
+ * Combines: preprocess(normalizeToArray) → array(innerSchema) → min/max → refine(uniqueness) → optional → describe
7
+ * @param innerSchema - The Zod schema for individual array items
8
+ * @param uniquenessMessage - Error message for duplicate value validation
9
+ * @param description - OpenAPI description for the filter parameter
10
+ * @param minItems - Minimum number of items (optional)
11
+ * @param maxItems - Maximum number of items (optional)
12
+ */
13
+ function zCreateFilterArray(innerSchema, uniquenessMessage, description, minItems, maxItems) {
14
+ let arraySchema = z.array(innerSchema);
15
+ if (minItems !== void 0) arraySchema = arraySchema.min(minItems);
16
+ if (maxItems !== void 0) arraySchema = arraySchema.max(maxItems);
17
+ return z.preprocess(normalizeToArray, arraySchema).refine((array) => new Set(array).size === array.length, { message: uniquenessMessage }).optional().describe(description);
18
+ }
19
+ //#endregion
20
+ export { zCreateFilterArray };
21
+
22
+ //# sourceMappingURL=array.zod.validators.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.zod.validators.mjs","names":[],"sources":["../../../../../../../../../../src/shared/application/dto/zod/validators/array/array.zod.validators.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { normalizeToArray } from \"@shared/application/dto/zod/preprocessors/array/array.zod.preprocessors\";\n\nimport type { ZodArray, ZodOptional, ZodPreprocess, ZodType } from \"zod\";\n\n/**\n * Creates a Zod schema for an optional array filter parameter from query strings.\n * Combines: preprocess(normalizeToArray) → array(innerSchema) → min/max → refine(uniqueness) → optional → describe\n * @param innerSchema - The Zod schema for individual array items\n * @param uniquenessMessage - Error message for duplicate value validation\n * @param description - OpenAPI description for the filter parameter\n * @param minItems - Minimum number of items (optional)\n * @param maxItems - Maximum number of items (optional)\n */\nfunction zCreateFilterArray<T extends ZodType>(\n innerSchema: T,\n uniquenessMessage: string,\n description: string,\n minItems?: number,\n maxItems?: number,\n): ZodOptional<ZodPreprocess<ZodArray<T>>> {\n let arraySchema = z.array(innerSchema);\n\n if (minItems !== undefined) {\n arraySchema = arraySchema.min(minItems);\n }\n if (maxItems !== undefined) {\n arraySchema = arraySchema.max(maxItems);\n }\n return z.preprocess(normalizeToArray, arraySchema)\n .refine(array => new Set(array).size === array.length, { message: uniquenessMessage })\n .optional()\n .describe(description);\n}\n\nexport { zCreateFilterArray };"],"mappings":";;;;;;;;;;;;AAeA,SAAS,mBACP,aACA,mBACA,aACA,UACA,UACyC;CACzC,IAAI,cAAc,EAAE,MAAM,WAAW;CAErC,IAAI,aAAa,KAAA,GACf,cAAc,YAAY,IAAI,QAAQ;CAExC,IAAI,aAAa,KAAA,GACf,cAAc,YAAY,IAAI,QAAQ;CAExC,OAAO,EAAE,WAAW,kBAAkB,WAAW,EAC9C,QAAO,UAAS,IAAI,IAAI,KAAK,EAAE,SAAS,MAAM,QAAQ,EAAE,SAAS,kBAAkB,CAAC,EACpF,SAAS,EACT,SAAS,WAAW;AACzB"}
@@ -6,6 +6,7 @@ declare const API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO: z.ZodObject<{
6
6
  message: z.ZodString;
7
7
  path: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
8
8
  expected: z.ZodOptional<z.ZodString>;
9
+ received: z.ZodOptional<z.ZodString>;
9
10
  origin: z.ZodOptional<z.ZodString>;
10
11
  format: z.ZodOptional<z.ZodString>;
11
12
  pattern: z.ZodOptional<z.ZodString>;
@@ -5,6 +5,7 @@ const API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO = z.strictObject({
5
5
  message: z.string().describe("Validation error message").meta({ example: "Expected type string but received type number" }),
6
6
  path: z.array(z.union([z.string(), z.number()])).describe("Path to the invalid property").meta({ example: ["user", "age"] }),
7
7
  expected: z.string().optional().describe("Expected type of the invalid property value when applicable").meta({ example: "string" }),
8
+ received: z.string().optional().describe("Received type of the invalid property value when applicable").meta({ example: "NaN" }),
8
9
  origin: z.string().optional().describe("Origin type of the invalid property value when applicable").meta({ example: "number" }),
9
10
  format: z.string().optional().describe("Expected high-level value format (e.g. 'uuid', 'email') when applicable").meta({ example: "email" }),
10
11
  pattern: z.string().optional().describe("Expected regex pattern when applicable").meta({ example: String.raw`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$` }),
@@ -1 +1 @@
1
- {"version":3,"file":"api-response-exception-validation-details.dto.shape.mjs","names":[],"sources":["../../../../../../../../../../src/shared/infrastructure/http/dto/api-response-exception/api-response-exception-validation-details/api-response-exception-validation-details.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nconst API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO = z.strictObject({\n code: z.string()\n .describe(\"Validation error code\")\n .meta({ example: \"type_error\" }),\n message: z.string()\n .describe(\"Validation error message\")\n .meta({ example: \"Expected type string but received type number\" }),\n path: z.array(z.union([z.string(), z.number()]))\n .describe(\"Path to the invalid property\")\n .meta({ example: [\"user\", \"age\"] }),\n expected: z.string()\n .optional()\n .describe(\"Expected type of the invalid property value when applicable\")\n .meta({ example: \"string\" }),\n origin: z.string()\n .optional()\n .describe(\"Origin type of the invalid property value when applicable\")\n .meta({ example: \"number\" }),\n format: z.string()\n .optional()\n .describe(\"Expected high-level value format (e.g. 'uuid', 'email') when applicable\")\n .meta({ example: \"email\" }),\n pattern: z.string()\n .optional()\n .describe(\"Expected regex pattern when applicable\")\n .meta({ example: String.raw`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$` }),\n minimum: z.number()\n .optional()\n .describe(\"Expected minimum value when applicable\")\n .meta({ example: 1 }),\n maximum: z.number()\n .optional()\n .describe(\"Expected maximum value when applicable\")\n .meta({ example: 255 }),\n inclusive: z.boolean()\n .optional()\n .describe(\"Whether the minimum or maximum value is inclusive when applicable\")\n .meta({ example: true }),\n keys: z.array(z.string())\n .optional()\n .describe(\"List unrecognized keys when applicable\")\n .meta({ example: [\"unexpectedKey1\", \"unexpectedKey2\"] }),\n values: z.array(z.union([z.string(), z.number(), z.boolean()]))\n .optional()\n .describe(\"List of expected values when applicable\")\n .meta({ example: [\"expectedValue1\", \"expectedValue2\"] }),\n});\n\nexport type ApiResponseExceptionValidationDetailsDto = z.infer<typeof API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO>;\n\nexport { API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO };"],"mappings":";;AAEA,MAAM,gDAAgD,EAAE,aAAa;CACnE,MAAM,EAAE,OAAO,EACZ,SAAS,uBAAuB,EAChC,KAAK,EAAE,SAAS,aAAa,CAAC;CACjC,SAAS,EAAE,OAAO,EACf,SAAS,0BAA0B,EACnC,KAAK,EAAE,SAAS,gDAAgD,CAAC;CACpE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAC5C,SAAS,8BAA8B,EACvC,KAAK,EAAE,SAAS,CAAC,QAAQ,KAAK,EAAE,CAAC;CACpC,UAAU,EAAE,OAAO,EAChB,SAAS,EACT,SAAS,6DAA6D,EACtE,KAAK,EAAE,SAAS,SAAS,CAAC;CAC7B,QAAQ,EAAE,OAAO,EACd,SAAS,EACT,SAAS,2DAA2D,EACpE,KAAK,EAAE,SAAS,SAAS,CAAC;CAC7B,QAAQ,EAAE,OAAO,EACd,SAAS,EACT,SAAS,yEAAyE,EAClF,KAAK,EAAE,SAAS,QAAQ,CAAC;CAC5B,SAAS,EAAE,OAAO,EACf,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,OAAO,GAAG,oDAAoD,CAAC;CAClF,SAAS,EAAE,OAAO,EACf,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB,SAAS,EAAE,OAAO,EACf,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,IAAI,CAAC;CACxB,WAAW,EAAE,QAAQ,EAClB,SAAS,EACT,SAAS,mEAAmE,EAC5E,KAAK,EAAE,SAAS,KAAK,CAAC;CACzB,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EACrB,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,CAAC,kBAAkB,gBAAgB,EAAE,CAAC;CACzD,QAAQ,EAAE,MAAM,EAAE,MAAM;EAAC,EAAE,OAAO;EAAG,EAAE,OAAO;EAAG,EAAE,QAAQ;CAAC,CAAC,CAAC,EAC3D,SAAS,EACT,SAAS,yCAAyC,EAClD,KAAK,EAAE,SAAS,CAAC,kBAAkB,gBAAgB,EAAE,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"api-response-exception-validation-details.dto.shape.mjs","names":[],"sources":["../../../../../../../../../../src/shared/infrastructure/http/dto/api-response-exception/api-response-exception-validation-details/api-response-exception-validation-details.dto.shape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nconst API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO = z.strictObject({\n code: z.string()\n .describe(\"Validation error code\")\n .meta({ example: \"type_error\" }),\n message: z.string()\n .describe(\"Validation error message\")\n .meta({ example: \"Expected type string but received type number\" }),\n path: z.array(z.union([z.string(), z.number()]))\n .describe(\"Path to the invalid property\")\n .meta({ example: [\"user\", \"age\"] }),\n expected: z.string()\n .optional()\n .describe(\"Expected type of the invalid property value when applicable\")\n .meta({ example: \"string\" }),\n received: z.string()\n .optional()\n .describe(\"Received type of the invalid property value when applicable\")\n .meta({ example: \"NaN\" }),\n origin: z.string()\n .optional()\n .describe(\"Origin type of the invalid property value when applicable\")\n .meta({ example: \"number\" }),\n format: z.string()\n .optional()\n .describe(\"Expected high-level value format (e.g. 'uuid', 'email') when applicable\")\n .meta({ example: \"email\" }),\n pattern: z.string()\n .optional()\n .describe(\"Expected regex pattern when applicable\")\n .meta({ example: String.raw`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,}$` }),\n minimum: z.number()\n .optional()\n .describe(\"Expected minimum value when applicable\")\n .meta({ example: 1 }),\n maximum: z.number()\n .optional()\n .describe(\"Expected maximum value when applicable\")\n .meta({ example: 255 }),\n inclusive: z.boolean()\n .optional()\n .describe(\"Whether the minimum or maximum value is inclusive when applicable\")\n .meta({ example: true }),\n keys: z.array(z.string())\n .optional()\n .describe(\"List unrecognized keys when applicable\")\n .meta({ example: [\"unexpectedKey1\", \"unexpectedKey2\"] }),\n values: z.array(z.union([z.string(), z.number(), z.boolean()]))\n .optional()\n .describe(\"List of expected values when applicable\")\n .meta({ example: [\"expectedValue1\", \"expectedValue2\"] }),\n});\n\nexport type ApiResponseExceptionValidationDetailsDto = z.infer<typeof API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO>;\n\nexport { API_RESPONSE_EXCEPTION_VALIDATION_DETAILS_DTO };"],"mappings":";;AAEA,MAAM,gDAAgD,EAAE,aAAa;CACnE,MAAM,EAAE,OAAO,EACZ,SAAS,uBAAuB,EAChC,KAAK,EAAE,SAAS,aAAa,CAAC;CACjC,SAAS,EAAE,OAAO,EACf,SAAS,0BAA0B,EACnC,KAAK,EAAE,SAAS,gDAAgD,CAAC;CACpE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAC5C,SAAS,8BAA8B,EACvC,KAAK,EAAE,SAAS,CAAC,QAAQ,KAAK,EAAE,CAAC;CACpC,UAAU,EAAE,OAAO,EAChB,SAAS,EACT,SAAS,6DAA6D,EACtE,KAAK,EAAE,SAAS,SAAS,CAAC;CAC7B,UAAU,EAAE,OAAO,EAChB,SAAS,EACT,SAAS,6DAA6D,EACtE,KAAK,EAAE,SAAS,MAAM,CAAC;CAC1B,QAAQ,EAAE,OAAO,EACd,SAAS,EACT,SAAS,2DAA2D,EACpE,KAAK,EAAE,SAAS,SAAS,CAAC;CAC7B,QAAQ,EAAE,OAAO,EACd,SAAS,EACT,SAAS,yEAAyE,EAClF,KAAK,EAAE,SAAS,QAAQ,CAAC;CAC5B,SAAS,EAAE,OAAO,EACf,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,OAAO,GAAG,oDAAoD,CAAC;CAClF,SAAS,EAAE,OAAO,EACf,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB,SAAS,EAAE,OAAO,EACf,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,IAAI,CAAC;CACxB,WAAW,EAAE,QAAQ,EAClB,SAAS,EACT,SAAS,mEAAmE,EAC5E,KAAK,EAAE,SAAS,KAAK,CAAC;CACzB,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EACrB,SAAS,EACT,SAAS,wCAAwC,EACjD,KAAK,EAAE,SAAS,CAAC,kBAAkB,gBAAgB,EAAE,CAAC;CACzD,QAAQ,EAAE,MAAM,EAAE,MAAM;EAAC,EAAE,OAAO;EAAG,EAAE,OAAO;EAAG,EAAE,QAAQ;CAAC,CAAC,CAAC,EAC3D,SAAS,EACT,SAAS,yCAAyC,EAClD,KAAK,EAAE,SAAS,CAAC,kBAAkB,gBAAgB,EAAE,CAAC;AAC3D,CAAC"}
@@ -10,6 +10,7 @@ declare const API_RESPONSE_EXCEPTION_DTO: z.ZodObject<{
10
10
  message: z.ZodString;
11
11
  path: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
12
12
  expected: z.ZodOptional<z.ZodString>;
13
+ received: z.ZodOptional<z.ZodString>;
13
14
  origin: z.ZodOptional<z.ZodString>;
14
15
  format: z.ZodOptional<z.ZodString>;
15
16
  pattern: z.ZodOptional<z.ZodString>;
@@ -0,0 +1,6 @@
1
+ //#region ../../src/shared/infrastructure/http/zod/validators/limit/constants/limit.zod.validators.constants.ts
2
+ const LIMIT_DESCRIPTION = "Maximum number of results to return. Use 0 for unlimited results.";
3
+ //#endregion
4
+ export { LIMIT_DESCRIPTION };
5
+
6
+ //# sourceMappingURL=limit.zod.validators.constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limit.zod.validators.constants.mjs","names":[],"sources":["../../../../../../../../../../../src/shared/infrastructure/http/zod/validators/limit/constants/limit.zod.validators.constants.ts"],"sourcesContent":["const LIMIT_DESCRIPTION = \"Maximum number of results to return. Use 0 for unlimited results.\";\n\nconst LIMIT_DEFAULT = 50;\n\nconst LIMIT_MINIMUM = 0;\n\nexport { LIMIT_DESCRIPTION, LIMIT_DEFAULT, LIMIT_MINIMUM };"],"mappings":";AAAA,MAAM,oBAAoB"}
@@ -0,0 +1,10 @@
1
+ import { LIMIT_DESCRIPTION } from "./constants/limit.zod.validators.constants.mjs";
2
+ import { z } from "zod";
3
+ //#region ../../src/shared/infrastructure/http/zod/validators/limit/limit.zod.validators.ts
4
+ function zLimit() {
5
+ return z.coerce.number().int().min(0).optional().default(50).describe(LIMIT_DESCRIPTION).meta({ example: 50 });
6
+ }
7
+ //#endregion
8
+ export { zLimit };
9
+
10
+ //# sourceMappingURL=limit.zod.validators.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limit.zod.validators.mjs","names":[],"sources":["../../../../../../../../../../src/shared/infrastructure/http/zod/validators/limit/limit.zod.validators.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { LIMIT_DESCRIPTION, LIMIT_DEFAULT, LIMIT_MINIMUM } from \"@shared/infrastructure/http/zod/validators/limit/constants/limit.zod.validators.constants\";\n\nimport type { ZodCoercedNumber, ZodDefault, ZodOptional } from \"zod\";\n\nfunction zLimit(): ZodDefault<ZodOptional<ZodCoercedNumber>> {\n return z.coerce.number()\n .int()\n .min(LIMIT_MINIMUM)\n .optional()\n .default(LIMIT_DEFAULT)\n .describe(LIMIT_DESCRIPTION)\n .meta({ example: LIMIT_DEFAULT });\n}\n\nexport { zLimit };"],"mappings":";;;AAMA,SAAS,SAAoD;CAC3D,OAAO,EAAE,OAAO,OAAO,EACpB,IAAI,EACJ,IAAA,CAAiB,EACjB,SAAS,EACT,QAAA,EAAqB,EACrB,SAAS,iBAAiB,EAC1B,KAAK,EAAE,SAAA,GAAuB,CAAC;AACpC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@goat-it/schemas",
3
3
  "type": "module",
4
- "version": "0.0.13-beta",
4
+ "version": "0.0.15-beta",
5
5
  "description": "Shared types, constants and Zod schemas for the Goat It projects.",
6
6
  "author": "Antoine ZANARDI",
7
7
  "license": "MIT",