UNPKG

@e280/authlocal

Version:

User-sovereign login system for everybody

39 lines 1.09 kB
import { signal } from "@benev/slate"; import { validLabel } from "../../../../common/utils/validation.js"; export class IdentityDraft { #identity; #label; constructor(identity) { this.#identity = signal(identity); this.#label = signal(identity.label); } get identity() { return this.#identity.value; } set identity(fresh) { this.#identity.value = fresh; this.#label.value = fresh.label; } setEditedLabel(label) { this.#label.value = label; } getEditedLabel() { return this.#label.value; } hasValidChanges() { const label = this.getEditedLabel(); const changed = label !== this.identity.label; return changed && validLabel(label); } getValidEditedIdentity() { const label = this.getEditedLabel(); return validLabel(label) ? { label, id: this.#identity.value.id, secret: this.#identity.value.secret, } : null; } } //# sourceMappingURL=draft.js.map