{"version":3,"file":"static/js/1011.86b8b336.chunk.js","mappings":"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","sources":["../node_modules/@mui/material/Slide/Slide.js","../node_modules/@mui/material/node_modules/@mui/base/ClickAwayListener/ClickAwayListener.js"],"sourcesContent":["'use client';\n\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nconst _excluded = [\"addEndListener\", \"appear\", \"children\", \"container\", \"direction\", \"easing\", \"in\", \"onEnter\", \"onEntered\", \"onEntering\", \"onExit\", \"onExited\", \"onExiting\", \"style\", \"timeout\", \"TransitionComponent\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport chainPropTypes from '@mui/utils/chainPropTypes';\nimport HTMLElementType from '@mui/utils/HTMLElementType';\nimport elementAcceptingRef from '@mui/utils/elementAcceptingRef';\nimport debounce from '../utils/debounce';\nimport useForkRef from '../utils/useForkRef';\nimport useTheme from '../styles/useTheme';\nimport { reflow, getTransitionProps } from '../transitions/utils';\nimport { ownerWindow } from '../utils';\n\n// Translate the node so it can't be seen on the screen.\n// Later, we're going to translate the node back to its original location with `none`.\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction getTranslateValue(direction, node, resolvedContainer) {\n const rect = node.getBoundingClientRect();\n const containerRect = resolvedContainer && resolvedContainer.getBoundingClientRect();\n const containerWindow = ownerWindow(node);\n let transform;\n if (node.fakeTransform) {\n transform = node.fakeTransform;\n } else {\n const computedStyle = containerWindow.getComputedStyle(node);\n transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');\n }\n let offsetX = 0;\n let offsetY = 0;\n if (transform && transform !== 'none' && typeof transform === 'string') {\n const transformValues = transform.split('(')[1].split(')')[0].split(',');\n offsetX = parseInt(transformValues[4], 10);\n offsetY = parseInt(transformValues[5], 10);\n }\n if (direction === 'left') {\n if (containerRect) {\n return `translateX(${containerRect.right + offsetX - rect.left}px)`;\n }\n return `translateX(${containerWindow.innerWidth + offsetX - rect.left}px)`;\n }\n if (direction === 'right') {\n if (containerRect) {\n return `translateX(-${rect.right - containerRect.left - offsetX}px)`;\n }\n return `translateX(-${rect.left + rect.width - offsetX}px)`;\n }\n if (direction === 'up') {\n if (containerRect) {\n return `translateY(${containerRect.bottom + offsetY - rect.top}px)`;\n }\n return `translateY(${containerWindow.innerHeight + offsetY - rect.top}px)`;\n }\n\n // direction === 'down'\n if (containerRect) {\n return `translateY(-${rect.top - containerRect.top + rect.height - offsetY}px)`;\n }\n return `translateY(-${rect.top + rect.height - offsetY}px)`;\n}\nfunction resolveContainer(containerPropProp) {\n return typeof containerPropProp === 'function' ? containerPropProp() : containerPropProp;\n}\nexport function setTranslateValue(direction, node, containerProp) {\n const resolvedContainer = resolveContainer(containerProp);\n const transform = getTranslateValue(direction, node, resolvedContainer);\n if (transform) {\n node.style.webkitTransform = transform;\n node.style.transform = transform;\n }\n}\n\n/**\n * The Slide transition is used by the [Drawer](/material-ui/react-drawer/) component.\n * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.\n */\nconst Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {\n const theme = useTheme();\n const defaultEasing = {\n enter: theme.transitions.easing.easeOut,\n exit: theme.transitions.easing.sharp\n };\n const defaultTimeout = {\n enter: theme.transitions.duration.enteringScreen,\n exit: theme.transitions.duration.leavingScreen\n };\n const {\n addEndListener,\n appear = true,\n children,\n container: containerProp,\n direction = 'down',\n easing: easingProp = defaultEasing,\n in: inProp,\n onEnter,\n onEntered,\n onEntering,\n onExit,\n onExited,\n onExiting,\n style,\n timeout = defaultTimeout,\n // eslint-disable-next-line react/prop-types\n TransitionComponent = Transition\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const childrenRef = React.useRef(null);\n const handleRef = useForkRef(children.ref, childrenRef, ref);\n const normalizedTransitionCallback = callback => isAppearing => {\n if (callback) {\n // onEnterXxx and onExitXxx callbacks have a different arguments.length value.\n if (isAppearing === undefined) {\n callback(childrenRef.current);\n } else {\n callback(childrenRef.current, isAppearing);\n }\n }\n };\n const handleEnter = normalizedTransitionCallback((node, isAppearing) => {\n setTranslateValue(direction, node, containerProp);\n reflow(node);\n if (onEnter) {\n onEnter(node, isAppearing);\n }\n });\n const handleEntering = normalizedTransitionCallback((node, isAppearing) => {\n const transitionProps = getTransitionProps({\n timeout,\n style,\n easing: easingProp\n }, {\n mode: 'enter'\n });\n node.style.webkitTransition = theme.transitions.create('-webkit-transform', _extends({}, transitionProps));\n node.style.transition = theme.transitions.create('transform', _extends({}, transitionProps));\n node.style.webkitTransform = 'none';\n node.style.transform = 'none';\n if (onEntering) {\n onEntering(node, isAppearing);\n }\n });\n const handleEntered = normalizedTransitionCallback(onEntered);\n const handleExiting = normalizedTransitionCallback(onExiting);\n const handleExit = normalizedTransitionCallback(node => {\n const transitionProps = getTransitionProps({\n timeout,\n style,\n easing: easingProp\n }, {\n mode: 'exit'\n });\n node.style.webkitTransition = theme.transitions.create('-webkit-transform', transitionProps);\n node.style.transition = theme.transitions.create('transform', transitionProps);\n setTranslateValue(direction, node, containerProp);\n if (onExit) {\n onExit(node);\n }\n });\n const handleExited = normalizedTransitionCallback(node => {\n // No need for transitions when the component is hidden\n node.style.webkitTransition = '';\n node.style.transition = '';\n if (onExited) {\n onExited(node);\n }\n });\n const handleAddEndListener = next => {\n if (addEndListener) {\n // Old call signature before `react-transition-group` implemented `nodeRef`\n addEndListener(childrenRef.current, next);\n }\n };\n const updatePosition = React.useCallback(() => {\n if (childrenRef.current) {\n setTranslateValue(direction, childrenRef.current, containerProp);\n }\n }, [direction, containerProp]);\n React.useEffect(() => {\n // Skip configuration where the position is screen size invariant.\n if (inProp || direction === 'down' || direction === 'right') {\n return undefined;\n }\n const handleResize = debounce(() => {\n if (childrenRef.current) {\n setTranslateValue(direction, childrenRef.current, containerProp);\n }\n });\n const containerWindow = ownerWindow(childrenRef.current);\n containerWindow.addEventListener('resize', handleResize);\n return () => {\n handleResize.clear();\n containerWindow.removeEventListener('resize', handleResize);\n };\n }, [direction, inProp, containerProp]);\n React.useEffect(() => {\n if (!inProp) {\n // We need to update the position of the drawer when the direction change and\n // when it's hidden.\n updatePosition();\n }\n }, [inProp, updatePosition]);\n return /*#__PURE__*/_jsx(TransitionComponent, _extends({\n nodeRef: childrenRef,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n appear: appear,\n in: inProp,\n timeout: timeout\n }, other, {\n children: (state, childProps) => {\n return /*#__PURE__*/React.cloneElement(children, _extends({\n ref: handleRef,\n style: _extends({\n visibility: state === 'exited' && !inProp ? 'hidden' : undefined\n }, style, children.props.style)\n }, childProps));\n }\n }));\n});\nprocess.env.NODE_ENV !== \"production\" ? Slide.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * Add a custom transition end trigger. Called with the transitioning DOM\n * node and a done callback. Allows for more fine grained transition end\n * logic. Note: Timeouts are still used as a fallback if provided.\n */\n addEndListener: PropTypes.func,\n /**\n * Perform the enter transition when it first mounts if `in` is also `true`.\n * Set this to `false` to disable this behavior.\n * @default true\n */\n appear: PropTypes.bool,\n /**\n * A single child content element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * An HTML element, or a function that returns one.\n * It's used to set the container the Slide is transitioning from.\n */\n container: chainPropTypes(PropTypes.oneOfType([HTMLElementType, PropTypes.func]), props => {\n if (props.open) {\n const resolvedContainer = resolveContainer(props.container);\n if (resolvedContainer && resolvedContainer.nodeType === 1) {\n const box = resolvedContainer.getBoundingClientRect();\n if (process.env.NODE_ENV !== 'test' && box.top === 0 && box.left === 0 && box.right === 0 && box.bottom === 0) {\n return new Error(['MUI: The `container` prop provided to the component is invalid.', 'The anchor element should be part of the document layout.', \"Make sure the element is present in the document or that it's not display none.\"].join('\\n'));\n }\n } else if (!resolvedContainer || typeof resolvedContainer.getBoundingClientRect !== 'function' || resolvedContainer.contextElement != null && resolvedContainer.contextElement.nodeType !== 1) {\n return new Error(['MUI: The `container` prop provided to the component is invalid.', 'It should be an HTML element instance.'].join('\\n'));\n }\n }\n return null;\n }),\n /**\n * Direction the child node will enter from.\n * @default 'down'\n */\n direction: PropTypes.oneOf(['down', 'left', 'right', 'up']),\n /**\n * The transition timing function.\n * You may specify a single easing or a object containing enter and exit values.\n * @default {\n * enter: theme.transitions.easing.easeOut,\n * exit: theme.transitions.easing.sharp,\n * }\n */\n easing: PropTypes.oneOfType([PropTypes.shape({\n enter: PropTypes.string,\n exit: PropTypes.string\n }), PropTypes.string]),\n /**\n * If `true`, the component will transition in.\n */\n in: PropTypes.bool,\n /**\n * @ignore\n */\n onEnter: PropTypes.func,\n /**\n * @ignore\n */\n onEntered: PropTypes.func,\n /**\n * @ignore\n */\n onEntering: PropTypes.func,\n /**\n * @ignore\n */\n onExit: PropTypes.func,\n /**\n * @ignore\n */\n onExited: PropTypes.func,\n /**\n * @ignore\n */\n onExiting: PropTypes.func,\n /**\n * @ignore\n */\n style: PropTypes.object,\n /**\n * The duration for the transition, in milliseconds.\n * You may specify a single timeout for all transitions, or individually with an object.\n * @default {\n * enter: theme.transitions.duration.enteringScreen,\n * exit: theme.transitions.duration.leavingScreen,\n * }\n */\n timeout: PropTypes.oneOfType([PropTypes.number, PropTypes.shape({\n appear: PropTypes.number,\n enter: PropTypes.number,\n exit: PropTypes.number\n })])\n} : void 0;\nexport default Slide;","'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { elementAcceptingRef, exactProp, unstable_ownerDocument as ownerDocument, unstable_useForkRef as useForkRef, unstable_useEventCallback as useEventCallback } from '@mui/utils';\n\n// TODO: return `EventHandlerName extends `on${infer EventName}` ? Lowercase : never` once generatePropTypes runs with TS 4.1\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction mapEventPropToEvent(eventProp) {\n return eventProp.substring(2).toLowerCase();\n}\nfunction clickedRootScrollbar(event, doc) {\n return doc.documentElement.clientWidth < event.clientX || doc.documentElement.clientHeight < event.clientY;\n}\n/**\n * Listen for click events that occur somewhere in the document, outside of the element itself.\n * For instance, if you need to hide a menu when people click anywhere else on your page.\n *\n * Demos:\n *\n * - [Click-Away Listener](https://mui.com/base-ui/react-click-away-listener/)\n *\n * API:\n *\n * - [ClickAwayListener API](https://mui.com/base-ui/react-click-away-listener/components-api/#click-away-listener)\n */\nfunction ClickAwayListener(props) {\n const {\n children,\n disableReactTree = false,\n mouseEvent = 'onClick',\n onClickAway,\n touchEvent = 'onTouchEnd'\n } = props;\n const movedRef = React.useRef(false);\n const nodeRef = React.useRef(null);\n const activatedRef = React.useRef(false);\n const syntheticEventRef = React.useRef(false);\n React.useEffect(() => {\n // Ensure that this component is not \"activated\" synchronously.\n // https://github.com/facebook/react/issues/20074\n setTimeout(() => {\n activatedRef.current = true;\n }, 0);\n return () => {\n activatedRef.current = false;\n };\n }, []);\n const handleRef = useForkRef(\n // @ts-expect-error TODO upstream fix\n children.ref, nodeRef);\n\n // The handler doesn't take event.defaultPrevented into account:\n //\n // event.preventDefault() is meant to stop default behaviors like\n // clicking a checkbox to check it, hitting a button to submit a form,\n // and hitting left arrow to move the cursor in a text input etc.\n // Only special HTML elements have these default behaviors.\n const handleClickAway = useEventCallback(event => {\n // Given developers can stop the propagation of the synthetic event,\n // we can only be confident with a positive value.\n const insideReactTree = syntheticEventRef.current;\n syntheticEventRef.current = false;\n const doc = ownerDocument(nodeRef.current);\n\n // 1. IE11 support, which trigger the handleClickAway even after the unbind\n // 2. The child might render null.\n // 3. Behave like a blur listener.\n if (!activatedRef.current || !nodeRef.current || 'clientX' in event && clickedRootScrollbar(event, doc)) {\n return;\n }\n\n // Do not act if user performed touchmove\n if (movedRef.current) {\n movedRef.current = false;\n return;\n }\n let insideDOM;\n\n // If not enough, can use https://github.com/DieterHolvoet/event-propagation-path/blob/master/propagationPath.js\n if (event.composedPath) {\n insideDOM = event.composedPath().indexOf(nodeRef.current) > -1;\n } else {\n insideDOM = !doc.documentElement.contains(\n // @ts-expect-error returns `false` as intended when not dispatched from a Node\n event.target) || nodeRef.current.contains(\n // @ts-expect-error returns `false` as intended when not dispatched from a Node\n event.target);\n }\n if (!insideDOM && (disableReactTree || !insideReactTree)) {\n onClickAway(event);\n }\n });\n\n // Keep track of mouse/touch events that bubbled up through the portal.\n const createHandleSynthetic = handlerName => event => {\n syntheticEventRef.current = true;\n const childrenPropsHandler = children.props[handlerName];\n if (childrenPropsHandler) {\n childrenPropsHandler(event);\n }\n };\n const childrenProps = {\n ref: handleRef\n };\n if (touchEvent !== false) {\n childrenProps[touchEvent] = createHandleSynthetic(touchEvent);\n }\n React.useEffect(() => {\n if (touchEvent !== false) {\n const mappedTouchEvent = mapEventPropToEvent(touchEvent);\n const doc = ownerDocument(nodeRef.current);\n const handleTouchMove = () => {\n movedRef.current = true;\n };\n doc.addEventListener(mappedTouchEvent, handleClickAway);\n doc.addEventListener('touchmove', handleTouchMove);\n return () => {\n doc.removeEventListener(mappedTouchEvent, handleClickAway);\n doc.removeEventListener('touchmove', handleTouchMove);\n };\n }\n return undefined;\n }, [handleClickAway, touchEvent]);\n if (mouseEvent !== false) {\n childrenProps[mouseEvent] = createHandleSynthetic(mouseEvent);\n }\n React.useEffect(() => {\n if (mouseEvent !== false) {\n const mappedMouseEvent = mapEventPropToEvent(mouseEvent);\n const doc = ownerDocument(nodeRef.current);\n doc.addEventListener(mappedMouseEvent, handleClickAway);\n return () => {\n doc.removeEventListener(mappedMouseEvent, handleClickAway);\n };\n }\n return undefined;\n }, [handleClickAway, mouseEvent]);\n return /*#__PURE__*/_jsx(React.Fragment, {\n children: /*#__PURE__*/React.cloneElement(children, childrenProps)\n });\n}\nprocess.env.NODE_ENV !== \"production\" ? ClickAwayListener.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * The wrapped element.\n */\n children: elementAcceptingRef.isRequired,\n /**\n * If `true`, the React tree is ignored and only the DOM tree is considered.\n * This prop changes how portaled elements are handled.\n * @default false\n */\n disableReactTree: PropTypes.bool,\n /**\n * The mouse event to listen to. You can disable the listener by providing `false`.\n * @default 'onClick'\n */\n mouseEvent: PropTypes.oneOf(['onClick', 'onMouseDown', 'onMouseUp', 'onPointerDown', 'onPointerUp', false]),\n /**\n * Callback fired when a \"click away\" event is detected.\n */\n onClickAway: PropTypes.func.isRequired,\n /**\n * The touch event to listen to. You can disable the listener by providing `false`.\n * @default 'onTouchEnd'\n */\n touchEvent: PropTypes.oneOf(['onTouchEnd', 'onTouchStart', false])\n} : void 0;\nif (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line\n ClickAwayListener['propTypes' + ''] = exactProp(ClickAwayListener.propTypes);\n}\nexport { ClickAwayListener };"],"names":["_excluded","setTranslateValue","direction","node","containerProp","containerPropProp","transform","resolvedContainer","rect","getBoundingClientRect","containerRect","containerWindow","ownerWindow","fakeTransform","computedStyle","getComputedStyle","getPropertyValue","offsetX","offsetY","transformValues","split","parseInt","concat","right","left","innerWidth","width","bottom","top","innerHeight","height","getTranslateValue","style","webkitTransform","Slide","React","props","ref","theme","useTheme","defaultEasing","enter","transitions","easing","easeOut","exit","sharp","defaultTimeout","duration","enteringScreen","leavingScreen","addEndListener","_props$appear","appear","children","container","_props$direction","_props$easing","easingProp","inProp","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","_props$timeout","timeout","_props$TransitionComp","TransitionComponent","Transition","other","_objectWithoutPropertiesLoose","childrenRef","handleRef","useForkRef","normalizedTransitionCallback","callback","isAppearing","undefined","current","handleEnter","reflow","handleEntering","transitionProps","getTransitionProps","mode","webkitTransition","create","_extends","transition","handleEntered","handleExiting","handleExit","handleExited","updatePosition","handleResize","debounce","addEventListener","clear","removeEventListener","_jsx","nodeRef","next","state","childProps","visibility","mapEventPropToEvent","eventProp","substring","toLowerCase","ClickAwayListener","_props$disableReactTr","disableReactTree","_props$mouseEvent","mouseEvent","onClickAway","_props$touchEvent","touchEvent","movedRef","activatedRef","syntheticEventRef","setTimeout","handleClickAway","useEventCallback","event","insideReactTree","doc","ownerDocument","documentElement","clientWidth","clientX","clientHeight","clientY","clickedRootScrollbar","composedPath","indexOf","contains","target","createHandleSynthetic","handlerName","childrenPropsHandler","childrenProps","mappedTouchEvent","handleTouchMove","mappedMouseEvent"],"sourceRoot":""}