-
-
Notifications
You must be signed in to change notification settings - Fork 33
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
1810 usdglo token #4795
1810 usdglo token #4795
Conversation
…_usdglo_token Update Branch
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
WalkthroughThe changes in this pull request encompass significant modifications to GraphQL queries and fragments in Changes
Possibly related PRs
Suggested reviewers
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (1)
src/config/production.tsx (1)
540-554
: LGTM: New Glo Dollar super token addedThe addition of the Glo Dollar super token to the
SUPER_FLUID_TOKENS
array inOPTIMISM_CONFIG
looks good. All required fields are present and correctly formatted.Consider adding a comment above this new token entry to explain its purpose or any special considerations, similar to how you might document an API. This would help other developers understand why this token was added and its significance in the system.
Example:
// Glo Dollar: A new stablecoin added to support XYZ feature { underlyingToken: { // ... (rest of the code remains the same) } }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (1)
- src/config/production.tsx (2 hunks)
🔇 Additional comments (2)
src/config/production.tsx (2)
100-100
: LGTM: Improved BASE_ROUTE configurationThe update to
BASE_ROUTE
is a good improvement. It now uses an environment variableNEXT_PUBLIC_BASE_ROUTE
with a fallback to 'https://impact-graph.serve.giveth.io'. This change provides more flexibility in configuration and aligns with the PR objectives.
Line range hint
1-554
: Summary: Configuration updates for BASE_ROUTE and new Glo Dollar tokenThis PR makes two main changes to the configuration:
- Updates the
BASE_ROUTE
to use an environment variable with a new fallback URL.- Adds a new Glo Dollar super token to the
SUPER_FLUID_TOKENS
array inOPTIMISM_CONFIG
.These changes align with the PR objectives and seem to be correctly implemented. The
BASE_ROUTE
change provides more flexibility, while the new token addition expands the supported tokens in the Optimism network.To ensure these changes don't have unintended consequences, please run the following verification steps:
Check that the new
BASE_ROUTE
is correctly used throughout the codebase:Verify that the Glo Dollar token is properly integrated where needed:
Review the results to confirm that these changes are properly reflected in other parts of the codebase.
✅ Verification successful
Verification Completed Successfully
The updates to
BASE_ROUTE
and the addition of the Glo Dollar token (USDGLO
andUSDGLOx
) have been correctly implemented and are consistently referenced throughout the codebase.
BASE_ROUTE:
- Updated in
src/config/production.tsx
and utilized indevelopment.tsx
.- Referenced in components such as
Transaction.view.tsx
,QRDonationCard.tsx
, andNiceBanner.tsx
.Glo Dollar Tokens:
- Added in
src/config/production.tsx
.- Integrated into
Partnerships.ts
,SelectTokenModal/QRCodeDonation/QRDonationCard.tsx
, andNiceBanner.tsx
.These changes align with the PR objectives, providing enhanced configuration flexibility and expanding supported tokens.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
rg "BASE_ROUTE" --type typescript --type javascript
Length of output: 86
Script:
rg "Glo Dollar|USDGLO|USDGLOx" --type typescript --type javascript
Length of output: 103
Script:
# Search for BASE_ROUTE in TypeScript files rg "BASE_ROUTE" --glob '*.ts' --glob '*.tsx' # Search for Glo Dollar related terms in TypeScript files rg "Glo Dollar|USDGLO|USDGLOx" --glob '*.ts' --glob '*.tsx'Length of output: 2218
… it is not available in production staging
this looks like it is removing some important data from the project data such as the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (1)
src/configuration.ts (1)
Line range hint
1-85
: Summary: Critical configuration change with potential wide-ranging impactsThe primary change in this file is the inversion of the
isProduction
logic, which has potential far-reaching implications:
- It affects the selection between development and production configurations.
- It impacts the Solana network configuration.
- It may lead to confusion due to the mismatch between the variable name and its behavior.
Given the critical nature of this change and its potential to affect the entire application, I strongly recommend the following steps:
- Verify if this change was intentional. If not, revert it immediately.
- If intentional, rename the constant to reflect its new behavior (e.g.,
isDevelopment
) and update all related comments.- Conduct a thorough review of all files that depend on this configuration to ensure they behave correctly with the new logic.
- Update the PR description to explain the rationale behind this change if it's intentional.
- Consider adding or updating tests to verify the correct behavior in different environments.
@mateodaza As requested by @divine-comedian, please review these changes carefully, especially considering the potential impact on the
isGivbacksEligible
field and other critical data structures that may depend on the correct environment configuration.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (1)
- src/configuration.ts (1 hunks)
🔇 Additional comments (2)
src/configuration.ts (2)
10-10
:⚠️ Potential issueCritical: Inverted logic in
isProduction
constantThe logic for determining the production environment has been inverted. This change has significant implications:
- The
isProduction
constant is nowtrue
whenNEXT_PUBLIC_ENV
is NOT 'production', which contradicts its name.- This inversion affects the selection between development and production configurations (line 14), potentially causing the wrong configuration to be used in different environments.
- The change could lead to confusion for developers and potentially cause bugs in environment-specific code.
To verify the impact, please run the following script:
#!/bin/bash # Description: Check for usage of isProduction and environment-specific code echo "Checking for isProduction usage:" rg --type typescript "isProduction" -C 3 echo "\nChecking for environment-specific code:" rg --type typescript "process\.env\.NEXT_PUBLIC_ENV" -C 3This script will help us understand the extent of
isProduction
usage and any other environment-specific code that might be affected by this change.Recommendation: Revert this change unless there's a specific reason for inverting the logic. If the inversion is intentional, consider renaming the constant to avoid confusion, e.g.,
isNotProduction
orisDevelopment
.
Line range hint
43-47
: Warning: Impact on Solana network configurationThe inverted logic of
isProduction
affects the Solana network configuration:
- The condition
if (!isProduction)
will now be true in the production environment, contrary to the comment.- This will cause Solana IDs 101 and 102 to be added in the production environment instead of the development environment.
To verify the current Solana configuration, please run:
This script will help us understand the current Solana configuration and any environment-specific settings that might be affected by the
isProduction
change.Recommendation: Review the Solana network configuration to ensure it aligns with the intended behavior for both production and development environments. If the current logic is correct, update the comment to reflect the new behavior.
✅ Verification successful
Clarification on
isProduction
UsageThe
isProduction
flag correctly controls the Solana network configuration:
- The condition
if (!isProduction)
ensures that Solana IDs 101 and 102 are only added in non-production environments.- Production environments remain unaffected by this condition, preventing unintended network configurations.
No issues found with the current implementation.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Check Solana configuration in different environments echo "Checking Solana configuration:" rg --type typescript "SOLANA_CONFIG" -C 5 echo "\nChecking environment variable usage for Solana:" rg --type typescript "process\.env\..*SOLANA" -C 3Length of output: 338
Script:
#!/bin/bash # Description: Check Solana configuration in different environments using file extensions echo "Checking Solana configuration in TypeScript files:" rg "SOLANA_CONFIG" --glob "*.ts" --glob "*.tsx" -C 5 echo "\nChecking environment variable usage for Solana in TypeScript files:" rg "process\.env\..*SOLANA" --glob "*.ts" --glob "*.tsx" -C 3Length of output: 9663
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
🧹 Outside diff range and nitpick comments (1)
src/services/token.ts (1)
73-73
: Ensure safe access totokens[0]
when determiningaddressLabel
.While the code checks for an empty
tokens
array before proceeding, consider adding a comment or an additional safeguard to clarify that accessingtokens[0]
is safe at this point. This can prevent potential issues if future modifications alter the initial checks.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (4)
- next-env.d.ts (1 hunks)
- src/components/views/donate/OneTime/SelectTokenModal/SelectTokenModal.tsx (2 hunks)
- src/components/views/donate/Recurring/SelectTokenModal/SelectTokenModal.tsx (2 hunks)
- src/services/token.ts (2 hunks)
✅ Files skipped from review due to trivial changes (1)
- next-env.d.ts
🔇 Additional comments (6)
src/components/views/donate/OneTime/SelectTokenModal/SelectTokenModal.tsx (2)
184-185
: Approve change and verify non-EVM chain handling.The update to use
fetchEVMTokenBalances
whenisOnEVM
is true looks good. This change aligns with the import statement modification and provides a clear distinction between EVM and non-EVM token balance fetching.To ensure that non-EVM chain support is maintained, please run the following script:
#!/bin/bash # Check for any non-EVM specific balance fetching logic rg "getBalanceForToken" --type typescript -A 10This will help verify that the
getBalanceForToken
function is still being used for non-EVM chains.
Line range hint
1-324
: Verify preservation ofisGivbacksEligible
field.A concern was raised in the PR comments about the potential removal of the
isGivbacksEligible
field. While the changes in this file don't directly affect this field, it's crucial to ensure that it's still present and correctly used throughout the codebase.To address this concern, please run the following script to check for the usage of
isGivbacksEligible
:#!/bin/bash # Search for usage of isGivbacksEligible field rg "isGivbacksEligible" --type typescript # Check if the field is still present in relevant type definitions rg "interface.*Token" --type typescript -A 10This will help verify that the
isGivbacksEligible
field is still present in the relevant interfaces and used appropriately in the codebase.If the
isGivbacksEligible
field has indeed been removed or modified in other parts of the codebase, would you like assistance in assessing the impact and proposing a solution to maintain this functionality?src/services/token.ts (3)
16-16
: ImportingIToken
enhances type flexibility.The addition of
import { IToken } from '@/types/superFluid';
allows the use ofIToken
in the generic function, which improves type safety and flexibility when handling different token types.
60-65
: Use of a generic type parameter improves function versatility.Introducing the generic type
T
constrained toIProjectAcceptedToken | IToken
infetchEVMTokenBalances
enhances the function's ability to handle multiple token types while maintaining type safety.
76-77
: Efficient retrieval oftokenAddress
using dynamic property access.By determining
addressLabel
based on the token type, the code efficiently accesses the correct property (address
orid
) for each token, enhancing maintainability and clarity.src/components/views/donate/Recurring/SelectTokenModal/SelectTokenModal.tsx (1)
20-20
: Correctly importingfetchEVMTokenBalances
for batch balance fetchingThe import statement has been updated appropriately to include
fetchEVMTokenBalances
, which allows for more efficient balance fetching.
@@ -26,7 +26,7 @@ import { useGeneralWallet } from '@/providers/generalWalletProvider'; | |||
import { wagmiConfig } from '@/wagmiConfigs'; | |||
import { ChainType } from '@/types/config'; | |||
import { getBalanceForToken } from './services'; | |||
import { fetchTokenBalances } from '@/services/token'; | |||
import { fetchEVMTokenBalances } from '@/services/token'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codebase verification
Update error logs to use fetchEVMTokenBalances
instead of fetchTokenBalances
.
Residual usage of fetchTokenBalances
found in error logging may lead to confusion and should be updated for consistency.
- File:
src/components/views/donate/OneTime/SelectTokenModal/SelectTokenModal.tsx
- Line 29:
console.error('error on fetchTokenBalances', { error });
- Line 29:
🔗 Analysis chain
Verify impact on non-EVM chains and add explanatory comment.
The import statement has been changed from fetchTokenBalances
to fetchEVMTokenBalances
. While this change seems to align with EVM-specific functionality, it's important to ensure that this doesn't negatively impact support for non-EVM chains.
To verify the impact, please run the following script:
Consider adding a comment explaining why this change was made, for example:
// Import EVM-specific token balance fetching function
import { fetchEVMTokenBalances } from '@/services/token';
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Search for any remaining usage of fetchTokenBalances
rg "fetchTokenBalances" --type typescript
# Check if there are any non-EVM chain specific balance fetching functions
rg "fetch.*TokenBalances" --type typescript
Length of output: 245
Script:
#!/bin/bash
# Search for any remaining usage of fetchTokenBalances
rg "fetchTokenBalances" --type ts
# Check if there are any non-EVM chain specific balance fetching functions
rg "fetch[A-Za-z]*TokenBalances" --type ts
Length of output: 980
src/services/token.ts
Outdated
// Ensure the tokenAddress is cast as Address (format starting with 0x) | ||
return { | ||
address: tokenAddress as Address, // Cast to wagmi Address type | ||
abi: erc20Abi, | ||
functionName: 'balanceOf', | ||
args: [walletAddress], | ||
}; | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Validate tokenAddress
before casting to Address
.
Casting tokenAddress
to Address
assumes it is a valid Ethereum address starting with 0x
. To prevent potential runtime errors, consider adding a validation step to ensure that tokenAddress
conforms to the expected format.
You can use a regular expression or a utility function to validate the Ethereum address format. For example:
// Ensure the tokenAddress is cast as Address (format starting with 0x)
const tokenAddress = getTokenAddress(token);
+// Validate the token address format
+if (!/^0x[a-fA-F0-9]{40}$/.test(tokenAddress)) {
+ throw new Error(`Invalid token address: ${tokenAddress}`);
+}
return {
address: tokenAddress as Address,
abi: erc20Abi,
functionName: 'balanceOf',
args: [walletAddress],
};
Committable suggestion was skipped due to low confidence.
src/services/token.ts
Outdated
const tokenAddress = token[addressLabel as keyof T] as string; | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Consider refactoring to eliminate code duplication.
The line const tokenAddress = token[addressLabel as keyof T] as string;
is used in both the token separation loop and the erc20Calls
mapping. Extracting this logic into a helper function or a utility method can reduce code duplication and improve readability.
Apply this refactor to create a helper function:
+const getTokenAddress = (token: T): string => token[addressLabel as keyof T] as string;
// In the token separation loop
-const tokenAddress = token[addressLabel as keyof T] as string;
+const tokenAddress = getTokenAddress(token);
// In the erc20Calls mapping
-const tokenAddress = token[addressLabel as keyof T] as string;
+const tokenAddress = getTokenAddress(token);
Committable suggestion was skipped due to low confidence.
const results = await fetchEVMTokenBalances(_allTokens, address); | ||
|
||
// Process results into a new balances object | ||
const newBalances = results.reduce((acc, { symbol, balance }) => { | ||
const newBalances = results.reduce((acc, { token, balance }) => { | ||
if (balance !== undefined) { | ||
acc[symbol] = balance; | ||
acc[token.symbol] = balance; | ||
} | ||
return acc; | ||
}, {} as IBalances); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add error handling for fetchEVMTokenBalances
to manage exceptions
In the fetchAllBalances
function, consider adding a try/catch
block when calling fetchEVMTokenBalances
to handle any potential errors that may occur during the fetch operation. This will prevent unhandled exceptions and improve the robustness of the application.
Apply this diff to add error handling:
const fetchAllBalances = async () => {
+ try {
const _allTokens = superTokens.reduce((acc, token) => {
acc.push(token);
acc.push(token.underlyingToken);
return acc;
}, [] as IToken[]);
const results = await fetchEVMTokenBalances(_allTokens, address);
// Process results into a new balances object
const newBalances = results.reduce((acc, { token, balance }) => {
if (balance !== undefined) {
acc[token.symbol] = balance;
}
return acc;
}, {} as IBalances);
const filteredTokens = superTokens.filter(
token => !(newBalances[token.symbol] > 0n),
);
setTokens(filteredTokens);
// Update the state with the new balances
setBalances(newBalances);
+ } catch (error) {
+ console.error('Error fetching EVM token balances:', error);
+ // Optionally handle the error, e.g., set an error state or notify the user
+ }
};
Committable suggestion was skipped due to low confidence.
@HrithikSampson can we close this branch? |
… into 1810_usdglo_token Update Branch
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (1)
- src/apollo/gql/gqlProjects.ts (4 hunks)
🧰 Additional context used
🔇 Additional comments (3)
src/apollo/gql/gqlProjects.ts (3)
217-217
: Verify handling ofisGivbackEligible
inFETCH_PROJECT_BY_SLUG_SINGLE_PROJECT
query.The
isGivbackEligible
field has been added to theFETCH_PROJECT_BY_SLUG_SINGLE_PROJECT
query. Ensure that the frontend components using this query properly handle the new field and that it doesn't introduce any inconsistencies or errors in the project detail view.You can check the usage of this query with the following script:
#!/bin/bash # Description: Find where `FETCH_PROJECT_BY_SLUG_SINGLE_PROJECT` is used and verify handling of `isGivbackEligible`. # Search for the query usage in the codebase. rg --type ts 'FETCH_PROJECT_BY_SLUG_SINGLE_PROJECT' src/
602-602
: Confirm the necessity ofisGivbackEligible
inADD_RECIPIENT_ADDRESS_TO_PROJECT
mutation.The
isGivbackEligible
field has been added to the response of theADD_RECIPIENT_ADDRESS_TO_PROJECT
mutation. Please verify that this field is required by clients consuming this mutation and that they handle it correctly.Check where this mutation is invoked to ensure proper handling:
#!/bin/bash # Description: Locate usages of `ADD_RECIPIENT_ADDRESS_TO_PROJECT` and verify the handling of `isGivbackEligible`. # Search for the mutation in the codebase. rg --type ts 'ADD_RECIPIENT_ADDRESS_TO_PROJECT' src/
693-693
: Assess the addition ofisGivbackEligible
inPROJECT_ACCEPTED_TOKENS
query.The
isGivbackEligible
field has been added to thePROJECT_ACCEPTED_TOKENS
query. Ensure that this addition is relevant for token acceptance logic and that any components relying on this data are updated to accommodate the new field.To verify usage and handling, run:
#!/bin/bash # Description: Find usages of `PROJECT_ACCEPTED_TOKENS` and check for proper handling of `isGivbackEligible`. # Search for the query in the codebase. rg --type ts 'PROJECT_ACCEPTED_TOKENS' src/
totalDonations | ||
isGivbackEligible |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codebase verification
Missing isGivbackEligible
in FETCH_PROJECT_BY_SLUG_DONATION
Query
The isGivbackEligible
field is not present in the FETCH_PROJECT_BY_SLUG_DONATION
query as expected. Please ensure that this field is included and correctly handled in the frontend components consuming this query.
🔗 Analysis chain
Ensure consistent inclusion of isGivbackEligible
in queries.
The isGivbackEligible
field has been re-added to the FETCH_PROJECT_BY_SLUG_DONATION
query. Please verify that this field is necessary for the donation flow and that it is correctly handled in the frontend components consuming this query.
To confirm consistent usage of isGivbackEligible
across the codebase, you can run the following script:
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Find all occurrences of `isGivbackEligible` in GraphQL queries and their usage in the codebase.
# Search for the field in GraphQL query files.
rg --type ts 'isGivbackEligible' src/apollo/gql/
# Search for components using the `FETCH_PROJECT_BY_SLUG_DONATION` query.
rg --type ts 'FETCH_PROJECT_BY_SLUG_DONATION' src/
Length of output: 984
Script:
#!/bin/bash
# Description: Verify the inclusion of `isGivbackEligible` in the `FETCH_PROJECT_BY_SLUG_DONATION` GraphQL query.
# Use ast-grep to search for the `isGivbackEligible` field within the `FETCH_PROJECT_BY_SLUG_DONATION` query in gqlProjects.ts
ast-grep --lang javascript --pattern $'export const FETCH_PROJECT_BY_SLUG_DONATION = gql`$\n query FetchProjectBySlugDonation($_: String!) {$$\n project($_: $_) {$$\n $$$\n isGivbackEligible\n $$$\n }$$\n }$$`' src/apollo/gql/gqlProjects.ts
Length of output: 257
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Outside diff range and nitpick comments (2)
src/components/views/donate/Recurring/SelectTokenModal/SelectTokenModal.tsx (2)
115-116
: Consider removing console.log statement before production deployment.While console.log statements are useful for debugging during development, they should be removed or commented out before deploying to production. This helps to keep the console clean and prevents potential security risks.
Consider applying this change:
- console.log('token', tokens); + // console.log('token', tokens);
134-138
: Approve changes with suggestions for improvement.The addition of the null check for
token.symbol
improves the code's robustness by preventing errors when the token is undefined. However, there are a couple of suggestions for further improvement:
- Consider handling the undefined token case more gracefully, perhaps by rendering a placeholder or skipping the iteration silently.
- The console.log statement should be removed or commented out before deploying to production.
Consider applying these changes:
if (!token?.symbol) { - console.log('token', token); - return; + // Skip this iteration silently + return null; }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
📒 Files selected for processing (2)
- src/apollo/gql/gqlProjects.ts (4 hunks)
- src/components/views/donate/Recurring/SelectTokenModal/SelectTokenModal.tsx (2 hunks)
🧰 Additional context used
🔇 Additional comments (5)
src/components/views/donate/Recurring/SelectTokenModal/SelectTokenModal.tsx (1)
Line range hint
1-265
: Summary: Improved error handling with minor suggestions.The changes in this file enhance the component's robustness by adding null checks and improving error handling. The addition of console.log statements, while useful for debugging, should be removed or commented out before production deployment. Overall, these modifications contribute to a more stable and maintainable codebase.
src/apollo/gql/gqlProjects.ts (4)
147-147
: ReintroducingisGivbackEligible
inFETCH_PROJECT_BY_SLUG_DONATION
The
isGivbackEligible
field has been re-added to theFETCH_PROJECT_BY_SLUG_DONATION
query. This ensures that the Givbacks eligibility status is correctly fetched and available for frontend components, addressing previous concerns about its omission.
217-217
: AddingisGivbackEligible
toFETCH_PROJECT_BY_SLUG_SINGLE_PROJECT
Including the
isGivbackEligible
field in theFETCH_PROJECT_BY_SLUG_SINGLE_PROJECT
query provides access to the Givbacks eligibility status, which may be necessary for features that rely on this information.
602-602
: IncludingisGivbackEligible
inADD_RECIPIENT_ADDRESS_TO_PROJECT
MutationBy adding the
isGivbackEligible
field to the mutation response, the updated Givbacks eligibility status is immediately available after a recipient address is added. This allows the frontend to update any relevant UI elements accordingly.
693-693
: AddingisGivbackEligible
toPROJECT_ACCEPTED_TOKENS
QueryThe inclusion of
isGivbackEligible
in thePROJECT_ACCEPTED_TOKENS
query provides necessary information about each token's Givbacks eligibility, which is important for donation flows and ensuring accurate information is displayed to users.
Hi @divine-comedian , |
@HrithikSampson since this token doesn't exist on staging we should make sure this code does not go to production - I think this PR ca be closed. |
relates to Giveth/impact-graph#1810
Summary by CodeRabbit
New Features
Bug Fixes