@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
1 lines • 17.1 kB
Source Map (JSON)
{"version":3,"file":"account.mjs","names":[],"sources":["../../src/schemas/account.ts"],"sourcesContent":["import z from \"zod\";\nimport { translate } from \"../libs/i18n/index.js\";\nimport type { ControllerSchema } from \"../types.js\";\nimport { mediaCropInputSchema, mediaOriginSchema } from \"./media.js\";\nimport { userResponseSchema } from \"./users.js\";\n\nconst profilePictureTranslationSchema = z.object({\n\tlocaleCode: z.string().trim().meta({\n\t\tdescription: \"The locale code for the translated profile picture metadata\",\n\t\texample: \"en\",\n\t}),\n\tvalue: z.string().trim().nullable().meta({\n\t\tdescription: \"The translated value\",\n\t\texample: \"Profile photo\",\n\t}),\n});\n\nconst emailChangeTokenParamsSchema = z.object({\n\ttoken: z.string().meta({\n\t\tdescription: \"A unique token granted when an email change is requested\",\n\t\texample: \"838ece1033bf7c7468e873e79ba2a3ec\",\n\t}),\n});\n\nexport const controllerSchemas = {\n\tgetMe: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: userResponseSchema,\n\t} satisfies ControllerSchema,\n\tresetPassword: {\n\t\tbody: z\n\t\t\t.object({\n\t\t\t\tpassword: z.string().min(8).max(128).meta({\n\t\t\t\t\tdescription: \"Your new password\",\n\t\t\t\t\texample: \"password123\",\n\t\t\t\t}),\n\t\t\t\tpasswordConfirmation: z.string().min(8).max(128).meta({\n\t\t\t\t\tdescription: \"A repeat of your new password\",\n\t\t\t\t\texample: \"password123\",\n\t\t\t\t}),\n\t\t\t})\n\t\t\t.refine((data) => data.password === data.passwordConfirmation, {\n\t\t\t\tmessage: translate(\"server:core.input.ensure.passwords.match\"),\n\t\t\t\tpath: [\"passwordConfirmation\"],\n\t\t\t}),\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: z.object({\n\t\t\ttoken: z.string().meta({\n\t\t\t\tdescription:\n\t\t\t\t\t\"A unique token granted to you when you request a password reset\",\n\t\t\t\texample: \"838ece1033bf7c7468e873e79ba2a3ec\",\n\t\t\t}),\n\t\t}),\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tsendResetPassword: {\n\t\tbody: z.object({\n\t\t\temail: z.email().trim().toLowerCase().meta({\n\t\t\t\tdescription: \"Your email address\",\n\t\t\t\texample: \"admin@lucidcms.io\",\n\t\t\t}),\n\t\t}),\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: z.object({\n\t\t\tmessage: z.string().meta({\n\t\t\t\tdescription: \"A status message\",\n\t\t\t\texample: translate(\"server:core.auth.password.reset.request.accepted\"),\n\t\t\t}),\n\t\t}),\n\t} satisfies ControllerSchema,\n\tverifyResetPassword: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: z.object({\n\t\t\ttoken: z.string().meta({\n\t\t\t\tdescription:\n\t\t\t\t\t\"A unique token granted to you when you request a password reset\",\n\t\t\t\texample: \"838ece1033bf7c7468e873e79ba2a3ec\",\n\t\t\t}),\n\t\t}),\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tverifyEmailChangeConfirm: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: emailChangeTokenParamsSchema,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tconfirmEmailChange: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: emailChangeTokenParamsSchema,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tverifyEmailChangeRevert: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: emailChangeTokenParamsSchema,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\trevertEmailChange: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: emailChangeTokenParamsSchema,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tcancelEmailChange: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tunlinkAuthProvider: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: z.object({\n\t\t\tproviderId: z.string().trim().min(1).meta({\n\t\t\t\tdescription: \"The provider key you wish to unlink\",\n\t\t\t\texample: \"github\",\n\t\t\t}),\n\t\t}),\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\trevokeAllRefreshTokens: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tupdateMe: {\n\t\tbody: z.object({\n\t\t\tfirstName: z\n\t\t\t\t.string()\n\t\t\t\t.trim()\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"Your new first name\",\n\t\t\t\t\texample: \"John\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t\tlastName: z\n\t\t\t\t.string()\n\t\t\t\t.trim()\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"Your new last name\",\n\t\t\t\t\texample: \"Smith\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t\tusername: z\n\t\t\t\t.string()\n\t\t\t\t.trim()\n\t\t\t\t.min(3)\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"Your new username\",\n\t\t\t\t\texample: \"admin\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t\temail: z\n\t\t\t\t.email()\n\t\t\t\t.trim()\n\t\t\t\t.toLowerCase()\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"your new email address\",\n\t\t\t\t\texample: \"admin@lucidcms.io\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t\tcurrentPassword: z\n\t\t\t\t.string()\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"Your current password\",\n\t\t\t\t\texample: \"password\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t\tnewPassword: z\n\t\t\t\t.string()\n\t\t\t\t.min(8)\n\t\t\t\t.max(128)\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"Your new password\",\n\t\t\t\t\texample: \"password123\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t\tpasswordConfirmation: z\n\t\t\t\t.string()\n\t\t\t\t.min(8)\n\t\t\t\t.max(128)\n\t\t\t\t.meta({\n\t\t\t\t\tdescription: \"A repeat of your new password\",\n\t\t\t\t\texample: \"password123\",\n\t\t\t\t})\n\t\t\t\t.optional(),\n\t\t}),\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tcreateProfilePictureUploadSession: {\n\t\tbody: z.object({\n\t\t\tfileName: z.string().trim().meta({\n\t\t\t\tdescription: \"The profile picture file name\",\n\t\t\t\texample: \"profile.png\",\n\t\t\t}),\n\t\t\tmimeType: z.string().trim().meta({\n\t\t\t\tdescription: \"The profile picture MIME type\",\n\t\t\t\texample: \"image/png\",\n\t\t\t}),\n\t\t\tsize: z.number().nonnegative().meta({\n\t\t\t\tdescription: \"The file size in bytes\",\n\t\t\t\texample: 1048576,\n\t\t\t}),\n\t\t}),\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: z.discriminatedUnion(\"mode\", [\n\t\t\tz.object({\n\t\t\t\tmode: z.literal(\"single\"),\n\t\t\t\tkey: z.string(),\n\t\t\t\turl: z.string(),\n\t\t\t\theaders: z.record(z.string(), z.string()).optional(),\n\t\t\t}),\n\t\t\tz.object({\n\t\t\t\tmode: z.literal(\"resumable\"),\n\t\t\t\tkey: z.string(),\n\t\t\t\tsessionId: z.string(),\n\t\t\t\tpartSize: z.number(),\n\t\t\t\texpiresAt: z.string(),\n\t\t\t\tuploadedParts: z.array(\n\t\t\t\t\tz.object({\n\t\t\t\t\t\tpartNumber: z.number().int().positive(),\n\t\t\t\t\t\tetag: z.string().trim(),\n\t\t\t\t\t\tsize: z.number().nonnegative().optional(),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t}),\n\t\t]),\n\t} satisfies ControllerSchema,\n\tupdateProfilePicture: {\n\t\tbody: z\n\t\t\t.object({\n\t\t\t\tcrop: mediaCropInputSchema.nullable().optional(),\n\t\t\t\tkey: z.string().trim().optional().meta({\n\t\t\t\t\tdescription: \"The uploaded media key\",\n\t\t\t\t\texample: \"public/123e4567e89b12d3a456426614174000\",\n\t\t\t\t}),\n\t\t\t\tfileName: z.string().trim().optional().meta({\n\t\t\t\t\tdescription: \"The profile picture file name\",\n\t\t\t\t\texample: \"profile.png\",\n\t\t\t\t}),\n\t\t\t\twidth: z.number().optional().meta({\n\t\t\t\t\tdescription: \"The image width\",\n\t\t\t\t\texample: 100,\n\t\t\t\t}),\n\t\t\t\theight: z.number().optional().meta({\n\t\t\t\t\tdescription: \"The image height\",\n\t\t\t\t\texample: 100,\n\t\t\t\t}),\n\t\t\t\tfocalPoint: z\n\t\t\t\t\t.object({\n\t\t\t\t\t\tx: z.number().min(0).max(1).meta({\n\t\t\t\t\t\t\tdescription: \"Horizontal focal point, normalized from 0 to 1\",\n\t\t\t\t\t\t\texample: 0.5,\n\t\t\t\t\t\t}),\n\t\t\t\t\t\ty: z.number().min(0).max(1).meta({\n\t\t\t\t\t\t\tdescription: \"Vertical focal point, normalized from 0 to 1\",\n\t\t\t\t\t\t\texample: 0.5,\n\t\t\t\t\t\t}),\n\t\t\t\t\t})\n\t\t\t\t\t.nullable()\n\t\t\t\t\t.optional()\n\t\t\t\t\t.meta({\n\t\t\t\t\t\tdescription: \"The image focal point\",\n\t\t\t\t\t}),\n\t\t\t\tblurHash: z.string().trim().optional().meta({\n\t\t\t\t\tdescription: \"The blur hash\",\n\t\t\t\t\texample: \"AQABAAAABAAAAgAA...\",\n\t\t\t\t}),\n\t\t\t\taverageColor: z.string().trim().optional().meta({\n\t\t\t\t\tdescription: \"The average color\",\n\t\t\t\t\texample: \"rgba(255, 255, 255, 1)\",\n\t\t\t\t}),\n\t\t\t\tbase64: z.string().trim().nullable().optional().meta({\n\t\t\t\t\tdescription: \"Tiny base64-encoded image placeholder\",\n\t\t\t\t\texample:\n\t\t\t\t\t\t\"data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoKAAcAAUAmJQBOgCH5AQAA\",\n\t\t\t\t}),\n\t\t\t\tisDark: z.boolean().optional().meta({\n\t\t\t\t\tdescription: \"Whether the image is dark\",\n\t\t\t\t\texample: true,\n\t\t\t\t}),\n\t\t\t\tisLight: z.boolean().optional().meta({\n\t\t\t\t\tdescription: \"Whether the image is light\",\n\t\t\t\t\texample: true,\n\t\t\t\t}),\n\t\t\t\torigin: mediaOriginSchema.optional().meta({\n\t\t\t\t\tdescription: \"The provenance origin of the profile picture\",\n\t\t\t\t\texample: \"human\",\n\t\t\t\t}),\n\t\t\t\taiGenerationRequestId: z.string().trim().optional().meta({\n\t\t\t\t\tdescription:\n\t\t\t\t\t\t\"The AI generation request ID to link to this profile picture\",\n\t\t\t\t\texample: \"123e4567-e89b-12d3-a456-426614174000\",\n\t\t\t\t}),\n\t\t\t\ttitle: z.array(profilePictureTranslationSchema).optional().meta({\n\t\t\t\t\tdescription: \"Translated profile picture titles\",\n\t\t\t\t}),\n\t\t\t\talt: z.array(profilePictureTranslationSchema).optional().meta({\n\t\t\t\t\tdescription: \"Translated profile picture alt text\",\n\t\t\t\t}),\n\t\t\t})\n\t\t\t.refine(\n\t\t\t\t(data) => (data.key === undefined) === (data.fileName === undefined),\n\t\t\t\t{\n\t\t\t\t\tmessage: translate(\n\t\t\t\t\t\t\"server:core.profile.picture.file.name.key.required\",\n\t\t\t\t\t),\n\t\t\t\t\tpath: [\"fileName\"],\n\t\t\t\t},\n\t\t\t),\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n\tdeleteProfilePicture: {\n\t\tbody: undefined,\n\t\tquery: {\n\t\t\tstring: undefined,\n\t\t\tformatted: undefined,\n\t\t},\n\t\tparams: undefined,\n\t\tresponse: undefined,\n\t} satisfies ControllerSchema,\n};\n"],"mappings":"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"}