fix(SW-188): more semantic name for tolang transformer function
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
import { z } from "zod"
|
import { z } from "zod"
|
||||||
|
|
||||||
import { fromUppercaseToLangEnum } from "@/server/utils"
|
import { toLang } from "@/server/utils"
|
||||||
|
|
||||||
const RatingsSchema = z
|
const RatingsSchema = z
|
||||||
.object({
|
.object({
|
||||||
@@ -423,11 +423,11 @@ export const getHotelDataSchema = z.object({
|
|||||||
type: z.string(), // No enum here but the standard return appears to be "hotels".
|
type: z.string(), // No enum here but the standard return appears to be "hotels".
|
||||||
language: z
|
language: z
|
||||||
.string()
|
.string()
|
||||||
.refine((val) => fromUppercaseToLangEnum(val) !== undefined, {
|
.refine((val) => toLang(val) !== undefined, {
|
||||||
message: "Invalid language",
|
message: "Invalid language",
|
||||||
})
|
})
|
||||||
.transform((val) => {
|
.transform((val) => {
|
||||||
const lang = fromUppercaseToLangEnum(val)
|
const lang = toLang(val)
|
||||||
if (!lang) {
|
if (!lang) {
|
||||||
throw new Error("Invalid language")
|
throw new Error("Invalid language")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,10 +28,9 @@ const toApiLangMap: { [key in Lang]: string } = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper function to convert langs in uppercase or capitalized format (e.g. the Hotel endpoint)
|
* Helper function to convert lang string to Lang enum.
|
||||||
* to to Lang enum.
|
|
||||||
*/
|
*/
|
||||||
export function fromUppercaseToLangEnum(lang: string): Lang | undefined {
|
export function toLang(lang: string): Lang | undefined {
|
||||||
const lowerCaseLang = lang.toLowerCase()
|
const lowerCaseLang = lang.toLowerCase()
|
||||||
return Object.values(Lang).find((l) => l === lowerCaseLang)
|
return Object.values(Lang).find((l) => l === lowerCaseLang)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user