Skip to content
This repository has been archived by the owner on Jul 14, 2022. It is now read-only.

New checkout #639

Merged
merged 217 commits into from May 4, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
217 commits
Select commit Hold shift + click to select a range
bcca5c8
Add Cart with CartView
orzechdev Feb 27, 2020
0a4c50e
Create new CartProvider in sdk
orzechdev Feb 27, 2020
7a83f4f
Fix CartProvider name
orzechdev Feb 27, 2020
9d336cb
Merge branch 'master' into refactor/cart-view
orzechdev Feb 28, 2020
29f3151
Update CartPage name
orzechdev Feb 28, 2020
6e1b07f
Add checkout line update mutation to SDK
orzechdev Feb 28, 2020
56807a8
Merge branch 'master' into refactor/cart-view
orzechdev Feb 28, 2020
c2d9457
Refactor CartProvider
orzechdev Feb 28, 2020
20054f5
Update CartProvider
orzechdev Feb 28, 2020
2e297a0
Create CheckoutProvider instead of CartProvider
orzechdev Mar 2, 2020
6ec9e0c
Setup local storage for checkout provider
orzechdev Mar 2, 2020
1b7cb59
Update checkout lines update mutation
orzechdev Mar 2, 2020
172984a
Update cart page
orzechdev Mar 2, 2020
54701a0
Get rid of logic from checkout context
orzechdev Mar 2, 2020
3137e07
Add context handlers to checkout context provider
orzechdev Mar 3, 2020
abaef7a
Update checkout context provider
orzechdev Mar 3, 2020
6a18d69
Cleanups in checkout context provider
orzechdev Mar 4, 2020
b86bc9f
Add deprecated comment to legacy checkout context components
orzechdev Mar 4, 2020
3105378
Add support to typescript optional chaining
orzechdev Mar 4, 2020
41e1fcb
Remove unused code from checkout context provider
orzechdev Mar 4, 2020
92df2fa
Update useCheckoutContextStateHandlers
orzechdev Mar 4, 2020
5d808c6
Add prototype of stateful SDK
orzechdev Mar 4, 2020
8935d9f
Update useHook
orzechdev Mar 5, 2020
e8fd548
Fix useHook
orzechdev Mar 5, 2020
7070962
Create persist state in Saleor SDK
orzechdev Mar 5, 2020
5040b87
Handle loading and errors in checkout SDK
orzechdev Mar 5, 2020
3d3223f
Make SaleorCheckoutAPI as separate class
orzechdev Mar 5, 2020
f100ecc
Remove unused commented code
orzechdev Mar 6, 2020
202b0ed
Update checkout SDK
orzechdev Mar 6, 2020
60d3eff
Update addItemToCart method in checkout SDK
orzechdev Mar 6, 2020
c4c92dc
Update checkout SDK
orzechdev Mar 9, 2020
dc0cec6
Update checkout SDK methods
orzechdev Mar 9, 2020
d7e97a8
Add controller to checkout SDK
orzechdev Mar 9, 2020
6ab700d
Modify plop file so react components are visible correctly in react-d…
mateuszkula Mar 10, 2020
eed35a1
Refactor Cart template
mateuszkula Mar 10, 2020
0f98145
Add CartRow component
mateuszkula Mar 10, 2020
a498012
Cleanup CartPage component for now
mateuszkula Mar 10, 2020
03e0e43
Add subtract from cart function to checkout SDK
orzechdev Mar 10, 2020
975bd2b
Add repository observer
orzechdev Mar 10, 2020
d221c7a
Add checkout repository manager
orzechdev Mar 11, 2020
b5971de
Create checkout network manager from checkout controller
orzechdev Mar 11, 2020
8682dbb
Modify CartPage styling
mateuszkula Mar 11, 2020
1629650
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 11, 2020
4ad1612
Add components description, use only one method for quantity change
mateuszkula Mar 11, 2020
d847cbf
Change the way of handling quantity changes
mateuszkula Mar 11, 2020
419646c
Update repository observer
orzechdev Mar 11, 2020
93dde26
Update story to corespond to types change
mateuszkula Mar 11, 2020
5316f04
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 11, 2020
d27d306
Fix keys order
mateuszkula Mar 11, 2020
26ebaab
Add network queue
orzechdev Mar 11, 2020
4bdacc5
Create job queue for checkout
orzechdev Mar 12, 2020
ae7dd80
Remember SDK jobs to do in localStorage
orzechdev Mar 12, 2020
b0dc49a
Enqueue jobs saved in repository
orzechdev Mar 12, 2020
c34ca5b
Checkout SDK cleanups
orzechdev Mar 13, 2020
ec78c7b
Add CartSummary component base implementation
mateuszkula Mar 13, 2020
eae08c0
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 13, 2020
a341c82
Add CartSummaryRow component
mateuszkula Mar 13, 2020
eb6c90d
Fix compiler errors
mateuszkula Mar 13, 2020
37b6b12
Update checkout type for local storage
orzechdev Mar 13, 2020
8fecff7
Add CartSummaryRow to CartSummary
mateuszkula Mar 13, 2020
39db5c1
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 13, 2020
9013dca
Fix tests and styling for CartSummary component
mateuszkula Mar 16, 2020
6ea79eb
Update CartSummary promo code line so it shows negative value
mateuszkula Mar 16, 2020
6aca3bd
First implementation of CheckoutProgressBar
mateuszkula Mar 17, 2020
6115973
Fix checkout SDK queries and mutations bugs
orzechdev Mar 17, 2020
d5ee9a6
Add onStartLoad config for Saleor SDK
orzechdev Mar 17, 2020
f7ee61b
Add final implementation of CheckoutProgressBar
mateuszkula Mar 17, 2020
6447764
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 17, 2020
6271bf4
Add base implementation of Checkout template
mateuszkula Mar 17, 2020
f171706
Force load data in checkout SDK
orzechdev Mar 17, 2020
2cedbf8
Fix wrong reupdate and error handling checkout SDK
orzechdev Mar 18, 2020
b2ce2d4
Display passed components in Checkout template
mateuszkula Mar 18, 2020
4039948
Fix unsaved cart in checkout SDK for not logged user
orzechdev Mar 18, 2020
dd2b487
Add CheckoutPage component
mateuszkula Mar 18, 2020
1fd3fcb
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 18, 2020
570e843
Fix lack of checkout data for not logged user
orzechdev Mar 18, 2020
9fbc0a6
Fix checkout SDK when user is not logged in
orzechdev Mar 18, 2020
f9ee4d7
Add ThankYou component
mateuszkula Mar 19, 2020
1ba5c65
Add rest of ThankYouPage component
mateuszkula Mar 19, 2020
d378261
Add CartSummary and CheckoutProgressBar components to checkout page
mateuszkula Mar 19, 2020
8cb3c8d
Merge branch 'refactor/cart-view' of https://github.com/mirumee/saleo…
mateuszkula Mar 19, 2020
79ed612
Persist cart product variants in checkout SDK when checkout is not cr…
orzechdev Mar 19, 2020
a787f3e
Fix checkout SDK semantics
orzechdev Mar 19, 2020
9244a62
Create useCheckoutProductVariants
orzechdev Mar 19, 2020
26cc7eb
Implement first version of cart with new checkout sdk
mateuszkula Mar 19, 2020
e1f6e00
Badly fix Saleor context provider of stateful SDK
orzechdev Mar 19, 2020
dcac0a4
Add sku to product variant in checkout SDK
orzechdev Mar 20, 2020
9f0b638
Add method for changing number of items in cart
mateuszkula Mar 20, 2020
29ddcf2
Add logic to ThankYouPage
mateuszkula Mar 20, 2020
008a30b
Create SaleorManager for SaleorAPI
orzechdev Mar 20, 2020
9582767
Restrict SaleorManager class members access
orzechdev Mar 20, 2020
1d4aa3a
Add notified observers to SDK repository
orzechdev Mar 23, 2020
3bc7790
Change checkout SDK error handling
orzechdev Mar 23, 2020
a0877d1
Separate checkout SDK into checkout and cart abstraction
orzechdev Mar 23, 2020
5988b11
Fix SDK checkout initial loading way and fix cart items sort in SDK
orzechdev Mar 24, 2020
50a191c
Show attributes in cart rows
orzechdev Mar 24, 2020
f750ce7
Update Cart Page UI
orzechdev Mar 24, 2020
d422101
Add footer to cart page
orzechdev Mar 25, 2020
aed9e83
Remove unuded variables
orzechdev Mar 25, 2020
30bdd54
Validate inserted quantity in cart page
orzechdev Mar 25, 2020
ab7f4a9
Validate quantity in cart view
orzechdev Mar 25, 2020
403e2e9
Fix checkout progress bar
orzechdev Mar 25, 2020
eb08400
Handle routes change with checkout progress bar and unintentional web…
orzechdev Mar 25, 2020
bf7ffd7
Fill cart summary with data
orzechdev Mar 26, 2020
d9b6428
Add continue button to checkout
orzechdev Mar 26, 2020
43fe646
Add user adress selector to checkout
orzechdev Mar 26, 2020
658cf4d
Refactor address grid selector
orzechdev Mar 26, 2020
40e36a5
Add setShippingAddress to SDK
orzechdev Mar 26, 2020
cedc8bd
Simplify SDK jobs
orzechdev Mar 27, 2020
596641b
Simplify jobs state update in localstorage
orzechdev Mar 27, 2020
78a4565
Simplify job queues
orzechdev Mar 27, 2020
b76ff94
Implement setShippingAddress method in SDK
orzechdev Mar 27, 2020
fc96b19
Saving shipping address through new sdk
orzechdev Mar 27, 2020
8b95608
Add shipping methods selector to checkout
orzechdev Mar 30, 2020
34eb9c3
Add payment view to checkout
orzechdev Mar 30, 2020
5839661
Add review order view to checkout
orzechdev Mar 30, 2020
79f3fe9
Add shipping address form to checkout for not logged in user
orzechdev Mar 31, 2020
398df56
Add form to billing address
orzechdev Mar 31, 2020
68564ed
Add email to checkout address form
orzechdev Mar 31, 2020
26a00df
Clean SDK
orzechdev Mar 31, 2020
e08e50d
Add payment gateways list to payment checkout view
orzechdev Apr 1, 2020
8224ecf
Add payment gateway components
orzechdev Apr 1, 2020
1eb32d1
Create payment gateway list
orzechdev Apr 2, 2020
b8f5251
Add cypress ids to cart page
orzechdev Apr 2, 2020
155b311
Calculate summary prices in cart SDK
orzechdev Apr 2, 2020
50c0a30
Fix undefined price bug in cart SDK
orzechdev Apr 2, 2020
47ac641
Proceed button in cart view
orzechdev Apr 2, 2020
89b0303
Integrate new cart SDK with cart sidebar
orzechdev Apr 3, 2020
92bcd5e
Set new cart page as default
orzechdev Apr 3, 2020
9d15b22
Implement set billing and billingAsShipping methods in SDK
orzechdev Apr 3, 2020
fb295e4
Fix promo code checkout form
orzechdev Apr 3, 2020
8510f23
Implement dummy payment gateway UI
orzechdev Apr 3, 2020
5bf2329
Fix payment gateway selector
orzechdev Apr 3, 2020
3dc6a19
Implement create payment method in SDK
orzechdev Apr 4, 2020
12760bd
Add payment to SDK
orzechdev Apr 4, 2020
b697e13
Autoset payment method if already selected
orzechdev Apr 6, 2020
c9dd8cb
Implement set shipping method in SKD
orzechdev Apr 6, 2020
d776f97
Update review order page
orzechdev Apr 6, 2020
aa56ffa
Add useCheckoutStepState hook
orzechdev Apr 7, 2020
132f37b
Add routing to checkout
orzechdev Apr 7, 2020
33ea6dd
Support checkout routing redirections
orzechdev Apr 7, 2020
1d4a64b
Remove unused variables
orzechdev Apr 7, 2020
80af995
Add data-cy ids to checkout
orzechdev Apr 7, 2020
c5050cb
Fix errors and bugs
orzechdev Apr 7, 2020
6633ac6
Fix checkout prices bugs
orzechdev Apr 8, 2020
bdddf5b
Add complete checkout to SDK
orzechdev Apr 8, 2020
c2ebb98
Handle complete checkout
orzechdev Apr 9, 2020
9874b29
Create promoCode add and remove methods to SDK
orzechdev Apr 9, 2020
60db839
Merge branch 'master' into refactor/cart-view
orzechdev Apr 10, 2020
63737c9
Update promo code implementation in SDK
orzechdev Apr 10, 2020
06bb480
Implement promo code add/remove in checkout UI
orzechdev Apr 10, 2020
c6f87c7
Create Stripe gateway component
orzechdev Apr 10, 2020
8aef67b
Style Stripe Card Form
orzechdev Apr 14, 2020
ec6d471
Update payment method style
orzechdev Apr 14, 2020
915792d
Merge branch 'master' into refactor/cart-view
orzechdev Apr 14, 2020
edf875d
Fix card payment with Stripe
orzechdev Apr 14, 2020
e8b9a2a
Update cart and checkout data-cy ids
orzechdev Apr 15, 2020
2fba6c9
Refactor CheckoutPage
orzechdev Apr 15, 2020
c51e856
Handle checkout errors
orzechdev Apr 16, 2020
86ad976
Remove legacy checkout and cart code
orzechdev Apr 16, 2020
2c6d546
Update address selectors with radio tests
orzechdev Apr 16, 2020
f74fb14
Fixes of legacy to new checkout migration
orzechdev Apr 17, 2020
0be600a
Add missing unit tests
orzechdev Apr 17, 2020
f7073d3
Checkout error handling fixes
orzechdev Apr 20, 2020
1ff7634
Remove unused variables
orzechdev Apr 20, 2020
4880b62
Fix load checkout on start
orzechdev Apr 20, 2020
a51d02d
Fix load on start checkout
orzechdev Apr 20, 2020
9f90fc3
Refactor checkout code
orzechdev Apr 21, 2020
0eeeff6
Fix money props
orzechdev Apr 21, 2020
018012b
Support adding new address in checkout
orzechdev Apr 21, 2020
6aca77b
Add mobile cart summary style
orzechdev Apr 21, 2020
50bca06
Add Stripe gateway tests
orzechdev Apr 22, 2020
eca087b
Add missing unit tests
orzechdev Apr 23, 2020
b3fac36
Checkout UI fixes
orzechdev Apr 24, 2020
15bf8fe
Redirect from checkout to cart if no product added
orzechdev Apr 24, 2020
f68c2ae
Fix checkout step redirection
orzechdev Apr 24, 2020
fdb8dc1
Fix form error messages style
orzechdev Apr 24, 2020
bcdd0eb
Add max quantity error to product and cart pages
orzechdev Apr 24, 2020
1cf710e
Route to order details on checkout complete
orzechdev Apr 27, 2020
93becf6
Fix tests
orzechdev Apr 27, 2020
250f337
Merge branch 'master' into refactor/cart-view
orzechdev Apr 27, 2020
1239e04
Fix build errors
orzechdev Apr 27, 2020
2216ccc
FIX typescript typechecker errors while importing from non-strict mod…
orzechdev Apr 27, 2020
84ff13f
Update test snapshotsh
orzechdev Apr 27, 2020
a81a593
Fix wrong imports for storybook renders and snapshots
orzechdev Apr 27, 2020
af3c303
Fix cypress tests
orzechdev Apr 27, 2020
de3e992
Update test snapshots
orzechdev Apr 27, 2020
b82bbc1
Fix quantity input on product page
orzechdev Apr 27, 2020
d9e05c7
Fix utils function
orzechdev Apr 28, 2020
afcddb3
Refactor Stripe payment gateway components
orzechdev Apr 28, 2020
b4d9b75
Fix proceed to checkout button
orzechdev Apr 28, 2020
2ea5104
Fix component list keys in cart page
orzechdev Apr 28, 2020
facaabc
Fix checkout and cart loading state
orzechdev Apr 28, 2020
70bcde0
Add empty cart page
orzechdev Apr 28, 2020
5f20940
Migrate payment gateway names to ids
orzechdev Apr 28, 2020
6fb79fc
Update component and props descriptions
orzechdev Apr 28, 2020
1bd101d
Clean up thank you page
orzechdev Apr 28, 2020
b3c125b
Fix setIsTooMuch in quantity inputs
orzechdev Apr 28, 2020
5fa8419
Remove comments from code generator
orzechdev Apr 28, 2020
4be86bd
Refactor quantity logic
orzechdev Apr 28, 2020
1cf1fcf
Fix quantity refactor input
orzechdev Apr 28, 2020
55640fc
Support products which not requires shipping
orzechdev Apr 29, 2020
acf3ccc
Support promo code for products not requiring shipping
orzechdev Apr 29, 2020
8d5c3b4
Add missing error messages
orzechdev Apr 29, 2020
1edd027
Fix address addition modal
orzechdev Apr 29, 2020
543dfdc
Quantity input fixes and tests updates
orzechdev Apr 29, 2020
e112b8b
Fix job queue
orzechdev Apr 29, 2020
d46119f
Update interfaces
orzechdev Apr 29, 2020
5fcf6ac
Fix generate progress bar
orzechdev Apr 29, 2020
eb06b98
Fix missing braintree gateway
orzechdev Apr 30, 2020
82dbb6e
Fix missing payment gateways
orzechdev Apr 30, 2020
9241fd1
Fix checkout update fetch
orzechdev Apr 30, 2020
2a17d45
Add shipping and promo code to cart footer
orzechdev Apr 30, 2020
1cf7c8a
Update test snapshots
orzechdev Apr 30, 2020
10a5469
Jobs fixes
orzechdev May 4, 2020
8522577
Add timeouts to cypress
orzechdev May 4, 2020
62d083a
Add timeouts to cypress tests
orzechdev May 4, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .jest/config.json
Expand Up @@ -3,6 +3,7 @@
"setupFiles": ["<rootDir>/.jest/register-context.js"],
"//": "Please remove 'react-syntax-highlighter/dist/esm/(.*)' from moduleNameMapper when storybook is upgraded to v.6.0.0 or higher - there is a fix https://github.com/storybookjs/storybook/issues/9470",
"moduleNameMapper": {
"@temp/([^\\.]*)$": "<rootDir>/src/$1",
"@styles/([^\\.]*)$": "<rootDir>/src/@next/globalStyles/$1",
"@styles": "<rootDir>/src/@next/globalStyles/index.ts",
"@app/([^\\.]*)$": "<rootDir>/src/@next/$1",
Expand All @@ -15,6 +16,7 @@
"@components/organisms": "<rootDir>/src/@next/components/organisms/index.ts",
"@components/views": "<rootDir>/src/@next/components/views/index.ts",
"@components/containers": "<rootDir>/src/@next/components/containers/index.ts",
"@components/templates": "<rootDir>/src/@next/components/templates/index.ts",
"@types": "<rootDir>/src/@next/types/index.ts",
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/__mocks__/fileMock.js",
"react-syntax-highlighter/dist/esm/(.*)": "react-syntax-highlighter/dist/cjs/$1"
Expand Down
12 changes: 5 additions & 7 deletions .plop/templates/reactComponent.tsx.hbs
Expand Up @@ -7,18 +7,16 @@ import * as S from "./styles";
{{/if}}
import { IProps } from "./types";

export const {{> p_componentName}}: React.FC<IProps> = ({
const {{> p_componentName}}: React.FC<IProps> = ({
// destructure props here if needed
}: IProps) => {
return (
{{#if componentHasStyles}}
<S.Wrapper>
{/* --- here --- */}
</S.Wrapper>
<S.Wrapper></S.Wrapper>
{{else}}
<>
{/* --- here --- */}
</>
<></>
{{/if}}
)
};

export { {{> p_componentName}} }
1 change: 0 additions & 1 deletion .plop/templates/reactComponentTest.tsx.hbs
Expand Up @@ -7,7 +7,6 @@ import React from "react";
import { {{> p_componentName}} } from ".";

describe("<{{> p_componentName}} />", () => {
// Example test
it("exists", () => {
const wrapper = shallow(<{{> p_componentName}} />);

Expand Down
7 changes: 4 additions & 3 deletions babel.config.js
Expand Up @@ -2,11 +2,12 @@ module.exports = {
presets: [
"@babel/preset-env",
"@babel/preset-react",
"@babel/preset-typescript"
"@babel/preset-typescript",
],
plugins: [
"@babel/plugin-syntax-dynamic-import",
"transform-class-properties",
"@babel/transform-runtime"
]
"@babel/transform-runtime",
"@babel/plugin-proposal-optional-chaining",
],
};
2 changes: 1 addition & 1 deletion cypress/integration/category/filters_and_sort_bar.js
Expand Up @@ -78,8 +78,8 @@ describe("Category view - filtering and sorting", () => {
.first()
.invoke("text")
.then(firstTileText => {
cy.get("[data-cy=dropdown-select-input]").click();
cy.get("[data-cy=dropdown-select]")
.click()
.contains("Name Decreasing")
.click()
.wait(10000);
Expand Down
3 changes: 2 additions & 1 deletion cypress/integration/category/product_list.js
Expand Up @@ -24,7 +24,8 @@ describe("Product list view", () => {
},
});

cy.get("[data-cy=main-menu__item]")
cy.wait(5000)
.get("[data-cy=main-menu__item]")
.first()
.click();
});
Expand Down
1 change: 1 addition & 0 deletions cypress/support/account/index.js
@@ -1,5 +1,6 @@
const openAccountMenu = testId => {
return cy
.wait(10000)
.findByTestId("user-btn", { timeout: 15000 })
.trigger("mouseover")
.findByTestId(testId)
Expand Down
1 change: 1 addition & 0 deletions cypress/support/category/index.js
Expand Up @@ -7,6 +7,7 @@ const openFilterSidebar = () => {

const openCategory = (index = 0) => {
return cy
.wait(5000)
.get("[data-cy=main-menu__item]")
.eq(index)
.click();
Expand Down
1 change: 1 addition & 0 deletions cypress/support/login/index.js
Expand Up @@ -38,6 +38,7 @@ Cypress.Commands.add("registerUser", user =>
Cypress.Commands.add("loginUser", user => loginOrRegisterUser("login", user));
Cypress.Commands.add("logoutUser", () =>
cy
.wait(10000)
.findByTestId("user-btn", { timeout: 3000 })
.trigger("mouseover")
.findByTestId("logout-link")
Expand Down