File size: 14,755 Bytes
960ea1a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 | <!DOCTYPE html>
<html lang="hi">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Vedika AI - Premium Workspace</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/styles/atom-one-dark.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/highlight.min.js"></script>
<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;800&display=swap');
body { font-family: 'Inter', sans-serif; background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%); color: #f8fafc; height: 100vh; margin: 0; overflow: hidden; }
.glass-panel { background: rgba(255, 255, 255, 0.03); backdrop-filter: blur(16px); border: 1px solid rgba(255, 255, 255, 0.05); box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); }
.chat-container { height: calc(100vh - 180px); overflow-y: auto; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,0.2) transparent; }
.chat-container::-webkit-scrollbar { width: 6px; }
.chat-container::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.2); border-radius: 10px; }
.user-message { background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%); border-radius: 20px 20px 0 20px; }
.ai-message { background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 20px 20px 20px 0; }
.typing-indicator span { display: inline-block; width: 8px; height: 8px; background-color: #60a5fa; border-radius: 50%; margin-right: 4px; animation: typing 1.4s infinite both; }
.typing-indicator span:nth-child(1) { animation-delay: -0.32s; } .typing-indicator span:nth-child(2) { animation-delay: -0.16s; }
@keyframes typing { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1); } }
.markdown-body pre { background: #1e1e1e; padding: 15px; border-radius: 10px; overflow-x: auto; margin-top: 10px; }
.markdown-body code { font-family: 'Courier New', monospace; color: #a78bfa; }
</style>
</head>
<body class="flex flex-col h-screen">
<header class="glass-panel py-4 px-8 flex justify-between items-center z-10">
<div class="flex items-center gap-3">
<div class="w-10 h-10 rounded-full bg-blue-600 flex items-center justify-center text-xl font-bold shadow-lg shadow-blue-500/50">V</div>
<div><h1 class="text-xl font-bold tracking-wide">Vedika AI</h1><p class="text-xs text-blue-300">Enterprise Edition - Designed by Divy Patel</p></div>
</div>
<div class="flex items-center gap-4">
<select id="modelSelector" class="glass-panel bg-transparent text-sm text-white px-4 py-2 rounded-lg outline-none cursor-pointer">
<option value="FLASH" class="text-black">⚡ Vedika Flash</option>
<option value="PRO" class="text-black">🧠 Vedika Pro</option>
<option value="DEEP_THINKER" class="text-black">🤔 Deep Thinker</option>
<option value="IMAGE" class="text-black">🎨 Chitrakaar</option>
<option value="CODE" class="text-black">💻 Code Genesis</option>
<option value="COMPOUND" class="text-black">🌌 Next Gen Compound</option>
</select>
<div id="tokenUI" class="flex items-center gap-2">
<button onclick="generateAndSaveToken()" class="bg-green-500 hover:bg-green-600 text-white px-4 py-2 rounded-lg text-sm font-semibold transition-all shadow-lg flex items-center gap-2">
<i class="fa-solid fa-key"></i> Generate Security Token
</button>
</div>
<div id="tokenActiveUI" class="hidden flex items-center gap-2 text-green-400 text-sm font-semibold">
<i class="fa-solid fa-shield-check"></i> <span id="tokenDisplay">Secured</span>
<button onclick="clearToken()" class="text-red-400 hover:text-red-300 ml-2" title="Revoke Token"><i class="fa-solid fa-power-off"></i></button>
</div>
</div>
</header>
<main class="flex-1 overflow-hidden relative w-full max-w-6xl mx-auto p-4">
<div id="chatBox" class="chat-container w-full h-full pr-4 pb-20 flex flex-col gap-6">
<div class="flex w-full mt-4">
<div class="ai-message glass-panel p-5 max-w-3xl text-sm md:text-base markdown-body shadow-lg">
<p>नमस्कार आदरणीय दिव्य जी! 🙏</p>
<p>मैं <b>Vedika AI</b> हूँ। आपका एंटरप्राइज-ग्रेड सर्वर और सिक्योरिटी सिस्टम इसी स्पेस में सफलतापूर्वक लाइव है।</p>
</div>
</div>
</div>
</main>
<footer class="fixed bottom-0 w-full p-4 z-20">
<div class="max-w-4xl mx-auto glass-panel rounded-2xl p-2 flex items-end gap-2 shadow-2xl relative">
<input type="file" id="fileInput" class="hidden" accept="image/*, audio/*, video/*" onchange="handleFileSelect(event)">
<button onclick="document.getElementById('fileInput').click()" class="p-4 text-gray-400 hover:text-blue-400 transition-colors rounded-xl hover:bg-white/5"><i class="fa-solid fa-paperclip text-xl"></i></button>
<div id="filePreview" class="hidden absolute -top-12 left-4 glass-panel px-4 py-2 rounded-lg text-xs flex items-center gap-2 text-blue-300">
<i class="fa-solid fa-file"></i> <span id="fileName">file.jpg</span>
<button onclick="removeFile()" class="text-red-400 hover:text-red-500 ml-2"><i class="fa-solid fa-times"></i></button>
</div>
<textarea id="userInput" rows="1" placeholder="Type your command here..." class="flex-1 bg-transparent text-white outline-none resize-none max-h-32 p-3 text-sm" oninput="this.style.height = ''; this.style.height = this.scrollHeight + 'px'"></textarea>
<button id="sendBtn" onclick="sendMessage()" class="bg-blue-600 hover:bg-blue-500 text-white p-4 rounded-xl transition-all shadow-lg flex items-center justify-center min-w-[60px]"><i class="fa-solid fa-paper-plane text-xl"></i></button>
</div>
</footer>
<script>
</script>
</body>
</html>
|