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
fix(SW-3194): crossvalidation for multiroom enter details
* fix(SW-3194): crossvalidation for multiroom enter details
* fix(SW-3194): use getValues
Approved-by: Hrishikesh Vaipurkar
Fix/SW-3001 select hotel booking code
* fix(SW-3001): Fixed booking code filter store to reset to default state when new search triggered, Removed state as using useState resets the value on every filter change
* fix: Route tracking parsing error in select-hotel page
* fix(SW-3001): Optimized code
Approved-by: Matilda Landström
* 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
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
fix(SW-3122): copy array before sorting since it can be immutible
* fix(SW-3122): copy array before sorting since it can be immutible
Approved-by: Matilda Landström
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
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
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
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
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(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
fix(SW-2501): validation trigger
* fix(SW-2501): validation trigger
On enter details, when submitting we want to trigger the validation for
the details forms for each room. This will display error messages for
the form fields with errors if they are not already displayed, so the
user knows which fields has errors.
Approved-by: Tobias Johansson