Merged in chore/upgrade-next (pull request #3124)

Upgrade next@15.5.6

* chore: upgrade next@15.5.6

* chore: upgrade turborepo@2.6.1

* fix typings for scandic-web

* fix: set correct type for pages

* cleanup

* fix more route.ts typing issues

* Merge branch 'master' of bitbucket.org:scandic-swap/web into chore/upgrade-next

* explicitly import the types


Approved-by: Linus Flood
This commit is contained in:
Joakim Jäderberg
2025-11-13 07:33:56 +00:00
parent ce469bc4b4
commit dc53ab9245
64 changed files with 746 additions and 404 deletions

View File

@@ -21,8 +21,6 @@ import OneTimePasswordForm, {
import type { Lang } from "@scandic-hotels/common/constants/language"
import type { ReactNode } from "react"
import type { LangParams, PageArgs, SearchParams } from "@/types/params"
const otpError = z.enum(["invalidCode", "expiredCode"])
const intent = z.enum(["link", "unlink", "transfer"])
const searchParamsSchema = z.object({
@@ -35,10 +33,12 @@ export type OtpError = z.infer<typeof otpError>
type Intent = z.infer<typeof intent>
export default async function SASxScandicOneTimePasswordPage(
props: PageArgs<LangParams> & SearchParams
props: PageProps<"/[lang]/sas-x-scandic/otp">
) {
const params = await props.params
const searchParams = await props.searchParams
const lang = params.lang as Lang
const intl = await getIntl()
const cookieStore = await cookies()
const tokenCookie = cookieStore.get(SAS_TOKEN_STORAGE_KEY)
@@ -50,7 +50,7 @@ export default async function SASxScandicOneTimePasswordPage(
const { intent, to, error } = result.data
if (!verifyTokenValidity(tokenCookie?.value)) {
redirect(`/${params.lang}/sas-x-scandic/login?intent=${intent}`)
redirect(`/${lang}/sas-x-scandic/login?intent=${intent}`)
}
const handleOtpVerified: OnSubmitHandler = async ({ otp }) => {
@@ -65,7 +65,7 @@ export default async function SASxScandicOneTimePasswordPage(
switch (data.status) {
case "ABUSED":
return {
url: `/${params.lang}/sas-x-scandic/error?errorCode=tooManyFailedAttempts`,
url: `/${lang}/sas-x-scandic/error?errorCode=tooManyFailedAttempts`,
}
case "EXPIRED": {
const search = new URLSearchParams({
@@ -74,7 +74,7 @@ export default async function SASxScandicOneTimePasswordPage(
}).toString()
return {
url: `/${params.lang}/sas-x-scandic/otp?${search}`,
url: `/${lang}/sas-x-scandic/otp?${search}`,
}
}
case "RETRY": {
@@ -84,7 +84,7 @@ export default async function SASxScandicOneTimePasswordPage(
}).toString()
return {
url: `/${params.lang}/sas-x-scandic/otp?${search}`,
url: `/${lang}/sas-x-scandic/otp?${search}`,
}
}
case "NOTSENT":
@@ -97,11 +97,11 @@ export default async function SASxScandicOneTimePasswordPage(
switch (intent) {
case "link":
return handleLinkAccount({ lang: params.lang })
return handleLinkAccount({ lang: lang })
case "unlink":
return handleUnlinkAccount({ lang: params.lang })
return handleUnlinkAccount({ lang: lang })
case "transfer":
return handleTransferPoints({ lang: params.lang })
return handleTransferPoints({ lang: lang })
}
}