mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-23 15:08:16 +02:00
v0.5.11 : themes clair/sombre par famille + police reglable + affichage a la carte + cle API Crawl4AI
- Apparence repensee : la liste ne montre plus que les FAMILLES de theme (Classique, AJEAN, Doux, ChatGPT) avec un interrupteur clair/sombre, au lieu d'une entree par variante. Nouveau theme « ChatGPT sombre » (fond quasi noir). - Le theme par defaut redevient « clair ». - Nouveau reglage « police », independant du theme : du theme / Mono / Systeme / Lexend / Serif (Lexend n'est telechargee que si elle est choisie). - Le mode « complet / simple » laisse place a quatre interrupteurs : masquer le raisonnement, masquer les appels d'outils, garder les bulles repliees, barre laterale escamotable (tiroir meme sur ordinateur). L'ancien reglage est repris. - Cle API du serveur Crawl4AI reglable depuis l'UI (et `jean internet key`) : envoyee en Authorization: Bearer sur toutes les requetes, jamais relue par l'API (indice sur 4 caracteres), preservee au changement de preset. - Mise en page : colonne de lecture bornee a 900 px en mode escamotable, marges d'origine sinon ; tiroir de meme largeur que la barre fixe ; bouton ☰ qui ne recouvre plus le fil ; logo et numero de version recales.
This commit is contained in:
1 parent
e2475c6688
commit
dbd4a6a570
16 files changed
+563
-197
No files matched your search
@@ -147,6 +147,16 @@ function renderInternet(s){
|
||||
document.getElementById('crawl-url').value = s.url || '';
|
||||
document.getElementById('internet-badge').innerHTML = internetOn
|
||||
? '<span class="tag ok">on</span>' : '<span class="tag" style="opacity:.6">off</span>';
|
||||
// Clé du serveur Crawl4AI : le champ reste vide (la clé n'est jamais renvoyée),
|
||||
// on indique seulement si une clé est enregistrée.
|
||||
const ks=document.getElementById('crawl-key-state'), kc=document.getElementById('crawl-key-clear');
|
||||
if(ks){
|
||||
ks.textContent = s.key_set ? ('clé enregistrée '+(s.key_hint||'')) : 'aucune clé — serveur ouvert';
|
||||
if(kc) kc.style.display = s.key_set ? '' : 'none';
|
||||
const ki=document.getElementById('crawl-key');
|
||||
if(ki && document.activeElement!==ki) ki.value='';
|
||||
if(ki) ki.placeholder = s.key_set ? 'clé enregistrée — saisir pour remplacer' : 'clé API (si le serveur en exige une)';
|
||||
}
|
||||
const st=document.getElementById('internet-status');
|
||||
if(!s.url){ st.textContent='serveur non configuré'; st.style.color=''; }
|
||||
else if(s.reachable){ st.innerHTML='<span style="color:var(--accent)">✓</span> serveur joignable — outils web actifs'; }
|
||||
@@ -228,5 +238,17 @@ async function saveCrawlUrl(){
|
||||
const url=document.getElementById('crawl-url').value.trim();
|
||||
renderInternet(await jpost('/api/internet',{url}));
|
||||
}
|
||||
async function saveCrawlKey(){
|
||||
const el=document.getElementById('crawl-key'), key=el.value.trim();
|
||||
if(!key){ toast('saisis une clé (ou « retirer » pour l\'enlever)'); return; }
|
||||
renderInternet(await jpost('/api/internet',{key}));
|
||||
toast('clé enregistrée');
|
||||
}
|
||||
async function clearCrawlKey(){
|
||||
if(!await askConfirm('Retirer la clé du serveur Crawl4AI ?')) return;
|
||||
document.getElementById('crawl-key').value='';
|
||||
renderInternet(await jpost('/api/internet',{key:''}));
|
||||
toast('clé retirée');
|
||||
}
|
||||
async function loadAll(){ await Promise.all([loadStatus(),loadVram(),loadRam(),loadCfg(),loadPresets(),loadAgent(),loadInternet(),loadMCP(),loadApiKey(),loadPrefs(),loadLlamacpp(),loadRemote()]); }
|
||||
async function act(a){ toast(a+'…'); await jpost('/api/'+a); setTimeout(loadAll,1500); }
|
||||
Reference in new issue
Block a user