MCPcopy
hub / github.com/TanStack/router / validateSearch

Function validateSearch

packages/router-core/src/router.ts:2985–3011  ·  view source on GitHub ↗
(validateSearch: AnyValidator, input: unknown)

Source from the content-addressed store, hash-verified

2983}
2984
2985function validateSearch(validateSearch: AnyValidator, input: unknown): unknown {
2986 if (validateSearch == null) return {}
2987
2988 if ('~standard' in validateSearch) {
2989 const result = validateSearch['~standard'].validate(input)
2990
2991 if (result instanceof Promise)
2992 throw new SearchParamError('Async validation not supported')
2993
2994 if (result.issues)
2995 throw new SearchParamError(JSON.stringify(result.issues, undefined, 2), {
2996 cause: result,
2997 })
2998
2999 return result.value
3000 }
3001
3002 if ('parse' in validateSearch) {
3003 return validateSearch.parse(input)
3004 }
3005
3006 if (typeof validateSearch === 'function') {
3007 return validateSearch(input)
3008 }
3009
3010 return {}
3011}
3012
3013/**
3014 * Build the matched route chain and extract params for a pathname.

Callers 4

matchRoutesInternalMethod · 0.70
buildMethod · 0.70
validateFunction · 0.70

Calls 1

parseMethod · 0.45

Tested by

no test coverage detected