import React from 'react'
import { action } from '@storybook/addon-actions'
import { text } from '@storybook/addon-knobs/react'
import FeeCard from './fee-card'

const tokenApprovalTextComponent = (
  <span key="swaps-view-quote-approve-symbol-1" className="view-quote__bold">
    ABC
  </span>
)

const containerStyle = {
  width: '300px',
}

export default {
  title: 'FeeCard',
}

export const WithAllProps = () => {
  return (
    <div style={containerStyle}>
      <FeeCard
        feeRowText={text('feeRowText', 'Network fees')}
        primaryFee={{
          fee: text('primaryFee', '1 ETH'),
          maxFee: text('primaryMaxFee', '2 ETH'),
        }}
        secondaryFee={{
          fee: text('secondaryFee', '100 USD'),
          maxFee: text('secondaryMaxFee', '200 USD'),
        }}
        onFeeCardMaxRowClick={action('Clicked max fee row link')}
        tokenApprovalTextComponent={tokenApprovalTextComponent}
        tokenApprovalSourceTokenSymbol="ABC"
        onTokenApprovalClick={action('Clicked third row link')}
        hideTokenApprovalRow={false}
      />
    </div>
  )
}

export const WithoutThirdRow = () => {
  return (
    <div style={containerStyle}>
      <FeeCard
        feeRowText={text('feeRowText', 'Network fees')}
        primaryFee={{
          fee: text('primaryFee', '1 ETH'),
          maxFee: text('primaryMaxFee', '2 ETH'),
        }}
        secondaryFee={{
          fee: text('secondaryFee', '100 USD'),
          maxFee: text('secondaryMaxFee', '200 USD'),
        }}
        onFeeCardMaxRowClick={action('Clicked max fee row link')}
        hideTokenApprovalRow
      />
    </div>
  )
}

export const WithOnlyRequiredProps = () => {
  return (
    <div style={containerStyle}>
      <FeeCard
        primaryFee={{
          fee: text('primaryFee', '1 ETH'),
          maxFee: text('primaryMaxFee', '2 ETH'),
        }}
        onFeeCardMaxRowClick={action('Clicked max fee row link')}
        hideTokenApprovalRow
      />
    </div>
  )
}
