clarify company profile button types

This commit is contained in:
2026-09-06 16:53:34 +03:00
parent 812667a90b
commit d2eaa16c77
+3 -3
View File
@@ -36,11 +36,11 @@ function ProfileEditor(){
const edit=(key,values)=>{setCaps(previous=>({...previous,[key]:values}));setMessage('Kaydedilmemiş değişiklikler var.');}; const edit=(key,values)=>{setCaps(previous=>({...previous,[key]:values}));setMessage('Kaydedilmemiş değişiklikler var.');};
return <div className="fixed inset-0 z-50 flex items-center justify-center p-4 bg-slate-900/70"> return <div className="fixed inset-0 z-50 flex items-center justify-center p-4 bg-slate-900/70">
<section {...modalFocus} role="dialog" aria-modal="true" aria-labelledby={titleId} tabIndex={-1} className="bg-white rounded-2xl w-full max-w-3xl max-h-[92vh] overflow-y-auto p-5 space-y-4"> <section {...modalFocus} role="dialog" aria-modal="true" aria-labelledby={titleId} tabIndex={-1} className="bg-white rounded-2xl w-full max-w-3xl max-h-[92vh] overflow-y-auto p-5 space-y-4">
<div className="flex justify-between gap-3"><h2 id={titleId} className="font-bold text-lg">Firma ürün ve faaliyet profili</h2><button aria-label="Firma profilini kapat" onClick={()=>setIsCompanyScannerOpen(false)}><X/></button></div> <div className="flex justify-between gap-3"><h2 id={titleId} className="font-bold text-lg">Firma ürün ve faaliyet profili</h2><button type="button" aria-label="Firma profilini kapat" onClick={()=>setIsCompanyScannerOpen(false)}><X/></button></div>
<p className="text-sm text-slate-600">Ürünlerinizi elle ekleyebilir veya web sitenizden öneri alabilirsiniz. Tarama, ürün uygunluğunu ya da ÜTS/sertifika geçerliliğini doğrulamaz. Kaydetmeden kapatırsanız bu ekrandaki değişiklikler uygulanmaz.</p> <p className="text-sm text-slate-600">Ürünlerinizi elle ekleyebilir veya web sitenizden öneri alabilirsiniz. Tarama, ürün uygunluğunu ya da ÜTS/sertifika geçerliliğini doğrulamaz. Kaydetmeden kapatırsanız bu ekrandaki değişiklikler uygulanmaz.</p>
<form onSubmit={scan} className="flex gap-2 items-end flex-wrap"> <form onSubmit={scan} className="flex gap-2 items-end flex-wrap">
<label className="text-sm flex-1 min-w-0">Firma web sitesi<input aria-label="Firma web sitesi" type="url" required disabled={!!busy} value={url} onChange={e=>{setUrl(e.target.value);setMessage('Kaydedilmemiş değişiklikler var.');}} placeholder="https://www.firmaniz.com.tr" className="block border rounded p-2 w-full"/></label> <label className="text-sm flex-1 min-w-0">Firma web sitesi<input aria-label="Firma web sitesi" type="url" required disabled={!!busy} value={url} onChange={e=>{setUrl(e.target.value);setMessage('Kaydedilmemiş değişiklikler var.');}} placeholder="https://www.firmaniz.com.tr" className="block border rounded p-2 w-full"/></label>
<button disabled={!!busy} className="bg-blue-700 text-white rounded p-2 disabled:opacity-50">Web sitesinden öneri al</button> <button type="submit" disabled={!!busy} className="bg-blue-700 text-white rounded p-2 disabled:opacity-50">Web sitesinden öneri al</button>
</form> </form>
{busy&&<p role="status" className="flex gap-2 text-sm"><Loader2 className="w-4 h-4 animate-spin"/>{busy==='scan'?'Site taranıyor; sonuç bekleniyor…':'Profil kaydediliyor…'}</p>} {busy&&<p role="status" className="flex gap-2 text-sm"><Loader2 className="w-4 h-4 animate-spin"/>{busy==='scan'?'Site taranıyor; sonuç bekleniyor…':'Profil kaydediliyor…'}</p>}
{error&&<p role="alert" className="text-red-700 text-sm">{error}</p>} {error&&<p role="alert" className="text-red-700 text-sm">{error}</p>}
@@ -51,7 +51,7 @@ function ProfileEditor(){
<h3 className="font-bold text-sm">{label}</h3> <h3 className="font-bold text-sm">{label}</h3>
<form onSubmit={e=>{e.preventDefault();const value=(entries[key] || '').trim();if(!value)return;edit(key,[...new Set([...(caps[key] || []),value])]);setEntries(previous=>({...previous,[key]:''}));}} className="flex gap-2"> <form onSubmit={e=>{e.preventDefault();const value=(entries[key] || '').trim();if(!value)return;edit(key,[...new Set([...(caps[key] || []),value])]);setEntries(previous=>({...previous,[key]:''}));}} className="flex gap-2">
<input aria-label={`${label} yeni kayıt`} value={entries[key] || ''} onChange={e=>setEntries(previous=>({...previous,[key]:e.target.value}))} maxLength={300} className="min-w-0 w-full border rounded p-2 text-sm"/> <input aria-label={`${label} yeni kayıt`} value={entries[key] || ''} onChange={e=>setEntries(previous=>({...previous,[key]:e.target.value}))} maxLength={300} className="min-w-0 w-full border rounded p-2 text-sm"/>
<button className="border rounded p-2 text-sm" disabled={!(entries[key] || '').trim()} aria-label={`${label} ekle`}>Ekle</button> <button type="submit" className="border rounded p-2 text-sm" disabled={!(entries[key] || '').trim()} aria-label={`${label} ekle`}>Ekle</button>
</form> </form>
<ul className="space-y-2">{(caps[key] || []).map((value,index)=><li key={`${value}:${index}`} className="flex justify-between gap-2 text-sm break-words"><span>{value}</span><button type="button" aria-label={`${label}: ${value} kaldır`} onClick={()=>edit(key,caps[key].filter((_,i)=>i!==index))} className="text-red-700 shrink-0">Kaldır</button></li>)}</ul> <ul className="space-y-2">{(caps[key] || []).map((value,index)=><li key={`${value}:${index}`} className="flex justify-between gap-2 text-sm break-words"><span>{value}</span><button type="button" aria-label={`${label}: ${value} kaldır`} onClick={()=>edit(key,caps[key].filter((_,i)=>i!==index))} className="text-red-700 shrink-0">Kaldır</button></li>)}</ul>
</section>)} </section>)}