@kids-reporter/api-types 0.0.4 → 0.0.6

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.
@@ -3,6 +3,7 @@
3
3
  * Inferred from Zod schemas — single source of truth for api/ and content-api layers.
4
4
  */
5
5
  import type { z } from 'zod';
6
+ import { V1BookmarkPathIdSchema, V1BookmarksQuerySchema, V1CreateBookmarkBodySchema } from './schemas/bookmarks.js';
6
7
  import { V1AuthorAvatarPathParamsSchema, V1CallBaodaozaiIntroPathParamsSchema, V1EditorPicksSettingsQuerySchema, V1MemberPostsWithAnswersQuerySchema, V1PostBySlugPathParamsSchema, V1PostBySlugQuerySchema, V1PostsEssayAnswersWithLikesQuerySchema, V1PostsQuerySchema, V1ProjectsQuerySchema, V1SitemapsQuerySchema } from './schemas/content.js';
7
8
  import { V1AuthorBySlugPostsQuerySchema, V1CategoryBySlugMetadataQuerySchema, V1CategoryPostsQuerySchema, V1FeedSlugPathParamsSchema, V1SubSubcategoryBySlugPostsQuerySchema, V1TagBySlugPostsQuerySchema } from './schemas/content-feed-queries.js';
8
9
  import { V1EssayAnswersHasLikedQuerySchema } from './schemas/member-essay-answers-has-liked.js';
@@ -116,5 +117,8 @@ export type V1CreatePostEssayAnswerLikeBody = z.infer<typeof V1CreatePostEssayAn
116
117
  export type V1PostChoiceAnswerPathId = z.infer<typeof V1PostChoiceAnswerPathIdSchema>;
117
118
  export type V1PostEssayAnswerPathId = z.infer<typeof V1PostEssayAnswerPathIdSchema>;
118
119
  export type V1PostEssayAnswerLikePathId = z.infer<typeof V1PostEssayAnswerLikePathIdSchema>;
120
+ export type V1CreateBookmarkBody = z.infer<typeof V1CreateBookmarkBodySchema>;
121
+ export type V1BookmarksQuery = z.infer<typeof V1BookmarksQuerySchema>;
122
+ export type V1BookmarkPathId = z.infer<typeof V1BookmarkPathIdSchema>;
119
123
  export type V1EssayAnswersHasLikedQuery = z.infer<typeof V1EssayAnswersHasLikedQuerySchema>;
120
124
  //# sourceMappingURL=api-variables.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-variables.d.ts","sourceRoot":"","sources":["../src/api-variables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-variables.d.ts","sourceRoot":"","sources":["../src/api-variables.ts"],"names":[],"mappings":"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"}
@@ -28,5 +28,7 @@ export const V1ProjectBySlugRequestSchema = V1FeedSlugPathParamsSchema;
28
28
 
29
29
  export const V1PostEssayQuestionAnswersRequestSchema = V1PostEssayQuestionAnswersParamsSchema.merge(V1PostEssayQuestionAnswersQuerySchema);
30
30
 
31
+ // --- Bookmarks ---
32
+
31
33
  // --- Member activity ---
32
34
  //# sourceMappingURL=api-variables.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-variables.js","names":["V1PostBySlugPathParamsSchema","V1PostBySlugQuerySchema","V1AuthorBySlugPostsQuerySchema","V1CategoryBySlugMetadataQuerySchema","V1CategoryPostsQuerySchema","V1FeedSlugPathParamsSchema","V1SubSubcategoryBySlugPostsQuerySchema","V1TagBySlugPostsQuerySchema","V1PostEssayQuestionAnswersParamsSchema","V1PostEssayQuestionAnswersQuerySchema","V1PostBySlugRequestSchema","merge","V1CategoryPostsRequestSchema","V1CategoryMetadataRequestSchema","V1CategorySubcategoriesThemeRequestSchema","V1SubcategoryPostsRequestSchema","V1SubSubcategoryPostsRequestSchema","V1TagPostsRequestSchema","V1AuthorPostsRequestSchema","V1AuthorMetaRequestSchema","V1TagMetaRequestSchema","V1ProjectBySlugRequestSchema","V1PostEssayQuestionAnswersRequestSchema"],"sources":["../src/api-variables.ts"],"sourcesContent":["/**\n * Request variable types (path params, query strings, bodies, client composites).\n * Inferred from Zod schemas — single source of truth for api/ and content-api layers.\n */\nimport type { z } from 'zod'\n\nimport {\n V1AuthorAvatarPathParamsSchema,\n V1CallBaodaozaiIntroPathParamsSchema,\n V1EditorPicksSettingsQuerySchema,\n V1MemberPostsWithAnswersQuerySchema,\n V1PostBySlugPathParamsSchema,\n V1PostBySlugQuerySchema,\n V1PostsEssayAnswersWithLikesQuerySchema,\n V1PostsQuerySchema,\n V1ProjectsQuerySchema,\n V1SitemapsQuerySchema,\n} from './schemas/content.js'\nimport {\n V1AuthorBySlugPostsQuerySchema,\n V1CategoryBySlugMetadataQuerySchema,\n V1CategoryPostsQuerySchema,\n V1FeedSlugPathParamsSchema,\n V1SubSubcategoryBySlugPostsQuerySchema,\n V1TagBySlugPostsQuerySchema,\n} from './schemas/content-feed-queries.js'\nimport { V1EssayAnswersHasLikedQuerySchema } from './schemas/member-essay-answers-has-liked.js'\nimport {\n V1AllPostEssayAnswersQuerySchema,\n V1CreatePostChoiceAnswerBodySchema,\n V1CreatePostEssayAnswerBodySchema,\n V1CreatePostEssayAnswerLikeBodySchema,\n V1MemberPostChoiceAnswersQuerySchema,\n V1MemberPostEssayAnswersQuerySchema,\n V1PatchPostChoiceAnswerBodySchema,\n V1PatchPostEssayAnswerBodySchema,\n V1PostChoiceAnswerPathIdSchema,\n V1PostEssayAnswerLikePathIdSchema,\n V1PostEssayAnswerPathIdSchema,\n V1PostEssayQuestionAnswersParamsSchema,\n V1PostEssayQuestionAnswersQuerySchema,\n} from './schemas/qna.js'\nimport type { V1MemberProfilePatchBody } from './shared-types.js'\n\n// --- Posts / content ---\n\nexport type V1PostsQuery = z.infer<typeof V1PostsQuerySchema>\nexport type V1PostBySlugPathParams = z.infer<\n typeof V1PostBySlugPathParamsSchema\n>\nexport type V1PostBySlugQuery = z.infer<typeof V1PostBySlugQuerySchema>\nexport type V1PostsEssayAnswersWithLikesQuery = z.infer<\n typeof V1PostsEssayAnswersWithLikesQuerySchema\n>\nexport type V1SitemapsQuery = z.infer<typeof V1SitemapsQuerySchema>\nexport type V1ProjectsQuery = z.infer<typeof V1ProjectsQuerySchema>\nexport type V1EditorPicksSettingsQuery = z.infer<\n typeof V1EditorPicksSettingsQuerySchema\n>\nexport type V1MemberPostsWithAnswersQuery = z.infer<\n typeof V1MemberPostsWithAnswersQuerySchema\n>\nexport type { V1MemberProfilePatchBody }\nexport type V1AuthorAvatarPathParams = z.infer<\n typeof V1AuthorAvatarPathParamsSchema\n>\nexport type V1CallBaodaozaiIntroPathParams = z.infer<\n typeof V1CallBaodaozaiIntroPathParamsSchema\n>\n\nexport const V1PostBySlugRequestSchema = V1PostBySlugPathParamsSchema.merge(\n V1PostBySlugQuerySchema\n)\nexport type V1PostBySlugRequest = z.infer<typeof V1PostBySlugRequestSchema>\n\nexport type V1PostMetaBySlugRequest = Pick<V1PostBySlugRequest, 'slug'>\n\n// --- Feeds ---\n\nexport type V1FeedSlugPathParams = z.infer<typeof V1FeedSlugPathParamsSchema>\nexport type V1CategoryPostsQuery = z.infer<typeof V1CategoryPostsQuerySchema>\nexport type V1CategoryBySlugMetadataQuery = z.infer<\n typeof V1CategoryBySlugMetadataQuerySchema\n>\nexport type V1SubSubcategoryBySlugPostsQuery = z.infer<\n typeof V1SubSubcategoryBySlugPostsQuerySchema\n>\nexport type V1TagBySlugPostsQuery = z.infer<typeof V1TagBySlugPostsQuerySchema>\nexport type V1AuthorBySlugPostsQuery = z.infer<\n typeof V1AuthorBySlugPostsQuerySchema\n>\n\nexport const V1CategoryPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1CategoryPostsQuerySchema\n)\nexport type V1CategoryPostsRequest = z.infer<\n typeof V1CategoryPostsRequestSchema\n>\n\nexport const V1CategoryMetadataRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1CategoryBySlugMetadataQuerySchema\n)\nexport type V1CategoryMetadataRequest = z.infer<\n typeof V1CategoryMetadataRequestSchema\n>\n\nexport const V1CategorySubcategoriesThemeRequestSchema =\n V1FeedSlugPathParamsSchema\nexport type V1CategorySubcategoriesThemeRequest = z.infer<\n typeof V1CategorySubcategoriesThemeRequestSchema\n>\n\nexport const V1SubcategoryPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1CategoryPostsQuerySchema\n)\nexport type V1SubcategoryPostsRequest = z.infer<\n typeof V1SubcategoryPostsRequestSchema\n>\n\nexport const V1SubSubcategoryPostsRequestSchema =\n V1FeedSlugPathParamsSchema.merge(V1SubSubcategoryBySlugPostsQuerySchema)\nexport type V1SubSubcategoryPostsRequest = z.infer<\n typeof V1SubSubcategoryPostsRequestSchema\n>\n\nexport const V1TagPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1TagBySlugPostsQuerySchema\n)\nexport type V1TagPostsRequest = z.infer<typeof V1TagPostsRequestSchema>\n\nexport const V1AuthorPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1AuthorBySlugPostsQuerySchema\n)\nexport type V1AuthorPostsRequest = z.infer<typeof V1AuthorPostsRequestSchema>\n\nexport const V1AuthorMetaRequestSchema = V1FeedSlugPathParamsSchema\nexport type V1AuthorMetaRequest = z.infer<typeof V1AuthorMetaRequestSchema>\n\nexport const V1TagMetaRequestSchema = V1FeedSlugPathParamsSchema\nexport type V1TagMetaRequest = z.infer<typeof V1TagMetaRequestSchema>\n\nexport const V1ProjectBySlugRequestSchema = V1FeedSlugPathParamsSchema\nexport type V1ProjectBySlugRequest = z.infer<\n typeof V1ProjectBySlugRequestSchema\n>\n\n// --- QnA ---\n\nexport type V1AllPostEssayAnswersQuery = z.infer<\n typeof V1AllPostEssayAnswersQuerySchema\n>\nexport type V1PostEssayQuestionAnswersParams = z.infer<\n typeof V1PostEssayQuestionAnswersParamsSchema\n>\nexport type V1PostEssayQuestionAnswersQuery = z.infer<\n typeof V1PostEssayQuestionAnswersQuerySchema\n>\n\nexport const V1PostEssayQuestionAnswersRequestSchema =\n V1PostEssayQuestionAnswersParamsSchema.merge(\n V1PostEssayQuestionAnswersQuerySchema\n )\nexport type V1PostEssayQuestionAnswersRequest = z.infer<\n typeof V1PostEssayQuestionAnswersRequestSchema\n>\n\nexport type V1MemberPostChoiceAnswersQuery = z.infer<\n typeof V1MemberPostChoiceAnswersQuerySchema\n>\nexport type V1MemberPostEssayAnswersQuery = z.infer<\n typeof V1MemberPostEssayAnswersQuerySchema\n>\n\nexport type V1CreatePostChoiceAnswerBody = z.infer<\n typeof V1CreatePostChoiceAnswerBodySchema\n>\nexport type V1PatchPostChoiceAnswerBody = z.infer<\n typeof V1PatchPostChoiceAnswerBodySchema\n>\nexport type V1CreatePostEssayAnswerBody = z.infer<\n typeof V1CreatePostEssayAnswerBodySchema\n>\nexport type V1PatchPostEssayAnswerBody = z.infer<\n typeof V1PatchPostEssayAnswerBodySchema\n>\nexport type V1CreatePostEssayAnswerLikeBody = z.infer<\n typeof V1CreatePostEssayAnswerLikeBodySchema\n>\n\nexport type V1PostChoiceAnswerPathId = z.infer<\n typeof V1PostChoiceAnswerPathIdSchema\n>\nexport type V1PostEssayAnswerPathId = z.infer<\n typeof V1PostEssayAnswerPathIdSchema\n>\nexport type V1PostEssayAnswerLikePathId = z.infer<\n typeof V1PostEssayAnswerLikePathIdSchema\n>\n\n// --- Member activity ---\n\nexport type V1EssayAnswersHasLikedQuery = z.infer<\n typeof V1EssayAnswersHasLikedQuerySchema\n>\n"],"mappings":"AAAA;AACA;AACA;AACA;;AAGA,SAKEA,4BAA4B,EAC5BC,uBAAuB,QAKlB,sBAAsB;AAC7B,SACEC,8BAA8B,EAC9BC,mCAAmC,EACnCC,0BAA0B,EAC1BC,0BAA0B,EAC1BC,sCAAsC,EACtCC,2BAA2B,QACtB,mCAAmC;AAE1C,SAYEC,sCAAsC,EACtCC,qCAAqC,QAChC,kBAAkB;;AAGzB;;AA0BA,OAAO,MAAMC,yBAAyB,GAAGV,4BAA4B,CAACW,KAAK,CACzEV,uBACF,CAAC;;AAKD;;AAeA,OAAO,MAAMW,4BAA4B,GAAGP,0BAA0B,CAACM,KAAK,CAC1EP,0BACF,CAAC;AAKD,OAAO,MAAMS,+BAA+B,GAAGR,0BAA0B,CAACM,KAAK,CAC7ER,mCACF,CAAC;AAKD,OAAO,MAAMW,yCAAyC,GACpDT,0BAA0B;AAK5B,OAAO,MAAMU,+BAA+B,GAAGV,0BAA0B,CAACM,KAAK,CAC7EP,0BACF,CAAC;AAKD,OAAO,MAAMY,kCAAkC,GAC7CX,0BAA0B,CAACM,KAAK,CAACL,sCAAsC,CAAC;AAK1E,OAAO,MAAMW,uBAAuB,GAAGZ,0BAA0B,CAACM,KAAK,CACrEJ,2BACF,CAAC;AAGD,OAAO,MAAMW,0BAA0B,GAAGb,0BAA0B,CAACM,KAAK,CACxET,8BACF,CAAC;AAGD,OAAO,MAAMiB,yBAAyB,GAAGd,0BAA0B;AAGnE,OAAO,MAAMe,sBAAsB,GAAGf,0BAA0B;AAGhE,OAAO,MAAMgB,4BAA4B,GAAGhB,0BAA0B;;AAKtE;;AAYA,OAAO,MAAMiB,uCAAuC,GAClDd,sCAAsC,CAACG,KAAK,CAC1CF,qCACF,CAAC;;AAsCH","ignoreList":[]}
