@ai-coders/context 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +113 -580
- package/dist/generators/agents/agentGenerator.d.ts +6 -9
- package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
- package/dist/generators/agents/agentGenerator.js +89 -32
- package/dist/generators/agents/agentGenerator.js.map +1 -1
- package/dist/generators/agents/index.d.ts +0 -2
- package/dist/generators/agents/index.d.ts.map +1 -1
- package/dist/generators/agents/index.js +1 -5
- package/dist/generators/agents/index.js.map +1 -1
- package/dist/generators/agents/templates/index.d.ts +4 -0
- package/dist/generators/agents/templates/index.d.ts.map +1 -0
- package/dist/generators/agents/templates/index.js +8 -0
- package/dist/generators/agents/templates/index.js.map +1 -0
- package/dist/generators/agents/templates/indexTemplate.d.ts +3 -0
- package/dist/generators/agents/templates/indexTemplate.d.ts.map +1 -0
- package/dist/generators/agents/templates/indexTemplate.js +35 -0
- package/dist/generators/agents/templates/indexTemplate.js.map +1 -0
- package/dist/generators/agents/templates/playbookTemplate.d.ts +4 -0
- package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -0
- package/dist/generators/agents/templates/playbookTemplate.js +63 -0
- package/dist/generators/agents/templates/playbookTemplate.js.map +1 -0
- package/dist/generators/agents/templates/types.d.ts +14 -0
- package/dist/generators/agents/templates/types.d.ts.map +1 -0
- package/dist/generators/agents/templates/types.js +3 -0
- package/dist/generators/agents/templates/types.js.map +1 -0
- package/dist/generators/documentation/documentationGenerator.d.ts +9 -15
- package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
- package/dist/generators/documentation/documentationGenerator.js +65 -77
- package/dist/generators/documentation/documentationGenerator.js.map +1 -1
- package/dist/generators/documentation/guideRegistry.d.ts +6 -0
- package/dist/generators/documentation/guideRegistry.d.ts.map +1 -0
- package/dist/generators/documentation/guideRegistry.js +82 -0
- package/dist/generators/documentation/guideRegistry.js.map +1 -0
- package/dist/generators/documentation/index.d.ts +0 -6
- package/dist/generators/documentation/index.d.ts.map +1 -1
- package/dist/generators/documentation/index.js +1 -17
- package/dist/generators/documentation/index.js.map +1 -1
- package/dist/generators/documentation/templates/architectureTemplate.d.ts +3 -0
- package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/architectureTemplate.js +66 -0
- package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/common.d.ts +7 -0
- package/dist/generators/documentation/templates/common.d.ts.map +1 -0
- package/dist/generators/documentation/templates/common.js +58 -0
- package/dist/generators/documentation/templates/common.js.map +1 -0
- package/dist/generators/documentation/templates/dataFlowTemplate.d.ts +3 -0
- package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/dataFlowTemplate.js +55 -0
- package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts +2 -0
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +59 -0
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/frontMatter.d.ts +11 -0
- package/dist/generators/documentation/templates/frontMatter.d.ts.map +1 -0
- package/dist/generators/documentation/templates/frontMatter.js +29 -0
- package/dist/generators/documentation/templates/frontMatter.js.map +1 -0
- package/dist/generators/documentation/templates/glossaryTemplate.d.ts +3 -0
- package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/glossaryTemplate.js +55 -0
- package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/index.d.ts +11 -0
- package/dist/generators/documentation/templates/index.d.ts.map +1 -0
- package/dist/generators/documentation/templates/index.js +22 -0
- package/dist/generators/documentation/templates/index.js.map +1 -0
- package/dist/generators/documentation/templates/indexTemplate.d.ts +3 -0
- package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/indexTemplate.js +56 -0
- package/dist/generators/documentation/templates/indexTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts +3 -0
- package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/projectOverviewTemplate.js +68 -0
- package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/securityTemplate.d.ts +2 -0
- package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/securityTemplate.js +53 -0
- package/dist/generators/documentation/templates/securityTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/testingTemplate.d.ts +2 -0
- package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/testingTemplate.js +59 -0
- package/dist/generators/documentation/templates/testingTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/toolingTemplate.d.ts +2 -0
- package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -0
- package/dist/generators/documentation/templates/toolingTemplate.js +56 -0
- package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -0
- package/dist/generators/documentation/templates/types.d.ts +23 -0
- package/dist/generators/documentation/templates/types.d.ts.map +1 -0
- package/dist/generators/documentation/templates/types.js +3 -0
- package/dist/generators/documentation/templates/types.js.map +1 -0
- package/dist/generators/documentation/templates.d.ts +31 -0
- package/dist/generators/documentation/templates.d.ts.map +1 -0
- package/dist/generators/documentation/templates.js +566 -0
- package/dist/generators/documentation/templates.js.map +1 -0
- package/dist/generators/plans/index.d.ts +2 -0
- package/dist/generators/plans/index.d.ts.map +1 -0
- package/dist/generators/plans/index.js +6 -0
- package/dist/generators/plans/index.js.map +1 -0
- package/dist/generators/plans/planGenerator.d.ts +22 -0
- package/dist/generators/plans/planGenerator.d.ts.map +1 -0
- package/dist/generators/plans/planGenerator.js +109 -0
- package/dist/generators/plans/planGenerator.js.map +1 -0
- package/dist/generators/plans/templates/indexTemplate.d.ts +3 -0
- package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -0
- package/dist/generators/plans/templates/indexTemplate.js +36 -0
- package/dist/generators/plans/templates/indexTemplate.js.map +1 -0
- package/dist/generators/plans/templates/planTemplate.d.ts +3 -0
- package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -0
- package/dist/generators/plans/templates/planTemplate.js +83 -0
- package/dist/generators/plans/templates/planTemplate.js.map +1 -0
- package/dist/generators/plans/templates/types.d.ts +19 -0
- package/dist/generators/plans/templates/types.d.ts.map +1 -0
- package/dist/generators/plans/templates/types.js +3 -0
- package/dist/generators/plans/templates/types.js.map +1 -0
- package/dist/generators/shared/contextGenerator.d.ts +2 -7
- package/dist/generators/shared/contextGenerator.d.ts.map +1 -1
- package/dist/generators/shared/contextGenerator.js +2 -98
- package/dist/generators/shared/contextGenerator.js.map +1 -1
- package/dist/generators/shared/directoryTemplateHelpers.d.ts +2 -0
- package/dist/generators/shared/directoryTemplateHelpers.d.ts.map +1 -0
- package/dist/generators/shared/directoryTemplateHelpers.js +12 -0
- package/dist/generators/shared/directoryTemplateHelpers.js.map +1 -0
- package/dist/generators/shared/index.d.ts +1 -0
- package/dist/generators/shared/index.d.ts.map +1 -1
- package/dist/generators/shared/index.js +3 -1
- package/dist/generators/shared/index.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1300 -609
- package/dist/index.js.map +1 -1
- package/dist/utils/cliUI.d.ts +6 -4
- package/dist/utils/cliUI.d.ts.map +1 -1
- package/dist/utils/cliUI.js +71 -56
- package/dist/utils/cliUI.js.map +1 -1
- package/dist/utils/i18n.d.ts +181 -0
- package/dist/utils/i18n.d.ts.map +1 -0
- package/dist/utils/i18n.js +401 -0
- package/dist/utils/i18n.js.map +1 -0
- package/package.json +26 -23
- package/prompts/update_plan_prompt.md +42 -0
- package/prompts/update_scaffold_prompt.md +48 -0
- package/dist/generators/agentGenerator.d.ts +0 -23
- package/dist/generators/agentGenerator.d.ts.map +0 -1
- package/dist/generators/agentGenerator.js +0 -357
- package/dist/generators/agentGenerator.js.map +0 -1
- package/dist/generators/documentation/enhancedDocumentationGenerator.d.ts +0 -21
- package/dist/generators/documentation/enhancedDocumentationGenerator.d.ts.map +0 -1
- package/dist/generators/documentation/enhancedDocumentationGenerator.js +0 -216
- package/dist/generators/documentation/enhancedDocumentationGenerator.js.map +0 -1
- package/dist/generators/documentation/newDocumentationTemplates.d.ts +0 -19
- package/dist/generators/documentation/newDocumentationTemplates.d.ts.map +0 -1
- package/dist/generators/documentation/newDocumentationTemplates.js +0 -307
- package/dist/generators/documentation/newDocumentationTemplates.js.map +0 -1
- package/dist/generators/documentationGenerator.d.ts +0 -22
- package/dist/generators/documentationGenerator.d.ts.map +0 -1
- package/dist/generators/documentationGenerator.js +0 -235
- package/dist/generators/documentationGenerator.js.map +0 -1
- package/dist/generators/documentationTemplates.d.ts +0 -16
- package/dist/generators/documentationTemplates.d.ts.map +0 -1
- package/dist/generators/documentationTemplates.js +0 -326
- package/dist/generators/documentationTemplates.js.map +0 -1
- package/dist/generators/documentationUtils.d.ts +0 -7
- package/dist/generators/documentationUtils.d.ts.map +0 -1
- package/dist/generators/documentationUtils.js +0 -38
- package/dist/generators/documentationUtils.js.map +0 -1
- package/dist/generators/incrementalDocumentationGenerator.d.ts +0 -33
- package/dist/generators/incrementalDocumentationGenerator.d.ts.map +0 -1
- package/dist/generators/incrementalDocumentationGenerator.js +0 -400
- package/dist/generators/incrementalDocumentationGenerator.js.map +0 -1
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
export type Locale = 'en' | 'pt-BR';
|
|
2
|
+
export declare const SUPPORTED_LOCALES: Locale[];
|
|
3
|
+
export declare const DEFAULT_LOCALE: Locale;
|
|
4
|
+
declare const englishMessages: {
|
|
5
|
+
readonly 'cli.name': "AI Coders Context by aicoders.academy";
|
|
6
|
+
readonly 'cli.tagline': "Scaffold documentation and agent playbooks with or without LLM assistance";
|
|
7
|
+
readonly 'cli.description': "Scaffold documentation and agent playbooks for your repository";
|
|
8
|
+
readonly 'global.options.lang': "Language for CLI output (en or pt-BR)";
|
|
9
|
+
readonly 'ui.version': "Version {version}";
|
|
10
|
+
readonly 'ui.projectConfiguration.title': "📋 Project Configuration:";
|
|
11
|
+
readonly 'ui.projectConfiguration.repository': "Repository:";
|
|
12
|
+
readonly 'ui.projectConfiguration.output': "Output:";
|
|
13
|
+
readonly 'ui.projectConfiguration.mode': "Scaffold Mode:";
|
|
14
|
+
readonly 'ui.progress.starting': "Starting...";
|
|
15
|
+
readonly 'ui.analysis.complete.title': "📊 Repository Analysis Complete";
|
|
16
|
+
readonly 'ui.analysis.files': "Files";
|
|
17
|
+
readonly 'ui.analysis.directories': "Directories";
|
|
18
|
+
readonly 'ui.analysis.totalSize': "Total Size";
|
|
19
|
+
readonly 'ui.fileTypeDistribution.title': "📁 File Type Distribution:";
|
|
20
|
+
readonly 'ui.generationSummary.title': "✨ Scaffold Complete!";
|
|
21
|
+
readonly 'ui.generationSummary.documentation': "Documentation files";
|
|
22
|
+
readonly 'ui.generationSummary.agents': "Agent playbooks";
|
|
23
|
+
readonly 'ui.generationSummary.timeElapsed': "Time elapsed";
|
|
24
|
+
readonly 'ui.generationSummary.nextStep': "Next step: customize the generated templates to match your project.";
|
|
25
|
+
readonly 'ui.error.title': "❌ Error Occurred";
|
|
26
|
+
readonly 'commands.init.description': "Generate docs and agent scaffolding for a repository";
|
|
27
|
+
readonly 'commands.init.arguments.repoPath': "Path to the repository to analyze";
|
|
28
|
+
readonly 'commands.init.arguments.type': "Scaffold type: \"docs\", \"agents\", or \"both\" (default)";
|
|
29
|
+
readonly 'commands.init.options.output': "Output directory for generated assets";
|
|
30
|
+
readonly 'commands.init.options.docs': "Doc keys to scaffold (default: all)";
|
|
31
|
+
readonly 'commands.init.options.agents': "Agent types to scaffold (default: all)";
|
|
32
|
+
readonly 'commands.init.options.exclude': "Glob patterns to exclude from analysis";
|
|
33
|
+
readonly 'commands.init.options.include': "Glob patterns to include during analysis";
|
|
34
|
+
readonly 'commands.init.options.verbose': "Enable verbose logging";
|
|
35
|
+
readonly 'commands.scaffold.description': "Alias for init";
|
|
36
|
+
readonly 'commands.fill.description': "Use an LLM to fill generated docs and agent playbooks with the latest repo context";
|
|
37
|
+
readonly 'commands.fill.arguments.repoPath': "Path to the repository root used to build context";
|
|
38
|
+
readonly 'commands.fill.options.output': "Scaffold directory containing docs/ and agents/";
|
|
39
|
+
readonly 'commands.fill.options.apiKey': "API key for the LLM provider";
|
|
40
|
+
readonly 'commands.fill.options.model': "LLM model to use";
|
|
41
|
+
readonly 'commands.fill.options.provider': "LLM provider (openrouter, openai, anthropic, gemini, grok)";
|
|
42
|
+
readonly 'commands.fill.options.baseUrl': "Custom base URL for provider APIs";
|
|
43
|
+
readonly 'commands.fill.options.prompt': "Path to an instruction prompt";
|
|
44
|
+
readonly 'commands.fill.options.dryRun': "Preview updates without writing files";
|
|
45
|
+
readonly 'commands.fill.options.all': "Process every doc/agent file even if no TODO markers are found";
|
|
46
|
+
readonly 'commands.fill.options.limit': "Maximum number of files to process";
|
|
47
|
+
readonly 'commands.fill.options.docs': "Doc keys to update (default: all)";
|
|
48
|
+
readonly 'commands.fill.options.agents': "Agent types to update (default: all)";
|
|
49
|
+
readonly 'commands.fill.options.exclude': "Glob patterns to exclude from repository analysis";
|
|
50
|
+
readonly 'commands.fill.options.include': "Glob patterns to include during analysis";
|
|
51
|
+
readonly 'commands.fill.options.verbose': "Enable verbose logging";
|
|
52
|
+
readonly 'commands.plan.description': "Create a development plan that links documentation and agent playbooks";
|
|
53
|
+
readonly 'commands.plan.arguments.planName': "Name of the plan (used to create the file slug)";
|
|
54
|
+
readonly 'commands.plan.options.output': "Scaffold directory containing docs/ and agents/";
|
|
55
|
+
readonly 'commands.plan.options.title': "Custom title for the plan document";
|
|
56
|
+
readonly 'commands.plan.options.summary': "Seed summary for the plan header";
|
|
57
|
+
readonly 'commands.plan.options.agents': "Agent types to highlight (default: all)";
|
|
58
|
+
readonly 'commands.plan.options.docs': "Doc keys to highlight (default: all)";
|
|
59
|
+
readonly 'commands.plan.options.force': "Overwrite the plan if it already exists (scaffold mode)";
|
|
60
|
+
readonly 'commands.plan.options.fill': "Use an LLM to fill or update the plan instead of scaffolding";
|
|
61
|
+
readonly 'commands.plan.options.repo': "Repository root to summarize for additional context";
|
|
62
|
+
readonly 'commands.plan.options.apiKey': "API key for the LLM provider";
|
|
63
|
+
readonly 'commands.plan.options.model': "LLM model to use";
|
|
64
|
+
readonly 'commands.plan.options.provider': "LLM provider (openrouter, openai, anthropic, gemini, grok)";
|
|
65
|
+
readonly 'commands.plan.options.baseUrl': "Custom base URL for provider APIs";
|
|
66
|
+
readonly 'commands.plan.options.prompt': "Path to a plan update instruction prompt";
|
|
67
|
+
readonly 'commands.plan.options.dryRun': "Preview updates without writing files";
|
|
68
|
+
readonly 'commands.plan.options.include': "Glob patterns to include during repository analysis";
|
|
69
|
+
readonly 'commands.plan.options.exclude': "Glob patterns to exclude from repository analysis";
|
|
70
|
+
readonly 'commands.plan.options.verbose': "Enable verbose logging";
|
|
71
|
+
readonly 'errors.init.scaffoldFailed': "Failed to scaffold repository assets";
|
|
72
|
+
readonly 'errors.fill.failed': "Failed to fill documentation with LLM assistance";
|
|
73
|
+
readonly 'errors.plan.creationFailed': "Failed to create plan template";
|
|
74
|
+
readonly 'errors.init.invalidType': "Invalid scaffold type \"{value}\". Expected one of: {allowed}";
|
|
75
|
+
readonly 'errors.common.repoMissing': "Repository path does not exist: {path}";
|
|
76
|
+
readonly 'warnings.agents.unknown': "Ignoring unknown agent types: {values}";
|
|
77
|
+
readonly 'warnings.docs.unknown': "Ignoring unknown docs: {values}";
|
|
78
|
+
readonly 'warnings.scaffold.noneSelected': "No documentation or agent playbooks selected. Nothing to scaffold.";
|
|
79
|
+
readonly 'steps.init.analyze': "Analyzing repository structure";
|
|
80
|
+
readonly 'steps.init.docs': "Scaffolding documentation";
|
|
81
|
+
readonly 'steps.init.agents': "Scaffolding agent playbooks";
|
|
82
|
+
readonly 'spinner.repo.scanning': "Scanning repository...";
|
|
83
|
+
readonly 'spinner.repo.scanComplete': "Found {fileCount} files across {directoryCount} directories";
|
|
84
|
+
readonly 'spinner.docs.creating': "Creating docs directory and templates...";
|
|
85
|
+
readonly 'spinner.docs.created': "Documentation scaffold created ({count} files)";
|
|
86
|
+
readonly 'spinner.agents.creating': "Creating agent directory and templates...";
|
|
87
|
+
readonly 'spinner.agents.created': "Agent scaffold created ({count} files)";
|
|
88
|
+
readonly 'spinner.plan.creating': "Creating plan template...";
|
|
89
|
+
readonly 'spinner.plan.created': "Plan template created";
|
|
90
|
+
readonly 'spinner.plan.creationFailed': "Failed to create plan template";
|
|
91
|
+
readonly 'success.scaffold.ready': "Scaffold ready in {path}";
|
|
92
|
+
readonly 'success.plan.createdAt': "Plan created at {path}";
|
|
93
|
+
readonly 'errors.fill.missingDocsScaffold': "Documentation scaffold not found. Run `ai-context init` first.";
|
|
94
|
+
readonly 'errors.fill.missingAgentsScaffold': "Agent scaffold not found. Run `ai-context init` first.";
|
|
95
|
+
readonly 'steps.fill.analyze': "Analyzing repository structure";
|
|
96
|
+
readonly 'warnings.fill.noTargets': "No Markdown files required updates. Use --all or add TODO markers to trigger LLM assistance.";
|
|
97
|
+
readonly 'steps.fill.processFiles': "Updating {count} files with {model}";
|
|
98
|
+
readonly 'spinner.fill.processing': "Processing {path}...";
|
|
99
|
+
readonly 'spinner.fill.noContent': "No content received for {path}";
|
|
100
|
+
readonly 'messages.fill.emptyResponse': "Empty response from LLM";
|
|
101
|
+
readonly 'spinner.fill.dryRunPreview': "Dry run - preview for {path}";
|
|
102
|
+
readonly 'messages.fill.previewStart': "--- Preview Start ---";
|
|
103
|
+
readonly 'messages.fill.previewEnd': "--- Preview End ---";
|
|
104
|
+
readonly 'spinner.fill.updated': "Updated {path}";
|
|
105
|
+
readonly 'spinner.fill.failed': "Failed {path}";
|
|
106
|
+
readonly 'steps.fill.summary': "Summarizing LLM usage";
|
|
107
|
+
readonly 'success.fill.completed': "LLM-assisted update complete. Review the changes and commit when ready.";
|
|
108
|
+
readonly 'errors.plan.invalidName': "Plan name must contain at least one alphanumeric character.";
|
|
109
|
+
readonly 'messages.plan.regenerated': "Regenerated {path} before LLM fill.";
|
|
110
|
+
readonly 'messages.plan.created': "Created {path} before LLM fill.";
|
|
111
|
+
readonly 'info.plan.scaffolded.title': "Plan scaffolded";
|
|
112
|
+
readonly 'errors.plan.missingPlansDir': "Plans directory not found. Run `ai-context plan <name>` to create one.";
|
|
113
|
+
readonly 'errors.plan.notFound': "Plan not found. Expected {expected}.";
|
|
114
|
+
readonly 'steps.plan.summary': "Summarizing repository state";
|
|
115
|
+
readonly 'spinner.planFill.analyzingRepo': "Analyzing repository...";
|
|
116
|
+
readonly 'spinner.planFill.summaryReady': "Repository summary ready";
|
|
117
|
+
readonly 'steps.plan.update': "Updating {path} with {model}";
|
|
118
|
+
readonly 'spinner.planFill.updating': "Filling {path}...";
|
|
119
|
+
readonly 'spinner.planFill.noContent': "No content received from LLM";
|
|
120
|
+
readonly 'spinner.planFill.dryRun': "Dry run - preview follows";
|
|
121
|
+
readonly 'spinner.planFill.updated': "Updated {path}";
|
|
122
|
+
readonly 'spinner.planFill.failed': "Failed to fill plan";
|
|
123
|
+
readonly 'steps.plan.summaryResults': "Summarizing LLM usage";
|
|
124
|
+
readonly 'success.plan.filled': "Plan fill complete. Review the updates and commit when ready.";
|
|
125
|
+
readonly 'errors.commands.analyzeRemoved': "The analyze command has been removed in the scaffolding-only version of ai-context.";
|
|
126
|
+
readonly 'errors.commands.updateRemoved': "The update command is no longer supported. Re-run `ai-context init` to refresh scaffolds.";
|
|
127
|
+
readonly 'errors.commands.previewRemoved': "Preview mode has been retired. Use the generated docs and agent templates directly.";
|
|
128
|
+
readonly 'errors.commands.guidelinesRemoved': "Guidelines generation relied on LLMs and is no longer available.";
|
|
129
|
+
readonly 'errors.cli.executionFailed': "CLI execution failed";
|
|
130
|
+
readonly 'warnings.interactive.nothingSelected': "Nothing selected. Aborting.";
|
|
131
|
+
readonly 'prompts.main.action': "What would you like to do?";
|
|
132
|
+
readonly 'prompts.main.choice.scaffold': "Generate documentation/agent scaffolding";
|
|
133
|
+
readonly 'prompts.main.choice.fill': "Fill docs and agents with an LLM";
|
|
134
|
+
readonly 'prompts.main.choice.plan': "Create a development plan";
|
|
135
|
+
readonly 'prompts.scaffold.repoPath': "Repository path to analyze";
|
|
136
|
+
readonly 'prompts.scaffold.includeDocs': "Generate documentation scaffolding?";
|
|
137
|
+
readonly 'prompts.scaffold.selectDocs': "Select documentation guides to scaffold";
|
|
138
|
+
readonly 'prompts.scaffold.includeAgents': "Generate agent playbooks?";
|
|
139
|
+
readonly 'prompts.scaffold.selectAgents': "Select agent playbooks to scaffold";
|
|
140
|
+
readonly 'prompts.common.verbose': "Enable verbose logging?";
|
|
141
|
+
readonly 'prompts.fill.repoPath': "Repository path containing the scaffold";
|
|
142
|
+
readonly 'prompts.fill.promptPath': "Instruction prompt to follow";
|
|
143
|
+
readonly 'prompts.fill.dryRun': "Preview changes without writing files?";
|
|
144
|
+
readonly 'prompts.fill.processAll': "Process every Markdown file regardless of markers?";
|
|
145
|
+
readonly 'prompts.fill.limit': "Maximum number of files to update (leave blank for all)";
|
|
146
|
+
readonly 'prompts.fill.includeDocs': "Include documentation files?";
|
|
147
|
+
readonly 'prompts.fill.selectDocs': "Select documentation guides to update";
|
|
148
|
+
readonly 'prompts.fill.includeAgents': "Include agent playbooks?";
|
|
149
|
+
readonly 'prompts.fill.selectAgents': "Select agent playbooks to update";
|
|
150
|
+
readonly 'prompts.fill.overrideModel': "Override provider/model configuration?";
|
|
151
|
+
readonly 'prompts.fill.provider': "Select provider";
|
|
152
|
+
readonly 'prompts.fill.model': "Model identifier";
|
|
153
|
+
readonly 'prompts.fill.provideApiKey': "Provide an API key for this run?";
|
|
154
|
+
readonly 'prompts.fill.apiKey': "API key";
|
|
155
|
+
readonly 'prompts.plan.name': "Plan name (used for the file slug)";
|
|
156
|
+
readonly 'prompts.plan.mode': "How would you like to work with this plan?";
|
|
157
|
+
readonly 'prompts.plan.modeScaffold': "Scaffold a plan template";
|
|
158
|
+
readonly 'prompts.plan.modeFill': "Fill an existing plan with LLM assistance";
|
|
159
|
+
readonly 'prompts.plan.summary': "Optional summary to seed the plan (leave blank to add later)";
|
|
160
|
+
readonly 'prompts.plan.includeAgents': "Reference agent playbooks in the plan?";
|
|
161
|
+
readonly 'prompts.plan.selectAgents': "Select agent playbooks to highlight";
|
|
162
|
+
readonly 'prompts.plan.includeDocs': "Link documentation guides in the plan?";
|
|
163
|
+
readonly 'prompts.plan.selectDocs': "Select documentation guides to reference";
|
|
164
|
+
readonly 'prompts.plan.repoPath': "Repository root for context";
|
|
165
|
+
readonly 'prompts.plan.dryRun': "Preview updates without writing files?";
|
|
166
|
+
readonly 'prompts.language.select': "Choose the CLI language / Escolha o idioma do CLI";
|
|
167
|
+
readonly 'prompts.language.option.en': "English / Inglês";
|
|
168
|
+
readonly 'prompts.language.option.pt-BR': "Portuguese (Brazil) / Português (Brasil)";
|
|
169
|
+
readonly 'errors.plan.fillFailed': "Failed to fill plan with LLM assistance";
|
|
170
|
+
readonly 'errors.fill.promptMissing': "Prompt file not found at {path}.";
|
|
171
|
+
readonly 'errors.fill.apiKeyMissing': "{provider} API key is required. Set one of {envVars} or use --api-key.";
|
|
172
|
+
};
|
|
173
|
+
export type TranslationKey = keyof typeof englishMessages;
|
|
174
|
+
export type TranslateParams = Record<string, string | number | undefined>;
|
|
175
|
+
export type TranslateFn = (key: TranslationKey, params?: TranslateParams) => string;
|
|
176
|
+
export declare function createTranslator(locale: Locale): TranslateFn;
|
|
177
|
+
export declare function normalizeLocale(locale: string): Locale;
|
|
178
|
+
export declare function detectLocale(argv: string[], envLocale?: string | null): Locale;
|
|
179
|
+
export declare function isSupportedLocale(locale: string): boolean;
|
|
180
|
+
export {};
|
|
181
|
+
//# sourceMappingURL=i18n.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;AAEpC,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAAoB,CAAC;AAC3D,eAAO,MAAM,cAAc,EAAE,MAAa,CAAC;AAE3C,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwKX,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,eAAe,CAAC;AAmL1D,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;AAE1E,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,eAAe,KAAK,MAAM,CAAC;AAEpF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAQ5D;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAS9E;AA4BD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzD"}
|
|
@@ -0,0 +1,401 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_LOCALE = exports.SUPPORTED_LOCALES = void 0;
|
|
4
|
+
exports.createTranslator = createTranslator;
|
|
5
|
+
exports.normalizeLocale = normalizeLocale;
|
|
6
|
+
exports.detectLocale = detectLocale;
|
|
7
|
+
exports.isSupportedLocale = isSupportedLocale;
|
|
8
|
+
exports.SUPPORTED_LOCALES = ['en', 'pt-BR'];
|
|
9
|
+
exports.DEFAULT_LOCALE = 'en';
|
|
10
|
+
const englishMessages = {
|
|
11
|
+
'cli.name': 'AI Coders Context by aicoders.academy',
|
|
12
|
+
'cli.tagline': 'Scaffold documentation and agent playbooks with or without LLM assistance',
|
|
13
|
+
'cli.description': 'Scaffold documentation and agent playbooks for your repository',
|
|
14
|
+
'global.options.lang': 'Language for CLI output (en or pt-BR)',
|
|
15
|
+
'ui.version': 'Version {version}',
|
|
16
|
+
'ui.projectConfiguration.title': '📋 Project Configuration:',
|
|
17
|
+
'ui.projectConfiguration.repository': 'Repository:',
|
|
18
|
+
'ui.projectConfiguration.output': 'Output:',
|
|
19
|
+
'ui.projectConfiguration.mode': 'Scaffold Mode:',
|
|
20
|
+
'ui.progress.starting': 'Starting...',
|
|
21
|
+
'ui.analysis.complete.title': '📊 Repository Analysis Complete',
|
|
22
|
+
'ui.analysis.files': 'Files',
|
|
23
|
+
'ui.analysis.directories': 'Directories',
|
|
24
|
+
'ui.analysis.totalSize': 'Total Size',
|
|
25
|
+
'ui.fileTypeDistribution.title': '📁 File Type Distribution:',
|
|
26
|
+
'ui.generationSummary.title': '✨ Scaffold Complete!',
|
|
27
|
+
'ui.generationSummary.documentation': 'Documentation files',
|
|
28
|
+
'ui.generationSummary.agents': 'Agent playbooks',
|
|
29
|
+
'ui.generationSummary.timeElapsed': 'Time elapsed',
|
|
30
|
+
'ui.generationSummary.nextStep': 'Next step: customize the generated templates to match your project.',
|
|
31
|
+
'ui.error.title': '❌ Error Occurred',
|
|
32
|
+
'commands.init.description': 'Generate docs and agent scaffolding for a repository',
|
|
33
|
+
'commands.init.arguments.repoPath': 'Path to the repository to analyze',
|
|
34
|
+
'commands.init.arguments.type': 'Scaffold type: "docs", "agents", or "both" (default)',
|
|
35
|
+
'commands.init.options.output': 'Output directory for generated assets',
|
|
36
|
+
'commands.init.options.docs': 'Doc keys to scaffold (default: all)',
|
|
37
|
+
'commands.init.options.agents': 'Agent types to scaffold (default: all)',
|
|
38
|
+
'commands.init.options.exclude': 'Glob patterns to exclude from analysis',
|
|
39
|
+
'commands.init.options.include': 'Glob patterns to include during analysis',
|
|
40
|
+
'commands.init.options.verbose': 'Enable verbose logging',
|
|
41
|
+
'commands.scaffold.description': 'Alias for init',
|
|
42
|
+
'commands.fill.description': 'Use an LLM to fill generated docs and agent playbooks with the latest repo context',
|
|
43
|
+
'commands.fill.arguments.repoPath': 'Path to the repository root used to build context',
|
|
44
|
+
'commands.fill.options.output': 'Scaffold directory containing docs/ and agents/',
|
|
45
|
+
'commands.fill.options.apiKey': 'API key for the LLM provider',
|
|
46
|
+
'commands.fill.options.model': 'LLM model to use',
|
|
47
|
+
'commands.fill.options.provider': 'LLM provider (openrouter, openai, anthropic, gemini, grok)',
|
|
48
|
+
'commands.fill.options.baseUrl': 'Custom base URL for provider APIs',
|
|
49
|
+
'commands.fill.options.prompt': 'Path to an instruction prompt',
|
|
50
|
+
'commands.fill.options.dryRun': 'Preview updates without writing files',
|
|
51
|
+
'commands.fill.options.all': 'Process every doc/agent file even if no TODO markers are found',
|
|
52
|
+
'commands.fill.options.limit': 'Maximum number of files to process',
|
|
53
|
+
'commands.fill.options.docs': 'Doc keys to update (default: all)',
|
|
54
|
+
'commands.fill.options.agents': 'Agent types to update (default: all)',
|
|
55
|
+
'commands.fill.options.exclude': 'Glob patterns to exclude from repository analysis',
|
|
56
|
+
'commands.fill.options.include': 'Glob patterns to include during analysis',
|
|
57
|
+
'commands.fill.options.verbose': 'Enable verbose logging',
|
|
58
|
+
'commands.plan.description': 'Create a development plan that links documentation and agent playbooks',
|
|
59
|
+
'commands.plan.arguments.planName': 'Name of the plan (used to create the file slug)',
|
|
60
|
+
'commands.plan.options.output': 'Scaffold directory containing docs/ and agents/',
|
|
61
|
+
'commands.plan.options.title': 'Custom title for the plan document',
|
|
62
|
+
'commands.plan.options.summary': 'Seed summary for the plan header',
|
|
63
|
+
'commands.plan.options.agents': 'Agent types to highlight (default: all)',
|
|
64
|
+
'commands.plan.options.docs': 'Doc keys to highlight (default: all)',
|
|
65
|
+
'commands.plan.options.force': 'Overwrite the plan if it already exists (scaffold mode)',
|
|
66
|
+
'commands.plan.options.fill': 'Use an LLM to fill or update the plan instead of scaffolding',
|
|
67
|
+
'commands.plan.options.repo': 'Repository root to summarize for additional context',
|
|
68
|
+
'commands.plan.options.apiKey': 'API key for the LLM provider',
|
|
69
|
+
'commands.plan.options.model': 'LLM model to use',
|
|
70
|
+
'commands.plan.options.provider': 'LLM provider (openrouter, openai, anthropic, gemini, grok)',
|
|
71
|
+
'commands.plan.options.baseUrl': 'Custom base URL for provider APIs',
|
|
72
|
+
'commands.plan.options.prompt': 'Path to a plan update instruction prompt',
|
|
73
|
+
'commands.plan.options.dryRun': 'Preview updates without writing files',
|
|
74
|
+
'commands.plan.options.include': 'Glob patterns to include during repository analysis',
|
|
75
|
+
'commands.plan.options.exclude': 'Glob patterns to exclude from repository analysis',
|
|
76
|
+
'commands.plan.options.verbose': 'Enable verbose logging',
|
|
77
|
+
'errors.init.scaffoldFailed': 'Failed to scaffold repository assets',
|
|
78
|
+
'errors.fill.failed': 'Failed to fill documentation with LLM assistance',
|
|
79
|
+
'errors.plan.creationFailed': 'Failed to create plan template',
|
|
80
|
+
'errors.init.invalidType': 'Invalid scaffold type "{value}". Expected one of: {allowed}',
|
|
81
|
+
'errors.common.repoMissing': 'Repository path does not exist: {path}',
|
|
82
|
+
'warnings.agents.unknown': 'Ignoring unknown agent types: {values}',
|
|
83
|
+
'warnings.docs.unknown': 'Ignoring unknown docs: {values}',
|
|
84
|
+
'warnings.scaffold.noneSelected': 'No documentation or agent playbooks selected. Nothing to scaffold.',
|
|
85
|
+
'steps.init.analyze': 'Analyzing repository structure',
|
|
86
|
+
'steps.init.docs': 'Scaffolding documentation',
|
|
87
|
+
'steps.init.agents': 'Scaffolding agent playbooks',
|
|
88
|
+
'spinner.repo.scanning': 'Scanning repository...',
|
|
89
|
+
'spinner.repo.scanComplete': 'Found {fileCount} files across {directoryCount} directories',
|
|
90
|
+
'spinner.docs.creating': 'Creating docs directory and templates...',
|
|
91
|
+
'spinner.docs.created': 'Documentation scaffold created ({count} files)',
|
|
92
|
+
'spinner.agents.creating': 'Creating agent directory and templates...',
|
|
93
|
+
'spinner.agents.created': 'Agent scaffold created ({count} files)',
|
|
94
|
+
'spinner.plan.creating': 'Creating plan template...',
|
|
95
|
+
'spinner.plan.created': 'Plan template created',
|
|
96
|
+
'spinner.plan.creationFailed': 'Failed to create plan template',
|
|
97
|
+
'success.scaffold.ready': 'Scaffold ready in {path}',
|
|
98
|
+
'success.plan.createdAt': 'Plan created at {path}',
|
|
99
|
+
'errors.fill.missingDocsScaffold': 'Documentation scaffold not found. Run `ai-context init` first.',
|
|
100
|
+
'errors.fill.missingAgentsScaffold': 'Agent scaffold not found. Run `ai-context init` first.',
|
|
101
|
+
'steps.fill.analyze': 'Analyzing repository structure',
|
|
102
|
+
'warnings.fill.noTargets': 'No Markdown files required updates. Use --all or add TODO markers to trigger LLM assistance.',
|
|
103
|
+
'steps.fill.processFiles': 'Updating {count} files with {model}',
|
|
104
|
+
'spinner.fill.processing': 'Processing {path}...',
|
|
105
|
+
'spinner.fill.noContent': 'No content received for {path}',
|
|
106
|
+
'messages.fill.emptyResponse': 'Empty response from LLM',
|
|
107
|
+
'spinner.fill.dryRunPreview': 'Dry run - preview for {path}',
|
|
108
|
+
'messages.fill.previewStart': '--- Preview Start ---',
|
|
109
|
+
'messages.fill.previewEnd': '--- Preview End ---',
|
|
110
|
+
'spinner.fill.updated': 'Updated {path}',
|
|
111
|
+
'spinner.fill.failed': 'Failed {path}',
|
|
112
|
+
'steps.fill.summary': 'Summarizing LLM usage',
|
|
113
|
+
'success.fill.completed': 'LLM-assisted update complete. Review the changes and commit when ready.',
|
|
114
|
+
'errors.plan.invalidName': 'Plan name must contain at least one alphanumeric character.',
|
|
115
|
+
'messages.plan.regenerated': 'Regenerated {path} before LLM fill.',
|
|
116
|
+
'messages.plan.created': 'Created {path} before LLM fill.',
|
|
117
|
+
'info.plan.scaffolded.title': 'Plan scaffolded',
|
|
118
|
+
'errors.plan.missingPlansDir': 'Plans directory not found. Run `ai-context plan <name>` to create one.',
|
|
119
|
+
'errors.plan.notFound': 'Plan not found. Expected {expected}.',
|
|
120
|
+
'steps.plan.summary': 'Summarizing repository state',
|
|
121
|
+
'spinner.planFill.analyzingRepo': 'Analyzing repository...',
|
|
122
|
+
'spinner.planFill.summaryReady': 'Repository summary ready',
|
|
123
|
+
'steps.plan.update': 'Updating {path} with {model}',
|
|
124
|
+
'spinner.planFill.updating': 'Filling {path}...',
|
|
125
|
+
'spinner.planFill.noContent': 'No content received from LLM',
|
|
126
|
+
'spinner.planFill.dryRun': 'Dry run - preview follows',
|
|
127
|
+
'spinner.planFill.updated': 'Updated {path}',
|
|
128
|
+
'spinner.planFill.failed': 'Failed to fill plan',
|
|
129
|
+
'steps.plan.summaryResults': 'Summarizing LLM usage',
|
|
130
|
+
'success.plan.filled': 'Plan fill complete. Review the updates and commit when ready.',
|
|
131
|
+
'errors.commands.analyzeRemoved': 'The analyze command has been removed in the scaffolding-only version of ai-context.',
|
|
132
|
+
'errors.commands.updateRemoved': 'The update command is no longer supported. Re-run `ai-context init` to refresh scaffolds.',
|
|
133
|
+
'errors.commands.previewRemoved': 'Preview mode has been retired. Use the generated docs and agent templates directly.',
|
|
134
|
+
'errors.commands.guidelinesRemoved': 'Guidelines generation relied on LLMs and is no longer available.',
|
|
135
|
+
'errors.cli.executionFailed': 'CLI execution failed',
|
|
136
|
+
'warnings.interactive.nothingSelected': 'Nothing selected. Aborting.',
|
|
137
|
+
'prompts.main.action': 'What would you like to do?',
|
|
138
|
+
'prompts.main.choice.scaffold': 'Generate documentation/agent scaffolding',
|
|
139
|
+
'prompts.main.choice.fill': 'Fill docs and agents with an LLM',
|
|
140
|
+
'prompts.main.choice.plan': 'Create a development plan',
|
|
141
|
+
'prompts.scaffold.repoPath': 'Repository path to analyze',
|
|
142
|
+
'prompts.scaffold.includeDocs': 'Generate documentation scaffolding?',
|
|
143
|
+
'prompts.scaffold.selectDocs': 'Select documentation guides to scaffold',
|
|
144
|
+
'prompts.scaffold.includeAgents': 'Generate agent playbooks?',
|
|
145
|
+
'prompts.scaffold.selectAgents': 'Select agent playbooks to scaffold',
|
|
146
|
+
'prompts.common.verbose': 'Enable verbose logging?',
|
|
147
|
+
'prompts.fill.repoPath': 'Repository path containing the scaffold',
|
|
148
|
+
'prompts.fill.promptPath': 'Instruction prompt to follow',
|
|
149
|
+
'prompts.fill.dryRun': 'Preview changes without writing files?',
|
|
150
|
+
'prompts.fill.processAll': 'Process every Markdown file regardless of markers?',
|
|
151
|
+
'prompts.fill.limit': 'Maximum number of files to update (leave blank for all)',
|
|
152
|
+
'prompts.fill.includeDocs': 'Include documentation files?',
|
|
153
|
+
'prompts.fill.selectDocs': 'Select documentation guides to update',
|
|
154
|
+
'prompts.fill.includeAgents': 'Include agent playbooks?',
|
|
155
|
+
'prompts.fill.selectAgents': 'Select agent playbooks to update',
|
|
156
|
+
'prompts.fill.overrideModel': 'Override provider/model configuration?',
|
|
157
|
+
'prompts.fill.provider': 'Select provider',
|
|
158
|
+
'prompts.fill.model': 'Model identifier',
|
|
159
|
+
'prompts.fill.provideApiKey': 'Provide an API key for this run?',
|
|
160
|
+
'prompts.fill.apiKey': 'API key',
|
|
161
|
+
'prompts.plan.name': 'Plan name (used for the file slug)',
|
|
162
|
+
'prompts.plan.mode': 'How would you like to work with this plan?',
|
|
163
|
+
'prompts.plan.modeScaffold': 'Scaffold a plan template',
|
|
164
|
+
'prompts.plan.modeFill': 'Fill an existing plan with LLM assistance',
|
|
165
|
+
'prompts.plan.summary': 'Optional summary to seed the plan (leave blank to add later)',
|
|
166
|
+
'prompts.plan.includeAgents': 'Reference agent playbooks in the plan?',
|
|
167
|
+
'prompts.plan.selectAgents': 'Select agent playbooks to highlight',
|
|
168
|
+
'prompts.plan.includeDocs': 'Link documentation guides in the plan?',
|
|
169
|
+
'prompts.plan.selectDocs': 'Select documentation guides to reference',
|
|
170
|
+
'prompts.plan.repoPath': 'Repository root for context',
|
|
171
|
+
'prompts.plan.dryRun': 'Preview updates without writing files?',
|
|
172
|
+
'prompts.language.select': 'Choose the CLI language / Escolha o idioma do CLI',
|
|
173
|
+
'prompts.language.option.en': 'English / Inglês',
|
|
174
|
+
'prompts.language.option.pt-BR': 'Portuguese (Brazil) / Português (Brasil)',
|
|
175
|
+
'errors.plan.fillFailed': 'Failed to fill plan with LLM assistance',
|
|
176
|
+
'errors.fill.promptMissing': 'Prompt file not found at {path}.',
|
|
177
|
+
'errors.fill.apiKeyMissing': '{provider} API key is required. Set one of {envVars} or use --api-key.'
|
|
178
|
+
};
|
|
179
|
+
const portugueseMessages = {
|
|
180
|
+
'cli.name': 'AI Coders Context by aicoders.academy',
|
|
181
|
+
'cli.tagline': 'Gere documentação e playbooks de agentes com ou sem assistência de IA',
|
|
182
|
+
'cli.description': 'Crie bases de documentação e playbooks de agentes para o seu repositório',
|
|
183
|
+
'global.options.lang': 'Idioma para a saída do CLI (en ou pt-BR)',
|
|
184
|
+
'ui.version': 'Versão {version}',
|
|
185
|
+
'ui.projectConfiguration.title': '📋 Configuração do Projeto:',
|
|
186
|
+
'ui.projectConfiguration.repository': 'Repositório:',
|
|
187
|
+
'ui.projectConfiguration.output': 'Saída:',
|
|
188
|
+
'ui.projectConfiguration.mode': 'Modo de scaffold:',
|
|
189
|
+
'ui.progress.starting': 'Iniciando...',
|
|
190
|
+
'ui.analysis.complete.title': '📊 Análise do repositório concluída',
|
|
191
|
+
'ui.analysis.files': 'Arquivos',
|
|
192
|
+
'ui.analysis.directories': 'Diretórios',
|
|
193
|
+
'ui.analysis.totalSize': 'Tamanho total',
|
|
194
|
+
'ui.fileTypeDistribution.title': '📁 Distribuição de tipos de arquivo:',
|
|
195
|
+
'ui.generationSummary.title': '✨ Scaffold concluído!',
|
|
196
|
+
'ui.generationSummary.documentation': 'Arquivos de documentação',
|
|
197
|
+
'ui.generationSummary.agents': 'Playbooks de agente',
|
|
198
|
+
'ui.generationSummary.timeElapsed': 'Tempo decorrido',
|
|
199
|
+
'ui.generationSummary.nextStep': 'Próximo passo: personalize os templates gerados para o seu projeto.',
|
|
200
|
+
'ui.error.title': '❌ Ocorreu um erro',
|
|
201
|
+
'commands.init.description': 'Gerar bases de documentação e agentes para um repositório',
|
|
202
|
+
'commands.init.arguments.repoPath': 'Caminho do repositório a ser analisado',
|
|
203
|
+
'commands.init.arguments.type': 'Tipo de base: "docs", "agents" ou "both" (padrão)',
|
|
204
|
+
'commands.init.options.output': 'Diretório de saída para os artefatos gerados',
|
|
205
|
+
'commands.init.options.docs': 'Chaves de documentação a serem geradas (padrão: todas)',
|
|
206
|
+
'commands.init.options.agents': 'Tipos de agente a serem gerados (padrão: todos)',
|
|
207
|
+
'commands.init.options.exclude': 'Padrões glob para excluir da análise',
|
|
208
|
+
'commands.init.options.include': 'Padrões glob para incluir durante a análise',
|
|
209
|
+
'commands.init.options.verbose': 'Ativa logs detalhados',
|
|
210
|
+
'commands.scaffold.description': 'Alias para init',
|
|
211
|
+
'commands.fill.description': 'Usar um assistente de IA para preencher docs e agents com o contexto mais recente do repositório',
|
|
212
|
+
'commands.fill.arguments.repoPath': 'Caminho da raiz do repositório usado para montar o contexto',
|
|
213
|
+
'commands.fill.options.output': 'Diretório com docs/ e agents/ gerados pela base',
|
|
214
|
+
'commands.fill.options.apiKey': 'Chave de API para o provedor de LLM',
|
|
215
|
+
'commands.fill.options.model': 'Modelo de LLM a ser utilizado',
|
|
216
|
+
'commands.fill.options.provider': 'Provedor de LLM (openrouter, openai, anthropic, gemini, grok)',
|
|
217
|
+
'commands.fill.options.baseUrl': 'URL base personalizada para as APIs do provedor',
|
|
218
|
+
'commands.fill.options.prompt': 'Caminho para o prompt de instrução',
|
|
219
|
+
'commands.fill.options.dryRun': 'Pré-visualiza as atualizações sem escrever arquivos',
|
|
220
|
+
'commands.fill.options.all': 'Processa todos os arquivos mesmo sem marcadores TODO',
|
|
221
|
+
'commands.fill.options.limit': 'Número máximo de arquivos a processar',
|
|
222
|
+
'commands.fill.options.docs': 'Chaves de documentação a serem atualizadas (padrão: todas)',
|
|
223
|
+
'commands.fill.options.agents': 'Tipos de agente a serem atualizados (padrão: todos)',
|
|
224
|
+
'commands.fill.options.exclude': 'Padrões glob para excluir da análise do repositório',
|
|
225
|
+
'commands.fill.options.include': 'Padrões glob para incluir durante a análise',
|
|
226
|
+
'commands.fill.options.verbose': 'Ativa logs detalhados',
|
|
227
|
+
'commands.plan.description': 'Criar um plano de desenvolvimento que conecta docs e playbooks de agentes',
|
|
228
|
+
'commands.plan.arguments.planName': 'Nome do plano (usado como slug do arquivo)',
|
|
229
|
+
'commands.plan.options.output': 'Diretório com docs/ e agents/ gerados pela base',
|
|
230
|
+
'commands.plan.options.title': 'Título personalizado para o plano',
|
|
231
|
+
'commands.plan.options.summary': 'Resumo inicial para o cabeçalho do plano',
|
|
232
|
+
'commands.plan.options.agents': 'Tipos de agente em destaque (padrão: todos)',
|
|
233
|
+
'commands.plan.options.docs': 'Chaves de documentação em destaque (padrão: todas)',
|
|
234
|
+
'commands.plan.options.force': 'Sobrescreve o plano se ele já existir (modo base)',
|
|
235
|
+
'commands.plan.options.fill': 'Usa um assistente de IA para preencher ou atualizar o plano em vez de apenas gerar',
|
|
236
|
+
'commands.plan.options.repo': 'Raiz do repositório para sumarização adicional',
|
|
237
|
+
'commands.plan.options.apiKey': 'Chave de API para o provedor de LLM',
|
|
238
|
+
'commands.plan.options.model': 'Modelo de LLM a ser utilizado',
|
|
239
|
+
'commands.plan.options.provider': 'Provedor de LLM (openrouter, openai, anthropic, gemini, grok)',
|
|
240
|
+
'commands.plan.options.baseUrl': 'URL base personalizada para as APIs do provedor',
|
|
241
|
+
'commands.plan.options.prompt': 'Caminho para o prompt de atualização do plano',
|
|
242
|
+
'commands.plan.options.dryRun': 'Pré-visualiza as atualizações sem escrever arquivos',
|
|
243
|
+
'commands.plan.options.include': 'Padrões glob para incluir na análise do repositório',
|
|
244
|
+
'commands.plan.options.exclude': 'Padrões glob para excluir da análise do repositório',
|
|
245
|
+
'commands.plan.options.verbose': 'Ativa logs detalhados',
|
|
246
|
+
'errors.init.scaffoldFailed': 'Falha ao gerar os artefatos base',
|
|
247
|
+
'errors.fill.failed': 'Falha ao preencher documentação e agentes com ajuda de um assistente de IA',
|
|
248
|
+
'errors.plan.creationFailed': 'Falha ao criar o template do plano',
|
|
249
|
+
'errors.init.invalidType': 'Tipo de base "{value}" inválido. Use um dos seguintes: {allowed}',
|
|
250
|
+
'errors.common.repoMissing': 'O caminho do repositório não existe: {path}',
|
|
251
|
+
'warnings.agents.unknown': 'Ignorando tipos de agente desconhecidos: {values}',
|
|
252
|
+
'warnings.docs.unknown': 'Ignorando docs desconhecidas: {values}',
|
|
253
|
+
'warnings.scaffold.noneSelected': 'Nenhuma documentação ou playbook selecionado. Nada a gerar.',
|
|
254
|
+
'steps.init.analyze': 'Analisando a estrutura do repositório',
|
|
255
|
+
'steps.init.docs': 'Gerando bases de documentação',
|
|
256
|
+
'steps.init.agents': 'Gerando playbooks de agentes',
|
|
257
|
+
'spinner.repo.scanning': 'Escaneando o repositório...',
|
|
258
|
+
'spinner.repo.scanComplete': 'Encontrados {fileCount} arquivos em {directoryCount} diretórios',
|
|
259
|
+
'spinner.docs.creating': 'Criando diretório e templates de docs...',
|
|
260
|
+
'spinner.docs.created': 'Scaffold de documentação criado ({count} arquivos)',
|
|
261
|
+
'spinner.agents.creating': 'Criando diretório e templates de agentes...',
|
|
262
|
+
'spinner.agents.created': 'Scaffold de agentes criado ({count} arquivos)',
|
|
263
|
+
'spinner.plan.creating': 'Criando template de plano...',
|
|
264
|
+
'spinner.plan.created': 'Template de plano criado',
|
|
265
|
+
'spinner.plan.creationFailed': 'Falha ao criar o template do plano',
|
|
266
|
+
'success.scaffold.ready': 'Base disponível em {path}',
|
|
267
|
+
'success.plan.createdAt': 'Plano criado em {path}',
|
|
268
|
+
'errors.fill.missingDocsScaffold': 'Scaffold de documentação não encontrado. Execute `ai-context init` primeiro.',
|
|
269
|
+
'errors.fill.missingAgentsScaffold': 'Scaffold de agentes não encontrado. Execute `ai-context init` primeiro.',
|
|
270
|
+
'steps.fill.analyze': 'Analisando a estrutura do repositório',
|
|
271
|
+
'warnings.fill.noTargets': 'Nenhum arquivo Markdown precisava de atualização. Use --all ou adicione marcadores TODO para acionar o assistente de IA.',
|
|
272
|
+
'steps.fill.processFiles': 'Atualizando {count} arquivos com {model}',
|
|
273
|
+
'spinner.fill.processing': 'Processando {path}...',
|
|
274
|
+
'spinner.fill.noContent': 'Nenhum conteúdo recebido para {path}',
|
|
275
|
+
'messages.fill.emptyResponse': 'Resposta vazia do assistente de IA',
|
|
276
|
+
'spinner.fill.dryRunPreview': 'Execução simulada - prévia de {path}',
|
|
277
|
+
'messages.fill.previewStart': '--- Início da prévia ---',
|
|
278
|
+
'messages.fill.previewEnd': '--- Fim da prévia ---',
|
|
279
|
+
'spinner.fill.updated': 'Atualizado {path}',
|
|
280
|
+
'spinner.fill.failed': 'Falha em {path}',
|
|
281
|
+
'steps.fill.summary': 'Resumindo o uso do assistente de IA',
|
|
282
|
+
'success.fill.completed': 'Preenchimento com assistente de IA concluído. Revise as mudanças e faça o commit quando estiver pronto.',
|
|
283
|
+
'errors.plan.invalidName': 'O nome do plano deve conter ao menos um caractere alfanumérico.',
|
|
284
|
+
'messages.plan.regenerated': 'Regerado {path} antes do preenchimento com assistente de IA.',
|
|
285
|
+
'messages.plan.created': 'Criado {path} antes do preenchimento com assistente de IA.',
|
|
286
|
+
'info.plan.scaffolded.title': 'Plano criado',
|
|
287
|
+
'errors.plan.missingPlansDir': 'Diretório de planos não encontrado. Execute `ai-context plan <nome>` para criar um.',
|
|
288
|
+
'errors.plan.notFound': 'Plano não encontrado. Esperado {expected}.',
|
|
289
|
+
'steps.plan.summary': 'Resumindo estado do repositório',
|
|
290
|
+
'spinner.planFill.analyzingRepo': 'Analisando repositório...',
|
|
291
|
+
'spinner.planFill.summaryReady': 'Resumo do repositório pronto',
|
|
292
|
+
'steps.plan.update': 'Atualizando {path} com {model}',
|
|
293
|
+
'spinner.planFill.updating': 'Preenchendo {path}...',
|
|
294
|
+
'spinner.planFill.noContent': 'Nenhum conteúdo recebido do assistente de IA',
|
|
295
|
+
'spinner.planFill.dryRun': 'Execução simulada - prévia a seguir',
|
|
296
|
+
'spinner.planFill.updated': 'Atualizado {path}',
|
|
297
|
+
'spinner.planFill.failed': 'Falha ao preencher o plano',
|
|
298
|
+
'steps.plan.summaryResults': 'Resumindo o uso do assistente de IA',
|
|
299
|
+
'success.plan.filled': 'Preenchimento do plano concluído. Revise as atualizações e faça o commit quando estiver pronto.',
|
|
300
|
+
'errors.commands.analyzeRemoved': 'O comando analyze foi removido na versão focada em bases do ai-context.',
|
|
301
|
+
'errors.commands.updateRemoved': 'O comando update não é mais suportado. Execute `ai-context init` novamente para atualizar as bases.',
|
|
302
|
+
'errors.commands.previewRemoved': 'O modo de pré-visualização foi descontinuado. Use diretamente os docs e playbooks gerados.',
|
|
303
|
+
'errors.commands.guidelinesRemoved': 'A geração de guidelines dependia de LLMs e não está mais disponível.',
|
|
304
|
+
'errors.cli.executionFailed': 'Falha na execução do CLI',
|
|
305
|
+
'warnings.interactive.nothingSelected': 'Nada selecionado. Abortando.',
|
|
306
|
+
'prompts.main.action': 'O que você gostaria de fazer?',
|
|
307
|
+
'prompts.main.choice.scaffold': 'Gerar bases de documentação/agentes',
|
|
308
|
+
'prompts.main.choice.fill': 'Preencher docs e agentes com um LLM',
|
|
309
|
+
'prompts.main.choice.plan': 'Criar um plano de desenvolvimento',
|
|
310
|
+
'prompts.scaffold.repoPath': 'Caminho do repositório para analisar',
|
|
311
|
+
'prompts.scaffold.includeDocs': 'Gerar bases de documentação?',
|
|
312
|
+
'prompts.scaffold.selectDocs': 'Selecione as guias de documentação para gerar bases',
|
|
313
|
+
'prompts.scaffold.includeAgents': 'Gerar playbooks de agentes?',
|
|
314
|
+
'prompts.scaffold.selectAgents': 'Selecione os playbooks de agente para gerar bases',
|
|
315
|
+
'prompts.common.verbose': 'Ativar logs detalhados?',
|
|
316
|
+
'prompts.fill.repoPath': 'Caminho do repositório que contém a base',
|
|
317
|
+
'prompts.fill.promptPath': 'Prompt de instrução a seguir',
|
|
318
|
+
'prompts.fill.dryRun': 'Pré-visualizar alterações sem escrever arquivos?',
|
|
319
|
+
'prompts.fill.processAll': 'Processar todos os arquivos Markdown independentemente dos marcadores?',
|
|
320
|
+
'prompts.fill.limit': 'Número máximo de arquivos a atualizar (deixe em branco para todos)',
|
|
321
|
+
'prompts.fill.includeDocs': 'Incluir arquivos de documentação?',
|
|
322
|
+
'prompts.fill.selectDocs': 'Selecione as guias de documentação para atualizar',
|
|
323
|
+
'prompts.fill.includeAgents': 'Incluir playbooks de agentes?',
|
|
324
|
+
'prompts.fill.selectAgents': 'Selecione os playbooks de agente para atualizar',
|
|
325
|
+
'prompts.fill.overrideModel': 'Sobrescrever configuração de provedor/modelo?',
|
|
326
|
+
'prompts.fill.provider': 'Selecione o provedor',
|
|
327
|
+
'prompts.fill.model': 'Identificador do modelo',
|
|
328
|
+
'prompts.fill.provideApiKey': 'Informar uma chave de API para esta execução?',
|
|
329
|
+
'prompts.fill.apiKey': 'Chave de API',
|
|
330
|
+
'prompts.plan.name': 'Nome do plano (usado no slug do arquivo)',
|
|
331
|
+
'prompts.plan.mode': 'Como você quer trabalhar com este plano?',
|
|
332
|
+
'prompts.plan.modeScaffold': 'Gerar um template de plano',
|
|
333
|
+
'prompts.plan.modeFill': 'Preencher um plano existente com ajuda de um assistente de IA',
|
|
334
|
+
'prompts.plan.summary': 'Resumo opcional para iniciar o plano (deixe em branco para adicionar depois)',
|
|
335
|
+
'prompts.plan.includeAgents': 'Referenciar playbooks de agente no plano?',
|
|
336
|
+
'prompts.plan.selectAgents': 'Selecione os playbooks de agente para destacar',
|
|
337
|
+
'prompts.plan.includeDocs': 'Vincular guias de documentação no plano?',
|
|
338
|
+
'prompts.plan.selectDocs': 'Selecione as guias de documentação para referenciar',
|
|
339
|
+
'prompts.plan.repoPath': 'Raiz do repositório para contexto',
|
|
340
|
+
'prompts.plan.dryRun': 'Pré-visualizar atualizações sem escrever arquivos?',
|
|
341
|
+
'prompts.language.select': 'Escolha o idioma do CLI / Choose the CLI language',
|
|
342
|
+
'prompts.language.option.en': 'Inglês / English',
|
|
343
|
+
'prompts.language.option.pt-BR': 'Português (Brasil) / Portuguese (Brazil)',
|
|
344
|
+
'errors.plan.fillFailed': 'Falha ao preencher o plano com ajuda de um assistente de IA',
|
|
345
|
+
'errors.fill.promptMissing': 'Arquivo de prompt não encontrado em {path}.',
|
|
346
|
+
'errors.fill.apiKeyMissing': 'É necessária uma chave de API {provider}. Defina uma das variáveis {envVars} ou use --api-key.'
|
|
347
|
+
};
|
|
348
|
+
const dictionaries = {
|
|
349
|
+
en: englishMessages,
|
|
350
|
+
'pt-BR': portugueseMessages
|
|
351
|
+
};
|
|
352
|
+
function createTranslator(locale) {
|
|
353
|
+
const normalized = normalizeLocale(locale);
|
|
354
|
+
return (key, params) => {
|
|
355
|
+
const dictionary = dictionaries[normalized] || dictionaries[exports.DEFAULT_LOCALE];
|
|
356
|
+
const fallback = dictionaries[exports.DEFAULT_LOCALE];
|
|
357
|
+
const template = dictionary[key] ?? fallback[key];
|
|
358
|
+
return fillTemplate(template, params);
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
function normalizeLocale(locale) {
|
|
362
|
+
return exports.SUPPORTED_LOCALES.find(candidate => candidate.toLowerCase() === locale.toLowerCase()) || exports.DEFAULT_LOCALE;
|
|
363
|
+
}
|
|
364
|
+
function detectLocale(argv, envLocale) {
|
|
365
|
+
const candidateFromArgs = extractLocaleFromArgs(argv);
|
|
366
|
+
if (candidateFromArgs) {
|
|
367
|
+
return normalizeLocale(candidateFromArgs);
|
|
368
|
+
}
|
|
369
|
+
if (envLocale) {
|
|
370
|
+
return normalizeLocale(envLocale);
|
|
371
|
+
}
|
|
372
|
+
return exports.DEFAULT_LOCALE;
|
|
373
|
+
}
|
|
374
|
+
function extractLocaleFromArgs(argv) {
|
|
375
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
376
|
+
const segment = argv[index];
|
|
377
|
+
if (segment === '--lang' || segment === '--language' || segment === '-l') {
|
|
378
|
+
return argv[index + 1];
|
|
379
|
+
}
|
|
380
|
+
if (segment.startsWith('--lang=')) {
|
|
381
|
+
return segment.split('=')[1];
|
|
382
|
+
}
|
|
383
|
+
if (segment.startsWith('--language=')) {
|
|
384
|
+
return segment.split('=')[1];
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
return undefined;
|
|
388
|
+
}
|
|
389
|
+
function fillTemplate(template, params) {
|
|
390
|
+
if (!params) {
|
|
391
|
+
return template;
|
|
392
|
+
}
|
|
393
|
+
return template.replace(/\{(\w+)\}/g, (_match, key) => {
|
|
394
|
+
const value = params[key];
|
|
395
|
+
return value === undefined ? '' : String(value);
|
|
396
|
+
});
|
|
397
|
+
}
|
|
398
|
+
function isSupportedLocale(locale) {
|
|
399
|
+
return exports.SUPPORTED_LOCALES.some(candidate => candidate.toLowerCase() === locale.toLowerCase());
|
|
400
|
+
}
|
|
401
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/utils/i18n.ts"],"names":[],"mappings":";;;AAsWA,4CAQC;AAED,0CAEC;AAED,oCASC;AA4BD,8CAEC;AAzZY,QAAA,iBAAiB,GAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,QAAA,cAAc,GAAW,IAAI,CAAC;AAE3C,MAAM,eAAe,GAAG;IACtB,UAAU,EAAE,uCAAuC;IACnD,aAAa,EAAE,2EAA2E;IAC1F,iBAAiB,EAAE,gEAAgE;IACnF,qBAAqB,EAAE,uCAAuC;IAC9D,YAAY,EAAE,mBAAmB;IACjC,+BAA+B,EAAE,2BAA2B;IAC5D,oCAAoC,EAAE,aAAa;IACnD,gCAAgC,EAAE,SAAS;IAC3C,8BAA8B,EAAE,gBAAgB;IAChD,sBAAsB,EAAE,aAAa;IACrC,4BAA4B,EAAE,iCAAiC;IAC/D,mBAAmB,EAAE,OAAO;IAC5B,yBAAyB,EAAE,aAAa;IACxC,uBAAuB,EAAE,YAAY;IACrC,+BAA+B,EAAE,4BAA4B;IAC7D,4BAA4B,EAAE,sBAAsB;IACpD,oCAAoC,EAAE,qBAAqB;IAC3D,6BAA6B,EAAE,iBAAiB;IAChD,kCAAkC,EAAE,cAAc;IAClD,+BAA+B,EAAE,qEAAqE;IACtG,gBAAgB,EAAE,kBAAkB;IACpC,2BAA2B,EAAE,sDAAsD;IACnF,kCAAkC,EAAE,mCAAmC;IACvE,8BAA8B,EAAE,sDAAsD;IACtF,8BAA8B,EAAE,uCAAuC;IACvE,4BAA4B,EAAE,qCAAqC;IACnE,8BAA8B,EAAE,wCAAwC;IACxE,+BAA+B,EAAE,wCAAwC;IACzE,+BAA+B,EAAE,0CAA0C;IAC3E,+BAA+B,EAAE,wBAAwB;IACzD,+BAA+B,EAAE,gBAAgB;IACjD,2BAA2B,EAAE,oFAAoF;IACjH,kCAAkC,EAAE,mDAAmD;IACvF,8BAA8B,EAAE,iDAAiD;IACjF,8BAA8B,EAAE,8BAA8B;IAC9D,6BAA6B,EAAE,kBAAkB;IACjD,gCAAgC,EAAE,4DAA4D;IAC9F,+BAA+B,EAAE,mCAAmC;IACpE,8BAA8B,EAAE,+BAA+B;IAC/D,8BAA8B,EAAE,uCAAuC;IACvE,2BAA2B,EAAE,gEAAgE;IAC7F,6BAA6B,EAAE,oCAAoC;IACnE,4BAA4B,EAAE,mCAAmC;IACjE,8BAA8B,EAAE,sCAAsC;IACtE,+BAA+B,EAAE,mDAAmD;IACpF,+BAA+B,EAAE,0CAA0C;IAC3E,+BAA+B,EAAE,wBAAwB;IACzD,2BAA2B,EAAE,wEAAwE;IACrG,kCAAkC,EAAE,iDAAiD;IACrF,8BAA8B,EAAE,iDAAiD;IACjF,6BAA6B,EAAE,oCAAoC;IACnE,+BAA+B,EAAE,kCAAkC;IACnE,8BAA8B,EAAE,yCAAyC;IACzE,4BAA4B,EAAE,sCAAsC;IACpE,6BAA6B,EAAE,yDAAyD;IACxF,4BAA4B,EAAE,8DAA8D;IAC5F,4BAA4B,EAAE,qDAAqD;IACnF,8BAA8B,EAAE,8BAA8B;IAC9D,6BAA6B,EAAE,kBAAkB;IACjD,gCAAgC,EAAE,4DAA4D;IAC9F,+BAA+B,EAAE,mCAAmC;IACpE,8BAA8B,EAAE,0CAA0C;IAC1E,8BAA8B,EAAE,uCAAuC;IACvE,+BAA+B,EAAE,qDAAqD;IACtF,+BAA+B,EAAE,mDAAmD;IACpF,+BAA+B,EAAE,wBAAwB;IACzD,4BAA4B,EAAE,sCAAsC;IACpE,oBAAoB,EAAE,kDAAkD;IACxE,4BAA4B,EAAE,gCAAgC;IAC9D,yBAAyB,EAAE,6DAA6D;IACxF,2BAA2B,EAAE,wCAAwC;IACrE,yBAAyB,EAAE,wCAAwC;IACnE,uBAAuB,EAAE,iCAAiC;IAC1D,gCAAgC,EAAE,oEAAoE;IACtG,oBAAoB,EAAE,gCAAgC;IACtD,iBAAiB,EAAE,2BAA2B;IAC9C,mBAAmB,EAAE,6BAA6B;IAClD,uBAAuB,EAAE,wBAAwB;IACjD,2BAA2B,EAAE,6DAA6D;IAC1F,uBAAuB,EAAE,0CAA0C;IACnE,sBAAsB,EAAE,gDAAgD;IACxE,yBAAyB,EAAE,2CAA2C;IACtE,wBAAwB,EAAE,wCAAwC;IAClE,uBAAuB,EAAE,2BAA2B;IACpD,sBAAsB,EAAE,uBAAuB;IAC/C,6BAA6B,EAAE,gCAAgC;IAC/D,wBAAwB,EAAE,0BAA0B;IACpD,wBAAwB,EAAE,wBAAwB;IAClD,iCAAiC,EAAE,gEAAgE;IACnG,mCAAmC,EAAE,wDAAwD;IAC7F,oBAAoB,EAAE,gCAAgC;IACtD,yBAAyB,EAAE,8FAA8F;IACzH,yBAAyB,EAAE,qCAAqC;IAChE,yBAAyB,EAAE,sBAAsB;IACjD,wBAAwB,EAAE,gCAAgC;IAC1D,6BAA6B,EAAE,yBAAyB;IACxD,4BAA4B,EAAE,8BAA8B;IAC5D,4BAA4B,EAAE,uBAAuB;IACrD,0BAA0B,EAAE,qBAAqB;IACjD,sBAAsB,EAAE,gBAAgB;IACxC,qBAAqB,EAAE,eAAe;IACtC,oBAAoB,EAAE,uBAAuB;IAC7C,wBAAwB,EAAE,yEAAyE;IACnG,yBAAyB,EAAE,6DAA6D;IACxF,2BAA2B,EAAE,qCAAqC;IAClE,uBAAuB,EAAE,iCAAiC;IAC1D,4BAA4B,EAAE,iBAAiB;IAC/C,6BAA6B,EAAE,wEAAwE;IACvG,sBAAsB,EAAE,sCAAsC;IAC9D,oBAAoB,EAAE,8BAA8B;IACpD,gCAAgC,EAAE,yBAAyB;IAC3D,+BAA+B,EAAE,0BAA0B;IAC3D,mBAAmB,EAAE,8BAA8B;IACnD,2BAA2B,EAAE,mBAAmB;IAChD,4BAA4B,EAAE,8BAA8B;IAC5D,yBAAyB,EAAE,2BAA2B;IACtD,0BAA0B,EAAE,gBAAgB;IAC5C,yBAAyB,EAAE,qBAAqB;IAChD,2BAA2B,EAAE,uBAAuB;IACpD,qBAAqB,EAAE,+DAA+D;IACtF,gCAAgC,EAAE,qFAAqF;IACvH,+BAA+B,EAAE,2FAA2F;IAC5H,gCAAgC,EAAE,qFAAqF;IACvH,mCAAmC,EAAE,kEAAkE;IACvG,4BAA4B,EAAE,sBAAsB;IACpD,sCAAsC,EAAE,6BAA6B;IACrE,qBAAqB,EAAE,4BAA4B;IACnD,8BAA8B,EAAE,0CAA0C;IAC1E,0BAA0B,EAAE,kCAAkC;IAC9D,0BAA0B,EAAE,2BAA2B;IACvD,2BAA2B,EAAE,4BAA4B;IACzD,8BAA8B,EAAE,qCAAqC;IACrE,6BAA6B,EAAE,yCAAyC;IACxE,gCAAgC,EAAE,2BAA2B;IAC7D,+BAA+B,EAAE,oCAAoC;IACrE,wBAAwB,EAAE,yBAAyB;IACnD,uBAAuB,EAAE,yCAAyC;IAClE,yBAAyB,EAAE,8BAA8B;IACzD,qBAAqB,EAAE,wCAAwC;IAC/D,yBAAyB,EAAE,oDAAoD;IAC/E,oBAAoB,EAAE,yDAAyD;IAC/E,0BAA0B,EAAE,8BAA8B;IAC1D,yBAAyB,EAAE,uCAAuC;IAClE,4BAA4B,EAAE,0BAA0B;IACxD,2BAA2B,EAAE,kCAAkC;IAC/D,4BAA4B,EAAE,wCAAwC;IACtE,uBAAuB,EAAE,iBAAiB;IAC1C,oBAAoB,EAAE,kBAAkB;IACxC,4BAA4B,EAAE,kCAAkC;IAChE,qBAAqB,EAAE,SAAS;IAChC,mBAAmB,EAAE,oCAAoC;IACzD,mBAAmB,EAAE,4CAA4C;IACjE,2BAA2B,EAAE,0BAA0B;IACvD,uBAAuB,EAAE,2CAA2C;IACpE,sBAAsB,EAAE,8DAA8D;IACtF,4BAA4B,EAAE,wCAAwC;IACtE,2BAA2B,EAAE,qCAAqC;IAClE,0BAA0B,EAAE,wCAAwC;IACpE,yBAAyB,EAAE,0CAA0C;IACrE,uBAAuB,EAAE,6BAA6B;IACtD,qBAAqB,EAAE,wCAAwC;IAC/D,yBAAyB,EAAE,mDAAmD;IAC9E,4BAA4B,EAAE,kBAAkB;IAChD,+BAA+B,EAAE,0CAA0C;IAC3E,wBAAwB,EAAE,yCAAyC;IACnE,2BAA2B,EAAE,kCAAkC;IAC/D,2BAA2B,EAAE,wEAAwE;CAC7F,CAAC;AAMX,MAAM,kBAAkB,GAA0B;IAChD,UAAU,EAAE,uCAAuC;IACnD,aAAa,EAAE,uEAAuE;IACtF,iBAAiB,EAAE,0EAA0E;IAC7F,qBAAqB,EAAE,0CAA0C;IACjE,YAAY,EAAE,kBAAkB;IAChC,+BAA+B,EAAE,6BAA6B;IAC9D,oCAAoC,EAAE,cAAc;IACpD,gCAAgC,EAAE,QAAQ;IAC1C,8BAA8B,EAAE,mBAAmB;IACnD,sBAAsB,EAAE,cAAc;IACtC,4BAA4B,EAAE,qCAAqC;IACnE,mBAAmB,EAAE,UAAU;IAC/B,yBAAyB,EAAE,YAAY;IACvC,uBAAuB,EAAE,eAAe;IACxC,+BAA+B,EAAE,sCAAsC;IACvE,4BAA4B,EAAE,uBAAuB;IACrD,oCAAoC,EAAE,0BAA0B;IAChE,6BAA6B,EAAE,qBAAqB;IACpD,kCAAkC,EAAE,iBAAiB;IACrD,+BAA+B,EAAE,qEAAqE;IACtG,gBAAgB,EAAE,mBAAmB;IACrC,2BAA2B,EAAE,2DAA2D;IACxF,kCAAkC,EAAE,wCAAwC;IAC5E,8BAA8B,EAAE,mDAAmD;IACnF,8BAA8B,EAAE,8CAA8C;IAC9E,4BAA4B,EAAE,wDAAwD;IACtF,8BAA8B,EAAE,iDAAiD;IACjF,+BAA+B,EAAE,sCAAsC;IACvE,+BAA+B,EAAE,6CAA6C;IAC9E,+BAA+B,EAAE,uBAAuB;IACxD,+BAA+B,EAAE,iBAAiB;IAClD,2BAA2B,EAAE,kGAAkG;IAC/H,kCAAkC,EAAE,6DAA6D;IACjG,8BAA8B,EAAE,iDAAiD;IACjF,8BAA8B,EAAE,qCAAqC;IACrE,6BAA6B,EAAE,+BAA+B;IAC9D,gCAAgC,EAAE,+DAA+D;IACjG,+BAA+B,EAAE,iDAAiD;IAClF,8BAA8B,EAAE,oCAAoC;IACpE,8BAA8B,EAAE,qDAAqD;IACrF,2BAA2B,EAAE,sDAAsD;IACnF,6BAA6B,EAAE,uCAAuC;IACtE,4BAA4B,EAAE,4DAA4D;IAC1F,8BAA8B,EAAE,qDAAqD;IACrF,+BAA+B,EAAE,qDAAqD;IACtF,+BAA+B,EAAE,6CAA6C;IAC9E,+BAA+B,EAAE,uBAAuB;IACxD,2BAA2B,EAAE,2EAA2E;IACxG,kCAAkC,EAAE,4CAA4C;IAChF,8BAA8B,EAAE,iDAAiD;IACjF,6BAA6B,EAAE,mCAAmC;IAClE,+BAA+B,EAAE,0CAA0C;IAC3E,8BAA8B,EAAE,6CAA6C;IAC7E,4BAA4B,EAAE,oDAAoD;IAClF,6BAA6B,EAAE,mDAAmD;IAClF,4BAA4B,EAAE,oFAAoF;IAClH,4BAA4B,EAAE,gDAAgD;IAC9E,8BAA8B,EAAE,qCAAqC;IACrE,6BAA6B,EAAE,+BAA+B;IAC9D,gCAAgC,EAAE,+DAA+D;IACjG,+BAA+B,EAAE,iDAAiD;IAClF,8BAA8B,EAAE,+CAA+C;IAC/E,8BAA8B,EAAE,qDAAqD;IACrF,+BAA+B,EAAE,qDAAqD;IACtF,+BAA+B,EAAE,qDAAqD;IACtF,+BAA+B,EAAE,uBAAuB;IACxD,4BAA4B,EAAE,kCAAkC;IAChE,oBAAoB,EAAE,4EAA4E;IAClG,4BAA4B,EAAE,oCAAoC;IAClE,yBAAyB,EAAE,kEAAkE;IAC7F,2BAA2B,EAAE,6CAA6C;IAC1E,yBAAyB,EAAE,mDAAmD;IAC9E,uBAAuB,EAAE,wCAAwC;IACjE,gCAAgC,EAAE,6DAA6D;IAC/F,oBAAoB,EAAE,uCAAuC;IAC7D,iBAAiB,EAAE,+BAA+B;IAClD,mBAAmB,EAAE,8BAA8B;IACnD,uBAAuB,EAAE,6BAA6B;IACtD,2BAA2B,EAAE,iEAAiE;IAC9F,uBAAuB,EAAE,0CAA0C;IACnE,sBAAsB,EAAE,oDAAoD;IAC5E,yBAAyB,EAAE,6CAA6C;IACxE,wBAAwB,EAAE,+CAA+C;IACzE,uBAAuB,EAAE,8BAA8B;IACvD,sBAAsB,EAAE,0BAA0B;IAClD,6BAA6B,EAAE,oCAAoC;IACnE,wBAAwB,EAAE,2BAA2B;IACrD,wBAAwB,EAAE,wBAAwB;IAClD,iCAAiC,EAAE,8EAA8E;IACjH,mCAAmC,EAAE,yEAAyE;IAC9G,oBAAoB,EAAE,uCAAuC;IAC7D,yBAAyB,EAAE,0HAA0H;IACrJ,yBAAyB,EAAE,0CAA0C;IACrE,yBAAyB,EAAE,uBAAuB;IAClD,wBAAwB,EAAE,sCAAsC;IAChE,6BAA6B,EAAE,oCAAoC;IACnE,4BAA4B,EAAE,sCAAsC;IACpE,4BAA4B,EAAE,0BAA0B;IACxD,0BAA0B,EAAE,uBAAuB;IACnD,sBAAsB,EAAE,mBAAmB;IAC3C,qBAAqB,EAAE,iBAAiB;IACxC,oBAAoB,EAAE,qCAAqC;IAC3D,wBAAwB,EAAE,yGAAyG;IACnI,yBAAyB,EAAE,iEAAiE;IAC5F,2BAA2B,EAAE,8DAA8D;IAC3F,uBAAuB,EAAE,4DAA4D;IACrF,4BAA4B,EAAE,cAAc;IAC5C,6BAA6B,EAAE,qFAAqF;IACpH,sBAAsB,EAAE,4CAA4C;IACpE,oBAAoB,EAAE,iCAAiC;IACvD,gCAAgC,EAAE,2BAA2B;IAC7D,+BAA+B,EAAE,8BAA8B;IAC/D,mBAAmB,EAAE,gCAAgC;IACrD,2BAA2B,EAAE,uBAAuB;IACpD,4BAA4B,EAAE,8CAA8C;IAC5E,yBAAyB,EAAE,qCAAqC;IAChE,0BAA0B,EAAE,mBAAmB;IAC/C,yBAAyB,EAAE,4BAA4B;IACvD,2BAA2B,EAAE,qCAAqC;IAClE,qBAAqB,EAAE,iGAAiG;IACxH,gCAAgC,EAAE,yEAAyE;IAC3G,+BAA+B,EAAE,qGAAqG;IACtI,gCAAgC,EAAE,4FAA4F;IAC9H,mCAAmC,EAAE,sEAAsE;IAC3G,4BAA4B,EAAE,0BAA0B;IACxD,sCAAsC,EAAE,8BAA8B;IACtE,qBAAqB,EAAE,+BAA+B;IACtD,8BAA8B,EAAE,qCAAqC;IACrE,0BAA0B,EAAE,qCAAqC;IACjE,0BAA0B,EAAE,mCAAmC;IAC/D,2BAA2B,EAAE,sCAAsC;IACnE,8BAA8B,EAAE,8BAA8B;IAC9D,6BAA6B,EAAE,qDAAqD;IACpF,gCAAgC,EAAE,6BAA6B;IAC/D,+BAA+B,EAAE,mDAAmD;IACpF,wBAAwB,EAAE,yBAAyB;IACnD,uBAAuB,EAAE,0CAA0C;IACnE,yBAAyB,EAAE,8BAA8B;IACzD,qBAAqB,EAAE,kDAAkD;IACzE,yBAAyB,EAAE,wEAAwE;IACnG,oBAAoB,EAAE,oEAAoE;IAC1F,0BAA0B,EAAE,mCAAmC;IAC/D,yBAAyB,EAAE,mDAAmD;IAC9E,4BAA4B,EAAE,+BAA+B;IAC7D,2BAA2B,EAAE,iDAAiD;IAC9E,4BAA4B,EAAE,+CAA+C;IAC7E,uBAAuB,EAAE,sBAAsB;IAC/C,oBAAoB,EAAE,yBAAyB;IAC/C,4BAA4B,EAAE,+CAA+C;IAC7E,qBAAqB,EAAE,cAAc;IACrC,mBAAmB,EAAE,0CAA0C;IAC/D,mBAAmB,EAAE,0CAA0C;IAC/D,2BAA2B,EAAE,4BAA4B;IACzD,uBAAuB,EAAE,+DAA+D;IACxF,sBAAsB,EAAE,8EAA8E;IACtG,4BAA4B,EAAE,2CAA2C;IACzE,2BAA2B,EAAE,gDAAgD;IAC7E,0BAA0B,EAAE,0CAA0C;IACtE,yBAAyB,EAAE,qDAAqD;IAChF,uBAAuB,EAAE,mCAAmC;IAC5D,qBAAqB,EAAE,oDAAoD;IAC3E,yBAAyB,EAAE,mDAAmD;IAC9E,4BAA4B,EAAE,kBAAkB;IAChD,+BAA+B,EAAE,0CAA0C;IAC3E,wBAAwB,EAAE,6DAA6D;IACvF,2BAA2B,EAAE,6CAA6C;IAC1E,2BAA2B,EAAE,gGAAgG;CAC9H,CAAC;AAEF,MAAM,YAAY,GAA0C;IAC1D,EAAE,EAAE,eAAe;IACnB,OAAO,EAAE,kBAAkB;CAC5B,CAAC;AAMF,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAmB,EAAE,MAAwB,EAAE,EAAE;QACvD,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,sBAAc,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,YAAY,CAAC,sBAAc,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;QAClD,OAAO,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO,yBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,sBAAc,CAAC;AACjH,CAAC;AAED,SAAgB,YAAY,CAAC,IAAc,EAAE,SAAyB;IACpE,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,eAAe,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,sBAAc,CAAC;AACxB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAc;IAC3C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACzE,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,YAAY,CAAC,QAAgB,EAAE,MAAwB;IAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,OAAO,yBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;AAC/F,CAAC"}
|