Commit Graph

34 Commits

Author SHA1 Message Date
Chuma Mcphoy (We Ahead)
56d5ad77d1 Merged in fix/SW-2068-correct-public-url-from-my-stays-overview-page (pull request #1694)
feat(SW-2068): Link to Correct Public URL from within My Stays Overview Page

* feat(SW-2068): Link to Correct Public URL from within My Stays Overview Page

- Added language parameter to previous and upcoming stays queries.
- Updated Client components to utilize the new language hook.
- Refactored EmptyUpcomingStays component to dynamically generate links based on the current language.
- Adjusted user input validation to include optional language parameter.

* refactor(SW-2068): Update EmptyUpcomingStays components to use PUBLIC_URL + add utility to handle TLD based on language

* chore(SW-2068): Clarify TLD

* feat(SW-2068): documentation for getTldForLanguage

* refactor(SW-2068): Simplify booking URL construction in updateStaysBookingUrl

* refactor(SW-2068): Remove incorrect TLD update logic from booking URL construction

* refactor(SW-2068): Centralize booking URL paths using myBookingPath constant

* refactor(SW-2068): Streamline search params in booking URL construction logic in updateStaysBookingUrl


Approved-by: Christian Andolf
2025-04-02 12:44:02 +00:00
Bianca Widstam
35c1724afb Merged in feat/SW-1997-tracking-gla-my-stay-ancillaries (pull request #1657)
Feat/SW-1997 tracking gla my stay ancillaries

* feat(SW-1996): tracking gla my stay

* feat(SW-1996): update gla tracking

* feat(SW-1996): fix comment

* feat(SW-1997): add tracking for gla my stay and ancillaries

* feat(SW-1997): rebase master

* feat(SW-1997): fix duplicate import

* feat(SW-1997): add hotelId and category for ancillaries, and add more tracking

* feat(SW-1997): remove commments and fix spelling mistake

* feat(SW-1997): if addAncillary failed, but guarantee is successful, default to card in booking


Approved-by: Niclas Edenvin
2025-04-01 09:38:36 +00:00
Tobias Johansson
7434f30c20 Merged in feat/SW-2033-implement-new-room-feature-request (pull request #1665)
feat(SW-2033): Added new route for fetching room features, and merged the data with existing availability data

* feat(SW-2033): Added new route for fetching room features, and merged the data with existing availability data

* fix: issue with total price not including room features

* fix: add return null

* fix

* fix

* fixes from PR feedback


Approved-by: Arvid Norlin
2025-03-31 11:20:49 +00:00
Christian Andolf
32e769fd09 chore: debounce function is now typed to accommodate typed parameters in a callback 2025-03-28 14:40:36 +01:00
Bianca Widstam
a28fa67195 Merged in feat/SW-1996-tracking-gla-my-stay (pull request #1625)
Feat/SW-1996 tracking gla my stay

* feat(SW-1996): tracking gla my stay

* feat(SW-1996): update gla tracking

* feat(SW-1996): update gla tracking

* feat(SW-1996): fix comment

* feat(SW-1996): fix camelCase


Approved-by: Niclas Edenvin
Approved-by: Erik Tiekstra
2025-03-27 14:09:39 +00:00
Linus Flood
0f9c9c2af8 Merged in feat/tracking-sessionId (pull request #1653)
Feat(tracking): add sessionId to all events. Fixed some invalid session bugs

* Feat(tracking): add sessionId to all events. Fixed some invalid session bugs


Approved-by: Anton Gunnarsson
2025-03-27 10:42:24 +00:00
Matilda Landström
5de2a993a7 Merged in feat/SW-1711-switch-icons (pull request #1558)
Switches out all the old icons to new ones, and moves them to the design system. The new icons are of three different types: Materialise Symbol, Nucleo, and Customized. Also adds further mapping between facilities/amenities and icons.

Approved-by: Michael Zetterberg
Approved-by: Erik Tiekstra
2025-03-27 09:42:52 +00:00
Christian Andolf
f272dde1ef chore: remove unused filter modal
remove old cms model

refactor reward types
2025-03-26 09:55:26 +01:00
Christian Andolf
45d57a9c89 fix(LOY-175): fix issues of getting correct expiration date on reward coupon 2025-03-26 09:55:26 +01:00
Christian Andolf
b86347b4f4 refactor(LOY-175): rewrite reward types according to new api endpoints 2025-03-26 09:55:26 +01:00
Erik Tiekstra
93962e4c59 fix: Added altText_EN as fallback alt text before using title
Approved-by: Fredrik Thorsson
2025-03-25 12:50:29 +00:00
Linus Flood
4cd6e7b55b Merged in fix/tracking-pageload-issues (pull request #1630)
fix(tracking): fixes not sending pageview events when promise isn't resolving

* fix(tracking): fixes not sending pageview events when promise isn't resolving

* Refactor


Approved-by: Anton Gunnarsson
2025-03-25 12:33:04 +00:00
Hrishikesh Vaipurkar
b0674d07f5 Merged in feat/SW-1308-booking-codes-track-b (pull request #1607)
Feat/SW-1308 booking codes track b

* feat: SW-1308 Booking codes track b

* feat: SW-1308 Booking codes Track B implementation

* feat: SW-1308 Optimized after rebase


Approved-by: Arvid Norlin
2025-03-24 11:23:11 +00:00
Hrishikesh Vaipurkar
c5e294c7ea Merged in feat/SW-1356-reward-night-booking-2- (pull request #1559)
feat: SW-1356 Reward night bookingflow

* feat: SW-1356 Reward night bookingflow

* feat: SW-1356 Removed extra param booking call

* feat: SW-1356 Optimized as review comments

* feat: SW-1356 Schema validation updates

* feat: SW-1356 Fix after rebase

* feat: SW-1356 Optimised price.redemptions check

* feat: SW-1356 Updated Props naming


Approved-by: Arvid Norlin
2025-03-24 08:54:02 +00:00
Niclas Edenvin
efa7336ebd Merged in feat/sw-1602-preliminary-receipt (pull request #1595)
feat/sw-1602 preliminary receipt

* feat(sw-1602): create page for preliminary receipt

* Add link to my stay page


Approved-by: Pontus Dreij
2025-03-24 07:55:15 +00:00
Pontus Dreij
2bc14a6eeb Merged in feat(SW-1993)-tracking-mystay-cancellation (pull request #1588)
Feat(SW-1993) tracking mystay

* feat(SW-1993) added trackEvent for cancelStay and mypagelink

* feat(SW-1993) implement trackCancelStay and trackMyStayPageLink


Approved-by: Linus Flood
2025-03-21 07:24:01 +00:00
Erik Tiekstra
b2b197b1ef Feat/SW-1519 remove deprecated hotel data from schema
* feat(SW-1519): Removed displayWebpage from hotel schema

* feat(SW-1519): Removed gallery from hotel schema

* feat(SW-1519): Removed conferencesAndMeetings from hotel schema

* feat(SW-1519): Removed healthAndWellness from hotel schema

* feat(SW-1519): Removed restaurantImages from hotel schema

* feat(SW-1519): Removed restaurantsOverviewPage from hotel schema


Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
2025-03-19 06:28:13 +00:00
Erik Tiekstra
f096b70c45 feat(SW-1472): adjustments to destination page tracking
Approved-by: Matilda Landström
2025-03-18 07:09:40 +00:00
Erik Tiekstra
05addfa0bb feat(SW-1885): Added noindex/nofollow to pages with searchparams when generating metadata to avoid duplicate content issues
Approved-by: Linus Flood
2025-03-17 13:15:13 +00:00
Simon Emanuelsson
1812591903 feat: add multiroom tracking to booking flow 2025-03-17 09:47:42 +01:00
Joakim Jäderberg
fa63b20ed0 Merged in feature/redis (pull request #1478)
Distributed cache

* cache deleteKey now uses an options object instead of a lonely argument variable fuzzy

* merge

* remove debug logs and cleanup

* cleanup

* add fault handling

* add fault handling

* add pid when logging redis client creation

* add identifier when logging redis client creation

* cleanup

* feat: add redis-api as it's own app

* feature: use http wrapper for redis

* feat: add the possibility to fallback to unstable_cache

* Add error handling if redis cache is unresponsive

* add logging for unstable_cache

* merge

* don't cache errors

* fix: metadatabase on branchdeploys

* Handle when /en/destinations throws
add ErrorBoundary

* Add sentry-logging when ErrorBoundary catches exception

* Fix error handling for distributed cache

* cleanup code

* Added Application Insights back

* Update generateApiKeys script and remove duplicate

* Merge branch 'feature/redis' of bitbucket.org:scandic-swap/web into feature/redis

* merge


Approved-by: Linus Flood
2025-03-14 07:54:21 +00:00
Chuma Mcphoy (We Ahead)
1ef6fd02c1 Merged in feat/LOY-55-Filter-Modal (pull request #1509)
feat(LOY-55): Add FilterRewardsModal

* feat(LOY-55): Add rewards filtering functionality

- Implement dynamic rewards filtering by category and membership level
- Create FilterRewardsModal component for filtering rewards
- Add useFilteredRewards hook to handle filtering logic
- Update rewards schema and constants to support new filtering features
- Remove hardcoded page size and replace with constant

* fix(LOY-55): reuse existing tier to friend map

* refactor(LOY-55): fix checkbox onChange type safety

* refactor(LOY-55): Improve rewards filtering type safety and validation

* refactor(LOY-55): Update filter modal border color using design token


Approved-by: Christian Andolf
2025-03-12 13:29:35 +00:00
Christian Andolf
b45157818f feat(LOY-154): add expiration date to rewards 2025-03-11 16:25:33 +01:00
Anton Gunnarsson
393546d35d Merged in feat/sw-1291-show-sas-membership-data (pull request #1503)
Show SAS membership data in Linked Accounts

* Rip out old styling

* Desktop version of new linked accounts design

* Use new design system tokens

* Refactor SASLinkedAccount to handle all states

* Improve small screen styling

* Add intl etc

* Skeletons

* Tiny fixes

* Add i18n keys to all languages


Approved-by: Linus Flood
2025-03-10 10:13:18 +00:00
Linus Flood
183a6476e7 Merged in fix/check-valid-session (pull request #1502)
Fix/check valid session

* fix:session - check if valid session

* Refactor


Approved-by: Joakim Jäderberg
2025-03-10 09:06:23 +00:00
Hrishikesh Vaipurkar
51b70f3032 feat: SW-1583 Enabled reward night in booking widget 2025-03-07 09:08:18 +00:00
Erik Tiekstra
230b56b3bd Merged in feat/SW-1472-destination-tracking (pull request #1474)
Feat/SW-1472 destination tracking

* feat(SW-1472): Added default tracking for destination overview page

* feat(SW-1472): Added default tracking for destination country/city page

* feat(SW-1472): moved tracking functions to different files for better overview

* feat(SW-1472): added destination page tracking


Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
2025-03-06 10:15:33 +00:00
Anton Gunnarsson
43d3713f59 Merged in feat/SW-1810-prevent-starting-link-flow-when-linked (pull request #1469)
Prevent SAS link flow when already linked

* Implement check for checking sas_eb membership when starting link flow


Approved-by: Joakim Jäderberg
2025-03-05 08:17:02 +00:00
Anton Gunnarsson
00fa7819b4 Merged in feat/membership-schema-update (pull request #1459)
Update membership schema to adapt for API changes

Approved-by: Michael Zetterberg
2025-03-04 08:00:33 +00:00
Erik Tiekstra
1ec479e601 Merged in feat/SW-1554-sidepeek-tracking-hotel-pages (pull request #1460)
feat(SW-1554): Added tracking support for sidepeeks inside hotel pages

* feat(SW-1554): Added tracking support for sidepeeks inside hotel pages


Approved-by: Linus Flood
2025-03-04 07:02:04 +00:00
Michael Zetterberg
b8ad88de1b fix: improve labels 2025-03-03 17:12:10 +01:00
Chuma Mcphoy (We Ahead)
738c0e223f Merged in feat/LOY-156-localize-user-languages (pull request #1452)
feat(LOY-156): Improve language handling and localization in profile page

* feat(LOY-156): Improve language handling and localization in profile page

* refactor(LOY-156): Improve language display using Intl.DisplayNames

* feat(LOY-156): Enhance country display with localized country names

* refactor(LOY-156): Move countries data to a dedicated constants file & more type safe country mapping

* feat(LOY-156): Update isValidLang to use languageSchema + German translation for membership terms and conditions

* chore(LOY-156): language handling in profile component


Approved-by: Christian Andolf
2025-03-03 12:55:05 +00:00
Erik Tiekstra
bee6c6d83a Merged in feat/SW-1451-country-page-sorting (pull request #1426)
Feat/SW-1451 country page filtering and sorting

* feat(SW-1451): implemented sorting and filtering on country pages

* feat(SW-1451): Renamed hotel-data to destination-data because of its multi-purpose use

* feat(SW-1451): Now filtering after change of url instead of inside the store after submit


Approved-by: Fredrik Thorsson
2025-02-28 06:30:16 +00:00
Anton Gunnarsson
80100e7631 Merged in monorepo-step-1 (pull request #1080)
Migrate to a monorepo setup - step 1

* Move web to subfolder /apps/scandic-web

* Yarn + transitive deps

- Move to yarn
- design-system package removed for now since yarn doesn't
support the parameter for token (ie project currently broken)
- Add missing transitive dependencies as Yarn otherwise
prevents these imports
- VS Code doesn't pick up TS path aliases unless you open
/apps/scandic-web instead of root (will be fixed with monorepo)

* Pin framer-motion to temporarily fix typing issue

https://github.com/adobe/react-spectrum/issues/7494

* Pin zod to avoid typ error

There seems to have been a breaking change in the types
returned by zod where error is now returned as undefined
instead of missing in the type. We should just handle this
but to avoid merge conflicts just pin the dependency for
now.

* Pin react-intl version

Pin version of react-intl to avoid tiny type issue where formatMessage
does not accept a generic any more. This will be fixed in a future
commit, but to avoid merge conflicts just pin for now.

* Pin typescript version

Temporarily pin version as newer versions as stricter and results in
a type error. Will be fixed in future commit after merge.

* Setup workspaces

* Add design-system as a monorepo package

* Remove unused env var DESIGN_SYSTEM_ACCESS_TOKEN

* Fix husky for monorepo setup

* Update netlify.toml

* Add lint script to root package.json

* Add stub readme

* Fix react-intl formatMessage types

* Test netlify.toml in root

* Remove root toml

* Update netlify.toml publish path

* Remove package-lock.json

* Update build for branch/preview builds


Approved-by: Linus Flood
2025-02-26 10:36:17 +00:00