UNPKG

@minecraft/creator-tools

Version:

Minecraft Creator Tools command line and libraries.

71 lines (70 loc) 2.58 kB
import IFolder from "../storage/IFolder"; export declare const ValidationDocMarkdownTop = "---\nauthor: mammerla\nms.author: mikeam\ntitle: \"{0}\"\ndescription: \"{1}\"\nai-usage: ai-assisted\nms.service: minecraft-bedrock-edition\nms.date: 02/11/2025 \n---\n"; /** * Generates detailed markdown documentation for MCTools validation rules. * This provides a more user-friendly format than the general form documentation, * with emphasis on explaining what each rule checks and how to fix issues. */ export default class ValidationRulesMarkdownGenerator { /** * Generate validation rule documentation from form JSON files. * * @param formJsonInputFolder Folder containing mctoolsval form JSON files * @param outputFolder Folder to write markdown documentation to */ generateValidationDocs(formJsonInputFolder: IFolder, outputFolder: IFolder): Promise<void>; /** * Load all form JSON files from a folder into a dictionary. */ private loadFormJsonFromFolder; /** * Export individual validation rule category documentation pages. */ private exportValidationRuleDocs; /** * Export the validation rules index/overview page. */ private exportValidationRulesIndex; /** * Save a single validation rule category documentation page. */ private saveValidationRuleDoc; /** * Append detailed documentation for a single validation rule. * @param field The field/rule to document * @param content The content array to append to * @param rulesetName The uppercase ruleset name (e.g., "SHARING", "JSONF") */ private appendValidationRuleDetail; /** * Filter forms to only include validation rule forms. */ private getValidationForms; /** * Get severity information from messageType. */ private getSeverityInfo; /** * Check if a field has auto-fix capabilities. * Handles both object-style matchedValues { [key: string]: string } and * array-style matchedValues from JSON forms [{ updaterId, updaterIndex, action }]. */ private hasAutoFix; /** * Get auto-fix action descriptions from a field. * Handles both object-style and array-style matchedValues. */ private getAutoFixActions; /** * Create a markdown anchor from rule ID and title. */ private getAnchor; /** * Sanitize description text for markdown. */ private sanitizeDescription; /** * Truncate a description to a maximum length. */ private truncateDescription; }