Commit Graph

78 Commits

Author SHA1 Message Date
Erik Tiekstra
af4f544b8a feat(BOOK-55): Listen to SEO filter slugs when navigating to such page
Approved-by: Chuma Mcphoy (We Ahead)
Approved-by: Matilda Landström
2025-09-24 10:40:58 +00:00
Erik Tiekstra
7c92a8fc9a feat(BOOK-53): Added component for SEO filters and support filter switching
Approved-by: Chuma Mcphoy (We Ahead)
2025-09-19 08:26:41 +00:00
Anton Gunnarsson
08804e8675 Merged in chore/cleanup-scandic-web (pull request #2831)
chore: Cleanup scandic-web

* Remove unused files

* Remove unused and add missing packages

* Remove unused exports


Approved-by: Linus Flood
2025-09-18 15:33:00 +00:00
Erik Tiekstra
948c86479a feat(BOOK-54): Adjusted filter functionality to save filters as query parameters instead of paths
* feat(BOOK-54): Destination filters now matching on id instead of slug in preparation for filters from Contentstack

Approved-by: Chuma Mcphoy (We Ahead)
2025-09-18 13:03:01 +00:00
Anton Gunnarsson
b0f3e4afbd Merged in chore/cleanup-booking-flow (pull request #2824)
chore: Cleanup booking-flow after migration

* Remove unused types

* Clean up exports, types, unused files etc in booking-flow


Approved-by: Joakim Jäderberg
2025-09-18 07:28:05 +00:00
Joakim Jäderberg
7dee6d5083 Merged in chore/move-enter-details (pull request #2778)
Chore/move enter details

Approved-by: Anton Gunnarsson
2025-09-11 07:16:24 +00:00
Hrishikesh Vaipurkar
8e00769c64 Merged in chore/SW-3395-move-bookingconfirmationprovider (pull request #2757)
chore(SW-3395): Moved BookingConfirmationProvider to booking-flow package

* chore(SW-3395): Moved BookingConfirmationProvider to booking-flow package


Approved-by: Anton Gunnarsson
2025-09-04 08:14:50 +00:00
Joakim Jäderberg
f77520cd04 Merged in chore/remove-unused-useRoomContext (pull request #2747)
chore: delete unused useRoomContext

* chore: delete unused useRoomContext

* merge


Approved-by: Matilda Landström
2025-09-02 11:58:37 +00:00
Hrishikesh Vaipurkar
0a4bf40a15 Merged in chore/SW-3321-move-selectratecontext-to- (pull request #2729)
chore(SW-3321): Moved Select rate context to booking-flow package

* chore(SW-3321): Moved Select rate context to booking-flow package

* chore(SW-3321): Optimised code


Approved-by: Joakim Jäderberg
2025-09-02 07:40:01 +00:00
Anton Gunnarsson
65c6bc4c59 Merged in feat/sw-3369-move-loadingspinner (pull request #2742)
feat(SW-3369): Move LoadingSpinner to design-system

* Move LoadingSpinner to design-system


Approved-by: Joakim Jäderberg
2025-09-02 06:46:58 +00:00
Anton Gunnarsson
87402a2092 Merged in feat/sw-2873-move-selecthotel-to-booking-flow (pull request #2727)
feat(SW-2873): Move select-hotel to booking flow

* crude setup of select-hotel in partner-sas

* wip

* Fix linting

* restructure tracking files

* Remove dependency on trpc in tracking hooks

* Move pageview tracking to common

* Fix some lint and import issues

* Add AlternativeHotelsPage

* Add SelectHotelMapPage

* Add AlternativeHotelsMapPage

* remove next dependency in tracking store

* Remove dependency on react in tracking hooks

* move isSameBooking to booking-flow

* Inject searchParamsComparator into tracking store

* Move useTrackHardNavigation to common

* Move useTrackSoftNavigation to common

* Add TrackingSDK to partner-sas

* call serverclient in layout

* Remove unused css

* Update types

* Move HotelPin type

* Fix todos

* Merge branch 'master' into feat/sw-2873-move-selecthotel-to-booking-flow

* Merge branch 'master' into feat/sw-2873-move-selecthotel-to-booking-flow

* Fix component


Approved-by: Joakim Jäderberg
2025-09-01 08:37:00 +00:00
Bianca Widstam
0e00e8eaf1 Merged in fix/SW-3021-vouchers (pull request #2719)
fix(SW-3021): add pluralization support for vouchers

* fix(SW-3021): add pluralization support for vouchers


Approved-by: Anton Gunnarsson
2025-08-28 08:27:03 +00:00
Bianca Widstam
d9b858c823 Merged in feat/SW-3289-replace-sidepeek-hotel-reservation (pull request #2686)
feat(SW-3289): replace sidepeek

* fix(SW-3289): replace sidepeek

* fix(SW-3289): add wrapping prop and change prop name to buttonVariant

* fix(SW-3289): replace body with typography

* fix(SW-3289): fix intl message


Approved-by: Joakim Jäderberg
2025-08-22 11:43:39 +00:00
Erik Tiekstra
47e5a55d13 fix(SW-3186): Replaced hash functionality for filters with query parameters
Approved-by: Linus Flood
Approved-by: Matilda Landström
2025-08-15 09:00:32 +00:00
Joakim Jäderberg
68cd061c6d Merged in feature/select-rate-vertical-data-flow (pull request #2535)
Feature/select rate vertical data flow

* add fix from SW-2666

* use translations for room packages

* move types to it's own file

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feature/select-rate-vertical-data-flow

* merge

* feature/select-rate: double rate for campaing rates

* revert NODE_ENV check in Cookiebot script

* revert testing values

* fix(SW-3171): fix all filter selected in price details

* fix(SW-3166): multiroom anchoring when changing filter

* fix(SW-3172): check hotelType, show correct breakfast message

* Merge branch 'feature/select-rate-vertical-data-flow' of bitbucket.org:scandic-swap/web into feature/select-rate-vertical-data-flow

* fix: show special needs icons for subsequent roomTypes SW-3167

* fix: Display strike through text when logged in SW-3168

* fix: Reinstate the scrollToView behaviour when selecting a rate SW-3169

* merge

* .

* PR fixes

* fix: don't return notFound()

* .

* always include defaults for room packages

* merge

* merge

* merge

* Remove floating h1 for new select-rate


Approved-by: Anton Gunnarsson
2025-08-13 12:45:40 +00:00
Hrishikesh Vaipurkar
706f2d8dfe Merged in fix/SW-3208-webviews-change-dates-on-my- (pull request #2638)
fix(SW-3208): Fixed webview for change date in MyStay

* fix(SW-3208): Fixed webview for change date in MyStay


Approved-by: Linus Flood
2025-08-13 12:37:04 +00:00
Anton Gunnarsson
a2213d0169 Merged in feat/sw-3228-move-image-to-design-system (pull request #2616)
feat(SW-3228): Move Image to design-system

* Move Image to design-system

* Merge branch 'master' into feat/sw-3228-move-image-to-design-system


Approved-by: Linus Flood
2025-08-12 12:58:05 +00:00
Anton Gunnarsson
800dc5c3c1 Merged in feat/sw-3225-move-parking-information-to-booking-flow (pull request #2614)
feat(SW-3225): Move ParkingInformation to design-system

* Inline ParkingInformation types to remove trpc dependency

* Move ParkingInformation to design-system

* Move numberFormatting to common package

* Add deps to external

* Fix imports and i18n script

* Add common as dependency

* Merge branch 'master' into feat/sw-3225-move-parking-information-to-booking-flow


Approved-by: Linus Flood
2025-08-12 12:36:31 +00:00
Erik Tiekstra
fa7214cb58 Feat/SW-2271 hotel list filtering
* feat(SW-2271): Changes to hotel data types in preperation for filtering
* feat(SW-2271): Added filter and sort functionality

Approved-by: Matilda Landström
2025-07-04 09:27:20 +00:00
Anton Gunnarsson
be25be7bb5 Merged in feat/sw-3125-move-client-trpc-setup (pull request #2493)
feat(SW-3125): Move client trpc setup

* Move client trpc to package

* Client setup in partner-sas

* Add todo


Approved-by: Linus Flood
2025-07-01 12:41:28 +00:00
Simon Emanuelsson
59f4a27cb1 feat: translate Voucher everywhere during booking flow 2025-06-30 10:57:00 +00:00
Anton Gunnarsson
e572d9e7e9 Merged in feat/sw-2862-move-booking-router-to-trpc-package (pull request #2421)
feat(SW-2861): Move booking router to trpc package

* Use direct imports from trpc package

* Add lint-staged config to trpc

* Move lang enum to common

* Restructure trpc package folder structure

* WIP first step

* update internal imports in trpc

* Fix most errors in scandic-web

Just 100 left...

* Move Props type out of trpc

* Fix CategorizedFilters types

* Move more schemas in hotel router

* Fix deps

* fix getNonContentstackUrls

* Fix import error

* Fix entry error handling

* Fix generateMetadata metrics

* Fix alertType enum

* Fix duplicated types

* lint:fix

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package

* Fix broken imports

* Move booking router to trpc package

* Move partners router to trpc package

* Move autocomplete router to trpc package

* Move booking router to trpc package

* Merge branch 'master' into feat/sw-2862-move-booking-router-to-trpc-package


Approved-by: Linus Flood
2025-06-26 13:21:16 +00:00
Anton Gunnarsson
bbcabfa0ba Merged in feat/sw-2864-move-hotels-router-to-trpc-package (pull request #2410)
feat (SW-2864): Move booking router to trpc package

* 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

* WIP first step

* update internal imports in trpc

* Fix most errors in scandic-web

Just 100 left...

* Move Props type out of trpc

* Fix CategorizedFilters types

* Move more schemas in hotel router

* Fix deps

* fix getNonContentstackUrls

* Fix import error

* Fix entry error handling

* Fix generateMetadata metrics

* Fix alertType enum

* Fix duplicated types

* lint:fix

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package

* Fix broken imports

* Move booking router to trpc package

* Merge branch 'master' into feat/sw-2864-move-hotels-router-to-trpc-package


Approved-by: Linus Flood
2025-06-26 09:02:59 +00:00
Anton Gunnarsson
002d093af4 Merged in feat/sw-2863-move-contentstack-router-to-trpc-package (pull request #2389)
feat(SW-2863): Move contentstack router to trpc package

* 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

* WIP first step

* update internal imports in trpc

* Fix most errors in scandic-web

Just 100 left...

* Move Props type out of trpc

* Fix CategorizedFilters types

* Move more schemas in hotel router

* Fix deps

* fix getNonContentstackUrls

* Fix import error

* Fix entry error handling

* Fix generateMetadata metrics

* Fix alertType enum

* Fix duplicated types

* lint:fix

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package

* Fix broken imports

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package


Approved-by: Linus Flood
2025-06-26 07:53:01 +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
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
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
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
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
Simon Emanuelsson
9580281421 fix: allow any type of phone number 2025-06-03 11:54:05 +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
Simon Emanuelsson
39855d3c8a fix: trigger memberPrice modal for membership number too 2025-05-27 10:22:31 +02: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
Simon Emanuelsson
1f1bcd480b feat: prevent users from selecting the same room when there is no vacancy for it 2025-05-16 13:04:45 +00:00
Simon Emanuelsson
0b960200b9 fix: make sure ancillaries also listen to invalidate requests 2025-05-15 07:49:28 +00:00
Bianca Widstam
32618ad318 Merged in fix/add-breakfast-wrong-quantity (pull request #2086)
fix: check if breakfast and refill modal with correct confirmation if cancelled/error payment

* fix: check if breakfast and refill modal with correct confirmation if cancelled/error payment

* fix: only include packages with quantity


Approved-by: Linus Flood
Approved-by: Matilda Landström
2025-05-14 08:12:45 +00:00
Simon Emanuelsson
a99e434d84 feat: move room charge to top in price details modal 2025-05-08 10:38:44 +00:00
Michael Zetterberg
0ed8b8ab20 fix(i18n): update labels for room packages 2025-05-08 10:01:29 +02:00
Michael Zetterberg
b910b6a313 feat(SW-2116): Use refId instead of confirmationNumber 2025-05-05 12:26:37 +00:00
Simon Emanuelsson
db289b80b1 feat: refactor NewDates, clean up legacy code
This reverts commit 0c7836fa59.
2025-05-03 21:45:45 +02:00
Arvid Norlin
0c7836fa59 Merged in fix/SW-2553-sidepeeks (pull request #1919)
Fix/SW-2553 sidepeeks

* fix(SW-2553): apply sidepeek display logic

* chore: move convertToChildType and getPriceType utils

* fix: apply PR requested changes

* fix(SW-2553): fix roomNumber for multiroom

* fix(SW-2553): fix sidepeek for my-stay page


Approved-by: Michael Zetterberg
Approved-by: Bianca Widstam
Approved-by: Matilda Landström
2025-05-02 15:10:34 +00:00
Linus Flood
6979ac0c3b Merged in revert-pr-1925 (pull request #1927)
Revert "Feat/sw 2323 find booking (pull request #1925)"

Approved-by: Anton Gunnarsson
2025-05-02 13:05:42 +00:00
Arvid Norlin
74d37dad93 feat(SW-2116): RefId instead of confirmationNumber 2025-05-02 12:44:07 +02:00
Michael Zetterberg
9aa70f0b37 feat(SW-2470): render correct terms on Enter details 2025-04-29 08:08:21 +00:00
Simon Emanuelsson
ec087a3d15 feat: refactor of my stay 2025-04-28 12:40:52 +00:00
Erik Tiekstra
7b76e351d9 fix(SW-2210): Removed isUserLoggedIn from RatesStore 2025-04-24 00:48:40 +02:00
Niclas Edenvin
3f6a65d390 Merged in fix/sw-1867-multiroom-guests (pull request #1822)
fix(sw-1867): Don't allow same name or membno between rooms

* fix(sw-1867): Don't allow same name or membno between rooms

We don't want to allow two different rooms to have the same firstname
and lastname combination or the same membership number.

* Fine tune validation triggers

* Add comments explaining manual validation triggering

* Change to react-hook-form built-in deps instead


Approved-by: Simon.Emanuelsson
2025-04-22 09:06:43 +00:00