-
Notifications
You must be signed in to change notification settings - Fork 93
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
New Donation Flow - 1297 Error handling and Fail page #1330
Merged
dimitur2204
merged 3 commits into
podkrepi-bg:1272-epic-new-version-of-the-donation-flow
from
dimitur2204:1297-error-handling-and-fail-page
Feb 9, 2023
Merged
New Donation Flow - 1297 Error handling and Fail page #1330
dimitur2204
merged 3 commits into
podkrepi-bg:1272-epic-new-version-of-the-donation-flow
from
dimitur2204:1297-error-handling-and-fail-page
Feb 9, 2023
Conversation
This file contains 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
✅ Tests will run for this PR. Once they succeed it can be merged. |
dimitur2204
added
the
run tests
Allows running the tests workflows for forked repos
label
Feb 8, 2023
github-actions
bot
removed
the
run tests
Allows running the tests workflows for forked repos
label
Feb 8, 2023
kachar
approved these changes
Feb 8, 2023
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.
The update looks good 🚀
Do we need to fix the playwright tests before the merge?
Yes I will look into why they are failing |
dimitur2204
merged commit Feb 9, 2023
b16753c
into
podkrepi-bg:1272-epic-new-version-of-the-donation-flow
1 task
slavcho
pushed a commit
that referenced
this pull request
Oct 10, 2024
* New Donation Flow - Choosing a payment method step (Card with Stripe) (#1287) * payment-process-stripe - add flow context * payment-process-stripe - add choose amount component * payment-process-stripe - connect the accordion group to work with formik now * payment-process-stripe - connect the accordion card group to work with formik * payment-process-stripe - add formik to the flow form * payment-process-stripe - add the choose amount from the old donation flow * payment-process-stripe - add disabled prop to the options on the cards * payment-process-stripe - add the stripe payment intent to the context * payment-process-stripe - add the stripe key to the runtime config * payment-process-stripe - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * payment-process-stripe - add step splitter component * payment-process-stripe - add mobile view for the payment method * payment-process-stripe - add disabled and fix styling for the RadioAccordionGroup * 1284 - add flow context * 1284 - add choose amount component * 1284 - connect the accordion group to work with formik now * 1284 - connect the accordion card group to work with formik * 1284 - add formik to the flow form * 1284 - add the choose amount from the old donation flow * 1284 - add disabled prop to the options on the cards * 1284 - add the stripe payment intent to the context * 1284 - add the stripe key to the runtime config * 1284 - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * 1284 - add step splitter component * 1284 - add mobile view for the payment method * 1284 - add disabled and fix styling for the RadioAccordionGroup * 1284 - rewrite DonationFlowPage styles to use the new `styled` api * 1284 - remove unecessary `StyledLayout` * 1284 - move tax calculations and checkbox to the PaymentMethod step * 1284 - fix stripe promise and styling issues * 1284 - fix mobile and tablet styling * 1284 - remove stripe public key from the .env example file * 1284 - add `<LinkAuthenticationElement />` for email on the stripe payment * 1284 - fix rerendering issue on RadioCardItems * a11y - add accessibility :focus styling to all buttons * a11y - fix keyboard navigation for `LinkButton` component * dependencies - update material dependencies * 1284 - move stripePromise to DonationFlowContext instead of _app * New Donation Flow - Authentication form (#1294) * payment-process-stripe - add flow context * payment-process-stripe - add choose amount component * payment-process-stripe - connect the accordion group to work with formik now * payment-process-stripe - connect the accordion card group to work with formik * payment-process-stripe - add formik to the flow form * payment-process-stripe - add the choose amount from the old donation flow * payment-process-stripe - add disabled prop to the options on the cards * payment-process-stripe - add the stripe payment intent to the context * payment-process-stripe - add the stripe key to the runtime config * payment-process-stripe - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * payment-process-stripe - add step splitter component * payment-process-stripe - add mobile view for the payment method * payment-process-stripe - add disabled and fix styling for the RadioAccordionGroup * 1284 - add flow context * 1284 - add choose amount component * 1284 - connect the accordion group to work with formik now * 1284 - connect the accordion card group to work with formik * 1284 - add formik to the flow form * 1284 - add the choose amount from the old donation flow * 1284 - add disabled prop to the options on the cards * 1284 - add the stripe payment intent to the context * 1284 - add the stripe key to the runtime config * 1284 - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * 1284 - add step splitter component * 1284 - add mobile view for the payment method * 1284 - add disabled and fix styling for the RadioAccordionGroup * 1284 - rewrite DonationFlowPage styles to use the new `styled` api * 1284 - remove unecessary `StyledLayout` * 1284 - move tax calculations and checkbox to the PaymentMethod step * 1284 - fix stripe promise and styling issues * 1284 - fix mobile and tablet styling * 1284 - remove stripe public key from the .env example file * 1284 - add `<LinkAuthenticationElement />` for email on the stripe payment * 1284 - fix rerendering issue on RadioCardItems * a11y - add accessibility :focus styling to all buttons * a11y - fix keyboard navigation for `LinkButton` component * dependencies - update material dependencies * 1292 - add authentication form RadioAccordionGroup and initial skeleton * 1292 - add the inline login form to the login step * 1292 - add translation to the `Authentication` * 1292 - fix Radio checks on the authentication form accordions * 1292 - add ƒorm validation and initial values * 1292 - add inline register form * 1292 - add authentication folder * 1292 - style form donate button * 1292 - return yup.then to non-functions * 1292 - fix payment method grid problem * 1292 - remove stripe public key from example env * 1292 - add heading to the form * 1292 - move payment method components to a folder * 1292 - change structure of the donation-flow directory * 1292 - add docs to the RadioGroup components * 1292 - fix context import * 1292 - remove `stripe-fee-calculators.ts` from the payment-method folder * 1292 - add `anonymous` as a seperate checkbox and field * feat-7134 - add a `NOREGISTER` state to the authentication and a conditionally rendered checkbox * feat-7134 - return the authentication on null if checkbox is unchecekd * 1292 - add a noregister radio button and put the anonymous checkbox to be avaliable to both logged and unlogged users * 1292 - add an email field for no-register users * 1292 - arrange imports on the Authentication * New Donation Flow - Form Data Flow and Stripe Card submission (#1311) * payment-process-stripe - add flow context * payment-process-stripe - add choose amount component * payment-process-stripe - connect the accordion group to work with formik now * payment-process-stripe - connect the accordion card group to work with formik * payment-process-stripe - add formik to the flow form * payment-process-stripe - add the choose amount from the old donation flow * payment-process-stripe - add disabled prop to the options on the cards * payment-process-stripe - add the stripe payment intent to the context * payment-process-stripe - add the stripe key to the runtime config * payment-process-stripe - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * payment-process-stripe - add step splitter component * payment-process-stripe - add mobile view for the payment method * payment-process-stripe - add disabled and fix styling for the RadioAccordionGroup * 1284 - add flow context * 1284 - add choose amount component * 1284 - connect the accordion group to work with formik now * 1284 - connect the accordion card group to work with formik * 1284 - add formik to the flow form * 1284 - add the choose amount from the old donation flow * 1284 - add disabled prop to the options on the cards * 1284 - add the stripe payment intent to the context * 1284 - add the stripe key to the runtime config * 1284 - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * 1284 - add step splitter component * 1284 - add mobile view for the payment method * 1284 - add disabled and fix styling for the RadioAccordionGroup * 1284 - rewrite DonationFlowPage styles to use the new `styled` api * 1284 - remove unecessary `StyledLayout` * 1284 - move tax calculations and checkbox to the PaymentMethod step * 1284 - fix stripe promise and styling issues * 1284 - fix mobile and tablet styling * 1284 - remove stripe public key from the .env example file * 1284 - add `<LinkAuthenticationElement />` for email on the stripe payment * 1284 - fix rerendering issue on RadioCardItems * a11y - add accessibility :focus styling to all buttons * a11y - fix keyboard navigation for `LinkButton` component * dependencies - update material dependencies * 1292 - add authentication form RadioAccordionGroup and initial skeleton * 1292 - add the inline login form to the login step * 1292 - add translation to the `Authentication` * 1292 - fix Radio checks on the authentication form accordions * 1292 - add ƒorm validation and initial values * 1292 - add inline register form * 1292 - add authentication folder * 1292 - style form donate button * 1292 - return yup.then to non-functions * 1292 - fix payment method grid problem * 1292 - remove stripe public key from example env * 1292 - add heading to the form * 1292 - move payment method components to a folder * 1292 - change structure of the donation-flow directory * 1292 - add docs to the RadioGroup components * 1292 - fix context import * 1292 - remove `stripe-fee-calculators.ts` from the payment-method folder * 1292 - add `anonymous` as a seperate checkbox and field * feat-7134 - add a `NOREGISTER` state to the authentication and a conditionally rendered checkbox * feat-7134 - return the authentication on null if checkbox is unchecekd * avatar-letters-hotfix - add a fallback to `given_name` and `family_name` avatar letters (#1300) * put campaigns with status different than active at the bottom of the … (#1304) * put campaigns with status different than active at the bottom of the list * remove left out `console.log` * Fix Campaigns section max width and alignment on Homepage and Campaigns page (#1303) * Fix maxWidth of Campaigns section on Homepage * Fix maxWidth for Campaigns section on Campaign page * Fix alignment of campaigns page * Fix spacings on campaigns section * Remove unused import (#1306) * 1292 - add a noregister radio button and put the anonymous checkbox to be avaliable to both logged and unlogged users * 1292 - add an email field for no-register users * 1292 - arrange imports on the Authentication * Adding withdrawnAmount in Admin Campaign Grid (#1305) * fixed scroll in admin campaign grid * allow edit of public donor name for all donations - #1206 * fixed: misleading names for bank upload * fixed typos valt vs vault * moved: vault grid actions as first column * fixed: editing of withdrawals and status change to successfully approved * added: withdrawnAmount column in Admin Campaign grid * forbid changes on succeeded withdrawal --------- Co-authored-by: quantum-grit <[email protected]> * 1299 - move out stripe `Elements` in a separate provider outside the form * 1299 - add `formik-persist-values` dependency and session storage persistance * 1299 - add create stripe donation endpoint * 1299 - add update endpoint call to update the current payment intent * 1299 - add a call to the createStripePayment endpoint before submitting * 1299 - reorder imports * 1299 - update form validation * #1188, #1194 - Add POM for the E2E tests and update all tests (#1265) * Created basic POM for the Playwright tests - initial commit Added method and configurations Additional refactoring - methods, specs and gitignore Implemented Support page for E2E tests Fixed tests for Support page New changes on the tests * Created basic POM for the Playwright tests - initial commit Added method and configurations Additional refactoring - methods, specs and gitignore Implemented Support page for E2E tests Fixed tests for Support page New changes on the tests Fixes on E2E tests * Updated paths for the localization files for E2E * Merge branch '1194-feature-create-playwright-page-object-model-for-the-e2e-tests' of https://github.com/podkrepi-bg/frontend into 1194-feature-create-playwright-page-object-model-for-the-e2e-tests * Revert "Merge branch '1194-feature-create-playwright-page-object-model-for-the-e2e-tests' of https://github.com/podkrepi-bg/frontend into 1194-feature-create-playwright-page-object-model-for-the-e2e-tests" This reverts commit 3bb8a19, reversing changes made to b18b16b. * Updated Readme file * Fixed Sonar issues and updated Playwright version Additional fix * 1194 - init yarn project in the e2e folder and move out gitignore * 1194 - fix ts errors * 1194 - add e2e/.yarn to gitignore * 1194 - remove e2e/.yarn * 1194 - remove cached .yarn folder * 1194 - change GH Action workflow to now run the `test:e2e` * 1194 - change GH Action workflow to include artifacts of the reports and results * 1194 - fix home.page.ts ts errors * 1194 - remove hardcoded navigation to different environments * 1194 - add installation of dependencies for the e2e folder in the CI action * 1194 - fix translation on the homepage * 1194 - fix e2e script in the root folder * 1194 - add a tsconfig.build.json to exclude e2e while next is building * 1194 - add data based on the STAGING env variable * 1194 - resolve environment related tests * 1194 - remove uneccessasry `tsconfigPath` inside of the config * 1194 - put video to `off` by default * 1194 - add a clickCampaignByIndex method * 1194 - remove campaign specific test and changed them to index based * 1194 - add the index on the campaigns page list * 1194 - change the expiry date tests data to `04 / 42` * 1194 - add the index to the campaign card on the campaigns section on the home page * 1194 - add `playwright` as a dependency for the project * 1194 - add the changed `yarn.lock` * 1194 - fix the support action button click test to not click the card beforehand --------- Co-authored-by: Daniel Takev <[email protected]> * feat-7134 - add `yarn install --immutable` to the Github Workflow * feat-7134 - update `yarn.lock` * 1299 - fix `e2e` region pick test --------- Co-authored-by: Ani <[email protected]> Co-authored-by: quantum-grit <[email protected]> Co-authored-by: quantum-grit <[email protected]> Co-authored-by: Daniel Takev <[email protected]> * New Donation Flow - Alerts and Summary Column (#1314) * payment-process-stripe - add flow context * payment-process-stripe - add choose amount component * payment-process-stripe - connect the accordion group to work with formik now * payment-process-stripe - connect the accordion card group to work with formik * payment-process-stripe - add formik to the flow form * payment-process-stripe - add the choose amount from the old donation flow * payment-process-stripe - add disabled prop to the options on the cards * payment-process-stripe - add the stripe payment intent to the context * payment-process-stripe - add the stripe key to the runtime config * payment-process-stripe - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * payment-process-stripe - add step splitter component * payment-process-stripe - add mobile view for the payment method * payment-process-stripe - add disabled and fix styling for the RadioAccordionGroup * 1284 - add flow context * 1284 - add choose amount component * 1284 - connect the accordion group to work with formik now * 1284 - connect the accordion card group to work with formik * 1284 - add formik to the flow form * 1284 - add the choose amount from the old donation flow * 1284 - add disabled prop to the options on the cards * 1284 - add the stripe payment intent to the context * 1284 - add the stripe key to the runtime config * 1284 - add locale to the stripe payment process * dependencies - bump up minor next version to 13.1 * 1284 - add step splitter component * 1284 - add mobile view for the payment method * 1284 - add disabled and fix styling for the RadioAccordionGroup * 1284 - rewrite DonationFlowPage styles to use the new `styled` api * 1284 - remove unecessary `StyledLayout` * 1284 - move tax calculations and checkbox to the PaymentMethod step * 1284 - fix stripe promise and styling issues * 1284 - fix mobile and tablet styling * 1284 - remove stripe public key from the .env example file * 1284 - add `<LinkAuthenticationElement />` for email on the stripe payment * 1284 - fix rerendering issue on RadioCardItems * a11y - add accessibility :focus styling to all buttons * a11y - fix keyboard navigation for `LinkButton` component * dependencies - update material dependencies * 1292 - add authentication form RadioAccordionGroup and initial skeleton * 1292 - add the inline login form to the login step * 1292 - add translation to the `Authentication` * 1292 - fix Radio checks on the authentication form accordions * 1292 - add ƒorm validation and initial values * 1292 - add inline register form * 1292 - add authentication folder * 1292 - style form donate button * 1292 - return yup.then to non-functions * 1292 - fix payment method grid problem * 1292 - remove stripe public key from example env * 1292 - add heading to the form * 1292 - move payment method components to a folder * 1292 - change structure of the donation-flow directory * 1292 - add docs to the RadioGroup components * 1292 - fix context import * 1292 - remove `stripe-fee-calculators.ts` from the payment-method folder * 1292 - add `anonymous` as a seperate checkbox and field * feat-7134 - add a `NOREGISTER` state to the authentication and a conditionally rendered checkbox * feat-7134 - return the authentication on null if checkbox is unchecekd * avatar-letters-hotfix - add a fallback to `given_name` and `family_name` avatar letters (#1300) * put campaigns with status different than active at the bottom of the … (#1304) * put campaigns with status different than active at the bottom of the list * remove left out `console.log` * Fix Campaigns section max width and alignment on Homepage and Campaigns page (#1303) * Fix maxWidth of Campaigns section on Homepage * Fix maxWidth for Campaigns section on Campaign page * Fix alignment of campaigns page * Fix spacings on campaigns section * Remove unused import (#1306) * 1292 - add a noregister radio button and put the anonymous checkbox to be avaliable to both logged and unlogged users * 1292 - add an email field for no-register users * 1292 - arrange imports on the Authentication * Adding withdrawnAmount in Admin Campaign Grid (#1305) * fixed scroll in admin campaign grid * allow edit of public donor name for all donations - #1206 * fixed: misleading names for bank upload * fixed typos valt vs vault * moved: vault grid actions as first column * fixed: editing of withdrawals and status change to successfully approved * added: withdrawnAmount column in Admin Campaign grid * forbid changes on succeeded withdrawal --------- Co-authored-by: quantum-grit <[email protected]> * 1299 - move out stripe `Elements` in a separate provider outside the form * 1299 - add `formik-persist-values` dependency and session storage persistance * 1299 - add create stripe donation endpoint * 1299 - add update endpoint call to update the current payment intent * 1299 - add a call to the createStripePayment endpoint before submitting * 1299 - reorder imports * 1299 - update form validation * #1188, #1194 - Add POM for the E2E tests and update all tests (#1265) * Created basic POM for the Playwright tests - initial commit Added method and configurations Additional refactoring - methods, specs and gitignore Implemented Support page for E2E tests Fixed tests for Support page New changes on the tests * Created basic POM for the Playwright tests - initial commit Added method and configurations Additional refactoring - methods, specs and gitignore Implemented Support page for E2E tests Fixed tests for Support page New changes on the tests Fixes on E2E tests * Updated paths for the localization files for E2E * Merge branch '1194-feature-create-playwright-page-object-model-for-the-e2e-tests' of https://github.com/podkrepi-bg/frontend into 1194-feature-create-playwright-page-object-model-for-the-e2e-tests * Revert "Merge branch '1194-feature-create-playwright-page-object-model-for-the-e2e-tests' of https://github.com/podkrepi-bg/frontend into 1194-feature-create-playwright-page-object-model-for-the-e2e-tests" This reverts commit 3bb8a19, reversing changes made to b18b16b. * Updated Readme file * Fixed Sonar issues and updated Playwright version Additional fix * 1194 - init yarn project in the e2e folder and move out gitignore * 1194 - fix ts errors * 1194 - add e2e/.yarn to gitignore * 1194 - remove e2e/.yarn * 1194 - remove cached .yarn folder * 1194 - change GH Action workflow to now run the `test:e2e` * 1194 - change GH Action workflow to include artifacts of the reports and results * 1194 - fix home.page.ts ts errors * 1194 - remove hardcoded navigation to different environments * 1194 - add installation of dependencies for the e2e folder in the CI action * 1194 - fix translation on the homepage * 1194 - fix e2e script in the root folder * 1194 - add a tsconfig.build.json to exclude e2e while next is building * 1194 - add data based on the STAGING env variable * 1194 - resolve environment related tests * 1194 - remove uneccessasry `tsconfigPath` inside of the config * 1194 - put video to `off` by default * 1194 - add a clickCampaignByIndex method * 1194 - remove campaign specific test and changed them to index based * 1194 - add the index on the campaigns page list * 1194 - change the expiry date tests data to `04 / 42` * 1194 - add the index to the campaign card on the campaigns section on the home page * 1194 - add `playwright` as a dependency for the project * 1194 - add the changed `yarn.lock` * 1194 - fix the support action button click test to not click the card beforehand --------- Co-authored-by: Daniel Takev <[email protected]> * feat-7134 - add `yarn install --immutable` to the Github Workflow * feat-7134 - update `yarn.lock` * 1299 - fix `e2e` region pick test * 1299 - add `formik-persist-values` dependency and session storage persistance * 1299 - add create stripe donation endpoint * 1299 - reorder imports * 1286 - add alerts column on desktop * 1286 - add payment method alerts and create a separete types file * 1286 - add authentication alert info * 1286 - add hiding logic to the alerts boxes * 1286 - remove recurring donations checkbox * 1286 - add summary alert box skeleton * 1286 - style summary alret box * 1286 - add a privacy field and move the anonymous checkbox * 1286 - add the splitter and fix typings * 1286 - add mobile alerts * 1286 - change authenticated text * 1286 - remove mobile auth alerts on desktop * 1286 - add strict typings to the form * 1286 - split register validation * 1286 - split login, general, amount validation * 1286 - split initial form values * 1286 - add error handling on the form submit requests * 1286 - fix otherAmount field validation problems * 1286 - change mutation configs to now use the mutationFn options * 1286 - update authentication alert after stripe form initialization * 1286 - add minus margins on the no registration alert * 1286 - fix other field price overlap * 1286 - add comment on the amount change * 1286 - add `useDonationFlow` hook * 1286 - comment out the `JSON.stringify(error)` and add a todo comment * 1286 - add alert max-width to match the PaymentSummary alert * 1286 - add PaymentSummaryAlert on mobile * 1286 - add back button, and cancel confirmation dialog * 1286 - adjust anchored alert width * 1286 - swapped the change and confirmation buttons * 1286 - removed unused imports --------- Co-authored-by: Ani <[email protected]> Co-authored-by: quantum-grit <[email protected]> Co-authored-by: quantum-grit <[email protected]> Co-authored-by: Daniel Takev <[email protected]> * New Donation Flow - #1297 #1291 Bank Transfer flow and Success page (#1322) * 1291 - add bank payment content and mobile alert * 1291 - add loading state to the form and fix payment summary negative value bug * 1291 - fix mobile styling on the bank payment element * 1291 - add payment intent creation on the SSR * 1291 - add prefetch of the stripe prices * 1291 - arrange imports * 1291 - add disabled styles to the RadioButton * 1291 - add bank alert to be shown on desktop * 1291 - fix bank alert margin error * 1291 - add todo comment for the bank payment transfer * 1291 - add `Collapse` animation to the payment method * 1291 - add grey borders on the disabled RadioButton * 1297 - change enum names * 1297 - move Layout to a seperate component * 1297 - add stripe as a separate service and add top-level await in next.config.js * 1297 - add payment status page * 1297 - fix form submission and add metadata for updated payment intent * 1297 - adjust folder structure * 1297 - add a loader to the success page * 1297 - add instant routing to the success page on bank payment * 1297 - social share list component * 1297 - add link cards * 1297 - update social share list button to use proper links and serialized url * 1297 - fixup imports * 1297 - add wish donation * 1297 - swap session sid with person id * 1297 - add the default value to be taken from the paymentIntent * 1297 - fix server mismatch classess due to stripe elements check * 1297 - set returns after error states in the form submission * 1297 - remove the v2 suffix * 1297 - move generalValidation over the validationSchema * 1297 - fix routing and bank payment redirect * 1297 - add localization language to the return url * 1297 - change the url of the old donation page in the e2e tests * New Donation Flow - 1297 Error handling and Fail page (#1330) * 1297 - add fail graphic * 1297 - change fail graphic for an `X` * 1297 - fix ui problems when authenticated and add cancelation * New Donation Flow - Translations (#1334) * 1297 - add fail graphic * 1297 - change fail graphic for an `X` * 1297 - fix ui problems when authenticated and add cancelation * 1295 - add translations to the amount step * 1295 - add translations for the main form * 1295 - add all en translations * 1295 - fix translations on the success page * 1295 - add some bulgarian translations * 1295 - add donations and disable anonymous checkbox as true when not logged * 1295 - fix radioButton xpath selector * New Donation Flow - e2e tests, Finalization and QA (#1336) * 1272-finalization - fix error translations and add loading states on session loading * 1272-finalization - adjust default values, fix form state when the session expires * 1272-finalization - remove old donation implementation and e2e tests * 1272-finalization - remove one-time donation server side translations * 1317 - add new donation page POM * 1317 - add tests for the form submission with custom value * 1317 - add tests for the status page * 1317 - add data-testids to the needed components * 1317 - add fail tests * 1317 - fix failing error alert locator * 1317 - return naming on the fixed tests * 1272-finalization - fix translation on the privacy error field * 1336 - remove old donation page from the smoke tests * 1272 - update import of the `stripeFeeCalculators` in the function tests * 1272 - add STRIPE_PUBLIC_KEY to the playwright workflow file * 1272 - add animatino gif * use STRIPE_DEV_PUBLISHABLE_KEY for playwright action Signed-off-by: Ivan Milchev <[email protected]> * 1272 - update stripe key env variable in playwright.yml Co-authored-by: Ivan Milchev <[email protected]> * 1272 - update stripe env variable name inside stripeClient * 1272 - update e2e files imports * 1272 - next.config and .env.local.example with new stripe env key name * 1272 - add inhertied env to the check-pr.yml config * 1272 - change env to environment in check-pr.yml * 1272 - add specific env variable * 1272 - add environment as development * 1272 - add env in the playwright.yml file * 1272 - remove comment from playwright.yml * 1272 - change out env for vars * 1393 - Refactor and change out the donation flow to use Stripe.SetupIntents (#1396) * add dzhaniivanov as a contributor for code (#1392) * update README.md [skip ci] * update .all-contributorsrc [skip ci] --------- Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> * set komodor annotations for deployment Signed-off-by: Ivan Milchev <[email protected]> * 1393 - change apiEndpoints to use /stripe and add setup intent endpoint * 1393 - add setup intent logic * 1393 - fix the redirect endpoint url * 1393 - put form data in the metadata of the setup intent * 1393 - remove unneeded endpoint * 1393 - remove unnused endpoints * 1393 - remove email field from e2e tests * 1393 - remove `createCheckoutSession` import * 1393 - fix card payments with forced 3D auth --------- Signed-off-by: Ivan Milchev <[email protected]> Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: Ivan Milchev <[email protected]> * 1272 - add error handling for bad auth cards on the status page * fix: Resolve build errors after merging with master branch * feat: Add recurring payment * feat(stripe): Add field to collect card holder name * fix: Use formik.cardRegion value when calculating fee in summary dialog * fix: Resolve conflict due to duplication of type * fix(donation-flow): Resolve next hydratation error Was caused due to the usage of react-i18next instead of next-i18next * refactor(donation-flow): Create subscription from setup intent * fix(donation-flow): Confirm card in case of 3DS * refactor(donation-flow): Abstract stripe payment creation into fn The submit fn is large enough already * chore(donation-flow): Send idempotent key for stripe requests Needed to prevent creating of duplicate resources due to network error * ui(donation-flow): Show stripe message errors instead of general one * ui: Disable bank and unregistered selections for recurring payments We can't initiate recurring payments via bank payments, and as of now unregistered users can't create recurring donation for campaign. Disable them to prevent user confusion * ui(i18n): Translate form errors * ui(donation-flow): Change error states according to UI requirements * fix(donation-flow): Confirm setupIntent only if it hasn't been confirmed Stripe forbids to confirm setup intents, once it is with status succeeded * chore(donation-flow): Reset form when payment has succeeded * refactor: Change structure for better resposiveness * ui: Change tooltip design according to ui specs * chore: Bring back SetupIntent call. The UI related stuff seems to be sorted out * ui: Fix otherAmount field being too large * ui: Don't show desktop alerts for viewports <900px width * chore: Remove unnecessary console.log * ui: Fix DonationStatus page being too large * i18n: Provide internalization for Share button * fix: Fix hydratation errors * e2e: Adapt e2e tests to latest changes * chore: Retrieve latest payment intent after card confirmation if card confirmation is needed, the result of the initial payment intent will be requires_action, thus redirecting with outdated status, causing user confusion. If card requires additional actions, retrieve and return the latest payment_intent after card confirmation * fix: Fix donation wishes not being attached to specific campaign * fix: Donation status page being in loading state for bank donations Disable donation wish as well, as we don't currently have a way to link that donation wish, to an upcoming bank donation * fix: Next.js build errors * Cancel SetupIntent incase of bank donation and user cancellation * ui: Use same style for Stripe errors as form errors * fix: Formik persisted values being applied to donation for any campaign * tests: Fix e2e breakages after latest changes * a11y: Fix not being to blur otherAmount input field * fix: Build issues Removed some unused imports and variables as well. * fix: SessionStorage item not cleared after succeeded donation * fix: Grid2 migration * fix: Layout after MUI upgrade * fix:e2e test * fix: e2e tests --------- Signed-off-by: Ivan Milchev <[email protected]> Co-authored-by: Ani <[email protected]> Co-authored-by: quantum-grit <[email protected]> Co-authored-by: quantum-grit <[email protected]> Co-authored-by: Daniel Takev <[email protected]> Co-authored-by: Ivan Milchev <[email protected]> Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com> Co-authored-by: Alexander Petkov <[email protected]> Co-authored-by: Aleksandar <[email protected]>
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 #1297
Motivation and context
Added error handling logic and views in the PR.
Errors on the form are shown over the submit button:
Testing
Tested out all the case scenarios that Stripe provide
https://stripe.com/docs/payments/accept-a-payment?platform=web&ui=elements&client=react#web-test-the-integration
Affected urls
/campaigns/donation/{slug}