1
+ {"version":3,"file":"api-variables.js","names":["V1PostBySlugPathParamsSchema","V1PostBySlugQuerySchema","V1AuthorBySlugPostsQuerySchema","V1CategoryBySlugMetadataQuerySchema","V1CategoryPostsQuerySchema","V1FeedSlugPathParamsSchema","V1SubSubcategoryBySlugPostsQuerySchema","V1TagBySlugPostsQuerySchema","V1PostEssayQuestionAnswersParamsSchema","V1PostEssayQuestionAnswersQuerySchema","V1PostBySlugRequestSchema","merge","V1CategoryPostsRequestSchema","V1CategoryMetadataRequestSchema","V1CategorySubcategoriesThemeRequestSchema","V1SubcategoryPostsRequestSchema","V1SubSubcategoryPostsRequestSchema","V1TagPostsRequestSchema","V1AuthorPostsRequestSchema","V1AuthorMetaRequestSchema","V1TagMetaRequestSchema","V1ProjectBySlugRequestSchema","V1PostEssayQuestionAnswersRequestSchema"],"sources":["../src/api-variables.ts"],"sourcesContent":["/**\n * Request variable types (path params, query strings, bodies, client composites).\n * Inferred from Zod schemas — single source of truth for api/ and content-api layers.\n */\nimport type { z } from 'zod'\n\nimport {\n V1BookmarkPathIdSchema,\n V1BookmarksQuerySchema,\n V1CreateBookmarkBodySchema,\n} from './schemas/bookmarks.js'\nimport {\n V1AuthorAvatarPathParamsSchema,\n V1CallBaodaozaiIntroPathParamsSchema,\n V1EditorPicksSettingsQuerySchema,\n V1MemberPostsWithAnswersQuerySchema,\n V1PostBySlugPathParamsSchema,\n V1PostBySlugQuerySchema,\n V1PostsEssayAnswersWithLikesQuerySchema,\n V1PostsQuerySchema,\n V1ProjectsQuerySchema,\n V1SitemapsQuerySchema,\n} from './schemas/content.js'\nimport {\n V1AuthorBySlugPostsQuerySchema,\n V1CategoryBySlugMetadataQuerySchema,\n V1CategoryPostsQuerySchema,\n V1FeedSlugPathParamsSchema,\n V1SubSubcategoryBySlugPostsQuerySchema,\n V1TagBySlugPostsQuerySchema,\n} from './schemas/content-feed-queries.js'\nimport { V1EssayAnswersHasLikedQuerySchema } from './schemas/member-essay-answers-has-liked.js'\nimport {\n V1AllPostEssayAnswersQuerySchema,\n V1CreatePostChoiceAnswerBodySchema,\n V1CreatePostEssayAnswerBodySchema,\n V1CreatePostEssayAnswerLikeBodySchema,\n V1MemberPostChoiceAnswersQuerySchema,\n V1MemberPostEssayAnswersQuerySchema,\n V1PatchPostChoiceAnswerBodySchema,\n V1PatchPostEssayAnswerBodySchema,\n V1PostChoiceAnswerPathIdSchema,\n V1PostEssayAnswerLikePathIdSchema,\n V1PostEssayAnswerPathIdSchema,\n V1PostEssayQuestionAnswersParamsSchema,\n V1PostEssayQuestionAnswersQuerySchema,\n} from './schemas/qna.js'\nimport type { V1MemberProfilePatchBody } from './shared-types.js'\n\n// --- Posts / content ---\n\nexport type V1PostsQuery = z.infer<typeof V1PostsQuerySchema>\nexport type V1PostBySlugPathParams = z.infer<\n typeof V1PostBySlugPathParamsSchema\n>\nexport type V1PostBySlugQuery = z.infer<typeof V1PostBySlugQuerySchema>\nexport type V1PostsEssayAnswersWithLikesQuery = z.infer<\n typeof V1PostsEssayAnswersWithLikesQuerySchema\n>\nexport type V1SitemapsQuery = z.infer<typeof V1SitemapsQuerySchema>\nexport type V1ProjectsQuery = z.infer<typeof V1ProjectsQuerySchema>\nexport type V1EditorPicksSettingsQuery = z.infer<\n typeof V1EditorPicksSettingsQuerySchema\n>\nexport type V1MemberPostsWithAnswersQuery = z.infer<\n typeof V1MemberPostsWithAnswersQuerySchema\n>\nexport type { V1MemberProfilePatchBody }\nexport type V1AuthorAvatarPathParams = z.infer<\n typeof V1AuthorAvatarPathParamsSchema\n>\nexport type V1CallBaodaozaiIntroPathParams = z.infer<\n typeof V1CallBaodaozaiIntroPathParamsSchema\n>\n\nexport const V1PostBySlugRequestSchema = V1PostBySlugPathParamsSchema.merge(\n V1PostBySlugQuerySchema\n)\nexport type V1PostBySlugRequest = z.infer<typeof V1PostBySlugRequestSchema>\n\nexport type V1PostMetaBySlugRequest = Pick<V1PostBySlugRequest, 'slug'>\n\n// --- Feeds ---\n\nexport type V1FeedSlugPathParams = z.infer<typeof V1FeedSlugPathParamsSchema>\nexport type V1CategoryPostsQuery = z.infer<typeof V1CategoryPostsQuerySchema>\nexport type V1CategoryBySlugMetadataQuery = z.infer<\n typeof V1CategoryBySlugMetadataQuerySchema\n>\nexport type V1SubSubcategoryBySlugPostsQuery = z.infer<\n typeof V1SubSubcategoryBySlugPostsQuerySchema\n>\nexport type V1TagBySlugPostsQuery = z.infer<typeof V1TagBySlugPostsQuerySchema>\nexport type V1AuthorBySlugPostsQuery = z.infer<\n typeof V1AuthorBySlugPostsQuerySchema\n>\n\nexport const V1CategoryPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1CategoryPostsQuerySchema\n)\nexport type V1CategoryPostsRequest = z.infer<\n typeof V1CategoryPostsRequestSchema\n>\n\nexport const V1CategoryMetadataRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1CategoryBySlugMetadataQuerySchema\n)\nexport type V1CategoryMetadataRequest = z.infer<\n typeof V1CategoryMetadataRequestSchema\n>\n\nexport const V1CategorySubcategoriesThemeRequestSchema =\n V1FeedSlugPathParamsSchema\nexport type V1CategorySubcategoriesThemeRequest = z.infer<\n typeof V1CategorySubcategoriesThemeRequestSchema\n>\n\nexport const V1SubcategoryPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1CategoryPostsQuerySchema\n)\nexport type V1SubcategoryPostsRequest = z.infer<\n typeof V1SubcategoryPostsRequestSchema\n>\n\nexport const V1SubSubcategoryPostsRequestSchema =\n V1FeedSlugPathParamsSchema.merge(V1SubSubcategoryBySlugPostsQuerySchema)\nexport type V1SubSubcategoryPostsRequest = z.infer<\n typeof V1SubSubcategoryPostsRequestSchema\n>\n\nexport const V1TagPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1TagBySlugPostsQuerySchema\n)\nexport type V1TagPostsRequest = z.infer<typeof V1TagPostsRequestSchema>\n\nexport const V1AuthorPostsRequestSchema = V1FeedSlugPathParamsSchema.merge(\n V1AuthorBySlugPostsQuerySchema\n)\nexport type V1AuthorPostsRequest = z.infer<typeof V1AuthorPostsRequestSchema>\n\nexport const V1AuthorMetaRequestSchema = V1FeedSlugPathParamsSchema\nexport type V1AuthorMetaRequest = z.infer<typeof V1AuthorMetaRequestSchema>\n\nexport const V1TagMetaRequestSchema = V1FeedSlugPathParamsSchema\nexport type V1TagMetaRequest = z.infer<typeof V1TagMetaRequestSchema>\n\nexport const V1ProjectBySlugRequestSchema = V1FeedSlugPathParamsSchema\nexport type V1ProjectBySlugRequest = z.infer<\n typeof V1ProjectBySlugRequestSchema\n>\n\n// --- QnA ---\n\nexport type V1AllPostEssayAnswersQuery = z.infer<\n typeof V1AllPostEssayAnswersQuerySchema\n>\nexport type V1PostEssayQuestionAnswersParams = z.infer<\n typeof V1PostEssayQuestionAnswersParamsSchema\n>\nexport type V1PostEssayQuestionAnswersQuery = z.infer<\n typeof V1PostEssayQuestionAnswersQuerySchema\n>\n\nexport const V1PostEssayQuestionAnswersRequestSchema =\n V1PostEssayQuestionAnswersParamsSchema.merge(\n V1PostEssayQuestionAnswersQuerySchema\n )\nexport type V1PostEssayQuestionAnswersRequest = z.infer<\n typeof V1PostEssayQuestionAnswersRequestSchema\n>\n\nexport type V1MemberPostChoiceAnswersQuery = z.infer<\n typeof V1MemberPostChoiceAnswersQuerySchema\n>\nexport type V1MemberPostEssayAnswersQuery = z.infer<\n typeof V1MemberPostEssayAnswersQuerySchema\n>\n\nexport type V1CreatePostChoiceAnswerBody = z.infer<\n typeof V1CreatePostChoiceAnswerBodySchema\n>\nexport type V1PatchPostChoiceAnswerBody = z.infer<\n typeof V1PatchPostChoiceAnswerBodySchema\n>\nexport type V1CreatePostEssayAnswerBody = z.infer<\n typeof V1CreatePostEssayAnswerBodySchema\n>\nexport type V1PatchPostEssayAnswerBody = z.infer<\n typeof V1PatchPostEssayAnswerBodySchema\n>\nexport type V1CreatePostEssayAnswerLikeBody = z.infer<\n typeof V1CreatePostEssayAnswerLikeBodySchema\n>\n\nexport type V1PostChoiceAnswerPathId = z.infer<\n typeof V1PostChoiceAnswerPathIdSchema\n>\nexport type V1PostEssayAnswerPathId = z.infer<\n typeof V1PostEssayAnswerPathIdSchema\n>\nexport type V1PostEssayAnswerLikePathId = z.infer<\n typeof V1PostEssayAnswerLikePathIdSchema\n>\n\n// --- Bookmarks ---\n\nexport type V1CreateBookmarkBody = z.infer<typeof V1CreateBookmarkBodySchema>\nexport type V1BookmarksQuery = z.infer<typeof V1BookmarksQuerySchema>\nexport type V1BookmarkPathId = z.infer<typeof V1BookmarkPathIdSchema>\n\n// --- Member activity ---\n\nexport type V1EssayAnswersHasLikedQuery = z.infer<\n typeof V1EssayAnswersHasLikedQuerySchema\n>\n"],"mappings":"AAAA;AACA;AACA;AACA;;AAQA,SAKEA,4BAA4B,EAC5BC,uBAAuB,QAKlB,sBAAsB;AAC7B,SACEC,8BAA8B,EAC9BC,mCAAmC,EACnCC,0BAA0B,EAC1BC,0BAA0B,EAC1BC,sCAAsC,EACtCC,2BAA2B,QACtB,mCAAmC;AAE1C,SAYEC,sCAAsC,EACtCC,qCAAqC,QAChC,kBAAkB;;AAGzB;;AA0BA,OAAO,MAAMC,yBAAyB,GAAGV,4BAA4B,CAACW,KAAK,CACzEV,uBACF,CAAC;;AAKD;;AAeA,OAAO,MAAMW,4BAA4B,GAAGP,0BAA0B,CAACM,KAAK,CAC1EP,0BACF,CAAC;AAKD,OAAO,MAAMS,+BAA+B,GAAGR,0BAA0B,CAACM,KAAK,CAC7ER,mCACF,CAAC;AAKD,OAAO,MAAMW,yCAAyC,GACpDT,0BAA0B;AAK5B,OAAO,MAAMU,+BAA+B,GAAGV,0BAA0B,CAACM,KAAK,CAC7EP,0BACF,CAAC;AAKD,OAAO,MAAMY,kCAAkC,GAC7CX,0BAA0B,CAACM,KAAK,CAACL,sCAAsC,CAAC;AAK1E,OAAO,MAAMW,uBAAuB,GAAGZ,0BAA0B,CAACM,KAAK,CACrEJ,2BACF,CAAC;AAGD,OAAO,MAAMW,0BAA0B,GAAGb,0BAA0B,CAACM,KAAK,CACxET,8BACF,CAAC;AAGD,OAAO,MAAMiB,yBAAyB,GAAGd,0BAA0B;AAGnE,OAAO,MAAMe,sBAAsB,GAAGf,0BAA0B;AAGhE,OAAO,MAAMgB,4BAA4B,GAAGhB,0BAA0B;;AAKtE;;AAYA,OAAO,MAAMiB,uCAAuC,GAClDd,sCAAsC,CAACG,KAAK,CAC1CF,qCACF,CAAC;;AAsCH;;AAMA","ignoreList":[]}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './api-variables.js';
2
2
  export * from './openapi.js';
3
3
  export * from './rest.js';
4
+ export * from './schemas/bookmarks.js';
4
5
  export * from './schemas/content.js';
5
6
  export * from './schemas/content-feed-queries.js';
6
7
  export * from './schemas/content-feed-responses.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,mCAAmC,CAAA;AACjD,cAAc,qCAAqC,CAAA;AACnD,cAAc,kCAAkC,CAAA;AAChD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,mCAAmC,CAAA;AACjD,cAAc,qCAAqC,CAAA;AACnD,cAAc,kCAAkC,CAAA;AAChD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA"}
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './api-variables.js';
2
2
  export * from './openapi.js';
3
3
  export * from './rest.js';
4
+ export * from './schemas/bookmarks.js';
4
5
  export * from './schemas/content.js';
5
6
  export * from './schemas/content-feed-queries.js';
6
7
  export * from './schemas/content-feed-responses.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["export * from './api-variables.js'\nexport * from './openapi.js'\nexport * from './rest.js'\nexport * from './schemas/content.js'\nexport * from './schemas/content-feed-queries.js'\nexport * from './schemas/content-feed-responses.js'\nexport * from './schemas/extra-openapi-paths.js'\nexport * from './schemas/member-essay-answers-has-liked.js'\nexport * from './schemas/qna.js'\nexport * from './shared-types.js'\n"],"mappings":"AAAA,cAAc,oBAAoB;AAClC,cAAc,cAAc;AAC5B,cAAc,WAAW;AACzB,cAAc,sBAAsB;AACpC,cAAc,mCAAmC;AACjD,cAAc,qCAAqC;AACnD,cAAc,kCAAkC;AAChD,cAAc,6CAA6C;AAC3D,cAAc,kBAAkB;AAChC,cAAc,mBAAmB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["export * from './api-variables.js'\nexport * from './openapi.js'\nexport * from './rest.js'\nexport * from './schemas/bookmarks.js'\nexport * from './schemas/content.js'\nexport * from './schemas/content-feed-queries.js'\nexport * from './schemas/content-feed-responses.js'\nexport * from './schemas/extra-openapi-paths.js'\nexport * from './schemas/member-essay-answers-has-liked.js'\nexport * from './schemas/qna.js'\nexport * from './shared-types.js'\n"],"mappings":"AAAA,cAAc,oBAAoB;AAClC,cAAc,cAAc;AAC5B,cAAc,WAAW;AACzB,cAAc,wBAAwB;AACtC,cAAc,sBAAsB;AACpC,cAAc,mCAAmC;AACjD,cAAc,qCAAqC;AACnD,cAAc,kCAAkC;AAChD,cAAc,6CAA6C;AAC3D,cAAc,kBAAkB;AAChC,cAAc,mBAAmB","ignoreList":[]}
package/dist/openapi.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import './schemas/bookmarks.js';
1
2
  import './schemas/extra-openapi-paths.js';
2
3
  import './schemas/qna.js';
