@@ -1,5 +1,5 @@
1import React, { useState, useEffect, useCallback } from 'react';
1import React, { useState, useEffect, useCallback } from 'react';
2−import { Grid, H4 } from 'indigo-react';
2+import { Grid, H4, HelpText } from 'indigo-react';
3import { Nothing } from 'folktale/maybe';
3import { Nothing } from 'folktale/maybe';
4import * as ob from 'urbit-ob';
4import * as ob from 'urbit-ob';
@@ -7,6 +7,7 @@ import View from 'components/View';
7import Tabs from 'components/Tabs';
7import Tabs from 'components/Tabs';
8import Crumbs from 'components/Crumbs';
8import Crumbs from 'components/Crumbs';
9import Sigil from 'components/Sigil';
9import Sigil from 'components/Sigil';
10+import Blinky from 'components/Blinky';
11import { useLocalRouter } from 'lib/LocalRouter';
12import { useLocalRouter } from 'lib/LocalRouter';
12import useCurrentPointName from 'lib/useCurrentPointName';
13import useCurrentPointName from 'lib/useCurrentPointName';
@@ -30,13 +31,13 @@ const VIEWS = {
30 [NAMES.ALL]: AllResidents,
31 [NAMES.ALL]: AllResidents,
33−function Requests({ className, requests }) {
34+function Requests({ className, requests, onAccept, onDecline }) {
34− const onThing = () => {};
36 if (Nothing.hasInstance(requests)) {
35 if (Nothing.hasInstance(requests)) {
38 <Grid className={className}>
37 <Grid className={className}>
38+ <Grid.Item full as={HelpText} className="mt8 t-center">
39+ <Blinky /> Loading...
39− <Grid.Item full>Loading...</Grid.Item>
40+ </Grid.Item>
@@ -49,8 +50,8 @@ function Requests({ className, requests }) {
50 key={point}
51 key={point}
51 point={point}
52 point={point}
52− onAccept={onThing}
53+ onAccept={onAccept}
53− onDecline={onThing}
54+ onDecline={onDecline}
@@ -81,13 +82,15 @@ function Resident({ point, onAccept, onDecline }) {
81 {isRequest && (
82 {isRequest && (
83 <Grid.Item
84 <Grid.Item
84− className="flex-row-r align-center underline green3"
85+ className="flex-row-r align-center underline green3 pointer"
85− cols={[7, 10]}>
86+ cols={[7, 10]}
87+ onClick={() => onAccept(point)}>
87 </Grid.Item>
89 </Grid.Item>
88 <Grid.Item
90 <Grid.Item
89− className="flex-row-r align-center underline red4"
91+ className="flex-row-r align-center underline red4 pointer"
90− cols={[10, 13]}>
92+ cols={[10, 13]}
93+ onClick={() => onDecline(point)}>
92 </Grid.Item>
95 </Grid.Item>
@@ -118,7 +121,7 @@ function AllResidents({ className, residents }) {
120export default function Residents() {
123export default function Residents() {
121− const { pop } = useLocalRouter();
124+ const { pop, push, names } = useLocalRouter();
122 const name = useCurrentPointName();
125 const name = useCurrentPointName();
124 const { pointCursor } = usePointCursor();
127 const { pointCursor } = usePointCursor();
@@ -133,8 +136,22 @@ export default function Residents() {
134 const [currentTab, setCurrentTab] = useState(NAMES.ALL);
137 const [currentTab, setCurrentTab] = useState(NAMES.ALL);
139+ const onAccept = useCallback(adoptee =>
146+ const onDecline = useCallback(adoptee =>
137− <View pop={pop}>
154+ <View pop={pop} inset>
139 <Grid.Item
156 <Grid.Item
@@ -156,6 +173,8 @@ export default function Residents() {
156 // Props for tab
173 // Props for tab
157 residents={residents}
174 residents={residents}
158 requests={requests}
175 requests={requests}
177+ onDecline={onDecline}