68 lines
1.8 KiB
TypeScript
68 lines
1.8 KiB
TypeScript
// Metro module 8876 (f8877).
|
|
import { serializeKey } from "../../_bundle/Module8877";
|
|
import Module589 from "../../_bundle/Module589";
|
|
import SnowflakeUtils from "../../utils/SnowflakeUtils";
|
|
import Dispatcher from "../../Dispatcher";
|
|
const users = {};
|
|
class VerifiedKeyStore extends Module589.PersistedStore {
|
|
static displayName = "VerifiedKeyStore";
|
|
static persistKey = "VerifiedKeyStore";
|
|
initialize(a0) {
|
|
let r4 = a0?.users;
|
|
if (r4 == null) {
|
|
r4 = {};
|
|
}
|
|
users = r4;
|
|
}
|
|
getState() {
|
|
return {
|
|
users
|
|
};
|
|
}
|
|
getKeyTrustedAt(a0, a1) {
|
|
const r9 = serializeKey(a1);
|
|
const r12 = users[a0];
|
|
return r12 == null ? void 0 : r12[r9];
|
|
}
|
|
isKeyVerified(a0, a1) {
|
|
return this.getKeyTrustedAt(a0, a1) != null;
|
|
}
|
|
getUserIds() {
|
|
return SnowflakeUtils.keys(users);
|
|
}
|
|
getUserVerifiedKeys(a0) {
|
|
return users[a0];
|
|
}
|
|
}
|
|
const verifiedKeyStore = new VerifiedKeyStore(Dispatcher, {
|
|
SECURE_FRAMES_VERIFIED_KEY_CREATE: function handleSecureFramesVerifiedKeyCreate({ userId, key }) {
|
|
let r3 = users[userId];
|
|
if (r3 == null) {
|
|
r3 = {};
|
|
}
|
|
users[userId] = r3;
|
|
r3[serializeKey(new Uint8Array(key))] = Date.now();
|
|
},
|
|
SECURE_FRAMES_VERIFIED_KEY_DELETE: function handleSecureFramesVerifiedKeyDelete({ userId, serializedKey }) {
|
|
const r8 = users[userId];
|
|
if (r8 == null) {
|
|
return false;
|
|
}
|
|
let r10 = delete r8[serializedKey];
|
|
const length = Object.keys(r8).length;
|
|
let r2 = false;
|
|
if (length === 0) {
|
|
delete users[userId];
|
|
r2 = true;
|
|
}
|
|
if (!r10) {
|
|
r10 = r2;
|
|
}
|
|
return r10;
|
|
},
|
|
SECURE_FRAMES_USER_VERIFIED_KEYS_DELETE: function handleSecureFramesUserVerifiedKeysDelete({ userId }) {
|
|
return users[userId] != null && delete users[userId];
|
|
}
|
|
});
|
|
export default verifiedKeyStore;
|