UNPKG

@elsikora/setup-wizard

Version:

Setup Wizard - CLI scaffolding utility

60 lines (57 loc) 3.06 kB
#!/usr/bin/env node import { ECommitlintMode } from '../../../domain/enum/commitlint-mode.enum.js'; import { ECommitlintProvider } from '../../../domain/enum/commitlint-provider.enum.js'; import { ECommitlintTicketMissingBranchLintBehavior } from '../../../domain/enum/commitlint-ticket-missing-branch-lint-behavior.enum.js'; import { ECommitlintTicketNormalization } from '../../../domain/enum/commitlint-ticket-normalization.enum.js'; import { ECommitlintTicketSource } from '../../../domain/enum/commitlint-ticket-source.enum.js'; const DEFAULT_MAX_RETRIES = 3; const DEFAULT_VALIDATION_MAX_RETRIES = 3; const COMMITLINT_AI_DEFAULTS = { maxRetries: DEFAULT_MAX_RETRIES, mode: ECommitlintMode.AUTO, model: "claude-opus-4-5", provider: ECommitlintProvider.ANTHROPIC, ticket: { missingBranchLintBehavior: ECommitlintTicketMissingBranchLintBehavior.ERROR, normalization: ECommitlintTicketNormalization.UPPER, pattern: "[a-z]{2,}-[0-9]+", patternFlags: "i", source: ECommitlintTicketSource.BRANCH_LINT, }, validationMaxRetries: DEFAULT_VALIDATION_MAX_RETRIES, }; /** * Generates commitlint-ai plugin configuration. * The template mirrors current plugin options, including ticket extraction settings. */ const COMMITLINT_AI_CONFIG = { template: (config) => { const mode = config?.mode ?? COMMITLINT_AI_DEFAULTS.mode; const model = config?.model ?? COMMITLINT_AI_DEFAULTS.model; const provider = config?.provider ?? COMMITLINT_AI_DEFAULTS.provider; const maxRetries = typeof config?.maxRetries === "number" ? config.maxRetries : COMMITLINT_AI_DEFAULTS.maxRetries; const validationMaxRetries = typeof config?.validationMaxRetries === "number" ? config.validationMaxRetries : COMMITLINT_AI_DEFAULTS.validationMaxRetries; const ticketConfig = config?.ticket; const ticketSource = ticketConfig?.source ?? COMMITLINT_AI_DEFAULTS.ticket.source; const ticketPattern = ticketConfig?.pattern ?? COMMITLINT_AI_DEFAULTS.ticket.pattern; const ticketPatternFlags = ticketConfig?.patternFlags ?? COMMITLINT_AI_DEFAULTS.ticket.patternFlags; const ticketNormalization = ticketConfig?.normalization ?? COMMITLINT_AI_DEFAULTS.ticket.normalization; const ticketMissingBranchLintBehavior = ticketConfig?.missingBranchLintBehavior ?? COMMITLINT_AI_DEFAULTS.ticket.missingBranchLintBehavior; return `export default { maxRetries: ${maxRetries}, mode: ${JSON.stringify(mode)}, model: ${JSON.stringify(model)}, provider: ${JSON.stringify(provider)}, ticket: { source: ${JSON.stringify(ticketSource)}, pattern: ${JSON.stringify(ticketPattern)}, patternFlags: ${JSON.stringify(ticketPatternFlags)}, normalization: ${JSON.stringify(ticketNormalization)}, missingBranchLintBehavior: ${JSON.stringify(ticketMissingBranchLintBehavior)}, }, validationMaxRetries: ${validationMaxRetries}, };`; }, }; export { COMMITLINT_AI_CONFIG, COMMITLINT_AI_DEFAULTS }; //# sourceMappingURL=ai-config.constant.js.map