UNPKG

4.53 kBSource Map (JSON)View Raw
1{"version":3,"sources":["tabs/TabContent.js"],"names":["TabContent","props","ref","destroyInactiveTabPane","animated","animatedWithMargin","style","TabsContext","prefixCls","totalPanelsMap","activeKey","tabBarPosition","display","mergedStyle","setMergedStyle","classes","activeIndex","animatedStyle","getTabPanes","entries","map","key","type","child","active","rootPrefixCls","React","createElement","className","defaultProps","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA,IAAMA,UAAU,GAAG,uBAAW,SAASA,UAAT,CAAoBC,KAApB,EAA2BC,GAA3B,EAAgC;AAAA,MAClDC,sBADkD,GACcF,KADd,CAClDE,sBADkD;AAAA,MAC1BC,QAD0B,GACcH,KADd,CAC1BG,QAD0B;AAAA,MAChBC,kBADgB,GACcJ,KADd,CAChBI,kBADgB;AAAA,MACIC,KADJ,GACcL,KADd,CACIK,KADJ;;AAAA,oBAEO,uBAAWC,uBAAX,CAFP;AAAA,MAElDC,SAFkD,eAElDA,SAFkD;AAAA,MAEvCC,cAFuC,eAEvCA,cAFuC;AAAA,MAEvBC,SAFuB,eAEvBA,SAFuB;AAAA,MAEZC,cAFY,eAEZA,cAFY;;AAAA,kBAGpB,qBAAS;AAAA,WAAMP,QAAQ,sCACtDE,KADsD;AAEzDM,MAAAA,OAAO,EAAE;AAFgD,SAGxDN,KAH0C;AAAA,GAAT,CAHoB;AAAA;AAAA,MAGnDO,WAHmD;AAAA,MAGtCC,cAHsC;;AAO1D,MAAMC,OAAO,GAAG,sCAAcP,SAAd,eAAmCJ,QAAQ,aAAMI,SAAN,mCAAwCA,SAAxC,yBAA3C,CAAhB;AACA,8BAAgB,YAAM;AAClB,QAAIJ,QAAJ,EAAc;AACV,UAAMY,WAAW,GAAG,2BAAeP,cAAf,EAA+BC,SAA/B,CAApB;;AACA,UAAIM,WAAW,KAAK,CAAC,CAArB,EAAwB;AACpB,YAAMC,aAAa,GAAGZ,kBAAkB,GACpC,2BAAeW,WAAf,EAA4BL,cAA5B,CADoC,GAEpC,kCAAsB,gCAAoBK,WAApB,EAAiCL,cAAjC,CAAtB,CAFJ;AAGAG,QAAAA,cAAc,oCACPR,KADO,MAEPW,aAFO,EAAd;AAIH,OARD,MASK;AACDH,QAAAA,cAAc,oCACPR,KADO;AAEVM,UAAAA,OAAO,EAAE;AAFC,WAAd;AAIH;AACJ,KAjBD,MAkBK;AACDE,MAAAA,cAAc,CAACR,KAAD,CAAd;AACH;AACJ,GAtBD,EAsBG,CAACF,QAAD,EAAWK,cAAX,EAA2BC,SAA3B,EAAsCC,cAAtC,EAAsDL,KAAtD,CAtBH;;AAuBA,MAAMY,WAAW,GAAG,SAAdA,WAAc,GAAM;AACtB,WAAO,oCAAIT,cAAc,CAACU,OAAf,EAAJ,EAA8BC,GAA9B,CAAkC;AAAA;AAAA,UAAEC,GAAF;AAAA;;AAAA,UAASC,IAAT,QAASA,IAAT;AAAA,UAAkBC,KAAlB;AAAA,aAA+B,0BAAcD,IAAd,qCACjEC,KADiE;AAEpEF,QAAAA,GAAG,EAAHA,GAFoE;AAGpEG,QAAAA,MAAM,EAAEd,SAAS,KAAKW,GAH8C;AAIpElB,QAAAA,sBAAsB,EAAtBA,sBAJoE;AAKpEsB,QAAAA,aAAa,EAAEjB;AALqD,SAA/B;AAAA,KAAlC,CAAP;AAOH,GARD;;AASA,SAAQkB,kBAAMC,aAAN,CAAoB,KAApB,EAA2B;AAAEC,IAAAA,SAAS,EAAEb,OAAb;AAAsBT,IAAAA,KAAK,EAAEO,WAA7B;AAA0CX,IAAAA,GAAG,EAAEA;AAA/C,GAA3B,EAAiFgB,WAAW,EAA5F,CAAR;AACH,CAzCkB,CAAnB;AA0CAlB,UAAU,CAAC6B,YAAX,GAA0B;AACtBzB,EAAAA,QAAQ,EAAE;AADY,CAA1B;AAGAJ,UAAU,CAAC8B,WAAX,GAAyB,YAAzB;eACe9B,U","sourcesContent":["import React, { createElement, forwardRef, useContext, useLayoutEffect, useState, } from 'react';\nimport classnames from 'classnames';\nimport { getActiveIndex, getMarginStyle, getTransformByIndex, getTransformPropValue } from './utils';\nimport TabsContext from './TabsContext';\nconst TabContent = forwardRef(function TabContent(props, ref) {\n const { destroyInactiveTabPane, animated, animatedWithMargin, style } = props;\n const { prefixCls, totalPanelsMap, activeKey, tabBarPosition } = useContext(TabsContext);\n const [mergedStyle, setMergedStyle] = useState(() => animated ? ({\n ...style,\n display: 'none',\n }) : style);\n const classes = classnames(`${prefixCls}-content`, animated ? `${prefixCls}-content-animated` : `${prefixCls}-content-no-animated`);\n useLayoutEffect(() => {\n if (animated) {\n const activeIndex = getActiveIndex(totalPanelsMap, activeKey);\n if (activeIndex !== -1) {\n const animatedStyle = animatedWithMargin ?\n getMarginStyle(activeIndex, tabBarPosition) :\n getTransformPropValue(getTransformByIndex(activeIndex, tabBarPosition));\n setMergedStyle({\n ...style,\n ...animatedStyle,\n });\n }\n else {\n setMergedStyle({\n ...style,\n display: 'none',\n });\n }\n }\n else {\n setMergedStyle(style);\n }\n }, [animated, totalPanelsMap, activeKey, tabBarPosition, style]);\n const getTabPanes = () => {\n return [...totalPanelsMap.entries()].map(([key, { type, ...child }]) => createElement(type, {\n ...child,\n key,\n active: activeKey === key,\n destroyInactiveTabPane,\n rootPrefixCls: prefixCls,\n }));\n };\n return (React.createElement(\"div\", { className: classes, style: mergedStyle, ref: ref }, getTabPanes()));\n});\nTabContent.defaultProps = {\n animated: true,\n};\nTabContent.displayName = 'TabContent';\nexport default TabContent;\n"],"file":"TabContent.js"}
\No newline at end of file