@prompd/cli 0.3.3
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 +162 -0
- package/bin/prompd.js +23 -0
- package/dist/commands/cache.d.ts +3 -0
- package/dist/commands/cache.d.ts.map +1 -0
- package/dist/commands/cache.js +199 -0
- package/dist/commands/cache.js.map +1 -0
- package/dist/commands/compile.d.ts +9 -0
- package/dist/commands/compile.d.ts.map +1 -0
- package/dist/commands/compile.js +104 -0
- package/dist/commands/compile.js.map +1 -0
- package/dist/commands/config.d.ts +7 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +212 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/create.d.ts +3 -0
- package/dist/commands/create.d.ts.map +1 -0
- package/dist/commands/create.js +183 -0
- package/dist/commands/create.js.map +1 -0
- package/dist/commands/deps.d.ts +3 -0
- package/dist/commands/deps.d.ts.map +1 -0
- package/dist/commands/deps.js +192 -0
- package/dist/commands/deps.js.map +1 -0
- package/dist/commands/explain.d.ts +3 -0
- package/dist/commands/explain.d.ts.map +1 -0
- package/dist/commands/explain.js +227 -0
- package/dist/commands/explain.js.map +1 -0
- package/dist/commands/git.d.ts +3 -0
- package/dist/commands/git.d.ts.map +1 -0
- package/dist/commands/git.js +306 -0
- package/dist/commands/git.js.map +1 -0
- package/dist/commands/init.d.ts +3 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +177 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/list.d.ts +3 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +126 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/mcp.d.ts +3 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +326 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/namespace.d.ts +3 -0
- package/dist/commands/namespace.d.ts.map +1 -0
- package/dist/commands/namespace.js +113 -0
- package/dist/commands/namespace.js.map +1 -0
- package/dist/commands/package.d.ts +23 -0
- package/dist/commands/package.d.ts.map +1 -0
- package/dist/commands/package.js +746 -0
- package/dist/commands/package.js.map +1 -0
- package/dist/commands/provider.d.ts +3 -0
- package/dist/commands/provider.d.ts.map +1 -0
- package/dist/commands/provider.js +285 -0
- package/dist/commands/provider.js.map +1 -0
- package/dist/commands/registry.d.ts +9 -0
- package/dist/commands/registry.d.ts.map +1 -0
- package/dist/commands/registry.js +361 -0
- package/dist/commands/registry.js.map +1 -0
- package/dist/commands/run.d.ts +3 -0
- package/dist/commands/run.d.ts.map +1 -0
- package/dist/commands/run.js +157 -0
- package/dist/commands/run.js.map +1 -0
- package/dist/commands/show.d.ts +3 -0
- package/dist/commands/show.d.ts.map +1 -0
- package/dist/commands/show.js +90 -0
- package/dist/commands/show.js.map +1 -0
- package/dist/commands/uninstall.d.ts +3 -0
- package/dist/commands/uninstall.d.ts.map +1 -0
- package/dist/commands/uninstall.js +95 -0
- package/dist/commands/uninstall.js.map +1 -0
- package/dist/commands/validate.d.ts +3 -0
- package/dist/commands/validate.d.ts.map +1 -0
- package/dist/commands/validate.js +57 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/commands/version.d.ts +3 -0
- package/dist/commands/version.d.ts.map +1 -0
- package/dist/commands/version.js +166 -0
- package/dist/commands/version.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +388 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/auth.d.ts +164 -0
- package/dist/lib/auth.d.ts.map +1 -0
- package/dist/lib/auth.js +388 -0
- package/dist/lib/auth.js.map +1 -0
- package/dist/lib/compiler/file-system.d.ts +178 -0
- package/dist/lib/compiler/file-system.d.ts.map +1 -0
- package/dist/lib/compiler/file-system.js +440 -0
- package/dist/lib/compiler/file-system.js.map +1 -0
- package/dist/lib/compiler/formatters/anthropic.d.ts +21 -0
- package/dist/lib/compiler/formatters/anthropic.d.ts.map +1 -0
- package/dist/lib/compiler/formatters/anthropic.js +95 -0
- package/dist/lib/compiler/formatters/anthropic.js.map +1 -0
- package/dist/lib/compiler/formatters/markdown.d.ts +17 -0
- package/dist/lib/compiler/formatters/markdown.d.ts.map +1 -0
- package/dist/lib/compiler/formatters/markdown.js +114 -0
- package/dist/lib/compiler/formatters/markdown.js.map +1 -0
- package/dist/lib/compiler/formatters/openai.d.ts +21 -0
- package/dist/lib/compiler/formatters/openai.d.ts.map +1 -0
- package/dist/lib/compiler/formatters/openai.js +98 -0
- package/dist/lib/compiler/formatters/openai.js.map +1 -0
- package/dist/lib/compiler/index.d.ts +56 -0
- package/dist/lib/compiler/index.d.ts.map +1 -0
- package/dist/lib/compiler/index.js +165 -0
- package/dist/lib/compiler/index.js.map +1 -0
- package/dist/lib/compiler/language-map.d.ts +31 -0
- package/dist/lib/compiler/language-map.d.ts.map +1 -0
- package/dist/lib/compiler/language-map.js +156 -0
- package/dist/lib/compiler/language-map.js.map +1 -0
- package/dist/lib/compiler/package-resolver.d.ts +68 -0
- package/dist/lib/compiler/package-resolver.d.ts.map +1 -0
- package/dist/lib/compiler/package-resolver.js +254 -0
- package/dist/lib/compiler/package-resolver.js.map +1 -0
- package/dist/lib/compiler/pipeline.d.ts +53 -0
- package/dist/lib/compiler/pipeline.d.ts.map +1 -0
- package/dist/lib/compiler/pipeline.js +209 -0
- package/dist/lib/compiler/pipeline.js.map +1 -0
- package/dist/lib/compiler/prompd-loader.d.ts +108 -0
- package/dist/lib/compiler/prompd-loader.d.ts.map +1 -0
- package/dist/lib/compiler/prompd-loader.js +270 -0
- package/dist/lib/compiler/prompd-loader.js.map +1 -0
- package/dist/lib/compiler/section-override.d.ts +40 -0
- package/dist/lib/compiler/section-override.d.ts.map +1 -0
- package/dist/lib/compiler/section-override.js +296 -0
- package/dist/lib/compiler/section-override.js.map +1 -0
- package/dist/lib/compiler/stages/assets.d.ts +71 -0
- package/dist/lib/compiler/stages/assets.d.ts.map +1 -0
- package/dist/lib/compiler/stages/assets.js +456 -0
- package/dist/lib/compiler/stages/assets.js.map +1 -0
- package/dist/lib/compiler/stages/codegen.d.ts +17 -0
- package/dist/lib/compiler/stages/codegen.d.ts.map +1 -0
- package/dist/lib/compiler/stages/codegen.js +64 -0
- package/dist/lib/compiler/stages/codegen.js.map +1 -0
- package/dist/lib/compiler/stages/dependency.d.ts +38 -0
- package/dist/lib/compiler/stages/dependency.d.ts.map +1 -0
- package/dist/lib/compiler/stages/dependency.js +307 -0
- package/dist/lib/compiler/stages/dependency.js.map +1 -0
- package/dist/lib/compiler/stages/lexical.d.ts +19 -0
- package/dist/lib/compiler/stages/lexical.d.ts.map +1 -0
- package/dist/lib/compiler/stages/lexical.js +92 -0
- package/dist/lib/compiler/stages/lexical.js.map +1 -0
- package/dist/lib/compiler/stages/semantic.d.ts +20 -0
- package/dist/lib/compiler/stages/semantic.d.ts.map +1 -0
- package/dist/lib/compiler/stages/semantic.js +166 -0
- package/dist/lib/compiler/stages/semantic.js.map +1 -0
- package/dist/lib/compiler/stages/template.d.ts +94 -0
- package/dist/lib/compiler/stages/template.d.ts.map +1 -0
- package/dist/lib/compiler/stages/template.js +1044 -0
- package/dist/lib/compiler/stages/template.js.map +1 -0
- package/dist/lib/compiler/types.d.ts +200 -0
- package/dist/lib/compiler/types.d.ts.map +1 -0
- package/dist/lib/compiler/types.js +137 -0
- package/dist/lib/compiler/types.js.map +1 -0
- package/dist/lib/config.d.ts +29 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +375 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/errors.d.ts +19 -0
- package/dist/lib/errors.d.ts.map +1 -0
- package/dist/lib/errors.js +47 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/executor.d.ts +18 -0
- package/dist/lib/executor.d.ts.map +1 -0
- package/dist/lib/executor.js +372 -0
- package/dist/lib/executor.js.map +1 -0
- package/dist/lib/git.d.ts +74 -0
- package/dist/lib/git.d.ts.map +1 -0
- package/dist/lib/git.js +254 -0
- package/dist/lib/git.js.map +1 -0
- package/dist/lib/index.d.ts +43 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +108 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/mcp.d.ts +42 -0
- package/dist/lib/mcp.d.ts.map +1 -0
- package/dist/lib/mcp.js +477 -0
- package/dist/lib/mcp.js.map +1 -0
- package/dist/lib/model-updater.d.ts +51 -0
- package/dist/lib/model-updater.d.ts.map +1 -0
- package/dist/lib/model-updater.js +275 -0
- package/dist/lib/model-updater.js.map +1 -0
- package/dist/lib/parser.d.ts +9 -0
- package/dist/lib/parser.d.ts.map +1 -0
- package/dist/lib/parser.js +197 -0
- package/dist/lib/parser.js.map +1 -0
- package/dist/lib/registry.d.ts +183 -0
- package/dist/lib/registry.d.ts.map +1 -0
- package/dist/lib/registry.js +786 -0
- package/dist/lib/registry.js.map +1 -0
- package/dist/lib/rpc-server.d.ts +78 -0
- package/dist/lib/rpc-server.d.ts.map +1 -0
- package/dist/lib/rpc-server.js +404 -0
- package/dist/lib/rpc-server.js.map +1 -0
- package/dist/lib/security.d.ts +120 -0
- package/dist/lib/security.d.ts.map +1 -0
- package/dist/lib/security.js +478 -0
- package/dist/lib/security.js.map +1 -0
- package/dist/lib/validation.d.ts +106 -0
- package/dist/lib/validation.d.ts.map +1 -0
- package/dist/lib/validation.js +398 -0
- package/dist/lib/validation.js.map +1 -0
- package/dist/lib/version.d.ts +29 -0
- package/dist/lib/version.d.ts.map +1 -0
- package/dist/lib/version.js +202 -0
- package/dist/lib/version.js.map +1 -0
- package/dist/lib/workflow-engine.d.ts +161 -0
- package/dist/lib/workflow-engine.d.ts.map +1 -0
- package/dist/lib/workflow-engine.js +422 -0
- package/dist/lib/workflow-engine.js.map +1 -0
- package/dist/lib/workflow.d.ts +102 -0
- package/dist/lib/workflow.d.ts.map +1 -0
- package/dist/lib/workflow.js +228 -0
- package/dist/lib/workflow.js.map +1 -0
- package/dist/server.d.ts +8 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +134 -0
- package/dist/server.js.map +1 -0
- package/dist/types/index.d.ts +116 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +144 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +104 -0
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createConfigCommand = createConfigCommand;
|
|
7
|
+
const commander_1 = require("commander");
|
|
8
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
+
const config_1 = require("../lib/config");
|
|
10
|
+
const provider_1 = require("./provider");
|
|
11
|
+
const registry_1 = require("./registry");
|
|
12
|
+
/**
|
|
13
|
+
* Creates the unified config command structure
|
|
14
|
+
* Matches Python CLI organization: prompd config <subcommand>
|
|
15
|
+
*/
|
|
16
|
+
function createConfigCommand() {
|
|
17
|
+
const command = new commander_1.Command('config');
|
|
18
|
+
command.description('Manage prompd configuration');
|
|
19
|
+
// Add subcommands
|
|
20
|
+
command.addCommand(createShowCommand());
|
|
21
|
+
command.addCommand(createRegistriesAliasCommand());
|
|
22
|
+
command.addCommand(createProvidersAliasCommand());
|
|
23
|
+
// Add provider and registry as subgroups under config
|
|
24
|
+
const providerCommand = (0, provider_1.createProviderCommand)();
|
|
25
|
+
providerCommand.name('provider');
|
|
26
|
+
command.addCommand(providerCommand);
|
|
27
|
+
const registryCommand = (0, registry_1.createRegistryCommand)();
|
|
28
|
+
registryCommand.name('registry');
|
|
29
|
+
command.addCommand(registryCommand);
|
|
30
|
+
return command;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* config show - Display all configuration
|
|
34
|
+
*/
|
|
35
|
+
function createShowCommand() {
|
|
36
|
+
const showCommand = new commander_1.Command('show');
|
|
37
|
+
showCommand
|
|
38
|
+
.description('Show all configuration settings')
|
|
39
|
+
.action(async () => {
|
|
40
|
+
try {
|
|
41
|
+
const configManager = config_1.ConfigManager.getInstance();
|
|
42
|
+
const config = await configManager.loadConfig();
|
|
43
|
+
console.log(chalk_1.default.bold.cyan('=== Prompd Configuration ===\n'));
|
|
44
|
+
// Defaults section
|
|
45
|
+
console.log(chalk_1.default.bold('Defaults:'));
|
|
46
|
+
console.log(` Provider: ${config.defaultProvider || chalk_1.default.gray('not set')}`);
|
|
47
|
+
console.log(` Model: ${config.defaultModel || chalk_1.default.gray('not set')}`);
|
|
48
|
+
console.log(` Registry: ${config.registry?.default || chalk_1.default.gray('prompdhub')}`);
|
|
49
|
+
console.log();
|
|
50
|
+
// API Keys section
|
|
51
|
+
console.log(chalk_1.default.bold('API Keys:'));
|
|
52
|
+
if (Object.keys(config.apiKeys || {}).length === 0) {
|
|
53
|
+
console.log(chalk_1.default.gray(' (none configured)'));
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
Object.keys(config.apiKeys || {}).forEach(provider => {
|
|
57
|
+
const key = config.apiKeys[provider];
|
|
58
|
+
const masked = key && key.length > 4 ? '*'.repeat(key.length - 4) + key.slice(-4) : '***';
|
|
59
|
+
console.log(` ${provider}: ${masked}`);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
console.log();
|
|
63
|
+
// Custom Providers section
|
|
64
|
+
console.log(chalk_1.default.bold('Custom Providers:'));
|
|
65
|
+
if (Object.keys(config.customProviders || {}).length === 0) {
|
|
66
|
+
console.log(chalk_1.default.gray(' (none configured)'));
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
Object.entries(config.customProviders || {}).forEach(([name, provider]) => {
|
|
70
|
+
const enabled = provider.enabled !== false ? chalk_1.default.green('enabled') : chalk_1.default.red('disabled');
|
|
71
|
+
console.log(` ${chalk_1.default.cyan(name)} - ${enabled}`);
|
|
72
|
+
console.log(` Base URL: ${provider.baseUrl}`);
|
|
73
|
+
console.log(` Models: ${provider.models.join(', ')}`);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
console.log();
|
|
77
|
+
// Registries section
|
|
78
|
+
console.log(chalk_1.default.bold('Registries:'));
|
|
79
|
+
const registries = config.registry?.registries || {};
|
|
80
|
+
if (Object.keys(registries).length === 0) {
|
|
81
|
+
console.log(chalk_1.default.gray(' (none configured)'));
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
Object.entries(registries).forEach(([name, registry]) => {
|
|
85
|
+
const isDefault = name === config.registry?.default;
|
|
86
|
+
const defaultMark = isDefault ? chalk_1.default.green(' (default)') : '';
|
|
87
|
+
console.log(` ${chalk_1.default.cyan(name)}${defaultMark}`);
|
|
88
|
+
console.log(` URL: ${registry.url || 'N/A'}`);
|
|
89
|
+
console.log(` User: ${registry.username || chalk_1.default.gray('not logged in')}`);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
console.log();
|
|
93
|
+
// Settings section
|
|
94
|
+
console.log(chalk_1.default.bold('Settings:'));
|
|
95
|
+
console.log(` Timeout: ${config.timeout || 30}s`);
|
|
96
|
+
console.log(` Max Retries: ${config.maxRetries || 3}`);
|
|
97
|
+
console.log(` Verbose: ${config.verbose ? 'yes' : 'no'}`);
|
|
98
|
+
console.log();
|
|
99
|
+
// Show config file location
|
|
100
|
+
const configPaths = [
|
|
101
|
+
require('path').join(require('os').homedir(), '.prmd', 'config.yaml'),
|
|
102
|
+
require('path').join(require('os').homedir(), '.prmd', 'config.json'),
|
|
103
|
+
];
|
|
104
|
+
console.log(chalk_1.default.gray(`Config file: ${configPaths[0]}`));
|
|
105
|
+
console.log(chalk_1.default.gray(`Use 'prompd config provider' and 'prompd config registry' to manage settings`));
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
console.error(chalk_1.default.red('Error displaying configuration:'), error instanceof Error ? error.message : error);
|
|
109
|
+
process.exit(1);
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
return showCommand;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* config registries - Alias for 'config registry list'
|
|
116
|
+
*/
|
|
117
|
+
function createRegistriesAliasCommand() {
|
|
118
|
+
const registriesCommand = new commander_1.Command('registries');
|
|
119
|
+
registriesCommand
|
|
120
|
+
.description('List configured registries (alias for "config registry list")')
|
|
121
|
+
.action(async () => {
|
|
122
|
+
try {
|
|
123
|
+
const configManager = config_1.ConfigManager.getInstance();
|
|
124
|
+
const config = await configManager.loadConfig();
|
|
125
|
+
const registries = config.registry?.registries || {};
|
|
126
|
+
const defaultRegistry = config.registry?.default || 'prompdhub';
|
|
127
|
+
if (Object.keys(registries).length === 0) {
|
|
128
|
+
console.log(chalk_1.default.yellow('No registries configured'));
|
|
129
|
+
console.log(chalk_1.default.dim("Use 'prompd config registry add' to add a registry"));
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
console.log(chalk_1.default.bold('Configured Registries:'));
|
|
133
|
+
for (const [name, registryConfig] of Object.entries(registries)) {
|
|
134
|
+
const defaultMark = name === defaultRegistry ? chalk_1.default.green(' (default)') : '';
|
|
135
|
+
const url = registryConfig.url || 'N/A';
|
|
136
|
+
const username = registryConfig.username || 'Not logged in';
|
|
137
|
+
console.log(` • ${chalk_1.default.cyan(name)}${defaultMark}`);
|
|
138
|
+
console.log(` URL: ${url}`);
|
|
139
|
+
console.log(` User: ${username}`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
catch (error) {
|
|
143
|
+
console.error(chalk_1.default.red('Error listing registries:'), error instanceof Error ? error.message : error);
|
|
144
|
+
process.exit(1);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
return registriesCommand;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* config providers - Alias for 'config provider list'
|
|
151
|
+
*/
|
|
152
|
+
function createProvidersAliasCommand() {
|
|
153
|
+
const providersCommand = new commander_1.Command('providers');
|
|
154
|
+
providersCommand
|
|
155
|
+
.description('List configured providers (alias for "config provider list")')
|
|
156
|
+
.action(async () => {
|
|
157
|
+
try {
|
|
158
|
+
const configManager = config_1.ConfigManager.getInstance();
|
|
159
|
+
const config = await configManager.loadConfig();
|
|
160
|
+
console.log(chalk_1.default.cyan('Available LLM Providers:\n'));
|
|
161
|
+
console.log(chalk_1.default.blue('🔧 Built-in Providers:'));
|
|
162
|
+
const builtinProviders = {
|
|
163
|
+
'openai': ['gpt-4o', 'gpt-4o-mini', 'gpt-3.5-turbo', 'gpt-4-turbo'],
|
|
164
|
+
'anthropic': ['claude-3-5-sonnet-20241022', 'claude-3-5-haiku-20241022', 'claude-3-opus-20240229'],
|
|
165
|
+
'groq': ['llama3-8b-8192', 'mixtral-8x7b-32768'],
|
|
166
|
+
'ollama': ['llama2', 'codellama', '(dynamic - depends on local installation)']
|
|
167
|
+
};
|
|
168
|
+
for (const [provider, models] of Object.entries(builtinProviders)) {
|
|
169
|
+
const hasKey = !!config.apiKeys?.[provider];
|
|
170
|
+
const status = hasKey ? '✓' : (provider === 'ollama' ? '✓' : chalk_1.default.yellow('⚠ (no API key)'));
|
|
171
|
+
console.log(` • ${chalk_1.default.cyan(provider)} ${status}`);
|
|
172
|
+
if (models.length > 0 && models[0] !== '(dynamic - depends on local installation)') {
|
|
173
|
+
const displayModels = models.slice(0, 3);
|
|
174
|
+
console.log(chalk_1.default.gray(` Models: ${displayModels.join(', ')}`));
|
|
175
|
+
if (models.length > 3) {
|
|
176
|
+
console.log(chalk_1.default.gray(' (and more...)'));
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
else if (models.length > 0) {
|
|
180
|
+
console.log(chalk_1.default.gray(` Models: ${models[0]}`));
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
console.log(`\n${chalk_1.default.blue('🏠 Custom Providers:')}`);
|
|
184
|
+
if (Object.keys(config.customProviders || {}).length === 0) {
|
|
185
|
+
console.log(chalk_1.default.gray(' (No custom providers configured)'));
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
for (const [name, provider] of Object.entries(config.customProviders || {})) {
|
|
189
|
+
let status = '✓';
|
|
190
|
+
if (provider.enabled === false) {
|
|
191
|
+
status = chalk_1.default.yellow('⚠ (disabled)');
|
|
192
|
+
}
|
|
193
|
+
else if (!config.apiKeys?.[name]) {
|
|
194
|
+
status = chalk_1.default.yellow('⚠ (no API key)');
|
|
195
|
+
}
|
|
196
|
+
console.log(` • ${chalk_1.default.cyan(name)} ${status}`);
|
|
197
|
+
console.log(chalk_1.default.gray(` Base URL: ${provider.baseUrl}`));
|
|
198
|
+
if (provider.models.length > 0) {
|
|
199
|
+
console.log(chalk_1.default.gray(` Models: ${provider.models.join(', ')}`));
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
console.log(`\nUse 'prompd config provider show <name>' for details`);
|
|
204
|
+
}
|
|
205
|
+
catch (error) {
|
|
206
|
+
console.error(chalk_1.default.red('Error listing providers:'), error instanceof Error ? error.message : error);
|
|
207
|
+
process.exit(1);
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
return providersCommand;
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,mBAAmB,IAAI,OAAO,CAwH7C"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.createCreateCommand = createCreateCommand;
|
|
40
|
+
const commander_1 = require("commander");
|
|
41
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
42
|
+
const fs = __importStar(require("fs-extra"));
|
|
43
|
+
const path = __importStar(require("path"));
|
|
44
|
+
const readline = __importStar(require("readline"));
|
|
45
|
+
function createCreateCommand() {
|
|
46
|
+
const createCommand = new commander_1.Command('create');
|
|
47
|
+
createCommand
|
|
48
|
+
.description('Create a new .prmd file')
|
|
49
|
+
.argument('<file>', 'Path to the .prmd file to create')
|
|
50
|
+
.option('-i, --interactive', 'Interactive mode with prompts')
|
|
51
|
+
.option('-n, --name <name>', 'Prompt name')
|
|
52
|
+
.option('-d, --description <description>', 'Description')
|
|
53
|
+
.option('-a, --author <author>', 'Author name')
|
|
54
|
+
.option('-v, --version <version>', 'Version', '1.0.0')
|
|
55
|
+
.action(async (file, options) => {
|
|
56
|
+
try {
|
|
57
|
+
// Ensure .prmd extension
|
|
58
|
+
let filePath = file;
|
|
59
|
+
if (!filePath.endsWith('.prmd')) {
|
|
60
|
+
filePath += '.prmd';
|
|
61
|
+
}
|
|
62
|
+
// Check if file exists
|
|
63
|
+
if (await fs.pathExists(filePath)) {
|
|
64
|
+
console.error(chalk_1.default.red(`ERROR: File already exists: ${filePath}`));
|
|
65
|
+
process.exit(1);
|
|
66
|
+
}
|
|
67
|
+
const baseName = path.basename(filePath, '.prmd');
|
|
68
|
+
let name = options.name;
|
|
69
|
+
let description = options.description || '';
|
|
70
|
+
let author = options.author || '';
|
|
71
|
+
let version = options.version;
|
|
72
|
+
let parameters = [];
|
|
73
|
+
// Interactive mode
|
|
74
|
+
if (options.interactive) {
|
|
75
|
+
console.log(chalk_1.default.blue(`Creating new ${path.basename(filePath)} interactively\n`));
|
|
76
|
+
const defaultName = baseName.replace(/-/g, ' ').replace(/\b\w/g, l => l.toUpperCase());
|
|
77
|
+
name = await promptWithDefault('Prompt name', name || defaultName);
|
|
78
|
+
description = await promptWithDefault('Description', description);
|
|
79
|
+
author = await promptWithDefault('Author', author);
|
|
80
|
+
version = await promptWithDefault('Version', version);
|
|
81
|
+
if (await promptYesNo('Add parameters?', false)) {
|
|
82
|
+
console.log('(Press Enter on empty name to finish)');
|
|
83
|
+
while (true) {
|
|
84
|
+
const paramName = await promptWithDefault('Parameter name (blank to finish)', '');
|
|
85
|
+
if (!paramName)
|
|
86
|
+
break;
|
|
87
|
+
const paramType = await promptWithDefault('Parameter type [string/integer/float/boolean]', 'string');
|
|
88
|
+
const paramDesc = await promptWithDefault('Parameter description', '');
|
|
89
|
+
const paramRequired = await promptYesNo('Required?', false);
|
|
90
|
+
parameters.push({
|
|
91
|
+
name: paramName,
|
|
92
|
+
type: paramType,
|
|
93
|
+
description: paramDesc,
|
|
94
|
+
required: paramRequired
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// Generate default name if not provided
|
|
101
|
+
if (!name) {
|
|
102
|
+
name = baseName.replace(/-/g, ' ').replace(/\b\w/g, l => l.toUpperCase());
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
// Generate ID from filename
|
|
106
|
+
const id = baseName;
|
|
107
|
+
// Create file content
|
|
108
|
+
let content = `---
|
|
109
|
+
id: ${id}
|
|
110
|
+
name: ${name}
|
|
111
|
+
version: ${version}`;
|
|
112
|
+
if (description) {
|
|
113
|
+
content += `\ndescription: ${description}`;
|
|
114
|
+
}
|
|
115
|
+
if (author) {
|
|
116
|
+
content += `\nauthor: ${author}`;
|
|
117
|
+
}
|
|
118
|
+
if (parameters.length > 0) {
|
|
119
|
+
content += `\nparameters:`;
|
|
120
|
+
for (const param of parameters) {
|
|
121
|
+
content += `\n - name: ${param.name}`;
|
|
122
|
+
content += `\n type: ${param.type}`;
|
|
123
|
+
if (param.description) {
|
|
124
|
+
content += `\n description: ${param.description}`;
|
|
125
|
+
}
|
|
126
|
+
if (param.required) {
|
|
127
|
+
content += `\n required: true`;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
content += `
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
# System
|
|
135
|
+
You are a helpful assistant.
|
|
136
|
+
|
|
137
|
+
# User
|
|
138
|
+
{prompt}
|
|
139
|
+
`;
|
|
140
|
+
// Write file
|
|
141
|
+
await fs.writeFile(filePath, content, 'utf-8');
|
|
142
|
+
console.log(chalk_1.default.green(`✓ Created ${filePath}`));
|
|
143
|
+
}
|
|
144
|
+
catch (error) {
|
|
145
|
+
console.error(chalk_1.default.red(`Failed to create file: ${error}`));
|
|
146
|
+
process.exit(1);
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
return createCommand;
|
|
150
|
+
}
|
|
151
|
+
function promptWithDefault(prompt, defaultValue) {
|
|
152
|
+
const rl = readline.createInterface({
|
|
153
|
+
input: process.stdin,
|
|
154
|
+
output: process.stdout
|
|
155
|
+
});
|
|
156
|
+
return new Promise((resolve) => {
|
|
157
|
+
const question = defaultValue ? `${prompt} [${defaultValue}]: ` : `${prompt}: `;
|
|
158
|
+
rl.question(question, (answer) => {
|
|
159
|
+
rl.close();
|
|
160
|
+
resolve(answer.trim() || defaultValue);
|
|
161
|
+
});
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
function promptYesNo(prompt, defaultValue) {
|
|
165
|
+
const rl = readline.createInterface({
|
|
166
|
+
input: process.stdin,
|
|
167
|
+
output: process.stdout
|
|
168
|
+
});
|
|
169
|
+
return new Promise((resolve) => {
|
|
170
|
+
const defaultStr = defaultValue ? 'Y' : 'N';
|
|
171
|
+
rl.question(`${prompt} [y/N] (default: ${defaultStr}): `, (answer) => {
|
|
172
|
+
rl.close();
|
|
173
|
+
const input = answer.toLowerCase().trim();
|
|
174
|
+
if (input === '') {
|
|
175
|
+
resolve(defaultValue);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
resolve(input === 'y' || input === 'yes');
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../src/commands/deps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,iBAAiB,IAAI,OAAO,CAsB3C"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.createDepsCommand = createDepsCommand;
|
|
37
|
+
const commander_1 = require("commander");
|
|
38
|
+
const fs = __importStar(require("fs-extra"));
|
|
39
|
+
const path = __importStar(require("path"));
|
|
40
|
+
const yaml = __importStar(require("yaml"));
|
|
41
|
+
function createDepsCommand() {
|
|
42
|
+
const depsCommand = new commander_1.Command('deps');
|
|
43
|
+
depsCommand
|
|
44
|
+
.description('Analyze project dependencies')
|
|
45
|
+
.argument('<target>', 'File, directory, package, or package reference to analyze')
|
|
46
|
+
.option('--tree', 'Show dependency tree')
|
|
47
|
+
.option('--conflicts', 'Check for version conflicts')
|
|
48
|
+
.action(async (target, options) => {
|
|
49
|
+
try {
|
|
50
|
+
await analyzeDependencies(target, options.tree || false, options.conflicts || false);
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
if (error instanceof Error) {
|
|
54
|
+
console.error(`ERROR: ${error.message}`);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
console.error('ERROR: Failed to analyze dependencies');
|
|
58
|
+
}
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
return depsCommand;
|
|
63
|
+
}
|
|
64
|
+
async function analyzeDependencies(target, showTree, showConflicts) {
|
|
65
|
+
// Check if target is a package reference
|
|
66
|
+
if (target.startsWith('@')) {
|
|
67
|
+
await analyzePackageDeps(target, showTree, showConflicts);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
// Check if it's a file or directory
|
|
71
|
+
const stats = await fs.stat(target);
|
|
72
|
+
if (stats.isDirectory()) {
|
|
73
|
+
await analyzeProjectDeps(target, showTree, showConflicts);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
if (target.endsWith('.prmd')) {
|
|
77
|
+
await analyzeFileDeps(target, showTree, showConflicts);
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
if (target.endsWith('.pdpkg')) {
|
|
81
|
+
await analyzePackageFileDeps(target, showTree, showConflicts);
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
throw new Error(`Unsupported target type: ${target}`);
|
|
85
|
+
}
|
|
86
|
+
async function analyzeProjectDeps(projectPath, showTree, showConflicts) {
|
|
87
|
+
const manifestPath = path.join(projectPath, 'prompd.json');
|
|
88
|
+
if (!await fs.pathExists(manifestPath)) {
|
|
89
|
+
throw new Error(`No prompd.json found in ${projectPath}`);
|
|
90
|
+
}
|
|
91
|
+
const manifest = await fs.readJSON(manifestPath);
|
|
92
|
+
console.log(`Dependencies for project: ${projectPath}`);
|
|
93
|
+
console.log();
|
|
94
|
+
const deps = manifest.dependencies || {};
|
|
95
|
+
const devDeps = manifest.devDependencies || {};
|
|
96
|
+
if (Object.keys(deps).length === 0 && Object.keys(devDeps).length === 0) {
|
|
97
|
+
console.log('No dependencies found');
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
if (Object.keys(deps).length > 0) {
|
|
101
|
+
console.log('Dependencies:');
|
|
102
|
+
for (const [pkg, version] of Object.entries(deps)) {
|
|
103
|
+
console.log(` ${pkg}@${version}`);
|
|
104
|
+
}
|
|
105
|
+
console.log();
|
|
106
|
+
}
|
|
107
|
+
if (Object.keys(devDeps).length > 0) {
|
|
108
|
+
console.log('Dev Dependencies:');
|
|
109
|
+
for (const [pkg, version] of Object.entries(devDeps)) {
|
|
110
|
+
console.log(` ${pkg}@${version}`);
|
|
111
|
+
}
|
|
112
|
+
console.log();
|
|
113
|
+
}
|
|
114
|
+
if (showTree) {
|
|
115
|
+
console.log('Dependency Tree:');
|
|
116
|
+
for (const [pkg, version] of Object.entries(deps)) {
|
|
117
|
+
printDependencyTree(pkg, version, 0, new Set());
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
if (showConflicts) {
|
|
121
|
+
const conflicts = detectConflicts(deps, devDeps);
|
|
122
|
+
if (conflicts.length > 0) {
|
|
123
|
+
console.log('⚠️ Version Conflicts:');
|
|
124
|
+
for (const conflict of conflicts) {
|
|
125
|
+
console.log(` ${conflict}`);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
console.log('✓ No version conflicts detected');
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
async function analyzeFileDeps(filePath, showTree, showConflicts) {
|
|
134
|
+
const content = await fs.readFile(filePath, 'utf-8');
|
|
135
|
+
// Parse YAML frontmatter
|
|
136
|
+
const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---/);
|
|
137
|
+
if (!frontmatterMatch) {
|
|
138
|
+
console.log('No frontmatter found in file');
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
const prompd = yaml.parse(frontmatterMatch[1]);
|
|
142
|
+
console.log(`Dependencies for file: ${filePath}`);
|
|
143
|
+
console.log();
|
|
144
|
+
if (!prompd.inherits) {
|
|
145
|
+
console.log('No inheritance dependencies');
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
console.log(`Inherits: ${prompd.inherits}`);
|
|
149
|
+
if (showTree) {
|
|
150
|
+
console.log('\nInheritance Chain:');
|
|
151
|
+
printInheritanceChain(prompd.inherits, 0, new Set());
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
async function analyzePackageFileDeps(packagePath, showTree, showConflicts) {
|
|
155
|
+
console.log(`Analyzing package: ${packagePath}`);
|
|
156
|
+
console.log('(Package dependency analysis not yet implemented)');
|
|
157
|
+
}
|
|
158
|
+
async function analyzePackageDeps(packageRef, showTree, showConflicts) {
|
|
159
|
+
console.log(`Analyzing package reference: ${packageRef}`);
|
|
160
|
+
console.log('(Registry package analysis not yet implemented)');
|
|
161
|
+
}
|
|
162
|
+
function printDependencyTree(pkg, version, depth, visited) {
|
|
163
|
+
const indent = ' '.repeat(depth);
|
|
164
|
+
const key = `${pkg}@${version}`;
|
|
165
|
+
if (visited.has(key)) {
|
|
166
|
+
console.log(`${indent}└─ ${key} (circular)`);
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
visited.add(key);
|
|
170
|
+
console.log(`${indent}└─ ${key}`);
|
|
171
|
+
// TODO: Fetch and analyze sub-dependencies
|
|
172
|
+
}
|
|
173
|
+
function printInheritanceChain(inherits, depth, visited) {
|
|
174
|
+
const indent = ' '.repeat(depth);
|
|
175
|
+
if (visited.has(inherits)) {
|
|
176
|
+
console.log(`${indent}└─ ${inherits} (circular reference)`);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
visited.add(inherits);
|
|
180
|
+
console.log(`${indent}└─ ${inherits}`);
|
|
181
|
+
// TODO: Fetch parent and continue chain
|
|
182
|
+
}
|
|
183
|
+
function detectConflicts(deps, devDeps) {
|
|
184
|
+
const conflicts = [];
|
|
185
|
+
for (const [pkg, version] of Object.entries(deps)) {
|
|
186
|
+
if (devDeps[pkg] && devDeps[pkg] !== version) {
|
|
187
|
+
conflicts.push(`${pkg}: dependency uses ${version}, devDependency uses ${devDeps[pkg]}`);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
return conflicts;
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=deps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deps.js","sourceRoot":"","sources":["../../src/commands/deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../../src/commands/explain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,oBAAoB,IAAI,OAAO,CAkC9C"}
|