{"version":3,"file":"js/8910.chunk.js","mappings":"uIAMA,SAASA,EAAaC,GAElB,MAA0B,iBAAXA,GACmB,MAA9BA,EAAOA,EAAOC,OAAS,IAP/B,SAAkBC,GACd,MAAMC,EAASC,WAAWF,GAC1B,OAAQG,MAAMF,IAAWG,SAASH,EACtC,CAKQI,CAASP,EAAOQ,UAAU,EAAGR,EAAOC,OAAS,GACrD,CACA,SAASQ,EAAYC,EAASV,GAGX,IAAXA,IAAiBU,aAAyC,EAASA,EAAQC,SAC3ED,EAAQC,MAAMC,QAAU,OAEhC,CAQA,MAAMC,EAA0B,CAC5BC,UAAW,gBACXC,YAAa,oBACbC,cAAe,sBACfC,sBAAuB,gCACvBC,sBAAuB,gCACvBC,0BAA2B,oCAC3BC,OAAQ,aACRC,iBAAkB,0BAClBC,iBAAkB,0BAClBC,qBAAsB,+BAE1B,SAASC,EAAsBC,EAAuBzB,GAClD,MAAO,CACHyB,EAAsBL,OACX,IAAXpB,GAAgByB,EAAsBJ,iBACtCrB,EAAS,GAAKyB,EAAsBF,qBACzB,SAAXvB,GAAqByB,EAAsBH,kBAE1CI,QAAQC,GAAMA,IACdC,KAAK,IACd,CAEA,MAAMC,EAAqB,CACvB,iBACA,wBACA,yBACA,WACA,YACA,mBACA,QACA,WACA,SACA,SACA,uBACA,yBACA,SAyLJ,UAvLuBC,IACnB,MAAM,eAAEC,GAAiB,EAAK,sBAAEN,EAAwB,CAAC,EAAC,uBAAEO,GAAyB,EAAI,SAAEC,EAAQ,UAAEC,EAAY,GAAE,iBAAEC,EAAkBC,MAAOC,EAAY,EAAGC,SAAUC,EAAe,IAAG,OAAEC,EAAS,OAAM,OAAExC,EAAM,qBAAEyC,EAAoB,uBAAEC,EAAsB,MAAE/B,GAAWmB,EACvQa,EAAWC,OAAOC,OAAO,CAAC,EAAGf,GACnCD,EAAmBiB,SAASC,WACjBJ,EAASI,EAAQ,IAG5B,MAAMC,GAAa,IAAAC,QAAOjD,GACpBkD,GAAiB,IAAAD,QAAO,MACxBE,GAA4B,IAAAF,UAC5BG,GAAY,IAAAH,UACZI,GAAe,IAAAJ,QAAOL,OAAOC,OAAOD,OAAOC,OAAO,CAAC,EAAGhC,GAA0BY,IAChF6B,EAA8B,oBAAXC,OACnBC,GAAuB,IAAAP,WAAOK,IAAaC,OAAOE,aAClDF,OAAOE,WAAW,4BAA4BC,SAE9CtB,EAAQoB,EAAqBG,QAAU,EAAItB,EAC3CC,EAAWkB,EAAqBG,QAAU,EAAIpB,EACpD,IAAIqB,EAAa5D,EACb6D,EAAe,UACO,iBAAfD,GAEPA,EAAa5D,EAAS,EAAI,EAAIA,EAC9B6D,EAAe,UAEV9D,EAAa6D,KAElBA,EAAwB,OAAX5D,EAAkB,EAAIA,EACnC6D,EAAe,UAEnB,MAAOC,EAAeC,IAAoB,IAAAC,UAASJ,IAC5CK,EAAUC,IAAe,IAAAF,UAASH,IAClCM,EAAgBC,IAAqB,IAAAJ,WAAS,IAC9CK,EAA0BC,IAA+B,IAAAN,UAASxC,EAAsB6B,EAAaM,QAAS3D,KAErH,IAAAuE,YAAU,KAEN9D,EAAYyC,EAAeS,QAASG,EAAc,GAGnD,KAEH,IAAAS,YAAU,KACN,GAAIvE,IAAWgD,EAAWW,SAAWT,EAAeS,QAAS,EAxFrE,SAAqBjD,EAASV,GAGX,IAAXA,IAAiBU,aAAyC,EAASA,EAAQC,SAC3ED,EAAQC,MAAMC,QAAU,GAEhC,CAmFY4D,CAAYtB,EAAeS,QAASX,EAAWW,SAE/CT,EAAeS,QAAQhD,MAAMsD,SAAW,SACxC,MAAMQ,EAAgBvB,EAAeS,QAAQe,aAC7CxB,EAAeS,QAAQhD,MAAMsD,SAAW,GAExC,MAAMU,EAAgBrC,EAAWF,EACjC,IAAIwC,EACAC,EAEAC,EADAC,EAAkB,SAEtB,MAAMC,EAA6C,SAAvBhC,EAAWW,QACjB,iBAAX3D,GAEP4E,EAAY5E,EAAS,EAAI,EAAIA,EAC7B6E,EAAgBD,GAEX7E,EAAaC,IAElB4E,EAAuB,OAAX5E,EAAkB,EAAIA,EAClC6E,EAAgBD,IAKhBA,EAAYH,EACZI,EAAgB,OAChBE,OAAkBE,GAElBD,IAEAH,EAAgBD,EAGhBA,EAAYH,GAGhB,MAAMS,EAA8B,CAChC7B,EAAaM,QAAQ7C,WACG,SAAvBkC,EAAWW,SAAsB3D,EAASgD,EAAWW,UAClDN,EAAaM,QAAQ5C,aACb,SAAXf,GAAqBA,EAASgD,EAAWW,UACtCN,EAAaM,QAAQ3C,cACP,IAAlB6D,GAAuBxB,EAAaM,QAAQ1C,sBAC1B,SAAlB4D,GAA4BxB,EAAaM,QAAQzC,sBACjD2D,EAAgB,GAAKxB,EAAaM,QAAQxC,2BAEzCO,QAAQC,GAAMA,IACdC,KAAK,KAEJuD,EAA+B3D,EAAsB6B,EAAaM,QAASkB,GAIjFd,EAAiBa,GACjBV,EAAY,UACZE,GAAmBY,GACnBV,EAA4BY,GAE5BE,aAAahC,EAAUO,SACvByB,aAAajC,EAA0BQ,SACnCqB,GAGAF,GAAwB,EAExB1B,EAAUO,QAAU0B,YAAW,KAC3BtB,EAAiBc,GACjBX,EAAYa,GACZX,EAAkBU,GAElBpC,SAAgFA,EAAuBmC,EAAc,GACtH,IAEH1B,EAA0BQ,QAAU0B,YAAW,KAC3CjB,GAAkB,GAClBE,EAA4Ba,GAG5B1E,EAAYyC,EAAeS,QAASkB,GAEpCpC,SAA4EA,EAAqBoC,EAAc,GAChHF,KAIHjC,SAAgFA,EAAuBkC,GAEvGxB,EAAUO,QAAU0B,YAAW,KAC3BtB,EAAiBc,GACjBX,EAAYa,GACZX,GAAkB,GAClBE,EAA4Ba,GAIb,SAAXnF,GAEAS,EAAYyC,EAAeS,QAASiB,GAGxCnC,SAA4EA,EAAqBmC,EAAU,GAC5GD,GAEX,CAEA,OADA3B,EAAWW,QAAU3D,EACd,KACHoF,aAAahC,EAAUO,SACvByB,aAAajC,EAA0BQ,QAAQ,CAClD,GAGF,CAAC3D,IAEJ,MAAMsF,EAAiB1C,OAAOC,OAAOD,OAAOC,OAAO,CAAC,EAAGlC,GAAQ,CAAEX,OAAQ8D,EAAeG,SAAUA,IAAatD,aAAqC,EAASA,EAAMsD,YAC/JE,GAAkBnC,IAClBsD,EAAeC,WAAa,UAAUjD,OAAcE,KAAUJ,OAE1DzB,aAAqC,EAASA,EAAM4E,cACpDD,EAAeC,WAAa,GAAG5E,EAAM4E,eAAeD,EAAeC,cAGvED,EAAeE,iBAAmBF,EAAeC,YAErD,MAAME,EAAe,CAAC,EAClB1D,IACA0D,EAAaF,WAAa,WAAWjD,OAAcE,KAAUJ,MAE7DqD,EAAaD,iBAAmBC,EAAaF,WACvB,IAAlBzB,IACA2B,EAAaC,QAAU,IAI/B,MACMC,OADuD,IAA5BhD,EAAS,eACHA,EAAS,eAA4B,IAAX3C,EACjE,OAAQ,gBAAoB,MAAO4C,OAAOC,OAAO,CAAC,EAAGF,EAAU,CAAE,cAAegD,EAAYzD,UAAW,GAAGmC,KAA4BnC,IAAavB,MAAO2E,IACtJ,gBAAoB,MAAO,CAAEpD,UAAWC,EAAkBxB,MAAO8E,EAAcG,IAAK1C,GAAkBjB,GAAW,C","sources":["webpack:///./node_modules/react-animate-height/dist/esm/index.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n// ------------------ Helpers\nfunction isNumber(n) {\n const number = parseFloat(n);\n return !isNaN(number) && isFinite(number);\n}\nfunction isPercentage(height) {\n // Percentage height\n return (typeof height === 'string' &&\n height[height.length - 1] === '%' &&\n isNumber(height.substring(0, height.length - 1)));\n}\nfunction hideContent(element, height) {\n // Check for element?.style is added cause this would fail in tests (react-test-renderer)\n // Read more here: https://github.com/Stanko/react-animate-height/issues/17\n if (height === 0 && (element === null || element === void 0 ? void 0 : element.style)) {\n element.style.display = 'none';\n }\n}\nfunction showContent(element, height) {\n // Check for element?.style is added cause this would fail in tests (react-test-renderer)\n // Read more here: https://github.com/Stanko/react-animate-height/issues/17\n if (height === 0 && (element === null || element === void 0 ? void 0 : element.style)) {\n element.style.display = '';\n }\n}\nconst ANIMATION_STATE_CLASSES = {\n animating: 'rah-animating',\n animatingUp: 'rah-animating--up',\n animatingDown: 'rah-animating--down',\n animatingToHeightZero: 'rah-animating--to-height-zero',\n animatingToHeightAuto: 'rah-animating--to-height-auto',\n animatingToHeightSpecific: 'rah-animating--to-height-specific',\n static: 'rah-static',\n staticHeightZero: 'rah-static--height-zero',\n staticHeightAuto: 'rah-static--height-auto',\n staticHeightSpecific: 'rah-static--height-specific',\n};\nfunction getStaticStateClasses(animationStateClasses, height) {\n return [\n animationStateClasses.static,\n height === 0 && animationStateClasses.staticHeightZero,\n height > 0 && animationStateClasses.staticHeightSpecific,\n height === 'auto' && animationStateClasses.staticHeightAuto,\n ]\n .filter((v) => v)\n .join(' ');\n}\n// ------------------ Component\nconst propsToOmitFromDiv = [\n 'animateOpacity',\n 'animationStateClasses',\n 'applyInlineTransitions',\n 'children',\n 'className',\n 'contentClassName',\n 'delay',\n 'duration',\n 'easing',\n 'height',\n 'onHeightAnimationEnd',\n 'onHeightAnimationStart',\n 'style',\n];\nconst AnimateHeight = (componentProps) => {\n const { animateOpacity = false, animationStateClasses = {}, applyInlineTransitions = true, children, className = '', contentClassName, delay: userDelay = 0, duration: userDuration = 500, easing = 'ease', height, onHeightAnimationEnd, onHeightAnimationStart, style, } = componentProps;\n const divProps = Object.assign({}, componentProps);\n propsToOmitFromDiv.forEach((propKey) => {\n delete divProps[propKey];\n });\n // ------------------ Initialization\n const prevHeight = useRef(height);\n const contentElement = useRef(null);\n const animationClassesTimeoutID = useRef();\n const timeoutID = useRef();\n const stateClasses = useRef(Object.assign(Object.assign({}, ANIMATION_STATE_CLASSES), animationStateClasses));\n const isBrowser = typeof window !== 'undefined';\n const prefersReducedMotion = useRef(isBrowser && window.matchMedia\n ? window.matchMedia('(prefers-reduced-motion)').matches\n : false);\n const delay = prefersReducedMotion.current ? 0 : userDelay;\n const duration = prefersReducedMotion.current ? 0 : userDuration;\n let initHeight = height;\n let initOverflow = 'visible';\n if (typeof initHeight === 'number') {\n // Reset negative height to 0\n initHeight = height < 0 ? 0 : height;\n initOverflow = 'hidden';\n }\n else if (isPercentage(initHeight)) {\n // If value is string \"0%\" make sure we convert it to number 0\n initHeight = height === '0%' ? 0 : height;\n initOverflow = 'hidden';\n }\n const [currentHeight, setCurrentHeight] = useState(initHeight);\n const [overflow, setOverflow] = useState(initOverflow);\n const [useTransitions, setUseTransitions] = useState(false);\n const [animationStateClassNames, setAnimationStateClassNames] = useState(getStaticStateClasses(stateClasses.current, height));\n // ------------------ Did mount\n useEffect(() => {\n // Hide content if height is 0 (to prevent tabbing into it)\n hideContent(contentElement.current, currentHeight);\n // This should be explicitly run only on mount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n // ------------------ Height update\n useEffect(() => {\n if (height !== prevHeight.current && contentElement.current) {\n showContent(contentElement.current, prevHeight.current);\n // Cache content height\n contentElement.current.style.overflow = 'hidden';\n const contentHeight = contentElement.current.offsetHeight;\n contentElement.current.style.overflow = '';\n // set total animation time\n const totalDuration = duration + delay;\n let newHeight;\n let timeoutHeight;\n let timeoutOverflow = 'hidden';\n let timeoutUseTransitions;\n const isCurrentHeightAuto = prevHeight.current === 'auto';\n if (typeof height === 'number') {\n // Reset negative height to 0\n newHeight = height < 0 ? 0 : height;\n timeoutHeight = newHeight;\n }\n else if (isPercentage(height)) {\n // If value is string \"0%\" make sure we convert it to number 0\n newHeight = height === '0%' ? 0 : height;\n timeoutHeight = newHeight;\n }\n else {\n // If not, animate to content height\n // and then reset to auto\n newHeight = contentHeight; // TODO solve contentHeight = 0\n timeoutHeight = 'auto';\n timeoutOverflow = undefined;\n }\n if (isCurrentHeightAuto) {\n // This is the height to be animated to\n timeoutHeight = newHeight;\n // If previous height was 'auto'\n // set starting height explicitly to be able to use transition\n newHeight = contentHeight;\n }\n // Animation classes\n const newAnimationStateClassNames = [\n stateClasses.current.animating,\n (prevHeight.current === 'auto' || height < prevHeight.current) &&\n stateClasses.current.animatingUp,\n (height === 'auto' || height > prevHeight.current) &&\n stateClasses.current.animatingDown,\n timeoutHeight === 0 && stateClasses.current.animatingToHeightZero,\n timeoutHeight === 'auto' && stateClasses.current.animatingToHeightAuto,\n timeoutHeight > 0 && stateClasses.current.animatingToHeightSpecific,\n ]\n .filter((v) => v)\n .join(' ');\n // Animation classes to be put after animation is complete\n const timeoutAnimationStateClasses = getStaticStateClasses(stateClasses.current, timeoutHeight);\n // Set starting height and animating classes\n // When animating from 'auto' we first need to set fixed height\n // that change should be animated\n setCurrentHeight(newHeight);\n setOverflow('hidden');\n setUseTransitions(!isCurrentHeightAuto);\n setAnimationStateClassNames(newAnimationStateClassNames);\n // Clear timeouts\n clearTimeout(timeoutID.current);\n clearTimeout(animationClassesTimeoutID.current);\n if (isCurrentHeightAuto) {\n // When animating from 'auto' we use a short timeout to start animation\n // after setting fixed height above\n timeoutUseTransitions = true;\n // Short timeout to allow rendering of the initial animation state first\n timeoutID.current = setTimeout(() => {\n setCurrentHeight(timeoutHeight);\n setOverflow(timeoutOverflow);\n setUseTransitions(timeoutUseTransitions);\n // ANIMATION STARTS, run a callback if it exists\n onHeightAnimationStart === null || onHeightAnimationStart === void 0 ? void 0 : onHeightAnimationStart(timeoutHeight);\n }, 50);\n // Set static classes and remove transitions when animation ends\n animationClassesTimeoutID.current = setTimeout(() => {\n setUseTransitions(false);\n setAnimationStateClassNames(timeoutAnimationStateClasses);\n // ANIMATION ENDS\n // Hide content if height is 0 (to prevent tabbing into it)\n hideContent(contentElement.current, timeoutHeight);\n // Run a callback if it exists\n onHeightAnimationEnd === null || onHeightAnimationEnd === void 0 ? void 0 : onHeightAnimationEnd(timeoutHeight);\n }, totalDuration);\n }\n else {\n // ANIMATION STARTS, run a callback if it exists\n onHeightAnimationStart === null || onHeightAnimationStart === void 0 ? void 0 : onHeightAnimationStart(newHeight);\n // Set end height, classes and remove transitions when animation is complete\n timeoutID.current = setTimeout(() => {\n setCurrentHeight(timeoutHeight);\n setOverflow(timeoutOverflow);\n setUseTransitions(false);\n setAnimationStateClassNames(timeoutAnimationStateClasses);\n // ANIMATION ENDS\n // If height is auto, don't hide the content\n // (case when element is empty, therefore height is 0)\n if (height !== 'auto') {\n // Hide content if height is 0 (to prevent tabbing into it)\n hideContent(contentElement.current, newHeight); // TODO solve newHeight = 0\n }\n // Run a callback if it exists\n onHeightAnimationEnd === null || onHeightAnimationEnd === void 0 ? void 0 : onHeightAnimationEnd(newHeight);\n }, totalDuration);\n }\n }\n prevHeight.current = height;\n return () => {\n clearTimeout(timeoutID.current);\n clearTimeout(animationClassesTimeoutID.current);\n };\n // This should be explicitly run only on height change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [height]);\n // ------------------ Render\n const componentStyle = Object.assign(Object.assign({}, style), { height: currentHeight, overflow: overflow || (style === null || style === void 0 ? void 0 : style.overflow) });\n if (useTransitions && applyInlineTransitions) {\n componentStyle.transition = `height ${duration}ms ${easing} ${delay}ms`;\n // Include transition passed through styles\n if (style === null || style === void 0 ? void 0 : style.transition) {\n componentStyle.transition = `${style.transition}, ${componentStyle.transition}`;\n }\n // Add webkit vendor prefix still used by opera, blackberry...\n componentStyle.WebkitTransition = componentStyle.transition;\n }\n const contentStyle = {};\n if (animateOpacity) {\n contentStyle.transition = `opacity ${duration}ms ${easing} ${delay}ms`;\n // Add webkit vendor prefix still used by opera, blackberry...\n contentStyle.WebkitTransition = contentStyle.transition;\n if (currentHeight === 0) {\n contentStyle.opacity = 0;\n }\n }\n // Check if user passed aria-hidden prop\n const hasAriaHiddenProp = typeof divProps['aria-hidden'] !== 'undefined';\n const ariaHidden = hasAriaHiddenProp ? divProps['aria-hidden'] : height === 0;\n return (React.createElement(\"div\", Object.assign({}, divProps, { \"aria-hidden\": ariaHidden, className: `${animationStateClassNames} ${className}`, style: componentStyle }),\n React.createElement(\"div\", { className: contentClassName, style: contentStyle, ref: contentElement }, children)));\n};\nexport default AnimateHeight;\n"],"names":["isPercentage","height","length","n","number","parseFloat","isNaN","isFinite","isNumber","substring","hideContent","element","style","display","ANIMATION_STATE_CLASSES","animating","animatingUp","animatingDown","animatingToHeightZero","animatingToHeightAuto","animatingToHeightSpecific","static","staticHeightZero","staticHeightAuto","staticHeightSpecific","getStaticStateClasses","animationStateClasses","filter","v","join","propsToOmitFromDiv","componentProps","animateOpacity","applyInlineTransitions","children","className","contentClassName","delay","userDelay","duration","userDuration","easing","onHeightAnimationEnd","onHeightAnimationStart","divProps","Object","assign","forEach","propKey","prevHeight","useRef","contentElement","animationClassesTimeoutID","timeoutID","stateClasses","isBrowser","window","prefersReducedMotion","matchMedia","matches","current","initHeight","initOverflow","currentHeight","setCurrentHeight","useState","overflow","setOverflow","useTransitions","setUseTransitions","animationStateClassNames","setAnimationStateClassNames","useEffect","showContent","contentHeight","offsetHeight","totalDuration","newHeight","timeoutHeight","timeoutUseTransitions","timeoutOverflow","isCurrentHeightAuto","undefined","newAnimationStateClassNames","timeoutAnimationStateClasses","clearTimeout","setTimeout","componentStyle","transition","WebkitTransition","contentStyle","opacity","ariaHidden","ref"],"sourceRoot":""}