Commit Graph

50 Commits

Author SHA1 Message Date
Anton Gunnarsson
4e1cb01b84 Merged in chore/cleanup-after-trpc-migration (pull request #2457)
Chore/cleanup after trpc migration

* Clean up TODOs

* Rename REDEMPTION constant to SEARCH_TYPE_REDEMPTION

* Update dependencies

Remove unused deps from scandic-web
Add missing deps to trpc package

* Update self-referencing imports

* Remove unused variables from scandic-web env

* Fix missing graphql-tag package

* Actually fix

* Remove unused env var


Approved-by: Christian Andolf
Approved-by: Linus Flood
2025-06-30 12:08:19 +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
5c3b30ea93 Merged in fix/SW-3020-paymentInfo-tracking (pull request #2403)
fix(SW-3020): add correct paymentInfo in booking flow and ancillary flow

* fix(SW-3020): add correct paymentInfo in booking flow and ancillary flow

* fix(SW-3020): fix pr comments


Approved-by: Tobias Johansson
2025-06-24 13:38:30 +00:00
Simon Emanuelsson
2f553bb945 feat: change GLA to be more clear to the user 2025-06-18 11:43:53 +00:00
Christian Andolf
0b8e3edc15 fix: now parses phone number before submitting on edit profile and signup 2025-06-17 10:48:19 +02:00
Simon Emanuelsson
9580281421 fix: allow any type of phone number 2025-06-03 11:54:05 +00:00
Niclas Edenvin
1d733c5ca3 Merged in fix/SW-2887-complete-booking-button-always-enabled (pull request #2227)
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
2025-05-28 08:11:29 +00:00
Tobias Johansson
fe1f4b063d Merged in fix/paymentFail-event-fix (pull request #2189)
fix: infinite loop when bookingStatus isTimeout occurs

* fix: infinite loop when bookingStatus isTimeout occurs


Approved-by: Linus Flood
2025-05-22 07:33:13 +00:00
Niclas Edenvin
9e0332ba8a Merged in fix/SW-2625 (pull request #1980)
fix(SW-2625): set correct submitting status when validation fails

* fix(SW-2625): set correct submitting status when validation fails


Approved-by: Bianca Widstam
2025-05-06 12:51:41 +00:00
Michael Zetterberg
c6a0ce86df feat(SW-2605): confirmation page only valid for 1 minute for the session 2025-05-06 11:01:32 +00:00
Michael Zetterberg
b910b6a313 feat(SW-2116): Use refId instead of confirmationNumber 2025-05-05 12:26:37 +00:00
Niclas Edenvin
4191441f32 Merged in fix/submit-booking-disabled (pull request #1936)
Don't disable payment based on room forms

* Don't disable payment based on room forms


Approved-by: Arvid Norlin
Approved-by: Tobias Johansson
2025-05-05 07:55:25 +00:00
Simon Emanuelsson
91933f47cf feat: comment updates 2025-05-03 22:43:09 +02:00
Tobias Johansson
f56a1ece0f feat(SW-1255): Added loading state to submit button in enter details 2025-05-03 22:18:50 +02:00
Niclas Edenvin
fb44990777 Merged in fix/SW-2501-validation-trigger (pull request #1924)
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
2025-05-02 13:59:23 +00:00
Linus Flood
6979ac0c3b Merged in revert-pr-1925 (pull request #1927)
Revert "Feat/sw 2323 find booking (pull request #1925)"

Approved-by: Anton Gunnarsson
2025-05-02 13:05:42 +00:00
Arvid Norlin
74d37dad93 feat(SW-2116): RefId instead of confirmationNumber 2025-05-02 12:44:07 +02:00
Tobias Johansson
bf79168216 Merged in fix/SW-2462-room-availability-error (pull request #1920)
Fix/SW-2462 room availability error

* fix: added toast error when availability fails and you get redirect to select-rate

* fix: added support for showing alert when availability error happens

* fix: rename PaymentAlert -> BookingAlert


Approved-by: Erik Tiekstra
2025-05-02 08:35:29 +00:00
Niclas Edenvin
d7708b682a Merged in fix/sw-2543-toc-text (pull request #1921)
fix(SW-2543): Change terms and conditions text for flex

* fix(SW-2543): Change terms and conditions text for flex

Approved-by: Michael Zetterberg
2025-05-02 07:45:37 +00:00
Niclas Edenvin
341be43a53 Merged in fix/sw-2501-remove-continue-button-light (pull request #1892)
fix(sw-2501): remove the continue buttons on enter details

This removes the continue buttons on the enter details page.

This is only that, not the refactoring of the whole enter details page with changing to one form etc. Since I just didn’t complete that refactor today I decided to do this light variant for now.

A quick explanation is that the continue buttons are removed and instead the form is submitted (meaning saving the form data to the store) on blur on the input elements IF the form is valid. If it’s invalid we change the isComplete flag in the store to false. This will hopefully also fix a bug where you were able to submit old data if the new data is invalid.

When clicking the submit button and a room is incomplete/invalid the browser scrolls to the first invalid room.

Approved-by: Erik Tiekstra
2025-04-30 08:56:16 +00:00
Arvid Norlin
96c1912d63 Merged in fix/SW-2177 (pull request #1907)
fix: combine radiogroups on payment step

* fix: combine radiogroups on payment step


Approved-by: Christian Andolf
2025-04-29 14:08:40 +00:00
Simon Emanuelsson
ec087a3d15 feat: refactor of my stay 2025-04-28 12:40:52 +00:00
Matilda Landström
5c189da123 Merged in feat/SW-2495-card-type-tracking (pull request #1868)
fix(SW-2495): add saved card type to payment tracking

* fix(SW-2495): add saved card type to tracking


Approved-by: Michael Zetterberg
2025-04-27 14:47:04 +00:00
Chuma Mcphoy (We Ahead)
169094fc37 Merged in refactor/SW-2476-use-react-aria-radio-group-for-payment-options (pull request #1849)
Refactor(SW-2177): Use react aria RadioGroup & Radio for payment options

* fix(SW-SW-2177): enhance accessibility for payment options

* Added keyboard navigation support to payment options.
* Updated CSS to improve focus styles for payment option labels.

* refactor: use RadioGroup & Radio from react aria for payment options

* refactor(SW-2177): replace setValue and watch with useController for payment method handling

* fix(SW-2177): remove comment and use cx for styles on PaymentOption

* fix(SW-2177): Add keyboard focus indicator to payment option


Approved-by: Michael Zetterberg
Approved-by: Erik Tiekstra
2025-04-24 11:22:36 +00:00
Bianca Widstam
2f0a196b49 Merged in fix/SW-1414-tracking-gla (pull request #1837)
fix(SW-1414): add hotelId to tracking for gla

* fix(SW-1414): add hotelId to tracking for gla


Approved-by: Niclas Edenvin
2025-04-23 11:05:43 +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
8961cbd9d5 Merged in feat/SW-2322-update-booking-status-polling- (pull request #1778)
feat: SW-2322 Added handling of confirmed booking in polling

* feat: SW-2322 Added handling of confirmed booking in polling

* feat: SW-2322 Removed unnecessary startTransition


Approved-by: Michael Zetterberg
2025-04-11 13:41:19 +00:00
Bianca Widstam
c41dea4118 Merged in feat/SW-1414-guarantee-enter-details-tracking (pull request #1744)
Feat/SW-1414 guarantee enter details tracking

* feat(SW-1414): add tracking for gla enter details

* feat(SW-1414): add tracking for gla

* feat(SW-1414): add tracking for gla in enter details

* feat(SW-1414): fix pr comments

* feat(SW-1414): fix pr comment client only

* feat(SW-1414): fix pr comments

* feat(SW-1414): add tracking on load


Approved-by: Christian Andolf
2025-04-09 06:26:19 +00:00
Simon Emanuelsson
4e36fecd6e fix: initial fix of modify dates 2025-04-03 04:25:05 +00:00
Bianca Widstam
e6c9e25222 Merged in fix/my-stay-ancillaries (pull request #1663)
fix: small design fix, fix bug that redirects to planet, add translations

* fix: small design fix, fix bug that redirects to planet, add translations

* fix: if user does not have enough points, default quantitywithcard to 1

* fix: fix pr comment


Approved-by: Linus Flood
Approved-by: Matilda Landström
2025-04-01 09:05:42 +00:00
Hrishikesh Vaipurkar
03deea1102 feat: SW-2028 Updated Guarantee notification 2025-04-01 08:18:22 +00:00
Arvid Norlin
5cff2e5f36 Merged in feat/SW-1889 (pull request #1670)
Feat/SW-1889

* fix: remove download invoice from confirmation page

* feat: remove EnterDetails Accordions


Approved-by: Simon.Emanuelsson
2025-03-31 13:14:11 +00:00
Simon Emanuelsson
9d584887ad fix: add bookingCode to product 2025-03-31 13:53:29 +02:00
Simon Emanuelsson
81f579bbfe fix: publicpromotion needs to be handled differently since api use the same label for different thing 2025-03-31 09:21:54 +00:00
Simon Emanuelsson
ebaea78fb3 feat(SW-1717): rewrite select-rate to show all variants of rate-cards 2025-03-28 17:07:54 +00:00
Bianca Widstam
3c1eee88b1 Merged in feat/SW-1370/Guarantee-my-stay-ancillaries (pull request #1545)
Feat/SW-1370/Guarantee my stay ancillaries

* feat(SW-1370): guarantee for ancillaries

* feat(SW-1370): remove console log

* feat(SW-1370): add translations

* feat(SW-1370): small fix

* feat(SW-1370): fix must be guaranteed

* feat(SW-1370): fix logic and comments pr

* feat(SW-1370): fix comments pr

* feat(SW-1370): fix comments pr

* feat(SW-1370): add translation

* feat(SW-1370): add translation and fix pr comment

* feat(SW-1370): fix pr comment

* feat(SW-1370): fix encoding path refId issue

* feat(SW-1370): refactor AddAncillaryStore usage and introduce context provider

* feat(SW-1370): refactor

* feat(SW-1370): refactor ancillaries

* feat(SW-1370): fix merge


Approved-by: Simon.Emanuelsson
2025-03-21 07:29:04 +00:00
Tobias Johansson
ac493fe325 Merged in feat/SW-1149-handle-status-polling (pull request #1562)
Feat/SW-1149 handle status polling

* feat(SW-1149): move terms and conditions sections to separate component and added copy

* feat(SW-1149): Added client component to handle success callback for payment flow

* fix: check for bookingCompleted status as well

* feat(SW-1587): use alert instead of toast for showing payment errors

* fix: added enum for payment callback status

* fix: proper way of checking for multiple statuses

* fix: update schema type

* fix: use localised link to customer service

* fix: update to use enum for status strings


Approved-by: Arvid Norlin
2025-03-20 07:38:29 +00:00
Hrishikesh Vaipurkar
cb5c3bfcef feat: SW-1589 Obtain bookingCode from booking object via store 2025-03-19 11:01:56 +01:00
Hrishikesh Vaipurkar
eb2c4511c2 feat: SW-1589 Booking code booking creation 2025-03-19 09:36:34 +00:00
Linus Flood
0e0b065dd9 Merged in feat/SW-598 (pull request #1554)
feat: pass specialRequest.comment to create booking

* feat: pass specialRequest.comment to create booking


Approved-by: Simon.Emanuelsson
2025-03-18 10:43:28 +00:00
Simon Emanuelsson
1812591903 feat: add multiroom tracking to booking flow 2025-03-17 09:47:42 +01:00
Tobias Johansson
c0b543f18d Merged in feat/SW-1437-price-change-scenario (pull request #1532)
Feat/SW-1437 price change scenario

* wip price change scenario

* feat(SW-1437): added updated room prices to summary

* fix: spinner not centered on page

* fix: feedback fixes


Approved-by: Arvid Norlin
Approved-by: Simon.Emanuelsson
2025-03-14 12:39:50 +00:00
Bianca Widstam
abd401c4f4 Merged in feat/SW-1368-1369-Guarantee-late-arrival (pull request #1512)
Feat/SW-1368 1369 Guarantee late arrival

* feat(SW-1368-SW-1369): guarantee late arrival for confirmation page and my stay

* feat(SW-1368-SW-1369): guarantee late arrival updated design

* feat(SW-1368-SW-1369): add translations

* feat(SW-1368-SW-1369): add translations

* feat(SW-1368-SW-1369): fix merge with master

* feat(SW-1368-SW-1369): add translations

* feat(SW-1368-SW-1369): add redirect with refId

* feat(SW-1368-SW-1369): if booking completed redirect to confirmation page

* feat(SW-1368-SW-1369): fix comments pr

* feat(SW-1368-SW-1369): fix comments pr

* feat(SW-1368-SW-1369): fix rebase master

* feat(SW-1368-SW-1369): fix duplicate flex rate check

* feat(SW-1368-SW-1369): if any room is flex, card must be used

* feat(SW-1368-SW-1369): move callback route

* feat(SW-1368-SW-1369): top align checkbox

* feat(SW-1368-SW-1369): top align checkbox


Approved-by: Tobias Johansson
Approved-by: Niclas Edenvin
2025-03-14 10:43:14 +00:00
Tobias Johansson
ad05f792fb Merged in feat/SW-1078-rate-terms-scenarios (pull request #1500)
feat(SW-1078): mixed rate scenario

* feat(SW-1078): mixed rate scenario

* fix: change from css string modification to array join

* refactor: split out big reduce function into smaller parts

* fix: minor fixes and improvments

* fix: added room index map to localization string


Approved-by: Christian Andolf
2025-03-12 10:34:35 +00:00
Tobias Johansson
7c233ab846 Merged in feat/SW-1076-no-room-availability (pull request #1467)
Feat/SW-1076 no room availability

* fix: update booking error codes

* feat(SW-1076): handle no room availabilty on enter-details

* fix: parse to json in api mutation instead of expecting json

* fix: remove 'isComplete' state from sectionAccordion because it was not needed


Approved-by: Simon.Emanuelsson
2025-03-10 12:13:15 +00:00
Simon.Emanuelsson
c3e3fa62ec Merged in fix/allow-single-rateCode (pull request #1438)
fix: allow rates that only have either of member or public to be selectable

* fix: allow rates that only have either of member or public to be selectable


Approved-by: Michael Zetterberg
2025-03-03 08:28:55 +00:00
Simon Emanuelsson
92c5566c59 feat: add multiroom signup 2025-02-28 11:10:22 +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