Skip to content
Snippets Groups Projects
Select Git revision
  • 3560db66a7eb5d9381e1fd1ae5f093c193883f56
  • dev default protected
  • renovate/cozy-realtime-5.x
  • renovate/devdependencies-(non-major)
  • renovate/copy-webpack-plugin-13.x
  • renovate/major-react-monorepo
  • renovate/couchdb-3.x
  • renovate/cozy-device-helper-3.x
  • renovate/cozy-flags-4.x
  • renovate/eslint-config-prettier-10.x
  • renovate/major-react-router-monorepo
  • renovate/major-typescript-eslint-monorepo
  • renovate/sass-loader-16.x
  • renovate/eslint-plugin-testing-library-7.x
  • renovate/cozy-scripts-8.x
  • renovate/cozy-harvest-lib-9.x
  • renovate/cozy-client-49.x
  • build-test protected
  • build-dev protected
  • lint/testing-libraby-plugin
  • build protected
  • v3.1.1
  • v3.1.0
  • v3.0.0
  • v2.8.0
  • v2.7.2
  • v2.7.1
  • v2.7.0
  • v2.6.0
  • v2.5.1
  • v2.5.0
  • v2.4.0
  • v2.3.1
  • v2.3.0
  • v2.2.2
  • v2.2.1
  • v2.2.0
  • v2.1.1
  • v2.1.0
  • v2.0.2
  • v2.0.1
41 results

DetailedConsumptionVisualizer.tsx

Blame
  • hnouts's avatar
    Hugo NOUTS authored
    3560db66
    History
    DetailedConsumptionVisualizer.tsx 1.50 KiB
    import React from 'react'
    import { translate } from 'cozy-ui/react/I18n'
    import { FluidType } from 'enum/fluid.enum'
    import { TimeStep } from 'services/dataConsumptionContracts'
    
    interface DetailedConsumptionVisualizerProps {
      fluidTypes: FluidType[]
      timeStep: TimeStep
      multiFluid: boolean
      handleClickDetails: () => void
      t: Function // translation service
    }
    const DetailedConsumptionVisualizer = ({
      fluidTypes,
      timeStep,
      multiFluid,
      handleClickDetails,
      t,
    }: DetailedConsumptionVisualizerProps) => {
      const isDetailDisplayed = () => {
        if (multiFluid) {
          return false
        } else {
          switch (fluidTypes[0]) {
            case FluidType.ELECTRICITY:
              switch (timeStep) {
                case TimeStep.YEAR:
                  return true
                case TimeStep.MONTH:
                  return true
                case TimeStep.DAY:
                  return true
                default:
                  return false
              }
            case FluidType.WATER:
            case FluidType.GAS:
              switch (timeStep) {
                case TimeStep.YEAR:
                  return true
                case TimeStep.MONTH:
                  return true
                default:
                  return false
              }
            default:
              return false
          }
        }
      }
    
      return (
        <div>
          {isDetailDisplayed() && (
            <button className="cv-button" onClick={() => handleClickDetails()}>
              {t('CONSUMPTION.DISPLAY_DETAIL')}
            </button>
          )}
        </div>
      )
    }
    
    export default translate()(DetailedConsumptionVisualizer)