Skip to content

Commit b4eab53

Browse files
author
MattDHill
committed
random default avatars
1 parent 34d692d commit b4eab53

30 files changed

+70
-83
lines changed

Diff for: package-lock.json

+32-37
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: package.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
"@fortawesome/free-solid-svg-icons": "^5.9.0",
1515
"@fortawesome/react-fontawesome": "^0.1.4",
1616
"bignumber.js": "^9.0.0",
17-
"borker-rs-browser": "^0.1.26",
17+
"borker-rs-browser": "^0.1.28",
18+
"bs58": "^4.0.1",
1819
"crypto-js": "^3.1.9-1",
1920
"idb-keyval": "^3.2.0",
2021
"is-image": "^3.0.0",

Diff for: src/app/App.scss

+11
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,17 @@
99
margin-bottom: 14px;
1010
}
1111

12+
.list-avatar {
13+
position: relative;
14+
float: left;
15+
margin-right: 14px;
16+
margin-bottom: 14px;
17+
width: 50px;
18+
height: 50px;
19+
border-radius: 50px;
20+
object-fit: cover;
21+
}
22+
1223
.fab {
1324
position: fixed;
1425
bottom: 40px;

Diff for: src/app/components/bork-preview/bork-preview.scss

-10
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,6 @@
33
margin-right: 14px;
44
}
55

