import getUserId from "../../../utils/getUserId"; import SuggestionsData from "../repositories/suggestionsData.entity"; import SuggestionsMetadata from "../repositories/suggestionsMetadata.entity"; import { SuggestionDataItem, SuggestionMetadataItem } from "./types"; export function parseSuggestionsData( data: SuggestionDataItem[], suggestsionsMetadata: SuggestionsMetadata[] ): SuggestionsData[] { const suggestions: SuggestionsData[] = []; for (let i = 0; i < data.length; i++) { const suggestion = new SuggestionsData(); suggestion.id = suggestsionsMetadata[i].id as number; suggestion.original_prefix = data[i].prefix; suggestion.original_suffix = data[i].suffix; suggestion.snapshot_prefix = data[i].snapshot_prefix; suggestion.snapshot_suffix = data[i].snapshot_suffix; suggestions.push(suggestion); } return suggestions; } export function parseSuggestionsMetadata( metadata: SuggestionMetadataItem[], user: Express.User | undefined ): SuggestionsMetadata[] { return metadata.map((item) => ({ suggestionId: item.id, user: getUserId(user), time: new Date(item.time), filename: item.filename || undefined, language: item.language || undefined, line: item.line || undefined, character: item.character || undefined, offset: item.offset || undefined, git_index_sha1: item.git_index_sha1 || undefined, git_branch: item.git_branch || undefined, git_repo: item.git_repo || undefined, })); }