284 Commits

Author SHA1 Message Date
Joakim Jäderberg
daf765f3d5 Merged in feature/wrap-logging (pull request #2511)
Feature/wrap logging

* feat: change all logging to go through our own logger function so that we can control log levels

* move packages/trpc to using our own logger

* merge


Approved-by: Linus Flood
2025-07-03 12:37:04 +00:00
Anton Gunnarsson
6eeaa1cd40 Merged in feat/sw-2872-dependency-inject-app-context-in-trpc-package (pull request #2478)
feat(SW-2872) Dependency inject app context in trpc package

* Move appRouter to trpc package

* WIP Move serverClient to trpc package

Doesn't handle errors yet

* Don't use global

* Use trpc everywhere


Approved-by: Linus Flood
2025-07-01 08:49:33 +00:00
Anton Gunnarsson
01ca2b4897 Merged in feat/sw-2867-move-user-router-to-trpc-package (pull request #2428)
Move user router to trpc package

* 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

* Remove translations from My Pages navigation trpc procedure

* Move navigation router to trpc package

* Move user router to trpc package

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

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

* Merge branch 'master' into feat/sw-2865-move-navigation-router-to-trpc-package

* Merge branch 'master' into feat/sw-2865-move-navigation-router-to-trpc-package

* Merge branch 'master' into feat/sw-2865-move-navigation-router-to-trpc-package

* Merge branch 'feat/sw-2865-move-navigation-router-to-trpc-package' into feat/sw-2867-move-user-router-to-trpc-package

* Merge branch 'master' into feat/sw-2867-move-user-router-to-trpc-package


Approved-by: Linus Flood
2025-06-27 07:07:49 +00:00
Anton Gunnarsson
00bcdaaa28 Merged in feat/sw-2865-move-navigation-router-to-trpc-package (pull request #2427)
feat(SW-2862): Move navigation router to trpc package

* 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

* Remove translations from My Pages navigation trpc procedure

* Move navigation router to trpc package

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

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

* Merge branch 'master' into feat/sw-2865-move-navigation-router-to-trpc-package

* Merge branch 'master' into feat/sw-2865-move-navigation-router-to-trpc-package

* Merge branch 'master' into feat/sw-2865-move-navigation-router-to-trpc-package


Approved-by: Linus Flood
2025-06-27 06:54:49 +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
5f8ac8cdeb Merged in feat/sw-2861-move-autocomplete-router-to-trpc-package (pull request #2417)
feat(SW-2861): Move autocomplete router 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

* Move partners router to trpc package

* Move autocomplete router to trpc package

* Merge branch 'master' into feat/sw-2861-move-autocomplete-router-to-trpc-package


Approved-by: Linus Flood
2025-06-26 12:40:45 +00:00
Anton Gunnarsson
f9c719ff4b Merged in feat/sw-2866-move-partners-router-to-trpc-package (pull request #2414)
feat(sw-2866): Move partners router 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

* Move partners router to trpc package

* Merge branch 'master' into feat/sw-2866-move-partners-router-to-trpc-package


Approved-by: Linus Flood
2025-06-26 09:44:13 +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
Hrishikesh Vaipurkar
52837c3e38 Merged in fix/SW-3024-prod-logged-in-users-6pm-book- (pull request #2444)
fix: SW-3024 Fix same day booking mandatory guarantee

* fix: SW-3024 Fix same day booking mandatory guarantee


Approved-by: Arvid Norlin
2025-06-26 07:14:31 +00:00
Simon Emanuelsson
145a6d2365 feat: only show alerts when booking dates are affected 2025-06-25 11:16:20 +00:00
Christian Andolf
372fcccbf1 Merged in feat/LOY-276-sas-hero-image (pull request #2411)
feat(LOY-276): add hero image to account page

Approved-by: Erik Tiekstra
2025-06-25 09:40:47 +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
Erik Tiekstra
eb77241a4e feat(SW-2958): Removed filter to remove self-referring hreflang tag
Approved-by: Matilda Landström
2025-06-24 13:38:08 +00:00
Christian Andolf
3f6127b861 feat(LOY-276): add hero image to account page 2025-06-24 14:54:54 +02:00
Erik Tiekstra
11201e238d feat(SW-2975): Added top campaign to campaign overview page
Approved-by: Matilda Landström
2025-06-24 10:22:07 +00:00
Erik Tiekstra
bfaa3d4b65 fix(SW-2265): Removed campaign identifier from campaign page
Approved-by: Matilda Landström
2025-06-24 07:31:05 +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
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
Simon Emanuelsson
07a764211f feat: use correct description for beds in sidepeek 2025-06-16 13:43:29 +00:00
Anton Gunnarsson
9f78dd69fe Merged in fix/sw-3035-secure-sas-cookie (pull request #2363)
Add secure to SAS flow cookies

* Add secure to SAS flow cookies

* Reverse NODE_ENV check


Approved-by: Linus Flood
2025-06-16 07:35:44 +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
7a3ab92426 Merged in feat/sw-1948-point-transfer-endpoint (pull request #2353)
feat(SW-1948):Add SAS point transfer endpoint

* Add SAS point transfer endpoint


Approved-by: Joakim Jäderberg
2025-06-12 14:06:30 +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
Tobias Johansson
98983cb44a Merged in fix/SW-3018-payment-cancel-error (pull request #2339)
Fix/SW-3018 payment cancel error

* fix(SW-3018): cancel payment error when get booking in callback

* fix: wrong status code


Approved-by: Linus Flood
2025-06-11 15:22:39 +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
Linus Flood
3b9d01af9d Merged in feat/sw-3006-timeout-fetch (pull request #2335)
feat(SW-3006): added default timeout to all requests

* feat(sw-3006): added default timeout to all requests

* Fixed spreading


Approved-by: Joakim Jäderberg
2025-06-11 12:39:58 +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
Erik Tiekstra
ac953ccd97 feat(SW-1818): Refactored sysAsset handling to support PDF links
Approved-by: Matilda Landström
2025-06-09 09:28:17 +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
d63e13aff5 Merged in feat/SW-2939-update-destination-list (pull request #2295)
fix(SW-2939): update destination overview lists with Stuttgart

* fix(SW-2939): update lists


Approved-by: Erik Tiekstra
2025-06-05 07:19:49 +00:00
Michael Zetterberg
17f1a59e97 fix: sync English labels 2025-06-03 12:02:49 +02: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
Hrishikesh Vaipurkar
f9e838e77a Merged in fix/SW-2838-in-select-hotel-lang-switch- (pull request #2261)
fix: SW-2838 Use of city identifier instead of city name

* fix: SW-2838 Updated selection to city identifier instead of city name


Approved-by: Christian Andolf
Approved-by: Linus Flood
2025-06-03 07:58:00 +00:00
Joakim Jäderberg
a95ef65d02 Merged in feat/use-hash-for-graphql-cache (pull request #2251)
Feature: Use hash of query+variables for graphql cache instead of gitsha

* feature: use a hash of query+variables as part of the cache key instead of gitsha

* .

* Merge branch 'master' of bitbucket.org:scandic-swap/web into feat/use-hash-for-graphql-cache

* use correct json stringify

* merge

* remove edgeRequest in favor of request

* add more indicative logging


Approved-by: Linus Flood
2025-06-03 06:39:04 +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
Erik Tiekstra
9a868e6fe5 feat(SW-2466): Sorting destinations by country depending on language
Approved-by: Christian Andolf
Approved-by: Matilda Landström
2025-06-02 09:38:20 +00:00
Erik Tiekstra
09879d2f4a feat(SW-2134): Added support for images inside accordions
Approved-by: Matilda Landström
2025-06-02 09:37:20 +00:00
Anton Gunnarsson
b19d849b2b Merged in feat/sw-2923-link-sas-referenceid (pull request #2243)
Send SAS OTP referenceId to API

* Send SAS OTP referenceId to API

API needs the referenceId to pass along to SAS
as they use it to verify that OTP was successful.


Approved-by: Joakim Jäderberg
2025-06-02 08:01:23 +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
Erik Tiekstra
42701739a0 Merged in fix/SW-2921-countryName (pull request #2249)
fix(SW-2921): Moved countryName to attributes in locations schema

* fix(SW-2921): Moved countryName to attributes in locations schema


Approved-by: Linus Flood
2025-05-28 08:45:03 +00:00
Joakim Jäderberg
26b005d72a Merged in fix/cache-graphql-data (pull request #2248)
fix: add missing cache for cms data

* fix: cache cms data


Approved-by: Linus Flood
2025-05-28 08:28:21 +00:00