3
4
  export declare function getOpenApiDocument(): {
@@ -28,6 +29,9 @@ export declare function getOpenApiDocument(): {
28
29
  } | {
29
30
  readonly name: "Member Q&A";
30
31
  readonly description: "Member-scoped choice/essay answers and likes.";
32
+ } | {
33
+ readonly name: "Member Bookmarks";
34
+ readonly description: "Member-scoped bookmarks for posts and projects.";
31
35
  } | {
32
36
  readonly name: "Public Q&A";
33
37
  readonly description: "Public essay Q&A listings and question threads.";
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAA;AACzC,OAAO,kBAAkB,CAAA;AA+BzB,wBAAgB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcjC"}
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAA;AAC/B,OAAO,kCAAkC,CAAA;AACzC,OAAO,kBAAkB,CAAA;AAmCzB,wBAAgB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcjC"}
package/dist/openapi.js CHANGED
@@ -1,3 +1,4 @@
1
+ import './schemas/bookmarks.js';
1
2
  import './schemas/extra-openapi-paths.js';
2
3
  import './schemas/qna.js';
3
4
  import { OpenApiGeneratorV3 } from '@asteasolutions/zod-to-openapi';
@@ -29,6 +30,9 @@ const openApiRootTags = [{
29
30
  }, {
30
31
  name: 'Member Q&A',
31
32
  description: 'Member-scoped choice/essay answers and likes.'
33
+ }, {
34
+ name: 'Member Bookmarks',
35
+ description: 'Member-scoped bookmarks for posts and projects.'
32
36
  }, {
33
37
  name: 'Public Q&A',
34
38
  description: 'Public essay Q&A listings and question threads.'
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.js","names":["OpenApiGeneratorV3","registry","openApiRootTags","name","description","getOpenApiDocument","generator","definitions","generateDocument","openapi","info","title","version","tags"],"sources":["../src/openapi.ts"],"sourcesContent":["import './schemas/extra-openapi-paths.js'\nimport './schemas/qna.js'\n\nimport { OpenApiGeneratorV3 } from '@asteasolutions/zod-to-openapi'\n\nimport { registry } from './schemas/content.js'\n\nconst openApiRootTags = [\n { name: 'Infra', description: 'Health and service metadata.' },\n { name: 'Auth', description: 'Browser cookie exchange for Bearer JWT.' },\n { name: 'Posts', description: 'Articles and post-derived public feeds.' },\n { name: 'Projects', description: 'Topic / project listings and detail.' },\n {\n name: 'Taxonomy',\n description: 'Categories, tags, authors, and feed by slug.',\n },\n { name: 'Sitemaps', description: 'Sitemap entry lists.' },\n {\n name: 'Editor',\n description: 'Homepage editor picks and related settings.',\n },\n { name: 'Members', description: 'Authenticated member profile and avatar.' },\n {\n name: 'Member Q&A',\n description: 'Member-scoped choice/essay answers and likes.',\n },\n {\n name: 'Public Q&A',\n description: 'Public essay Q&A listings and question threads.',\n },\n] as const\n\nexport function getOpenApiDocument() {\n const generator = new OpenApiGeneratorV3(registry.definitions)\n return {\n ...generator.generateDocument({\n openapi: '3.0.3',\n info: {\n title: 'Kids Reporter Content API',\n version: '0.0.1',\n description:\n 'Content API: `GET /health`, `GET /docs` (Swagger UI; loads `GET /openapi.json`), `POST /auth/access-token` (cookie to JWT), and REST under `/v1/*`. The OpenAPI JSON is served at `GET /openapi.json` but is intentionally **not** listed as a path operation here. Authenticated member routes require `Authorization: Bearer <JWT>` (Go API–issued HS256; verify with `GO_API_JWT_SECRET`, `GO_API_JWT_ISSUER`, `GO_API_JWT_AUDIENCE`).',\n },\n }),\n tags: [...openApiRootTags],\n }\n}\n"],"mappings":"AAAA,OAAO,kCAAkC;AACzC,OAAO,kBAAkB;AAEzB,SAASA,kBAAkB,QAAQ,gCAAgC;AAEnE,SAASC,QAAQ,QAAQ,sBAAsB;AAE/C,MAAMC,eAAe,GAAG,CACtB;EAAEC,IAAI,EAAE,OAAO;EAAEC,WAAW,EAAE;AAA+B,CAAC,EAC9D;EAAED,IAAI,EAAE,MAAM;EAAEC,WAAW,EAAE;AAA0C,CAAC,EACxE;EAAED,IAAI,EAAE,OAAO;EAAEC,WAAW,EAAE;AAA0C,CAAC,EACzE;EAAED,IAAI,EAAE,UAAU;EAAEC,WAAW,EAAE;AAAuC,CAAC,EACzE;EACED,IAAI,EAAE,UAAU;EAChBC,WAAW,EAAE;AACf,CAAC,EACD;EAAED,IAAI,EAAE,UAAU;EAAEC,WAAW,EAAE;AAAuB,CAAC,EACzD;EACED,IAAI,EAAE,QAAQ;EACdC,WAAW,EAAE;AACf,CAAC,EACD;EAAED,IAAI,EAAE,SAAS;EAAEC,WAAW,EAAE;AAA2C,CAAC,EAC5E;EACED,IAAI,EAAE,YAAY;EAClBC,WAAW,EAAE;AACf,CAAC,EACD;EACED,IAAI,EAAE,YAAY;EAClBC,WAAW,EAAE;AACf,CAAC,CACO;AAEV,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,MAAMC,SAAS,GAAG,IAAIN,kBAAkB,CAACC,QAAQ,CAACM,WAAW,CAAC;EAC9D,OAAO;IACL,GAAGD,SAAS,CAACE,gBAAgB,CAAC;MAC5BC,OAAO,EAAE,OAAO;MAChBC,IAAI,EAAE;QACJC,KAAK,EAAE,2BAA2B;QAClCC,OAAO,EAAE,OAAO;QAChBR,WAAW,EACT;MACJ;IACF,CAAC,CAAC;IACFS,IAAI,EAAE,CAAC,GAAGX,eAAe;EAC3B,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"file":"openapi.js","names":["OpenApiGeneratorV3","registry","openApiRootTags","name","description","getOpenApiDocument","generator","definitions","generateDocument","openapi","info","title","version","tags"],"sources":["../src/openapi.ts"],"sourcesContent":["import './schemas/bookmarks.js'\nimport './schemas/extra-openapi-paths.js'\nimport './schemas/qna.js'\n\nimport { OpenApiGeneratorV3 } from '@asteasolutions/zod-to-openapi'\n\nimport { registry } from './schemas/content.js'\n\nconst openApiRootTags = [\n { name: 'Infra', description: 'Health and service metadata.' },\n { name: 'Auth', description: 'Browser cookie exchange for Bearer JWT.' },\n { name: 'Posts', description: 'Articles and post-derived public feeds.' },\n { name: 'Projects', description: 'Topic / project listings and detail.' },\n {\n name: 'Taxonomy',\n description: 'Categories, tags, authors, and feed by slug.',\n },\n { name: 'Sitemaps', description: 'Sitemap entry lists.' },\n {\n name: 'Editor',\n description: 'Homepage editor picks and related settings.',\n },\n { name: 'Members', description: 'Authenticated member profile and avatar.' },\n {\n name: 'Member Q&A',\n description: 'Member-scoped choice/essay answers and likes.',\n },\n {\n name: 'Member Bookmarks',\n description: 'Member-scoped bookmarks for posts and projects.',\n },\n {\n name: 'Public Q&A',\n description: 'Public essay Q&A listings and question threads.',\n },\n] as const\n\nexport function getOpenApiDocument() {\n const generator = new OpenApiGeneratorV3(registry.definitions)\n return {\n ...generator.generateDocument({\n openapi: '3.0.3',\n info: {\n title: 'Kids Reporter Content API',\n version: '0.0.1',\n description:\n 'Content API: `GET /health`, `GET /docs` (Swagger UI; loads `GET /openapi.json`), `POST /auth/access-token` (cookie to JWT), and REST under `/v1/*`. The OpenAPI JSON is served at `GET /openapi.json` but is intentionally **not** listed as a path operation here. Authenticated member routes require `Authorization: Bearer <JWT>` (Go API–issued HS256; verify with `GO_API_JWT_SECRET`, `GO_API_JWT_ISSUER`, `GO_API_JWT_AUDIENCE`).',\n },\n }),\n tags: [...openApiRootTags],\n }\n}\n"],"mappings":"AAAA,OAAO,wBAAwB;AAC/B,OAAO,kCAAkC;AACzC,OAAO,kBAAkB;AAEzB,SAASA,kBAAkB,QAAQ,gCAAgC;AAEnE,SAASC,QAAQ,QAAQ,sBAAsB;AAE/C,MAAMC,eAAe,GAAG,CACtB;EAAEC,IAAI,EAAE,OAAO;EAAEC,WAAW,EAAE;AAA+B,CAAC,EAC9D;EAAED,IAAI,EAAE,MAAM;EAAEC,WAAW,EAAE;AAA0C,CAAC,EACxE;EAAED,IAAI,EAAE,OAAO;EAAEC,WAAW,EAAE;AAA0C,CAAC,EACzE;EAAED,IAAI,EAAE,UAAU;EAAEC,WAAW,EAAE;AAAuC,CAAC,EACzE;EACED,IAAI,EAAE,UAAU;EAChBC,WAAW,EAAE;AACf,CAAC,EACD;EAAED,IAAI,EAAE,UAAU;EAAEC,WAAW,EAAE;AAAuB,CAAC,EACzD;EACED,IAAI,EAAE,QAAQ;EACdC,WAAW,EAAE;AACf,CAAC,EACD;EAAED,IAAI,EAAE,SAAS;EAAEC,WAAW,EAAE;AAA2C,CAAC,EAC5E;EACED,IAAI,EAAE,YAAY;EAClBC,WAAW,EAAE;AACf,CAAC,EACD;EACED,IAAI,EAAE,kBAAkB;EACxBC,WAAW,EAAE;AACf,CAAC,EACD;EACED,IAAI,EAAE,YAAY;EAClBC,WAAW,EAAE;AACf,CAAC,CACO;AAEV,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,MAAMC,SAAS,GAAG,IAAIN,kBAAkB,CAACC,QAAQ,CAACM,WAAW,CAAC;EAC9D,OAAO;IACL,GAAGD,SAAS,CAACE,gBAAgB,CAAC;MAC5BC,OAAO,EAAE,OAAO;MAChBC,IAAI,EAAE;QACJC,KAAK,EAAE,2BAA2B;QAClCC,OAAO,EAAE,OAAO;QAChBR,WAAW,EACT;MACJ;IACF,CAAC,CAAC;IACFS,IAAI,EAAE,CAAC,GAAGX,eAAe;EAC3B,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,122 @@
1
+ import { z } from 'zod';
2
+ export declare const V1BookmarkTypeSchema: z.ZodEnum<{
3
+ post: "post";
4
+ project: "project";
5
+ }>;
6
+ export declare const V1CreateBookmarkBodySchema: z.ZodObject<{
7
+ type: z.ZodEnum<{
8
+ post: "post";
9
+ project: "project";
10
+ }>;
11
+ slug: z.ZodString;
12
+ }, z.core.$strip>;
13
+ export declare const V1CreateBookmarkResponseSchema: z.ZodObject<{
14
+ id: z.ZodString;
15
+ type: z.ZodEnum<{
16
+ post: "post";
17
+ project: "project";
18
+ }>;
19
+ slug: z.ZodString;
20
+ }, z.core.$strip>;
21
+ export declare const V1DeleteBookmarkResponseSchema: z.ZodObject<{
22
+ id: z.ZodString;
23
+ }, z.core.$strip>;
24
+ export declare const V1BookmarkPathIdSchema: z.ZodObject<{
25
+ id: z.ZodCoercedNumber<unknown>;
26
+ }, z.core.$strip>;
27
+ export declare const V1BookmarksQuerySchema: z.ZodObject<{
28
+ take: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
29
+ skip: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
30
+ type: z.ZodOptional<z.ZodEnum<{
31
+ post: "post";
32
+ project: "project";
33
+ }>>;
34
+ slug: z.ZodOptional<z.ZodString>;
35
+ }, z.core.$strip>;
36
+ export declare const V1BookmarkItemSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
37
+ id: z.ZodString;
38
+ createdAt: z.ZodNullable<z.ZodISODateTime>;
39
+ type: z.ZodLiteral<"post">;
40
+ post: z.ZodObject<{
41
+ title: z.ZodString;
42
+ slug: z.ZodString;
43
+ ogDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
44
+ heroImage: z.ZodOptional<z.ZodNullable<z.ZodObject<{
45
+ resized: z.ZodObject<{
46
+ small: z.ZodDefault<z.ZodString>;
47
+ }, z.core.$strip>;
48
+ }, z.core.$strip>>>;
49
+ subSubcategoriesOrdered: z.ZodDefault<z.ZodArray<z.ZodObject<{
50
+ name: z.ZodString;
51
+ subcategory: z.ZodOptional<z.ZodNullable<z.ZodObject<{
52
+ name: z.ZodString;
53
+ category: z.ZodOptional<z.ZodNullable<z.ZodObject<{
54
+ slug: z.ZodString;
55
+ themeColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
56
+ }, z.core.$strip>>>;
57
+ }, z.core.$strip>>>;
58
+ }, z.core.$strip>>>;
59
+ publishedDate: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
60
+ }, z.core.$strip>;
61
+ }, z.core.$strip>, z.ZodObject<{
62
+ id: z.ZodString;
63
+ createdAt: z.ZodNullable<z.ZodISODateTime>;
64
+ type: z.ZodLiteral<"project">;
65
+ project: z.ZodObject<{
66
+ slug: z.ZodString;
67
+ title: z.ZodString;
68
+ publishedDate: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
69
+ ogDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
70
+ heroImage: z.ZodOptional<z.ZodNullable<z.ZodObject<{
71
+ resized: z.ZodObject<{
72
+ small: z.ZodString;
73
+ medium: z.ZodString;
74
+ }, z.core.$strip>;
75
+ }, z.core.$strip>>>;
76
+ subtitle: z.ZodString;
77
+ }, z.core.$strip>;
78
+ }, z.core.$strip>], "type">;
79
+ export declare const V1BookmarksResponseSchema: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
80
+ id: z.ZodString;
81
+ createdAt: z.ZodNullable<z.ZodISODateTime>;
82
+ type: z.ZodLiteral<"post">;
83
+ post: z.ZodObject<{
84
+ title: z.ZodString;
85
+ slug: z.ZodString;
86
+ ogDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
87
+ heroImage: z.ZodOptional<z.ZodNullable<z.ZodObject<{
88
+ resized: z.ZodObject<{
89
+ small: z.ZodDefault<z.ZodString>;
90
+ }, z.core.$strip>;
91
+ }, z.core.$strip>>>;
92
+ subSubcategoriesOrdered: z.ZodDefault<z.ZodArray<z.ZodObject<{
93
+ name: z.ZodString;
94
+ subcategory: z.ZodOptional<z.ZodNullable<z.ZodObject<{
95
+ name: z.ZodString;
96
+ category: z.ZodOptional<z.ZodNullable<z.ZodObject<{
97
+ slug: z.ZodString;
98
+ themeColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
99
+ }, z.core.$strip>>>;
100
+ }, z.core.$strip>>>;
101
+ }, z.core.$strip>>>;
102
+ publishedDate: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
103
+ }, z.core.$strip>;
104
+ }, z.core.$strip>, z.ZodObject<{
105
+ id: z.ZodString;
106
+ createdAt: z.ZodNullable<z.ZodISODateTime>;
107
+ type: z.ZodLiteral<"project">;
108
+ project: z.ZodObject<{
109
+ slug: z.ZodString;
110
+ title: z.ZodString;
111
+ publishedDate: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
112
+ ogDescription: z.ZodOptional<z.ZodNullable<z.ZodString>>;
113
+ heroImage: z.ZodOptional<z.ZodNullable<z.ZodObject<{
114
+ resized: z.ZodObject<{
115
+ small: z.ZodString;
116
+ medium: z.ZodString;
117
+ }, z.core.$strip>;
118
+ }, z.core.$strip>>>;
119
+ subtitle: z.ZodString;
120
+ }, z.core.$strip>;
121
+ }, z.core.$strip>], "type">>;
122
+ //# sourceMappingURL=bookmarks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookmarks.d.ts","sourceRoot":"","sources":["../../src/schemas/bookmarks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAOvB,eAAO,MAAM,oBAAoB;;;EAA8B,CAAA;AAE/D,eAAO,MAAM,0BAA0B;;;;;;iBAGrC,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;iBAIzC,CAAA;AAEF,eAAO,MAAM,8BAA8B;;iBAEzC,CAAA;AAEF,eAAO,MAAM,sBAAsB;;iBAEjC,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;iBAe/B,CAAA;AAMJ,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAeP,CAAA;AAE1B,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAgC,CAAA"}
@@ -0,0 +1,218 @@
1
+ import { extendZodWithOpenApi } from '@asteasolutions/zod-to-openapi';
2
+ import { z } from 'zod';
3
+ import { RestErrorBodySchema } from '../rest.js';
4
+ import { PostContentSchema, registry, V1ProjectsItemSchema } from './content.js';
5
+ extendZodWithOpenApi(z);
6
+ export const V1BookmarkTypeSchema = z.enum(['post', 'project']);
7
+ export const V1CreateBookmarkBodySchema = z.object({
8
+ type: V1BookmarkTypeSchema,
9
+ slug: z.string().min(1)
10
+ });
11
+ export const V1CreateBookmarkResponseSchema = z.object({
12
+ id: z.string(),
13
+ type: V1BookmarkTypeSchema,
14
+ slug: z.string()
15
+ });
16
+ export const V1DeleteBookmarkResponseSchema = z.object({
17
+ id: z.string()
18
+ });
19
+ export const V1BookmarkPathIdSchema = z.object({
20
+ id: z.coerce.number().int().positive()
21
+ });
22
+ export const V1BookmarksQuerySchema = z.object({
23
+ take: z.coerce.number().int().min(1).max(50).optional(),
24
+ skip: z.coerce.number().int().min(0).max(5000).optional(),
25
+ type: V1BookmarkTypeSchema.optional(),
26
+ slug: z.string().min(1).optional()
27
+ }).superRefine((q, ctx) => {
28
+ if (q.slug != null && q.type == null) {
29
+ ctx.addIssue({
30
+ code: 'custom',
31
+ path: ['type'],
32
+ message: 'type is required when slug is provided'
33
+ });
34
+ }
35
+ });
36
+ const BookmarkProjectCardSchema = V1ProjectsItemSchema.omit({
37
+ relatedPostsOrdered: true
38
+ });
39
+ export const V1BookmarkItemSchema = z.discriminatedUnion('type', [z.object({
40
+ id: z.string(),
41
+ createdAt: z.iso.datetime().nullable(),
42
+ type: z.literal('post'),
43
+ post: PostContentSchema
44
+ }), z.object({
45
+ id: z.string(),
46
+ createdAt: z.iso.datetime().nullable(),
47
+ type: z.literal('project'),
48
+ project: BookmarkProjectCardSchema
49
+ })]).openapi('BookmarkItem');
50
+ export const V1BookmarksResponseSchema = z.array(V1BookmarkItemSchema);
51
+ registry.registerPath({
52
+ method: 'post',
53
+ path: '/v1/members/me/bookmarks',
54
+ tags: ['Member Bookmarks'],
55
+ description: 'Bookmark a published post or project for the authenticated member. Duplicate returns 409.',
56
+ request: {
57
+ body: {
58
+ content: {
59
+ 'application/json': {
60
+ schema: V1CreateBookmarkBodySchema
61
+ }
62
+ }
63
+ }
64
+ },
65
+ responses: {
66
+ 200: {
67
+ description: 'Created',
68
+ content: {
69
+ 'application/json': {
70
+ schema: V1CreateBookmarkResponseSchema
71
+ }
72
+ }
73
+ },
74
+ 400: {
75
+ description: 'Invalid body',
76
+ content: {
77
+ 'application/json': {
78
+ schema: RestErrorBodySchema
79
+ }
80
+ }
81
+ },
82
+ 401: {
83
+ description: 'Unauthorized',
84
+ content: {
85
+ 'application/json': {
86
+ schema: RestErrorBodySchema
87
+ }
88
+ }
89
+ },
90
+ 403: {
91
+ description: 'Forbidden',
92
+ content: {
93
+ 'application/json': {
94
+ schema: RestErrorBodySchema
95
+ }
96
+ }
97
+ },
98
+ 404: {
99
+ description: 'Member or target not found / not public',
100
+ content: {
101
+ 'application/json': {
102
+ schema: RestErrorBodySchema
103
+ }
104
+ }
105
+ },
106
+ 409: {
107
+ description: 'Already bookmarked',
108
+ content: {
109
+ 'application/json': {
110
+ schema: RestErrorBodySchema
111
+ }
112
+ }
113
+ }
114
+ }
115
+ });
116
+ registry.registerPath({
117
+ method: 'delete',
118
+ path: '/v1/members/me/bookmarks/{id}',
119
+ tags: ['Member Bookmarks'],
120
+ description: 'Remove a bookmark by row id. Only the owner can delete.',
121
+ request: {
122
+ params: V1BookmarkPathIdSchema
123
+ },
124
+ responses: {
125
+ 200: {
126
+ description: 'Deleted',
127
+ content: {
128
+ 'application/json': {
129
+ schema: V1DeleteBookmarkResponseSchema
130
+ }
131
+ }
132
+ },
133
+ 400: {
134
+ description: 'Invalid path id',
135
+ content: {
136
+ 'application/json': {
137
+ schema: RestErrorBodySchema
138
+ }
139
+ }
140
+ },
141
+ 401: {
142
+ description: 'Unauthorized',
143
+ content: {
144
+ 'application/json': {
145
+ schema: RestErrorBodySchema
146
+ }
147
+ }
148
+ },
149
+ 403: {
150
+ description: 'Not owner of this bookmark',
151
+ content: {
152
+ 'application/json': {
153
+ schema: RestErrorBodySchema
154
+ }
155
+ }
156
+ },
157
+ 404: {
158
+ description: 'Bookmark not found',
159
+ content: {
160
+ 'application/json': {
161
+ schema: RestErrorBodySchema
162
+ }
163
+ }
164
+ }
165
+ }
166
+ });
167
+ registry.registerPath({
168
+ method: 'get',
169
+ path: '/v1/members/me/bookmarks',
170
+ tags: ['Member Bookmarks'],
171
+ description: 'List the authenticated member bookmarks, newest first. Optional `type` filters; optional `slug` (requires `type`) returns the matching row if saved.',
172
+ request: {
173
+ query: V1BookmarksQuerySchema
174
+ },
175
+ responses: {
176
+ 200: {
177
+ description: 'Success',
178
+ content: {
179
+ 'application/json': {
180
+ schema: V1BookmarksResponseSchema
181
+ }
182
+ }
183
+ },
184
+ 400: {
185
+ description: 'Invalid query',
186
+ content: {
187
+ 'application/json': {
188
+ schema: RestErrorBodySchema
189
+ }
190
+ }
191
+ },
192
+ 401: {
193
+ description: 'Unauthorized',
194
+ content: {
195
+ 'application/json': {
196
+ schema: RestErrorBodySchema
197
+ }
198
+ }
199
+ },
200
+ 403: {
201
+ description: 'Forbidden',
202
+ content: {
203
+ 'application/json': {
204
+ schema: RestErrorBodySchema
205
+ }
206
+ }
207
+ },
208
+ 404: {
209
+ description: 'Member not found',
210
+ content: {
211
+ 'application/json': {
212
+ schema: RestErrorBodySchema
213
+ }
214
+ }
215
+ }
216
+ }
217
+ });
218
+ //# sourceMappingURL=bookmarks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookmarks.js","names":["extendZodWithOpenApi","z","RestErrorBodySchema","PostContentSchema","registry","V1ProjectsItemSchema","V1BookmarkTypeSchema","enum","V1CreateBookmarkBodySchema","object","type","slug","string","min","V1CreateBookmarkResponseSchema","id","V1DeleteBookmarkResponseSchema","V1BookmarkPathIdSchema","coerce","number","int","positive","V1BookmarksQuerySchema","take","max","optional","skip","superRefine","q","ctx","addIssue","code","path","message","BookmarkProjectCardSchema","omit","relatedPostsOrdered","V1BookmarkItemSchema","discriminatedUnion","createdAt","iso","datetime","nullable","literal","post","project","openapi","V1BookmarksResponseSchema","array","registerPath","method","tags","description","request","body","content","schema","responses","params","query"],"sources":["../../src/schemas/bookmarks.ts"],"sourcesContent":["import { extendZodWithOpenApi } from '@asteasolutions/zod-to-openapi'\nimport { z } from 'zod'\n\nimport { RestErrorBodySchema } from '../rest.js'\nimport { PostContentSchema, registry, V1ProjectsItemSchema } from './content.js'\n\nextendZodWithOpenApi(z)\n\nexport const V1BookmarkTypeSchema = z.enum(['post', 'project'])\n\nexport const V1CreateBookmarkBodySchema = z.object({\n type: V1BookmarkTypeSchema,\n slug: z.string().min(1),\n})\n\nexport const V1CreateBookmarkResponseSchema = z.object({\n id: z.string(),\n type: V1BookmarkTypeSchema,\n slug: z.string(),\n})\n\nexport const V1DeleteBookmarkResponseSchema = z.object({\n id: z.string(),\n})\n\nexport const V1BookmarkPathIdSchema = z.object({\n id: z.coerce.number().int().positive(),\n})\n\nexport const V1BookmarksQuerySchema = z\n .object({\n take: z.coerce.number().int().min(1).max(50).optional(),\n skip: z.coerce.number().int().min(0).max(5000).optional(),\n type: V1BookmarkTypeSchema.optional(),\n slug: z.string().min(1).optional(),\n })\n .superRefine((q, ctx) => {\n if (q.slug != null && q.type == null) {\n ctx.addIssue({\n code: 'custom',\n path: ['type'],\n message: 'type is required when slug is provided',\n })\n }\n })\n\nconst BookmarkProjectCardSchema = V1ProjectsItemSchema.omit({\n relatedPostsOrdered: true,\n})\n\nexport const V1BookmarkItemSchema = z\n .discriminatedUnion('type', [\n z.object({\n id: z.string(),\n createdAt: z.iso.datetime().nullable(),\n type: z.literal('post'),\n post: PostContentSchema,\n }),\n z.object({\n id: z.string(),\n createdAt: z.iso.datetime().nullable(),\n type: z.literal('project'),\n project: BookmarkProjectCardSchema,\n }),\n ])\n .openapi('BookmarkItem')\n\nexport const V1BookmarksResponseSchema = z.array(V1BookmarkItemSchema)\n\nregistry.registerPath({\n method: 'post',\n path: '/v1/members/me/bookmarks',\n tags: ['Member Bookmarks'],\n description:\n 'Bookmark a published post or project for the authenticated member. Duplicate returns 409.',\n request: {\n body: {\n content: {\n 'application/json': { schema: V1CreateBookmarkBodySchema },\n },\n },\n },\n responses: {\n 200: {\n description: 'Created',\n content: {\n 'application/json': { schema: V1CreateBookmarkResponseSchema },\n },\n },\n 400: {\n description: 'Invalid body',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 401: {\n description: 'Unauthorized',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 403: {\n description: 'Forbidden',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 404: {\n description: 'Member or target not found / not public',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 409: {\n description: 'Already bookmarked',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n },\n})\n\nregistry.registerPath({\n method: 'delete',\n path: '/v1/members/me/bookmarks/{id}',\n tags: ['Member Bookmarks'],\n description: 'Remove a bookmark by row id. Only the owner can delete.',\n request: {\n params: V1BookmarkPathIdSchema,\n },\n responses: {\n 200: {\n description: 'Deleted',\n content: {\n 'application/json': { schema: V1DeleteBookmarkResponseSchema },\n },\n },\n 400: {\n description: 'Invalid path id',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 401: {\n description: 'Unauthorized',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 403: {\n description: 'Not owner of this bookmark',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 404: {\n description: 'Bookmark not found',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/members/me/bookmarks',\n tags: ['Member Bookmarks'],\n description:\n 'List the authenticated member bookmarks, newest first. Optional `type` filters; optional `slug` (requires `type`) returns the matching row if saved.',\n request: {\n query: V1BookmarksQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1BookmarksResponseSchema },\n },\n },\n 400: {\n description: 'Invalid query',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 401: {\n description: 'Unauthorized',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 403: {\n description: 'Forbidden',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n 404: {\n description: 'Member not found',\n content: { 'application/json': { schema: RestErrorBodySchema } },\n },\n },\n})\n"],"mappings":"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","ignoreList":[]}
@@ -55,10 +55,22 @@ export declare const SubcategoryItemSchema: z.ZodObject<{
55
55
  slug: z.ZodString;
56
56
  }, z.core.$strip>>>;
