Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: remove conditional to allow every user test the application #17

Open
wants to merge 166 commits into
base: dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
caccb13
feat: README updated on how to run the dapp
RafaDSan Jul 15, 2024
6f2c0be
Merge branch 'show-karma:dev' into dev
heronlancellot Jul 23, 2024
d2b8fdb
Merge branch 'show-karma:dev' into dev
heronlancellot Jul 23, 2024
655119a
feat: add review tab
heronlancellot Jul 23, 2024
b2afa83
feat: initial card-review to render
heronlancellot Jul 23, 2024
e033e7c
Merge branch 'show-karma:dev' into feat/grant-review
heronlancellot Jul 24, 2024
5a726ac
Merge branch 'show-karma:dev' into dev
heronlancellot Jul 24, 2024
65394fb
Merge branch 'dev' into feat/new-menu-tab
heronlancellot Jul 24, 2024
c1ad4aa
Merge pull request #1 from heronlancellot/feat/new-menu-tab
heronlancellot Jul 24, 2024
38c3d6e
feat: add star-review
heronlancellot Jul 25, 2024
84cc50b
feat: add navbar initial style
heronlancellot Jul 25, 2024
cefe394
feat: add border-r to mini-review
heronlancellot Jul 26, 2024
26c4158
feat: add badgeIcon & update CardReview with badgeIcon
heronlancellot Jul 27, 2024
3cf309a
update: mocked-data to use dynamic data to render the badges
heronlancellot Jul 27, 2024
e04ca9a
Merge branch 'show-karma:dev' into feat/grant-review
heronlancellot Jul 27, 2024
2d016d2
update: index star-id
heronlancellot Jul 27, 2024
3e344e4
update: badge-icon
heronlancellot Jul 27, 2024
b0ee4d0
fix: enable click only in path-svg
heronlancellot Jul 29, 2024
a7cf255
feat: add chevronDown when user select the star
heronlancellot Jul 29, 2024
e473bfe
update: code legibility
heronlancellot Jul 29, 2024
26c7bd0
fix: remove cursor-pointer in NavbarReview
heronlancellot Jul 29, 2024
b84d85d
update: navbar-review with date in unix-timestamp sorted
heronlancellot Jul 29, 2024
1b163ac
update: onClick action nav-bar todo to create a new review
heronlancellot Jul 29, 2024
c327a97
Merge branch 'show-karma:dev' into dev
heronlancellot Jul 29, 2024
bb09ef5
fix: code legibility
heronlancellot Jul 29, 2024
189375b
Merge branch 'dev' into feat/navbar
heronlancellot Jul 29, 2024
b6f8a3e
update: review-icon props
heronlancellot Jul 30, 2024
dd20985
feat: add dynamic-stars-review & update: component data
heronlancellot Jul 30, 2024
58fe632
Merge branch 'show-karma:dev' into feat/grant-review
heronlancellot Jul 30, 2024
dc4ef9d
Merge branch 'feat/grant-review' into feat/navbar
heronlancellot Jul 30, 2024
d5220ff
refactor: component name
heronlancellot Jul 30, 2024
e2908ae
update: text-size & margins
heronlancellot Aug 1, 2024
be95ffd
update: change date & adjust padding
heronlancellot Aug 1, 2024
c705312
update: divide
heronlancellot Aug 7, 2024
7ab0745
Merge branch 'show-karma:dev' into dev
heronlancellot Aug 7, 2024
b8f367c
Merge branch 'dev' into feat/navbar
heronlancellot Aug 7, 2024
a6f75b2
Merge pull request #2 from heronlancellot/feat/navbar
heronlancellot Aug 7, 2024
ecabf5b
fix: badge-icon type
heronlancellot Aug 7, 2024
4537708
feat: blockchain functions and fetchEASData
RafaDSan Aug 7, 2024
fade9b0
update: badge svg
heronlancellot Aug 7, 2024
a995eda
update: card-review badge-icon name
heronlancellot Aug 7, 2024
a2e52a4
update: date badge
heronlancellot Aug 7, 2024
c04b272
fix: remove gray border star-icon
heronlancellot Aug 7, 2024
2d1df38
update: border-r height 75%
heronlancellot Aug 7, 2024
d09cf8b
fix: date w-full
heronlancellot Aug 7, 2024
517cee6
feat: changing names and paremeters
RafaDSan Aug 7, 2024
09d249b
Merge pull request #3 from heronlancellot/fix/navbar-style
heronlancellot Aug 7, 2024
bc94928
refactor: params to mode to be more legible
heronlancellot Aug 8, 2024
7ec2655
refactor: editableReview to mode write and read
heronlancellot Aug 9, 2024
ebcf1ec
feat: add card-new-review
heronlancellot Aug 9, 2024
84af8c0
update: index with new fluxe
heronlancellot Aug 9, 2024
3b8764f
refactor: navbar-review more legible
heronlancellot Aug 9, 2024
43c88e3
feat: add review store data using zustand
heronlancellot Aug 12, 2024
f18f627
update: use context data wit reviewStore zustand
heronlancellot Aug 12, 2024
5844709
fix: remove submit review button from card-review
heronlancellot Aug 12, 2024
9a1bb95
fix: remove unnused import
heronlancellot Aug 12, 2024
08451ba
feat: add connect wallet if the user isn't connected
heronlancellot Aug 12, 2024
2354442
fix: console error badge svg
heronlancellot Aug 12, 2024
70feaf8
feat: add review interface & udpate comonents using review array
heronlancellot Aug 12, 2024
61ff8fb
update: code legibility
heronlancellot Aug 13, 2024
6576615
feat: add review type file
heronlancellot Aug 13, 2024
c246f4f
update: improve code legibility
heronlancellot Aug 13, 2024
8d4f915
feat: add new line spacing
heronlancellot Aug 13, 2024
2040f9d
feat: move to read review page after submit review
heronlancellot Aug 13, 2024
2a41893
Merge pull request #4 from heronlancellot/feat/mode-write-fluxes
heronlancellot Aug 13, 2024
37b8921
feat: add subtitle in index
heronlancellot Aug 14, 2024
bac6582
feat: add fair-rounds text
heronlancellot Aug 14, 2024
f55c605
Merge pull request #5 from heronlancellot/feat/text-style
heronlancellot Aug 14, 2024
551b832
fix: path-names svg
heronlancellot Aug 15, 2024
b57830e
update: badge type
heronlancellot Aug 19, 2024
9c04f4a
update: badgeListProps to Badge
heronlancellot Aug 19, 2024
5260286
feat: add fluxe to submit review and select the new review
heronlancellot Aug 19, 2024
a3ae480
fix: scrollbar-style
heronlancellot Aug 21, 2024
3e790d5
fix: remove unnused code
heronlancellot Aug 21, 2024
8106974
fix: mobile responsivity
heronlancellot Aug 21, 2024
4b3ab05
fix: card-new-review mobile responsivity
heronlancellot Aug 21, 2024
88661b1
Merge pull request #6 from heronlancellot/feat/style-scrollbar
heronlancellot Aug 21, 2024
536bca7
fix: tablet responsivity
heronlancellot Aug 21, 2024
5e85d76
Merge pull request #7 from heronlancellot/feat/responsivity-devices
heronlancellot Aug 21, 2024
0c221f6
fix: mobile responsivity
heronlancellot Aug 22, 2024
740c50e
Merge pull request #8 from heronlancellot/feat/mobile-responsivity
heronlancellot Aug 22, 2024
4b71d46
feat: add initial version of integration
heronlancellot Aug 26, 2024
d8d395b
update: contract constants
heronlancellot Aug 28, 2024
5439f2f
feat: add getBadge
heronlancellot Aug 28, 2024
395c6a6
update: getBadge
heronlancellot Aug 28, 2024
42f9600
feat: add getBadgeIds
heronlancellot Aug 28, 2024
9746982
update: scorer-id constant
heronlancellot Aug 28, 2024
e261d57
update: getGrantStories
heronlancellot Aug 28, 2024
f286f2d
update: getGrantStories & NavbarReview
heronlancellot Aug 28, 2024
312f043
update: CardReview
heronlancellot Aug 28, 2024
e2fb4f0
update: review tab
heronlancellot Aug 28, 2024
60785bb
update: grant& constants
heronlancellot Aug 28, 2024
8c35504
feat: add arb-one-abi
heronlancellot Aug 28, 2024
26ea1ef
feat: add getGrantProgramScore
heronlancellot Aug 28, 2024
08f9d4e
update: screen style
heronlancellot Aug 28, 2024
fc1ede3
feat: add new column into funding map
heronlancellot Aug 28, 2024
5c88ee9
update: submit-attest
heronlancellot Aug 28, 2024
0405a6c
fix: hovered star funding projects
heronlancellot Aug 28, 2024
90583b6
feat: add new contexts review
heronlancellot Aug 28, 2024
84a13e7
feat: add prefixToIPFSLink
heronlancellot Aug 28, 2024
def2049
update: grant-story & additional adjustments
heronlancellot Aug 28, 2024
94de35c
feat: add averageScore
heronlancellot Aug 28, 2024
32f4eff
feat: add abi & constants addres
heronlancellot Aug 29, 2024
7d67738
feat: add programID programList
heronlancellot Aug 29, 2024
a0d1e52
feat: attemp to fill the programScore programId
heronlancellot Aug 29, 2024
5019413
feat: add new review
heronlancellot Aug 29, 2024
e205346
Merge pull request #9 from heronlancellot/feat/integration-backend
0xneves Aug 29, 2024
ab9b788
fix: remove badge-icon
heronlancellot Aug 29, 2024
3b48bd0
fix: remove unnused code
heronlancellot Aug 29, 2024
ba318e8
fix: remove unnused code
heronlancellot Aug 29, 2024
60f258e
fix: remove unnused code
heronlancellot Aug 29, 2024
dc04b78
refactor: badgeOfficial to Badge name interface
heronlancellot Aug 29, 2024
6507768
refactor: new contract deployments
0xneves Aug 29, 2024
d3e2c37
remove: border
0xneves Aug 29, 2024
a62cc5e
feat: can only submit review while on Arbitrum Chain
0xneves Aug 29, 2024
44cf1bf
fix: imports
0xneves Aug 29, 2024
b0bb3ea
fix: wrong context name and added missing types
0xneves Aug 29, 2024
6bed955
fix: added plural to array context name
0xneves Aug 29, 2024
fe2a1e7
fix: removed unused code
0xneves Aug 29, 2024
dc0d458
fix: badge context and missing types
0xneves Aug 29, 2024
e747675
fix: context name
0xneves Aug 29, 2024
e2fcc8a
fix: removed unused files
0xneves Aug 29, 2024
97a0cf1
refactor: attestation to work on arbitrum
0xneves Aug 29, 2024
50ca895
refactor: docs comments and new getters functions
0xneves Aug 29, 2024
92c0268
refactor: submitAttestation
0xneves Aug 29, 2024
f3fbd7d
fix: identation and imports
0xneves Aug 29, 2024
c51b265
feat: adding prettierrc (seriously in need)
0xneves Aug 29, 2024
05953b7
Merge pull request #1 from 0xneves/feat/integration-backend
heronlancellot Aug 29, 2024
1cc8fe8
feat: make feat: add error handling for getGrantProgramScore function…
FrancoAguzzi Aug 29, 2024
1d11bae
feat: added missing types
0xneves Aug 29, 2024
9077fb0
fix: added missing types
0xneves Aug 29, 2024
1162144
fix: setting grantUID and fixing useless padding bottom
0xneves Aug 29, 2024
a225ee6
fix: review was not receiving correct parameters
0xneves Aug 29, 2024
a24e1d3
feat: migrated newest badges loading to father
0xneves Aug 29, 2024
a132327
fix: imoport order
0xneves Aug 29, 2024
b86bbd4
fix: response var name
0xneves Aug 29, 2024
2a9fb0f
fix: calculating timestaps in number instead
0xneves Aug 29, 2024
3a5f7f8
feat: moving active badges to context
0xneves Aug 29, 2024
b6ba853
fix: glitch where the state was messing the change of tabs
0xneves Aug 29, 2024
ceab54e
Merge pull request #2 from 0xneves/feat/integration-backend
heronlancellot Aug 29, 2024
cc9060f
Merge pull request #10 from heronlancellot/feat/integration-backend
0xneves Aug 29, 2024
db9de93
fix: score with 1 decimals
0xneves Aug 29, 2024
7410314
refactor: better looking star
0xneves Aug 29, 2024
e65a3f9
fix: wrong hover color on star
0xneves Aug 29, 2024
fe1af29
fix: review workflow
0xneves Aug 29, 2024
2d70cdb
fix: handling diferent badges
0xneves Aug 29, 2024
6e13b19
fix: wrong addresses
0xneves Aug 29, 2024
7c2da91
fix: ordering post-submit
0xneves Aug 29, 2024
c8a7108
fix: setting last review as main screen when submitted
0xneves Aug 29, 2024
020fc86
Merge pull request #11 from 0xneves/feat/grant-review
0xneves Aug 29, 2024
c5f1fe8
fix: cors throwin error and reseting context when url changes
0xneves Aug 30, 2024
6387694
Merge branch 'blockful-io:feat/grant-review' into feat/grant-review
0xneves Aug 30, 2024
8536b59
Merge pull request #12 from 0xneves/feat/grant-review
0xneves Aug 30, 2024
e92b346
update: card-new-review doc & code improvement
heronlancellot Aug 30, 2024
fcc7d93
Merge pull request #14 from blockful-io/feat/grant-review
0xneves Aug 30, 2024
8d7e0fa
fix: remove abi
heronlancellot Aug 30, 2024
26cd594
refactor: functions to retrieve data blockchain
heronlancellot Aug 30, 2024
847a931
update: functions & types
heronlancellot Aug 30, 2024
934e674
update: contract-addresses
heronlancellot Aug 30, 2024
42f11ea
feat: add tooltip into program-list
heronlancellot Aug 30, 2024
ead0ee0
refactor: chevron-down color
heronlancellot Aug 30, 2024
4e1d864
fix: remove the negation, to check if grantee is equal the connected …
heronlancellot Aug 30, 2024
14c9154
fix: remove console.log
heronlancellot Aug 30, 2024
5d1a73c
Merge pull request #13 from heronlancellot/feat/small-improvements-code
heronlancellot Aug 30, 2024
5f304c4
fix: remove conditional to allow every user test the application
heronlancellot Sep 20, 2024
7da0403
Update components/Pages/Project/Review/index.tsx
heronlancellot Sep 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .prettierrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
bracketSpacing: true
printWidth: 100
proseWrap: "always"
singleQuote: false
tabWidth: 2
trailingComma: "all"
useTabs: false
55 changes: 55 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1 +1,56 @@
## Getting Started with GAP frontend

