Skip to content

Commit 0e717ad

Browse files
authored
Merge branch 'main' into improve-comment-styles
2 parents 4facd7f + a629469 commit 0e717ad

File tree

9 files changed

+69
-29
lines changed

9 files changed

+69
-29
lines changed

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
"react-dom": "^18.2.0",
3535
"react-error-boundary": "^3.1.4",
3636
"react-relay": "^13.0.2",
37+
"react-virtuoso": "^2.18.0",
3738
"relay-nextjs": "^0.6.0",
3839
"relay-runtime": "^13.0.2",
3940
"simple-oauth2": "^4.3.0",
@@ -65,6 +66,7 @@
6566
"relay-compiler": "^13.0.2",
6667
"relay-compiler-language-typescript": "^15.0.1",
6768
"relay-config": "^12.0.1",
69+
"tailwind-scrollbar": "^2.0.1",
6870
"tailwindcss": "^3.0.23",
6971
"typescript": "4.5.5"
7072
},

src/components/feed/Feed.tsx

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { graphql, usePaginationFragment } from 'react-relay'
2+
import { Virtuoso } from 'react-virtuoso'
23
import { FeedsQuery$key } from '../../queries/__generated__/FeedsQuery.graphql'
34
import StoryPreview from './StoryPreview'
45

@@ -7,12 +8,12 @@ type FeedProps = {
78
}
89

