on master help sign in
feat: update imports, cleanup sigil components
commitfa2a8acf2ad161126c3db48d4d9f5c247697bd4f authorMatt Condon (shrugs) <mattgcondon@gmail.com> dateTue 23 Jul 2019, 12:42 (7 years ago) parentc6db5dd
4 files changed+31−27
package-lock.json+4−5 package.json+1−1 src/components/InputSigil.js+18−9 src/components/Sigil.js+8−12
package-lock.json+4−5
@@ -2175,8 +2175,7 @@
21752175 "version": "github:urbit/sigil-js#03c880ff17a5816d78f659f44cb7df44e0a0c097",
21762176 "from": "github:urbit/sigil-js",
21772177 "requires": {
2178− "react": "^16.8.6",
2179− "svgson": "^4.0.0",
2178+ "lodash": "^4.17.10",
21802179 "transformation-matrix": "^1.14.0"
21812180 }
21822181 },
@@ -17537,9 +17536,9 @@
1753717536 }
1753817537 },
1753917538 "urbit-sigil-js": {
17540− "version": "1.3.2",
17541− "resolved": "https://registry.npmjs.org/urbit-sigil-js/-/urbit-sigil-js-1.3.2.tgz",
17542− "integrity": "sha512-cYmytvhsqYFo1HQSsfsjahJ6/DOW06ZAYEPOQD/OHKfeis3veVBZNOuM5PpAskDb5n68aVq1Xhx2oKno/TZ+LQ==",
17539+ "version": "1.3.3",
17540+ "resolved": "https://registry.npmjs.org/urbit-sigil-js/-/urbit-sigil-js-1.3.3.tgz",
17541+ "integrity": "sha512-fYvhNolngM6EFAfrb1T+psNS/Dt2osbhp5w3fUfw4VPHaV0WyxQN0y0HWux0Xnatza8At22h+NtGmvnInZy92g==",
1754317542 "requires": {
1754417543 "react": "^16.8.6",
1754517544 "svgson": "^4.0.0",
package.json+1−1
@@ -45,7 +45,7 @@
4545 "trezor-connect": "^7.0.1",
4646 "urbit-key-generation": "^0.16.0",
4747 "urbit-ob": "^4.0.1",
48− "urbit-sigil-js": "^1.3.2",
48+ "urbit-sigil-js": "^1.3.3",
4949 "web3": "1.0.0-beta.54",
5050 "web3-utils": "^1.0.0-beta.52"
5151 },
src/components/InputSigil.js+18−9
@@ -1,8 +1,8 @@
1−import React from 'react';
1+import React, { useEffect, useState } from 'react';
2+import { Just } from 'folktale/maybe';
23import * as ob from 'urbit-ob';
34
4−import Sigil from './Sigil';
5−import AspectRatio from './AspectRatio';
5+import MaybeSigil from './MaybeSigil';
66
77const selectColorway = (pass, fail, focused) => {
88 if (pass) {
@@ -29,12 +29,21 @@ export default function InputSigil({
2929 focused,
3030 ...rest
3131}) {
32− const colorway = selectColorway(pass, error, focused);
33− const valid = ob.isValidPatp(patp);
32+ const [lastValidPatp, setLastValidPatp] = useState(patp);
3433
35− return valid ? (
36− <Sigil patp={patp} size={size} colorway={colorway} margin={0} {...rest} />
37− ) : (
38− <AspectRatio aspectRatio={1} />
34+ useEffect(() => {
35+ if (ob.isValidPatp(patp)) {
36+ setLastValidPatp(patp);
37+ }
38+ }, [patp]);
39+
40+ return (
41+ <MaybeSigil
42+ patp={Just(lastValidPatp)}
43+ size={size}
44+ colors={selectColorway(pass, error, focused)}
45+ margin={0}
46+ {...rest}
47+ />
3948 );
4049}
src/components/Sigil.js+8−12
@@ -1,15 +1,11 @@
1−import React from 'react';
21import { sigil, reactRenderer } from 'urbit-sigil-js';
32
4−export default function Sigil({ patp, size, colorway, ...rest }) {
5− return (
6− <div>
7− {sigil({
8− patp: patp,
9− renderer: reactRenderer,
10− size: size,
11− colors: colorway,
12− })}
13− </div>
14− );
3+export default function Sigil({ patp, size, colors, ...rest }) {
4+ return sigil({
5+ patp,
6+ renderer: reactRenderer,
7+ size,
8+ colors,
9+ ...rest,
10+ });
1511}