{"ast":null,"code":"import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"className\", \"style\", \"prefix\", \"split\", \"notFoundContent\", \"value\", \"defaultValue\", \"children\", \"options\", \"open\", \"allowClear\", \"validateSearch\", \"filterOption\", \"onChange\", \"onKeyDown\", \"onKeyUp\", \"onPressEnter\", \"onSearch\", \"onSelect\", \"onFocus\", \"onBlur\", \"transitionName\", \"placement\", \"direction\", \"getPopupContainer\", \"dropdownClassName\", \"rows\"],\n  _excluded2 = [\"suffix\", \"prefixCls\", \"defaultValue\", \"value\", \"allowClear\", \"onChange\", \"classNames\", \"className\", \"disabled\"];\nimport classNames from 'classnames';\nimport { BaseInput } from 'rc-input';\nimport TextArea from 'rc-textarea';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport warning from \"rc-util/es/warning\";\nimport React, { forwardRef, useEffect, useMemo, useRef, useState } from 'react';\nimport useEffectState from \"./hooks/useEffectState\";\nimport KeywordTrigger from \"./KeywordTrigger\";\nimport MentionsContext from \"./MentionsContext\";\nimport Option from \"./Option\";\nimport { filterOption as defaultFilterOption, getBeforeSelectionText, getLastMeasureIndex, replaceWithMeasure, setInputSelection, validateSearch as defaultValidateSearch } from \"./util\";\nvar InternalMentions = /*#__PURE__*/forwardRef(function (props, ref) {\n  var prefixCls = props.prefixCls,\n    className = props.className,\n    style = props.style,\n    _props$prefix = props.prefix,\n    prefix = _props$prefix === void 0 ? '@' : _props$prefix,\n    _props$split = props.split,\n    split = _props$split === void 0 ? ' ' : _props$split,\n    _props$notFoundConten = props.notFoundContent,\n    notFoundContent = _props$notFoundConten === void 0 ? 'Not Found' : _props$notFoundConten,\n    value = props.value,\n    defaultValue = props.defaultValue,\n    children = props.children,\n    options = props.options,\n    open = props.open,\n    allowClear = props.allowClear,\n    _props$validateSearch = props.validateSearch,\n    validateSearch = _props$validateSearch === void 0 ? defaultValidateSearch : _props$validateSearch,\n    _props$filterOption = props.filterOption,\n    filterOption = _props$filterOption === void 0 ? defaultFilterOption : _props$filterOption,\n    onChange = props.onChange,\n    onKeyDown = props.onKeyDown,\n    onKeyUp = props.onKeyUp,\n    onPressEnter = props.onPressEnter,\n    onSearch = props.onSearch,\n    onSelect = props.onSelect,\n    onFocus = props.onFocus,\n    onBlur = props.onBlur,\n    transitionName = props.transitionName,\n    placement = props.placement,\n    direction = props.direction,\n    getPopupContainer = props.getPopupContainer,\n    dropdownClassName = props.dropdownClassName,\n    _props$rows = props.rows,\n    rows = _props$rows === void 0 ? 1 : _props$rows,\n    restProps = _objectWithoutProperties(props, _excluded);\n  var mergedPrefix = useMemo(function () {\n    return Array.isArray(prefix) ? prefix : [prefix];\n  }, [prefix]);\n\n  // =============================== Refs ===============================\n  var textareaRef = useRef(null);\n  var measureRef = useRef(null);\n  var getTextArea = function getTextArea() {\n    var _textareaRef$current;\n    return (_textareaRef$current = textareaRef.current) === null || _textareaRef$current === void 0 || (_textareaRef$current = _textareaRef$current.resizableTextArea) === null || _textareaRef$current === void 0 ? void 0 : _textareaRef$current.textArea;\n  };\n  React.useImperativeHandle(ref, function () {\n    var _textareaRef$current4;\n    return {\n      focus: function focus() {\n        var _textareaRef$current2;\n        return (_textareaRef$current2 = textareaRef.current) === null || _textareaRef$current2 === void 0 ? void 0 : _textareaRef$current2.focus();\n      },\n      blur: function blur() {\n        var _textareaRef$current3;\n        return (_textareaRef$current3 = textareaRef.current) === null || _textareaRef$current3 === void 0 ? void 0 : _textareaRef$current3.blur();\n      },\n      textarea: (_textareaRef$current4 = textareaRef.current) === null || _textareaRef$current4 === void 0 || (_textareaRef$current4 = _textareaRef$current4.resizableTextArea) === null || _textareaRef$current4 === void 0 ? void 0 : _textareaRef$current4.textArea\n    };\n  });\n\n  // ============================== State ===============================\n  var _useState = useState(false),\n    _useState2 = _slicedToArray(_useState, 2),\n    measuring = _useState2[0],\n    setMeasuring = _useState2[1];\n  var _useState3 = useState(''),\n    _useState4 = _slicedToArray(_useState3, 2),\n    measureText = _useState4[0],\n    setMeasureText = _useState4[1];\n  var _useState5 = useState(''),\n    _useState6 = _slicedToArray(_useState5, 2),\n    measurePrefix = _useState6[0],\n    setMeasurePrefix = _useState6[1];\n  var _useState7 = useState(0),\n    _useState8 = _slicedToArray(_useState7, 2),\n    measureLocation = _useState8[0],\n    setMeasureLocation = _useState8[1];\n  var _useState9 = useState(0),\n    _useState10 = _slicedToArray(_useState9, 2),\n    activeIndex = _useState10[0],\n    setActiveIndex = _useState10[1];\n  var _useState11 = useState(false),\n    _useState12 = _slicedToArray(_useState11, 2),\n    isFocus = _useState12[0],\n    setIsFocus = _useState12[1];\n\n  // ============================== Value ===============================\n  var _useMergedState = useMergedState('', {\n      defaultValue: defaultValue,\n      value: value\n    }),\n    _useMergedState2 = _slicedToArray(_useMergedState, 2),\n    mergedValue = _useMergedState2[0],\n    setMergedValue = _useMergedState2[1];\n\n  // =============================== Open ===============================\n  useEffect(function () {\n    // Sync measure div top with textarea for rc-trigger usage\n    if (measuring && measureRef.current) {\n      measureRef.current.scrollTop = getTextArea().scrollTop;\n    }\n  }, [measuring]);\n  var _React$useMemo = React.useMemo(function () {\n      if (open) {\n        if (process.env.NODE_ENV !== 'production') {\n          warning(false, '`open` of Mentions is only used for debug usage. Do not use in you production.');\n        }\n        for (var i = 0; i < mergedPrefix.length; i += 1) {\n          var curPrefix = mergedPrefix[i];\n          var index = mergedValue.lastIndexOf(curPrefix);\n          if (index >= 0) {\n            return [true, '', curPrefix, index];\n          }\n        }\n      }\n      return [measuring, measureText, measurePrefix, measureLocation];\n    }, [open, measuring, mergedPrefix, mergedValue, measureText, measurePrefix, measureLocation]),\n    _React$useMemo2 = _slicedToArray(_React$useMemo, 4),\n    mergedMeasuring = _React$useMemo2[0],\n    mergedMeasureText = _React$useMemo2[1],\n    mergedMeasurePrefix = _React$useMemo2[2],\n    mergedMeasureLocation = _React$useMemo2[3];\n\n  // ============================== Option ==============================\n  var getOptions = React.useCallback(function (targetMeasureText) {\n    var list;\n    if (options && options.length > 0) {\n      list = options.map(function (item) {\n        var _item$key;\n        return _objectSpread(_objectSpread({}, item), {}, {\n          key: (_item$key = item === null || item === void 0 ? void 0 : item.key) !== null && _item$key !== void 0 ? _item$key : item.value\n        });\n      });\n    } else {\n      list = toArray(children).map(function (_ref) {\n        var optionProps = _ref.props,\n          key = _ref.key;\n        return _objectSpread(_objectSpread({}, optionProps), {}, {\n          label: optionProps.children,\n          key: key || optionProps.value\n        });\n      });\n    }\n    return list.filter(function (option) {\n      /** Return all result if `filterOption` is false. */\n      if (filterOption === false) {\n        return true;\n      }\n      return filterOption(targetMeasureText, option);\n    });\n  }, [children, options, filterOption]);\n  var mergedOptions = React.useMemo(function () {\n    return getOptions(mergedMeasureText);\n  }, [getOptions, mergedMeasureText]);\n\n  // ============================= Measure ==============================\n  // Mark that we will reset input selection to target position when user select option\n  var onSelectionEffect = useEffectState();\n  var startMeasure = function startMeasure(nextMeasureText, nextMeasurePrefix, nextMeasureLocation) {\n    setMeasuring(true);\n    setMeasureText(nextMeasureText);\n    setMeasurePrefix(nextMeasurePrefix);\n    setMeasureLocation(nextMeasureLocation);\n    setActiveIndex(0);\n  };\n  var stopMeasure = function stopMeasure(callback) {\n    setMeasuring(false);\n    setMeasureLocation(0);\n    setMeasureText('');\n    onSelectionEffect(callback);\n  };\n\n  // ============================== Change ==============================\n  var triggerChange = function triggerChange(nextValue) {\n    setMergedValue(nextValue);\n    onChange === null || onChange === void 0 || onChange(nextValue);\n  };\n  var onInternalChange = function onInternalChange(_ref2) {\n    var nextValue = _ref2.target.value;\n    triggerChange(nextValue);\n  };\n  var selectOption = function selectOption(option) {\n    var _getTextArea;\n    var _option$value = option.value,\n      mentionValue = _option$value === void 0 ? '' : _option$value;\n    var _replaceWithMeasure = replaceWithMeasure(mergedValue, {\n        measureLocation: mergedMeasureLocation,\n        targetText: mentionValue,\n        prefix: mergedMeasurePrefix,\n        selectionStart: (_getTextArea = getTextArea()) === null || _getTextArea === void 0 ? void 0 : _getTextArea.selectionStart,\n        split: split\n      }),\n      text = _replaceWithMeasure.text,\n      selectionLocation = _replaceWithMeasure.selectionLocation;\n    triggerChange(text);\n    stopMeasure(function () {\n      // We need restore the selection position\n      setInputSelection(getTextArea(), selectionLocation);\n    });\n    onSelect === null || onSelect === void 0 || onSelect(option, mergedMeasurePrefix);\n  };\n\n  // ============================= KeyEvent =============================\n  // Check if hit the measure keyword\n  var onInternalKeyDown = function onInternalKeyDown(event) {\n    var which = event.which;\n    onKeyDown === null || onKeyDown === void 0 || onKeyDown(event);\n\n    // Skip if not measuring\n    if (!mergedMeasuring) {\n      return;\n    }\n    if (which === KeyCode.UP || which === KeyCode.DOWN) {\n      // Control arrow function\n      var optionLen = mergedOptions.length;\n      var offset = which === KeyCode.UP ? -1 : 1;\n      var newActiveIndex = (activeIndex + offset + optionLen) % optionLen;\n      setActiveIndex(newActiveIndex);\n      event.preventDefault();\n    } else if (which === KeyCode.ESC) {\n      stopMeasure();\n    } else if (which === KeyCode.ENTER) {\n      // Measure hit\n      event.preventDefault();\n      if (!mergedOptions.length) {\n        stopMeasure();\n        return;\n      }\n      var _option = mergedOptions[activeIndex];\n      selectOption(_option);\n    }\n  };\n\n  /**\n   * When to start measure:\n   * 1. When user press `prefix`\n   * 2. When measureText !== prevMeasureText\n   *  - If measure hit\n   *  - If measuring\n   *\n   * When to stop measure:\n   * 1. Selection is out of range\n   * 2. Contains `space`\n   * 3. ESC or select one\n   */\n  var onInternalKeyUp = function onInternalKeyUp(event) {\n    var key = event.key,\n      which = event.which;\n    var target = event.target;\n    var selectionStartText = getBeforeSelectionText(target);\n    var _getLastMeasureIndex = getLastMeasureIndex(selectionStartText, mergedPrefix),\n      measureIndex = _getLastMeasureIndex.location,\n      nextMeasurePrefix = _getLastMeasureIndex.prefix;\n\n    // If the client implements an onKeyUp handler, call it\n    onKeyUp === null || onKeyUp === void 0 || onKeyUp(event);\n\n    // Skip if match the white key list\n    if ([KeyCode.ESC, KeyCode.UP, KeyCode.DOWN, KeyCode.ENTER].indexOf(which) !== -1) {\n      return;\n    }\n    if (measureIndex !== -1) {\n      var nextMeasureText = selectionStartText.slice(measureIndex + nextMeasurePrefix.length);\n      var validateMeasure = validateSearch(nextMeasureText, split);\n      var matchOption = !!getOptions(nextMeasureText).length;\n      if (validateMeasure) {\n        if (key === nextMeasurePrefix || key === 'Shift' || mergedMeasuring || nextMeasureText !== mergedMeasureText && matchOption) {\n          startMeasure(nextMeasureText, nextMeasurePrefix, measureIndex);\n        }\n      } else if (mergedMeasuring) {\n        // Stop if measureText is invalidate\n        stopMeasure();\n      }\n\n      /**\n       * We will trigger `onSearch` to developer since they may use for async update.\n       * If met `space` means user finished searching.\n       */\n      if (onSearch && validateMeasure) {\n        onSearch(nextMeasureText, nextMeasurePrefix);\n      }\n    } else if (mergedMeasuring) {\n      stopMeasure();\n    }\n  };\n  var onInternalPressEnter = function onInternalPressEnter(event) {\n    if (!mergedMeasuring && onPressEnter) {\n      onPressEnter(event);\n    }\n  };\n\n  // ============================ Focus Blur ============================\n  var focusRef = useRef();\n  var onInternalFocus = function onInternalFocus(event) {\n    window.clearTimeout(focusRef.current);\n    if (!isFocus && event && onFocus) {\n      onFocus(event);\n    }\n    setIsFocus(true);\n  };\n  var onInternalBlur = function onInternalBlur(event) {\n    focusRef.current = window.setTimeout(function () {\n      setIsFocus(false);\n      stopMeasure();\n      onBlur === null || onBlur === void 0 || onBlur(event);\n    }, 0);\n  };\n  var onDropdownFocus = function onDropdownFocus() {\n    onInternalFocus();\n  };\n  var onDropdownBlur = function onDropdownBlur() {\n    onInternalBlur();\n  };\n\n  // ============================== Render ==============================\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(prefixCls, className),\n    style: style\n  }, /*#__PURE__*/React.createElement(TextArea, _extends({\n    ref: textareaRef,\n    value: mergedValue\n  }, restProps, {\n    rows: rows,\n    onChange: onInternalChange,\n    onKeyDown: onInternalKeyDown,\n    onKeyUp: onInternalKeyUp,\n    onPressEnter: onInternalPressEnter,\n    onFocus: onInternalFocus,\n    onBlur: onInternalBlur\n  })), mergedMeasuring && /*#__PURE__*/React.createElement(\"div\", {\n    ref: measureRef,\n    className: \"\".concat(prefixCls, \"-measure\")\n  }, mergedValue.slice(0, mergedMeasureLocation), /*#__PURE__*/React.createElement(MentionsContext.Provider, {\n    value: {\n      notFoundContent: notFoundContent,\n      activeIndex: activeIndex,\n      setActiveIndex: setActiveIndex,\n      selectOption: selectOption,\n      onFocus: onDropdownFocus,\n      onBlur: onDropdownBlur\n    }\n  }, /*#__PURE__*/React.createElement(KeywordTrigger, {\n    prefixCls: prefixCls,\n    transitionName: transitionName,\n    placement: placement,\n    direction: direction,\n    options: mergedOptions,\n    visible: true,\n    getPopupContainer: getPopupContainer,\n    dropdownClassName: dropdownClassName\n  }, /*#__PURE__*/React.createElement(\"span\", null, mergedMeasurePrefix))), mergedValue.slice(mergedMeasureLocation + mergedMeasurePrefix.length)));\n});\nvar Mentions = /*#__PURE__*/forwardRef(function (_ref3, ref) {\n  var suffix = _ref3.suffix,\n    _ref3$prefixCls = _ref3.prefixCls,\n    prefixCls = _ref3$prefixCls === void 0 ? 'rc-mentions' : _ref3$prefixCls,\n    defaultValue = _ref3.defaultValue,\n    customValue = _ref3.value,\n    allowClear = _ref3.allowClear,\n    onChange = _ref3.onChange,\n    classes = _ref3.classNames,\n    className = _ref3.className,\n    disabled = _ref3.disabled,\n    rest = _objectWithoutProperties(_ref3, _excluded2);\n  // ============================== Value ===============================\n  var _useMergedState3 = useMergedState('', {\n      defaultValue: defaultValue,\n      value: customValue\n    }),\n    _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n    mergedValue = _useMergedState4[0],\n    setMergedValue = _useMergedState4[1];\n\n  // ============================== Change ==============================\n  var triggerChange = function triggerChange(currentValue) {\n    setMergedValue(currentValue);\n    onChange === null || onChange === void 0 || onChange(currentValue);\n  };\n\n  // ============================== Reset ===============================\n  var handleReset = function handleReset() {\n    triggerChange('');\n  };\n  return /*#__PURE__*/React.createElement(BaseInput, {\n    suffix: suffix,\n    prefixCls: prefixCls,\n    value: mergedValue,\n    allowClear: allowClear,\n    handleReset: handleReset,\n    className: className,\n    classNames: classes,\n    disabled: disabled\n  }, /*#__PURE__*/React.createElement(InternalMentions, _extends({\n    className: classes === null || classes === void 0 ? void 0 : classes.mentions,\n    prefixCls: prefixCls,\n    ref: ref,\n    onChange: triggerChange\n  }, rest)));\n});\nMentions.Option = Option;\nexport default Mentions;","map":{"version":3,"names":["_extends","_objectSpread","_slicedToArray","_objectWithoutProperties","_excluded","_excluded2","classNames","BaseInput","TextArea","toArray","useMergedState","KeyCode","warning","React","forwardRef","useEffect","useMemo","useRef","useState","useEffectState","KeywordTrigger","MentionsContext","Option","filterOption","defaultFilterOption","getBeforeSelectionText","getLastMeasureIndex","replaceWithMeasure","setInputSelection","validateSearch","defaultValidateSearch","InternalMentions","props","ref","prefixCls","className","style","_props$prefix","prefix","_props$split","split","_props$notFoundConten","notFoundContent","value","defaultValue","children","options","open","allowClear","_props$validateSearch","_props$filterOption","onChange","onKeyDown","onKeyUp","onPressEnter","onSearch","onSelect","onFocus","onBlur","transitionName","placement","direction","getPopupContainer","dropdownClassName","_props$rows","rows","restProps","mergedPrefix","Array","isArray","textareaRef","measureRef","getTextArea","_textareaRef$current","current","resizableTextArea","textArea","useImperativeHandle","_textareaRef$current4","focus","_textareaRef$current2","blur","_textareaRef$current3","textarea","_useState","_useState2","measuring","setMeasuring","_useState3","_useState4","measureText","setMeasureText","_useState5","_useState6","measurePrefix","setMeasurePrefix","_useState7","_useState8","measureLocation","setMeasureLocation","_useState9","_useState10","activeIndex","setActiveIndex","_useState11","_useState12","isFocus","setIsFocus","_useMergedState","_useMergedState2","mergedValue","setMergedValue","scrollTop","_React$useMemo","process","env","NODE_ENV","i","length","curPrefix","index","lastIndexOf","_React$useMemo2","mergedMeasuring","mergedMeasureText","mergedMeasurePrefix","mergedMeasureLocation","getOptions","useCallback","targetMeasureText","list","map","item","_item$key","key","_ref","optionProps","label","filter","option","mergedOptions","onSelectionEffect","startMeasure","nextMeasureText","nextMeasurePrefix","nextMeasureLocation","stopMeasure","callback","triggerChange","nextValue","onInternalChange","_ref2","target","selectOption","_getTextArea","_option$value","mentionValue","_replaceWithMeasure","targetText","selectionStart","text","selectionLocation","onInternalKeyDown","event","which","UP","DOWN","optionLen","offset","newActiveIndex","preventDefault","ESC","ENTER","_option","onInternalKeyUp","selectionStartText","_getLastMeasureIndex","measureIndex","location","indexOf","slice","validateMeasure","matchOption","onInternalPressEnter","focusRef","onInternalFocus","window","clearTimeout","onInternalBlur","setTimeout","onDropdownFocus","onDropdownBlur","createElement","concat","Provider","visible","Mentions","_ref3","suffix","_ref3$prefixCls","customValue","classes","disabled","rest","_useMergedState3","_useMergedState4","currentValue","handleReset","mentions"],"sources":["/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/node_modules/rc-mentions/es/Mentions.js"],"sourcesContent":["import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"className\", \"style\", \"prefix\", \"split\", \"notFoundContent\", \"value\", \"defaultValue\", \"children\", \"options\", \"open\", \"allowClear\", \"validateSearch\", \"filterOption\", \"onChange\", \"onKeyDown\", \"onKeyUp\", \"onPressEnter\", \"onSearch\", \"onSelect\", \"onFocus\", \"onBlur\", \"transitionName\", \"placement\", \"direction\", \"getPopupContainer\", \"dropdownClassName\", \"rows\"],\n  _excluded2 = [\"suffix\", \"prefixCls\", \"defaultValue\", \"value\", \"allowClear\", \"onChange\", \"classNames\", \"className\", \"disabled\"];\nimport classNames from 'classnames';\nimport { BaseInput } from 'rc-input';\nimport TextArea from 'rc-textarea';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport warning from \"rc-util/es/warning\";\nimport React, { forwardRef, useEffect, useMemo, useRef, useState } from 'react';\nimport useEffectState from \"./hooks/useEffectState\";\nimport KeywordTrigger from \"./KeywordTrigger\";\nimport MentionsContext from \"./MentionsContext\";\nimport Option from \"./Option\";\nimport { filterOption as defaultFilterOption, getBeforeSelectionText, getLastMeasureIndex, replaceWithMeasure, setInputSelection, validateSearch as defaultValidateSearch } from \"./util\";\nvar InternalMentions = /*#__PURE__*/forwardRef(function (props, ref) {\n  var prefixCls = props.prefixCls,\n    className = props.className,\n    style = props.style,\n    _props$prefix = props.prefix,\n    prefix = _props$prefix === void 0 ? '@' : _props$prefix,\n    _props$split = props.split,\n    split = _props$split === void 0 ? ' ' : _props$split,\n    _props$notFoundConten = props.notFoundContent,\n    notFoundContent = _props$notFoundConten === void 0 ? 'Not Found' : _props$notFoundConten,\n    value = props.value,\n    defaultValue = props.defaultValue,\n    children = props.children,\n    options = props.options,\n    open = props.open,\n    allowClear = props.allowClear,\n    _props$validateSearch = props.validateSearch,\n    validateSearch = _props$validateSearch === void 0 ? defaultValidateSearch : _props$validateSearch,\n    _props$filterOption = props.filterOption,\n    filterOption = _props$filterOption === void 0 ? defaultFilterOption : _props$filterOption,\n    onChange = props.onChange,\n    onKeyDown = props.onKeyDown,\n    onKeyUp = props.onKeyUp,\n    onPressEnter = props.onPressEnter,\n    onSearch = props.onSearch,\n    onSelect = props.onSelect,\n    onFocus = props.onFocus,\n    onBlur = props.onBlur,\n    transitionName = props.transitionName,\n    placement = props.placement,\n    direction = props.direction,\n    getPopupContainer = props.getPopupContainer,\n    dropdownClassName = props.dropdownClassName,\n    _props$rows = props.rows,\n    rows = _props$rows === void 0 ? 1 : _props$rows,\n    restProps = _objectWithoutProperties(props, _excluded);\n  var mergedPrefix = useMemo(function () {\n    return Array.isArray(prefix) ? prefix : [prefix];\n  }, [prefix]);\n\n  // =============================== Refs ===============================\n  var textareaRef = useRef(null);\n  var measureRef = useRef(null);\n  var getTextArea = function getTextArea() {\n    var _textareaRef$current;\n    return (_textareaRef$current = textareaRef.current) === null || _textareaRef$current === void 0 || (_textareaRef$current = _textareaRef$current.resizableTextArea) === null || _textareaRef$current === void 0 ? void 0 : _textareaRef$current.textArea;\n  };\n  React.useImperativeHandle(ref, function () {\n    var _textareaRef$current4;\n    return {\n      focus: function focus() {\n        var _textareaRef$current2;\n        return (_textareaRef$current2 = textareaRef.current) === null || _textareaRef$current2 === void 0 ? void 0 : _textareaRef$current2.focus();\n      },\n      blur: function blur() {\n        var _textareaRef$current3;\n        return (_textareaRef$current3 = textareaRef.current) === null || _textareaRef$current3 === void 0 ? void 0 : _textareaRef$current3.blur();\n      },\n      textarea: (_textareaRef$current4 = textareaRef.current) === null || _textareaRef$current4 === void 0 || (_textareaRef$current4 = _textareaRef$current4.resizableTextArea) === null || _textareaRef$current4 === void 0 ? void 0 : _textareaRef$current4.textArea\n    };\n  });\n\n  // ============================== State ===============================\n  var _useState = useState(false),\n    _useState2 = _slicedToArray(_useState, 2),\n    measuring = _useState2[0],\n    setMeasuring = _useState2[1];\n  var _useState3 = useState(''),\n    _useState4 = _slicedToArray(_useState3, 2),\n    measureText = _useState4[0],\n    setMeasureText = _useState4[1];\n  var _useState5 = useState(''),\n    _useState6 = _slicedToArray(_useState5, 2),\n    measurePrefix = _useState6[0],\n    setMeasurePrefix = _useState6[1];\n  var _useState7 = useState(0),\n    _useState8 = _slicedToArray(_useState7, 2),\n    measureLocation = _useState8[0],\n    setMeasureLocation = _useState8[1];\n  var _useState9 = useState(0),\n    _useState10 = _slicedToArray(_useState9, 2),\n    activeIndex = _useState10[0],\n    setActiveIndex = _useState10[1];\n  var _useState11 = useState(false),\n    _useState12 = _slicedToArray(_useState11, 2),\n    isFocus = _useState12[0],\n    setIsFocus = _useState12[1];\n\n  // ============================== Value ===============================\n  var _useMergedState = useMergedState('', {\n      defaultValue: defaultValue,\n      value: value\n    }),\n    _useMergedState2 = _slicedToArray(_useMergedState, 2),\n    mergedValue = _useMergedState2[0],\n    setMergedValue = _useMergedState2[1];\n\n  // =============================== Open ===============================\n  useEffect(function () {\n    // Sync measure div top with textarea for rc-trigger usage\n    if (measuring && measureRef.current) {\n      measureRef.current.scrollTop = getTextArea().scrollTop;\n    }\n  }, [measuring]);\n  var _React$useMemo = React.useMemo(function () {\n      if (open) {\n        if (process.env.NODE_ENV !== 'production') {\n          warning(false, '`open` of Mentions is only used for debug usage. Do not use in you production.');\n        }\n        for (var i = 0; i < mergedPrefix.length; i += 1) {\n          var curPrefix = mergedPrefix[i];\n          var index = mergedValue.lastIndexOf(curPrefix);\n          if (index >= 0) {\n            return [true, '', curPrefix, index];\n          }\n        }\n      }\n      return [measuring, measureText, measurePrefix, measureLocation];\n    }, [open, measuring, mergedPrefix, mergedValue, measureText, measurePrefix, measureLocation]),\n    _React$useMemo2 = _slicedToArray(_React$useMemo, 4),\n    mergedMeasuring = _React$useMemo2[0],\n    mergedMeasureText = _React$useMemo2[1],\n    mergedMeasurePrefix = _React$useMemo2[2],\n    mergedMeasureLocation = _React$useMemo2[3];\n\n  // ============================== Option ==============================\n  var getOptions = React.useCallback(function (targetMeasureText) {\n    var list;\n    if (options && options.length > 0) {\n      list = options.map(function (item) {\n        var _item$key;\n        return _objectSpread(_objectSpread({}, item), {}, {\n          key: (_item$key = item === null || item === void 0 ? void 0 : item.key) !== null && _item$key !== void 0 ? _item$key : item.value\n        });\n      });\n    } else {\n      list = toArray(children).map(function (_ref) {\n        var optionProps = _ref.props,\n          key = _ref.key;\n        return _objectSpread(_objectSpread({}, optionProps), {}, {\n          label: optionProps.children,\n          key: key || optionProps.value\n        });\n      });\n    }\n    return list.filter(function (option) {\n      /** Return all result if `filterOption` is false. */\n      if (filterOption === false) {\n        return true;\n      }\n      return filterOption(targetMeasureText, option);\n    });\n  }, [children, options, filterOption]);\n  var mergedOptions = React.useMemo(function () {\n    return getOptions(mergedMeasureText);\n  }, [getOptions, mergedMeasureText]);\n\n  // ============================= Measure ==============================\n  // Mark that we will reset input selection to target position when user select option\n  var onSelectionEffect = useEffectState();\n  var startMeasure = function startMeasure(nextMeasureText, nextMeasurePrefix, nextMeasureLocation) {\n    setMeasuring(true);\n    setMeasureText(nextMeasureText);\n    setMeasurePrefix(nextMeasurePrefix);\n    setMeasureLocation(nextMeasureLocation);\n    setActiveIndex(0);\n  };\n  var stopMeasure = function stopMeasure(callback) {\n    setMeasuring(false);\n    setMeasureLocation(0);\n    setMeasureText('');\n    onSelectionEffect(callback);\n  };\n\n  // ============================== Change ==============================\n  var triggerChange = function triggerChange(nextValue) {\n    setMergedValue(nextValue);\n    onChange === null || onChange === void 0 || onChange(nextValue);\n  };\n  var onInternalChange = function onInternalChange(_ref2) {\n    var nextValue = _ref2.target.value;\n    triggerChange(nextValue);\n  };\n  var selectOption = function selectOption(option) {\n    var _getTextArea;\n    var _option$value = option.value,\n      mentionValue = _option$value === void 0 ? '' : _option$value;\n    var _replaceWithMeasure = replaceWithMeasure(mergedValue, {\n        measureLocation: mergedMeasureLocation,\n        targetText: mentionValue,\n        prefix: mergedMeasurePrefix,\n        selectionStart: (_getTextArea = getTextArea()) === null || _getTextArea === void 0 ? void 0 : _getTextArea.selectionStart,\n        split: split\n      }),\n      text = _replaceWithMeasure.text,\n      selectionLocation = _replaceWithMeasure.selectionLocation;\n    triggerChange(text);\n    stopMeasure(function () {\n      // We need restore the selection position\n      setInputSelection(getTextArea(), selectionLocation);\n    });\n    onSelect === null || onSelect === void 0 || onSelect(option, mergedMeasurePrefix);\n  };\n\n  // ============================= KeyEvent =============================\n  // Check if hit the measure keyword\n  var onInternalKeyDown = function onInternalKeyDown(event) {\n    var which = event.which;\n    onKeyDown === null || onKeyDown === void 0 || onKeyDown(event);\n\n    // Skip if not measuring\n    if (!mergedMeasuring) {\n      return;\n    }\n    if (which === KeyCode.UP || which === KeyCode.DOWN) {\n      // Control arrow function\n      var optionLen = mergedOptions.length;\n      var offset = which === KeyCode.UP ? -1 : 1;\n      var newActiveIndex = (activeIndex + offset + optionLen) % optionLen;\n      setActiveIndex(newActiveIndex);\n      event.preventDefault();\n    } else if (which === KeyCode.ESC) {\n      stopMeasure();\n    } else if (which === KeyCode.ENTER) {\n      // Measure hit\n      event.preventDefault();\n      if (!mergedOptions.length) {\n        stopMeasure();\n        return;\n      }\n      var _option = mergedOptions[activeIndex];\n      selectOption(_option);\n    }\n  };\n\n  /**\n   * When to start measure:\n   * 1. When user press `prefix`\n   * 2. When measureText !== prevMeasureText\n   *  - If measure hit\n   *  - If measuring\n   *\n   * When to stop measure:\n   * 1. Selection is out of range\n   * 2. Contains `space`\n   * 3. ESC or select one\n   */\n  var onInternalKeyUp = function onInternalKeyUp(event) {\n    var key = event.key,\n      which = event.which;\n    var target = event.target;\n    var selectionStartText = getBeforeSelectionText(target);\n    var _getLastMeasureIndex = getLastMeasureIndex(selectionStartText, mergedPrefix),\n      measureIndex = _getLastMeasureIndex.location,\n      nextMeasurePrefix = _getLastMeasureIndex.prefix;\n\n    // If the client implements an onKeyUp handler, call it\n    onKeyUp === null || onKeyUp === void 0 || onKeyUp(event);\n\n    // Skip if match the white key list\n    if ([KeyCode.ESC, KeyCode.UP, KeyCode.DOWN, KeyCode.ENTER].indexOf(which) !== -1) {\n      return;\n    }\n    if (measureIndex !== -1) {\n      var nextMeasureText = selectionStartText.slice(measureIndex + nextMeasurePrefix.length);\n      var validateMeasure = validateSearch(nextMeasureText, split);\n      var matchOption = !!getOptions(nextMeasureText).length;\n      if (validateMeasure) {\n        if (key === nextMeasurePrefix || key === 'Shift' || mergedMeasuring || nextMeasureText !== mergedMeasureText && matchOption) {\n          startMeasure(nextMeasureText, nextMeasurePrefix, measureIndex);\n        }\n      } else if (mergedMeasuring) {\n        // Stop if measureText is invalidate\n        stopMeasure();\n      }\n\n      /**\n       * We will trigger `onSearch` to developer since they may use for async update.\n       * If met `space` means user finished searching.\n       */\n      if (onSearch && validateMeasure) {\n        onSearch(nextMeasureText, nextMeasurePrefix);\n      }\n    } else if (mergedMeasuring) {\n      stopMeasure();\n    }\n  };\n  var onInternalPressEnter = function onInternalPressEnter(event) {\n    if (!mergedMeasuring && onPressEnter) {\n      onPressEnter(event);\n    }\n  };\n\n  // ============================ Focus Blur ============================\n  var focusRef = useRef();\n  var onInternalFocus = function onInternalFocus(event) {\n    window.clearTimeout(focusRef.current);\n    if (!isFocus && event && onFocus) {\n      onFocus(event);\n    }\n    setIsFocus(true);\n  };\n  var onInternalBlur = function onInternalBlur(event) {\n    focusRef.current = window.setTimeout(function () {\n      setIsFocus(false);\n      stopMeasure();\n      onBlur === null || onBlur === void 0 || onBlur(event);\n    }, 0);\n  };\n  var onDropdownFocus = function onDropdownFocus() {\n    onInternalFocus();\n  };\n  var onDropdownBlur = function onDropdownBlur() {\n    onInternalBlur();\n  };\n\n  // ============================== Render ==============================\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(prefixCls, className),\n    style: style\n  }, /*#__PURE__*/React.createElement(TextArea, _extends({\n    ref: textareaRef,\n    value: mergedValue\n  }, restProps, {\n    rows: rows,\n    onChange: onInternalChange,\n    onKeyDown: onInternalKeyDown,\n    onKeyUp: onInternalKeyUp,\n    onPressEnter: onInternalPressEnter,\n    onFocus: onInternalFocus,\n    onBlur: onInternalBlur\n  })), mergedMeasuring && /*#__PURE__*/React.createElement(\"div\", {\n    ref: measureRef,\n    className: \"\".concat(prefixCls, \"-measure\")\n  }, mergedValue.slice(0, mergedMeasureLocation), /*#__PURE__*/React.createElement(MentionsContext.Provider, {\n    value: {\n      notFoundContent: notFoundContent,\n      activeIndex: activeIndex,\n      setActiveIndex: setActiveIndex,\n      selectOption: selectOption,\n      onFocus: onDropdownFocus,\n      onBlur: onDropdownBlur\n    }\n  }, /*#__PURE__*/React.createElement(KeywordTrigger, {\n    prefixCls: prefixCls,\n    transitionName: transitionName,\n    placement: placement,\n    direction: direction,\n    options: mergedOptions,\n    visible: true,\n    getPopupContainer: getPopupContainer,\n    dropdownClassName: dropdownClassName\n  }, /*#__PURE__*/React.createElement(\"span\", null, mergedMeasurePrefix))), mergedValue.slice(mergedMeasureLocation + mergedMeasurePrefix.length)));\n});\nvar Mentions = /*#__PURE__*/forwardRef(function (_ref3, ref) {\n  var suffix = _ref3.suffix,\n    _ref3$prefixCls = _ref3.prefixCls,\n    prefixCls = _ref3$prefixCls === void 0 ? 'rc-mentions' : _ref3$prefixCls,\n    defaultValue = _ref3.defaultValue,\n    customValue = _ref3.value,\n    allowClear = _ref3.allowClear,\n    onChange = _ref3.onChange,\n    classes = _ref3.classNames,\n    className = _ref3.className,\n    disabled = _ref3.disabled,\n    rest = _objectWithoutProperties(_ref3, _excluded2);\n  // ============================== Value ===============================\n  var _useMergedState3 = useMergedState('', {\n      defaultValue: defaultValue,\n      value: customValue\n    }),\n    _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n    mergedValue = _useMergedState4[0],\n    setMergedValue = _useMergedState4[1];\n\n  // ============================== Change ==============================\n  var triggerChange = function triggerChange(currentValue) {\n    setMergedValue(currentValue);\n    onChange === null || onChange === void 0 || onChange(currentValue);\n  };\n\n  // ============================== Reset ===============================\n  var handleReset = function handleReset() {\n    triggerChange('');\n  };\n  return /*#__PURE__*/React.createElement(BaseInput, {\n    suffix: suffix,\n    prefixCls: prefixCls,\n    value: mergedValue,\n    allowClear: allowClear,\n    handleReset: handleReset,\n    className: className,\n    classNames: classes,\n    disabled: disabled\n  }, /*#__PURE__*/React.createElement(InternalMentions, _extends({\n    className: classes === null || classes === void 0 ? void 0 : classes.mentions,\n    prefixCls: prefixCls,\n    ref: ref,\n    onChange: triggerChange\n  }, rest)));\n});\nMentions.Option = Option;\nexport default Mentions;"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}