{"ast":null,"code":"import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport ownerDocument from '../utils/ownerDocument';\nimport useForkRef from '../utils/useForkRef';\nimport useEventCallback from '../utils/useEventCallback';\nimport { elementAcceptingRef, exactProp } from '@material-ui/utils';\n\nfunction mapEventPropToEvent(eventProp) {\n  return eventProp.substring(2).toLowerCase();\n}\n\nfunction clickedRootScrollbar(event) {\n  return document.documentElement.clientWidth < event.clientX || document.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\n\nfunction ClickAwayListener(props) {\n  var children = props.children,\n      _props$disableReactTr = props.disableReactTree,\n      disableReactTree = _props$disableReactTr === void 0 ? false : _props$disableReactTr,\n      _props$mouseEvent = props.mouseEvent,\n      mouseEvent = _props$mouseEvent === void 0 ? 'onClick' : _props$mouseEvent,\n      onClickAway = props.onClickAway,\n      _props$touchEvent = props.touchEvent,\n      touchEvent = _props$touchEvent === void 0 ? 'onTouchEnd' : _props$touchEvent;\n  var movedRef = React.useRef(false);\n  var nodeRef = React.useRef(null);\n  var activatedRef = React.useRef(false);\n  var syntheticEventRef = React.useRef(false);\n  React.useEffect(function () {\n    // Ensure that this component is not \"activated\" synchronously.\n    // https://github.com/facebook/react/issues/20074\n    setTimeout(function () {\n      activatedRef.current = true;\n    }, 0);\n    return function () {\n      activatedRef.current = false;\n    };\n  }, []); // can be removed once we drop support for non ref forwarding class components\n\n  var handleOwnRef = React.useCallback(function (instance) {\n    // #StrictMode ready\n    nodeRef.current = ReactDOM.findDOMNode(instance);\n  }, []);\n  var handleRef = useForkRef(children.ref, handleOwnRef); // The handler doesn't take event.defaultPrevented into account:\n  //\n  // event.preventDefault() is meant to stop default behaviours 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\n  var handleClickAway = useEventCallback(function (event) {\n    // Given developers can stop the propagation of the synthetic event,\n    // we can only be confident with a positive value.\n    var insideReactTree = syntheticEventRef.current;\n    syntheticEventRef.current = false; // 1. IE 11 support, which trigger the handleClickAway even after the unbind\n    // 2. The child might render null.\n    // 3. Behave like a blur listener.\n\n    if (!activatedRef.current || !nodeRef.current || clickedRootScrollbar(event)) {\n      return;\n    } // Do not act if user performed touchmove\n\n\n    if (movedRef.current) {\n      movedRef.current = false;\n      return;\n    }\n\n    var insideDOM; // If not enough, can use https://github.com/DieterHolvoet/event-propagation-path/blob/master/propagationPath.js\n\n    if (event.composedPath) {\n      insideDOM = event.composedPath().indexOf(nodeRef.current) > -1;\n    } else {\n      // TODO v6 remove dead logic https://caniuse.com/#search=composedPath.\n      var doc = ownerDocument(nodeRef.current);\n      insideDOM = !doc.documentElement.contains(event.target) || nodeRef.current.contains(event.target);\n    }\n\n    if (!insideDOM && (disableReactTree || !insideReactTree)) {\n      onClickAway(event);\n    }\n  }); // Keep track of mouse/touch events that bubbled up through the portal.\n\n  var createHandleSynthetic = function createHandleSynthetic(handlerName) {\n    return function (event) {\n      syntheticEventRef.current = true;\n      var childrenPropsHandler = children.props[handlerName];\n\n      if (childrenPropsHandler) {\n        childrenPropsHandler(event);\n      }\n    };\n  };\n\n  var childrenProps = {\n    ref: handleRef\n  };\n\n  if (touchEvent !== false) {\n    childrenProps[touchEvent] = createHandleSynthetic(touchEvent);\n  }\n\n  React.useEffect(function () {\n    if (touchEvent !== false) {\n      var mappedTouchEvent = mapEventPropToEvent(touchEvent);\n      var doc = ownerDocument(nodeRef.current);\n\n      var handleTouchMove = function handleTouchMove() {\n        movedRef.current = true;\n      };\n\n      doc.addEventListener(mappedTouchEvent, handleClickAway);\n      doc.addEventListener('touchmove', handleTouchMove);\n      return function () {\n        doc.removeEventListener(mappedTouchEvent, handleClickAway);\n        doc.removeEventListener('touchmove', handleTouchMove);\n      };\n    }\n\n    return undefined;\n  }, [handleClickAway, touchEvent]);\n\n  if (mouseEvent !== false) {\n    childrenProps[mouseEvent] = createHandleSynthetic(mouseEvent);\n  }\n\n  React.useEffect(function () {\n    if (mouseEvent !== false) {\n      var mappedMouseEvent = mapEventPropToEvent(mouseEvent);\n      var doc = ownerDocument(nodeRef.current);\n      doc.addEventListener(mappedMouseEvent, handleClickAway);\n      return function () {\n        doc.removeEventListener(mappedMouseEvent, handleClickAway);\n      };\n    }\n\n    return undefined;\n  }, [handleClickAway, mouseEvent]);\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.cloneElement(children, childrenProps));\n}\n\nprocess.env.NODE_ENV !== \"production\" ? ClickAwayListener.propTypes = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * The wrapped element.\n   */\n  children: elementAcceptingRef.isRequired,\n\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   */\n  disableReactTree: PropTypes.bool,\n\n  /**\n   * The mouse event to listen to. You can disable the listener by providing `false`.\n   */\n  mouseEvent: PropTypes.oneOf(['onClick', 'onMouseDown', 'onMouseUp', false]),\n\n  /**\n   * Callback fired when a \"click away\" event is detected.\n   */\n  onClickAway: PropTypes.func.isRequired,\n\n  /**\n   * The touch event to listen to. You can disable the listener by providing `false`.\n   */\n  touchEvent: PropTypes.oneOf(['onTouchEnd', 'onTouchStart', false])\n} : void 0;\n\nif (process.env.NODE_ENV !== 'production') {\n  // eslint-disable-next-line\n  ClickAwayListener['propTypes' + ''] = exactProp(ClickAwayListener.propTypes);\n}\n\nexport default ClickAwayListener;","map":{"version":3,"sources":["C:/laragon/www/itokin/DriverOPCDA/frontend/node_modules/@material-ui/core/esm/ClickAwayListener/ClickAwayListener.js"],"names":["React","ReactDOM","PropTypes","ownerDocument","useForkRef","useEventCallback","elementAcceptingRef","exactProp","mapEventPropToEvent","eventProp","substring","toLowerCase","clickedRootScrollbar","event","document","documentElement","clientWidth","clientX","clientHeight","clientY","ClickAwayListener","props","children","_props$disableReactTr","disableReactTree","_props$mouseEvent","mouseEvent","onClickAway","_props$touchEvent","touchEvent","movedRef","useRef","nodeRef","activatedRef","syntheticEventRef","useEffect","setTimeout","current","handleOwnRef","useCallback","instance","findDOMNode","handleRef","ref","handleClickAway","insideReactTree","insideDOM","composedPath","indexOf","doc","contains","target","createHandleSynthetic","handlerName","childrenPropsHandler","childrenProps","mappedTouchEvent","handleTouchMove","addEventListener","removeEventListener","undefined","mappedMouseEvent","createElement","Fragment","cloneElement","process","env","NODE_ENV","propTypes","isRequired","bool","oneOf","func"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport ownerDocument from '../utils/ownerDocument';\nimport useForkRef from '../utils/useForkRef';\nimport useEventCallback from '../utils/useEventCallback';\nimport { elementAcceptingRef, exactProp } from '@material-ui/utils';\n\nfunction mapEventPropToEvent(eventProp) {\n  return eventProp.substring(2).toLowerCase();\n}\n\nfunction clickedRootScrollbar(event) {\n  return document.documentElement.clientWidth < event.clientX || document.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\n\nfunction ClickAwayListener(props) {\n  var children = props.children,\n      _props$disableReactTr = props.disableReactTree,\n      disableReactTree = _props$disableReactTr === void 0 ? false : _props$disableReactTr,\n      _props$mouseEvent = props.mouseEvent,\n      mouseEvent = _props$mouseEvent === void 0 ? 'onClick' : _props$mouseEvent,\n      onClickAway = props.onClickAway,\n      _props$touchEvent = props.touchEvent,\n      touchEvent = _props$touchEvent === void 0 ? 'onTouchEnd' : _props$touchEvent;\n  var movedRef = React.useRef(false);\n  var nodeRef = React.useRef(null);\n  var activatedRef = React.useRef(false);\n  var syntheticEventRef = React.useRef(false);\n  React.useEffect(function () {\n    // Ensure that this component is not \"activated\" synchronously.\n    // https://github.com/facebook/react/issues/20074\n    setTimeout(function () {\n      activatedRef.current = true;\n    }, 0);\n    return function () {\n      activatedRef.current = false;\n    };\n  }, []); // can be removed once we drop support for non ref forwarding class components\n\n  var handleOwnRef = React.useCallback(function (instance) {\n    // #StrictMode ready\n    nodeRef.current = ReactDOM.findDOMNode(instance);\n  }, []);\n  var handleRef = useForkRef(children.ref, handleOwnRef); // The handler doesn't take event.defaultPrevented into account:\n  //\n  // event.preventDefault() is meant to stop default behaviours 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\n  var handleClickAway = useEventCallback(function (event) {\n    // Given developers can stop the propagation of the synthetic event,\n    // we can only be confident with a positive value.\n    var insideReactTree = syntheticEventRef.current;\n    syntheticEventRef.current = false; // 1. IE 11 support, which trigger the handleClickAway even after the unbind\n    // 2. The child might render null.\n    // 3. Behave like a blur listener.\n\n    if (!activatedRef.current || !nodeRef.current || clickedRootScrollbar(event)) {\n      return;\n    } // Do not act if user performed touchmove\n\n\n    if (movedRef.current) {\n      movedRef.current = false;\n      return;\n    }\n\n    var insideDOM; // If not enough, can use https://github.com/DieterHolvoet/event-propagation-path/blob/master/propagationPath.js\n\n    if (event.composedPath) {\n      insideDOM = event.composedPath().indexOf(nodeRef.current) > -1;\n    } else {\n      // TODO v6 remove dead logic https://caniuse.com/#search=composedPath.\n      var doc = ownerDocument(nodeRef.current);\n      insideDOM = !doc.documentElement.contains(event.target) || nodeRef.current.contains(event.target);\n    }\n\n    if (!insideDOM && (disableReactTree || !insideReactTree)) {\n      onClickAway(event);\n    }\n  }); // Keep track of mouse/touch events that bubbled up through the portal.\n\n  var createHandleSynthetic = function createHandleSynthetic(handlerName) {\n    return function (event) {\n      syntheticEventRef.current = true;\n      var childrenPropsHandler = children.props[handlerName];\n\n      if (childrenPropsHandler) {\n        childrenPropsHandler(event);\n      }\n    };\n  };\n\n  var childrenProps = {\n    ref: handleRef\n  };\n\n  if (touchEvent !== false) {\n    childrenProps[touchEvent] = createHandleSynthetic(touchEvent);\n  }\n\n  React.useEffect(function () {\n    if (touchEvent !== false) {\n      var mappedTouchEvent = mapEventPropToEvent(touchEvent);\n      var doc = ownerDocument(nodeRef.current);\n\n      var handleTouchMove = function handleTouchMove() {\n        movedRef.current = true;\n      };\n\n      doc.addEventListener(mappedTouchEvent, handleClickAway);\n      doc.addEventListener('touchmove', handleTouchMove);\n      return function () {\n        doc.removeEventListener(mappedTouchEvent, handleClickAway);\n        doc.removeEventListener('touchmove', handleTouchMove);\n      };\n    }\n\n    return undefined;\n  }, [handleClickAway, touchEvent]);\n\n  if (mouseEvent !== false) {\n    childrenProps[mouseEvent] = createHandleSynthetic(mouseEvent);\n  }\n\n  React.useEffect(function () {\n    if (mouseEvent !== false) {\n      var mappedMouseEvent = mapEventPropToEvent(mouseEvent);\n      var doc = ownerDocument(nodeRef.current);\n      doc.addEventListener(mappedMouseEvent, handleClickAway);\n      return function () {\n        doc.removeEventListener(mappedMouseEvent, handleClickAway);\n      };\n    }\n\n    return undefined;\n  }, [handleClickAway, mouseEvent]);\n  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.cloneElement(children, childrenProps));\n}\n\nprocess.env.NODE_ENV !== \"production\" ? ClickAwayListener.propTypes = {\n  // ----------------------------- Warning --------------------------------\n  // | These PropTypes are generated from the TypeScript type definitions |\n  // |     To update them edit the d.ts file and run \"yarn proptypes\"     |\n  // ----------------------------------------------------------------------\n\n  /**\n   * The wrapped element.\n   */\n  children: elementAcceptingRef.isRequired,\n\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   */\n  disableReactTree: PropTypes.bool,\n\n  /**\n   * The mouse event to listen to. You can disable the listener by providing `false`.\n   */\n  mouseEvent: PropTypes.oneOf(['onClick', 'onMouseDown', 'onMouseUp', false]),\n\n  /**\n   * Callback fired when a \"click away\" event is detected.\n   */\n  onClickAway: PropTypes.func.isRequired,\n\n  /**\n   * The touch event to listen to. You can disable the listener by providing `false`.\n   */\n  touchEvent: PropTypes.oneOf(['onTouchEnd', 'onTouchStart', false])\n} : void 0;\n\nif (process.env.NODE_ENV !== 'production') {\n  // eslint-disable-next-line\n  ClickAwayListener['propTypes' + ''] = exactProp(ClickAwayListener.propTypes);\n}\n\nexport default ClickAwayListener;"]},"metadata":{},"sourceType":"module"}