mirror of
https://github.com/fsolla/teqo.git
synced 2026-11-14 08:53:11 +00:00
Add wizard-municipality-suggest mode to home-search with cold-first ranking (signal → E14 → trend → E10 class → 2022 votes). Wizard municipality step now fetches suggestions when query is idle. Co-authored-by: Francisco Solla <fsolla@users.noreply.github.com>
28 lines
688 B
TypeScript
28 lines
688 B
TypeScript
import { z } from 'zod'
|
|
|
|
import { HOME_SEARCH_MIN_QUERY_LENGTH } from '@/lib/campaignHomeSearchContract'
|
|
|
|
export const HOME_SEARCH_QUERY_MAX_LENGTH = 80
|
|
|
|
const homeSearchQueryField = z
|
|
.string()
|
|
.trim()
|
|
.min(HOME_SEARCH_MIN_QUERY_LENGTH, 'Digite pelo menos 2 caracteres.')
|
|
.max(HOME_SEARCH_QUERY_MAX_LENGTH)
|
|
|
|
export const homeSearchBodySchema = z.discriminatedUnion('mode', [
|
|
z.object({
|
|
mode: z.literal('search'),
|
|
query: homeSearchQueryField,
|
|
}),
|
|
z.object({
|
|
mode: z.literal('suggest'),
|
|
}),
|
|
z.object({
|
|
mode: z.literal('wizard-municipality'),
|
|
query: homeSearchQueryField,
|
|
}),
|
|
z.object({
|
|
mode: z.literal('wizard-municipality-suggest'),
|
|
}),
|
|
])
|