Commit Graph

47 Commits

Author SHA1 Message Date
Michael Zetterberg
4432cdc245 fix: booking widget search type 2025-05-06 07:32:48 +02:00
Arvid Norlin
77c9206a94 fix: update BookingWidget type based on if hotelId is specified 2025-05-06 04:01:10 +00:00
Christian Andolf
d6b70edfa3 chore: replace old border-radius variables with new tokens 2025-05-05 11:11:37 +02:00
Joakim Jäderberg
52c99e8767 Merged in fix/SW-2457-destination-page-search-for-countries (pull request #1873)
* fix: able to search for countries on destinationpage
* fix: filter out only desired types when using autocomplete

Approved-by: Linus Flood
2025-04-29 06:19:25 +00:00
Matilda Landström
297f9cedb4 Merged in feat/SW-2467-clear-search (pull request #1857)
fix(SW-2467): Change "clear" to x in Search

* fix(SW-2467): Change clear to x

* fix(SW-2467): add aria-label


Approved-by: Erik Tiekstra
2025-04-24 14:37:46 +00:00
Joakim Jäderberg
d66a3aabdf Merged in fix/SW-2478-search-label-inverted-colors (pull request #1850)
fix: colors of the search field on <JumpTo/> had inverted behaviour

* fix: colors of the search field on <JumpTo/> had inverted behaviour


Approved-by: Linus Flood
2025-04-24 06:52:00 +00:00
Joakim Jäderberg
213bd2c561 Merged in fix/SW-2427-floating-booking-widget-fullwidth (pull request #1826)
fix: when floating booking widget is sticky let it have white background all the way out. SW-2427

* fix: when floating booking widget is sticky let it have white background all the way out.
Resolves SW-2427

* pr: move styling variants to it's own file


Approved-by: Christian Andolf
2025-04-17 08:56:24 +00:00
Joakim Jäderberg
b98d6c10c0 Merged in fix/SW-2253-consolidate-autocomplete-search (pull request #1795)
Consolidate autocomplete search SW-2253 SW-2338

* use fuse.js for fuzzy search
* Handle weird behaviour when search field loses focus on destinationPage
* Add error logging for JumpTo when no URL was provided
* Switch to use <Typography /> over <Caption />
* fix: bookingWidget search label should always be red
* fix: searchHistory can no longer add invalid items
* fix: list more hits when searching
* fix: issue when searchField value was undefined
* fix: don't show searchHistory label if no searchHistory items
* simplify skeleton for listitems in search

Approved-by: Linus Flood
2025-04-17 06:39:42 +00:00
Christian Andolf
b252c8be2d fix: booking code and reward night messages are now displayed correctly
also fixed an incorrect css value
2025-04-16 14:07:28 +02:00
Christian Andolf
27f5ca9851 fix(SW-2385): use booking widget error constants in component 2025-04-16 10:17:17 +00:00
Christian Andolf
e544feaa36 fix(SW-2385): add booking widget error messages 2025-04-16 10:17:17 +00:00
Christian Andolf
595eb575d7 fix(SW-2385): handle error messages provided from zod validation in forms client side 2025-04-16 10:17:17 +00:00
Michael Zetterberg
5860377774 feat(SW-706): enable lint rules for intl 2025-04-14 11:30:07 +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
Christian Andolf
ee72f58c33 fix: consolidate media queries to be consistent with ranges 2025-04-09 16:30:12 +02:00
Joakim Jäderberg
da07e8a458 Merged in feature/autocomplete-search (pull request #1725)
Feature/autocomplete search

* wip autocomplete search

* add skeletons to loading

* Using aumlauts/accents when searching will still give results
remove unused reducer
sort autocomplete results

* remove testcode

* Add tests for autocomplete

* cleanup tests

* use node@20

* use node 22

* use node22

* merge
fix: search button outside of viewport

* merge

* remove more unused code

* fix: error message when empty search field in booking widget

* fix: don't display empty white box when search field is empty and no searchHistory is present

* merge

* fix: set height of shimmer for search skeleton

* rename autocomplete trpc -> destinationsAutocomplete

* more accute cache key naming

* fix: able to control wether bookingwidget is visible on startPage
fix: sticky booking widget under alert

* remove unused code

* fix: skeletons
fix: error overlay on search startpage

* remove extra .nvmrc

* merge


Approved-by: Linus Flood
2025-04-09 10:43:08 +00:00
Hrishikesh Vaipurkar
73cb423c95 Merged in feat/SW-2078-update-confirmation-page-vouchers (pull request #1731)
Feat/SW-2078 update confirmation page vouchers and Corp Cheques rate

* feat: SW-2078 Tablet bookingCode ref forward issue fix

(cherry picked from commit 16a6a00fd99b6b6220a98ad74de062d67d35e1c0)

* feat: SW-2078 Display Vouchers and Cheques prices on confirmation page

(cherry picked from commit a76494de497a7d5e7641cb0036bd7055acf875c1)

* feat: SW-2078 Rebase issue fix

* feat: SW-2079 Updated rate title in terms modal

* feat: SW-2078 Optimized code

* feat: SW-2078 Removed extra tags


Approved-by: Christian Andolf
2025-04-08 07:27:40 +00:00
Linus Flood
d282437a3d Merged in fix/reward-night-booking-widget (pull request #1752)
fix: bookingwidget - use new reward night booking always

* fix: bookingwidget - use new reward night booking always


Approved-by: Joakim Jäderberg
2025-04-08 05:58:45 +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
Christian Andolf
d4f5aea31c chore: add missing type to watch 2025-04-04 09:06:42 +02:00
Christian Andolf
2a07fcf7be chore: remove locations type to opt for location in array instead, this highlights array objects 2025-04-04 09:06:42 +02:00
Christian Andolf
14f9b68365 chore: Cleanup booking widget with types and other minor issues 2025-04-04 09:06:42 +02:00
Joakim Jäderberg
3c810d67a2 Merged in feature/SW-1736-foating-booking-widget (pull request #1696)
Feature/SW-1736 floating booking widget

* feature: Add floating booking widget on start page SW-1736

* fix: Make sure we don't try to use IntersectionObserver on the server

* fix: make sure that we disconnect the intersectionobserver when dismounting

* fix: pass searchparams to floating bookingwidget


Approved-by: Michael Zetterberg
2025-04-04 06:52:37 +00:00
Hrishikesh Vaipurkar
96fd0b73e4 feat: SW-2028 Fixed review comments 2025-04-01 08:18:22 +00:00
Hrishikesh Vaipurkar
779495017e feat: SW-2028 Added reward night info in booking widget 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
Hrishikesh Vaipurkar
c5e294c7ea Merged in feat/SW-1356-reward-night-booking-2- (pull request #1559)
feat: SW-1356 Reward night bookingflow

* feat: SW-1356 Reward night bookingflow

* feat: SW-1356 Removed extra param booking call

* feat: SW-1356 Optimized as review comments

* feat: SW-1356 Schema validation updates

* feat: SW-1356 Fix after rebase

* feat: SW-1356 Optimised price.redemptions check

* feat: SW-1356 Updated Props naming


Approved-by: Arvid Norlin
2025-03-24 08:54:02 +00:00
Chuma Mcphoy (We Ahead)
85cd247f79 Merged in feat/LOY-183-Make-Other-Password-Inputs-Maskable (pull request #1569)
feat(LOY-183): Make Current & Retype Password Inputs Maskable in My Profile Edit Form

* feat(LOY-183): implement PasswordInput and PasswordToggleButton components

- Added PasswordInput component for password fields with visibility toggle.
- Introduced PasswordToggleButton for toggling password visibility.
- Updated NewPassword component to utilize the new PasswordInput.

* refactor(LOY-183): replace NewPassword component with PasswordInput


Approved-by: Christian Andolf
2025-03-21 08:15:55 +00:00
Pontus Dreij
fb321cdb13 Merged in feat(SW-1274)-modify-date-my-stay (pull request #1528)
Feat(SW-1274) modify date my stay

* feat(SW-1676): Modify guest details step 1

* feat(SW-1676) Integration to api to update guest details

* feat(SW-1676) Reuse of old modal

* feat(SW-1676) updated modify guest

* feat(SW-1676) cleanup

* feat(SW-1274) modify stay modal and datepicker

* feat(SW-1274) DatePicker from modify dates

* feat(SW-1274) Modify dates fixes and merge conflicts

* feat(SW-1274) handle modify for multiroom

* feat(SW-1274) update manage stay

* feat(SW-1274) fixed some comments

* feat(SW-1274) use Modal instead

* feat(SW-1274) fixed formatChildBedPreferences

* feat(SW-1274) removed any as prop

* feat(SW-1274) fix rebase conflicts

* feat(SW-1274) fix flicker on modify modal

* feat(SW-1274) CalendarButton

* feat(SW-1274) fixed gap variable

* feat(SW-1274) simplified code

* feat(SW-1274) Split up DatePicker on mode

* feat(SW-1274) Updated file structure for datepicker


Approved-by: Arvid Norlin
2025-03-19 13:11:03 +00:00
Joakim Jäderberg
fa63b20ed0 Merged in feature/redis (pull request #1478)
Distributed cache

* cache deleteKey now uses an options object instead of a lonely argument variable fuzzy

* merge

* remove debug logs and cleanup

* cleanup

* add fault handling

* add fault handling

* add pid when logging redis client creation

* add identifier when logging redis client creation

* cleanup

* feat: add redis-api as it's own app

* feature: use http wrapper for redis

* feat: add the possibility to fallback to unstable_cache

* Add error handling if redis cache is unresponsive

* add logging for unstable_cache

* merge

* don't cache errors

* fix: metadatabase on branchdeploys

* Handle when /en/destinations throws
add ErrorBoundary

* Add sentry-logging when ErrorBoundary catches exception

* Fix error handling for distributed cache

* cleanup code

* Added Application Insights back

* Update generateApiKeys script and remove duplicate

* Merge branch 'feature/redis' of bitbucket.org:scandic-swap/web into feature/redis

* merge


Approved-by: Linus Flood
2025-03-14 07:54:21 +00:00
Michael Zetterberg
91c36ee41c fix: clean up dictionaries 2025-03-13 08:29:48 +00:00
Linus Flood
7563db9dbc Merged in fix/intl-global-error (pull request #1510)
Fix: Error message when copy fail. Null check on localstorage. Removed Intl from global-error.tsx

* Error message if failed to copy

* Use try/catch instead


Approved-by: Joakim Jäderberg
2025-03-11 10:49:56 +00:00
Pontus Dreij
2509794d0c Merged in feat/SW-1676-modify-contact-details-my-stay-anonymous (pull request #1468)
Feat/SW-1676 modify contact details my stay anonymous

* feat(SW-1676): Modify guest details step 1

* feat(SW-1676) Integration to api to update guest details

* feat(SW-1676) Reuse of old modal

* feat(SW-1676) updated modify guest

* feat(SW-1676) cleanup

* feat(SW-1676) updated myStayReturnRoute to sessionStorage


Approved-by: Niclas Edenvin
2025-03-07 13:41:25 +00:00
Hrishikesh Vaipurkar
585cfdd684 feat: SW-1583 Optmized after rebase 2025-03-07 09:08:19 +00:00
Hrishikesh Vaipurkar
24bf96df41 feat: SW-1583 Used constants for strings 2025-03-07 09:08:19 +00:00
Hrishikesh Vaipurkar
23eaa772ea feat: SW-1583 City search Map view redemption 2025-03-07 09:08:19 +00:00
Hrishikesh Vaipurkar
51b70f3032 feat: SW-1583 Enabled reward night in booking widget 2025-03-07 09:08:18 +00:00
Chuma Mcphoy (We Ahead)
4db75057f2 Merged in feat/LOY-155-localize-language-options-in-edit-profile-form (pull request #1490)
feat(LOY-155): Localize language options in edit profile form

* feat(LOY-155): Localize language options in edit profile form

* feat(LOY-155): Capitalize first letter of localized language options


Approved-by: Christian Andolf
2025-03-06 14:57:26 +00:00
Hrishikesh Vaipurkar
7f5085f855 feat: SW-963 Optimized translation id 2025-03-06 12:41:11 +00:00
Hrishikesh Vaipurkar
0e55c6ac6d feat: SW-963 Optimized code 2025-03-06 12:41:11 +00:00
Hrishikesh Vaipurkar
c88b178392 feat: SW-963 Optimized code 2025-03-06 12:41:11 +00:00
Hrishikesh Vaipurkar
2cd1b6c72c feat: SW-963 Implemented error states and handling booking code and multiroom 2025-03-06 12:41:11 +00:00
Chuma Mcphoy (We Ahead)
8061ab63a8 Merged in feat/LOY-158-signup-with-existing-email-error-handling (pull request #1441)
Feat/LOY-158 signup with existing email error handling

* feat(LOY-158): Add handling for email conflict during signup

- Implement specific error handling for email conflict in signup form
- Add localized error message for existing email accounts across language dictionaries
- Introduce new error type `conflictError` in trpc error handling

* fix(LOY-158): revert translation changes

* fix(LOY-158): Correct Finnish translation for cancellation message


Approved-by: Christian Andolf
2025-02-27 14:30:03 +00:00
Hrishikesh Vaipurkar
a7443e5750 feat: SW-1588 No booking code search results UX 2025-02-27 13:10:04 +00:00
Hrishikesh Vaipurkar
8966e56820 feat: SW-1588 Implemented booking code select-rate 2025-02-27 13:10:04 +00: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