UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

2 lines 4.77 kB
import{queryFormatted as e,queryString as t}from"./helpers/querystring.mjs";import n from"zod";const r=n.string().length(12).regex(/^[A-Za-z0-9_-]+$/,`Invalid token format`),i=n.object({id:n.number().meta({description:`Share link ID`,example:1}),token:n.string().meta({description:`Unique token identifying the share link`,example:`a1B2c3D4e5F6`}),url:n.string().meta({description:`Public share URL`,example:`https://example.com/lucid/share/a1B2c3D4e5F6`}),name:n.string().nullable().meta({description:`Optional display name`,example:`Client preview`}),description:n.string().nullable().meta({description:`Optional description`,example:`Preview link for the client review`}),expiresAt:n.string().nullable().meta({description:`ISO date string when the link expires`,example:`2025-01-01T00:00:00Z`}),hasExpired:n.boolean().meta({description:`Whether the link has expired based on the current date`,example:!1}),hasPassword:n.boolean().meta({description:`Whether a password is set for this link`,example:!0}),createdBy:n.number().nullable().meta({description:`User ID that created the link`,example:1}),updatedBy:n.number().nullable().meta({description:`User ID that last updated the link`,example:1}),createdAt:n.string().nullable().meta({description:`Creation timestamp`,example:`2022-01-01T00:00:00Z`}),updatedAt:n.string().nullable().meta({description:`Last update timestamp`,example:`2022-01-01T00:00:00Z`})}),a={getMultiple:{body:void 0,query:{string:n.object({"filter[token]":t.schema.filter(!1,{example:`a1B2c3D4e5F6`}),"filter[name]":t.schema.filter(!1,{example:`Client preview`}),"filter[createdBy]":t.schema.filter(!0,{example:`1`}),"filter[updatedBy]":t.schema.filter(!0,{example:`1`}),"filter[expiresAt]":t.schema.filter(!1,{example:`2026-01-01T00:00:00Z`}),"filter[createdAt]":t.schema.filter(!1,{example:`2026-01-01T00:00:00Z`}),"filter[updatedAt]":t.schema.filter(!1,{example:`2026-01-01T00:00:00Z`}),sort:t.schema.sort(`name,expiresAt,createdAt,updatedAt`),page:t.schema.page,perPage:t.schema.perPage}).meta(t.meta),formatted:n.object({filter:n.object({token:e.schema.filters.single.optional(),name:e.schema.filters.single.optional(),createdBy:e.schema.filters.union.optional(),updatedBy:e.schema.filters.union.optional(),expiresAt:e.schema.filters.single.optional(),createdAt:e.schema.filters.single.optional(),updatedAt:e.schema.filters.single.optional()}).optional(),filterOr:e.schema.filterOr,sort:n.array(n.object({key:n.enum([`name`,`expiresAt`,`createdAt`,`updatedAt`]),direction:n.enum([`asc`,`desc`])})).optional(),page:e.schema.page,perPage:e.schema.perPage})},params:n.object({id:n.string().trim().meta({description:`The media ID`,example:1})}),response:n.array(i)},createSingle:{body:n.object({name:n.string().trim().min(1).meta({description:`Optional display name`}).optional(),description:n.string().trim().meta({description:`Optional description`}).optional(),password:n.string().min(1).meta({description:`Optional password to protect the link`}).optional(),expiresAt:n.string().trim().meta({description:`Optional expiry date`,example:`2025-01-01T00:00:00Z`}).optional()}),query:{string:void 0,formatted:void 0},params:n.object({id:n.string().trim().meta({description:`The media ID`,example:1})}),response:i},updateSingle:{body:n.object({name:n.string().trim().meta({description:`Optional display name`}).optional(),description:n.string().trim().meta({description:`Optional description`}).optional(),password:n.union([n.string().min(0),n.null()]).meta({description:`Set a password or null to clear`}).optional(),expiresAt:n.union([n.string().trim(),n.null()]).meta({description:`Expiry date or null to clear`,example:`2025-01-01T00:00:00Z`}).optional()}),query:{string:void 0,formatted:void 0},params:n.object({id:n.string().trim().meta({description:`The media ID`,example:1}),linkId:n.string().trim().meta({description:`The share link ID`,example:1})}),response:void 0},deleteSingle:{body:void 0,query:{string:void 0,formatted:void 0},params:n.object({id:n.string().trim().meta({description:`The media ID`,example:1}),linkId:n.string().trim().meta({description:`The share link ID`,example:1})}),response:void 0},getSingle:{body:void 0,query:{string:void 0,formatted:void 0},params:n.object({id:n.string().trim().meta({description:`The media ID`,example:1}),linkId:n.string().trim().meta({description:`The share link ID`,example:1})}),response:i},deleteMultiple:{body:void 0,query:{string:void 0,formatted:void 0},params:n.object({id:n.string().trim().meta({description:`The media ID`,example:1})}),response:void 0},deleteAll:{body:void 0,query:{string:void 0,formatted:void 0},params:void 0,response:void 0}};export{a as controllerSchemas,i as mediaShareLinkResponseSchema,r as tokenSchema}; //# sourceMappingURL=media-share-links.mjs.map