@@ -1,6 +1,100 @@
1import React from 'react';
1import React from 'react';
2+import { Grid, Flex } from 'indigo-react';
3+import * as ob from 'urbit-ob';
5+import { usePointCursor } from 'store/pointCursor';
2−import { View } from 'components/View';
7+import View from 'components/View';
8+import Sigil from 'components/Sigil';
10+import * as need from 'lib/need';
11+import { useLocalRouter } from 'lib/LocalRouter';
13+import { composeValidator, buildNumberValidator } from 'form/validators';
14+import BridgeForm from 'form/BridgeForm';
15+import FormError from 'form/FormError';
16+import SubmitButton from 'form/SubmitButton';
17+import { NumberInput, ColorInput } from 'form/Inputs';
36+const FG_COLORS = ['#000000', '#FFFFFF'];
4export default function SigilGenerator() {
38export default function SigilGenerator() {
39+ const { pop, push, names } = useLocalRouter();
40+ const { pointCursor } = usePointCursor();
42+ const validate = composeValidator({ size: buildNumberValidator(16) });
43+ const point = need.point(pointCursor);
44+ const onSubmit = () => {};
5− return <View></View>;
45+ return (
55+ {({ handleSubmit, values }) => (
57+ <Grid.Item full className="f7">
60+ <Grid.Item fourth={1}>
63+ patp={ob.patp(point)}
64+ colors={[values.bgColor, values.fgColor]}
68+ <Grid.Item full as={Flex} col>
69+ <Flex.Item className="mb1">Urbit ID</Flex.Item>
70+ <Flex.Item className="mono">{ob.patp(point)}</Flex.Item>
72+ <Grid.Item full as={NumberInput} name="size" label="Size (px)" />
77+ label="Background Color"
84+ label="Foreground Color"
90+ handleSubmit={handleSubmit}
94+ <Grid.Item full as={FormError} />