Commit Graph

210 Commits

Author SHA1 Message Date
Bianca Widstam
9e3d82b62c Merged in fix/SW-2739-map-reward-night-not-enough-points (pull request #2435)
fix(SW-2739): remove tooltip and add correct CTA on map for reward nights

* fix(SW-2739): remove tooltip and add correct CTA on map for reward nights

* fix(SW-2739): fix pr comment


Approved-by: Arvid Norlin
2025-06-25 13:30:43 +00:00
Simon Emanuelsson
145a6d2365 feat: only show alerts when booking dates are affected 2025-06-25 11:16:20 +00:00
Tobias Johansson
8c4715dd24 Merged in feat/SW-2680-tracking-fixes (pull request #2373)
fix(SW-2680): Added new properties used for tracking

* fix(SW-2680): Added new properties used for tracking


Approved-by: Michael Zetterberg
2025-06-25 08:56:37 +00:00
Bianca Widstam
a112173663 Merged in fix/Sw-2849-update-sidepeek-select-rate (pull request #2406)
fix(SW-2849): use same sidepeek on select rate as on select hotel

* fix(SW-2849): use same sidepeek on select rate as on select hotel

* fix(SW-2849): remove ameneties sidepeek enum


Approved-by: Erik Tiekstra
2025-06-24 11:37:25 +00:00
Hrishikesh Vaipurkar
e77ed2407b Merged in feat/SW-3002-new-hotel-move-tripadvisor (pull request #2375)
feat: SW-3002 Changed tripadvisor review subpage to Sidepeek

* feat: SW-3002 Changed tripadvisor review subpage to Sidepeek

* feat: SW-3002 Optimised styles


Approved-by: Erik Tiekstra
2025-06-24 07:39:18 +00:00
Erik Tiekstra
891108791c feat(SW-2264): Added campaign overview page
Approved-by: Matilda Landström
2025-06-19 15:19:56 +00:00
Erik Tiekstra
af92f7183c feat(SW-2278): Added hotel listing to campaign page
Approved-by: Matilda Landström
2025-06-19 09:36:28 +00:00
Matilda Landström
61317e0c94 Merged in feat/SW-2266-campaign-hero (pull request #2344)
Feat/SW-2266 campaign hero

Approved-by: Erik Tiekstra
2025-06-18 13:35:38 +00:00
Anton Gunnarsson
846fd904a6 Merged in feat/sw-2859-set-up-shared-trpc-package (pull request #2319)
feat(SW-2859): Create trpc package

* Add isEdge, safeTry and dataCache to new common package

* Add eslint and move prettier config

* Clean up tests

* Create trpc package and move initialization

* Move errors and a few procedures

* Move telemetry to common package

* Move tokenManager to common package

* Add Sentry to procedures

* Clean up procedures

* Fix self-referencing imports

* Add exports to packages and lint rule to prevent relative imports

* Add env to trpc package

* Add eslint to trpc package

* Apply lint rules

* Use direct imports from trpc package

* Add lint-staged config to trpc

* Move lang enum to common

* Restructure trpc package folder structure

* Fix lang imports


Approved-by: Linus Flood
2025-06-18 12:14:20 +00:00
Erik Tiekstra
2f38bdf0b1 fix(SW-3075): Fixed issue where URLs rendered differently in source HTML in compared to client
Approved-by: Matilda Landström
2025-06-18 12:07:32 +00:00
Erik Tiekstra
c783f3a764 feat(SW-3015): Added pagelinks for campaign page on all connections
Approved-by: Matilda Landström
2025-06-18 12:06:48 +00:00
Tobias Johansson
002d5f9c68 Merged in fix/SW-3078-wrong-dates-time-zones (pull request #2388)
fix(SW-3078): change to string instead of Date in Zod schema

* fix(SW-3078): change to string instead of Date in Zod schema


Approved-by: Michael Zetterberg
Approved-by: Linus Flood
2025-06-18 10:55:05 +00:00
Chuma Mcphoy (We Ahead)
2101b79db1 Merged in feat/LOY-230-Microsoft-Entra-ID-Auth (pull request #2113)
Feat(LOY-230): DTMC Routes with Entra ID Auth & Error Page Handling

* feat(LOY-230): Link Scandic Friends and Azure accounts

* fix(LOY-230): remove employee id param setting

* fix(LOY-230): return token in jwt callback for auth.dtmc.ts


Approved-by: Michael Zetterberg
Approved-by: Christian Andolf
2025-06-18 10:22:04 +00:00
Erik Tiekstra
1e039febaf fix(SW-2933): Making the hotels/city listing render correctly with active filter on page load
Approved-by: Christian Andolf
Approved-by: Matilda Landström
2025-06-18 08:42:16 +00:00
Simon.Emanuelsson
85acd3453d Merged in feat/SW-1719-strikethrough-rates (pull request #2266)
Feat/SW-1719 strikethrough rates

* feat(SW-1719): Strikethrough rate if logged in on regular rate cards

* feat(SW-1719): Strikethrough rate if logged in on rate summary

* feat(SW-1719): Strikethrough rate if logged in on mobile rate summary

* feat(SW-1719): Strikethrough rate if logged in on enter details

* feat(SW-1719): Strikethrough rate support for multiple rooms

* feat(SW-1719): booking receipt fixes on confirmation page

* feat(SW-1719): improve initial total price calculation

* feat: harmonize enter details total price to use one and the same function


Approved-by: Michael Zetterberg
2025-06-13 12:01:16 +00:00
Christian Andolf
9da986f554 fix: extrapolate phone number parsing for re-usage in edit profile
move error messages to message handler
2025-06-13 10:46:15 +02:00
Tobias Johansson
e645b15c6e Merged in fix/SW-2841-filter-popup-closing-on-select (pull request #2289)
Fix/SW-2841 filter popup closing on select

* fix(SW-2841): refactored so that filter modal is not closed when selecting filters

* fix(SW-2841): rename component

* fix: review feedback

* fix: move font-family

* fix: change init value of filteredHotelIds

* fix

* fix: add Typography tag


Approved-by: Michael Zetterberg
Approved-by: Christian Andolf
2025-06-13 07:41:31 +00:00
Erik Tiekstra
2342fd1bfc Feat/SW-2273 campaign page accordion block
Approved-by: Matilda Landström
2025-06-12 09:24:18 +00:00
Erik Tiekstra
e2a4fa6c07 Feat/SW-2272 campaign cards block
Approved-by: Matilda Landström
2025-06-12 06:01:23 +00:00
Anton Gunnarsson
048a477e52 Merged in feat/common-package (pull request #2333)
feat: Add common package

* Add isEdge, safeTry and dataCache to new common package

* Add eslint and move prettier config

* Fix yarn lock

* Clean up tests

* Add lint-staged config to common

* Add missing dependencies


Approved-by: Joakim Jäderberg
2025-06-11 13:08:39 +00:00
Chuma Mcphoy (We Ahead)
144a33fa30 Merged in feat/LOY-233-success-banner-for-dtmc-linking (pull request #2328)
feat(LOY-233): create success banner for successful DTMC linking

* feat(LOY-233): create success banner for successful DTMC linking

* fix(LOY-233): code cleanup

* fix(LOY-233): use new design vars for alert bg colors


Approved-by: Erik Tiekstra
2025-06-11 08:52:28 +00:00
Erik Tiekstra
b4a05dae0b feat(SW-2285): Added campaign essentials block on campaign page
Approved-by: Christian Andolf
Approved-by: Matilda Landström
2025-06-11 08:14:00 +00:00
Matilda Landström
be643e68a7 Merged in fix/SW-2980-alert (pull request #2312)
Fix/SW-2980: Only filter out child alert on hotel page

Approved-by: Erik Tiekstra
2025-06-10 07:35:12 +00:00
Erik Tiekstra
ace5519869 feat(SW-2265): Added campaign-page
Approved-by: Matilda Landström
2025-06-10 06:35:43 +00:00
Anton Gunnarsson
bff34b034e Merged in feat/sw-2857-refactor-booking-flow-url-updates (pull request #2302)
feat(SW-2857): Refactor booking flow url updates

* Add support for removing parameters when using initial values in serializeSearchParams

* Don't manually write search params in rate store

* Booking is already from live search params so no need

* Fix input type in serializeBookingSearchParams


Approved-by: Linus Flood
2025-06-09 09:16:22 +00:00
Hrishikesh Vaipurkar
d626e0f7ae Merged in feat/SW-2653-aa-tracking-click-tracking-on-se (pull request #2301)
feat: SW-2653 Implemented click tracking on Search btn and lang switch

* feat: SW-2653 Implemented click tracking on Search btn and lang switch


Approved-by: Erik Tiekstra
2025-06-09 08:49:39 +00:00
Matilda Landström
0383a332ad Merged in feat/SW-2888-facilities (pull request #2267)
Feat/SW-2888 facilities

* chore(SW-2944): change order of content

* chore(SW-2944): add openinghourstype from api


Approved-by: Erik Tiekstra
2025-06-05 07:29:49 +00:00
Matilda Landström
f45782f423 Merged in feat/SW-2851-the-doc-logo (pull request #2293)
Feat/SW-2851: Add The Dock Signature hotel logo and marker

* feat(SW-2851): Add The Doc as signature hotel

* chore(SW-2851): add logo

* chore(SW-2851): add marker


Approved-by: Erik Tiekstra
2025-06-05 07:20:17 +00:00
Erik Tiekstra
a8f167025d fix(SW-2933): Making the hotels/city listing render correct for SEO purposes
Approved-by: Matilda Landström
2025-06-04 09:05:05 +00:00
Anton Gunnarsson
dd4ef527df Merged in chore/eslint9 (pull request #2029)
chore: Update to ESLint 9

* wip: apply codemod and upgrade swc plugin

* Update eslint to 9 in scandic-web

apply code mod to config
fix existing lint issues

* Remove uneccessary fixupConfigRules

* Update eslint to 9 in design-system

* Add lint turbo dependency

* Move redis-api to eslint and prettier instead of biome

* Simplify eslint configs

* Clean up

* Apply linting


Approved-by: Linus Flood
2025-06-03 14:26:44 +00:00
Bianca Widstam
984805ea8d Merged in feat/SW-1936-ui-room-card (pull request #2268)
feat(SW-1936): update room card ui

* feat(SW-1936): update room card ui


Approved-by: Linus Flood
2025-06-03 12:51:33 +00:00
Simon Emanuelsson
9580281421 fix: allow any type of phone number 2025-06-03 11:54:05 +00:00
Erik Tiekstra
be98c2faf6 feat(SW-1409): Synced tabnavigation headings and section headings on hotel pages
* feat(SW-2409): Added same headings to relevant sidepeeks


Approved-by: Christian Andolf
Approved-by: Matilda Landström
2025-06-03 09:22:28 +00:00
Anton Gunnarsson
03468ad824 Merged in fix/refactor-booking-flow-search-params (pull request #2148)
Fix: refactor booking flow search params

* wip: apply codemod and upgrade swc plugin

* wip: design-system to react 19, fix issues from async (search)params

* Prepare new parse function for booking flow search params

* Prepare serialize function for booking flow search params

* Improve handling of comma separated arrays

* Slightly refactor for readability

* Next abstracts URLSearchParams so handle the abstraction instead

* Refactor booking widget to use new search params parsing

* Rename search param functions

* Refactor select-hotel to use new search param parser

* Use new search params parser in select-rate and details

* Fix hotelId type

* Avoid passing down search params into BookingWidget components

* More updates to use new types instead of SearchParams<T>

* Remove types SelectHotelSearchParams and AlternativeSelectHotelSearchParams

* Fix parseBookingWidgetSearchParams return type

* Add error handling to booking search param parsers

* Fix modifyRateIndex handling in details page

* Clean up

* Refactor booking widget search param serializing to util function

* Move start page booking widget search param parsing to page

* Use new search param serializer in HandleErrorCallback

* Delete convertSearchParamsToObj & convertObjToSearchParams


Approved-by: Michael Zetterberg
2025-06-02 13:38:01 +00:00
Anton Gunnarsson
cbf9e7b7c2 Merged in chore/next15 (pull request #1999)
chore (SW-834): Upgrade to Next 15

* wip: apply codemod and upgrade swc plugin

* wip: design-system to react 19, fix issues from async (search)params

* wip: fix remaining issues from codemod

serverClient is now async because context use headers()
getLang is now async because it uses headers()

* Minor cleanup

* Inline react-material-symbols package

Package is seemingly not maintained any more and doesn't support
React 19. This copies the package source into `design-system`,
makes the necessary changes for 19 and export it for others to use.

* Fix missing awaits

* Disable modal exit animations

Enabling modal exit animations via isExiting prop is causing
modals to be rendered in "hidden" state and never unmount.
Seems to be an issue with react-aria-components,
see https://github.com/adobe/react-spectrum/issues/7563.
Can probably be fixed by rewriting to a solution similar to
https://react-spectrum.adobe.com/react-aria/examples/framer-modal-sheet.html

* Remove unstable cache implementation and use in memory cache locally

* Fix ref type in SelectFilter

* Use cloneElement to add key prop to element


Approved-by: Linus Flood
2025-06-02 11:11:50 +00:00
Anton Gunnarsson
7e97b74c18 Merged in chore/remove-unused-code (pull request #2229)
Remove unused code

* Remove unused scandic-web files

* Remove unused exports


Approved-by: Joakim Jäderberg
2025-05-30 12:41:18 +00:00
Niclas Edenvin
1d733c5ca3 Merged in fix/SW-2887-complete-booking-button-always-enabled (pull request #2227)
fix(SW-2887): don't disable the booking button
The complete button shouldn’t be disabled based on validation. This was already correct in desktop, but now it’s also correct in mobile.

* fix(SW-2887): don't disable the booking button


Approved-by: Tobias Johansson
Approved-by: Christian Andolf
2025-05-28 08:11:29 +00:00
Christian Andolf
8e1a83ee7d fix(SW-2172): update sidepeek buttons to use new ones for accessibility
updated enter details header overlay to match design

updated change room button to use new one for accessibility

other minor fixes to match design
2025-05-27 12:05:04 +02:00
Simon Emanuelsson
39855d3c8a fix: trigger memberPrice modal for membership number too 2025-05-27 10:22:31 +02:00
Matilda Landström
cf6c794c59 Merged in feat/SW-2901-hotel-pins (pull request #2206)
feat(SW-2901): add dynamic hotel markers

* feat(SW-2901): add dynamic hotel markers

* fix(SW-2901): update type


Approved-by: Christian Andolf
Approved-by: Erik Tiekstra
2025-05-26 13:56:03 +00:00
Joakim Jäderberg
196ea2994f Merged in fix/warmup-autocomplete-data (pull request #2212)
warmup autocomplete data

* warmup autocomplete data


Approved-by: Anton Gunnarsson
2025-05-26 08:23:20 +00:00
Tobias Johansson
f77202f58b Merged in fix/SW-2249-missing-currency (pull request #2159)
fix(SW-2249): Added default currency to summary and price details modal

* fix(SW-2249): Added default currency to summary and price details modal


Approved-by: Hrishikesh Vaipurkar
2025-05-26 06:51:57 +00:00
Matilda Landström
76cf33a199 Merged in fix/tripadvisor-rating (pull request #2193)
fix(SW-2892): don't show Tripadvisor rating if undefined

* fix: don't show rating if undefined


Approved-by: Bianca Widstam
Approved-by: Christian Andolf
Approved-by: Erik Tiekstra
2025-05-22 15:05:25 +00:00
Joakim Jäderberg
cc34cdcf74 Merged in fix/SW-2848-RTE-with-copied-divs (pull request #2173)
fix: handle when content has copied divs from episervers RTE

* fix: handle when content has copied divs from episervers RTE


Approved-by: Matilda Landström
2025-05-22 11:03:29 +00:00
Simon Emanuelsson
5ca30d02a0 feat: keep inventory of bedselections 2025-05-22 09:37:52 +00:00
Joakim Jäderberg
39b89c5d51 Merged in fix/SW-2890-select-rate-not-updating (pull request #2190)
fix: select-rate didn't update results when switching back to a recent search SW-2890

* fix: select-rate didn't update results when switching back to a recent search


Approved-by: Linus Flood
2025-05-22 09:21:46 +00:00
Matilda Landström
88b6cdf535 Merged in fix/meeting-room-type (pull request #2186)
fix: correct meeting room type

* fix: correct meeting room type


Approved-by: Erik Tiekstra
2025-05-22 08:53:32 +00:00
Christian Andolf
d3023a909b Merged in chore/update-ancillary-imageurl-typing (pull request #2182)
chore: update ancillary imageurl typing to reflect that the image url may be undefined

Approved-by: Niclas Edenvin
2025-05-21 12:48:27 +00:00
Hrishikesh Vaipurkar
b3d5326adb Merged in feat/SW-1232-filter-improvements-select-hot (pull request #2168)
feat: SW-1232 Implemented disabling of filters and show hotel count

* feat: SW-1232 Implemented disabling of filters and show hotel count

* feat: SW-1232 Optimised code


Approved-by: Niclas Edenvin
2025-05-21 12:27:11 +00:00
Christian Andolf
cddd9c1ea8 chore: update ancillary imageurl typing to reflect that the image url may be undefined 2025-05-21 13:40:01 +02:00