chore: format codes (#1142)

pull/1141/head
Yusuke Wada 2025-04-27 19:28:24 +09:00 committed by GitHub
parent a756d2235b
commit b9fa57530a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
18 changed files with 130 additions and 132 deletions

View File

@ -67,7 +67,7 @@ export function ajvValidator<
T,
Target extends keyof ValidationTargets,
E extends Env = Env,
P extends string = string
P extends string = string,
>(
target: Target,
schema: JSONSchemaType<T>,

View File

@ -23,7 +23,7 @@ export const arktypeValidator = <
} = {
in: HasUndefined<I> extends true ? { [K in Target]?: I } : { [K in Target]: I }
out: { [K in Target]: O }
}
},
>(
target: Target,
schema: T,

View File

@ -225,7 +225,7 @@ export function SessionProvider(props: SessionProviderProps) {
}
return updatedSession
},
} as SessionContextValue),
}) as SessionContextValue,
[session, loading, setSession]
)

View File

@ -64,7 +64,7 @@ type Hook<
E extends Env,
P extends string,
Target extends keyof ValidationTargets = keyof ValidationTargets,
O = object
O = object,
> = (
result: ({ success: true } | { success: false; errors: ValidationError[] }) & {
data: T
@ -119,19 +119,19 @@ export const classValidator = <
[K in Target]?: K extends 'json'
? In
: HasUndefined<keyof ValidationTargets[K]> extends true
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
}
: {
[K in Target]: K extends 'json'
? In
: HasUndefined<keyof ValidationTargets[K]> extends true
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
}
out: { [K in Target]: Output }
},
V extends I = I
V extends I = I,
>(
target: Target,
dataType: T,

View File

@ -32,7 +32,7 @@ export const conformValidator = <
form: { [K in keyof In]: FormTargetValue }
}
out: { form: GetSuccessSubmission<Out> }
}
},
>(
parse: F,
hook?: Hook<F, E, P>

View File

@ -19,18 +19,18 @@ export const effectValidator = <
[K in Target]?: K extends 'json'
? In
: HasUndefined<keyof ValidationTargets[K]> extends true
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
}
: {
[K in Target]: K extends 'json'
? In
: HasUndefined<keyof ValidationTargets[K]> extends true
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
? { [K2 in keyof In]?: ValidationTargets[K][K2] }
: { [K2 in keyof In]: ValidationTargets[K][K2] }
}
out: { [K in Target]: Out }
}
},
>(
target: Target,
schema: S.Schema<Type, Encoded, never>

View File

@ -35,7 +35,7 @@ export interface Emitter<EPMap extends EventPayloadMap> {
export const defineHandler = <
EPMap extends EventPayloadMap,
Key extends keyof EPMap,
E extends Env = Env
E extends Env = Env,
>(
handler: EventHandler<EPMap[Key], E>
): EventHandler<EPMap[Key], E> => {

View File

@ -162,7 +162,7 @@ export interface TwitchUserResponse {
view_count: number
email: string
created_at: string
}
},
]
}

View File

