-
Notifications
You must be signed in to change notification settings - Fork 11
/
MinisterIssues.js
59 lines (50 loc) · 1.74 KB
/
MinisterIssues.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import React from 'react'
import { View, Page, StyleSheet, Text } from '@react-pdf/renderer'
import Footer from './Footer'
import Header from './Header'
import Title from './common/Title'
import { config } from './common/config'
import Subtext from './common/Subtext'
import SectionHeader from './common/SectionHeader'
import Field from './common/Field'
import { formatMinisterIssues } from '../helper'
import MinisterIssueActions from './MinisterIssueActions'
const styles = StyleSheet.create({
page: {
padding: 50,
paddingTop: 70,
fontFamily: config.fontFamily,
fontSize: config.normalFontSize
}
})
const MinisterIssues = ({ plan }) => (
<Page size="A4" style={styles.page}>
<Header plan={plan} />
<Title>Minister's Issues and Actions</Title>
<Subtext>
If more than one readiness criteria is provided, all such criteria must be
met before grazing may accur.
</Subtext>
{formatMinisterIssues(plan).map(ministerIssue => (
<View key={ministerIssue.id}>
<SectionHeader>
Issue Type: {ministerIssue.ministerIssueType.name}
</SectionHeader>
<Field label="Details">{ministerIssue.detail}</Field>
<Field label="Objectives">{ministerIssue.objective}</Field>
<Field label="Pastures">{ministerIssue.pastureNames}</Field>
<SectionHeader secondary>Actions</SectionHeader>
{ministerIssue.ministerIssueActions.length > 0 ? (
<MinisterIssueActions actions={ministerIssue.ministerIssueActions} />
) : (
<Subtext>No actions provided</Subtext>
)}
</View>
))}
{plan.ministerIssues.length <= 0 && (
<Text>No minister issues provided</Text>
)}
<Footer />
</Page>
)
export default MinisterIssues