const NonEmptyArrayFromSingleton = Schema.transform(
Schema.String,
Schema.NonEmptyArray(Schema.String),
{
decode: x => [x] as const,
encode: ([x]) => x,
},
)
const Param = Schema.Union(
Schema.NonEmptyArray(Schema.String),
NonEmptyArrayFromSingleton,
)
export const UrlParams = Schema.Struct({
param: Param,
})
const NonEmptyArrayFromSingleton = Schema.transform(
Schema.String,
Schema.NonEmptyArray(Schema.String),
{
decode: x => [x] as const,
encode: ([x]) => x,
},
)
const Param = Schema.Union(
Schema.NonEmptyArray(Schema.String),
NonEmptyArrayFromSingleton,
)
export const UrlParams = Schema.Struct({
param: Param,
})