cyclic-dependency-fixer
Version:
AI-powered tool to detect and fix circular dependencies in JavaScript/TypeScript projects. Features intelligent refactoring with Claude/GPT-4, codebase pattern learning, and context-aware fix recommendations
33 lines • 1.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AIProviderFactory = void 0;
const IAIProvider_1 = require("../../domain/interfaces/IAIProvider");
const AnthropicProvider_1 = require("./AnthropicProvider");
const OpenAIProvider_1 = require("./OpenAIProvider");
const NoAIProvider_1 = require("./NoAIProvider");
class AIProviderFactory {
static create(config) {
switch (config.provider) {
case IAIProvider_1.AIProviderType.ANTHROPIC:
return new AnthropicProvider_1.AnthropicProvider(config.apiKey);
case IAIProvider_1.AIProviderType.OPENAI:
return new OpenAIProvider_1.OpenAIProvider(config.apiKey);
case IAIProvider_1.AIProviderType.NONE:
default:
return new NoAIProvider_1.NoAIProvider();
}
}
static createFromEnv() {
const anthropicKey = process.env.ANTHROPIC_API_KEY;
const openaiKey = process.env.OPENAI_API_KEY;
if (anthropicKey) {
return new AnthropicProvider_1.AnthropicProvider(anthropicKey);
}
if (openaiKey) {
return new OpenAIProvider_1.OpenAIProvider(openaiKey);
}
return new NoAIProvider_1.NoAIProvider();
}
}
exports.AIProviderFactory = AIProviderFactory;
//# sourceMappingURL=AIProviderFactory.js.map