feat: 3.01 header logos+nav, 3.09 dynamic contact types, 3.10 hot-desk window, 3.11 vault email+link
This commit is contained in:
@@ -267,6 +267,11 @@ export function PasswordVaultModule() {
|
||||
</div>
|
||||
<p className="text-xs text-muted-foreground">
|
||||
{entry.username}
|
||||
{entry.email && (
|
||||
<span className="ml-2 text-muted-foreground/70">
|
||||
({entry.email})
|
||||
</span>
|
||||
)}
|
||||
</p>
|
||||
<div className="flex items-center gap-2">
|
||||
<code className="text-xs">
|
||||
@@ -301,9 +306,19 @@ export function PasswordVaultModule() {
|
||||
)}
|
||||
</div>
|
||||
{entry.url && (
|
||||
<p className="flex items-center gap-1 text-xs text-muted-foreground">
|
||||
<a
|
||||
href={
|
||||
entry.url.startsWith("http")
|
||||
? entry.url
|
||||
: `https://${entry.url}`
|
||||
}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="flex items-center gap-1 text-xs text-primary hover:underline"
|
||||
onClick={(e) => e.stopPropagation()}
|
||||
>
|
||||
<ExternalLink className="h-3 w-3" /> {entry.url}
|
||||
</p>
|
||||
</a>
|
||||
)}
|
||||
{entry.customFields && entry.customFields.length > 0 && (
|
||||
<div className="mt-1 flex flex-wrap gap-1">
|
||||
@@ -408,6 +423,7 @@ function VaultForm({
|
||||
}) {
|
||||
const [label, setLabel] = useState(initial?.label ?? "");
|
||||
const [username, setUsername] = useState(initial?.username ?? "");
|
||||
const [email, setEmail] = useState(initial?.email ?? "");
|
||||
const [password, setPassword] = useState(initial?.password ?? "");
|
||||
const [url, setUrl] = useState(initial?.url ?? "");
|
||||
const [category, setCategory] = useState<VaultEntryCategory>(
|
||||
@@ -468,6 +484,7 @@ function VaultForm({
|
||||
onSubmit({
|
||||
label,
|
||||
username,
|
||||
email,
|
||||
password,
|
||||
url,
|
||||
category,
|
||||
@@ -539,6 +556,16 @@ function VaultForm({
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<Label>Email</Label>
|
||||
<Input
|
||||
type="email"
|
||||
value={email}
|
||||
onChange={(e) => setEmail(e.target.value)}
|
||||
className="mt-1"
|
||||
placeholder="utilizator@exemplu.ro"
|
||||
/>
|
||||
</div>
|
||||
<div>
|
||||
<Label>Parolă</Label>
|
||||
<div className="mt-1 flex gap-1.5">
|
||||
|
||||
@@ -19,6 +19,7 @@ export interface VaultEntry {
|
||||
id: string;
|
||||
label: string;
|
||||
username: string;
|
||||
email: string;
|
||||
password: string;
|
||||
url: string;
|
||||
category: VaultEntryCategory;
|
||||
|
||||
Reference in New Issue
Block a user