Dhanesh1/codegenius-your-ai-code-wizard
0
1document.addEventListener('DOMContentLoaded', function() {2 const chatContainer = document.getElementById('chat-container');3 const userInput = document.getElementById('user-input');4 const sendBtn = document.getElementById('send-btn');5 const languageSelect = document.getElementById('language-select');6 7 // Sample code generation function (in a real app, this would call an API)8 function generateCode(language, request) {9 // This is a mock function - in a real app, you'd call an API10 const examples = {11 java: `// ${request} in Java\npublic class Solution {\n public static void main(String[] args) {\n System.out.println("Hello, World!");\n }\n}`,12 c: `// ${request} in C\n#include <stdio.h>\n\nint main() {\n printf("Hello, World!\\n");\n return 0;\n}`,13 python: `# ${request} in Python\nprint("Hello, World!")`14 };15 16 return examples[language] || `// Sorry, I couldn't generate code for "${request}" in ${language}`;17 }18 19 function addMessage(type, content) {20 const bubble = document.createElement('custom-chat-bubble');21 bubble.setAttribute('type', type);22 bubble.textContent = content;23 chatContainer.appendChild(bubble);24 chatContainer.scrollTop = chatContainer.scrollHeight;25 }26 27 function addCodeMessage(language, code) {28 const bubble = document.createElement('custom-chat-bubble');29 bubble.setAttribute('type', 'bot');30 31 const pre = document.createElement('pre');32 const codeEl = document.createElement('code');33 codeEl.textContent = code;34 pre.appendChild(codeEl);35 36 bubble.appendChild(document.createTextNode(`Here's your ${language} code:`));37 bubble.appendChild(pre);38 39 chatContainer.appendChild(bubble);40 chatContainer.scrollTop = chatContainer.scrollHeight;41 }42 43 sendBtn.addEventListener('click', function() {44 const request = userInput.value.trim();45 if (!request) return;46 47 const language = languageSelect.value;48 const languageName = {java: 'Java', c: 'C', python: 'Python'}[language];49 50 addMessage('user', `${request} (in ${languageName})`);51 userInput.value = '';52 53 // Simulate thinking54 addMessage('bot', `Generating ${languageName} code for "${request}"...`);55 56 // Simulate API delay57 setTimeout(() => {58 const code = generateCode(language, request);59 addCodeMessage(languageName, code);60 feather.replace();61 }, 1000);62 });63 64 userInput.addEventListener('keypress', function(e) {65 if (e.key === 'Enter') {66 sendBtn.click();67 }68 });69});