# All files / Tabs Tabs.type.ts

0% Statements 0/2
100% Branches 0/0
100% Functions 0/0
0% Lines 0/2

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    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

     import * as React from 'react'
    import * as PropTypes from 'prop-types'
    import { StandardProps } from '..'
    import Panel from './components/Panel'
    import { BoxProps } from '../Box'
    import { NavigationProps } from '../Navigation'

    export interface TabsProps extends Omit<BoxProps, 'onChange'>, NavigationProps {
      value?: React.ReactText
      onChange?: (value: React.ReactText) => void
      children: React.ReactElement | React.ReactElement[]
    }

    export interface TabsPanelProps extends StandardProps {
      value?: React.ReactText
      title?: string
      children: React.ReactNode
    }

    export interface TabsType extends React.ForwardRefExoticComponent<TabsProps> {
      Panel: typeof Panel
    }

    export const TabsPropTypes = {
      value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
      onChange: PropTypes.func,
      children: PropTypes.oneOfType([
        PropTypes.element,
        // @ts-ignore
        PropTypes.arrayOf<PropTypes.Requireable<PropTypes.ReactElementLike>>(PropTypes.element)
      ]).isRequired
    }