6-
.bork-avatar {
7-
position: relative;
8-
float: left;
9-
margin-right: 14px;
10-
width: 50px;
11-
height: 50px;
12-
border-radius: 50px;
13-
object-fit: cover;
14-
}
15-
166
.bork-username {
177
text-decoration: none;
188
font-weight: bold;

Diff for: src/app/components/bork-preview/bork-preview.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@ import { Link } from "react-router-dom"
33
import { Bork, BorkType } from '../../../types/types'
44
import BorkButtons from '../bork-buttons/bork-buttons'
55
import { fromNow } from '../../../util/timestamps'
6-
import defaultAvatar from '../../../assets/avatar-1.png'
76
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
87
import { faHeart, faRetweet } from '@fortawesome/free-solid-svg-icons'
98
import '../../App.scss'
109
import './bork-preview.scss'
10+
import { getDefaultAvatar } from '../../../util/functions'
1111

1212
export interface BorkPreviewComponentProps {
1313
bork: Bork
@@ -37,7 +37,7 @@ class BorkPreviewComponent extends React.PureComponent<BorkPreviewComponentProps
3737

3838
const avatar = (
3939
<Link to={`/profile/${bork.sender.address}`}>
40-
<img src={bork.sender.avatarLink || defaultAvatar} className="bork-avatar" alt='avatar' />
40+
<img src={bork.sender.avatarLink || getDefaultAvatar(bork.sender.address)} className='list-avatar' alt='avatar' />
4141
</Link>
4242
)
4343

Diff for: src/app/components/bork/bork.scss

-10
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,6 @@
22
margin-left: 14px;
33
}
44

5-
.bork-avatar {
6-
position: relative;
7-
float: left;
8-
margin-right: 14px;
9-
width: 50px;
10-
height: 50px;
11-
border-radius: 50px;
12-
object-fit: cover;
13-
}
14-
155
.bork-username {
166
text-decoration: none;
177
font-weight: bold;

Diff for: src/app/components/bork/bork.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@ import { Link } from "react-router-dom"
33
import { Bork, BorkType } from '../../../types/types'
44
import BorkButtons from '../bork-buttons/bork-buttons'
55
import { calendar } from '../../../util/timestamps'
6-
import defaultAvatar from '../../../assets/avatar-1.png'
76
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
87
import { faComments } from '@fortawesome/free-solid-svg-icons'
98
import '../../App.scss'
109
import './bork.scss'
10+
import { getDefaultAvatar } from '../../../util/functions'
1111

1212
export interface BorkComponentProps {
1313
bork: Bork
@@ -21,7 +21,7 @@ class BorkComponent extends React.PureComponent<BorkComponentProps> {
2121

2222
const avatar = (
2323
<Link to={`/profile/${bork.sender.address}`}>
24-
<img src={bork.sender.avatarLink || defaultAvatar} className="bork-avatar" alt='avatar' />
24+
<img src={bork.sender.avatarLink || getDefaultAvatar(bork.sender.address)} className="list-avatar" alt='avatar' />
2525
</Link>
2626
)
2727

Diff for: src/app/pages/explore/explore.scss

-10
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,6 @@
3030
margin: 14px;
3131
}
3232

33-
.user-item-avatar {
34-
position: relative;
35-
float: left;
36-
margin-right: 14px;
37-
margin-bottom: 14px;
38-
max-width: 50px;
39-
max-height: 50px;
40-
border-radius: 50px;
41-
}
42-
4333
.user-item-follow {
4434
position: relative;
4535
float: right;

Diff for: src/app/pages/explore/explore.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ import { Link } from 'react-router-dom'
33
import { AuthProps, withAuthContext } from '../../contexts/auth-context'
44
import { User, Bork, Tag, BorkType } from '../../../types/types'
55
import WebService from '../../web-service'
6-
import defaultAvatar from '../../../assets/avatar-1.png'
76
import FollowButton from '../../components/follow-button/follow-button'
87
import '../user-list/user-list.scss'
98
import './explore.scss'
109
import InfiniteScroll from 'react-infinite-scroller'
1110
import { Tabs, TabList, Tab, TabPanel } from 'react-tabs'
1211
import BorkList from '../../components/bork-list/bork-list'
12+
import { getDefaultAvatar } from '../../../util/functions'
1313

1414
export interface ExploreProps extends AuthProps {}
1515

@@ -120,7 +120,7 @@ class ExplorePage extends React.Component<ExploreProps, ExploreState> {
120120
<FollowButton user={user} />
121121
</div>
122122
<Link to={`/profile/${user.address}`} style={{ textDecoration: 'none' }}>
123-
<img src={user.avatarLink || defaultAvatar} className="user-item-avatar" alt='avatar' />
123+
<img src={user.avatarLink || getDefaultAvatar(user.address)} className="list-avatar" alt='avatar' />
124124
<span style={{ fontWeight: 'bold', color: 'black' }}>{user.name}</span><br />
125125
<span style={{ color: 'gray' }}>@{user.address.substring(0, 9)}</span><br />
126126
<p style={{ marginLeft: 64, color: 'black' }}>{user.bio}</p>

Diff for: src/app/pages/home/home.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class HomePage extends React.PureComponent {
1111
<div className="page-content">
1212
<div className="start-page">
1313
<h1>Borker <span>beta</span></h1>
14-
<div><img className="home-logo" src={logo} alt="logo"></img></div>
14+
<div><img className="home-logo" src={logo} alt='borker logo'></img></div>
1515
<button><Link to="create">Create Wallet</Link></button>
1616
<br/>
1717
<br/>

Diff for: src/app/pages/profile/profile-show/profile-show.scss

+4-2
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@
99

1010
.profile-avatar {
1111
margin-top: 20px;
12-
max-width: 80px;
13-
max-height: 80px;
12+
width: 80px;
13+
height: 80px;
14+
border-radius: 50px;
15+
object-fit: cover;
1416
}
1517

1618
.profile-update-list {

Diff for: src/app/pages/profile/profile-show/profile-show.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ import WebService from '../../../web-service'
88
import BorkList from '../../../components/bork-list/bork-list'
99
import FollowButton from '../../../components/follow-button/follow-button'
1010
import BlockButton from '../../../components/block-button/block-button'
11-
import defaultAvatar from '../../../../assets/avatar-1.png'
1211
import 'react-tabs/style/react-tabs.scss'
1312
import './profile-show.scss'
1413
import '../../../App.scss'
14+
import { getDefaultAvatar } from '../../../../util/functions'
1515

1616
export interface ProfileShowProps extends AuthProps {
1717
user: User
@@ -155,7 +155,7 @@ class ProfileShowPage extends React.Component<ProfileShowProps, ProfileShowState
155155
)}
156156
</div>
157157
<div className="profile-header">
158-
<img src={user.avatarLink || defaultAvatar} className="profile-avatar" alt='profile' />
158+
<img src={user.avatarLink || getDefaultAvatar(user.address)} className="profile-avatar" alt='avatar' />
159159
<h2>
160160
{user.name}
161161
</h2>

Diff for: src/app/pages/user-list/user-list.tsx

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import { Link } from 'react-router-dom'
44
import { AuthProps, withAuthContext } from '../../contexts/auth-context'
55
import { User, BorkType } from '../../../types/types'
66
import WebService from '../../web-service'
7-
import defaultAvatar from '../../../assets/avatar-1.png'
87
import FollowButton from '../../components/follow-button/follow-button'
98
import InfiniteScroll from 'react-infinite-scroller'
109
import './user-list.scss'
10+
import { getDefaultAvatar } from '../../../util/functions'
1111

1212
export enum FollowsType {
1313
following = 'following',
@@ -105,9 +105,9 @@ class UserListPage extends React.Component<UserListProps, UserListState> {
105105
style={{ textDecoration: 'none' }}
106106
>
107107
<img
108-
src={user.avatarLink || defaultAvatar}
109-
className="user-item-avatar"
110-
alt="avatar"
108+
src={user.avatarLink || getDefaultAvatar(user.address)}
109+
className="list-avatar"
110+
alt='avatar'
111111
/>
112112
<span style={{ fontWeight: 'bold', color: 'black' }}>
113113
{user.name}

Diff for: src/assets/avatar-0.png

34.6 KB
Loading

Diff for: src/assets/avatar-1.png

86.8 KB
Loading

Diff for: src/assets/avatar-2.png

173 KB
Loading

Diff for: src/assets/avatar-3.png

230 KB
Loading

Diff for: src/assets/avatar-4.png

206 KB
Loading

Diff for: src/assets/avatar-5.png

226 KB
Loading

Diff for: src/assets/avatar-6.png

194 KB
Loading

Diff for: src/assets/avatar-7.png

179 KB
Loading

Diff for: src/assets/avatar-8.png

177 KB
Loading

Diff for: src/assets/avatar-9.png

168 KB
Loading

Diff for: src/assets/avatar-a.png

426 KB
Loading

Diff for: src/assets/avatar-b.png

242 KB
Loading

Diff for: src/assets/avatar-c.png

327 KB
Loading

Diff for: src/assets/avatar-d.png

194 KB
Loading

Diff for: src/assets/avatar-e.png

190 KB
Loading

Diff for: src/assets/avatar-f.png

143 KB
Loading

Diff for: src/util/functions.ts

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
const bs58 = require('bs58')
2+
3+
export function getDefaultAvatar (address: string) {
4+
const buffer: Buffer = bs58.decode(address)
5+
const hex = buffer.toString('hex')
6+
const char = hex.charAt(4)
7+
return require(`../assets/avatar-${char}.png`)
8+
}

0 commit comments

Comments
 (0)