/** * Generated by orval 🍺 * Do not edit manually. * Api * API specification * OpenAPI spec version: 0.1.0 */ import * as zod from 'zod'; /** * @summary List published articles and overridden sample identifiers */ export const listArticlesResponseArticlesItemOneTitleMax = 240; export const listArticlesResponseArticlesItemOneSlugMax = 200; export const listArticlesResponseArticlesItemOneSlugRegExp = new RegExp('^[a-z0-9]+(?:-[a-z0-9]+)*$'); export const listArticlesResponseArticlesItemOneExcerptMax = 2000; export const listArticlesResponseArticlesItemOneContentMax = 200000; export const listArticlesResponseArticlesItemOneAuthorMax = 160; export const listArticlesResponseArticlesItemOneTagsMax = 1000; export const listArticlesResponseArticlesItemOneImageMax = 1000; export const listArticlesResponseArticlesItemOneImageAltMax = 500; export const listArticlesResponseArticlesItemOneVersionMin = 0; export const ListArticlesResponse = zod.object({ "articles": zod.array(zod.object({ "title": zod.string().min(1).max(listArticlesResponseArticlesItemOneTitleMax), "slug": zod.string().min(1).max(listArticlesResponseArticlesItemOneSlugMax).regex(listArticlesResponseArticlesItemOneSlugRegExp), "excerpt": zod.string().max(listArticlesResponseArticlesItemOneExcerptMax), "content": zod.string().max(listArticlesResponseArticlesItemOneContentMax), "category": zod.enum(['Courier Guides', 'Product Hunting', 'Dropshipping', 'Online Selling', 'eCommerce Platforms', 'Comparisons']), "author": zod.string().min(1).max(listArticlesResponseArticlesItemOneAuthorMax), "tags": zod.string().max(listArticlesResponseArticlesItemOneTagsMax), "image": zod.string().max(listArticlesResponseArticlesItemOneImageMax), "imageAlt": zod.string().max(listArticlesResponseArticlesItemOneImageAltMax), "status": zod.enum(['Draft', 'Published']), "version": zod.number().int().min(listArticlesResponseArticlesItemOneVersionMin) }).and(zod.object({ "id": zod.string(), "updatedAt": zod.coerce.date(), "publishedAt": zod.coerce.date().nullable() }))), "overriddenSamples": zod.array(zod.string()) }) /** * @summary List all articles (admin only) */ export const listAdminArticlesResponseOneTitleMax = 240; export const listAdminArticlesResponseOneSlugMax = 200; export const listAdminArticlesResponseOneSlugRegExp = new RegExp('^[a-z0-9]+(?:-[a-z0-9]+)*$'); export const listAdminArticlesResponseOneExcerptMax = 2000; export const listAdminArticlesResponseOneContentMax = 200000; export const listAdminArticlesResponseOneAuthorMax = 160; export const listAdminArticlesResponseOneTagsMax = 1000; export const listAdminArticlesResponseOneImageMax = 1000; export const listAdminArticlesResponseOneImageAltMax = 500; export const listAdminArticlesResponseOneVersionMin = 0; export const ListAdminArticlesResponseItem = zod.object({ "title": zod.string().min(1).max(listAdminArticlesResponseOneTitleMax), "slug": zod.string().min(1).max(listAdminArticlesResponseOneSlugMax).regex(listAdminArticlesResponseOneSlugRegExp), "excerpt": zod.string().max(listAdminArticlesResponseOneExcerptMax), "content": zod.string().max(listAdminArticlesResponseOneContentMax), "category": zod.enum(['Courier Guides', 'Product Hunting', 'Dropshipping', 'Online Selling', 'eCommerce Platforms', 'Comparisons']), "author": zod.string().min(1).max(listAdminArticlesResponseOneAuthorMax), "tags": zod.string().max(listAdminArticlesResponseOneTagsMax), "image": zod.string().max(listAdminArticlesResponseOneImageMax), "imageAlt": zod.string().max(listAdminArticlesResponseOneImageAltMax), "status": zod.enum(['Draft', 'Published']), "version": zod.number().int().min(listAdminArticlesResponseOneVersionMin) }).and(zod.object({ "id": zod.string(), "updatedAt": zod.coerce.date(), "publishedAt": zod.coerce.date().nullable() })) export const ListAdminArticlesResponse = zod.array(ListAdminArticlesResponseItem) /** * @summary Save or publish an article (admin only, version checked) */ export const SaveArticleParams = zod.object({ "id": zod.coerce.string() }) export const saveArticleBodyTitleMax = 240; export const saveArticleBodySlugMax = 200; export const saveArticleBodySlugRegExp = new RegExp('^[a-z0-9]+(?:-[a-z0-9]+)*$'); export const saveArticleBodyExcerptMax = 2000; export const saveArticleBodyContentMax = 200000; export const saveArticleBodyAuthorMax = 160; export const saveArticleBodyTagsMax = 1000; export const saveArticleBodyImageMax = 1000; export const saveArticleBodyImageAltMax = 500; export const saveArticleBodyVersionMin = 0; export const SaveArticleBody = zod.object({ "title": zod.string().min(1).max(saveArticleBodyTitleMax), "slug": zod.string().min(1).max(saveArticleBodySlugMax).regex(saveArticleBodySlugRegExp), "excerpt": zod.string().max(saveArticleBodyExcerptMax), "content": zod.string().max(saveArticleBodyContentMax), "category": zod.enum(['Courier Guides', 'Product Hunting', 'Dropshipping', 'Online Selling', 'eCommerce Platforms', 'Comparisons']), "author": zod.string().min(1).max(saveArticleBodyAuthorMax), "tags": zod.string().max(saveArticleBodyTagsMax), "image": zod.string().max(saveArticleBodyImageMax), "imageAlt": zod.string().max(saveArticleBodyImageAltMax), "status": zod.enum(['Draft', 'Published']), "version": zod.number().int().min(saveArticleBodyVersionMin) }) export const saveArticleResponseOneTitleMax = 240; export const saveArticleResponseOneSlugMax = 200; export const saveArticleResponseOneSlugRegExp = new RegExp('^[a-z0-9]+(?:-[a-z0-9]+)*$'); export const saveArticleResponseOneExcerptMax = 2000; export const saveArticleResponseOneContentMax = 200000; export const saveArticleResponseOneAuthorMax = 160; export const saveArticleResponseOneTagsMax = 1000; export const saveArticleResponseOneImageMax = 1000; export const saveArticleResponseOneImageAltMax = 500; export const saveArticleResponseOneVersionMin = 0; export const SaveArticleResponse = zod.object({ "title": zod.string().min(1).max(saveArticleResponseOneTitleMax), "slug": zod.string().min(1).max(saveArticleResponseOneSlugMax).regex(saveArticleResponseOneSlugRegExp), "excerpt": zod.string().max(saveArticleResponseOneExcerptMax), "content": zod.string().max(saveArticleResponseOneContentMax), "category": zod.enum(['Courier Guides', 'Product Hunting', 'Dropshipping', 'Online Selling', 'eCommerce Platforms', 'Comparisons']), "author": zod.string().min(1).max(saveArticleResponseOneAuthorMax), "tags": zod.string().max(saveArticleResponseOneTagsMax), "image": zod.string().max(saveArticleResponseOneImageMax), "imageAlt": zod.string().max(saveArticleResponseOneImageAltMax), "status": zod.enum(['Draft', 'Published']), "version": zod.number().int().min(saveArticleResponseOneVersionMin) }).and(zod.object({ "id": zod.string(), "updatedAt": zod.coerce.date(), "publishedAt": zod.coerce.date().nullable() })) /** * @summary Upload a featured image to durable App Storage (admin only) */ export const UploadArticleImageResponse = zod.object({ "image": zod.string() }) /** * @summary Serve a public featured image */ export const GetArticleImageParams = zod.object({ "id": zod.coerce.string() }) export const GetArticleImageResponse = zod.unknown() /** * Returns server health status * @summary Health check */ export const HealthCheckResponse = zod.object({ "status": zod.string() })