Merged in fix/phone-country-code-fix (pull request #2357)

fix: remove country code from prefilled phone input

Approved-by: Simon.Emanuelsson
This commit is contained in:
Christian Andolf
2025-06-13 11:01:40 +00:00
11 changed files with 62 additions and 45 deletions

View File

@@ -1,6 +1,5 @@
"use client"
import { zodResolver } from "@hookform/resolvers/zod"
import { parsePhoneNumberFromString } from "libphonenumber-js"
import { useCallback, useEffect, useMemo } from "react"
import { FormProvider, useForm } from "react-hook-form"
import { useIntl } from "react-intl"
@@ -14,6 +13,7 @@ import Phone from "@/components/TempDesignSystem/Form/Phone"
import Footnote from "@/components/TempDesignSystem/Text/Footnote"
import { useFormTracking } from "@/components/TrackingSDK/hooks"
import { useRoomContext } from "@/contexts/Details/Room"
import usePhoneNumberParsing from "@/hooks/usePhoneNumberParsing"
import MemberPriceModal from "../MemberPriceModal"
import JoinScandicFriendsCard from "./JoinScandicFriendsCard"
@@ -54,14 +54,11 @@ export default function Details() {
[idx, rooms]
)
const initialPhoneNumber = initialData.phoneNumber
const parsedInitialPhoneNumber = initialPhoneNumber
? parsePhoneNumberFromString(initialPhoneNumber)
: undefined
let initialPhoneNumberCC = initialData.phoneNumberCC
if (parsedInitialPhoneNumber && !initialPhoneNumberCC) {
initialPhoneNumberCC = parsedInitialPhoneNumber.country ?? ""
}
const { phoneNumber, phoneNumberCC } = usePhoneNumberParsing(
initialData.phoneNumber,
initialData.phoneNumberCC
)
const methods = useForm({
defaultValues: {
countryCode: initialData.countryCode,
@@ -70,10 +67,8 @@ export default function Details() {
join: initialData.join,
lastName: initialData.lastName,
membershipNo: initialData.membershipNo,
phoneNumber: parsedInitialPhoneNumber?.isValid()
? parsedInitialPhoneNumber.nationalNumber
: initialPhoneNumber,
phoneNumberCC: initialPhoneNumberCC,
phoneNumber,
phoneNumberCC,
specialRequest: {
comment: room.specialRequest.comment,
},

View File

@@ -1,6 +1,5 @@
"use client"
import { zodResolver } from "@hookform/resolvers/zod"
import { parsePhoneNumberFromString } from "libphonenumber-js"
import { useCallback, useEffect } from "react"
import { FormProvider, useForm } from "react-hook-form"
import { useIntl } from "react-intl"
@@ -14,6 +13,7 @@ import Phone from "@/components/TempDesignSystem/Form/Phone"
import Footnote from "@/components/TempDesignSystem/Text/Footnote"
import { useFormTracking } from "@/components/TrackingSDK/hooks"
import { useRoomContext } from "@/contexts/Details/Room"
import usePhoneNumberParsing from "@/hooks/usePhoneNumberParsing"
import MemberPriceModal from "../MemberPriceModal"
import JoinScandicFriendsCard from "./JoinScandicFriendsCard"
@@ -46,14 +46,11 @@ export default function Details({ user }: DetailsProps) {
const memberRate = "member" in room.roomRate ? room.roomRate.member : null
const initialPhoneNumber = user?.phoneNumber || initialData.phoneNumber
const parsedInitialPhoneNumber = initialPhoneNumber
? parsePhoneNumberFromString(initialPhoneNumber)
: undefined
let initialPhoneNumberCC = initialData.phoneNumberCC
if (parsedInitialPhoneNumber && !initialPhoneNumberCC) {
initialPhoneNumberCC = parsedInitialPhoneNumber.country ?? ""
}
const { phoneNumber, phoneNumberCC } = usePhoneNumberParsing(
user?.phoneNumber || initialData.phoneNumber,
initialData.phoneNumberCC
)
const methods = useForm({
defaultValues: {
countryCode: user?.address?.countryCode || initialData.countryCode,
@@ -64,10 +61,8 @@ export default function Details({ user }: DetailsProps) {
join: initialData.join,
lastName: user?.lastName || initialData.lastName,
membershipNo: initialData.membershipNo,
phoneNumber: parsedInitialPhoneNumber?.isValid()
? parsedInitialPhoneNumber.nationalNumber
: initialPhoneNumber,
phoneNumberCC: initialPhoneNumberCC,
phoneNumber,
phoneNumberCC,
zipCode: "zipCode" in initialData ? initialData.zipCode : undefined,
specialRequest: {
comment: room.specialRequest.comment,