Skip to content

Commit b7d75a0

Browse files
committed
display airac cycle validty
1 parent 6d214a5 commit b7d75a0

File tree

4 files changed

+48
-9
lines changed

4 files changed

+48
-9
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import { Tag, Tooltip } from 'antd';
2+
import styled from 'styled-components';
3+
import { useAiracData } from '../useAiracData';
4+
5+
export const AiracDataInfo = () => {
6+
const { airacData } = useAiracData();
7+
8+
const c = airacData?.cycle;
9+
10+
const isValidToday = c ? todayIsBetween(c.effectiveStart, c.effectiveEnd) : false;
11+
const color = isValidToday ? 'green' : 'red';
12+
return c ? (
13+
<Container>
14+
<span>
15+
<Tooltip
16+
title={`valide du ${c.effectiveStart.toLocaleDateString(
17+
'fr-FR',
18+
)} au ${c.effectiveEnd.toLocaleDateString('fr-FR')}`}
19+
color={color}
20+
>
21+
<Tag color={color}>
22+
{isValidToday ? '✅' : '❗️'} AIRAC {c.identifier}
23+
{!isValidToday && ' expiré'}
24+
</Tag>
25+
</Tooltip>
26+
</span>
27+
</Container>
28+
) : null;
29+
};
30+
31+
const todayIsBetween = (start: Date, end: Date) => {
32+
return start <= new Date() && new Date() <= end;
33+
};
34+
35+
const Container = styled.div`
36+
padding: 4px;
37+
`;

remix/app/fb/components/TopBar/TopBar.tsx

+3-1
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@ import { type User } from '@firebase/auth';
33
import { Avatar, Button, Dropdown, Menu } from 'antd';
44
import { useRef } from 'react';
55
import styled from 'styled-components';
6-
import { useFirebaseAuth } from '~/fb/firebase/auth/FirebaseAuthContext';
76
import { Login } from '~/fb/Login';
87
import Modal, { type ModalHandle } from '~/fb/Modal';
8+
import { useFirebaseAuth } from '~/fb/firebase/auth/FirebaseAuthContext';
99
import { useHelpPage } from '../HelpPageContext';
1010
import { SearchBar } from '../SearchBar';
1111
import { useAiracData } from '../useAiracData';
1212
import { useRoute } from '../useRoute';
13+
import { AiracDataInfo } from './AiracDataInfo';
1314

1415
export const TopBar = () => {
1516
const { user, googleSignIn, anonymousSignIn, signOut } = useFirebaseAuth();
@@ -21,6 +22,7 @@ export const TopBar = () => {
2122
<SearchBar airacData={airacData} />
2223

2324
<RightButtons>
25+
<AiracDataInfo />
2426
<AppLogo>
2527
<LogoLeft>FLIGHT</LogoLeft>
2628
<LogoRight>PLOT</LogoRight>

remix/package-lock.json

+7-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

remix/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@
8383
"sharp": "^0.30.7",
8484
"storybook": "^6.5.12",
8585
"styled-components": "^5.3.5",
86-
"ts-aerodata-france": "^0.1.12",
86+
"ts-aerodata-france": "^0.1.14",
8787
"uuid": "^9.0.0"
8888
},
8989
"devDependencies": {

0 commit comments

Comments
 (0)