57
57
  }, z.core.$strip>;
58
+ export declare const CallBaodaozaiIntroButtonStatusSchema: z.ZodEnum<{
59
+ custom: "custom";
60
+ hidden: "hidden";
61
+ showIntro: "showIntro";
62
+ }>;
58
63
  export declare const CallBaodaozaiIntroItemSchema: z.ZodObject<{
59
64
  id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
60
65
  page: z.ZodString;
61
66
  content: z.ZodString;
67
+ buttonStatus: z.ZodEnum<{
68
+ custom: "custom";
69
+ hidden: "hidden";
70
+ showIntro: "showIntro";
71
+ }>;
72
+ buttonText: z.ZodString;
73
+ buttonUrl: z.ZodString;
62
74
  }, z.core.$strip>;
63
75
  export declare const EditorPicksSettingItemSchema: z.ZodObject<{
64
76
  id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
@@ -158,6 +170,13 @@ export declare const V1CallBaodaozaiIntroResponseSchema: z.ZodObject<{
158
170
  id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
159
171
  page: z.ZodString;
160
172
  content: z.ZodString;
173
+ buttonStatus: z.ZodEnum<{
174
+ custom: "custom";
175
+ hidden: "hidden";
176
+ showIntro: "showIntro";
177
+ }>;
178
+ buttonText: z.ZodString;
179
+ buttonUrl: z.ZodString;
161
180
  }, z.core.$strip>;
162
181
  /** Query for `GET /v1/projects`. */
163
182
  export declare const V1ProjectsQuerySchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/schemas/content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/schemas/content.ts"],"names":[],"mappings":"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"}
@@ -46,10 +46,14 @@ export const SubcategoryItemSchema = z.object({
46
46
  slug: z.string()
47
47
  }).nullable().optional()
48
48
  }).openapi('Subcategory');
49
+ export const CallBaodaozaiIntroButtonStatusSchema = z.enum(['hidden', 'custom', 'showIntro']);
49
50
  export const CallBaodaozaiIntroItemSchema = z.object({
50
51
  id: z.union([z.string(), z.number().int()]),
51
52
  page: z.string(),
52
- content: z.string()
53
+ content: z.string(),
54
+ buttonStatus: CallBaodaozaiIntroButtonStatusSchema,
55
+ buttonText: z.string(),
56
+ buttonUrl: z.string()
53
57
  }).openapi('CallBaodaozaiIntro');
