UNPKG

@pagopa/dx-cli

Version:

A CLI useful to manage DX tools.

32 lines (31 loc) 997 B
import { z } from "zod/v4"; export const payloadSchema = z.object({ repoDescription: z.string().optional(), repoName: z.string().trim().min(1, "Repository name cannot be empty"), repoOwner: z.string().trim().default("pagopa"), }); const validatePrompt = (schema) => (input) => { const error = schema.safeParse(input).error; return error ? // Return the error message defined in the Zod schema z.prettifyError(error) : true; }; const getPrompts = () => [ { message: "Repository name", name: "repoName", validate: validatePrompt(payloadSchema.shape.repoName), }, { default: payloadSchema.shape.repoOwner.def.defaultValue, message: "GitHub repository owner (User or Organization)", name: "repoOwner", validate: validatePrompt(payloadSchema.shape.repoOwner), }, { message: "Repository description", name: "repoDescription", }, ]; export default getPrompts;