feat: integrar credenciais rustdesk aos acessos remotos
This commit is contained in:
parent
4079f67fcb
commit
07d631de40
5 changed files with 243 additions and 5 deletions
|
|
@ -1991,6 +1991,8 @@ type RemoteAccessEntry = {
|
|||
provider: string
|
||||
identifier: string
|
||||
url: string | null
|
||||
username: string | null
|
||||
password: string | null
|
||||
notes: string | null
|
||||
lastVerifiedAt: number | null
|
||||
metadata: Record<string, unknown> | null
|
||||
|
|
@ -2032,6 +2034,8 @@ function normalizeRemoteAccessEntry(raw: unknown): RemoteAccessEntry | null {
|
|||
provider: "Remoto",
|
||||
identifier: isUrl ? trimmed : trimmed,
|
||||
url: isUrl ? trimmed : null,
|
||||
username: null,
|
||||
password: null,
|
||||
notes: null,
|
||||
lastVerifiedAt: null,
|
||||
metadata: null,
|
||||
|
|
@ -2059,6 +2063,19 @@ function normalizeRemoteAccessEntry(raw: unknown): RemoteAccessEntry | null {
|
|||
null
|
||||
const resolvedIdentifier = identifier ?? url ?? "Acesso remoto"
|
||||
const notes = coerceString(record.notes) ?? coerceString(record.note) ?? coerceString(record.description) ?? coerceString(record.obs) ?? null
|
||||
const username =
|
||||
coerceString((record as Record<string, unknown>).username) ??
|
||||
coerceString((record as Record<string, unknown>).user) ??
|
||||
coerceString((record as Record<string, unknown>).login) ??
|
||||
coerceString((record as Record<string, unknown>).email) ??
|
||||
coerceString((record as Record<string, unknown>).account) ??
|
||||
null
|
||||
const password =
|
||||
coerceString((record as Record<string, unknown>).password) ??
|
||||
coerceString((record as Record<string, unknown>).pass) ??
|
||||
coerceString((record as Record<string, unknown>).secret) ??
|
||||
coerceString((record as Record<string, unknown>).pin) ??
|
||||
null
|
||||
const timestamp =
|
||||
coerceNumber(record.lastVerifiedAt) ??
|
||||
coerceNumber(record.verifiedAt) ??
|
||||
|
|
@ -2075,6 +2092,8 @@ function normalizeRemoteAccessEntry(raw: unknown): RemoteAccessEntry | null {
|
|||
provider,
|
||||
identifier: resolvedIdentifier,
|
||||
url,
|
||||
username,
|
||||
password,
|
||||
notes,
|
||||
lastVerifiedAt: timestamp,
|
||||
metadata,
|
||||
|
|
@ -2105,12 +2124,14 @@ export const updateRemoteAccess = mutation({
|
|||
provider: v.optional(v.string()),
|
||||
identifier: v.optional(v.string()),
|
||||
url: v.optional(v.string()),
|
||||
username: v.optional(v.string()),
|
||||
password: v.optional(v.string()),
|
||||
notes: v.optional(v.string()),
|
||||
action: v.optional(v.string()),
|
||||
entryId: v.optional(v.string()),
|
||||
clear: v.optional(v.boolean()),
|
||||
},
|
||||
handler: async (ctx, { machineId, actorId, provider, identifier, url, notes, action, entryId, clear }) => {
|
||||
handler: async (ctx, { machineId, actorId, provider, identifier, url, username, password, notes, action, entryId, clear }) => {
|
||||
const machine = await ctx.db.get(machineId)
|
||||
if (!machine) {
|
||||
throw new ConvexError("Dispositivo não encontrada")
|
||||
|
|
@ -2192,6 +2213,8 @@ export const updateRemoteAccess = mutation({
|
|||
}
|
||||
|
||||
const cleanedNotes = notes?.trim() ? notes.trim() : null
|
||||
const cleanedUsername = username?.trim() ? username.trim() : null
|
||||
const cleanedPassword = password?.trim() ? password.trim() : null
|
||||
const lastVerifiedAt = Date.now()
|
||||
const targetEntryId =
|
||||
coerceString(entryId) ??
|
||||
|
|
@ -2205,12 +2228,16 @@ export const updateRemoteAccess = mutation({
|
|||
provider: trimmedProvider,
|
||||
identifier: trimmedIdentifier,
|
||||
url: normalizedUrl,
|
||||
username: cleanedUsername,
|
||||
password: cleanedPassword,
|
||||
notes: cleanedNotes,
|
||||
lastVerifiedAt,
|
||||
metadata: {
|
||||
provider: trimmedProvider,
|
||||
identifier: trimmedIdentifier,
|
||||
url: normalizedUrl,
|
||||
username: cleanedUsername,
|
||||
password: cleanedPassword,
|
||||
notes: cleanedNotes,
|
||||
lastVerifiedAt,
|
||||
},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue