Commit Graph

596 Commits

Author SHA1 Message Date
Christian Andolf
51f71383d4 fix(SW-1273): usage of Link component
move getLang further down the render to reduce CPU cycles

swap to min-width on button to compensate larger strings

remove useless async declaration
2025-02-27 09:57:18 +01:00
Christian Andolf
85cd815968 feat(SW-1273): find my booking page with rudimentary validation and redirect 2025-02-27 09:57:17 +01:00
Anton Gunnarsson
80100e7631 Merged in monorepo-step-1 (pull request #1080)
Migrate to a monorepo setup - step 1

* Move web to subfolder /apps/scandic-web

* Yarn + transitive deps

- Move to yarn
- design-system package removed for now since yarn doesn't
support the parameter for token (ie project currently broken)
- Add missing transitive dependencies as Yarn otherwise
prevents these imports
- VS Code doesn't pick up TS path aliases unless you open
/apps/scandic-web instead of root (will be fixed with monorepo)

* Pin framer-motion to temporarily fix typing issue

https://github.com/adobe/react-spectrum/issues/7494

* Pin zod to avoid typ error

There seems to have been a breaking change in the types
returned by zod where error is now returned as undefined
instead of missing in the type. We should just handle this
but to avoid merge conflicts just pin the dependency for
now.

* Pin react-intl version

Pin version of react-intl to avoid tiny type issue where formatMessage
does not accept a generic any more. This will be fixed in a future
commit, but to avoid merge conflicts just pin for now.

* Pin typescript version

Temporarily pin version as newer versions as stricter and results in
a type error. Will be fixed in future commit after merge.

* Setup workspaces

* Add design-system as a monorepo package

* Remove unused env var DESIGN_SYSTEM_ACCESS_TOKEN

* Fix husky for monorepo setup

* Update netlify.toml

* Add lint script to root package.json

* Add stub readme

* Fix react-intl formatMessage types

* Test netlify.toml in root

* Remove root toml

* Update netlify.toml publish path

* Remove package-lock.json

* Update build for branch/preview builds


Approved-by: Linus Flood
2025-02-26 10:36:17 +00:00
Bianca Widstam
541b91e34c Merged in feat/SW-1281-ancillaries-add-flow (pull request #1399)
Feat/SW-1281 ancillaries add flow

* feat(SW-1546): update design

* feat(SW-1546): show points only if logged in

* feat(SW-1546): always show points

* feat(SW-1281): ancillary add flow initial

* feat(SW-1546): add api call

* feat(SW-1281): refactor naming and break out components

* feat(SW-1281): handle back button

* feat(SW-1281): make mobile cards clickable

* feat(SW-1281): refactor spread ancillaries

* feat(SW-1281): add deliverytimes

* feat(SW-1281): rebase master

* feat(SW-1281): add design for logged in or not

* feat(SW-1281): add design

* feat(SW-1281): add mobile design

* feat(SW-1281): fix carousel

* feat(SW-1281): show deliverytime only if ancillary has not been added

* feat(SW-1281): add design

* feat(SW-1281): add translations

* feat(SW-1281): add translations

* feat(SW-1281): add translations

* feat(SW-1281): base dates on check in date only

* feat(SW-1281): fix show correct toast when no valid data

* feat(SW-1281): hande logic if deliverytime is not required

* feat(SW-1281): fix max width for mobile

* feat(SW-1281): refactor after pr comment


Approved-by: Niclas Edenvin
Approved-by: Linus Flood
2025-02-26 07:20:45 +00:00
Tobias Johansson
27d587965a Merged in fix/SW-1604-member-price-popup (pull request #1400)
fix: dont show member price modal if user is logged in

* fix: dont show member price modal if user is logged in


Approved-by: Michael Zetterberg
2025-02-25 12:23:05 +00:00
Simon Emanuelsson
4c23700d52 feat: adjust select rate ui to latest design 2025-02-25 10:45:45 +01:00
Simon.Emanuelsson
2c72957dc6 Merged in feat/SW-966 (pull request #1361)
feat: show both prices for multiroom room 2-4 on all users

Approved-by: Michael Zetterberg
2025-02-25 09:44:21 +00:00
Simon Emanuelsson
b536c51889 feat: show both prices for multiroom room 2-4 on all users 2025-02-25 09:58:11 +01:00
Tobias Johansson
3b63223778 Merged in fix/SW-546-dob-cut-off (pull request #1403)
fix: overflow problem with dob inputs in enter details

* fix: overflow problem with dob inputs in enter details


Approved-by: Simon.Emanuelsson
2025-02-25 08:41:00 +00:00
Linus Flood
e2749f5593 Merged in feat/refactor-select-rate (pull request #1402)
Select-rate: refactor - converted RoomsContainer into a client component

* feat/select-rate - refactor and fixed duplicate key warning

* Rooms as client component

* Fixed lang in input

* It works

* Cleanup

* Cleanup

* PR fixes


Approved-by: Joakim Jäderberg
2025-02-25 08:40:36 +00:00
Arvid Norlin
cf3268bda3 Merged in feat/SW-910-membershipnumber-non-happy-path (pull request #1358)
fix(SW-910): handle MembershipFailedError

* fix(SW-910): handle MembershipFailedError


Approved-by: Tobias Johansson
2025-02-24 15:55:31 +00:00
Pontus Dreij
76cd1945c4 Merged in feat(SW-1677)-my-stay-update-contact-user (pull request #1386)
Feat(SW-1677) my stay update contact user

* feat(SW-1677): Hide membersettings that doesnt match the booking

* feat(SW-1677) Edit my stay contact details as user


Approved-by: Linus Flood
2025-02-24 11:31:19 +00:00
Niclas Edenvin
9cd648fd65 Merged in feat/sw-1513-anchoring-on-enter-details (pull request #1379)
feat(SW-1513): scroll to new section on enter details page

* feat(SW-1513): scroll to new section on enter details page


Approved-by: Simon.Emanuelsson
2025-02-21 09:13:29 +00:00
Pontus Dreij
a0286603db Merged in feat(SW-1275)-cancel-booking-my-stay (pull request #1376)
Feat(SW-1275) cancel booking my stay

* feat(SW-1276) UI implementation Desktop part 1 for MyStay

* feat(SW-1276) UI implementation Desktop part 2 for MyStay

* feat(SW-1276) UI implementation Mobile part 1 for MyStay

* refactor: move files from MyStay/MyStay to MyStay

* feat(SW-1276) Sidepeek implementation

* feat(SW-1276): Refactoring

* feat(SW-1276) UI implementation Mobile part 2 for MyStay

* feat(SW-1276): translations

* feat(SW-1276) fixed skeleton

* feat(SW-1276): Added missing translations

* feat(SW-1276) fixed translations

* feat(SW-1275) cancel modal

* feat(SW-1275): Mutate cancel booking

* feat(SW-1275) added translations

* feat(SW-1275) match current cancellationReason

* feat(SW-1275) Added modal for manage stay

* feat(SW-1275) Added missing icon

* feat(SW-1275) New Dont cancel button

* feat(SW-1275) Added preperation for Cancellation number

* feat(SW-1275): added --modal-box-shadow

* feat(SW-1718) Add to calendar

* feat(SW-1718) general add to calendar


Approved-by: Niclas Edenvin
2025-02-21 09:06:15 +00:00
Chuma Mcphoy (We Ahead)
b6bf1b3ded Merged in refactor/SW-1669-carousel-cards-shadow (pull request #1370)
Refactor(SW-1669): Carousel Cards Enhancements

* feat(SW-1669): Enhance Filters component with scroll shadows and heart icon

* feat(SW-1669): Carousel peek next card

* fix(SW-1669): carousel review comments

* feat(SW-1669): Add left scroll shadow to TabFilters component

* refactor(SW-1669): Simplify TabFilters shadow styling

* refactor(SW-1669): Adjust TabFilters shadow width

* refactor(SW-1699): Remove unused import from enter details store


Approved-by: Christian Andolf
2025-02-19 12:46:22 +00:00
Tobias Johansson
59eefb877e Merged in feat/SW-1077-enter-details-edit-room (pull request #1360)
Feat/SW-1077 enter details edit room

* feat(SW-1077): persist state when changing rooms

* fix: issue with step state when closing accordion and transition to correct room when modifying step


Approved-by: Pontus Dreij
2025-02-19 10:03:11 +00:00
Joakim Jäderberg
873183ec2f * move setLang() to a root layout
* fix: findLang only returns acceptable languages
* fix: fallback to use header x-lang if we haven't setLang yet
* fix: languageSchema, allow uppercase

Approved-by: Linus Flood
2025-02-19 09:06:37 +00:00
Linus Flood
7c0f9084b6 Merged in feat/refactor-header-footer-sitewidealert (pull request #1374)
Refactor: removed parallel routes for header, footer and sidewidealert. Langswitcher and sidewidealert now client components

* feat - removed parallel routes and made sidepeek and sitewidealerts as client components

* Langswitcher as client component

* Fixed lang switcher for current header

* Passing lang when fetching siteconfig

* Merge branch 'master' into feat/refactor-header-footer-sitewidealert

* Refactor

* Removed dead code

* Show only languages that has translation

* Refetch sitewidealert every 60 seconds

* Merge branch 'master' into feat/refactor-header-footer-sitewidealert

* Removed sidepeek parallel route from my-stay

* Added missing env.var to env.test

* Removed console.log


Approved-by: Joakim Jäderberg
2025-02-19 08:59:24 +00:00
Pontus Dreij
8616e4ab76 Merged in feat/SW-1276-implement-design (pull request #1348)
Feat/SW-1276 implement design

* feat(SW-1276) UI implementation Desktop part 1 for MyStay

* feat(SW-1276) UI implementation Desktop part 2 for MyStay

* feat(SW-1276) UI implementation Mobile part 1 for MyStay

* refactor: move files from MyStay/MyStay to MyStay

* feat(SW-1276) Sidepeek implementation

* feat(SW-1276): Refactoring

* feat(SW-1276) UI implementation Mobile part 2 for MyStay

* feat(SW-1276): translations

* feat(SW-1276) fixed skeleton

* feat(SW-1276): Added missing translations

* feat(SW-1276): Removed console log

* feat(SW-1276) fixed translations

* feat(SW-1276): Added translations

* feat(SW-1276) fix dynamic ID:s

* feat(SW-1276) removed createElement

* feat(SW-1276): Fixed build errors

* feat(SW-1276): Updated label

* feat(SW-1276): Rewrite SummaryCard


Approved-by: Niclas Edenvin
2025-02-18 14:20:54 +00:00
Bianca Widstam
29bf586cc7 Merged in feat/SW-1680-listing-ancillaries-mobile (pull request #1357)
feat(SW-1680): add carousel design for mobile

* feat(SW-1680): add carousel design for mobile

* feat(SW-1680): adjust design

* feat(SW-1680): adjust responsive design


Approved-by: Pontus Dreij
Approved-by: Simon.Emanuelsson
2025-02-18 07:28:57 +00:00
Pontus Dreij
e360f9b926 Merged in fix/SW-1329-fix-height-select-rate-card (pull request #1351)
Fix (SW-1329): Height on room card title

* Fix (SW-1329): Height on room card title


Approved-by: Bianca Widstam
2025-02-17 14:41:16 +00:00
Christian Andolf
06d861fb6f chore: add no unused vars lint rule 2025-02-17 10:43:54 +01:00
Pontus Dreij
ed9dbded5d Merged in feat/SW-1504-UI-update-breakfast-component (pull request #1284)
feat(SW-1504): Used AncillaryCard and added to breakfast choice

* feat(SW-1504): Craeted AncillaryCard and added to breakfast choice

* feat(SW-1504): Using of AncillaryCard

* feat(SW-1504) Removed unused imports

* feat(SW-1504): Added price text

* feat(SW-1504): added /night per adult

* feat(SW-1504) Removed type prop


Approved-by: Arvid Norlin
2025-02-14 15:43:14 +00:00
Simon.Emanuelsson
248473e8bf Merged in chore/refactor-booking-flow (pull request #1333)
chore: cleaning up select-rate

Approved-by: Arvid Norlin
Approved-by: Linus Flood
2025-02-14 13:51:37 +00:00
Simon Emanuelsson
051bc54e6c chore: cleaning up select-rate 2025-02-14 14:20:54 +01:00
Bianca Widstam
224a41ec74 feat/SW-1546-list-ancillaries-my-stay (pull request #1259)
Feat/SW-1546 list ancillaries my stay

* feat(SW-1546): foundation for listing ancillaries

* feat(SW-1546): foundation for listing ancillaries

* feat(SW-1546): refactor type

* feat(SW-1546): fix date format

* feat(SW-1546): refactor usestate

* feat(SW-1546): refactor typing

* feat(SW-1546): refactor types

* feat(SW-1546): responsive width on modal

* feat(SW-1546): update design

* feat(SW-1546): rebase master

* feat(SW-1546): show points only if logged in

* feat(SW-1546): always show points

* feat(SW-1546): small fix

* feat(SW-1546): remove spread object

* feat(SW-1546): fix import order


Approved-by: Simon.Emanuelsson
2025-02-14 10:37:17 +00:00
Arvid Norlin
f5e0214313 Merged in feat/confirmation-page-initial-multiroom-display (pull request #1334)
feat: initial display of linkedReservations on confirmation page

* feat: initial display of linkedReservations on confirmation page

* refactor: move notFound


Approved-by: Tobias Johansson
2025-02-14 10:05:58 +00:00
Tobias Johansson
53b6628b25 Merged in feat/SW-965-select-rate-modify-room (pull request #1326)
Feat/SW-965 select rate modify room

* feat(SW-965): added new state for modify room and smaller fixes

* feat(SW-965): update state handling of modifyRateIndex

* fix: adjust scroll animation to handle modifyRateIndex

* fix: room state logic and removed unused css class


Approved-by: Pontus Dreij
Approved-by: Arvid Norlin
2025-02-14 07:48:30 +00:00
Hrishikesh Vaipurkar
eabe45b73c Merged in feat/SW-1557-implement-booking-code-select (pull request #1304)
feat: SW-1577 Implemented booking code city search

* feat: SW-1577 Implemented booking code city search

* feat: SW-1557 Strict comparison

* feat: SW-1557 Review comments fix


Approved-by: Michael Zetterberg
Approved-by: Pontus Dreij
2025-02-13 09:24:47 +00:00
Linus Flood
019a5db549 Merged in fix/unify-gethotel-input (pull request #1319)
feat: getHotel - unify input to make sure we can use the same cache response

* feat: getHotel - unify input to make sure we can use the same cache response


Approved-by: Simon.Emanuelsson
2025-02-12 11:35:39 +00:00
Pontus Dreij
ea9d68a191 Merged in feat/SW-1540-fetch-updated-data-booking (pull request #1316)
feat(SW-1540): Fetch data from API for MyStay

* feat(SW-1540): Fetch data from API for MyStay

* feat(SW-1540): Moved myStaySkeleton

* feat(SW-1540) used memoized getBookingConfirmation instead


Approved-by: Michael Zetterberg
Approved-by: Linus Flood
2025-02-12 10:22:54 +00:00
Simon.Emanuelsson
4a06162f79 Merged in fix/rateCodes (pull request #1315)
fix: taking care of missing rateDefinitions

* fix: taking care of missing rateDefinitions


Approved-by: Linus Flood
2025-02-12 08:52:08 +00:00
Bianca Widstam
8d6f4b82f3 Merged in feat/SW-1522-select-rate-alternative-hotels (pull request #1312)
feat(SW-1522): add alternative hotel link on select rate if no availability and move alert

* feat(SW-1522): add alternative hotel link on select rate and move alert


Approved-by: Linus Flood
2025-02-12 08:46:15 +00:00
Linus Flood
a8ec845273 Merged in fix/ratecodetype-tracking-2 (pull request #1314)
fix/ratecode-tracking-fix

* fix/ratecode-tracking-fix
2025-02-12 08:38:26 +00:00
Tobias Johansson
b394d54c3f Merged in feat/enter-details-multiroom (pull request #1280)
feat(SW-1259): Enter details multiroom

* refactor: remove per-step URLs

* WIP: map multiroom data

* fix: lint errors in details page

* fix: made useEnterDetailsStore tests pass

* fix: WIP refactor enter details store

* fix: WIP enter details store update

* fix: added room index to select correct room

* fix: added logic for navigating between steps and rooms

* fix: update summary to work with store changes

* fix: added room and total price calculation

* fix: removed unused code and added test for breakfast included

* refactor: move store selectors into helpers

* refactor: session storage state for multiroom booking

* feat: update enter details accordion navigation

* fix: added room index to each form component so they select correct room

* fix: added unique id to input to handle case when multiple inputs have same name

* fix: update payment step with store changes

* fix: rebase issues

* fix: now you should only be able to go to a step if previous room is completed

* refactor: cleanup

* fix: if no availability just skip that room for now

* fix: add select-rate Summary and adjust typings


Approved-by: Arvid Norlin
2025-02-11 14:24:24 +00:00
Linus Flood
a86f0f3993 Merged in fix/nullcheck-gethotelpins (pull request #1296)
fix: getHotelPins - null check on hotelData

* fix: getHotelPins - null check on hotelData


Approved-by: Pontus Dreij
2025-02-10 15:11:39 +00:00
Pontus Dreij
c863294919 Merged in feat/SW-1055-Accordion-for-summary-bar-in-mobile-on-Select-Rate (pull request #1283)
Feat/SW-1055 Accordion for summary bar in mobile on Select Rate

* feat(SW-1055) created mobile summary for select rate

* feat(SW-1055) Added summary for mobile (accordion)


Approved-by: Tobias Johansson
2025-02-10 15:11:31 +00:00
Linus Flood
5a0edc9187 Merged in fix/hoteinfocard-pass-hotel (pull request #1295)
feat:hotel info card - pass hoteldata since we already fetching it on page level

* feat:hotel info card - pass hoteldata since we already fetching it on page level
2025-02-10 14:31:41 +00:00
Linus Flood
2522cd7752 Merged in feat/hotelinfocard-skeleton (pull request #1291)
feat: added skeleton to hotelinfo card

* feat: added skeleton to hotelinfo card


Approved-by: Simon.Emanuelsson
2025-02-10 12:49:27 +00:00
Pontus Dreij
e51950c8b2 Merged in feat/SW-1497-hide-special-needs (pull request #1285)
feat(SW-1497): Temporary hide Special requests dropdowns

* feat(SW-1497): Temporary hide Special requests dropdowns


Approved-by: Tobias Johansson
2025-02-10 08:31:43 +00:00
Pontus Dreij
cb7d7efc86 fix: Removed composes so it's easier to change from css modules if we want 2025-02-08 13:58:23 +01:00
Linus Flood
ebb007b7f0 Merged in feat/booking-flow-performance (pull request #1282)
feat: booking flow performance

* feat: booking flow performance

* Cleanup


Approved-by: Michael Zetterberg
Approved-by: Pontus Dreij
2025-02-08 10:40:42 +00:00
Pontus Dreij
fbe05eb456 Merged in feat/SW-717-multiroom-select-hotel-api (pull request #1225)
Feat/SW-717 multiroom select hotel api
2025-02-07 13:15:07 +00:00
Simon.Emanuelsson
c204532acc Merged in feat/SW-1261 (pull request #1263)
feat: only show member price when logged in

* feat: only show member price when logged in


Approved-by: Michael Zetterberg
2025-02-07 08:51:50 +00:00
Pontus Dreij
575420ca0a feat(SW-717) use of combineRoomAvailabilities in RoomsContainer 2025-02-07 08:48:45 +01:00
Pontus Dreij
08ce2bc338 feat(SW-717) fixed type error after rebase 2025-02-07 08:44:01 +01:00
Pontus Dreij
dcd45ee31d feat(SW-717) make reduce more understandable 2025-02-07 08:38:49 +01:00
Pontus Dreij
e00cea4646 feat(SW-717) use of AvailabilityEnum instead of strings 2025-02-07 08:38:47 +01:00
Pontus Dreij
7a9bfd447b feat(SW-717) Fixed bug where available rooms didn't show if there where also unavaible dublicates. 2025-02-07 08:37:57 +01:00
Pontus Dreij
d5bc2b3c57 feat(SW-717) Multiple requests if adult differ between rooms 2025-02-07 08:37:53 +01:00