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
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
fix: default page settings when invalid or missing
* fix: default page settings when invalid or missing since most pages don't have pageSettings
Approved-by: Anton Gunnarsson
feat(LOY-188): dynamic content support in content pages headers & use in DTMC employee benefits page
* feat(LOY-188): add dynamic content handling for DTMC employee benefits page header
* fix(LOY-188): change section to div in EmployeeBenefitsCallToActions component
* refactor(LOY-188): switch to ButtonLink
* refactor(LOY-188): replace enum with as const objects in DynamicContentEnum
* chore(LOY-188): change ComponentValue type exports to internal scope in DynamicContentEnum
* fix(EmployeeBenefitsCallToActions): replace div with fragment
* chore(LOY-188): update translations
Approved-by: Christian Andolf
Ending up doing some extra things:
Consolidated booking queries: We had both cancel and cancelMany, but functionally they’re the same, only one accepts an array and the other doesn’t. Didn’t see much point in keeping the single cancel as it wasn’t used anywhere. Thus, I could rename cancelMany to be the one stop method.
remove method for API now properly supports body so we don’t have to hijack the typing in certain places
* fix(SW-2508): now sending additional params to cancel api for new contract
Approved-by: Niclas Edenvin
* feat(SW-2152): Added improved meta descriptions for hotel pages
* feat(SW-2152): Added improved meta descriptions for destination pages
* feat(SW-2152): Refactoring metadata description functionality
* feat(SW-2152): Improved truncate function and added cities check to country page description
Approved-by: Michael Zetterberg
Approved-by: Matilda Landström
fix: bookingwidget - hide BW if either pageSettings or siteConfig wants to hide it
* fix: bookingwidget - hide BW if either pageSettings or siteConfig wants to hide it
* Refactor
Approved-by: Michael Zetterberg
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
Fix/destination pages cache keys
* fix(destionationpages): add tag to citydatabycityidentifier that should invalidate when publishing city
* Fixed building tag the same way and added comment why we need this extra tag
Approved-by: Erik Tiekstra
* feat(SW-1230): Changes to script to be able to reload after soft navigation
* feat(SW-1756): Added meeting package widget on content pages
Approved-by: Matilda Landström
SW-1732 Trigger SAS tier match
* Add endpoint for SAS tier match
* Add comment about future fix
* Move tier match to background request on my-pages/*
* Log result from tier match
* Clean up name etc
* Fix tier matched toast
Approved-by: Joakim Jäderberg
feat(SW-1745): Query for language switcher returns just current pathname for non-contentstack pages except for hotelreservation paths
* feat(SW-1745): Query for language switcher returns just current pathname for non-contentstack pages except for hotelreservation paths
Approved-by: Linus Flood
Move more of BookingWidget to client SW-1639
* feat: move getLocations in booking widget to client side so that it's also cached on the client reducing the blinking when switching urls (and reducing duplicate calls)
Approved-by: Linus Flood
fix(SW-1819): Batching fetch for city page urls
* fix(SW-1819): Batching fetch for city page urls
Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
feat(SW-1751): Added alert if no results are found, also implemented default location data from Contentstack
* feat(SW-1751): Added alert if no results are found, also implemented default location data from Contentstack
Approved-by: Matilda Landström