Sha256: 3f86409f620315201f15b433fd39e3260e9af2df236cf42dc96a79678cc9d5bf

Contents?: true

Size: 1.02 KB

Versions: 193

Compression:

Stored size: 1.02 KB

Contents

import classnames from 'classnames'
import React, { useContext } from 'react'
import AnimateHeight from 'react-animate-height'
import { buildCss } from '../../utilities/props'
import { globalProps } from '../../utilities/globalProps'

import CollapsibleContext from '../context'

export type CollapsibleContentProps = {
  children?: React.ReactNode[] | React.ReactNode | string,
  className?: string,
  padding?: string,
}

const CollapsibleContent = ({
  children,
  className,
  padding = 'md',
  ...props
}: CollapsibleContentProps) => {
  const context: {[key: string]: boolean | string} = useContext(CollapsibleContext)
  const contentCSS = buildCss('pb_collapsible_content_kit')
  const contentSpacing = globalProps(props, { padding })

  return (
    <AnimateHeight
        duration={400}
        height={context.collapsed ? 0 : 'auto'}
        id="bottom-section"
    >
      <div className={classnames(contentCSS, className, contentSpacing)}>
        {children}
      </div>
    </AnimateHeight>
  )
}

export default CollapsibleContent

Version data entries

193 entries across 193 versions & 1 rubygems

Version Path
playbook_ui-12.30.1.pre.alpha.PLAY906multilevelselectedidsprop916 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.30.1.pre.alpha.hovertesting914 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.30.1.pre.alpha.PLAY906multilevelselectedidsprop912 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.30.1.pre.alpha.PLAY802responsivetitlekit909 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.30.0.pre.alpha.PLAY906multilevelselectedidsprop902 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.30.1 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.30.0 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.29.0.pre.alpha.play716popoverkitcloseonclickissue893 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.29.0 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0.pre.alpha.PLAY863multilevelv2877 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0.pre.alpha.PLAY863multilevelv2876 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0.pre.alpha.PLAY814removemomentjs871 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0.pre.alpha.PLAY603datepickerquickpickinputpresetdropdown869 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0.pre.alpha.PLAY837MapCustomButton868 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0.pre.alpha.20230613implementbakesupport865 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.28.0 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.27.0.pre.alpha.expandednotworking853 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.27.0 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.26.1.pre.alpha.railsmultilevelimprovements842 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx
playbook_ui-12.26.1.pre.alpha.railsmultilevelimprovements837 app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx