@@ -47,9 +47,12 @@ export default function usePermissionsForPoint(address, point) {
47 const isPlanet = pointSize === azimuth.PointSize.Planet;
47 const isPlanet = pointSize === azimuth.PointSize.Planet;
48 const isStar = pointSize === azimuth.PointSize.Star;
48 const isStar = pointSize === azimuth.PointSize.Star;
49 const isGalaxy = pointSize === azimuth.PointSize.Galaxy;
49 const isGalaxy = pointSize === azimuth.PointSize.Galaxy;
50+ const isParent = isStar || isGalaxy;
52+ const isActive = details.active;
51 const isOwner = eqAddr(address, details.owner);
54 const isOwner = eqAddr(address, details.owner);
52− const isActiveOwner = isOwner && details.active;
55+ const isActiveOwner = isOwner && isActive;
53 const isManagementProxy = eqAddr(address, details.managementProxy);
56 const isManagementProxy = eqAddr(address, details.managementProxy);
54 const isSpawnProxy = eqAddr(address, details.spawnProxy);
57 const isSpawnProxy = eqAddr(address, details.spawnProxy);
55 const isVotingProxy = eqAddr(address, details.votingProxy);
58 const isVotingProxy = eqAddr(address, details.votingProxy);
@@ -62,8 +65,9 @@ export default function usePermissionsForPoint(address, point) {
63 const canManage = isOwner || isManagementProxy;
66 const canManage = isOwner || isManagementProxy;
64 const canTransfer = isOwner || isTransferProxy;
67 const canTransfer = isOwner || isTransferProxy;
65− const canSpawn = (isStar || isGalaxy) && (isOwner || isSpawnProxy);
68+ const canSpawn =
69+ isParent && (isOwner || isSpawnProxy) && details.keyRevisionNumber > 0;
66− const canVote = isGalaxy && (isOwner || isVotingProxy);
70+ const canVote = isGalaxy && isActive && (isOwner || isVotingProxy);
68 const spawnIsDelegatedSending = eqAddr(
72 const spawnIsDelegatedSending = eqAddr(
69 _contracts.delegatedSending.address,
73 _contracts.delegatedSending.address,
@@ -74,6 +78,9 @@ export default function usePermissionsForPoint(address, point) {
79 isActiveOwner,
86 isActiveOwner,