fix: add load more button to dashboard campaign lists - #740
Closed
TheShnider wants to merge 24 commits into
Closed
Conversation
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
davidmaronio
requested changes
Jul 4, 2026
davidmaronio
left a comment
Contributor
There was a problem hiding this comment.
the load-more logic in DashboardClient.tsx is correct, but a few things beyond the title need addressing:
- CausesClient.tsx removes the !isLoading && !error guard around the category-filter chips, so chips now render during loading/error states. intended? if not, restore the guard.
- it rewrites the Voting.needMoreVotes/needMoreApproval keys in messages/en.json/es.json into ICU {count, plural, ...} form. that collides with #739 which adds duplicate non-plural keys for the same strings. pick one representation (the ICU form here is cleaner) and coordinate so we don't end up with contradictory keys.
- it adds a block of Donation.* validation keys that nothing in this PR consumes. drop them or wire them up.
keep the load-more change, just split or justify the rest.
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
…er/ProofOfHeart-frontend into fix/dashboard-load-more
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
- Iris-IV#607: raise HSTS max-age to 63072000 (2 years) in next.config.ts - Iris-IV#611: self-host Inter via next/font/google with font-display swap, eliminating render-blocking font fetch - Iris-IV#606: add onRefetch polling (10s) to DonationModal so concurrent donations update progress bar while input is open - Iris-IV#605: multi-language campaign descriptions via [lang:en]/[lang:es] encoding; detail page resolves viewer locale with English fallback
Issue Iris-IV#651 — Multi-signature withdrawal for creator dashboard - Add `useMultiSigProposals` hook managing proposals via localStorage - Add `MultiSigWithdrawalPanel` component: creators set co-signers and a threshold; co-signers approve; withdrawal executes once threshold met - Integrate panel into dashboard submitted-campaigns section - Add i18n strings (en + es) under `MultiSigPanel` namespace Issue Iris-IV#668 — Pagination Next button disabled correctly on last page - Add reusable `Pagination` component: Next disabled when currentPage === totalPages, Prev disabled when currentPage === 1 - Apply to admin pending-campaigns list (5 per page) Issue Iris-IV#601 — Storybook with stories for all reusable UI components - Add @storybook/nextjs + addons to devDependencies - Add `storybook` and `build-storybook` npm scripts - Add `.storybook/main.ts` and `.storybook/preview.tsx` with NextIntlClientProvider decorator - Add stories for: CauseCard, DonationModal, VotingComponent, ShareButtons, DeadlineCountdown, FundingProgressBar, Skeleton Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Regenerates the lock file after adding @storybook/nextjs, @storybook/react, @storybook/addon-essentials, @storybook/addon-interactions, and storybook devDependencies in the previous commit. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove non-existent isOpen prop from DonationModal.stories.tsx - Use conditional render pattern to control modal open state in stories - Rename onDonationSuccess arg to onSuccess to match component interface - Run Prettier on .storybook/main.ts, AdminClient, DashboardClient, MultiSigWithdrawalPanel Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix isConnected()/isAllowed() destructuring (Freighter API v6 returns objects, not primitives) — was causing disconnect branch to never be reached - Replace WatchWalletChanges with 5s polling + visibilitychange listener (WatchWalletChanges only fires on address/network changes, not disconnection) - Fix isAllowed() handling in connectWallet — 'not authorized' warning was unreachable - Update test mocks to match v6 API shape, add external disconnect test
- Add optional latitude/longitude fields to Campaign type - Create CampaignMap component with valid-coordinate filtering - Create MapErrorBoundary for map-specific error handling - Add list/map view toggle to Causes page with dynamic leaflet import - Update mock campaigns with sample coordinates (some with, some without) - Add i18n keys for listView/mapView - Write tests for helpers, filter, and error boundary
…le waitForLoadState calls
- smoke.spec.ts: use goto for all page transitions instead of clicking
links and waiting for URL changes (avoids race with CausesClient
router.replace on webkit/firefox)
- journeys.spec.ts: remove waitForLoadState('networkidle') calls that
can hang on webkit when CausesClient keeps the page busy
…ationModal
- Implemented active polling (every 2s) for campaign status and `amount_raised` while the
DonationModal is open.
- Added client-side validation to reject contributions exceeding the remaining goal or
when campaign is already fully funded.
- Updated Next-intl translation namespace from "Donation" to "DonationModal" for input
validation errors.
- Resolved type-checking errors and updated mock structures in Jest tests to cover
polling, remaining goal validation, and fully funded states.
- Formatted files with Prettier.
- Removed unused variable binding in DonationModal's polling catch block to resolve
ESLint warning.
…er/ProofOfHeart-frontend into fix/dashboard-load-more
Contributor
|
Auto-review failed (API error). Leaving PR for human review. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
closes #633