910
const Feed = ({ root }: FeedProps) => {
10-
const { data } = usePaginationFragment(
11+
const { data, loadNext } = usePaginationFragment(
1112
graphql`
1213
fragment FeedsQuery on Query
1314
@refetchable(queryName: "FeedsRoot_Query")
1415
@argumentDefinitions(
15-
count: { type: "Int", defaultValue: 10 }
16+
count: { type: "Int", defaultValue: 4 }
1617
cursor: { type: "String" }
1718
) {
1819
feeds(first: $count, after: $cursor)
@@ -30,11 +31,19 @@ const Feed = ({ root }: FeedProps) => {
3031
)
3132

3233
return (
33-
<>
34-
{data.feeds.edges.map(
35-
(edge) => edge && <StoryPreview story={edge?.node} key={edge.node.id} />
36-
)}
37-
</>
34+
<div>
35+
<Virtuoso
36+
className="min-h-screen scrollbar-thin scrollbar-thumb-gray-400 dark:scrollbar-thumb-gray-700 scrollbar-track-gray-300 dark:scrollbar-track-gray-500"
37+
data={data.feeds.edges}
38+
endReached={loadNext}
39+
overscan={200}
40+
itemContent={(index, edge) => {
41+
return (
42+
edge?.node && <StoryPreview story={edge?.node} key={edge.node.id} />
43+
)
44+
}}
45+
/>
46+
</div>
3847
)
3948
}
4049

src/components/feed/StoryPreview.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ const StoryPreview = ({ story }: StoryPreviewProps) => {
3232

3333
return (
3434
<ErrorBoundary FallbackComponent={ErrorFallback}>
35-
<div className="my-8 flex flex-col bg-white dark:bg-dark-700 rounded-lg">
35+
<div className="my-8 mr-2 flex flex-col bg-white dark:bg-dark-700 rounded-lg">
3636
<div>
3737
{data.thumbnail ? (
3838
<img className="cover-image" src={data.thumbnail} alt="" />

src/pages/index.tsx

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ import { withRelay, RelayProps } from 'relay-nextjs'
55
import { pages_UserQuery } from '../queries/__generated__/pages_UserQuery.graphql'
66
import { getClientEnvironment } from '../lib/client_environment'
77
import Card from '../components/Card'
8-
import RelevantIssues from '../components/issue/RelevantIssues'
9-
import IssuesFromLastRepo from '../components/issue/IssuesFromLastRepo'
10-
import IssuesFromRecentRepos from '../components/issue/IssuesFromRecentRepo'
118
import Layout from '../components/Layout'
129
import Login from '../components/Login'
1310
import Feed from '../components/feed/Feed'

src/queries/__generated__/FeedsQuery.graphql.ts

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/queries/__generated__/FeedsRoot_Query.graphql.ts

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/queries/__generated__/pages_UserQuery.graphql.ts

Lines changed: 16 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tailwind.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@ module.exports = {
2222
},
2323
},
2424
darkMode: 'class',
25-
plugins: [require('@tailwindcss/typography')],
25+
plugins: [require('@tailwindcss/typography'), require('tailwind-scrollbar')],
2626
}

yarn.lock

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,18 @@
451451
"@typescript-eslint/types" "5.28.0"
452452
eslint-visitor-keys "^3.3.0"
453453

454+
"@virtuoso.dev/react-urx@^0.2.12":
455+
version "0.2.13"
456+
resolved "https://registry.yarnpkg.com/@virtuoso.dev/react-urx/-/react-urx-0.2.13.tgz#e2cfc42d259d2a002695e7517d34cb97b64ee9c4"
457+
integrity sha512-MY0ugBDjFb5Xt8v2HY7MKcRGqw/3gTpMlLXId2EwQvYJoC8sP7nnXjAxcBtTB50KTZhO0SbzsFimaZ7pSdApwA==
458+
dependencies:
459+
"@virtuoso.dev/urx" "^0.2.13"
460+
461+
"@virtuoso.dev/urx@^0.2.12", "@virtuoso.dev/urx@^0.2.13":
462+
version "0.2.13"
463+
resolved "https://registry.yarnpkg.com/@virtuoso.dev/urx/-/urx-0.2.13.tgz#a65e7e8d923cb03397ac876bfdd45c7f71c8edf1"
464+
integrity sha512-iirJNv92A1ZWxoOHHDYW/1KPoi83939o83iUBQHIim0i3tMeSKEh+bxhJdTHQ86Mr4uXx9xGUTq69cp52ZP8Xw==
465+
454466
acorn-jsx@^5.3.2:
455467
version "5.3.2"
456468
resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
@@ -2626,6 +2638,14 @@ react-relay@^13.0.2:
26262638
nullthrows "^1.1.1"
26272639
relay-runtime "13.0.2"
26282640

2641+
react-virtuoso@^2.18.0:
2642+
version "2.18.0"
2643+
resolved "https://registry.yarnpkg.com/react-virtuoso/-/react-virtuoso-2.18.0.tgz#42f8a7cb632aaf0bb2812bbbd4b5f2583d3d53ec"
2644+
integrity sha512-BxMW9as2dPOP4YFkry/oNjQMEn3cOgEjHLb7Fg8oubOgRAfiukp1Co41QFD9ZMXZBNBZNTI2E5BwC5pol31mTg==
2645+
dependencies:
2646+
"@virtuoso.dev/react-urx" "^0.2.12"
2647+
"@virtuoso.dev/urx" "^0.2.12"
2648+
26292649
react@^18.2.0:
26302650
version "18.2.0"
26312651
resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
@@ -3019,6 +3039,11 @@ supports-preserve-symlinks-flag@^1.0.0:
30193039
resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
30203040
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
30213041

3042+
tailwind-scrollbar@^2.0.1:
3043+
version "2.0.1"
3044+
resolved "https://registry.yarnpkg.com/tailwind-scrollbar/-/tailwind-scrollbar-2.0.1.tgz#f08721173d513f1406a44601640b79726e3f9728"
3045+
integrity sha512-OcR7qHBbux4k+k6bWqnEQFYFooLK/F4dhkBz6nvswIoaA9ancZ5h20e0tyV7ifSWLDCUBtpG+1NHRA8HMRH/wg==
3046+
30223047
tailwindcss@^3.0.23:
30233048
version "3.0.23"
30243049
resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz"

0 commit comments

Comments
 (0)