Wire useDictionaries into FlightsMapStartPage loading/error states
This commit is contained in:
@@ -18,6 +18,7 @@ import { ClientOnly } from "./ClientOnly.js";
|
||||
import { FlightsMapFilter } from "./FlightsMapFilter.js";
|
||||
import { useFlightsMapSearch } from "../hooks/useFlightsMapSearch.js";
|
||||
import { useFlightsMapCalendar } from "../hooks/useFlightsMapCalendar.js";
|
||||
import { useDictionaries } from "@/shared/dictionaries/index.js";
|
||||
import { getEnv } from "@/env/index.js";
|
||||
import type {
|
||||
IFlightsMapFilterState,
|
||||
@@ -65,6 +66,12 @@ export const FlightsMapStartPage: FC = () => {
|
||||
const routeParams = useParams<{ lang: string }>();
|
||||
const lang = routeParams.lang ?? "ru";
|
||||
|
||||
const {
|
||||
dictionaries: _dictionaries,
|
||||
loading: dictionariesLoading,
|
||||
error: dictionariesError,
|
||||
} = useDictionaries(lang);
|
||||
|
||||
const [filterState, setFilterState] = useState<IFlightsMapFilterState>({
|
||||
connections: false,
|
||||
domestic: false,
|
||||
@@ -188,7 +195,7 @@ export const FlightsMapStartPage: FC = () => {
|
||||
</Suspense>
|
||||
</ClientOnly>
|
||||
|
||||
{loading && (
|
||||
{(loading || dictionariesLoading) && (
|
||||
<div
|
||||
className="flights-map-start__loader"
|
||||
aria-busy="true"
|
||||
@@ -203,7 +210,7 @@ export const FlightsMapStartPage: FC = () => {
|
||||
</div>
|
||||
)}
|
||||
|
||||
{!loading && error && (
|
||||
{!loading && !dictionariesLoading && (error || dictionariesError) && (
|
||||
<div
|
||||
className="flights-map-start__error"
|
||||
role="alert"
|
||||
@@ -213,10 +220,7 @@ export const FlightsMapStartPage: FC = () => {
|
||||
</div>
|
||||
)}
|
||||
|
||||
{!loading &&
|
||||
!error &&
|
||||
searchParams !== null &&
|
||||
routes.length === 0 && (
|
||||
{!loading && !dictionariesLoading && !error && !dictionariesError && searchParams !== null && routes.length === 0 && (
|
||||
<div
|
||||
className="flights-map-start__empty"
|
||||
data-testid="map-no-directions"
|
||||
|
||||
Reference in New Issue
Block a user