UNPKG

@zohodesk/components

Version:

In this Package, we Provide Some Basic Components to Build Web App

57 lines (54 loc) 1.73 kB
import React from 'react'; import { AccordionItem_defaultProps } from "./props/defaultProps"; import { AccordionItem_propTypes } from "./props/propTypes"; import VelocityAnimation from "../VelocityAnimation/VelocityAnimation/VelocityAnimation"; import VelocityAnimationGroup from "../VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup"; export default function AccordionItem(props) { let { id, selectMenu, className, children, dataId, dataSelectorId, unMount, unMountItem, a11y, innerClass, equalityCheck, selectedItem } = props; unMountItem = unMountItem !== undefined ? unMountItem : unMount; let { role } = a11y; function equalityChecking() { return equalityCheck ? equalityCheck(id, selectedItem) : selectedItem == id; } function handleSelectMenu() { selectMenu(id); } return /*#__PURE__*/React.createElement("div", { className: className ? className : '', "data-id": dataId, "data-test-id": dataId, role: role, "data-selector-id": dataSelectorId }, /*#__PURE__*/React.createElement("div", { className: innerClass ? innerClass : '', onClick: handleSelectMenu }, children[0]), unMountItem ? /*#__PURE__*/React.createElement(VelocityAnimationGroup, { name: "slideDown", isActive: equalityChecking() }, children[1]) : /*#__PURE__*/React.createElement(VelocityAnimation, { name: "slideDown", isActive: equalityChecking() }, children[1])); } AccordionItem.propTypes = AccordionItem_propTypes; AccordionItem.defaultProps = AccordionItem_defaultProps; // if (__DOCS__) { // AccordionItem.docs = { // componentGroup: 'Animation', // folderName: 'Style Guide' // }; // }