54
58
  export const EditorPicksSettingItemSchema = z.object({
55
59
  id: z.union([z.string(), z.number().int()]),
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","names":["extendZodWithOpenApi","OpenAPIRegistry","z","RestErrorBodySchema","V1PostDetailBodySchema","V1PostEssayQuestionsBodySchema","V1PostMetaBodySchema","V1PostsEssayAnswersWithLikesResponseSchema","V1ProjectDetailRelatedPostOrderedItemSchema","registry","PhotoResizedSchema","object","small","string","default","openapi","example","PostHeroImageSchema","resized","PostSubSubcategorySchema","name","subcategory","category","slug","themeColor","nullable","optional","PostContentSchema","title","ogDescription","heroImage","subSubcategoriesOrdered","array","publishedDate","iso","datetime","SubcategoryItemSchema","id","union","number","int","CallBaodaozaiIntroItemSchema","page","content","EditorPicksSettingItemSchema","editorPicksOfPostsOrdered","editorPicksOfTags","popularKeywordsOrdered","V1PostsQuerySchema","take","coerce","min","max","skip","orderBy","enum","V1PostsResponseSchema","posts","registerPath","method","path","tags","description","request","query","responses","schema","V1SubcategoriesResponseSchema","V1AuthorAvatarPathParamsSchema","V1AuthorAvatarResponseSchema","tiny","params","V1PopularKeywordsResponseSchema","V1CallBaodaozaiIntroPathParamsSchema","V1CallBaodaozaiIntroResponseSchema","V1ProjectsQuerySchema","includeRelatedPosts","literal","transform","v","V1ProjectsItemSchema","subtitle","medium","relatedPostsOrdered","V1ProjectsResponseSchema","projects","projectsCount","V1EditorPicksSettingsQuerySchema","V1EditorPicksSettingsResponseSchema","V1MemberAvatarSchema","fileUrl","V1MemberIdentitySchema","V1MemberLocationCountrySchema","V1MemberBirthdaySchema","date","V1MemberProfileSchema","email","nickname","contactEmail","birthday","locationCountry","locationRegion","identity","twreporter_user_id","showBaodaozai","boolean","essayQuestionCount","avatar","createdAt","V1MemberProfileResponseSchema","V1MemberProfilePatchBodySchema","strictObject","V1AccessTokenResponseSchema","accessToken","twreporterUserId","expiresAt","V1MemberPostsWithAnswersQuerySchema","cursor","body","V1PostBySlugPathParamsSchema","V1PostBySlugQuerySchema","postEssayQuestionsTake","postChoiceQuestionsTake","V1SitemapsQuerySchema","sinceDays","V1SitemapEntrySchema","V1SitemapPostsResponseSchema","V1SitemapProjectsResponseSchema","V1ProjectBySlugMetaResponseSchema","ogTitle","ogImage","V1ProjectDetailPhotoResizedSchema","large","V1ProjectBySlugDetailResponseSchema","titlePosition","unknown","credits","mobileHeroImage","V1ProjectRelatedPostsCountResponseSchema","relatedPostsCount","V1AuthorPostsCountResponseSchema","postsCount","V1PostsEssayAnswersWithLikesQuerySchema","answerTake","answerOrderBy"],"sources":["../../src/schemas/content.ts"],"sourcesContent":["import {\n extendZodWithOpenApi,\n OpenAPIRegistry,\n} from '@asteasolutions/zod-to-openapi'\nimport { z } from 'zod'\n\nimport { RestErrorBodySchema } from '../rest.js'\nimport {\n V1PostDetailBodySchema,\n V1PostEssayQuestionsBodySchema,\n V1PostMetaBodySchema,\n V1PostsEssayAnswersWithLikesResponseSchema,\n V1ProjectDetailRelatedPostOrderedItemSchema,\n} from './content-post-detail.js'\n\nextendZodWithOpenApi(z)\n\nexport const registry = new OpenAPIRegistry()\n\nexport const PhotoResizedSchema = z\n .object({\n small: z\n .string()\n .default('')\n .openapi({ example: 'https://kids.twreporter.org/resized/abc-800.webp' }),\n })\n .openapi('ResizedPhoto')\n\nexport const PostHeroImageSchema = z\n .object({\n resized: PhotoResizedSchema,\n })\n .openapi('PostHeroImage')\n\n/**\n * Lightweight sub-subcategory shape for **feeds and list payloads** (`PostContentSchema`,\n * e.g. `/v1/posts`, editor picks). Omits sub-subcategory / subcategory slugs on purpose —\n * callers only need labels + category slug for cards. For the **full tree with slugs**\n * (article detail, related-post cards), see `SubSubcategoryFullItemSchema` in\n * `content-post-detail.ts`.\n */\nexport const PostSubSubcategorySchema = z\n .object({\n name: z.string(),\n subcategory: z\n .object({\n name: z.string(),\n category: z\n .object({\n slug: z.string(),\n themeColor: z.string().nullable().optional(),\n })\n .nullable()\n .optional(),\n })\n .nullable()\n .optional(),\n })\n .openapi('PostSubSubcategory')\n\nexport const PostContentSchema = z\n .object({\n title: z.string(),\n slug: z.string(),\n ogDescription: z.string().nullable().optional(),\n heroImage: PostHeroImageSchema.nullable().optional(),\n subSubcategoriesOrdered: z.array(PostSubSubcategorySchema).default([]),\n publishedDate: z.iso.datetime().nullable().optional(),\n })\n .openapi('PostContent')\n\nexport const SubcategoryItemSchema = z\n .object({\n id: z.union([z.string(), z.number().int()]),\n name: z.string(),\n slug: z.string(),\n category: z.object({ slug: z.string() }).nullable().optional(),\n })\n .openapi('Subcategory')\n\nexport const CallBaodaozaiIntroItemSchema = z\n .object({\n id: z.union([z.string(), z.number().int()]),\n page: z.string(),\n content: z.string(),\n })\n .openapi('CallBaodaozaiIntro')\n\nexport const EditorPicksSettingItemSchema = z\n .object({\n id: z.union([z.string(), z.number().int()]),\n editorPicksOfPostsOrdered: z.array(PostContentSchema).default([]),\n editorPicksOfTags: z\n .array(z.object({ name: z.string(), slug: z.string() }))\n .default([]),\n popularKeywordsOrdered: z.array(z.object({ name: z.string() })).default([]),\n })\n .openapi('EditorPicksSetting')\n\nexport const V1PostsQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional(),\n skip: z.coerce.number().int().min(0).max(5000).optional(),\n orderBy: z.enum(['publishedDate:desc']).optional(),\n})\n\nexport const V1PostsResponseSchema = z.object({\n posts: z.array(PostContentSchema),\n page: z.object({\n take: z.number().int().min(1).max(50),\n skip: z.number().int().min(0),\n }),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts',\n tags: ['Posts'],\n description: 'List latest published posts.',\n request: {\n query: V1PostsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostsResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1SubcategoriesResponseSchema = z.array(SubcategoryItemSchema)\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/subcategories',\n tags: ['Taxonomy'],\n description: 'All subcategories with parent category slug.',\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1SubcategoriesResponseSchema,\n },\n },\n },\n },\n})\n\nexport const V1AuthorAvatarPathParamsSchema = z.object({\n slug: z.string().min(1),\n})\n\nexport const V1AuthorAvatarResponseSchema = z\n .object({\n tiny: z.string(),\n })\n .openapi('AuthorAvatarTiny')\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/authors/{slug}/avatar',\n tags: ['Taxonomy'],\n description:\n 'Author avatar tiny image URL by slug. `tiny` is empty when the author or avatar is missing.',\n request: {\n params: V1AuthorAvatarPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1AuthorAvatarResponseSchema,\n },\n },\n },\n },\n})\n\nexport const V1PopularKeywordsResponseSchema = z.array(\n z.object({ name: z.string() })\n)\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/popular-keywords',\n tags: ['Editor'],\n description: 'Popular keywords from editor picks ordering.',\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PopularKeywordsResponseSchema,\n },\n },\n },\n },\n})\n\nexport const V1CallBaodaozaiIntroPathParamsSchema = z.object({\n page: z.enum([\n 'home',\n 'all',\n 'topics',\n 'news',\n 'storytelling',\n 'campus',\n 'listeningNews',\n 'classroom',\n ]),\n})\n\nexport const V1CallBaodaozaiIntroResponseSchema = CallBaodaozaiIntroItemSchema\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/call-baodaozai-intros/{page}',\n tags: ['Editor'],\n description: 'Get Call Baodaozai intro content by page.',\n request: {\n params: V1CallBaodaozaiIntroPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1CallBaodaozaiIntroResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\n/** Query for `GET /v1/projects`. */\nexport const V1ProjectsQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional(),\n skip: z.coerce.number().int().min(0).max(5000).optional(),\n orderBy: z.enum(['publishedDate:desc']).optional(),\n includeRelatedPosts: z\n .union([z.literal('true'), z.literal('false')])\n .optional()\n .transform((v) => v === 'true'),\n})\n\nexport const V1ProjectsItemSchema = z\n .object({\n title: z.string(),\n subtitle: z.string(),\n slug: z.string(),\n ogDescription: z.string().nullable().optional(),\n publishedDate: z.iso.datetime().nullable().optional(),\n heroImage: z\n .object({\n resized: z.object({\n small: z.string(),\n medium: z.string(),\n }),\n })\n .nullable()\n .optional(),\n relatedPostsOrdered: z.array(PostContentSchema).optional(),\n })\n .openapi('ProjectsItem')\n\nexport const V1ProjectsResponseSchema = z.object({\n projects: z.array(V1ProjectsItemSchema),\n projectsCount: z.number().int().min(0),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects',\n tags: ['Projects'],\n description:\n 'List published projects. Response always includes `projects` and total `projectsCount`. Optional `relatedPostsOrdered` on each item appears only when `includeRelatedPosts=true`.',\n request: {\n query: V1ProjectsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1ProjectsResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1EditorPicksSettingsQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(20).optional().default(5),\n})\n\nexport const V1EditorPicksSettingsResponseSchema = z.array(\n EditorPicksSettingItemSchema\n)\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/editor-picks-settings',\n tags: ['Editor'],\n description: 'Editor picks configuration rows.',\n request: {\n query: V1EditorPicksSettingsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1EditorPicksSettingsResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1MemberAvatarSchema = z\n .object({\n id: z.string(),\n fileUrl: z.string(),\n })\n .openapi('MemberAvatar')\n\nexport const V1MemberIdentitySchema = z.enum([\n 'student',\n 'parent',\n 'teacher',\n 'public',\n])\n\nexport const V1MemberLocationCountrySchema = z.enum(['taiwan', 'other'])\n\nexport const V1MemberBirthdaySchema = z.iso.date()\n\nexport const V1MemberProfileSchema = z\n .object({\n id: z.string(),\n name: z.string(),\n email: z.string(),\n nickname: z.string(),\n contactEmail: z.string(),\n birthday: V1MemberBirthdaySchema.nullable().optional(),\n locationCountry: V1MemberLocationCountrySchema.nullable().optional(),\n locationRegion: z.string().nullable().optional(),\n identity: V1MemberIdentitySchema.nullable().optional(),\n twreporter_user_id: z.string(),\n showBaodaozai: z.boolean(),\n essayQuestionCount: z.number().int().nullable().optional(),\n avatar: V1MemberAvatarSchema.nullable().optional(),\n createdAt: z.iso.datetime().nullable().optional(),\n })\n .openapi('MemberProfile')\n\nexport const V1MemberProfileResponseSchema = V1MemberProfileSchema\n\nexport const V1MemberProfilePatchBodySchema = z\n .strictObject({\n name: z.string().optional(),\n nickname: z.string().optional(),\n contactEmail: z.string().optional(),\n birthday: V1MemberBirthdaySchema.nullable().optional(),\n locationCountry: V1MemberLocationCountrySchema.nullable().optional(),\n locationRegion: z.string().nullable().optional(),\n identity: V1MemberIdentitySchema.nullable().optional(),\n showBaodaozai: z.boolean().optional(),\n essayQuestionCount: z.number().int().min(0).max(3).optional(),\n })\n .openapi('MemberProfilePatch')\n\n/** Successful `POST /auth/access-token` response JSON. */\nexport const V1AccessTokenResponseSchema = z.object({\n accessToken: z.string(),\n twreporterUserId: z.string(),\n expiresAt: z.number(),\n})\n\n/** GET `/v1/members/me/posts-with-answers` query string. */\nexport const V1MemberPostsWithAnswersQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional().default(5),\n cursor: z.string().optional(),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/members/me',\n tags: ['Members'],\n description: 'Authenticated member profile (Bearer JWT).',\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1MemberProfileResponseSchema,\n },\n },\n },\n 401: {\n description: 'Unauthorized',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Member not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'patch',\n path: '/v1/members/me',\n tags: ['Members'],\n description: 'Update authenticated member profile (Bearer JWT).',\n request: {\n body: {\n content: {\n 'application/json': {\n schema: V1MemberProfilePatchBodySchema,\n },\n },\n },\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1MemberProfileResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 401: {\n description: 'Unauthorized',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Member not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1PostBySlugPathParamsSchema = z.object({\n slug: z.string().min(1),\n})\n\n/** Flat query for `GET /v1/posts/{slug}` (news-reading order + related-posts filter are fixed server-side). */\nexport const V1PostBySlugQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional().default(5),\n postEssayQuestionsTake: z.coerce\n .number()\n .int()\n .min(1)\n .max(50)\n .optional()\n .default(3),\n postChoiceQuestionsTake: z.coerce\n .number()\n .int()\n .min(1)\n .max(50)\n .optional()\n .default(3),\n})\n\nexport const V1SitemapsQuerySchema = z.object({\n sinceDays: z.coerce.number().int().min(1).max(365).optional().default(60),\n})\n\nexport const V1SitemapEntrySchema = z.object({\n slug: z.string(),\n publishedDate: z.iso.datetime().nullable(),\n})\n\nexport const V1SitemapPostsResponseSchema = z.array(V1SitemapEntrySchema)\nexport const V1SitemapProjectsResponseSchema = z.array(V1SitemapEntrySchema)\n\nexport const V1ProjectBySlugMetaResponseSchema = z.object({\n publishedDate: z.iso.datetime().optional(),\n ogTitle: z.string(),\n ogDescription: z.string().nullable(),\n ogImage: z\n .object({\n resized: z.object({ small: z.string() }),\n })\n .nullable(),\n})\n\n/** Hero image payloads returned by `/v1/projects/{slug}` match Prisma-mapper targets. */\nexport const V1ProjectDetailPhotoResizedSchema = z.object({\n resized: z.object({\n small: z.string(),\n medium: z.string(),\n large: z.string(),\n }),\n})\n\nexport const V1ProjectBySlugDetailResponseSchema = z.object({\n title: z.string(),\n titlePosition: z.string().nullable().optional(),\n subtitle: z.string(),\n /** Draft.js JSON etc.; `z.json()` overflows zod-to-openapi union expansion. */\n content: z.unknown().nullable().optional(),\n credits: z.unknown().nullable().optional(),\n publishedDate: z.iso.datetime().optional(),\n heroImage: V1ProjectDetailPhotoResizedSchema.optional(),\n mobileHeroImage: V1ProjectDetailPhotoResizedSchema.optional(),\n relatedPostsOrdered: z.array(V1ProjectDetailRelatedPostOrderedItemSchema),\n})\n\nexport const V1ProjectRelatedPostsCountResponseSchema = z.object({\n relatedPostsCount: z.number().int().min(0),\n})\n\nexport const V1AuthorPostsCountResponseSchema = z.object({\n postsCount: z.number().int().min(0),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/sitemaps/posts',\n tags: ['Sitemaps'],\n description:\n 'Post slugs + published dates for sitemap (public posts only). Query `sinceDays` (1–365, default 60): include posts with `publishedDate` on/after start of day `now - sinceDays`.',\n request: {\n query: V1SitemapsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1SitemapPostsResponseSchema },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/sitemaps/projects',\n tags: ['Sitemaps'],\n description:\n 'Published project slugs + dates for sitemap. Query `sinceDays` (1–365, default 60): include projects with `publishedDate` on/after start of day `now - sinceDays`.',\n request: {\n query: V1SitemapsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1SitemapProjectsResponseSchema },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects/{slug}',\n tags: ['Projects'],\n description:\n 'Published project detail for topic page (matches GraphQL `GetProject`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1ProjectBySlugDetailResponseSchema },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects/{slug}/meta',\n tags: ['Projects'],\n description:\n 'Published project OG metadata (matches GraphQL `GetProjectMeta`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1ProjectBySlugMetaResponseSchema },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects/{slug}/related-posts-count',\n tags: ['Projects'],\n description:\n 'Count of public posts linked to a published project (matches GraphQL `relatedPostsCount` on project).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1ProjectRelatedPostsCountResponseSchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nexport const V1PostsEssayAnswersWithLikesQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional().default(12),\n skip: z.coerce.number().int().min(0).max(5000).optional().default(0),\n orderBy: z\n .enum(['publishedDate:desc'])\n .optional()\n .default('publishedDate:desc'),\n answerTake: z.coerce.number().int().min(1).max(50).optional().default(10),\n answerOrderBy: z\n .enum(['likesCount:desc', 'createdAt:desc'])\n .optional()\n .default('likesCount:desc'),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/{slug}',\n tags: ['Posts'],\n description:\n 'Single post article payload (matches GraphQL `GetPost`). Flat query: `take`, `postEssayQuestionsTake`, `postChoiceQuestionsTake` (1–50 each, defaults 5/3/3). News-reading item order and nested related-posts filter are fixed server-side.',\n request: {\n params: V1PostBySlugPathParamsSchema,\n query: V1PostBySlugQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostDetailBodySchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/{slug}/meta',\n tags: ['Posts'],\n description:\n 'Post SEO / Open Graph metadata (matches GraphQL `GetPostMeta`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostMetaBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/{slug}/essay-questions',\n tags: ['Posts'],\n description:\n 'Post card plus essay questions (matches GraphQL `GetPostEssayQuestions`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostEssayQuestionsBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/essay-answers-with-likes',\n tags: ['Posts'],\n description:\n 'Paged posts with nested essay answers and member avatars (matches GraphQL `GetPostsEssayAnswersWithLikes`). Flat query: `take`, `skip`, `orderBy` (`publishedDate:desc` only), `answerTake`, `answerOrderBy` (`likesCount:desc` | `createdAt:desc`). Post filter (posts with answered essay questions) is fixed server-side.',\n request: {\n query: V1PostsEssayAnswersWithLikesQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostsEssayAnswersWithLikesResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport * from './content-post-detail.js'\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"content.js","names":["extendZodWithOpenApi","OpenAPIRegistry","z","RestErrorBodySchema","V1PostDetailBodySchema","V1PostEssayQuestionsBodySchema","V1PostMetaBodySchema","V1PostsEssayAnswersWithLikesResponseSchema","V1ProjectDetailRelatedPostOrderedItemSchema","registry","PhotoResizedSchema","object","small","string","default","openapi","example","PostHeroImageSchema","resized","PostSubSubcategorySchema","name","subcategory","category","slug","themeColor","nullable","optional","PostContentSchema","title","ogDescription","heroImage","subSubcategoriesOrdered","array","publishedDate","iso","datetime","SubcategoryItemSchema","id","union","number","int","CallBaodaozaiIntroButtonStatusSchema","enum","CallBaodaozaiIntroItemSchema","page","content","buttonStatus","buttonText","buttonUrl","EditorPicksSettingItemSchema","editorPicksOfPostsOrdered","editorPicksOfTags","popularKeywordsOrdered","V1PostsQuerySchema","take","coerce","min","max","skip","orderBy","V1PostsResponseSchema","posts","registerPath","method","path","tags","description","request","query","responses","schema","V1SubcategoriesResponseSchema","V1AuthorAvatarPathParamsSchema","V1AuthorAvatarResponseSchema","tiny","params","V1PopularKeywordsResponseSchema","V1CallBaodaozaiIntroPathParamsSchema","V1CallBaodaozaiIntroResponseSchema","V1ProjectsQuerySchema","includeRelatedPosts","literal","transform","v","V1ProjectsItemSchema","subtitle","medium","relatedPostsOrdered","V1ProjectsResponseSchema","projects","projectsCount","V1EditorPicksSettingsQuerySchema","V1EditorPicksSettingsResponseSchema","V1MemberAvatarSchema","fileUrl","V1MemberIdentitySchema","V1MemberLocationCountrySchema","V1MemberBirthdaySchema","date","V1MemberProfileSchema","email","nickname","contactEmail","birthday","locationCountry","locationRegion","identity","twreporter_user_id","showBaodaozai","boolean","essayQuestionCount","avatar","createdAt","V1MemberProfileResponseSchema","V1MemberProfilePatchBodySchema","strictObject","V1AccessTokenResponseSchema","accessToken","twreporterUserId","expiresAt","V1MemberPostsWithAnswersQuerySchema","cursor","body","V1PostBySlugPathParamsSchema","V1PostBySlugQuerySchema","postEssayQuestionsTake","postChoiceQuestionsTake","V1SitemapsQuerySchema","sinceDays","V1SitemapEntrySchema","V1SitemapPostsResponseSchema","V1SitemapProjectsResponseSchema","V1ProjectBySlugMetaResponseSchema","ogTitle","ogImage","V1ProjectDetailPhotoResizedSchema","large","V1ProjectBySlugDetailResponseSchema","titlePosition","unknown","credits","mobileHeroImage","V1ProjectRelatedPostsCountResponseSchema","relatedPostsCount","V1AuthorPostsCountResponseSchema","postsCount","V1PostsEssayAnswersWithLikesQuerySchema","answerTake","answerOrderBy"],"sources":["../../src/schemas/content.ts"],"sourcesContent":["import {\n extendZodWithOpenApi,\n OpenAPIRegistry,\n} from '@asteasolutions/zod-to-openapi'\nimport { z } from 'zod'\n\nimport { RestErrorBodySchema } from '../rest.js'\nimport {\n V1PostDetailBodySchema,\n V1PostEssayQuestionsBodySchema,\n V1PostMetaBodySchema,\n V1PostsEssayAnswersWithLikesResponseSchema,\n V1ProjectDetailRelatedPostOrderedItemSchema,\n} from './content-post-detail.js'\n\nextendZodWithOpenApi(z)\n\nexport const registry = new OpenAPIRegistry()\n\nexport const PhotoResizedSchema = z\n .object({\n small: z\n .string()\n .default('')\n .openapi({ example: 'https://kids.twreporter.org/resized/abc-800.webp' }),\n })\n .openapi('ResizedPhoto')\n\nexport const PostHeroImageSchema = z\n .object({\n resized: PhotoResizedSchema,\n })\n .openapi('PostHeroImage')\n\n/**\n * Lightweight sub-subcategory shape for **feeds and list payloads** (`PostContentSchema`,\n * e.g. `/v1/posts`, editor picks). Omits sub-subcategory / subcategory slugs on purpose —\n * callers only need labels + category slug for cards. For the **full tree with slugs**\n * (article detail, related-post cards), see `SubSubcategoryFullItemSchema` in\n * `content-post-detail.ts`.\n */\nexport const PostSubSubcategorySchema = z\n .object({\n name: z.string(),\n subcategory: z\n .object({\n name: z.string(),\n category: z\n .object({\n slug: z.string(),\n themeColor: z.string().nullable().optional(),\n })\n .nullable()\n .optional(),\n })\n .nullable()\n .optional(),\n })\n .openapi('PostSubSubcategory')\n\nexport const PostContentSchema = z\n .object({\n title: z.string(),\n slug: z.string(),\n ogDescription: z.string().nullable().optional(),\n heroImage: PostHeroImageSchema.nullable().optional(),\n subSubcategoriesOrdered: z.array(PostSubSubcategorySchema).default([]),\n publishedDate: z.iso.datetime().nullable().optional(),\n })\n .openapi('PostContent')\n\nexport const SubcategoryItemSchema = z\n .object({\n id: z.union([z.string(), z.number().int()]),\n name: z.string(),\n slug: z.string(),\n category: z.object({ slug: z.string() }).nullable().optional(),\n })\n .openapi('Subcategory')\n\nexport const CallBaodaozaiIntroButtonStatusSchema = z.enum([\n 'hidden',\n 'custom',\n 'showIntro',\n])\n\nexport const CallBaodaozaiIntroItemSchema = z\n .object({\n id: z.union([z.string(), z.number().int()]),\n page: z.string(),\n content: z.string(),\n buttonStatus: CallBaodaozaiIntroButtonStatusSchema,\n buttonText: z.string(),\n buttonUrl: z.string(),\n })\n .openapi('CallBaodaozaiIntro')\n\nexport const EditorPicksSettingItemSchema = z\n .object({\n id: z.union([z.string(), z.number().int()]),\n editorPicksOfPostsOrdered: z.array(PostContentSchema).default([]),\n editorPicksOfTags: z\n .array(z.object({ name: z.string(), slug: z.string() }))\n .default([]),\n popularKeywordsOrdered: z.array(z.object({ name: z.string() })).default([]),\n })\n .openapi('EditorPicksSetting')\n\nexport const V1PostsQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional(),\n skip: z.coerce.number().int().min(0).max(5000).optional(),\n orderBy: z.enum(['publishedDate:desc']).optional(),\n})\n\nexport const V1PostsResponseSchema = z.object({\n posts: z.array(PostContentSchema),\n page: z.object({\n take: z.number().int().min(1).max(50),\n skip: z.number().int().min(0),\n }),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts',\n tags: ['Posts'],\n description: 'List latest published posts.',\n request: {\n query: V1PostsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostsResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1SubcategoriesResponseSchema = z.array(SubcategoryItemSchema)\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/subcategories',\n tags: ['Taxonomy'],\n description: 'All subcategories with parent category slug.',\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1SubcategoriesResponseSchema,\n },\n },\n },\n },\n})\n\nexport const V1AuthorAvatarPathParamsSchema = z.object({\n slug: z.string().min(1),\n})\n\nexport const V1AuthorAvatarResponseSchema = z\n .object({\n tiny: z.string(),\n })\n .openapi('AuthorAvatarTiny')\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/authors/{slug}/avatar',\n tags: ['Taxonomy'],\n description:\n 'Author avatar tiny image URL by slug. `tiny` is empty when the author or avatar is missing.',\n request: {\n params: V1AuthorAvatarPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1AuthorAvatarResponseSchema,\n },\n },\n },\n },\n})\n\nexport const V1PopularKeywordsResponseSchema = z.array(\n z.object({ name: z.string() })\n)\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/popular-keywords',\n tags: ['Editor'],\n description: 'Popular keywords from editor picks ordering.',\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PopularKeywordsResponseSchema,\n },\n },\n },\n },\n})\n\nexport const V1CallBaodaozaiIntroPathParamsSchema = z.object({\n page: z.enum([\n 'home',\n 'all',\n 'topics',\n 'news',\n 'storytelling',\n 'campus',\n 'listeningNews',\n 'classroom',\n ]),\n})\n\nexport const V1CallBaodaozaiIntroResponseSchema = CallBaodaozaiIntroItemSchema\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/call-baodaozai-intros/{page}',\n tags: ['Editor'],\n description: 'Get Call Baodaozai intro content by page.',\n request: {\n params: V1CallBaodaozaiIntroPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1CallBaodaozaiIntroResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\n/** Query for `GET /v1/projects`. */\nexport const V1ProjectsQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional(),\n skip: z.coerce.number().int().min(0).max(5000).optional(),\n orderBy: z.enum(['publishedDate:desc']).optional(),\n includeRelatedPosts: z\n .union([z.literal('true'), z.literal('false')])\n .optional()\n .transform((v) => v === 'true'),\n})\n\nexport const V1ProjectsItemSchema = z\n .object({\n title: z.string(),\n subtitle: z.string(),\n slug: z.string(),\n ogDescription: z.string().nullable().optional(),\n publishedDate: z.iso.datetime().nullable().optional(),\n heroImage: z\n .object({\n resized: z.object({\n small: z.string(),\n medium: z.string(),\n }),\n })\n .nullable()\n .optional(),\n relatedPostsOrdered: z.array(PostContentSchema).optional(),\n })\n .openapi('ProjectsItem')\n\nexport const V1ProjectsResponseSchema = z.object({\n projects: z.array(V1ProjectsItemSchema),\n projectsCount: z.number().int().min(0),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects',\n tags: ['Projects'],\n description:\n 'List published projects. Response always includes `projects` and total `projectsCount`. Optional `relatedPostsOrdered` on each item appears only when `includeRelatedPosts=true`.',\n request: {\n query: V1ProjectsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1ProjectsResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1EditorPicksSettingsQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(20).optional().default(5),\n})\n\nexport const V1EditorPicksSettingsResponseSchema = z.array(\n EditorPicksSettingItemSchema\n)\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/editor-picks-settings',\n tags: ['Editor'],\n description: 'Editor picks configuration rows.',\n request: {\n query: V1EditorPicksSettingsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1EditorPicksSettingsResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1MemberAvatarSchema = z\n .object({\n id: z.string(),\n fileUrl: z.string(),\n })\n .openapi('MemberAvatar')\n\nexport const V1MemberIdentitySchema = z.enum([\n 'student',\n 'parent',\n 'teacher',\n 'public',\n])\n\nexport const V1MemberLocationCountrySchema = z.enum(['taiwan', 'other'])\n\nexport const V1MemberBirthdaySchema = z.iso.date()\n\nexport const V1MemberProfileSchema = z\n .object({\n id: z.string(),\n name: z.string(),\n email: z.string(),\n nickname: z.string(),\n contactEmail: z.string(),\n birthday: V1MemberBirthdaySchema.nullable().optional(),\n locationCountry: V1MemberLocationCountrySchema.nullable().optional(),\n locationRegion: z.string().nullable().optional(),\n identity: V1MemberIdentitySchema.nullable().optional(),\n twreporter_user_id: z.string(),\n showBaodaozai: z.boolean(),\n essayQuestionCount: z.number().int().nullable().optional(),\n avatar: V1MemberAvatarSchema.nullable().optional(),\n createdAt: z.iso.datetime().nullable().optional(),\n })\n .openapi('MemberProfile')\n\nexport const V1MemberProfileResponseSchema = V1MemberProfileSchema\n\nexport const V1MemberProfilePatchBodySchema = z\n .strictObject({\n name: z.string().optional(),\n nickname: z.string().optional(),\n contactEmail: z.string().optional(),\n birthday: V1MemberBirthdaySchema.nullable().optional(),\n locationCountry: V1MemberLocationCountrySchema.nullable().optional(),\n locationRegion: z.string().nullable().optional(),\n identity: V1MemberIdentitySchema.nullable().optional(),\n showBaodaozai: z.boolean().optional(),\n essayQuestionCount: z.number().int().min(0).max(3).optional(),\n })\n .openapi('MemberProfilePatch')\n\n/** Successful `POST /auth/access-token` response JSON. */\nexport const V1AccessTokenResponseSchema = z.object({\n accessToken: z.string(),\n twreporterUserId: z.string(),\n expiresAt: z.number(),\n})\n\n/** GET `/v1/members/me/posts-with-answers` query string. */\nexport const V1MemberPostsWithAnswersQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional().default(5),\n cursor: z.string().optional(),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/members/me',\n tags: ['Members'],\n description: 'Authenticated member profile (Bearer JWT).',\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1MemberProfileResponseSchema,\n },\n },\n },\n 401: {\n description: 'Unauthorized',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Member not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'patch',\n path: '/v1/members/me',\n tags: ['Members'],\n description: 'Update authenticated member profile (Bearer JWT).',\n request: {\n body: {\n content: {\n 'application/json': {\n schema: V1MemberProfilePatchBodySchema,\n },\n },\n },\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1MemberProfileResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 401: {\n description: 'Unauthorized',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Member not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport const V1PostBySlugPathParamsSchema = z.object({\n slug: z.string().min(1),\n})\n\n/** Flat query for `GET /v1/posts/{slug}` (news-reading order + related-posts filter are fixed server-side). */\nexport const V1PostBySlugQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional().default(5),\n postEssayQuestionsTake: z.coerce\n .number()\n .int()\n .min(1)\n .max(50)\n .optional()\n .default(3),\n postChoiceQuestionsTake: z.coerce\n .number()\n .int()\n .min(1)\n .max(50)\n .optional()\n .default(3),\n})\n\nexport const V1SitemapsQuerySchema = z.object({\n sinceDays: z.coerce.number().int().min(1).max(365).optional().default(60),\n})\n\nexport const V1SitemapEntrySchema = z.object({\n slug: z.string(),\n publishedDate: z.iso.datetime().nullable(),\n})\n\nexport const V1SitemapPostsResponseSchema = z.array(V1SitemapEntrySchema)\nexport const V1SitemapProjectsResponseSchema = z.array(V1SitemapEntrySchema)\n\nexport const V1ProjectBySlugMetaResponseSchema = z.object({\n publishedDate: z.iso.datetime().optional(),\n ogTitle: z.string(),\n ogDescription: z.string().nullable(),\n ogImage: z\n .object({\n resized: z.object({ small: z.string() }),\n })\n .nullable(),\n})\n\n/** Hero image payloads returned by `/v1/projects/{slug}` match Prisma-mapper targets. */\nexport const V1ProjectDetailPhotoResizedSchema = z.object({\n resized: z.object({\n small: z.string(),\n medium: z.string(),\n large: z.string(),\n }),\n})\n\nexport const V1ProjectBySlugDetailResponseSchema = z.object({\n title: z.string(),\n titlePosition: z.string().nullable().optional(),\n subtitle: z.string(),\n /** Draft.js JSON etc.; `z.json()` overflows zod-to-openapi union expansion. */\n content: z.unknown().nullable().optional(),\n credits: z.unknown().nullable().optional(),\n publishedDate: z.iso.datetime().optional(),\n heroImage: V1ProjectDetailPhotoResizedSchema.optional(),\n mobileHeroImage: V1ProjectDetailPhotoResizedSchema.optional(),\n relatedPostsOrdered: z.array(V1ProjectDetailRelatedPostOrderedItemSchema),\n})\n\nexport const V1ProjectRelatedPostsCountResponseSchema = z.object({\n relatedPostsCount: z.number().int().min(0),\n})\n\nexport const V1AuthorPostsCountResponseSchema = z.object({\n postsCount: z.number().int().min(0),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/sitemaps/posts',\n tags: ['Sitemaps'],\n description:\n 'Post slugs + published dates for sitemap (public posts only). Query `sinceDays` (1–365, default 60): include posts with `publishedDate` on/after start of day `now - sinceDays`.',\n request: {\n query: V1SitemapsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1SitemapPostsResponseSchema },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/sitemaps/projects',\n tags: ['Sitemaps'],\n description:\n 'Published project slugs + dates for sitemap. Query `sinceDays` (1–365, default 60): include projects with `publishedDate` on/after start of day `now - sinceDays`.',\n request: {\n query: V1SitemapsQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1SitemapProjectsResponseSchema },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects/{slug}',\n tags: ['Projects'],\n description:\n 'Published project detail for topic page (matches GraphQL `GetProject`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1ProjectBySlugDetailResponseSchema },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects/{slug}/meta',\n tags: ['Projects'],\n description:\n 'Published project OG metadata (matches GraphQL `GetProjectMeta`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': { schema: V1ProjectBySlugMetaResponseSchema },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/projects/{slug}/related-posts-count',\n tags: ['Projects'],\n description:\n 'Count of public posts linked to a published project (matches GraphQL `relatedPostsCount` on project).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1ProjectRelatedPostsCountResponseSchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nexport const V1PostsEssayAnswersWithLikesQuerySchema = z.object({\n take: z.coerce.number().int().min(1).max(50).optional().default(12),\n skip: z.coerce.number().int().min(0).max(5000).optional().default(0),\n orderBy: z\n .enum(['publishedDate:desc'])\n .optional()\n .default('publishedDate:desc'),\n answerTake: z.coerce.number().int().min(1).max(50).optional().default(10),\n answerOrderBy: z\n .enum(['likesCount:desc', 'createdAt:desc'])\n .optional()\n .default('likesCount:desc'),\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/{slug}',\n tags: ['Posts'],\n description:\n 'Single post article payload (matches GraphQL `GetPost`). Flat query: `take`, `postEssayQuestionsTake`, `postChoiceQuestionsTake` (1–50 each, defaults 5/3/3). News-reading item order and nested related-posts filter are fixed server-side.',\n request: {\n params: V1PostBySlugPathParamsSchema,\n query: V1PostBySlugQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostDetailBodySchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': { schema: RestErrorBodySchema },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/{slug}/meta',\n tags: ['Posts'],\n description:\n 'Post SEO / Open Graph metadata (matches GraphQL `GetPostMeta`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostMetaBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/{slug}/essay-questions',\n tags: ['Posts'],\n description:\n 'Post card plus essay questions (matches GraphQL `GetPostEssayQuestions`).',\n request: {\n params: V1PostBySlugPathParamsSchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostEssayQuestionsBodySchema,\n },\n },\n },\n 404: {\n description: 'Not found',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nregistry.registerPath({\n method: 'get',\n path: '/v1/posts/essay-answers-with-likes',\n tags: ['Posts'],\n description:\n 'Paged posts with nested essay answers and member avatars (matches GraphQL `GetPostsEssayAnswersWithLikes`). Flat query: `take`, `skip`, `orderBy` (`publishedDate:desc` only), `answerTake`, `answerOrderBy` (`likesCount:desc` | `createdAt:desc`). Post filter (posts with answered essay questions) is fixed server-side.',\n request: {\n query: V1PostsEssayAnswersWithLikesQuerySchema,\n },\n responses: {\n 200: {\n description: 'Success',\n content: {\n 'application/json': {\n schema: V1PostsEssayAnswersWithLikesResponseSchema,\n },\n },\n },\n 400: {\n description: 'Bad request',\n content: {\n 'application/json': {\n schema: RestErrorBodySchema,\n },\n },\n },\n },\n})\n\nexport * from './content-post-detail.js'\n"],"mappings":"AAAA,SACEA,oBAAoB,EACpBC,eAAe,QACV,gCAAgC;AACvC,SAASC,CAAC,QAAQ,KAAK;AAEvB,SAASC,mBAAmB,QAAQ,YAAY;AAChD,SACEC,sBAAsB,EACtBC,8BAA8B,EAC9BC,oBAAoB,EACpBC,0CAA0C,EAC1CC,2CAA2C,QACtC,0BAA0B;AAEjCR,oBAAoB,CAACE,CAAC,CAAC;AAEvB,OAAO,MAAMO,QAAQ,GAAG,IAAIR,eAAe,CAAC,CAAC;AAE7C,OAAO,MAAMS,kBAAkB,GAAGR,CAAC,CAChCS,MAAM,CAAC;EACNC,KAAK,EAAEV,CAAC,CACLW,MAAM,CAAC,CAAC,CACRC,OAAO,CAAC,EAAE,CAAC,CACXC,OAAO,CAAC;IAAEC,OAAO,EAAE;EAAmD,CAAC;AAC5E,CAAC,CAAC,CACDD,OAAO,CAAC,cAAc,CAAC;AAE1B,OAAO,MAAME,mBAAmB,GAAGf,CAAC,CACjCS,MAAM,CAAC;EACNO,OAAO,EAAER;AACX,CAAC,CAAC,CACDK,OAAO,CAAC,eAAe,CAAC;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMI,wBAAwB,GAAGjB,CAAC,CACtCS,MAAM,CAAC;EACNS,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBQ,WAAW,EAAEnB,CAAC,CACXS,MAAM,CAAC;IACNS,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC,CAAC;IAChBS,QAAQ,EAAEpB,CAAC,CACRS,MAAM,CAAC;MACNY,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC;MAChBW,UAAU,EAAEtB,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC;IAC7C,CAAC,CAAC,CACDD,QAAQ,CAAC,CAAC,CACVC,QAAQ,CAAC;EACd,CAAC,CAAC,CACDD,QAAQ,CAAC,CAAC,CACVC,QAAQ,CAAC;AACd,CAAC,CAAC,CACDX,OAAO,CAAC,oBAAoB,CAAC;AAEhC,OAAO,MAAMY,iBAAiB,GAAGzB,CAAC,CAC/BS,MAAM,CAAC;EACNiB,KAAK,EAAE1B,CAAC,CAACW,MAAM,CAAC,CAAC;EACjBU,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBgB,aAAa,EAAE3B,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/CI,SAAS,EAAEb,mBAAmB,CAACQ,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACpDK,uBAAuB,EAAE7B,CAAC,CAAC8B,KAAK,CAACb,wBAAwB,CAAC,CAACL,OAAO,CAAC,EAAE,CAAC;EACtEmB,aAAa,EAAE/B,CAAC,CAACgC,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACV,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC;AACtD,CAAC,CAAC,CACDX,OAAO,CAAC,aAAa,CAAC;AAEzB,OAAO,MAAMqB,qBAAqB,GAAGlC,CAAC,CACnCS,MAAM,CAAC;EACN0B,EAAE,EAAEnC,CAAC,CAACoC,KAAK,CAAC,CAACpC,CAAC,CAACW,MAAM,CAAC,CAAC,EAAEX,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC3CpB,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBU,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBS,QAAQ,EAAEpB,CAAC,CAACS,MAAM,CAAC;IAAEY,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC;EAAE,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC;AAC/D,CAAC,CAAC,CACDX,OAAO,CAAC,aAAa,CAAC;AAEzB,OAAO,MAAM0B,oCAAoC,GAAGvC,CAAC,CAACwC,IAAI,CAAC,CACzD,QAAQ,EACR,QAAQ,EACR,WAAW,CACZ,CAAC;AAEF,OAAO,MAAMC,4BAA4B,GAAGzC,CAAC,CAC1CS,MAAM,CAAC;EACN0B,EAAE,EAAEnC,CAAC,CAACoC,KAAK,CAAC,CAACpC,CAAC,CAACW,MAAM,CAAC,CAAC,EAAEX,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC3CI,IAAI,EAAE1C,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBgC,OAAO,EAAE3C,CAAC,CAACW,MAAM,CAAC,CAAC;EACnBiC,YAAY,EAAEL,oCAAoC;EAClDM,UAAU,EAAE7C,CAAC,CAACW,MAAM,CAAC,CAAC;EACtBmC,SAAS,EAAE9C,CAAC,CAACW,MAAM,CAAC;AACtB,CAAC,CAAC,CACDE,OAAO,CAAC,oBAAoB,CAAC;AAEhC,OAAO,MAAMkC,4BAA4B,GAAG/C,CAAC,CAC1CS,MAAM,CAAC;EACN0B,EAAE,EAAEnC,CAAC,CAACoC,KAAK,CAAC,CAACpC,CAAC,CAACW,MAAM,CAAC,CAAC,EAAEX,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC;EAC3CU,yBAAyB,EAAEhD,CAAC,CAAC8B,KAAK,CAACL,iBAAiB,CAAC,CAACb,OAAO,CAAC,EAAE,CAAC;EACjEqC,iBAAiB,EAAEjD,CAAC,CACjB8B,KAAK,CAAC9B,CAAC,CAACS,MAAM,CAAC;IAAES,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC,CAAC;IAAEU,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC;EAAE,CAAC,CAAC,CAAC,CACvDC,OAAO,CAAC,EAAE,CAAC;EACdsC,sBAAsB,EAAElD,CAAC,CAAC8B,KAAK,CAAC9B,CAAC,CAACS,MAAM,CAAC;IAAES,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC;EAAE,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,EAAE;AAC5E,CAAC,CAAC,CACDC,OAAO,CAAC,oBAAoB,CAAC;AAEhC,OAAO,MAAMsC,kBAAkB,GAAGnD,CAAC,CAACS,MAAM,CAAC;EACzC2C,IAAI,EAAEpD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC;EACvDgC,IAAI,EAAExD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,IAAI,CAAC,CAAC/B,QAAQ,CAAC,CAAC;EACzDiC,OAAO,EAAEzD,CAAC,CAACwC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAChB,QAAQ,CAAC;AACnD,CAAC,CAAC;AAEF,OAAO,MAAMkC,qBAAqB,GAAG1D,CAAC,CAACS,MAAM,CAAC;EAC5CkD,KAAK,EAAE3D,CAAC,CAAC8B,KAAK,CAACL,iBAAiB,CAAC;EACjCiB,IAAI,EAAE1C,CAAC,CAACS,MAAM,CAAC;IACb2C,IAAI,EAAEpD,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC;IACrCC,IAAI,EAAExD,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC;EAC9B,CAAC;AACH,CAAC,CAAC;AAEF/C,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,CAAC,OAAO,CAAC;EACfC,WAAW,EAAE,8BAA8B;EAC3CC,OAAO,EAAE;IACPC,KAAK,EAAEf;EACT,CAAC;EACDgB,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEV;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACHM,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAMoE,6BAA6B,GAAGrE,CAAC,CAAC8B,KAAK,CAACI,qBAAqB,CAAC;AAE3E3B,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,mBAAmB;EACzBC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EAAE,8CAA8C;EAC3DG,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEC;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAMC,8BAA8B,GAAGtE,CAAC,CAACS,MAAM,CAAC;EACrDY,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC,CAAC2C,GAAG,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,OAAO,MAAMiB,4BAA4B,GAAGvE,CAAC,CAC1CS,MAAM,CAAC;EACN+D,IAAI,EAAExE,CAAC,CAACW,MAAM,CAAC;AACjB,CAAC,CAAC,CACDE,OAAO,CAAC,kBAAkB,CAAC;AAE9BN,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,6FAA6F;EAC/FC,OAAO,EAAE;IACPQ,MAAM,EAAEH;EACV,CAAC;EACDH,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEG;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAMG,+BAA+B,GAAG1E,CAAC,CAAC8B,KAAK,CACpD9B,CAAC,CAACS,MAAM,CAAC;EAAES,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC;AAAE,CAAC,CAC/B,CAAC;AAEDJ,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,sBAAsB;EAC5BC,IAAI,EAAE,CAAC,QAAQ,CAAC;EAChBC,WAAW,EAAE,8CAA8C;EAC3DG,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEM;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAMC,oCAAoC,GAAG3E,CAAC,CAACS,MAAM,CAAC;EAC3DiC,IAAI,EAAE1C,CAAC,CAACwC,IAAI,CAAC,CACX,MAAM,EACN,KAAK,EACL,QAAQ,EACR,MAAM,EACN,cAAc,EACd,QAAQ,EACR,eAAe,EACf,WAAW,CACZ;AACH,CAAC,CAAC;AAEF,OAAO,MAAMoC,kCAAkC,GAAGnC,4BAA4B;AAE9ElC,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,kCAAkC;EACxCC,IAAI,EAAE,CAAC,QAAQ,CAAC;EAChBC,WAAW,EAAE,2CAA2C;EACxDC,OAAO,EAAE;IACPQ,MAAM,EAAEE;EACV,CAAC;EACDR,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEQ;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACHZ,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH+D,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;;AAEF;AACA,OAAO,MAAM4E,qBAAqB,GAAG7E,CAAC,CAACS,MAAM,CAAC;EAC5C2C,IAAI,EAAEpD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC;EACvDgC,IAAI,EAAExD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,IAAI,CAAC,CAAC/B,QAAQ,CAAC,CAAC;EACzDiC,OAAO,EAAEzD,CAAC,CAACwC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAChB,QAAQ,CAAC,CAAC;EAClDsD,mBAAmB,EAAE9E,CAAC,CACnBoC,KAAK,CAAC,CAACpC,CAAC,CAAC+E,OAAO,CAAC,MAAM,CAAC,EAAE/E,CAAC,CAAC+E,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAC9CvD,QAAQ,CAAC,CAAC,CACVwD,SAAS,CAAEC,CAAC,IAAKA,CAAC,KAAK,MAAM;AAClC,CAAC,CAAC;AAEF,OAAO,MAAMC,oBAAoB,GAAGlF,CAAC,CAClCS,MAAM,CAAC;EACNiB,KAAK,EAAE1B,CAAC,CAACW,MAAM,CAAC,CAAC;EACjBwE,QAAQ,EAAEnF,CAAC,CAACW,MAAM,CAAC,CAAC;EACpBU,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBgB,aAAa,EAAE3B,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/CO,aAAa,EAAE/B,CAAC,CAACgC,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACV,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACrDI,SAAS,EAAE5B,CAAC,CACTS,MAAM,CAAC;IACNO,OAAO,EAAEhB,CAAC,CAACS,MAAM,CAAC;MAChBC,KAAK,EAAEV,CAAC,CAACW,MAAM,CAAC,CAAC;MACjByE,MAAM,EAAEpF,CAAC,CAACW,MAAM,CAAC;IACnB,CAAC;EACH,CAAC,CAAC,CACDY,QAAQ,CAAC,CAAC,CACVC,QAAQ,CAAC,CAAC;EACb6D,mBAAmB,EAAErF,CAAC,CAAC8B,KAAK,CAACL,iBAAiB,CAAC,CAACD,QAAQ,CAAC;AAC3D,CAAC,CAAC,CACDX,OAAO,CAAC,cAAc,CAAC;AAE1B,OAAO,MAAMyE,wBAAwB,GAAGtF,CAAC,CAACS,MAAM,CAAC;EAC/C8E,QAAQ,EAAEvF,CAAC,CAAC8B,KAAK,CAACoD,oBAAoB,CAAC;EACvCM,aAAa,EAAExF,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF/C,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,cAAc;EACpBC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,mLAAmL;EACrLC,OAAO,EAAE;IACPC,KAAK,EAAEW;EACT,CAAC;EACDV,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEkB;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACHtB,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAMwF,gCAAgC,GAAGzF,CAAC,CAACS,MAAM,CAAC;EACvD2C,IAAI,EAAEpD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,OAAO,MAAM8E,mCAAmC,GAAG1F,CAAC,CAAC8B,KAAK,CACxDiB,4BACF,CAAC;AAEDxC,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,CAAC,QAAQ,CAAC;EAChBC,WAAW,EAAE,kCAAkC;EAC/CC,OAAO,EAAE;IACPC,KAAK,EAAEuB;EACT,CAAC;EACDtB,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEsB;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH1B,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAM0F,oBAAoB,GAAG3F,CAAC,CAClCS,MAAM,CAAC;EACN0B,EAAE,EAAEnC,CAAC,CAACW,MAAM,CAAC,CAAC;EACdiF,OAAO,EAAE5F,CAAC,CAACW,MAAM,CAAC;AACpB,CAAC,CAAC,CACDE,OAAO,CAAC,cAAc,CAAC;AAE1B,OAAO,MAAMgF,sBAAsB,GAAG7F,CAAC,CAACwC,IAAI,CAAC,CAC3C,SAAS,EACT,QAAQ,EACR,SAAS,EACT,QAAQ,CACT,CAAC;AAEF,OAAO,MAAMsD,6BAA6B,GAAG9F,CAAC,CAACwC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAExE,OAAO,MAAMuD,sBAAsB,GAAG/F,CAAC,CAACgC,GAAG,CAACgE,IAAI,CAAC,CAAC;AAElD,OAAO,MAAMC,qBAAqB,GAAGjG,CAAC,CACnCS,MAAM,CAAC;EACN0B,EAAE,EAAEnC,CAAC,CAACW,MAAM,CAAC,CAAC;EACdO,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBuF,KAAK,EAAElG,CAAC,CAACW,MAAM,CAAC,CAAC;EACjBwF,QAAQ,EAAEnG,CAAC,CAACW,MAAM,CAAC,CAAC;EACpByF,YAAY,EAAEpG,CAAC,CAACW,MAAM,CAAC,CAAC;EACxB0F,QAAQ,EAAEN,sBAAsB,CAACxE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACtD8E,eAAe,EAAER,6BAA6B,CAACvE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACpE+E,cAAc,EAAEvG,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAChDgF,QAAQ,EAAEX,sBAAsB,CAACtE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACtDiF,kBAAkB,EAAEzG,CAAC,CAACW,MAAM,CAAC,CAAC;EAC9B+F,aAAa,EAAE1G,CAAC,CAAC2G,OAAO,CAAC,CAAC;EAC1BC,kBAAkB,EAAE5G,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACf,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC1DqF,MAAM,EAAElB,oBAAoB,CAACpE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAClDsF,SAAS,EAAE9G,CAAC,CAACgC,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACV,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC;AAClD,CAAC,CAAC,CACDX,OAAO,CAAC,eAAe,CAAC;AAE3B,OAAO,MAAMkG,6BAA6B,GAAGd,qBAAqB;AAElE,OAAO,MAAMe,8BAA8B,GAAGhH,CAAC,CAC5CiH,YAAY,CAAC;EACZ/F,IAAI,EAAElB,CAAC,CAACW,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC,CAAC;EAC3B2E,QAAQ,EAAEnG,CAAC,CAACW,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC,CAAC;EAC/B4E,YAAY,EAAEpG,CAAC,CAACW,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC,CAAC;EACnC6E,QAAQ,EAAEN,sBAAsB,CAACxE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACtD8E,eAAe,EAAER,6BAA6B,CAACvE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACpE+E,cAAc,EAAEvG,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAChDgF,QAAQ,EAAEX,sBAAsB,CAACtE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EACtDkF,aAAa,EAAE1G,CAAC,CAAC2G,OAAO,CAAC,CAAC,CAACnF,QAAQ,CAAC,CAAC;EACrCoF,kBAAkB,EAAE5G,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC/B,QAAQ,CAAC;AAC9D,CAAC,CAAC,CACDX,OAAO,CAAC,oBAAoB,CAAC;;AAEhC;AACA,OAAO,MAAMqG,2BAA2B,GAAGlH,CAAC,CAACS,MAAM,CAAC;EAClD0G,WAAW,EAAEnH,CAAC,CAACW,MAAM,CAAC,CAAC;EACvByG,gBAAgB,EAAEpH,CAAC,CAACW,MAAM,CAAC,CAAC;EAC5B0G,SAAS,EAAErH,CAAC,CAACqC,MAAM,CAAC;AACtB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMiF,mCAAmC,GAAGtH,CAAC,CAACS,MAAM,CAAC;EAC1D2C,IAAI,EAAEpD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,CAAC,CAAC;EAClE2G,MAAM,EAAEvH,CAAC,CAACW,MAAM,CAAC,CAAC,CAACa,QAAQ,CAAC;AAC9B,CAAC,CAAC;AAEFjB,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,gBAAgB;EACtBC,IAAI,EAAE,CAAC,SAAS,CAAC;EACjBC,WAAW,EAAE,4CAA4C;EACzDG,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAE2C;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH/C,WAAW,EAAE,cAAc;MAC3BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH+D,WAAW,EAAE,kBAAkB;MAC/BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,OAAO;EACfC,IAAI,EAAE,gBAAgB;EACtBC,IAAI,EAAE,CAAC,SAAS,CAAC;EACjBC,WAAW,EAAE,mDAAmD;EAChEC,OAAO,EAAE;IACPuD,IAAI,EAAE;MACJ7E,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAE4C;QACV;MACF;IACF;EACF,CAAC;EACD7C,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAE2C;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH/C,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH+D,WAAW,EAAE,cAAc;MAC3BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH+D,WAAW,EAAE,kBAAkB;MAC/BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAMwH,4BAA4B,GAAGzH,CAAC,CAACS,MAAM,CAAC;EACnDY,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC,CAAC2C,GAAG,CAAC,CAAC;AACxB,CAAC,CAAC;;AAEF;AACA,OAAO,MAAMoE,uBAAuB,GAAG1H,CAAC,CAACS,MAAM,CAAC;EAC9C2C,IAAI,EAAEpD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,CAAC,CAAC;EAClE+G,sBAAsB,EAAE3H,CAAC,CAACqD,MAAM,CAC7BhB,MAAM,CAAC,CAAC,CACRC,GAAG,CAAC,CAAC,CACLgB,GAAG,CAAC,CAAC,CAAC,CACNC,GAAG,CAAC,EAAE,CAAC,CACP/B,QAAQ,CAAC,CAAC,CACVZ,OAAO,CAAC,CAAC,CAAC;EACbgH,uBAAuB,EAAE5H,CAAC,CAACqD,MAAM,CAC9BhB,MAAM,CAAC,CAAC,CACRC,GAAG,CAAC,CAAC,CACLgB,GAAG,CAAC,CAAC,CAAC,CACNC,GAAG,CAAC,EAAE,CAAC,CACP/B,QAAQ,CAAC,CAAC,CACVZ,OAAO,CAAC,CAAC;AACd,CAAC,CAAC;AAEF,OAAO,MAAMiH,qBAAqB,GAAG7H,CAAC,CAACS,MAAM,CAAC;EAC5CqH,SAAS,EAAE9H,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,GAAG,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,EAAE;AAC1E,CAAC,CAAC;AAEF,OAAO,MAAMmH,oBAAoB,GAAG/H,CAAC,CAACS,MAAM,CAAC;EAC3CY,IAAI,EAAErB,CAAC,CAACW,MAAM,CAAC,CAAC;EAChBoB,aAAa,EAAE/B,CAAC,CAACgC,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACV,QAAQ,CAAC;AAC3C,CAAC,CAAC;AAEF,OAAO,MAAMyG,4BAA4B,GAAGhI,CAAC,CAAC8B,KAAK,CAACiG,oBAAoB,CAAC;AACzE,OAAO,MAAME,+BAA+B,GAAGjI,CAAC,CAAC8B,KAAK,CAACiG,oBAAoB,CAAC;AAE5E,OAAO,MAAMG,iCAAiC,GAAGlI,CAAC,CAACS,MAAM,CAAC;EACxDsB,aAAa,EAAE/B,CAAC,CAACgC,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACT,QAAQ,CAAC,CAAC;EAC1C2G,OAAO,EAAEnI,CAAC,CAACW,MAAM,CAAC,CAAC;EACnBgB,aAAa,EAAE3B,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC;EACpC6G,OAAO,EAAEpI,CAAC,CACPS,MAAM,CAAC;IACNO,OAAO,EAAEhB,CAAC,CAACS,MAAM,CAAC;MAAEC,KAAK,EAAEV,CAAC,CAACW,MAAM,CAAC;IAAE,CAAC;EACzC,CAAC,CAAC,CACDY,QAAQ,CAAC;AACd,CAAC,CAAC;;AAEF;AACA,OAAO,MAAM8G,iCAAiC,GAAGrI,CAAC,CAACS,MAAM,CAAC;EACxDO,OAAO,EAAEhB,CAAC,CAACS,MAAM,CAAC;IAChBC,KAAK,EAAEV,CAAC,CAACW,MAAM,CAAC,CAAC;IACjByE,MAAM,EAAEpF,CAAC,CAACW,MAAM,CAAC,CAAC;IAClB2H,KAAK,EAAEtI,CAAC,CAACW,MAAM,CAAC;EAClB,CAAC;AACH,CAAC,CAAC;AAEF,OAAO,MAAM4H,mCAAmC,GAAGvI,CAAC,CAACS,MAAM,CAAC;EAC1DiB,KAAK,EAAE1B,CAAC,CAACW,MAAM,CAAC,CAAC;EACjB6H,aAAa,EAAExI,CAAC,CAACW,MAAM,CAAC,CAAC,CAACY,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC/C2D,QAAQ,EAAEnF,CAAC,CAACW,MAAM,CAAC,CAAC;EACpB;EACAgC,OAAO,EAAE3C,CAAC,CAACyI,OAAO,CAAC,CAAC,CAAClH,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC1CkH,OAAO,EAAE1I,CAAC,CAACyI,OAAO,CAAC,CAAC,CAAClH,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC1CO,aAAa,EAAE/B,CAAC,CAACgC,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACT,QAAQ,CAAC,CAAC;EAC1CI,SAAS,EAAEyG,iCAAiC,CAAC7G,QAAQ,CAAC,CAAC;EACvDmH,eAAe,EAAEN,iCAAiC,CAAC7G,QAAQ,CAAC,CAAC;EAC7D6D,mBAAmB,EAAErF,CAAC,CAAC8B,KAAK,CAACxB,2CAA2C;AAC1E,CAAC,CAAC;AAEF,OAAO,MAAMsI,wCAAwC,GAAG5I,CAAC,CAACS,MAAM,CAAC;EAC/DoI,iBAAiB,EAAE7I,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,OAAO,MAAMwF,gCAAgC,GAAG9I,CAAC,CAACS,MAAM,CAAC;EACvDsI,UAAU,EAAE/I,CAAC,CAACqC,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF/C,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,oBAAoB;EAC1BC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,kLAAkL;EACpLC,OAAO,EAAE;IACPC,KAAK,EAAE2D;EACT,CAAC;EACD1D,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAE4D;QAA6B;MAC7D;IACF,CAAC;IACD,GAAG,EAAE;MACHhE,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEnE;QAAoB;MACpD;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,uBAAuB;EAC7BC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,oKAAoK;EACtKC,OAAO,EAAE;IACPC,KAAK,EAAE2D;EACT,CAAC;EACD1D,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAE6D;QAAgC;MAChE;IACF,CAAC;IACD,GAAG,EAAE;MACHjE,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEnE;QAAoB;MACpD;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,qBAAqB;EAC3BC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,yEAAyE;EAC3EC,OAAO,EAAE;IACPQ,MAAM,EAAEgD;EACV,CAAC;EACDtD,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEmE;QAAoC;MACpE;IACF,CAAC;IACD,GAAG,EAAE;MACHvE,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEnE;QAAoB;MACpD;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,0BAA0B;EAChCC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,mEAAmE;EACrEC,OAAO,EAAE;IACPQ,MAAM,EAAEgD;EACV,CAAC;EACDtD,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAE8D;QAAkC;MAClE;IACF,CAAC;IACD,GAAG,EAAE;MACHlE,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEnE;QAAoB;MACpD;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,yCAAyC;EAC/CC,IAAI,EAAE,CAAC,UAAU,CAAC;EAClBC,WAAW,EACT,uGAAuG;EACzGC,OAAO,EAAE;IACPQ,MAAM,EAAEgD;EACV,CAAC;EACDtD,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEwE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH5E,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEnE;QAAoB;MACpD;IACF;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAM+I,uCAAuC,GAAGhJ,CAAC,CAACS,MAAM,CAAC;EAC9D2C,IAAI,EAAEpD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,EAAE,CAAC;EACnE4C,IAAI,EAAExD,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,IAAI,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,CAAC,CAAC;EACpE6C,OAAO,EAAEzD,CAAC,CACPwC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAC5BhB,QAAQ,CAAC,CAAC,CACVZ,OAAO,CAAC,oBAAoB,CAAC;EAChCqI,UAAU,EAAEjJ,CAAC,CAACqD,MAAM,CAAChB,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACgB,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,EAAE,CAAC,CAAC/B,QAAQ,CAAC,CAAC,CAACZ,OAAO,CAAC,EAAE,CAAC;EACzEsI,aAAa,EAAElJ,CAAC,CACbwC,IAAI,CAAC,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAC3ChB,QAAQ,CAAC,CAAC,CACVZ,OAAO,CAAC,iBAAiB;AAC9B,CAAC,CAAC;AAEFL,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,kBAAkB;EACxBC,IAAI,EAAE,CAAC,OAAO,CAAC;EACfC,WAAW,EACT,8OAA8O;EAChPC,OAAO,EAAE;IACPQ,MAAM,EAAEgD,4BAA4B;IACpCvD,KAAK,EAAEwD;EACT,CAAC;EACDvD,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAElE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH8D,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH+D,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAAEyB,MAAM,EAAEnE;QAAoB;MACpD;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,uBAAuB;EAC7BC,IAAI,EAAE,CAAC,OAAO,CAAC;EACfC,WAAW,EACT,iEAAiE;EACnEC,OAAO,EAAE;IACPQ,MAAM,EAAEgD;EACV,CAAC;EACDtD,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEhE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH4D,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,kCAAkC;EACxCC,IAAI,EAAE,CAAC,OAAO,CAAC;EACfC,WAAW,EACT,2EAA2E;EAC7EC,OAAO,EAAE;IACPQ,MAAM,EAAEgD;EACV,CAAC;EACDtD,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEjE;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH6D,WAAW,EAAE,WAAW;MACxBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEFM,QAAQ,CAACqD,YAAY,CAAC;EACpBC,MAAM,EAAE,KAAK;EACbC,IAAI,EAAE,oCAAoC;EAC1CC,IAAI,EAAE,CAAC,OAAO,CAAC;EACfC,WAAW,EACT,8TAA8T;EAChUC,OAAO,EAAE;IACPC,KAAK,EAAE8E;EACT,CAAC;EACD7E,SAAS,EAAE;IACT,GAAG,EAAE;MACHH,WAAW,EAAE,SAAS;MACtBrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAE/D;QACV;MACF;IACF,CAAC;IACD,GAAG,EAAE;MACH2D,WAAW,EAAE,aAAa;MAC1BrB,OAAO,EAAE;QACP,kBAAkB,EAAE;UAClByB,MAAM,EAAEnE;QACV;MACF;IACF;EACF;AACF,CAAC,CAAC;AAEF,cAAc,0BAA0B","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kids-reporter/api-types",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "files": [