diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e3939bd03..867026bb7b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ All notable, unreleased changes to this project will be documented in this file. - Add Cypress tags to all of the buttons (also speed up tests) - #718 by @krzysztofwolski - Automatically choose variant attributes from url in ProductVariantPicker - #708 by @AlicjaSzu - Use sdk as a standalone package - #724 by @dominik-zeglen +- Use auth api from sdk - #727 by @orzechdev - Fix CartRow tests - #749 by @dominik-zeglen - Add prettier to precommit - #766 by @dominik-zeglen - Do not use prettier on generated files - #773 by @dominik-zeglen diff --git a/cypress/elements/saleor-account/login-selectors.js b/cypress/elements/saleor-account/login-selectors.js index d32eb27528..87752ba0c6 100644 --- a/cypress/elements/saleor-account/login-selectors.js +++ b/cypress/elements/saleor-account/login-selectors.js @@ -3,5 +3,5 @@ export const LOGIN_SELECTORS = { emailAddressInput: "[data-test=loginOverlay] input[name='email']", emailPasswordInput: "[data-test=loginOverlay] input[name='password']", signInButton: "[data-test=submit]", - warningCredentialMessage: ".form-error", + warningCredentialMessage: ".input__error", }; diff --git a/cypress/support/login/index.js b/cypress/support/login/index.js index b3a3795f69..75db810ae3 100644 --- a/cypress/support/login/index.js +++ b/cypress/support/login/index.js @@ -1,11 +1,11 @@ import { userBuilder } from "../generate"; -const mainMenuButton = "[data-test=desktopMenuLoginOverlayLink]" -const allertPopupMessage = "[data-test=alert]" -const emailAddressInput = "[data-test=loginOverlay] input[name='email']" -const emailPasswordInput = "[data-test=loginOverlay] input[name='password']" -const signInButton = "[data-test=submit]" -const loggedInMainMenuButton = "[data-test=userButton]" -const logOutButton = "[data-test=desktopMenuLogoutLink]" +const mainMenuButton = "[data-test=desktopMenuLoginOverlayLink]"; +const allertPopupMessage = "[data-test=alert]"; +const emailAddressInput = "[data-test=loginOverlay] input[name='email']"; +const emailPasswordInput = "[data-test=loginOverlay] input[name='password']"; +const signInButton = "[data-test=submit]"; +const loggedInMainMenuButton = "[data-test=userButton]"; +const logOutButton = "[data-test=desktopMenuLogoutLink]"; const createUser = () => { const user = userBuilder(); @@ -29,8 +29,8 @@ Cypress.Commands.add("loginUser", (email, password) => { .type(password) .get(signInButton) .click() - .get(allertPopupMessage) - .should("contain", "You are now logged in", {timeoout: 20000}); + .get(allertPopupMessage, { timeout: 3000 }) + .should("contain", "You are now logged in", { timeoout: 20000 }); }); Cypress.Commands.add("logoutUser", () => @@ -39,6 +39,6 @@ Cypress.Commands.add("logoutUser", () => .click() .get(logOutButton) .click() - .get(allertPopupMessage) - .should("contain", "You are now logged out", {timeoout: 20000}) + .get(allertPopupMessage, { timeout: 3000 }) + .should("contain", "You are now logged out", { timeoout: 20000 }) ); diff --git a/package-lock.json b/package-lock.json index fb1eb2fc42..bb4923cad4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5702,8 +5702,8 @@ } }, "@saleor/sdk": { - "version": "github:mirumee/saleor-sdk#737c63411d80119dfc60fc7dd35a997c51e07d89", - "from": "github:mirumee/saleor-sdk#737c634", + "version": "github:mirumee/saleor-sdk#a3c0a1fafa149d882e46656accf0384969e3c8fd", + "from": "github:mirumee/saleor-sdk#a3c0a1f", "requires": { "@pollyjs/adapter-node-http": "^4.3.0", "@pollyjs/core": "^4.3.0", @@ -5711,8 +5711,10 @@ "@types/pollyjs__adapter-node-http": "^2.0.0", "@types/pollyjs__persister-fs": "^2.0.0", "@types/setup-polly-jest": "^0.5.0", + "@types/webappsec-credential-management": "^0.5.1", "apollo-cache": "^1.3.5", "apollo-cache-inmemory": "^1.6.6", + "apollo-cache-persist": "^0.1.1", "apollo-link-batch-http": "^1.2.14", "apollo-link-context": "^1.0.20", "apollo-link-error": "^1.1.13", @@ -12173,6 +12175,11 @@ "integrity": "sha512-awrJu8yML4E/xTwr2EMatC+HBnHGoDxc2+ImA9QyeUELI1S7dOCIZcyjki1rkwoA8P2D2NVgLAJLjnclkdLtAw==", "dev": true }, + "@types/webappsec-credential-management": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@types/webappsec-credential-management/-/webappsec-credential-management-0.5.1.tgz", + "integrity": "sha512-ZIl4fCJm3mo0jzivFnxhA4qYEY/HicVPxLbcqQTZ3JjnhEFJwYAEPEZft7AJo/MVxHU4mFdAauX+jo+a4m1Qkg==" + }, "@types/webpack": { "version": "4.41.2", "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.2.tgz", @@ -16251,9 +16258,9 @@ "dev": true }, "bowser": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.9.0.tgz", - "integrity": "sha512-2ld76tuLBNFekRgmJfT2+3j5MIrP6bFict8WAIT3beq+srz1gcKNAdNKMqHqauQt63NmAa88HfP1/Ypa9Er3HA==" + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.10.0.tgz", + "integrity": "sha512-OCsqTQboTEWWsUjcp5jLSw2ZHsBiv2C105iFs61bOT0Hnwi9p7/uuXdd7mu8RYcarREfdjNN+8LitmEHATsLYg==" }, "boxen": { "version": "4.2.0", @@ -44574,7 +44581,7 @@ }, "wrap-ansi": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { "string-width": "^1.0.1", @@ -44597,7 +44604,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { "ansi-regex": "^2.0.0" diff --git a/package.json b/package.json index 1ec46fee47..f9aa082f66 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "dependencies": { "@babel/runtime": "^7.5.5", "@lhci/cli": "^0.4.1", - "@saleor/sdk": "github:mirumee/saleor-sdk#737c634", + "@saleor/sdk": "github:mirumee/saleor-sdk#a3c0a1f", "@sentry/apm": "^5.15.5", "@sentry/browser": "^5.15.5", "@stripe/react-stripe-js": "^1.1.2", diff --git a/src/@next/components/molecules/AccountTabTiles/AccountTile.tsx b/src/@next/components/molecules/AccountTabTiles/AccountTile.tsx index 6b8fadbc3f..f1be5544b0 100644 --- a/src/@next/components/molecules/AccountTabTiles/AccountTile.tsx +++ b/src/@next/components/molecules/AccountTabTiles/AccountTile.tsx @@ -2,7 +2,7 @@ import React from "react"; import { FormattedMessage, useIntl } from "react-intl"; import { commonMessages } from "@temp/intl"; -import { useAccountUpdate, useUserDetails } from "@saleor/sdk"; +import { useAccountUpdate, useAuth } from "@saleor/sdk"; import { Attribute, IconButton, Tile } from "@components/atoms"; @@ -12,8 +12,8 @@ import * as S from "./styles"; export const AccountTile: React.FC = () => { const [isEditing, setIsEditing] = React.useState(false); const [setAccountUpdate, { data, error }] = useAccountUpdate(); - const { data: user } = useUserDetails(); const intl = useIntl(); + const { user } = useAuth(); React.useEffect(() => { if (data && !error) { diff --git a/src/@next/components/molecules/AccountTabTiles/test.tsx b/src/@next/components/molecules/AccountTabTiles/test.tsx index ca79778be3..6929703e47 100644 --- a/src/@next/components/molecules/AccountTabTiles/test.tsx +++ b/src/@next/components/molecules/AccountTabTiles/test.tsx @@ -10,8 +10,8 @@ import { PasswordTile } from "./PasswordTile"; jest.mock("@saleor/sdk", () => ({ useAccountUpdate: () => [jest.fn(), { data: null, error: null }], + useAuth: () => ({ user: { firstName: "John", lastName: "Doe" } }), usePasswordChange: () => [jest.fn(), { data: null, error: null }], - useUserDetails: () => ({ data: { firstName: "John", lastName: "Doe" } }), })); describe("", () => { diff --git a/src/@next/pages/CartPage/CartPage.tsx b/src/@next/pages/CartPage/CartPage.tsx index 1ebb9cda16..170d6ea697 100755 --- a/src/@next/pages/CartPage/CartPage.tsx +++ b/src/@next/pages/CartPage/CartPage.tsx @@ -1,4 +1,4 @@ -import { useCart, useCheckout, useUserDetails } from "@saleor/sdk"; +import { useAuth, useCart, useCheckout } from "@saleor/sdk"; import { History } from "history"; import React from "react"; import { FormattedMessage } from "react-intl"; @@ -31,7 +31,7 @@ const getShoppingButton = (history: History) => ( ); -const getCheckoutButton = (history: History, user: UserDetails_me | null) => ( +const getCheckoutButton = (history: History, user?: UserDetails_me | null) => (