on cd5c22a help sign in
bridge/src/lib/utils/proxy.ts
33 lines 1.1 kB history raw
1import { Ownership } from '@urbit/roller-api';
3// TODO: test when all proxies are configured to the same address
4export const getProxy = (
5 owner: Ownership,
6 address: string
7): string | undefined =>
8 owner.owner?.address === address
9 ? 'own'
10 : owner.managementProxy?.address === address
11 ? 'manage'
12 : owner.spawnProxy?.address === address
13 ? 'spawn'
14 : owner.votingProxy?.address === address
15 ? 'vote'
16 : owner.transferProxy?.address === address
17 ? 'transfer'
18 : undefined;
20export const isManagementProxy = (owner: Ownership, address: string) =>
21 owner.managementProxy?.address === address;
23export const isTransferProxy = (owner: Ownership, address: string) =>
24 owner.transferProxy?.address === address;
26export const isVotingProxy = (owner: Ownership, address: string) =>
27 owner.votingProxy?.address === address;
29export const isSpawnProxy = (owner: Ownership, address: string) =>
30 owner.spawnProxy?.address === address;
32export const isOwnerProxy = (owner: Ownership, address: string) =>
33 owner.owner?.address === address;