/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. * * OpenCRVS is also distributed under the terms of the Civil Registration * & Healthcare Disclaimer located at http://opencrvs.org/license. * * Copyright (C) The OpenCRVS Authors located at https://github.com/opencrvs/opencrvs-core/blob/master/AUTHORS. */ import * as React from 'react' import { withTheme } from 'styled-components' import { ITheme } from '../../theme' import { IDataPoint } from '../../chart-datapoint-types' export interface ICustomizedAxisTick { x: number y: number stroke: number payload: IDataPoint totalValue: number } export const CustomizedXAxisTick = withTheme( (props: ICustomizedAxisTick & { theme: ITheme }) => { const { x, y, payload, totalValue, theme } = props return ( {payload && payload.label} {payload && `${Math.round((payload.value / totalValue) * 100)}%`} {payload && payload.value} ) } ) export const CustomizedYAxisTick = withTheme( (props: ICustomizedAxisTick & { theme: ITheme }) => { const { x, y, payload, theme } = props return ( {payload && payload.value} ) } )