@ -44,7 +44,7 @@ const getMetricConstructor = (type: MetricOptions['type']) =>
({
counter: Counter,
histogram: Histogram,
}[type])
})[type]
export const createStandardMetrics = ({
registry,

View File

@ -9,9 +9,8 @@ import * as zodSchemas from './__schemas__/zod'
import { sValidator } from '.'
type ExtractSchema<T> = T extends Hono<infer _, infer S> ? S : never
type MergeDiscriminatedUnion<U> = UnionToIntersection<U> extends infer O
? { [K in keyof O]: O[K] }
: never
type MergeDiscriminatedUnion<U> =
UnionToIntersection<U> extends infer O ? { [K in keyof O]: O[K] } : never
const libs = ['valibot', 'zod', 'arktype'] as const
const schemasByLibrary = {

View File

@ -10,7 +10,7 @@ type Hook<
E extends Env,
P extends string,
Target extends keyof ValidationTargets = keyof ValidationTargets,
O = {}
O = {},
> = (
result: (
| { success: true; data: T }
@ -42,7 +42,7 @@ const sValidator = <
}
out: { [K in Target]: Out }
},
V extends I = I
V extends I = I,
>(
target: Target,
schema: Schema,

View File

@ -148,7 +148,7 @@ export const renderSwaggerUIOptions = (options: DistSwaggerUIOptions) => {
return ''
}
})
.filter(item => item !== '')
.filter((item) => item !== '')
.join(',')
return optionsStrings

View File

@ -68,7 +68,7 @@ export function tbValidator<
V extends {
in: { [K in Target]: Static<T> }
out: { [K in Target]: ExcludeResponseType<Static<T>> }
}
},
>(
target: Target,
schema: T,

View File

@ -11,54 +11,57 @@ interface IFailure<T> {
type BaseType<T> = T extends string
? string
: T extends number
? number
: T extends boolean
? boolean
: T extends symbol
? symbol
: T extends bigint
? bigint
: T
type Parsed<T> = T extends Record<string | number, any>
? {
[K in keyof T]-?: T[K] extends (infer U)[]
? (BaseType<U> | null | undefined)[] | undefined
: BaseType<T[K]> | null | undefined
}
: BaseType<T>
? number
: T extends boolean
? boolean
: T extends symbol
? symbol
: T extends bigint
? bigint
: T
type Parsed<T> =
T extends Record<string | number, any>
? {
[K in keyof T]-?: T[K] extends (infer U)[]
? (BaseType<U> | null | undefined)[] | undefined
: BaseType<T[K]> | null | undefined
}
: BaseType<T>
export type QueryValidation<O extends Record<string | number, any> = any> = (
input: string | URLSearchParams
) => IValidation<O>
export type QueryOutputType<T> = T extends QueryValidation<infer O> ? O : never
type QueryStringify<T> = T extends Record<string | number, any>
? {
// Suppress to split union types
[K in keyof T]: [T[K]] extends [bigint | number | boolean]
? `${T[K]}`
: T[K] extends (infer U)[]
? [U] extends [bigint | number | boolean]
? `${U}`[]
: T[K]
: T[K]
}
: T
type QueryStringify<T> =
T extends Record<string | number, any>
? {
// Suppress to split union types
[K in keyof T]: [T[K]] extends [bigint | number | boolean]
? `${T[K]}`
: T[K] extends (infer U)[]
? [U] extends [bigint | number | boolean]
? `${U}`[]
: T[K]
: T[K]
}
: T
export type HeaderValidation<O extends Record<string | number, any> = any> = (
input: Record<string, string | string[] | undefined>
) => IValidation<O>
export type HeaderOutputType<T> = T extends HeaderValidation<infer O> ? O : never
type HeaderStringify<T> = T extends Record<string | number, any>
? {
// Suppress to split union types
[K in keyof T]: [T[K]] extends [bigint | number | boolean]
? `${T[K]}`
: T[K] extends (infer U)[]
? [U] extends [bigint | number | boolean]
? `${U}`
: U
: T[K]
}
: T
type HeaderStringify<T> =
T extends Record<string | number, any>
? {
// Suppress to split union types
[K in keyof T]: [T[K]] extends [bigint | number | boolean]
? `${T[K]}`
: T[K] extends (infer U)[]
? [U] extends [bigint | number | boolean]
? `${U}`
: U
: T[K]
}
: T
export type HttpHook<T, E extends Env, P extends string, O = {}> = (
result: IValidation.ISuccess<T> | IFailure<Parsed<T>>,
@ -82,7 +85,7 @@ interface TypiaValidator {
V extends { in: { query: QueryStringify<O> }; out: { query: O } } = {
in: { query: QueryStringify<O> }
out: { query: O }
}
},
>(
target: 'query',
validate: T,
@ -97,7 +100,7 @@ interface TypiaValidator {
V extends { in: { header: HeaderStringify<O> }; out: { header: O } } = {
in: { header: HeaderStringify<O> }
out: { header: O }
}
},
>(
target: 'header',
validate: T,
@ -116,7 +119,7 @@ interface TypiaValidator {
} = {
in: { [K in Target]: O }
out: { [K in Target]: O }
}
},
>(
target: Target,
validate: T,

View File

@ -23,7 +23,7 @@ export const typiaValidator = <
} = {
in: { [K in Target]: O }
out: { [K in Target]: O }
}
},
>(
target: Target,
validate: T,

View File

@ -14,7 +14,7 @@ export type Hook<
E extends Env,
P extends string,
Target extends keyof ValidationTargets = keyof ValidationTargets,
O = {}
O = {},
> = (
result: SafeParseResult<T> & {
target: Target
@ -45,7 +45,7 @@ export const vValidator = <
}
out: { [K in Target]: Out }
},
V extends I = I
V extends I = I,
>(
target: Target,
schema: T,

View File

@ -73,7 +73,7 @@ type IsForm<T> = T extends string
type ReturnJsonOrTextOrResponse<
ContentType,
Content,
Status extends keyof StatusCodeRangeDefinitions | StatusCode
Status extends keyof StatusCodeRangeDefinitions | StatusCode,
> = ContentType extends string
? ContentType extends `application/${infer Start}json${infer _End}`
? Start extends '' | `${string}+` | `vnd.${string}+`
@ -88,8 +88,8 @@ type ReturnJsonOrTextOrResponse<
>
: never
: ContentType extends `text/plain${infer _Rest}`
? TypedResponse<Content, ExtractStatusCode<Status>, 'text'>
: Response
? TypedResponse<Content, ExtractStatusCode<Status>, 'text'>
: Response
: never
type RequestPart<R extends RouteConfig, Part extends string> = Part extends keyof R['request']
@ -101,7 +101,7 @@ type HasUndefined<T> = undefined extends T ? true : false
type InputTypeBase<
R extends RouteConfig,
Part extends string,
Type extends keyof ValidationTargets
Type extends keyof ValidationTargets,
> = R['request'] extends RequestTypes
? RequestPart<R, Part> extends ZodType
? {
@ -125,22 +125,22 @@ type InputTypeJson<R extends RouteConfig> = R['request'] extends RequestTypes
? IsJson<keyof R['request']['body']['content']> extends never
? {}
: R['request']['body']['content'][keyof R['request']['body']['content']] extends Record<
'schema',
ZodSchema<any>
>
? {
in: {
json: z.input<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
'schema',
ZodSchema<any>
>
? {
in: {
json: z.input<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
}
out: {
json: z.output<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
}
}
out: {
json: z.output<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
}
}
: {}
: {}
: {}
: {}
: {}
@ -151,22 +151,22 @@ type InputTypeForm<R extends RouteConfig> = R['request'] extends RequestTypes
? IsForm<keyof R['request']['body']['content']> extends never
? {}
: R['request']['body']['content'][keyof R['request']['body']['content']] extends Record<
'schema',
ZodSchema<any>
>
? {
in: {
form: z.input<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
'schema',
ZodSchema<any>
>
? {
in: {
form: z.input<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
}
out: {
form: z.output<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
}
}
out: {
form: z.output<
R['request']['body']['content'][keyof R['request']['body']['content']]['schema']
>
}
}
: {}
: {}
: {}
: {}
: {}
@ -249,8 +249,8 @@ type HonoInit<E extends Env> = ConstructorParameters<typeof Hono>[0] & OpenAPIHo
type AsArray<T> = T extends undefined // TODO move to utils?
? []
: T extends any[]
? T
: [T]
? T
: [T]
/**
* Like simplify but recursive
@ -265,17 +265,14 @@ export type DeepSimplify<T> = {
/**
* Helper to infer generics from {@link MiddlewareHandler}
*/
export type OfHandlerType<T extends MiddlewareHandler> = T extends MiddlewareHandler<
infer E,
infer P,
infer I
>
? {
env: E
path: P
input: I
}
: never
export type OfHandlerType<T extends MiddlewareHandler> =
T extends MiddlewareHandler<infer E, infer P, infer I>
? {
env: E
path: P
input: I
}
: never
/**
* Reduce a tuple of middleware handlers into a single
@ -285,7 +282,7 @@ export type OfHandlerType<T extends MiddlewareHandler> = T extends MiddlewareHan
export type MiddlewareToHandlerType<M extends MiddlewareHandler<any, any, any>[]> = M extends [
infer First,
infer Second,
...infer Rest
...infer Rest,
]
? First extends MiddlewareHandler<any, any, any>
? Second extends MiddlewareHandler<any, any, any>
@ -297,23 +294,22 @@ export type MiddlewareToHandlerType<M extends MiddlewareHandler<any, any, any>[]
OfHandlerType<First>['path'], // Keep path from First
OfHandlerType<First>['input'] // Keep input from First
>,
...Rest
...Rest,
]
>
: never
: never
: never
: M extends [infer Last]
? Last // Return the last remaining handler in the array
: MiddlewareHandler<Env>
? Last // Return the last remaining handler in the array
: MiddlewareHandler<Env>
type RouteMiddlewareParams<R extends RouteConfig> = OfHandlerType<
MiddlewareToHandlerType<AsArray<R['middleware']>>
>
export type RouteConfigToEnv<R extends RouteConfig> = RouteMiddlewareParams<R> extends never
? Env
: RouteMiddlewareParams<R>['env']
export type RouteConfigToEnv<R extends RouteConfig> =
RouteMiddlewareParams<R> extends never ? Env : RouteMiddlewareParams<R>['env']
export type RouteHandler<
R extends RouteConfig,
@ -324,7 +320,7 @@ export type RouteHandler<
InputTypeCookie<R> &
InputTypeForm<R> &
InputTypeJson<R>,
P extends string = ConvertPathType<R['path']>
P extends string = ConvertPathType<R['path']>,
> = Handler<
E,
P,
@ -352,7 +348,7 @@ export type RouteHook<
InputTypeCookie<R> &
InputTypeForm<R> &
InputTypeJson<R>,
P extends string = ConvertPathType<R['path']>
P extends string = ConvertPathType<R['path']>,
> = Hook<
I,
E,
@ -371,7 +367,7 @@ export type OpenAPIObjectConfigure<E extends Env, P extends string> =
export class OpenAPIHono<
E extends Env = Env,
S extends Schema = {},
BasePath extends string = '/'
BasePath extends string = '/',
> extends Hono<E, S, BasePath> {
openAPIRegistry: OpenAPIRegistry
defaultHook?: OpenAPIHonoOptions<E>['defaultHook']
@ -421,7 +417,7 @@ export class OpenAPIHono<
InputTypeCookie<R> &
InputTypeForm<R> &
InputTypeJson<R>,
P extends string = ConvertPathType<R['path']>
P extends string = ConvertPathType<R['path']>,
>(
{ middleware: routeMiddleware, hide, ...route }: R,
handler: Handler<
@ -609,7 +605,7 @@ export class OpenAPIHono<
SubPath extends string,
SubEnv extends Env,
SubSchema extends Schema,
SubBasePath extends string
SubBasePath extends string,
>(
path: SubPath,
app: Hono<SubEnv, SubSchema, SubBasePath>
@ -619,7 +615,7 @@ export class OpenAPIHono<
SubPath extends string,
SubEnv extends Env,
SubSchema extends Schema,
SubBasePath extends string
SubBasePath extends string,
>(
path: SubPath,
app?: Hono<SubEnv, SubSchema, SubBasePath>

View File

@ -8,7 +8,7 @@ export type Hook<
E extends Env,
P extends string,
Target extends keyof ValidationTargets = keyof ValidationTargets,
O = {}
O = {},
> = (
result: ({ success: true; data: T } | { success: false; error: ZodError; data: T }) & {
target: Target
@ -39,7 +39,7 @@ export const zValidator = <
}
out: { [K in Target]: Out }
},
V extends I = I
V extends I = I,
>(
target: Target,
schema: T,