## Pre-Requisites

- [node.js](https://nodejs.org/en/download/package-manager) installed (>=18.17.0)
- typescript installed (developed on v5.3.3)
- [yarn](https://classic.yarnpkg.com/lang/en/docs/install/#windows-stable)
- Web3 Wallet installed in your browser

## Installation

### Forkin the repository

Fork this repository by:

1. Clicking in the arrow aside from the `fork`
2. Unmark the option `Copy the main branch only`
3. Click `Create fork`

### Cloning the repository

Open the VsCode or other IDE editor, and enter the following command in the cmd:

```bash
git clone https://github.com/YourUserName/gap-app-v2.git
```

### Instaling dependencies

Install all package dependencies by running:

```bash
yarn install
```

### Configure the `.env.example` file

1. Copy the `.env.example` file and paste it in the root directory
2. Remove the `.example` from the `.env.example` file name
3. Add your API keys in the `.env` file
4. Creating the keys to fulfill the `.env` file
1. **ALCHEMY_KEY:** Follow [this](https://docs.alchemy.com/docs/alchemy-quickstart-guide) tutorial of the Alchemy Docs and fill the following keys: `NEXT_PUBLIC_ALCHEMY_KEY`(use base sepolia for this one), `NEXT_PUBLIC_RPC_OPTIMISM`, `NEXT_PUBLIC_RPC_ARBITRUM`, `NEXT_PUBLIC_RPC_SEPOLIA` and `NEXT_PUBLIC_RPC_OPTIMISM_SEPOLIA`
2. **PROJECT_ID:** Create your account in [this](https://walletconnect.com/) link and follow the instructions to generate a key
3. **NEXT_PUBLIC_MIXPANEL_KEY:** Create your account in [this](https://mixpanel.com/login/) and follow [this](https://www.storylane.io/tutorials/how-to-get-mixpanel-project-token) tutorial

### Running the application

First, run the development server:

```bash
yarn run dev
```

Open http://localhost:3000 with your browser.

<a href="https://twitter.com/@blockful_io" target="blank"><img align="center" src="https://raw.githubusercontent.com/rahuldkjain/github-profile-readme-generator/master/src/images/icons/Social/twitter.svg" alt="@blockful_io" height="30" width="40" /></a>
50 changes: 50 additions & 0 deletions components/Icons/StarReview.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
import { cn } from "@/utilities/tailwind";
import type { SVGProps } from "react";

export const StarReviewIcon = ({
props,
pathProps,
score,
isHovered = true,
}: {
props?: SVGProps<SVGSVGElement>;
pathProps?: React.SVGProps<SVGPathElement>;
score?: number;
isHovered?: boolean;
}) => {
return (
<svg
{...props}
width="24"
height="24"
viewBox="0 0 24 24"
fill="currentColor"
xmlns="http://www.w3.org/2000/svg"
>
<path
{...pathProps}
d="M11.2827 3.44868C11.5131 2.98174 11.6284 2.74827 11.7848 2.67368C11.9209 2.60877 12.0791 2.60877 12.2152 2.67368C12.3717 2.74827 12.4869 2.98174 12.7174 3.44868L14.9041 7.87864C14.9721 8.0165 15.0061 8.08542 15.0558 8.13894C15.0999 8.18632 15.1527 8.22471 15.2113 8.25198C15.2776 8.28278 15.3536 8.2939 15.5057 8.31613L20.397 9.03107C20.9121 9.10635 21.1696 9.144 21.2888 9.2698C21.3925 9.37925 21.4412 9.52966 21.4215 9.67914C21.3988 9.85094 21.2124 10.0325 20.8395 10.3957L17.3014 13.8418C17.1912 13.9492 17.136 14.0029 17.1004 14.0668C17.0689 14.1234 17.0487 14.1856 17.0409 14.2499C17.0321 14.3225 17.0451 14.3984 17.0711 14.5501L17.906 19.4175C17.994 19.9309 18.038 20.1875 17.9553 20.3399C17.8833 20.4724 17.7554 20.5653 17.6071 20.5928C17.4366 20.6244 17.2061 20.5032 16.7451 20.2608L12.3724 17.9612C12.2361 17.8895 12.168 17.8537 12.0962 17.8396C12.0327 17.8272 11.9673 17.8272 11.9038 17.8396C11.832 17.8537 11.7639 17.8895 11.6277 17.9612L7.25492 20.2608C6.79392 20.5032 6.56341 20.6244 6.39297 20.5928C6.24468 20.5653 6.11672 20.4724 6.04474 20.3399C5.962 20.1875 6.00603 19.9308 6.09407 19.4175L6.92889 14.5501C6.95491 14.3984 6.96793 14.3225 6.95912 14.2499C6.95132 14.1856 6.93111 14.1234 6.89961 14.0668C6.86402 14.0029 6.80888 13.9492 6.69859 13.8418L3.16056 10.3957C2.78766 10.0325 2.60121 9.85094 2.57853 9.67914C2.55879 9.52966 2.60755 9.37925 2.71125 9.2698C2.83044 9.144 3.08797 9.10635 3.60304 9.03107L8.49431 8.31613C8.64642 8.2939 8.72248 8.28278 8.78872 8.25198C8.84736 8.22471 8.90016 8.18632 8.94419 8.13894C8.99391 8.08542 9.02793 8.0165 9.09597 7.87864L11.2827 3.44868Z"
stroke="currentColor"
fill="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
className={cn(
isHovered ? "hover:fill-[#004EEB] hover:stroke-[#004EEB]" : "",
pathProps?.className || "",
)}
/>
{score !== undefined && (
<text
x="12"
y="15"
textAnchor="middle"
fontSize={props?.fontSize || "12"}
fill={props?.color || "#000000"}
>
{score}
</text>
)}
</svg>
);
};
154 changes: 70 additions & 84 deletions components/Pages/ProgramRegistry/ProgramList.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,9 @@ import { DiscussionIcon } from "@/components/Icons/Discussion";
import { BlogIcon } from "@/components/Icons/Blog";
import { OrganizationIcon } from "@/components/Icons/Organization";
import { useVirtualizer } from "@tanstack/react-virtual";
import {
ColumnDef,
Row,
flexRender,
getCoreRowModel,
useReactTable,
} from "@tanstack/react-table";
import { ColumnDef, Row, flexRender, getCoreRowModel, useReactTable } from "@tanstack/react-table";
import { Button } from "@/components/Utilities/Button";
import { formatDate } from "@/utilities/formatDate";
import { StarReviewIcon } from "@/components/Icons/StarReview";

export type GrantProgram = {
_id: {
Expand Down Expand Up @@ -74,6 +68,7 @@ export type GrantProgram = {
registryAddress?: string;
anchorAddress?: string;
programId?: string;
programScore?: number;
chainID?: number;
isValid?: boolean;
txHash?: string;
Expand All @@ -86,10 +81,7 @@ interface ProgramListProps {
selectProgram: (program: GrantProgram) => void;
}

export const ProgramList: FC<ProgramListProps> = ({
grantPrograms,
selectProgram,
}) => {
export const ProgramList: FC<ProgramListProps> = ({ grantPrograms, selectProgram }) => {
const columns = useMemo<ColumnDef<GrantProgram>[]>(
() => [
{
Expand All @@ -110,10 +102,7 @@ export const ProgramList: FC<ProgramListProps> = ({

<div className="flex flex-row gap-1 w-full">
{grant.metadata?.socialLinks?.website ? (
<ExternalLink
href={grant.metadata?.socialLinks?.website}
className="w-max"
>
<ExternalLink href={grant.metadata?.socialLinks?.website} className="w-max">
<Image
className="w-5 h-5 text-black dark:text-white dark:hidden"
width={20}
Expand All @@ -131,42 +120,27 @@ export const ProgramList: FC<ProgramListProps> = ({
</ExternalLink>
) : null}
{grant.metadata?.socialLinks?.twitter ? (
<ExternalLink
href={grant.metadata?.socialLinks?.twitter}
className="w-max"
>
<ExternalLink href={grant.metadata?.socialLinks?.twitter} className="w-max">
<Twitter2Icon className="w-5 h-5 text-black dark:text-white" />
</ExternalLink>
) : null}
{grant.metadata?.socialLinks?.discord ? (
<ExternalLink
href={grant.metadata?.socialLinks?.discord}
className="w-max"
>
<ExternalLink href={grant.metadata?.socialLinks?.discord} className="w-max">
<Discord2Icon className="w-5 h-5 text-black dark:text-white" />
</ExternalLink>
) : null}
{grant.metadata?.socialLinks?.forum ? (
<ExternalLink
href={grant.metadata?.socialLinks?.forum}
className="w-max"
>
<ExternalLink href={grant.metadata?.socialLinks?.forum} className="w-max">
<DiscussionIcon className="w-5 h-5 text-black dark:text-white" />
</ExternalLink>
) : null}
{grant.metadata?.socialLinks?.blog ? (
<ExternalLink
href={grant.metadata?.socialLinks?.blog}
className="w-max"
>
<ExternalLink href={grant.metadata?.socialLinks?.blog} className="w-max">
<BlogIcon className="w-5 h-5 text-black dark:text-white" />
</ExternalLink>
) : null}
{grant.metadata?.socialLinks?.orgWebsite ? (
<ExternalLink
href={grant.metadata?.socialLinks?.orgWebsite}
className="w-max"
>
<ExternalLink href={grant.metadata?.socialLinks?.orgWebsite} className="w-max">
<OrganizationIcon className="w-5 h-5 text-black dark:text-white" />
</ExternalLink>
) : null}
Expand All @@ -188,10 +162,7 @@ export const ProgramList: FC<ProgramListProps> = ({
const grant = info.row.original;
return (
<div className="whitespace-nowrap px-3 py-5 text-sm text-black dark:text-zinc-400 max-w-[285px]">
<div
className="w-[420px] max-w-[420px] text-wrap pr-8"
data-color-mode="light"
>
<div className="w-[420px] max-w-[420px] text-wrap pr-8" data-color-mode="light">
<ReadMore
readLessText="Show less description"
readMoreText="Show full description"
Expand Down Expand Up @@ -247,22 +218,14 @@ export const ProgramList: FC<ProgramListProps> = ({
<Image
width={20}
height={20}
src={
registryHelper.networkImages[
network.toLowerCase()
].light
}
src={registryHelper.networkImages[network.toLowerCase()].light}
alt={network}
className="rounded-full w-5 h-5 dark:hidden"
/>
<Image
width={20}
height={20}
src={
registryHelper.networkImages[
network.toLowerCase()
].dark
}
src={registryHelper.networkImages[network.toLowerCase()].dark}
alt={network}
className="rounded-full w-5 h-5 hidden dark:block"
/>
Expand All @@ -280,17 +243,11 @@ export const ProgramList: FC<ProgramListProps> = ({
>
<div className="flex flex-col gap-3">
<div className="flex flex-row gap-2 items-center">
{registryHelper.networkImages[
network.toLowerCase()
] ? (
{registryHelper.networkImages[network.toLowerCase()] ? (
<Image
width={16}
height={16}
src={
registryHelper.networkImages[
network.toLowerCase()
].dark
}
src={registryHelper.networkImages[network.toLowerCase()].dark}
alt={network}
className="rounded-full w-4 h-4"
/>
Expand Down Expand Up @@ -327,21 +284,12 @@ export const ProgramList: FC<ProgramListProps> = ({
>
<div className="flex flex-col gap-3">
{restNetworks.map((item) => (
<div
key={item}
className="flex flex-row gap-2 items-center"
>
{registryHelper.networkImages[
item.toLowerCase()
] ? (
<div key={item} className="flex flex-row gap-2 items-center">
{registryHelper.networkImages[item.toLowerCase()] ? (
<Image
width={16}
height={16}
src={
registryHelper.networkImages[
item.toLowerCase()
].dark
}
src={registryHelper.networkImages[item.toLowerCase()].dark}
alt={item}
className="rounded-full w-4 h-4"
/>
Expand Down Expand Up @@ -420,6 +368,54 @@ export const ProgramList: FC<ProgramListProps> = ({
</div>
),
},
{
accessorFn: (row) => row,
id: "AverageScore",
cell: (info) => {
const grant = info.row.original;

return (
<div className="whitespace-nowrap px-3 py-5 text-sm text-black dark:text-zinc-300">
<Tooltip.Provider>
{grant.programScore ? (
<Tooltip.Root>
<Tooltip.Trigger asChild>
<span className="mr-1 inline-flex items-center text-lg font-medium">
<StarReviewIcon
props={{
className:
"text-[#004EEB] w-14 h-14 transparent hover:fill-transparent hover:stroke-transparent",
fontSize: 7,
color: "#FFF",
}}
isHovered={false}
score={grant.programScore}
/>
</span>
</Tooltip.Trigger>
<Tooltip.Portal>
<Tooltip.Content
sideOffset={5}
className="tooltip-content rounded bg-black p-2 text-white shadow-lg"
>
{`Score: ${grant.programScore} out of 5`}
<Tooltip.Arrow className="tooltip-arrow fill-black" />
</Tooltip.Content>
</Tooltip.Portal>
</Tooltip.Root>
) : (
<></>
)}
</Tooltip.Provider>
</div>
);
},
header: () => (
<div className="px-3 py-3.5 text-left text-sm font-bold text-gray-900 dark:text-zinc-100 sm:pl-0 font-body max-w-64">
Score
</div>
),
},
{
accessorFn: (row) => row,
id: "Apply",
Expand All @@ -439,7 +435,7 @@ export const ProgramList: FC<ProgramListProps> = ({
header: () => <div />,
},
],
[]
[],
);

const table = useReactTable({
Expand Down Expand Up @@ -479,12 +475,7 @@ export const ProgramList: FC<ProgramListProps> = ({
style={{ width: header.getSize() }}
>
{header.isPlaceholder ? null : (
<div>
{flexRender(
header.column.columnDef.header,
header.getContext()
)}
</div>
<div>{flexRender(header.column.columnDef.header, header.getContext())}</div>
)}
</th>
);
Expand All @@ -500,18 +491,13 @@ export const ProgramList: FC<ProgramListProps> = ({
key={row.id}
style={{
height: `${virtualRow.size}px`,
transform: `translateY(${
virtualRow.start - index * virtualRow.size
}px)`,
transform: `translateY(${virtualRow.start - index * virtualRow.size}px)`,
}}
>
{row.getVisibleCells().map((cell) => {
return (
<td key={cell.id}>
{flexRender(
cell.column.columnDef.cell,
cell.getContext()
)}
{flexRender(cell.column.columnDef.cell, cell.getContext())}
</td>
);
})}
Expand Down
Loading