First steps towards the SAS partnership
* otp flow now pretends to do the linking
* Update LinkAccountForm header
* Update redirect times
* Clean up comments
* Set maxAge on sas cookies
* make all SAS routes protected
* Merge remote-tracking branch 'refs/remotes/origin/feature/sas-login' into feature/sas-login
* Require auth for sas link flow
* Fix resend otp
* Add error support to OneTimePasswordForm
* Add Sentry to SAS error boundary
* Move SAS_REQUEST_OTP_STATE_STORAGE_COOKIE_NAME
* Add missing translations
* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/sas-login
* Merge branch 'feature/sas-login' of bitbucket.org:scandic-swap/web into feature/sas-login
* Add TooManyCodesError component
* Refactor GenericError to support new errors
* Add FailedAttemptsError
* remove removed component <VWOScript/>
* Merge branch 'feature/sas-login' of bitbucket.org:scandic-swap/web into feature/sas-login
* remove local cookie-bot reference
* Fix sas campaign logo scaling
* feature toggle the SAS stuff
* Merge branch 'feature/sas-login' of bitbucket.org:scandic-swap/web into feature/sas-login
* fix: use env vars for SAS endpoints
Approved-by: Linus Flood
These are now defined in Netlify UI for dedicated environments (test, stage, production):
AUTH_URL
NEXTAUTH_URL
PUBLIC_URL
Code now falls back to incoming request host. Mainly used for
deployment previews which do not have Akamai in front, meaning
we do not need the above workaround as incoming request host
matches the actual public facing host. When Akamai is in front,
we lose the public facing host in Netlify's routing layer as they
internally use `x-forwarded-for` and we can't claim it for our usage.
Feat/SW-196 design fixes
* feat(SW-196): Updated copy My credit cards -> My payment cards
* fix: update design system version
* feat(SW-196): Update Header component to use Preamble instead of Subtitle
* feat(SW-196): Minor design fixes
Approved-by: Christel Westerberg
Feat/SW-104 add card
* feat: add api endpoints for adding and removing credit card
* feat(SW-104): Added Sonner toast lib
* feat(SW-104): Add route handlers for add card flow
* feat(SW-104): Added link to route handler and trigger toast when query params from callback is set
* feat(SW-104): Added translations for add card success toast
* feat(SW-104): Refactored to use client request for initiate save card
* fix(SW-104): Return proper status codes when initiating save card fails
* fix(SW-104): remove delete card endpoint because it was added in SW-245
* fix(SW-104): remove console.log
* fix(SW-104): Use api.post for save card request
* fix(SW-104): move function declaration above export
* fix(SW-104): handle response of save card and use Lang enum
* fix(SW-104): added comment for why setTimeout is needed for toast and also removed lang prop
* fix(SW-104): added type for AddCreditCardButton props
* feat: add toasts
* fix(SW-104): start using toasts from ToastHandler and fix problem with duplicate toasts
* fix(SW-104): remove unnecessary wrapping div
Approved-by: Michael Zetterberg