improve AI
This commit is contained in:
parent
daf830c5ed
commit
b3a7ab40c8
7 changed files with 118 additions and 17 deletions
|
|
@ -143,16 +143,29 @@ export default function MapPage({
|
|||
});
|
||||
|
||||
const aiFilters = useAiFilters();
|
||||
|
||||
const travelTime = useTravelTime(initialTravelTime);
|
||||
|
||||
const handleAiFilterSubmit = useCallback(
|
||||
async (query: string) => {
|
||||
const result = await aiFilters.fetchAiFilters(query);
|
||||
if (result) handleSetFilters(result.filters);
|
||||
if (!result) return;
|
||||
handleSetFilters(result.filters);
|
||||
// Apply travel time filters from AI
|
||||
if (result.travelTimeFilters.length > 0) {
|
||||
const newEntries = result.travelTimeFilters.map((tt) => ({
|
||||
mode: tt.mode,
|
||||
slug: tt.slug,
|
||||
label: tt.label,
|
||||
timeRange: [tt.min ?? 0, tt.max ?? 120] as [number, number],
|
||||
useBest: false,
|
||||
}));
|
||||
travelTime.handleSetEntries(newEntries);
|
||||
}
|
||||
},
|
||||
[aiFilters.fetchAiFilters, handleSetFilters]
|
||||
[aiFilters.fetchAiFilters, handleSetFilters, travelTime.handleSetEntries]
|
||||
);
|
||||
|
||||
const travelTime = useTravelTime(initialTravelTime);
|
||||
|
||||
const handleTravelTimeSetDestination = useCallback(
|
||||
(index: number, slug: string, label: string) => {
|
||||
travelTime.handleSetDestination(index, slug, label);
|
||||
|
|
@ -499,8 +512,11 @@ export default function MapPage({
|
|||
onTravelTimeToggleBest={travelTime.handleToggleBest}
|
||||
aiFilterLoading={aiFilters.loading}
|
||||
aiFilterError={aiFilters.error}
|
||||
aiFilterErrorType={aiFilters.errorType}
|
||||
aiFilterNotes={aiFilters.notes}
|
||||
onAiFilterSubmit={handleAiFilterSubmit}
|
||||
isLoggedIn={!!user}
|
||||
onLoginRequired={onRegisterClick ?? (() => {})}
|
||||
isLicensed={user?.subscription === 'licensed'}
|
||||
onUpgradeClick={() => onNavigateTo('pricing')}
|
||||
onResetTutorial={tutorial.resetTutorial}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue