add 'stacking since' to profile

This commit is contained in:
keyan 2023-06-02 19:55:45 -05:00
parent 8ac570d403
commit d815cae715
5 changed files with 24 additions and 4 deletions

3
.gitignore vendored
View File

@ -19,8 +19,7 @@
# misc # misc
.DS_Store .DS_Store
*.pem *.pem
db.sql *.sql
test.sql
# debug # debug
npm-debug.log* npm-debug.log*

View File

@ -558,6 +558,18 @@ export default {
User: { User: {
authMethods, authMethods,
since: async (user, args, { models }) => {
// get the user's first item
const item = await models.item.findFirst({
where: {
userId: user.id
},
orderBy: {
createdAt: 'asc'
}
})
return item?.id
},
nitems: async (user, { when }, { models }) => { nitems: async (user, { when }, { models }) => {
if (typeof user.nitems === 'number') { if (typeof user.nitems === 'number') {
return user.nitems return user.nitems

View File

@ -63,6 +63,7 @@ export default gql`
photoId: Int photoId: Int
streak: Int streak: Int
sats: Int! sats: Int!
since: Int
upvotePopover: Boolean! upvotePopover: Boolean!
tipPopover: Boolean! tipPopover: Boolean!
noteItemSats: Boolean! noteItemSats: Boolean!

View File

@ -64,7 +64,7 @@ export default function UserHeader ({ user }) {
}} }}
/>} />}
</div> </div>
<div className='ml-0 ml-sm-1 mt-3 mt-sm-0 justify-content-center align-self-sm-center'> <div className='ml-0 ml-sm-3 mt-3 mt-sm-0 justify-content-center align-self-sm-center'>
{editting {editting
? ( ? (
<Form <Form
@ -126,7 +126,7 @@ export default function UserHeader ({ user }) {
<Satistics user={user} /> <Satistics user={user} />
<ModalButton <ModalButton
clicker={ clicker={
<Button className='font-weight-bold ml-0 ml-sm-2'> <Button className='font-weight-bold ml-0'>
<LightningIcon <LightningIcon
width={20} width={20}
height={20} height={20}
@ -140,6 +140,10 @@ export default function UserHeader ({ user }) {
</a> </a>
<div className='text-center font-weight-bold text-muted mt-3'>click or scan</div> <div className='text-center font-weight-bold text-muted mt-3'>click or scan</div>
</ModalButton> </ModalButton>
<small className='ml-0 mt-3 mt-sm-0 text-muted d-flex-inline'>stacking since: {user.since
? <Link href={`/items/${user.since}`} passHref><a className='ml-1'>#{user.since}</a></Link>
: <span>never</span>}
</small>
</div> </div>
</div> </div>
<Nav <Nav

View File

@ -184,6 +184,7 @@ export const USER_FULL = gql`
query User($name: String!) { query User($name: String!) {
user(name: $name) { user(name: $name) {
...UserFields ...UserFields
since
bio { bio {
...ItemWithComments ...ItemWithComments
} }
@ -196,6 +197,7 @@ export const USER_WITH_COMMENTS = gql`
query UserWithComments($name: String!) { query UserWithComments($name: String!) {
user(name: $name) { user(name: $name) {
...UserFields ...UserFields
since
} }
moreFlatComments(sort: "user", name: $name) { moreFlatComments(sort: "user", name: $name) {
cursor cursor
@ -224,6 +226,7 @@ export const USER_WITH_BOOKMARKS = gql`
query UserWithBookmarks($name: String!, $cursor: String) { query UserWithBookmarks($name: String!, $cursor: String) {
user(name: $name) { user(name: $name) {
...UserFields ...UserFields
since
} }
moreBookmarks(name: $name, cursor: $cursor) { moreBookmarks(name: $name, cursor: $cursor) {
cursor cursor
@ -240,6 +243,7 @@ export const USER_WITH_POSTS = gql`
query UserWithPosts($name: String!) { query UserWithPosts($name: String!) {
user(name: $name) { user(name: $name) {
...UserFields ...UserFields
since
} }
items(sort: "user", name: $name) { items(sort: "user", name: $name) {
cursor cursor