339 Commits

Author SHA1 Message Date
Matilda Haneling
e30ce9ac30 Merged in fix/book-769-booking-widget-ui-bugs (pull request #3524)
Fix/book 769 booking widget ui bugs

* fixed text in serachList not wrapping properly

* fixed spacing on mobile searchList

* fixed close button icon color

* fix for issues with fixed vs sticky elements on scroll lock

Approved-by: Linus Flood
2026-02-02 10:26:48 +00:00
Matilda Landström
61c024dbda Merged in fix/correct-policies-link (pull request #3522)
Fix/correct policies link

* fix: add correct link

* fix: move route


Approved-by: Emma Zettervall
2026-02-02 09:22:08 +00:00
Linus Flood
5fc93472f4 Merged in feat/rework-contentstack (pull request #3493)
Feat(SW-3708): refactor contentstack fetching (removing all refs) and cache invalidation

* Remove all REFS

* Revalidate correct language

* PR fixes

* PR fixes

* Throw when errors from contentstack api


Approved-by: Joakim Jäderberg
2026-01-27 12:38:36 +00:00
Erik Tiekstra
4de24e9f2a feat(BOOK-391): Added theme and logos for Bassin Seven
* chore: Updated border-radius variables after import change

Approved-by: Linus Flood
2026-01-22 07:03:25 +00:00
Erik Tiekstra
8e08af718c feat(BOOK-743): Replaced deprecated Button component
Approved-by: Bianca Widstam
2026-01-21 09:38:38 +00:00
Erik Tiekstra
8a143a2916 chore: Moved Breadcrumbs to design system and added stories
Approved-by: Bianca Widstam
2026-01-21 07:19:19 +00:00
Linus Flood
7639daf792 Merged in feat/3614-basicInfo (pull request #3427)
feat(SW-3614): use new loyalty prop in basicProfile

* feat(SW-3614): use new loyalty prop in basicProfile

* PR fixes


Approved-by: Matilda Landström
2026-01-15 14:02:28 +00:00
Joakim Jäderberg
99537b13e8 Merged in chore/add-error-details-for-sentry (pull request #3378)
Include more details when throwing errors for debugging in Sentry

* WIP throw errors with more details for debugging in Sentry

* Fix throwing response-data

* Clearer message when a response fails

* Add message to errors

* better typings

* .

* Try to send profileID and membershipNumber to Sentry when we fail to parse the apiResponse

* rename notFound -> notFoundError

* Merge branch 'master' of bitbucket.org:scandic-swap/web into chore/add-error-details-for-sentry


Approved-by: Linus Flood
2026-01-12 09:01:44 +00:00
Bianca Widstam
68c1b3dc50 Merged in chore/BOOK-708-replace-title-component (pull request #3414)
Chore/BOOK-708 replace title component

* chore(BOOK-708): replace title with typography

* chore(BOOK-708): replace title with typography

* chore(BOOK-708): remove Title from package.json


Approved-by: Linus Flood
Approved-by: Anton Gunnarsson
2026-01-12 07:54:59 +00:00
Joakim Jäderberg
36ddbc4435 Merged in chore/add-release-version-meta-tag (pull request #3399)
Add release version meta tag + preview environment

* include release version in meta tag

do polyfills in one place

* fix: add preview as a named sentry environment


Approved-by: Linus Flood
2026-01-08 15:05:43 +00:00
Erik Tiekstra
3f632e6031 Merged in fix/BOOK-293-button-variants (pull request #3371)
fix(BOOK-293): changed variants and props on IconButton component

* fix(BOOK-293): changed variants and props on IconButton component

* fix(BOOK-293): inherit color for icon


Approved-by: Bianca Widstam
Approved-by: Christel Westerberg
2025-12-19 12:32:52 +00:00
Bianca Widstam
2c8b920dd8 Merged in fix/BOOK-673-unpublish-page (pull request #3370)
fix(BOOK-673): clear language when unpublishing a page

* fix(BOOK-673): clear language when unpublishing a page


Approved-by: Linus Flood
2025-12-18 08:54:06 +00:00
Anton Gunnarsson
8a969f3908 Merged in fix/book-682-select-hotel-filter-jank (pull request #3362)
fix(BOOK-682): Select Hotel jank

* Remove ChildrenWrapper


Approved-by: Linus Flood
2025-12-17 09:14:06 +00:00
Linus Flood
5c8e205c03 Merged in feat/book-606-logout-redirect (pull request #3353)
feat(BOOK-606): redirect to /lang when signing out instead of /en

* feat(BOOK-606): redirect to /lang when signing out instead of /en


Approved-by: Joakim Jäderberg
Approved-by: Matilda Landström
2025-12-17 08:04:01 +00:00
Anton Gunnarsson
e5149846e5 Merged in chore/upgrade-to-next16 (pull request #3305)
chore(SW-3665): Upgrade to Next 16

* Upgrade partner-sas

* Upgrade scandic-web to next 16

* Update peerDep versions

* Fix revalidateTag

* Remove comment

* Merge branch 'master' into chore/upgrade-to-next16

* Update netlify adapter

* Build with webpack instead of turbopack

* Revert from proxy to middleware

* Merge branch 'master' into chore/upgrade-to-next16

* Revert proxy type

* Fix react types versions

* 16.0.9

* Bump to 16.0.10


Approved-by: Linus Flood
2025-12-12 09:17:15 +00:00
Erik Tiekstra
f06e466827 Feat/BOOK-240 hero video
Approved-by: Chuma Mcphoy (We Ahead)
Approved-by: Christel Westerberg
2025-12-11 08:35:27 +00:00
Joakim Jäderberg
8b94540d19 Merged in chore/redirect-counter (pull request #3302)
Counter name is now searchable and add counter for redirects

* refactor: createCounter() only takes one argument, the name of the counter. Makes it easier to search for

* feat: add counter when we do a redirect from redirect-service


Approved-by: Linus Flood
2025-12-08 10:24:05 +00:00
Joakim Jäderberg
de4b3c1c3c Merged in chore/eslint-curly-braces (pull request #3304)
Chore/eslint curly braces

* Add eslint rule for curly braces

* run eslint --fix for all files


Approved-by: Linus Flood
2025-12-08 07:56:21 +00:00
Matilda Landström
5986828580 Merged in feat/LOY-430-reward-nights (pull request #3295)
Feat/LOY-430 reward nights

* chore(LOY-430): add reward nights request and dynamic content

* chore(LOY-430): fix Reward Night component

* Refactor: use existing endpoint and add rewardNight data to that response instead


Approved-by: Linus Flood
2025-12-08 07:44:58 +00:00
Linus Flood
3bd23bf56e Merged in feat/book-595-gla-tracking-fix (pull request #3294)
feat(BOOK-595): fixed correct tracking values and enter details pageview tracking

* feat(BOOK-595): fixed correct tracking values and enter details pageview tracking

* Fixed on SAS as well


Approved-by: Joakim Jäderberg
2025-12-05 08:01:48 +00:00
Chuma Mcphoy (We Ahead)
2b9bc8c3ce Merged in feat/LOY-497-Flag-Profiling-Consent (pull request #3292)
refactor(LOY-497): hide profiling consent behind feature flag

* refactor(LOY-497): hide profiling consent behind feature flag

* chore(LOY-497): up to date consent readme


Approved-by: Matilda Landström
2025-12-05 05:47:11 +00:00
Linus Flood
b1ccabb0b6 Merged in fix/redis-delete (pull request #3271)
feat(redis): include git hash when deleting without fuzzy

* feat(redis): include git hash when deleting without fuzzy

* Refactor


Approved-by: Joakim Jäderberg
2025-12-02 07:02:52 +00:00
Joakim Jäderberg
3ec78b4fab refactor: update error handling and logging for improved error details display 2025-12-01 13:00:44 +01:00
Joakim Jäderberg
f6a807758e Merged in chore/remove-enrichHotel-call (pull request #3244)
Chore/remove enrichHotel call

* chore: remove enrichHotel api call

* include cityId when errors happen

* remove unused funciton and cleanup code

* tests no longer expect us to have called a function that is not used

* remove commented code


Approved-by: Linus Flood
2025-12-01 07:49:59 +00:00
Linus Flood
9bcb9e8232 Merged in feat/book-623-bw-lang (pull request #3248)
feat(BOOK-623): pass correct lang to booking widget and fix some more error logs

* feat(BOOK-623): pass correct lang to booking widget and fix some more error logs


Approved-by: Joakim Jäderberg
2025-11-28 08:59:39 +00:00
Linus Flood
a2c517db2c Merged in fix/hotel-branding-env (pull request #3239)
Fix/hotel branding env

* feat(env): removed hotel branding env variable

* .


Approved-by: Erik Tiekstra
Approved-by: Anton Gunnarsson
Approved-by: Matilda Landström
2025-11-27 13:08:42 +00:00
Joakim Jäderberg
4174d43e16 Merged in fix/logging-warmup-background (pull request #3232)
Fix/logging warmup background

* fix: logging in background functions

* fix logging

* fix logging

* fix logging


Approved-by: Linus Flood
2025-11-26 12:21:42 +00:00
Matilda Landström
26f3b5bdd0 Merged in feat/LOY-484-consent-alert (pull request #3184)
feat(LOY-484): Change toast to alert for Profiling Consent

* feat(LOY-484): change toast to alert using context

* refactor(LOY-484): remove uneccesary code

* chore(LOY-484): small UI fixes


Approved-by: Chuma Mcphoy (We Ahead)
2025-11-26 12:13:04 +00:00
Erik Tiekstra
e84f2f55ac fix(BOOK-558): Fixed issue where city is not prefilled inside the booking widget
Approved-by: Matilda Landström
2025-11-25 13:29:02 +00:00
Christel Westerberg
2ae3fcb609 Merged in fix/STAY-17-find-my-booking-errors (pull request #3181)
fix: improve error messages in find my booking flow

* fix: improve error messages in find my booking flow


Approved-by: Linus Flood
Approved-by: Erik Tiekstra
2025-11-24 14:46:39 +00:00
Joakim Jäderberg
8ed16a0119 Merged in feat/redis-fix (pull request #3207)
Feat/redis fix

* feat(redis): delete multiple keys in one partition scan

* fix(BOOK-603): make it possible to do multiple deletes in redis at once using one partition scan


Approved-by: Linus Flood
2025-11-24 10:17:35 +00:00
Linus Flood
fd6909add5 Merged in feat/book-595-gla-tracking (pull request #3187)
feat(BOOK-595): add pageview tracking to gla-callback and get-booking pages

* feat(BOOK-595): add pageview tracking to gla-callback and get-booking pages


Approved-by: Bianca Widstam
2025-11-20 13:50:40 +00:00
Joakim Jäderberg
0e66f1b6de Merged in fix/warmup-not-throwing (pull request #3179)
fix: warmup threw error

* fix: warmup threw error

* .


Approved-by: Linus Flood
2025-11-19 13:49:44 +00:00
Linus Flood
93c481fea8 Merged in feat/loy-403-seamless (pull request #3164)
feat(LOY-403): removed seamless login/logout

* feat(LOY-403): removed seamless login/logout


Approved-by: Joakim Jäderberg
2025-11-17 09:58:15 +00:00
Chuma Mcphoy (We Ahead)
494bfe10f3 Merged in feat/profile-consent-feature-branch (pull request #2900)
feat(LOY-268): Feature branch for profiling consent work

* feat: Add feature branch for profile and consent work

* Merged in feat/LOY-268-profile-consent-banner-comp (pull request #2908)

Feat/LOY-358 profile consent banner component

* feat: Add feature branch for profile and consent work

* feat(LOY-268): create banner

* feat(LOY-268): Create personalization banner component


Approved-by: Chuma Mcphoy (We Ahead)

* feat(LOY-268): create banner

* feat(LOY-268): Create personalization banner component

* Merged in feat/profile-consent-contentstack (pull request #2921)

Feat(LOY-389): Profile consent in Contentstack

* feat(LOY-268): create banner

* feat(LOY-268): Create personalization banner component

* chore(LOY-348): add profiling consent as CS entry

* chore(LOY-348): add banner as dynamic content

Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-347-Profile-consent-modal-phase-1 (pull request #2901)

Feat(LOY-347): Profiling Consent Modal (phase 1)

* feat(LOY-347): Profile Consent Modal base functionality

* feat(LOY-347): Add Icon

* feat(LOY-347): Add Benefit Cards to Profile consent modal

* feat(LOY-347): Add accordion to profile consent modal

* fix(LOY-347): scroll behaviour

* Fix(LOY-347): fade in/out animations of profile consent modal

* fix(LOY-347): White Ellipsis Around Icons

* feat(LOY-347): Implement ability to open modal from banner

* fix(LOY-347): minor fixes

* fix(LOY-347): replace old spa icon

* fix(LOY-347): re-add env vars

* fix(LOY-347): File renaming and cleanup

* chore(LOY-347): Update readme

* fix(LOY-347): use correct space var

* fix(LOY-347): Add TODO comment for adding link to accordion

Approved-by: Matilda Landström

* Merged in fix/LOY-386-profiling-consent-modal-contentstack (pull request #2930)

Fix(LOY-386): profiling consent modal contentstack

* feat(LOY-347): Profile Consent Modal base functionality

* feat(LOY-347): Add Icon

* feat(LOY-347): Add Benefit Cards to Profile consent modal

* feat(LOY-347): Add accordion to profile consent modal

* fix(LOY-347): scroll behaviour

* Fix(LOY-347): fade in/out animations of profile consent modal

* fix(LOY-347): White Ellipsis Around Icons

* feat(LOY-347): Implement ability to open modal from banner

* fix(LOY-347): minor fixes

* fix(LOY-347): replace old spa icon

* fix(LOY-347): re-add env vars

* fix(LOY-347): File renaming and cleanup

* fix(LOY-386): Use contentstack content for profile consent modal

* fix(LOY-386): beneift cards schema transform

* chore(LOY-386): remove usememo

* fix(LOY-386): fix modalcontent check

* fix(LOY-386): remove uneeded vars


Approved-by: Matilda Landström

* Merged in feat/LOY-412-profiling-consent-in-signup (pull request #2976)

Feat(LOY-412): profiling consent in signup

* feat(LOY-268): create banner

* feat(LOY-268): Create personalization banner component

* Merged in feat/profile-consent-contentstack (pull request #2921)

Feat(LOY-389): Profile consent in Contentstack

* feat(LOY-268): create banner

* feat(LOY-268): Create personalization banner component

* chore(LOY-348): add profiling consent as CS entry

* chore(LOY-348): add banner as dynamic content

Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-347-Profile-consent-modal-phase-1 (pull request #2901)

Feat(LOY-347): Profiling Consent Modal (phase 1)

* feat(LOY-347): Profile Consent Modal base functionality

* feat(LOY-347): Add Icon

* feat(LOY-347): Add Benefit Cards to Profile consent modal

* feat(LOY-347): Add accordion to profile consent modal

* fix(LOY-347): scroll behaviour

* Fix(LOY-347): fade in/out animations of profile consent modal

* fix(LOY-347): White Ellipsis Around Ico…
* Merged in fix/lokalise-ids (pull request #3013)

fix: add ids to translations in Profiling Consent

* fix: add ids to translations


Approved-by: Erik Tiekstra
Approved-by: Chuma Mcphoy (We Ahead)

* Merged in LOY-436-my-pages-profiling-consent (pull request #3011)

LOY-436: Profiling Consent on My Profile, no api

Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-418-profiling-consent-ui-text-update (pull request #3080)

Feat/LOY-418: Profiling consent ui and text update

* chore(LOY-418): update /consent buttons

* chore(LOY-418): update legal texts


Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-268-profiling-consent-api (pull request #3088)

Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-413-Signup-API-Profiling-Consent (pull request #3105)

Feat/LOY-413 Signup API Profiling Consent

* feat(LOY-413): signup profiling consent

* chore(LOY-413): remove todo

* fix(LOY-413): only pass in profilingConsent if true

* fix(LOY-413): proper spread of profilingConsent in signup input


Approved-by: Christel Westerberg

* Merged in fix/LOY-413-use-v2-for-signup-call (pull request #3112)

fix(LOY-413): use v2 endpoint for profile POST in signup

* fix(LOY-413): use v2 endpoint for profile POST in signup


Approved-by: Erik Tiekstra

* Merged in feat/LOY-268-profiling-consent-improvements (pull request #3094)

Feat/LOY-268: Profiling consent improvements

* Merged in feat/profile-consent-contentstack (pull request #2921)

Feat(LOY-389): Profile consent in Contentstack

* feat(LOY-268): create banner

* feat(LOY-268): Create personalization banner component

* chore(LOY-348): add profiling consent as CS entry

* chore(LOY-348): add banner as dynamic content

Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-347-Profile-consent-modal-phase-1 (pull request #2901)

Feat(LOY-347): Profiling Consent Modal (phase 1)

* feat(LOY-347): Profile Consent Modal base functionality

* feat(LOY-347): Add Icon

* feat(LOY-347): Add Benefit Cards to Profile consent modal

* feat(LOY-347): Add accordion to profile consent modal

* fix(LOY-347): scroll behaviour

* Fix(LOY-347): fade in/out animations of profile consent modal

* fix(LOY-347): White Ellipsis Around Icons

* feat(LOY-347): Implement ability to open modal from banner

* fix(LOY-347): min…
* Merged in fix/update-graphql (pull request #3130)

fix: update graphql

* fix: update graphql


Approved-by: Chuma Mcphoy (We Ahead)

* Merged in feat/LOY-414-prof-consent-tracking (pull request #3127)

Feat/LOY-414 profile consent tracking + credit card ui update

* chore(LOY-414): create track link function

* chore(LOY-414): add cta tracking

* chore(LOY-414): add profileConsent to userInfo datalayer

* chore(LOY-414): update credit card ui

* chore(LOY-414): update tracking specs

* chore(LOY-414): add pageView tracking to modal

Approved-by: Chuma Mcphoy (We Ahead)

* fix: remove old flag

* Merged in fix/LOY-268-prof-consent-button-fix (pull request #3162)

fix(LOY-268): add button as link

* fix(LOY-268): add button as link


Approved-by: Chuma Mcphoy (We Ahead)


Approved-by: Matilda Landström
2025-11-14 13:28:56 +00:00
Joakim Jäderberg
f8dee7eb7f Merged in chore/watermark-environments (pull request #3159)
feat: display environment watermark

* feat: display environment watermark

* Merge branch 'master' of bitbucket.org:scandic-swap/web into chore/watermark-environments

* remove unused function


Approved-by: Linus Flood
2025-11-14 12:27:30 +00:00
Erik Tiekstra
b0f2276b0b fix(BOOK-559): Using same ContactInformation component on hotel pages and booking flow inside the hotel details sidepeek
Approved-by: Bianca Widstam
2025-11-13 14:32:17 +00:00
Joakim Jäderberg
f6b06556f6 Merged in chore/typegen-nextjs-routes (pull request #3147)
Make check-types dependent on next typegen

* add typegen as a prestep


Approved-by: Anton Gunnarsson
2025-11-13 09:28:07 +00:00
Linus Flood
4b3dbadf24 Merged in feat/sw-3610-basicProfile (pull request #3144)
Feat(SW-3610): basic profile endpoint on protected layouts

* Basic profile in protected layouts

* .


Approved-by: Anton Gunnarsson
2025-11-13 07:35:16 +00:00
Joakim Jäderberg
dc53ab9245 Merged in chore/upgrade-next (pull request #3124)
Upgrade next@15.5.6

* chore: upgrade next@15.5.6

* chore: upgrade turborepo@2.6.1

* fix typings for scandic-web

* fix: set correct type for pages

* cleanup

* fix more route.ts typing issues

* Merge branch 'master' of bitbucket.org:scandic-swap/web into chore/upgrade-next

* explicitly import the types


Approved-by: Linus Flood
2025-11-13 07:33:56 +00:00
Erik Tiekstra
88644597df chore: Replaced deprecated Spacing variables with current values
Approved-by: Matilda Landström
2025-11-12 12:56:22 +00:00
Linus Flood
ecb25cf6cd Merged in feat/sw-3604-webviews (pull request #3123)
feat(SW-3604): wrap mystay with bookingflowconfig

* feat(SW-3604): wrap mystay with bookingflowconfig


Approved-by: Joakim Jäderberg
2025-11-11 09:37:54 +00:00
Joakim Jäderberg
0e2ed17e3b Merged in fix/wrap-webviews-with-sessionprovider (pull request #3111)
Wrap webviews with SessionProvider

* wrap webviews with sessionprovider


Approved-by: Linus Flood
2025-11-10 12:23:36 +00:00
Erik Tiekstra
cab85f3ffd fix(BOOK-498): removed and changed z-index values to have booking widget overlapping correctly on mobile.
Approved-by: Bianca Widstam
Approved-by: Hrishikesh Vaipurkar
2025-11-07 13:03:25 +00:00
Hrishikesh Vaipurkar
28ae796b8c Merged in feat/BOOK-434-users-should-redirect-to- (pull request #3087)
* feat(BOOK-434): Redirect user to city/country page if wrong filter url
* feat(BOOK-434): Handled map view

Approved-by: Erik Tiekstra
2025-11-07 10:30:00 +00:00
Erik Tiekstra
0e11a772f1 feat(BOOK-450): Adjust Scandic logo in header when on a themed hotel page
Approved-by: Chuma Mcphoy (We Ahead)
2025-11-05 10:29:24 +00:00
Erik Tiekstra
3a38e99a71 Feat/BOOK-63 hotel subpages branding
* feat(BOOK-63): Replaced css variables and components to apply hotel branding on subpages
* feat(BOOK-63): Replaced css variables and components to apply hotel branding on hotel page map view

Approved-by: Christel Westerberg
Approved-by: Matilda Landström
2025-11-05 08:30:55 +00:00
Erik Tiekstra
4491d1de8e feat(BOOK-62): Added new InfoCard component and using that on hotel pages
Approved-by: Bianca Widstam
2025-11-04 07:39:33 +00:00
Joakim Jäderberg
b8d887f82d Merged in chore/move-destinations-api-endpoint (pull request #3058)
chore: move /api/destinations/[country]/[?city] -> /api/web/destinations/[country]/[?city]

* chore: move /api/destinations/[country]/[?city] -> /api/web/destinations/[country]/[?city]
2025-11-03 13:33:45 +00:00
Joakim Jäderberg
15a2da333d Merged in feature/SW-3572-hotel-data-endpoint (pull request #3051)
SW-3572 API route for listing hotels per city or country

* wip hotel data endpoint

* Correct route params type

* wip

* skip static paths call

* timeout when getting destinations take too long

* call noStore when we get a timeout

* add cache-control headers

* .

* .

* .

* wip

* wip

* wip

* wip

* add route for getting hotels per country

* include city when listing by country

* fix distance SI unit

* fix sorting

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/SW-3572-hotel-data-endpoint

* packages/tracking passWithNoTests

* revalidate must be static value

* remove oxc reference

* cleanup

* cleanup hotel api route

* feat(SW-3572): cleanup error handling


Approved-by: Anton Gunnarsson
2025-11-03 12:10:22 +00:00