UNPKG

@vfarcic/dot-ai

Version:

AI-powered development productivity platform that enhances software development workflows through intelligent automation and AI-driven assistance

66 lines (65 loc) 2.28 kB
"use strict"; /** * Pattern Vector Service * * Handles pattern-specific Vector DB operations * Extends BaseVectorService for organizational patterns */ Object.defineProperty(exports, "__esModule", { value: true }); exports.PatternVectorService = void 0; const base_vector_service_1 = require("./base-vector-service"); class PatternVectorService extends base_vector_service_1.BaseVectorService { constructor(collectionName = 'patterns', embeddingService) { super(collectionName, embeddingService); } // Implement abstract methods from BaseVectorService createSearchText(pattern) { const triggerText = pattern.triggers.join(' '); const resourceText = pattern.suggestedResources.join(' '); return `${pattern.description} ${triggerText} ${resourceText} ${pattern.rationale}`.toLowerCase(); } extractId(pattern) { return pattern.id; } createPayload(pattern) { return { description: pattern.description, triggers: pattern.triggers.map(t => t.toLowerCase()), suggestedResources: pattern.suggestedResources, rationale: pattern.rationale, createdAt: pattern.createdAt, createdBy: pattern.createdBy }; } payloadToData(payload) { return { id: '', // Will be set from document ID in base class description: payload.description, triggers: payload.triggers, suggestedResources: payload.suggestedResources, rationale: payload.rationale, createdAt: payload.createdAt, createdBy: payload.createdBy }; } // Public API methods - delegate to base class with appropriate names async storePattern(pattern) { await this.storeData(pattern); } async searchPatterns(query, options = {}) { return await this.searchData(query, options); } async getPattern(id) { return await this.getData(id); } async getAllPatterns() { return await this.getAllData(); } async deletePattern(id) { await this.deleteData(id); } async getPatternsCount() { return await this.getDataCount(); } } exports.PatternVectorService = PatternVectorService;