127 lines
4.8 KiB
TypeScript
127 lines
4.8 KiB
TypeScript
import React, { Fragment } from 'react';
|
|
|
|
import { dataFields } from '../../config/data-fields-config';
|
|
import DataEntry from '../data-components/data-entry';
|
|
import NumericDataEntry from '../data-components/numeric-data-entry';
|
|
import SelectDataEntry from '../data-components/select-data-entry';
|
|
import Verification from '../data-components/verification';
|
|
import withCopyEdit from '../data-container';
|
|
|
|
import { CategoryViewProps } from './category-view-props';
|
|
|
|
const EnergyCategoryOptions = ["A", "B", "C", "D", "E", "F", "G"];
|
|
const BreeamRatingOptions = [
|
|
'Outstanding',
|
|
'Excellent',
|
|
'Very good',
|
|
'Good',
|
|
'Pass',
|
|
'Unclassified'
|
|
];
|
|
/**
|
|
* Sustainability view/edit section
|
|
*/
|
|
const SustainabilityView: React.FunctionComponent<CategoryViewProps> = (props) => {
|
|
return (
|
|
<Fragment>
|
|
<SelectDataEntry
|
|
title={dataFields.sust_breeam_rating.title}
|
|
slug="sust_breeam_rating"
|
|
value={props.building.sust_breeam_rating}
|
|
tooltip={dataFields.sust_breeam_rating.tooltip}
|
|
options={BreeamRatingOptions}
|
|
mode={props.mode}
|
|
copy={props.copy}
|
|
onChange={props.onChange}
|
|
/>
|
|
<Verification
|
|
slug="sust_breeam_rating"
|
|
allow_verify={props.user !== undefined && props.building.sust_breeam_rating !== null && !props.edited}
|
|
onVerify={props.onVerify}
|
|
user_verified={props.user_verified.hasOwnProperty("sust_breeam_rating")}
|
|
user_verified_as={props.user_verified.sust_breeam_rating}
|
|
verified_count={props.building.verified.sust_breeam_rating}
|
|
/>
|
|
|
|
<SelectDataEntry
|
|
title={dataFields.sust_dec.title}
|
|
slug="sust_dec"
|
|
value={props.building.sust_dec}
|
|
tooltip={dataFields.sust_dec.tooltip}
|
|
options={EnergyCategoryOptions}
|
|
mode={props.mode}
|
|
copy={props.copy}
|
|
onChange={props.onChange}
|
|
/>
|
|
<Verification
|
|
slug="sust_dec"
|
|
allow_verify={props.user !== undefined && props.building.sust_dec !== null && !props.edited}
|
|
onVerify={props.onVerify}
|
|
user_verified={props.user_verified.hasOwnProperty("sust_dec")}
|
|
user_verified_as={props.user_verified.sust_dec}
|
|
verified_count={props.building.verified.sust_dec}
|
|
/>
|
|
|
|
<SelectDataEntry
|
|
title={dataFields.sust_aggregate_estimate_epc.title}
|
|
slug="sust_aggregate_estimate_epc"
|
|
value={props.building.sust_aggregate_estimate_epc}
|
|
tooltip={dataFields.sust_aggregate_estimate_epc.tooltip}
|
|
options={EnergyCategoryOptions}
|
|
disabled={true}
|
|
mode={props.mode}
|
|
copy={props.copy}
|
|
onChange={props.onChange}
|
|
/>
|
|
|
|
<NumericDataEntry
|
|
title={dataFields.sust_retrofit_date.title}
|
|
slug="sust_retrofit_date"
|
|
value={props.building.sust_retrofit_date}
|
|
tooltip={dataFields.sust_retrofit_date.tooltip}
|
|
step={1}
|
|
min={1086}
|
|
max={new Date().getFullYear()}
|
|
mode={props.mode}
|
|
copy={props.copy}
|
|
onChange={props.onChange}
|
|
/>
|
|
<Verification
|
|
slug="sust_retrofit_date"
|
|
allow_verify={props.user !== undefined && props.building.sust_retrofit_date !== null && !props.edited}
|
|
onVerify={props.onVerify}
|
|
user_verified={props.user_verified.hasOwnProperty("sust_retrofit_date")}
|
|
user_verified_as={props.user_verified.sust_retrofit_date}
|
|
verified_count={props.building.verified.sust_retrofit_date}
|
|
/>
|
|
|
|
<NumericDataEntry
|
|
title={dataFields.sust_life_expectancy.title}
|
|
slug="sust_life_expectancy"
|
|
value={props.building.sust_life_expectancy}
|
|
step={1}
|
|
min={1}
|
|
disabled={true}
|
|
mode={props.mode}
|
|
copy={props.copy}
|
|
onChange={props.onChange}
|
|
/>
|
|
<DataEntry
|
|
title="Repairability rating for type"
|
|
slug=""
|
|
value=""
|
|
mode='view'
|
|
/>
|
|
<DataEntry
|
|
title="Adaptability within plot rating"
|
|
slug=""
|
|
value=""
|
|
mode='view'
|
|
/>
|
|
</Fragment>
|
|
);
|
|
};
|
|
const SustainabilityContainer = withCopyEdit(SustainabilityView);
|
|
|
|
export default SustainabilityContainer;
|