Commit Graph

60 Commits

Author SHA1 Message Date
Anton Gunnarsson
0ffb40e94b Merged in chore/sw-3145-move-footnote (pull request #2506)
chore(SW-3145): Move Footnote to design-system

* Move Footnote to design-system


Approved-by: Joakim Jäderberg
2025-07-03 08:14:18 +00:00
Bianca Widstam
481044346c Merged in fix/SW-3001-booking-codes-all-rates-default (pull request #2489)
fix(SW-3001): show booking codes rates by default

* fix(SW-3001): show booking codes rates by default

* fix(SW-3001): pr comment remove useEffect


Approved-by: Anton Gunnarsson
Approved-by: Matilda Landström
2025-07-01 10:42:56 +00:00
Bianca Widstam
86bd3fcea3 Merged in fix/SW-3117-filter-select-hotel (pull request #2475)
Fix/SW-3117 filter select hotel

* fix(SW-3117): default hotel count fix

* fix(SW-3117): default hotel count for mobile


Approved-by: Tobias Johansson
Approved-by: Matilda Landström
2025-07-01 06:33:04 +00:00
Hrishikesh Vaipurkar
a0b0ed2544 Merged in feat/SW-3072-desktop-new-button-for-see- (pull request #2408)
feat: SW-3072 Added overlay to static map on city page

* feat: SW-3072 Added overlay to static map on city page

* feat: SW-3072 Updated map link in desktop select-hotel page

* feat: SW-3072 Updated as review comments


Approved-by: Erik Tiekstra
2025-06-30 10:48:34 +00:00
Bianca Widstam
4755225bcc Merged in fix/SW-2824-map-mobile-card-hide-pin (pull request #2458)
fix(SW-2824): move pin latitude on mobile to make space for hotel card on map

* fix(SW-2824): move pin latitude on mobile to make space for hotel card on map


Approved-by: Anton Gunnarsson
2025-06-27 12:57:58 +00:00
Hrishikesh Vaipurkar
edca03decf Merged in fix/SW-2884-select-hotel-page-users-are-di (pull request #2438)
fix: SW-2884 Fixed Alternative hotels map navigation issues

* fix: SW-2884 Fixed Alternative hotels map navigation issues

* fix: SW-2884 Optmized code


Approved-by: Arvid Norlin
2025-06-27 08:05:26 +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
Bianca Widstam
46e7f33ab6 Merged in fix/SW-3083-alternative-hotels-page-not-found (pull request #2396)
fix(SW-3083): alternative hotels compare locations with cityIdentifier

* fix(SW-3083): alternative hotels compare locations with cityIdentifier

* fix(SW-3083): rename cityName

* fix(SW-3083): rename to cityIdentifier


Approved-by: Anton Gunnarsson
2025-06-19 08:08:33 +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
Christian Andolf
73884aa428 fix: restore old select selectors for label to still support the temp design select
deprecated the temp design select in favor of the new one
2025-06-13 13:07:38 +02:00
Christian Andolf
c545ed2fe2 Merged in refactor/design-system-divider (pull request #2354)
refactor: move divider to design system

Approved-by: Arvid Norlin
2025-06-13 09:38:10 +00:00
Christian Andolf
9551a629fa refactor: move divider to design system
remove not used variants and duplicate colors
2025-06-13 11:27:50 +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
Bianca Widstam
5b90e15746 Merged in fix/SW-2626-error-message-multiroom-reward (pull request #2299)
fix(SW-2626): add multiroom reward error message for mobile

* fix(SW-2626): add multiroom reward error message for mobile

* fix(SW-2626): error message to red color

* fix(SW-2626): fix errorContainer

* fix(SW-2626): fix button fullwidth

* fix(SW-2626): fix button fullwidth

* fix(SW-2626): add design

* fix(SW-2626): add new colors for checkbox

* fix(SW-2626): new color for input

* fix(SW-2626): fix pr comment

* fix(SW-2626): final ui for desktop and mobile


Approved-by: Hrishikesh Vaipurkar
2025-06-12 12:51:37 +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
Bianca Widstam
d560ac0fca Merged in fix/SW-2676-tracking-filters (pull request #2332)
fix(SW-2676):  hotel filters tracking

* fix(SW-2676):  hotel filters tracking


Approved-by: Linus Flood
2025-06-11 09:02:05 +00:00
Hrishikesh Vaipurkar
e3f4cfb738 Merged in fix/SW-2717-select-hotel-booking-codes- (pull request #2270)
fix: SW-2717 Updated filter display rules

* fix: SW-2717 Updated filter display rules

* fix: SW-2717 Fixed chip button trigger popover after next upgrade

* SW-2717 Optimised code


Approved-by: Erik Tiekstra
2025-06-05 07:14:49 +00:00
Christian Andolf
726ea44105 Merged in fix/consistent-link-colors (pull request #2245)
feat: update links default color to match design documents

Approved-by: Michael Zetterberg
2025-06-02 14:38:16 +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
Christian Andolf
b3b3704c86 feat: update links default color to match design documents 2025-06-02 15:34:40 +02: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
Christian Andolf
16efce3a43 fix(SW-2170): add outline for chip for keyboard focus
add nonmodal prop to booking code rates dropdown to ensure booking widgets stays sticky when opened
2025-05-22 16:28:58 +02:00
Bianca Widstam
3e0190d5e7 Merged in fix/SW-2676-tracking-select-hotel (pull request #2165)
Fix/SW-2676 tracking select hotel

* fix(SW-2676): add tracking select hotel

* fix(SW-2676): fix tracking text

* fix(SW-2676): create tracking function


Approved-by: Tobias Johansson
2025-05-22 11:44:47 +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
Simon Emanuelsson
c5d4895b6d feat: trigger loading states immediately upon navigation 2025-05-08 15:10:43 +02:00
Hrishikesh Vaipurkar
74a5b5748a Merged in fix/SW-2642-select-hotel-corporate-ch (pull request #2003)
fix: SW-2642 Fixed corporate chq and voucher rates city search

* fix: SW-2642 Fixed corporate chq and voucher rates city search

* fix: SW-2642 Fixed no availability alert for all hotels

* fix: SW-2642 Combined flags to suitable variable

* fix: SW-2642 Fixed map view to show prices


Approved-by: Arvid Norlin
2025-05-08 10:46:05 +00:00
Niclas Edenvin
dac8d8bce1 Merged in fix/SW-2158-map-link-focus (pull request #2006)
fix(SW-2158): focus state for map link

* fix(SW-2158): focus state for map link

The text `See map` didn't have the correct keyboard focus design. I
noticed the text used a button component, which I don't think is the
best, semantically. I removed the button component and just used text
since everything was wrapped in an a tag anyway.

* Use new space variable


Approved-by: Bianca Widstam
2025-05-08 08:38:13 +00:00
Hrishikesh Vaipurkar
402e66ab35 Merged in fix/SW-1917-mobile-booking-codes-map- (pull request #1951)
Fix: SW-1917 Displayed booking code price in map card

* Fix: SW-1917 Displayed booking code price in map card


Approved-by: Niclas Edenvin
2025-05-06 11:03:08 +00:00
Bianca Widstam
1639f1faf6 Merged in fix/SW-2535-remove-breadcrumbs-select-hotel (pull request #1968)
fix(SW-2535): remove breadcrumbs on select hotel page

* fix(SW-2535): remove breadcrumbs on select hotel page


Approved-by: Niclas Edenvin
2025-05-06 09:31:35 +00:00
Christian Andolf
d6b70edfa3 chore: replace old border-radius variables with new tokens 2025-05-05 11:11:37 +02:00
Tobias Johansson
88a1333ed1 Merged in fix/SW-2601-incorrect-availability-alert (pull request #1940)
fix: update condition when to display NoAvailabilityAlert when using booking code

* fix: update condition when to display NoAvailabilityAlert when using booking code


Approved-by: Michael Zetterberg
Approved-by: Arvid Norlin
2025-05-05 08:44:47 +00:00
Hrishikesh Vaipurkar
53b630b6d8 Merged in feat/SW-2308-family-friends-booking-rest (pull request #1916)
feat: SW-2308 FnF code restriction added

* feat: SW-2308 FnF code restriction added

* feat: 2308 Optimized code


Approved-by: Niclas Edenvin
2025-05-02 14:22:05 +00:00
Hrishikesh Vaipurkar
e6a3e5dbd8 Merged in feat/SW-2398-ui-update-for-booking-codes (pull request #1862)
feat: SW-2398 UI updates booking codes

* feat: SW-2398 UI updates booking codes

* feat: SW-2398 Rate cards UI changes

* feat: SW-2398 Optimized css with vars and chip code

* feat: SW-2398 Optimized code as review comments

* feat: SW-2398 Optimized code

* feat: SW-2398 Optimized code and mobile UX

* feat: SW-2398 Optimized code

* feat: SW-2398 Fixed UI

* feat: SW-2398 Updated animation


Approved-by: Erik Tiekstra
2025-05-02 12:36:22 +00:00
Bianca Widstam
8931fe5312 Merged in fix/SW-2438-change-to-breakfast-buffet-remove-dash (pull request #1918)
fix(SW-2438): change to breakfast buffet always and replace dash with empty string

* fix(SW-2438): change to breakfast buffet always and replace dash with empty string

* fix(SW-2438): remove none from ageOfChildren


Approved-by: Tobias Johansson
Approved-by: Matilda Landström
2025-04-30 09:46:03 +00:00
Michael Zetterberg
efb7219b6d fix: copy fixes for English labels 2025-04-30 09:37:54 +00:00
Simon Emanuelsson
d9db9f9d34 fix: public promotion with code did not make it through the check sometimes 2025-04-16 08:31:53 +02:00
Tobias Johansson
9a9789e736 Merged in feat/SW-1549-map-improvements (pull request #1783)
Feat/SW-1549 map improvements

* fix: imported new icon

* refactor: rename component and set map handling to 'greedy'

* fix: show cards for 3s after hover

* refactor: update styles and added HotelPin component

* fix: change from close to back icon

* refactor: update to only use 1 state value for active pin and card

* fix: add click handler when dialog is opened

* fix: performance fixes for the dialog carousel

* fix: added border

* fix: clear timeout on mouseenter

* fix: changed to absolute import

* fix: moved hover state into the store

* fix: renamed store actions


Approved-by: Michael Zetterberg
2025-04-15 13:23:23 +00:00
Michael Zetterberg
440e1f92df feat(SW-706): make eslint rule 'formatjs/no-literal-string-in-jsx' pass 2025-04-14 11:30:06 +00:00
Hrishikesh Vaipurkar
1c5b116ed8 Merged in feat/SW-1355-reward-night-booking-tracking (pull request #1758)
feat: SW-1355 Tracking implementation reward night booking

* feat: SW-1355 Tracking implementation reward night booking

* feat: SW-1355 Updated checks and optional params

* feat: SW-1355 Typings updated

* feat: SW-1355 Removed undefined check

* feat: SW-1355 optimized code


Approved-by: Christian Andolf
2025-04-14 11:10:03 +00:00
Hrishikesh Vaipurkar
e372b91356 Merged in feat/SW-1517-booking-codes-tracking (pull request #1745)
Feat/SW-1517 booking codes tracking

* feat: SW-1517 Updated tracking to inlcude booking code info

* feat: SW-1517 Tracking booking codes

* feat: SW-1517 booking code multiroom tracking

* feat: SW-1517 booking code tracking select-hotel map view

* feat: SW-1517 Updated to optional param

* feat: SW-1517 Optimized with map

* feat: SW-1517 Typings update

* feat: SW-1517 Replaced reduce with map and join

* feat: SW-1517 Updated typings


Approved-by: Christian Andolf
2025-04-14 07:17:40 +00:00
Chuma Mcphoy (We Ahead)
7e6abe1f03 Merged in fix/SW-2166-fix-filtercheckbox-focus-state (pull request #1765)
fix(SW-2166): enhance FilterCheckbox accessibility

* fix(SW-2166): enhance FilterCheckbox accessibility

- Added cursor pointer to the checkbox container.
- Introduced focus outline for when the checkbox is focused.
- Wrapped checkbox name in Typography component.


Approved-by: Christian Andolf
2025-04-09 09:52:56 +00:00
Matilda Landström
1239f0c662 Merged in feat/SW-1711-SW-2077-icons (pull request #1709)
Fix(SW-1711)/(SW-2077): Export icons individually

* fix(SW-1711): export icons individually


Approved-by: Michael Zetterberg
Approved-by: Erik Tiekstra
2025-04-07 07:25:25 +00:00
Bianca Widstam
83aedd7dbb Merged in fix/SW-1491-SW-1500-link-in-hotel-card-to-map (pull request #1707)
fix(SW-1491-SW-1500): address on hotel card should go to map, remove link on maplisting view

* fix(SW-1491-SW-1500): address on hotel card should go to map, remove link on maplisting view

* fix(SW-1491-SW-1500): fix comment

* fix(SW-1491-SW-1500): add underscore


Approved-by: Niclas Edenvin
2025-04-03 06:56:23 +00:00
Hrishikesh Vaipurkar
221f842552 feat: SW-2028 Removed session passing 2025-04-01 08:18:22 +00:00
Hrishikesh Vaipurkar
4f4e077859 feat: SW-2028 Updated validations at trpc query level 2025-04-01 08:18:22 +00:00
Hrishikesh Vaipurkar
eda475d64e feat: SW-2028 Points validation redemption city search 2025-04-01 08:18:21 +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
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