{"version":3,"sources":["jsdelivr-header.js","/npm/cool-chat-ui@0.2.5/dist/index.js"],"names":[],"mappings":"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","file":"/npm/cool-chat-ui@0.2.5/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/cool-chat-ui@0.2.5/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar chatUiKitReact = require('@chatscope/chat-ui-kit-react');\nrequire('@chatscope/chat-ui-kit-styles/dist/default/styles.min.css');\nvar coolUtils = require('cool-utils');\nvar React = require('react');\nvar classNames = require('classnames');\nvar PerfectScrollbar = require('@chatscope/chat-ui-kit-react/dist/es/Scroll');\nvar ContentEditable = require('@chatscope/chat-ui-kit-react/dist/es/ContentEditable');\nvar lodashEs = require('lodash-es');\nvar dayjs = require('dayjs');\nvar reactHelmet = require('react-helmet');\n\nfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\nvar React__default = /*#__PURE__*/_interopDefaultLegacy(React);\nvar classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);\nvar PerfectScrollbar__default = /*#__PURE__*/_interopDefaultLegacy(PerfectScrollbar);\nvar ContentEditable__default = /*#__PURE__*/_interopDefaultLegacy(ContentEditable);\nvar dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);\n\nfunction _iterableToArrayLimit(arr, i) {\n  var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n  if (null != _i) {\n    var _s,\n      _e,\n      _x,\n      _r,\n      _arr = [],\n      _n = !0,\n      _d = !1;\n    try {\n      if (_x = (_i = _i.call(arr)).next, 0 === i) {\n        if (Object(_i) !== _i) return;\n        _n = !1;\n      } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n    } catch (err) {\n      _d = !0, _e = err;\n    } finally {\n      try {\n        if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;\n      } finally {\n        if (_d) throw _e;\n      }\n    }\n    return _arr;\n  }\n}\nfunction ownKeys(object, enumerableOnly) {\n  var keys = Object.keys(object);\n  if (Object.getOwnPropertySymbols) {\n    var symbols = Object.getOwnPropertySymbols(object);\n    enumerableOnly && (symbols = symbols.filter(function (sym) {\n      return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n    })), keys.push.apply(keys, symbols);\n  }\n  return keys;\n}\nfunction _objectSpread2(target) {\n  for (var i = 1; i < arguments.length; i++) {\n    var source = null != arguments[i] ? arguments[i] : {};\n    i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n      _defineProperty(target, key, source[key]);\n    }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n      Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n    });\n  }\n  return target;\n}\nfunction _classCallCheck(instance, Constructor) {\n  if (!(instance instanceof Constructor)) {\n    throw new TypeError(\"Cannot call a class as a function\");\n  }\n}\nfunction _defineProperties(target, props) {\n  for (var i = 0; i < props.length; i++) {\n    var descriptor = props[i];\n    descriptor.enumerable = descriptor.enumerable || false;\n    descriptor.configurable = true;\n    if (\"value\" in descriptor) descriptor.writable = true;\n    Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);\n  }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n  if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n  if (staticProps) _defineProperties(Constructor, staticProps);\n  Object.defineProperty(Constructor, \"prototype\", {\n    writable: false\n  });\n  return Constructor;\n}\nfunction _defineProperty(obj, key, value) {\n  key = _toPropertyKey(key);\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n  return obj;\n}\nfunction _inherits(subClass, superClass) {\n  if (typeof superClass !== \"function\" && superClass !== null) {\n    throw new TypeError(\"Super expression must either be null or a function\");\n  }\n  subClass.prototype = Object.create(superClass && superClass.prototype, {\n    constructor: {\n      value: subClass,\n      writable: true,\n      configurable: true\n    }\n  });\n  Object.defineProperty(subClass, \"prototype\", {\n    writable: false\n  });\n  if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _getPrototypeOf(o) {\n  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n    return o.__proto__ || Object.getPrototypeOf(o);\n  };\n  return _getPrototypeOf(o);\n}\nfunction _setPrototypeOf(o, p) {\n  _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n    o.__proto__ = p;\n    return o;\n  };\n  return _setPrototypeOf(o, p);\n}\nfunction _isNativeReflectConstruct() {\n  if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n  if (Reflect.construct.sham) return false;\n  if (typeof Proxy === \"function\") return true;\n  try {\n    Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n    return true;\n  } catch (e) {\n    return false;\n  }\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n  if (source == null) return {};\n  var target = {};\n  var sourceKeys = Object.keys(source);\n  var key, i;\n  for (i = 0; i < sourceKeys.length; i++) {\n    key = sourceKeys[i];\n    if (excluded.indexOf(key) >= 0) continue;\n    target[key] = source[key];\n  }\n  return target;\n}\nfunction _objectWithoutProperties(source, excluded) {\n  if (source == null) return {};\n  var target = _objectWithoutPropertiesLoose(source, excluded);\n  var key, i;\n  if (Object.getOwnPropertySymbols) {\n    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n    for (i = 0; i < sourceSymbolKeys.length; i++) {\n      key = sourceSymbolKeys[i];\n      if (excluded.indexOf(key) >= 0) continue;\n      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n      target[key] = source[key];\n    }\n  }\n  return target;\n}\nfunction _assertThisInitialized(self) {\n  if (self === void 0) {\n    throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n  }\n  return self;\n}\nfunction _possibleConstructorReturn(self, call) {\n  if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n    return call;\n  } else if (call !== void 0) {\n    throw new TypeError(\"Derived constructors may only return object or undefined\");\n  }\n  return _assertThisInitialized(self);\n}\nfunction _createSuper(Derived) {\n  var hasNativeReflectConstruct = _isNativeReflectConstruct();\n  return function _createSuperInternal() {\n    var Super = _getPrototypeOf(Derived),\n      result;\n    if (hasNativeReflectConstruct) {\n      var NewTarget = _getPrototypeOf(this).constructor;\n      result = Reflect.construct(Super, arguments, NewTarget);\n    } else {\n      result = Super.apply(this, arguments);\n    }\n    return _possibleConstructorReturn(this, result);\n  };\n}\nfunction _slicedToArray(arr, i) {\n  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\nfunction _toConsumableArray(arr) {\n  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\nfunction _arrayWithoutHoles(arr) {\n  if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\nfunction _arrayWithHoles(arr) {\n  if (Array.isArray(arr)) return arr;\n}\nfunction _iterableToArray(iter) {\n  if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n  if (!o) return;\n  if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n  var n = Object.prototype.toString.call(o).slice(8, -1);\n  if (n === \"Object\" && o.constructor) n = o.constructor.name;\n  if (n === \"Map\" || n === \"Set\") return Array.from(o);\n  if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n  if (len == null || len > arr.length) len = arr.length;\n  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n  return arr2;\n}\nfunction _nonIterableSpread() {\n  throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _nonIterableRest() {\n  throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _toPrimitive(input, hint) {\n  if (typeof input !== \"object\" || input === null) return input;\n  var prim = input[Symbol.toPrimitive];\n  if (prim !== undefined) {\n    var res = prim.call(input, hint || \"default\");\n    if (typeof res !== \"object\") return res;\n    throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n  }\n  return (hint === \"string\" ? String : Number)(input);\n}\nfunction _toPropertyKey(arg) {\n  var key = _toPrimitive(arg, \"string\");\n  return typeof key === \"symbol\" ? key : String(key);\n}\n\nvar imageUpload = \"data:image/png;base64,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\";\n\nvar _excluded = [\"fancyScroll\", \"children\", \"forwardedRef\"],\n  _excluded2 = [\"value\", \"onSend\", \"onChange\", \"autoFocus\", \"placeholder\", \"fancyScroll\", \"className\", \"activateAfterChange\", \"disabled\", \"sendDisabled\", \"sendOnReturnDisabled\", \"attachDisabled\", \"sendButton\", \"attachButton\", \"onAttachClick\", \"sendButtonProps\", \"messageInputHeader\", \"messageInputFooter\"];\nvar prefix = 'cs';\n// Because container depends on fancyScroll\n// it must be wrapped in additional container\nfunction editorContainer() {\n  var Container = /*#__PURE__*/function (_Component) {\n    _inherits(Container, _Component);\n    var _super = _createSuper(Container);\n    function Container() {\n      _classCallCheck(this, Container);\n      return _super.apply(this, arguments);\n    }\n    _createClass(Container, [{\n      key: \"render\",\n      value: function render() {\n        var _this$props = this.props,\n          fancyScroll = _this$props.fancyScroll,\n          children = _this$props.children,\n          forwardedRef = _this$props.forwardedRef,\n          rest = _objectWithoutProperties(_this$props, _excluded);\n        return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, fancyScroll === true && /*#__PURE__*/React__default['default'].createElement(PerfectScrollbar__default['default'], _objectSpread2(_objectSpread2({\n          ref: function ref(elRef) {\n            forwardedRef.current = elRef;\n          }\n        }, rest), {}, {\n          options: {\n            suppressScrollX: true\n          }\n        }), children), fancyScroll === false && /*#__PURE__*/React__default['default'].createElement(\"div\", _objectSpread2({\n          ref: forwardedRef\n        }, rest), children));\n      }\n    }]);\n    return Container;\n  }(React.Component);\n  return /*#__PURE__*/React__default['default'].forwardRef(function (props, ref) {\n    return /*#__PURE__*/React__default['default'].createElement(Container, _objectSpread2({\n      forwardedRef: ref\n    }, props));\n  });\n}\nvar EditorContainer = editorContainer();\nvar useControllableState = function useControllableState(value, initialValue) {\n  var initial = typeof value !== 'undefined' ? value : initialValue;\n  var _useState = React.useState(initial),\n    _useState2 = _slicedToArray(_useState, 2),\n    stateValue = _useState2[0],\n    setStateValue = _useState2[1];\n  var effectiveValue = typeof value !== 'undefined' ? value : stateValue;\n  return [effectiveValue, function (newValue) {\n    setStateValue(newValue);\n  }];\n};\nfunction MessageInputInner(_ref, ref) {\n  var value = _ref.value,\n    _ref$onSend = _ref.onSend,\n    onSend = _ref$onSend === void 0 ? lodashEs.noop : _ref$onSend,\n    _ref$onChange = _ref.onChange,\n    onChange = _ref$onChange === void 0 ? lodashEs.noop : _ref$onChange,\n    _ref$autoFocus = _ref.autoFocus,\n    autoFocus = _ref$autoFocus === void 0 ? false : _ref$autoFocus,\n    _ref$placeholder = _ref.placeholder,\n    placeholder = _ref$placeholder === void 0 ? '' : _ref$placeholder,\n    _ref$fancyScroll = _ref.fancyScroll,\n    fancyScroll = _ref$fancyScroll === void 0 ? true : _ref$fancyScroll,\n    _ref$className = _ref.className,\n    className = _ref$className === void 0 ? '' : _ref$className,\n    _ref$activateAfterCha = _ref.activateAfterChange,\n    activateAfterChange = _ref$activateAfterCha === void 0 ? false : _ref$activateAfterCha,\n    _ref$disabled = _ref.disabled,\n    disabled = _ref$disabled === void 0 ? false : _ref$disabled,\n    _ref$sendDisabled = _ref.sendDisabled,\n    sendDisabled = _ref$sendDisabled === void 0 ? false : _ref$sendDisabled,\n    _ref$sendOnReturnDisa = _ref.sendOnReturnDisabled,\n    sendOnReturnDisabled = _ref$sendOnReturnDisa === void 0 ? false : _ref$sendOnReturnDisa,\n    _ref$attachDisabled = _ref.attachDisabled,\n    attachDisabled = _ref$attachDisabled === void 0 ? false : _ref$attachDisabled,\n    sendButton = _ref.sendButton,\n    attachButton = _ref.attachButton,\n    _ref$onAttachClick = _ref.onAttachClick,\n    onAttachClick = _ref$onAttachClick === void 0 ? lodashEs.noop : _ref$onAttachClick,\n    sendButtonProps = _ref.sendButtonProps,\n    messageInputHeader = _ref.messageInputHeader,\n    messageInputFooter = _ref.messageInputFooter,\n    rest = _objectWithoutProperties(_ref, _excluded2);\n  var scrollRef = React.useRef();\n  var msgRef = React.useRef();\n  var _useControllableState = useControllableState(value, ''),\n    _useControllableState2 = _slicedToArray(_useControllableState, 2),\n    stateValue = _useControllableState2[0],\n    setStateValue = _useControllableState2[1];\n  var _useControllableState3 = useControllableState(sendDisabled, true),\n    _useControllableState4 = _slicedToArray(_useControllableState3, 2),\n    stateSendDisabled = _useControllableState4[0],\n    setStateSendDisabled = _useControllableState4[1];\n  // Public API\n  var focus = function focus() {\n    if (typeof msgRef.current !== 'undefined') {\n      msgRef.current.focus();\n    }\n  };\n  // Return object with public Api\n  React.useImperativeHandle(ref, function () {\n    return {\n      focus: focus\n    };\n  });\n  // Set focus\n  React.useEffect(function () {\n    if (autoFocus === true) {\n      focus();\n    }\n  }, []);\n  // Update scroll\n  React.useEffect(function () {\n    if (typeof scrollRef.current.updateScroll === 'function') {\n      scrollRef.current.updateScroll();\n    }\n  });\n  var getContent = function getContent() {\n    // Direct reference to contenteditable div\n    var contentEditableRef = msgRef.current.msgRef.current;\n    return [contentEditableRef.textContent, contentEditableRef.innerText, contentEditableRef.cloneNode(true).childNodes];\n  };\n  var send = function send() {\n    if (stateValue.length > 0) {\n      // Clear input only when it's uncontrolled mode\n      if (value === undefined) {\n        setStateValue('');\n      }\n      // Disable send button only when it's uncontrolled mode\n      if (typeof sendDisabled === 'undefined') {\n        setStateSendDisabled(true);\n      }\n      var content = getContent();\n      onSend(stateValue, content[0], content[1], content[2]);\n    }\n  };\n  var handleKeyPress = function handleKeyPress(evt) {\n    if (evt.key === 'Enter' && evt.shiftKey === false && sendOnReturnDisabled === false) {\n      evt.preventDefault();\n      send();\n    }\n  };\n  var handleChange = function handleChange(innerHTML, textContent, innerText) {\n    setStateValue(innerHTML);\n    if (typeof sendDisabled === 'undefined') {\n      setStateSendDisabled(textContent.length === 0);\n    }\n    if (typeof scrollRef.current.updateScroll === 'function') {\n      scrollRef.current.updateScroll();\n    }\n    var content = getContent();\n    onChange(innerHTML, textContent, innerText, content[2]);\n  };\n  var cName = \"\".concat(prefix, \"-message-input\"),\n    ph = typeof placeholder === 'string' ? placeholder : '';\n  var getAttachButton = function getAttachButton() {\n    if (attachButton === true) {\n      var _sendButtonProps$size, _sendButtonProps$size2;\n      return /*#__PURE__*/React__default['default'].createElement(\"div\", {\n        className: \"\".concat(cName, \"__tools\")\n      }, /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.Button, {\n        onClick: onAttachClick,\n        disabled: disabled === true || attachDisabled === true,\n        icon: /*#__PURE__*/React__default['default'].createElement(\"img\", {\n          src: imageUpload,\n          style: {\n            width: sendButtonProps === null || sendButtonProps === void 0 ? void 0 : (_sendButtonProps$size = sendButtonProps.size) === null || _sendButtonProps$size === void 0 ? void 0 : _sendButtonProps$size[1],\n            height: sendButtonProps === null || sendButtonProps === void 0 ? void 0 : (_sendButtonProps$size2 = sendButtonProps.size) === null || _sendButtonProps$size2 === void 0 ? void 0 : _sendButtonProps$size2[1]\n          }\n        })\n      }));\n    } else if (attachButton === false) {\n      return null;\n    } else if ( /*#__PURE__*/React.isValidElement(attachButton) || lodashEs.isString(attachButton) || lodashEs.isNumber(attachButton)) {\n      return /*#__PURE__*/React__default['default'].createElement(\"div\", {\n        className: \"\".concat(cName, \"__tools\")\n      }, attachButton);\n    }\n    return null;\n  };\n  var getSendButton = function getSendButton() {\n    if (sendButton === true) {\n      var _sendButtonProps$size3, _sendButtonProps$size4;\n      return /*#__PURE__*/React__default['default'].createElement(\"div\", {\n        className: \"\".concat(cName, \"__tools\")\n      }, /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.Button, {\n        onClick: send,\n        disabled: disabled === true || stateSendDisabled === true,\n        icon: sendButtonProps ? /*#__PURE__*/React__default['default'].createElement(\"img\", {\n          src: sendButtonProps.image,\n          style: {\n            width: (_sendButtonProps$size3 = sendButtonProps.size) === null || _sendButtonProps$size3 === void 0 ? void 0 : _sendButtonProps$size3[0],\n            height: (_sendButtonProps$size4 = sendButtonProps.size) === null || _sendButtonProps$size4 === void 0 ? void 0 : _sendButtonProps$size4[1]\n          }\n        }) : null\n      }));\n    } else if (sendButton === false) {\n      return null;\n    } else if ( /*#__PURE__*/React.isValidElement(sendButton) || lodashEs.isString(sendButton) || lodashEs.isNumber(sendButton)) {\n      return /*#__PURE__*/React__default['default'].createElement(\"div\", {\n        className: \"\".concat(cName, \"__tools\")\n      }, sendButton);\n    }\n    return null;\n  };\n  return /*#__PURE__*/React__default['default'].createElement(\"div\", null, messageInputHeader, /*#__PURE__*/React__default['default'].createElement(\"div\", _objectSpread2(_objectSpread2({}, rest), {}, {\n    className: classNames__default['default'](cName, _defineProperty({}, \"\".concat(cName, \"--disabled\"), disabled), className)\n  }), /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"\".concat(cName, \"__content-editor-wrapper\")\n  }, /*#__PURE__*/React__default['default'].createElement(EditorContainer, {\n    fancyScroll: fancyScroll,\n    ref: scrollRef,\n    className: \"\".concat(cName, \"__content-editor-container\")\n  }, /*#__PURE__*/React__default['default'].createElement(ContentEditable__default['default'], {\n    ref: msgRef,\n    className: \"\".concat(cName, \"__content-editor\"),\n    disabled: disabled,\n    placeholder: ph,\n    onKeyPress: handleKeyPress,\n    onChange: handleChange,\n    activateAfterChange: activateAfterChange,\n    value: stateValue\n  }))), getAttachButton(), getSendButton()), messageInputFooter);\n}\nvar MessageInput = /*#__PURE__*/React.forwardRef(MessageInputInner);\nMessageInput.displayName = 'MessageInput';\n\nvar collapseIcon = \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%3Csvg%20t%3D%221684995697409%22%20class%3D%22icon%22%20viewBox%3D%220%200%201706%201024%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20p-id%3D%224025%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%22333.203125%22%20height%3D%22200%22%3E%3Cpath%20d%3D%22M1218.37157427%20664.9746312L853.01142877%20299.69839953%20487.73519712%20664.9746312l59.32696925%2059.32696927L853.01142877%20418.35233757%201159.0446055%20724.30160047z%22%20fill%3D%22%23181818%22%20p-id%3D%224026%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E\";\n\nvar defaultAvatar = \"data:image/png;base64,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\";\n\nvar expandIcon = \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%3Csvg%20t%3D%221685092731830%22%20class%3D%22icon%22%20viewBox%3D%220%200%201706%201024%22%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20p-id%3D%2236602%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%22333.203125%22%20height%3D%22200%22%3E%3Cpath%20d%3D%22M1232.75190145%20348.82706005L843.03441292%20738.4550405%20453.40643249%20348.82706005%20516.68853303%20285.5449595%20843.03441292%20611.89083992%201169.46980143%20285.5449595z%22%20fill%3D%22%23181818%22%20p-id%3D%2236603%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E\";\n\nvar stringConstants = {\n  // Declare all constant strings here, sort them alphabetically.\n  AnswerMessageError: '服务出错，请稍后再试...',\n  DefaultSeparator: '已开启新的对话，您可以开始新一轮建模',\n  FeedbackContainerPlaceholder: '劳烦您描述遇到的问题...',\n  FeedbackContainerTitle: '请选择无帮助的最主要原因，帮助我进步吧',\n  FeedbackHelpNo: '无帮助',\n  FeedbackHelpYes: '有帮助',\n  FeedbackSubmitText: '确认提交',\n  FeedbackHasSubmitText: '已提交',\n  FeedbackThanksText: '感谢你的宝贵建议，我们会继续努力～',\n  InputPlaceholder: '请输入问题',\n  ListExpandText: '展开',\n  ListCollapseText: '收起',\n  WelcomeBlockTitle: '欢迎使用AI执法助手，您可以:',\n  WelcomeBlockPrefixOne: '咨询执法相关法律依据',\n  WelcomeBlockPrefixTwo: '咨询执法的流程规范',\n  WelcomeBlockPrefixThree: '咨询执法的相关处理经验'\n};\n// Constant class names for the elements which are bounded with click event.\nvar chatUILIClickable = 'chat-ui-li-clickable';\nvar chatUIMessageCollapseButton = 'message-list-collapse';\nvar chatUIMessageCollapseClass = 'message-list-ul-collapse';\nvar chatUIMessageExpandClass = 'message-list-ul-expand';\nvar chatUIAutoScrollContainer = 'scrollbar-container';\nvar chatUIEditableInputContainer = 'cs-message-input__content-editor';\nvar chatUIImageClickClass = 'message-image';\n// Four types used in the component of \"FeedbackMessage\".\nvar FeedbackTypes = ['答案看不懂', '未解决问题', '答非所问', '操作困难'];\n\nvar userAvatar = \"data:image/png;base64,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\";\n\nvar FeedbackMessage = function FeedbackMessage(_ref) {\n  var onSubmit = _ref.onSubmit,\n    _ref$defaultFeedbackC = _ref.defaultFeedbackContent,\n    defaultFeedbackContent = _ref$defaultFeedbackC === void 0 ? '' : _ref$defaultFeedbackC,\n    _ref$messageTraceId = _ref.messageTraceId,\n    messageTraceId = _ref$messageTraceId === void 0 ? '' : _ref$messageTraceId,\n    _ref$defaultFeedbackT = _ref.defaultFeedbackType,\n    defaultFeedbackType = _ref$defaultFeedbackT === void 0 ? '' : _ref$defaultFeedbackT,\n    _ref$defaultFeedbackC2 = _ref.defaultFeedbackCanEdit,\n    defaultFeedbackCanEdit = _ref$defaultFeedbackC2 === void 0 ? true : _ref$defaultFeedbackC2,\n    _ref$disabled = _ref.disabled,\n    disabled = _ref$disabled === void 0 ? false : _ref$disabled;\n  var _useContext = React.useContext(ChatUiContext),\n    feedbackReasonsList = _useContext.feedbackReasonsList;\n  var _useState = React.useState(defaultFeedbackType),\n    _useState2 = _slicedToArray(_useState, 2),\n    feedbackType = _useState2[0],\n    setFeedbackType = _useState2[1];\n  var _useState3 = React.useState(defaultFeedbackContent),\n    _useState4 = _slicedToArray(_useState3, 2),\n    feedbackContent = _useState4[0],\n    setFeedbackContent = _useState4[1];\n  var _useState5 = React.useState(defaultFeedbackCanEdit),\n    _useState6 = _slicedToArray(_useState5, 2),\n    canFeedbackEdit = _useState6[0],\n    setCanFeedbackEdit = _useState6[1];\n  var onSubmitFeedBack = function onSubmitFeedBack() {\n    if (!feedbackType) {\n      return;\n    }\n    onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit({\n      type: feedbackType,\n      reason: feedbackContent,\n      messageTraceId: messageTraceId\n    });\n    setCanFeedbackEdit(false);\n  };\n  var onFeedbackChange = function onFeedbackChange(type) {\n    if (type === feedbackType) {\n      return;\n    }\n    setFeedbackType(type);\n    setCanFeedbackEdit(true);\n  };\n  var renderFeedbackButtons = function renderFeedbackButtons() {\n    var renderList = feedbackReasonsList.length ? feedbackReasonsList : FeedbackTypes;\n    return renderList.map(function (_type, _) {\n      return /*#__PURE__*/React__default['default'].createElement(\"button\", {\n        key: _type,\n        onClick: function onClick() {\n          return onFeedbackChange(_type);\n        },\n        className: \"feedback-button \".concat(_type === feedbackType && 'feedback-button-active')\n      }, _type);\n    });\n  };\n  return /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"feedback-container\"\n  }, /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"feedback-container-title\"\n  }, stringConstants.FeedbackContainerTitle), /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"feedback-content\"\n  }, /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"feedback-button-container\"\n  }, renderFeedbackButtons()), /*#__PURE__*/React__default['default'].createElement(\"textarea\", {\n    className: \"feedback-input-content\",\n    placeholder: stringConstants.FeedbackContainerPlaceholder,\n    value: feedbackContent,\n    onChange: function onChange(e) {\n      setFeedbackContent(e.target.value || '');\n      setCanFeedbackEdit(true);\n    }\n  })), /*#__PURE__*/React__default['default'].createElement(\"button\", {\n    className: \"feedback-submit-button \".concat(feedbackType && canFeedbackEdit && !disabled && 'feedback-submit-button-active'),\n    onClick: onSubmitFeedBack,\n    disabled: disabled || !feedbackType || !canFeedbackEdit\n  }, disabled || !canFeedbackEdit ? stringConstants.FeedbackHasSubmitText : stringConstants.FeedbackSubmitText));\n};\n\nvar agreeImage = \"data:image/png;base64,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\";\n\nvar unAgreeImage = \"data:image/png;base64,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\";\n\nvar agreeImageActive = \"data:image/png;base64,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\";\n\nvar unAgreeImageActive = \"data:image/png;base64,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\";\n\nvar MessageContainer = function MessageContainer(_ref) {\n  var children = _ref.children,\n    headerChildren = _ref.headerChildren,\n    _ref$html = _ref.html,\n    html = _ref$html === void 0 ? '' : _ref$html,\n    _ref$messageTraceId = _ref.messageTraceId,\n    messageTraceId = _ref$messageTraceId === void 0 ? '' : _ref$messageTraceId,\n    _ref$messageKey = _ref.messageKey,\n    messageKey = _ref$messageKey === void 0 ? 0 : _ref$messageKey,\n    _ref$agreeType = _ref.agreeType,\n    initAgreeType = _ref$agreeType === void 0 ? 0 : _ref$agreeType,\n    _ref$isShowAgreeType = _ref.isShowAgreeType,\n    isShowAgreeType = _ref$isShowAgreeType === void 0 ? true : _ref$isShowAgreeType,\n    onAgreeTypeChange = _ref.onAgreeTypeChange,\n    addMessage = _ref.addMessage,\n    removeMessage = _ref.removeMessage,\n    getMessage = _ref.getMessage;\n  var _useState = React.useState(initAgreeType),\n    _useState2 = _slicedToArray(_useState, 2),\n    agreeType = _useState2[0],\n    _setAgreeType = _useState2[1];\n  coolUtils.useCompare(initAgreeType, _setAgreeType);\n  var setAgreeType = React.useCallback(function (_agreeType) {\n    if (agreeType === _agreeType) {\n      return;\n    }\n    _setAgreeType(_agreeType);\n    if (_agreeType === -1) {\n      var currentIndex = getMessage(messageKey).index;\n      addMessage === null || addMessage === void 0 ? void 0 : addMessage({\n        sentTime: new Date().getTime(),\n        direction: 'incoming',\n        messageTraceId: messageTraceId,\n        payload: /*#__PURE__*/React__default['default'].createElement(FeedbackMessage, {\n          onSubmit: function onSubmit(_ref2) {\n            var type = _ref2.type,\n              reason = _ref2.reason;\n            onAgreeTypeChange === null || onAgreeTypeChange === void 0 ? void 0 : onAgreeTypeChange(_agreeType, {\n              type: type,\n              reason: reason,\n              messageTraceId: messageTraceId\n            });\n          }\n        })\n      }, currentIndex + 1);\n    } else if (_agreeType === 1) {\n      var nextMessageInfo = getMessage(messageKey, 1);\n      var message = nextMessageInfo.message,\n        index = nextMessageInfo.index;\n      if ((message === null || message === void 0 ? void 0 : message.direction) === 'incoming' && !(message === null || message === void 0 ? void 0 : message.config)) {\n        removeMessage === null || removeMessage === void 0 ? void 0 : removeMessage(index);\n      }\n      // 有帮助时，只需传入traceId即可；无帮助的回调应在输入反馈意见点击提交按钮后触发，此处不再触发该回调\n      onAgreeTypeChange === null || onAgreeTypeChange === void 0 ? void 0 : onAgreeTypeChange(_agreeType, {\n        type: '',\n        reason: '',\n        messageTraceId: messageTraceId\n      });\n    }\n  }, [agreeType]);\n  return /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"message-custom-container\"\n  }, /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"message-header-container\"\n  }, headerChildren), /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"message-container\".concat(html ? ' message-container-template' : ''),\n    dangerouslySetInnerHTML: {\n      __html: html\n    }\n  }, children), isShowAgreeType && /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"message-custom-agree-container\"\n  }, /*#__PURE__*/React__default['default'].createElement(\"span\", {\n    className: \"message-custom-agree-span \".concat(agreeType === 1 && 'message-custom-agree-span-active'),\n    onClick: function onClick() {\n      return setAgreeType(1);\n    }\n  }, /*#__PURE__*/React__default['default'].createElement(\"img\", {\n    className: \"message-custom-agree-image\",\n    src: agreeType === 0 ? agreeImage : agreeImageActive\n  }), stringConstants.FeedbackHelpYes), /*#__PURE__*/React__default['default'].createElement(\"span\", {\n    className: \"message-custom-agree-span \".concat(agreeType === -1 && 'message-custom-agree-span-active'),\n    onClick: function onClick() {\n      return setAgreeType(-1);\n    }\n  }, /*#__PURE__*/React__default['default'].createElement(\"img\", {\n    className: \"message-custom-agree-image\",\n    src: agreeType === 0 ? unAgreeImage : unAgreeImageActive\n  }), stringConstants.FeedbackHelpNo)));\n};\n\nvar collapseButton = \"<div class=\\\"message-list-collapse\\\"><button class=\\\"message-list-collapse-button\\\"><span>\".concat(stringConstants.ListExpandText, \"</span><img src=\").concat(expandIcon, \" class='message-list-collapse-image'/></button></div>\");\nvar renderCard = function renderCard(_ref) {\n  var _ref$template = _ref.template,\n    template = _ref$template === void 0 ? '' : _ref$template,\n    config = _ref.config,\n    info = _ref.info,\n    index = _ref.index,\n    isEnableListCollapse = _ref.isEnableListCollapse;\n  if (!config) {\n    return template;\n  }\n  var templateReg = /\\$\\{(.+?)\\}/g;\n  var result = (template || '').match(templateReg);\n  var parsed = {};\n  Object.keys(config || {}).forEach(function (key) {\n    var item = config[key];\n    if (!item) {\n      return;\n    }\n    if (item.type === 'text') {\n      parsed[key] = item.data.map(function (i) {\n        return \"<\".concat(i.format || 'span', \">\").concat(i.content || '', \"</\").concat(i.format || 'span', \">\");\n      }).join('');\n    } else if (item.type === 'list') {\n      var _item$data;\n      var isCollapse = isEnableListCollapse && ((_item$data = item.data) === null || _item$data === void 0 ? void 0 : _item$data.length) > 2;\n      parsed[key] = \"<ul \".concat(isCollapse && 'class=message-list-ul-collapse', \">\").concat(item.data.map(function (i, ind) {\n        return \"<li class=\".concat(chatUILIClickable, \" data-path=\", \"[\".concat(index, \"].config.\").concat(key, \".data[\").concat(ind, \"]\"), \" data-info=\").concat(JSON.stringify(info), \">\").concat(i.content || '', \"</li>\");\n      }).join(''), \"</ul>\");\n      if (isCollapse) {\n        parsed[key] = parsed[key] + collapseButton;\n      }\n    } else if (item.type === 'image') {\n      parsed[key] = item.data.map(function (i, ind) {\n        return \"<img src=\".concat(i.content, \" class=\").concat(chatUIImageClickClass, \" data-path=\", \"[\".concat(index, \"].config.\").concat(key, \".data[\").concat(ind, \"]\"), \" data-info=\").concat(JSON.stringify(info), \"/>\");\n      }).join('');\n    } else if (item.type === 'welcomeList') {\n      parsed[key] = item.data.map(function (i, ind) {\n        return \"<div class='welcome-show-detail \".concat(chatUILIClickable, \"' data-path=\", \"[\".concat(index, \"].config.\").concat(key, \".data[\").concat(ind, \"]\"), \" data-info=\").concat(JSON.stringify(info), \">\").concat(i.content || '', \"</div>\");\n      }).join('');\n    }\n  });\n  var returnStr = template;\n  result === null || result === void 0 ? void 0 : result.forEach(function (item) {\n    var key = item.replace('${', '').replace('}', '');\n    returnStr = returnStr.replaceAll(item, parsed[key] || '');\n  });\n  return returnStr;\n};\n\n/**\r\n * 过滤输入框内的富文本，得到纯文本\r\n * * 可过滤所有的HTML标签、特殊符号。对于图片则直接过滤为‘’空字符串\r\n * @param content HTMLElement ｜ ReactNode ｜ string\r\n * @returns 过滤后的纯文本\r\n */\nvar getPureTextFromRichText = function getPureTextFromRichText(content) {\n  var htmlFilter = /<[^<>]+>/g;\n  var charactersFilter = /&(lt;|gt;|nbsp;|amp;|quot;|ldquo;|mdash;|rdquo;)/g;\n  var filterResult = content.replace(htmlFilter, '').replace(charactersFilter, '');\n  return filterResult;\n};\n/**\r\n * div高度变化时自动滚动至底部\r\n * @param className 自动滚动的元素class名称\r\n * @returns\r\n */\nvar autoScrollToBottom = function autoScrollToBottom() {\n  var className = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : chatUIAutoScrollContainer;\n  // 有时候初始化不能正常滚动，加定时器暂时fix这个bug\n  setTimeout(function () {\n    var element = document.getElementsByClassName(className);\n    if (!element) {\n      return;\n    }\n    var scrollDom = element === null || element === void 0 ? void 0 : element[0];\n    if ((scrollDom === null || scrollDom === void 0 ? void 0 : scrollDom.scrollHeight) >= 0 && (scrollDom === null || scrollDom === void 0 ? void 0 : scrollDom.scrollTop) >= 0) {\n      scrollDom.scrollTop = scrollDom.scrollHeight;\n    }\n  }, 50);\n};\n/**防止超出范围 */\nvar getValidIndex = function getValidIndex(index, max, min) {\n  return Math.min(Math.max(index, min), max);\n};\n/**\r\n * 展示全屏图片，并且支持图片的手指操作：单指移动位置，双指缩放大小\r\n * @param imageSrc\r\n * @returns\r\n */\nvar imageFullScreen = function imageFullScreen() {\n  var imageSrc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n  if (!imageSrc) {\n    return;\n  }\n  // *1 创建一个新的全屏容器，背景黑色，用来放图片\n  var imageContainer = document.createElement('div');\n  imageContainer.className = 'image-full-screen-container';\n  imageContainer.setAttribute('style', 'top: 0px;z-index:10;height:100%;width: 100%;position: absolute;background-color: #333333; display:flex;align-items: center;justify-content: center;');\n  // *2 创建全屏图片\n  var fullScreenImage = document.createElement('img');\n  fullScreenImage.setAttribute('src', imageSrc);\n  fullScreenImage.setAttribute('style', 'width:100%;object-fit: contain;transform: translate(0px, 0px) scale(1);');\n  // *3 图片放进容器\n  imageContainer.appendChild(fullScreenImage);\n  // *4 容器放进聊天组件\n  var chatContainer = document.getElementsByClassName('chatui-container')[0];\n  chatContainer.appendChild(imageContainer);\n  // *5 容器放进聊天组件\n  imageContainer.onclick = function () {\n    chatContainer.removeChild(imageContainer);\n  };\n  //*6 为图片添加移动和缩放功能\n  var transformX = 0; //当前平移X\n  var transformY = 0; //当前平移Y\n  var lastMoveX = null; //上一次移动时候手指停留的位置X\n  var lastMoveY = null; //上一次移动时候手指停留的位置Y\n  var maxScale = 5; //缩放范围是：闭区间[0.5 , 5]\n  var minSacle = 0.5;\n  var scale = 1; //当前缩放比例\n  var lastScaleX = null; //上一次缩放时候手指停留的位置X\n  var lastScaleY = null; //上一次缩放时候手指停留的位置Y\n  var isScaling = false; // 是否正在进行缩放的标志\n  imageContainer.addEventListener('touchstart', function (event) {\n    var touches = event.touches;\n    if (touches.length == 2) {\n      // 双指触发缩放\n      isScaling = true;\n    } else {\n      // 单指触发移动，缩放标志位置为false\n      isScaling = false;\n    }\n  });\n  imageContainer.addEventListener('touchmove', function (event) {\n    event.preventDefault();\n    var touches = event.touches;\n    if (touches.length == 2) {\n      /**双指缩放逻辑：将双指位移量化至缩放比例实现平滑缩放 */\n      //* 1.1 获取当前缩放量化指数\n      var currentX = Math.abs(touches[0].clientX - touches[1].clientX) / 2;\n      var currentY = Math.abs(touches[0].clientY - touches[1].clientY) / 2;\n      if (lastScaleX && lastScaleY) {\n        // *1.2 为了将手势的位移距离转化为缩放比例，在这里做了一个映射关系：双指的可以是任意方向的，因此这里建立一个直角三角形，以双指的X位移绝对值差值为一条边，以双指的Y位移绝对值差值为另一边，取三角形的斜边来量化双指位移\n        var lastScaleSqrt = Math.sqrt(Math.pow(lastScaleX, 2) + Math.pow(lastScaleY, 2)) / 50;\n        var currentScaleSqrt = Math.sqrt(Math.pow(currentX, 2) + Math.pow(currentY, 2)) / 50;\n        var currentScale = scale + currentScaleSqrt - lastScaleSqrt;\n        // *1.3 将缩放比例限定在区间[0.5,5]内\n        var newScale = Math.min(Math.max(currentScale, minSacle), maxScale);\n        var transform = 'translate(' + transformX + 'px, ' + transformY + 'px) ' + 'scale(' + newScale + ')';\n        fullScreenImage.style.transform = transform;\n        scale = newScale;\n      }\n      // * 1.4保存当前的缩放量化指数\n      lastScaleX = currentX;\n      lastScaleY = currentY;\n    } else if (!isScaling) {\n      /**单指移动逻辑，通过前后两次坐标间隔计算从而实现平滑移动过渡 */\n      if (lastMoveX && lastMoveY) {\n        // * 1.1 图片当前偏移量为：手指滑动的距离+当前偏移量，并记录当前手指的位置\n        var newImageX = transformX + touches[0].clientX - lastMoveX;\n        var newImageY = transformY + touches[0].clientY - lastMoveY;\n        // * 1.2 该值赋给transform属性\n        var _transform = 'translate(' + transformX + 'px, ' + transformY + 'px) ' + 'scale(' + scale + ')';\n        fullScreenImage.style.transform = _transform;\n        // * 1.3 保存当前transform属性\n        transformX = newImageX;\n        transformY = newImageY;\n      }\n      //* 1.4 保存当前的移动位置\n      lastMoveX = touches[0].clientX;\n      lastMoveY = touches[0].clientY;\n    }\n  });\n  // 监听结束事件\n  imageContainer.addEventListener('touchend', function (event) {\n    if (isScaling) {\n      // 如果缩放结束，将缩放标志位设置为false。\n      isScaling = false;\n      lastScaleX = null;\n      lastScaleY = null;\n    }\n    lastMoveX = null;\n    lastMoveY = null;\n  });\n};\n\nvar useMessageList = function useMessageList(_ref) {\n  var _ref$messageList = _ref.messageList,\n    messageList = _ref$messageList === void 0 ? [] : _ref$messageList,\n    _ref$incomingAvatarUr = _ref.incomingAvatarUrl,\n    incomingAvatarUrl = _ref$incomingAvatarUr === void 0 ? '' : _ref$incomingAvatarUr,\n    _ref$outgoingAvatarUr = _ref.outgoingAvatarUrl,\n    outgoingAvatarUrl = _ref$outgoingAvatarUr === void 0 ? '' : _ref$outgoingAvatarUr;\n  var messageListRef = React.useRef(messageList);\n  var _useState = React.useState(messageList),\n    _useState2 = _slicedToArray(_useState, 2),\n    currentMessageList = _useState2[0],\n    setCurrentMessageList = _useState2[1];\n  var setMessageList = React.useCallback(function (mList) {\n    messageListRef.current = mList;\n    setCurrentMessageList(mList);\n  }, []);\n  coolUtils.useCompare(currentMessageList, setMessageList);\n  var addMessage = React.useCallback(function (item) {\n    var _messageListRef$curre;\n    var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : messageListRef.current.length;\n    var currentLength = messageListRef.current.length;\n    if ((_messageListRef$curre = messageListRef.current[index - 1]) === null || _messageListRef$curre === void 0 ? void 0 : _messageListRef$curre.isTempMessage) {\n      messageListRef.current.pop();\n    }\n    var newList = _toConsumableArray(messageListRef.current);\n    if (typeof index !== 'number') {\n      return false;\n    }\n    var addIndex = getValidIndex(index, currentLength, 0);\n    newList.splice(addIndex, 0, item);\n    if (item.isAutoScrollToBottom || item.config) {\n      // 只有发送正常的问题、答案（即item.config有值）后自动滚动到底部，如果是在历史消息中点击的反馈卡片，则不滚动，保持比较好的交互体验\n      autoScrollToBottom();\n    }\n    setCurrentMessageList(newList);\n    return true;\n  }, []);\n  var removeMessage = function removeMessage(index) {\n    if (typeof index !== 'number') {\n      return false;\n    }\n    var newList = _toConsumableArray(messageListRef.current);\n    var currentLength = messageListRef.current.length;\n    var removeIndex = getValidIndex(index, currentLength, 0);\n    newList.splice(removeIndex, 1);\n    setCurrentMessageList(newList);\n    return true;\n  };\n  var getMessage = function getMessage(messageKey, offset) {\n    var res = {\n      message: {},\n      index: 0\n    };\n    messageListRef.current.map(function (item, index) {\n      if (item.sentTime === messageKey) {\n        if (offset) {\n          var offsetIndex = Math.min(index + offset, messageListRef.current.length - 1);\n          res.message = messageListRef.current[offsetIndex];\n          res.index = offsetIndex;\n        } else {\n          res.message = item;\n          res.index = index;\n        }\n      }\n    });\n    return res;\n  };\n  var getPayload = React.useCallback(function (item, index) {\n    if (item.extendType === 'feedback-container') {\n      return /*#__PURE__*/React__default['default'].createElement(MessageContainer, {\n        messageTraceId: item.messageTraceId,\n        messageKey: item.sentTime,\n        html: renderCard({\n          template: item.template,\n          config: item.config,\n          index: index,\n          isEnableListCollapse: item.isEnableListCollapse,\n          info: item.info\n        }),\n        headerChildren: item.headerChildren,\n        agreeType: item.agreeType || 0,\n        isShowAgreeType: item.isShowAgreeType,\n        onAgreeTypeChange: item.onAgreeTypeChange,\n        addMessage: addMessage,\n        removeMessage: removeMessage,\n        getMessage: getMessage\n      }, /*#__PURE__*/React.isValidElement(item.payload) ? item.payload : null);\n    }\n    if (item.extendType === 'feedback-card') {\n      return /*#__PURE__*/React__default['default'].createElement(FeedbackMessage, {\n        messageTraceId: item.messageTraceId,\n        onSubmit: item.onFeedbackCardSubmit,\n        defaultFeedbackType: item.defaultFeedbackType,\n        defaultFeedbackContent: item.defaultFeedbackContent,\n        defaultFeedbackCanEdit: item.defaultFeedbackCanEdit,\n        disabled: item.isFeedbackDisabled\n      });\n    }\n    if (item.template && item.config) {\n      return renderCard({\n        template: item.template,\n        config: item.config,\n        info: item.info,\n        index: index\n      });\n    }\n    if (item.payload) {\n      return item.payload;\n    }\n    return stringConstants.AnswerMessageError;\n  }, []);\n  var messageListForChat = Array.isArray(currentMessageList) ? currentMessageList.map(function (item, index) {\n    var _item$sentTime;\n    return {\n      key: ((_item$sentTime = item.sentTime) === null || _item$sentTime === void 0 ? void 0 : _item$sentTime.toString()) || \"\".concat(index),\n      sentTime: item.sentTime && item.sentTimeFormat ? dayjs__default['default'](item.sentTime).format(item.sentTimeFormat) : undefined,\n      sender: item.sender,\n      type: item.type || (item.extendType === 'feedback-container' || item.extendType === 'feedback-card' || /*#__PURE__*/React.isValidElement(item.payload) ? 'custom' : 'html'),\n      direction: item.direction,\n      messageTraceId: item.messageTraceId || '',\n      payload: getPayload(item, index),\n      position: 'normal',\n      avatarPosition: item.avatarPosition || (item.direction === 'incoming' ? 'top-left' : 'top-right'),\n      avatarUrl: item.avatarUrl || (item.direction === 'incoming' ? incomingAvatarUrl || defaultAvatar : outgoingAvatarUrl || userAvatar),\n      isShowSeparator: item.isShowSeparator,\n      separatorContent: item.separatorContent\n    };\n  }) : [];\n  return {\n    currentMessageList: currentMessageList,\n    messageListForChat: messageListForChat,\n    setMessageList: setMessageList,\n    addMessage: addMessage,\n    removeMessage: removeMessage,\n    getMessage: getMessage\n  };\n};\n\nvar Helmet = function Helmet(_ref) {\n  var image = _ref.image,\n    size = _ref.size,\n    messageInputType = _ref.messageInputType;\n  return /*#__PURE__*/React__default['default'].createElement(reactHelmet.Helmet, null, /*#__PURE__*/React__default['default'].createElement(\"style\", null, \"\".concat(messageInputType === 'advanced' ? '' : \".cs-message-input__tools:last-child .cs-button svg {\\n  display: none;\\n}\\n.cs-message-input__tools:last-child .cs-button::after {\\n  display: block;\\n  content: '';\\n  width: \".concat(size === null || size === void 0 ? void 0 : size[0], \";\\n  height: \").concat(size === null || size === void 0 ? void 0 : size[1], \";\\n  background-size: 100% 100%;\\n  background-repeat: no-repeat;\\n  background-image: url(\").concat(image, \");\\n}\"), \"\\n.cs-message-input__content-editor-container{\\n  line-height: calc(\").concat(size === null || size === void 0 ? void 0 : size[1], \" - 0.8em);\\n}\")));\n};\n\nvar ChatUiContext = /*#__PURE__*/React.createContext({});\nvar ChatUI = function ChatUI(_ref) {\n  var _ref$style = _ref.style,\n    style = _ref$style === void 0 ? {} : _ref$style,\n    _ref$className = _ref.className,\n    className = _ref$className === void 0 ? '' : _ref$className,\n    _ref$messageList = _ref.messageList,\n    messageList = _ref$messageList === void 0 ? [] : _ref$messageList,\n    _ref$feedbackReasonsL = _ref.feedbackReasonsList,\n    feedbackReasonsList = _ref$feedbackReasonsL === void 0 ? [] : _ref$feedbackReasonsL,\n    _ref$isShowAvatar = _ref.isShowAvatar,\n    isShowAvatar = _ref$isShowAvatar === void 0 ? true : _ref$isShowAvatar,\n    _ref$isAutoScroll = _ref.isAutoScroll,\n    isAutoScroll = _ref$isAutoScroll === void 0 ? true : _ref$isAutoScroll,\n    _ref$attachButton = _ref.attachButton,\n    attachButton = _ref$attachButton === void 0 ? false : _ref$attachButton,\n    _ref$sendButton = _ref.sendButton,\n    sendButton = _ref$sendButton === void 0 ? true : _ref$sendButton,\n    _ref$disabled = _ref.disabled,\n    disabled = _ref$disabled === void 0 ? false : _ref$disabled,\n    _ref$sendDisabled = _ref.sendDisabled,\n    sendDisabled = _ref$sendDisabled === void 0 ? false : _ref$sendDisabled,\n    _ref$attachDisabled = _ref.attachDisabled,\n    attachDisabled = _ref$attachDisabled === void 0 ? false : _ref$attachDisabled,\n    _ref$incomingAvatarUr = _ref.incomingAvatarUrl,\n    incomingAvatarUrl = _ref$incomingAvatarUr === void 0 ? '' : _ref$incomingAvatarUr,\n    _ref$outgoingAvatarUr = _ref.outgoingAvatarUrl,\n    outgoingAvatarUrl = _ref$outgoingAvatarUr === void 0 ? '' : _ref$outgoingAvatarUr,\n    _sendButtonProps = _ref.sendButtonProps,\n    _ref$sendDirection = _ref.sendDirection,\n    sendDirection = _ref$sendDirection === void 0 ? 'outgoing' : _ref$sendDirection,\n    inputToolbox = _ref.inputToolbox,\n    _ref$timeFormat = _ref.timeFormat,\n    timeFormat = _ref$timeFormat === void 0 ? 'MM-DD HH:mm:ss' : _ref$timeFormat,\n    _ref$messageInputType = _ref.messageInputType,\n    messageInputType = _ref$messageInputType === void 0 ? 'default' : _ref$messageInputType,\n    messageInputHeader = _ref.messageInputHeader,\n    messageInputFooter = _ref.messageInputFooter,\n    getChatUIInstance = _ref.getChatUIInstance,\n    _ref$onTextClick = _ref.onTextClick,\n    onTextClick = _ref$onTextClick === void 0 ? console.log : _ref$onTextClick,\n    _ref$onTextMouseOver = _ref.onTextMouseOver,\n    onTextMouseOver = _ref$onTextMouseOver === void 0 ? function (params) {} : _ref$onTextMouseOver,\n    _ref$onTextMouseOut = _ref.onTextMouseOut,\n    onTextMouseOut = _ref$onTextMouseOut === void 0 ? function (params) {} : _ref$onTextMouseOut,\n    _onSend = _ref.onSend,\n    _ref$onAttachClick = _ref.onAttachClick,\n    onAttachClick = _ref$onAttachClick === void 0 ? function () {} : _ref$onAttachClick;\n  var sendButtonProps = _objectSpread2({\n    image: \"data:image/png;base64,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\",\n    size: ['2.4em', '1.65em']\n  }, _sendButtonProps);\n  var _useMessageList = useMessageList({\n      messageList: messageList,\n      incomingAvatarUrl: incomingAvatarUrl,\n      outgoingAvatarUrl: outgoingAvatarUrl\n    }),\n    currentMessageList = _useMessageList.currentMessageList,\n    messageListForChat = _useMessageList.messageListForChat,\n    setMessageList = _useMessageList.setMessageList,\n    addMessage = _useMessageList.addMessage;\n  React.useEffect(function () {\n    var chatUIInstance = {\n      setMessageList: setMessageList,\n      addMessage: addMessage\n    };\n    window.chatUIInstance = chatUIInstance;\n    if (coolUtils.isFunction(getChatUIInstance)) {\n      getChatUIInstance(chatUIInstance);\n    }\n  }, []);\n  var onListExpand = React.useCallback(function (dom) {\n    var _dom$firstChild, _dom$firstChild2;\n    var ulDom = dom.previousElementSibling;\n    var iconDom = (_dom$firstChild = dom.firstChild) === null || _dom$firstChild === void 0 ? void 0 : _dom$firstChild.lastChild;\n    var buttonTextDom = (_dom$firstChild2 = dom.firstChild) === null || _dom$firstChild2 === void 0 ? void 0 : _dom$firstChild2.firstChild;\n    if (ulDom && iconDom) {\n      var isExpand = ulDom.className === chatUIMessageExpandClass;\n      var newClassName = isExpand ? chatUIMessageCollapseClass : chatUIMessageExpandClass;\n      var text = isExpand ? stringConstants.ListExpandText : stringConstants.ListCollapseText;\n      var iconSrc = isExpand ? expandIcon : collapseIcon;\n      ulDom.className = newClassName;\n      iconDom.src = iconSrc;\n      buttonTextDom.innerHTML = text;\n    }\n  }, [currentMessageList]);\n  var onElementEvents = React.useCallback(function (e, callback) {\n    var _e$stopPropagation;\n    // * StopPropagation is probably undefined or illegal.\n    (_e$stopPropagation = e.stopPropagation) === null || _e$stopPropagation === void 0 ? void 0 : _e$stopPropagation.call(e);\n    var target = e.target;\n    if (target && coolUtils.isFunction(callback)) {\n      var dataset = target.dataset || {};\n      var path = dataset.path,\n        info = dataset.info;\n      var data = lodashEs.get(currentMessageList, path);\n      var infoObj;\n      try {\n        if (info !== 'undefined') {\n          infoObj = JSON.parse(info);\n        }\n      } catch (error) {\n        console.error(error);\n      }\n      callback({\n        data: data,\n        path: path,\n        dataset: dataset,\n        info: infoObj,\n        target: target\n      });\n    }\n  }, [currentMessageList]);\n  var onElementClick = React.useCallback(function (e) {\n    onElementEvents(e, onTextClick);\n  }, [currentMessageList]);\n  var onElementMouseover = React.useCallback(function (e) {\n    onElementEvents(e, onTextMouseOver);\n  }, [currentMessageList]);\n  var onElementMouseout = React.useCallback(function (e) {\n    onElementEvents(e, onTextMouseOut);\n  }, [currentMessageList]);\n  var onImageClick = React.useCallback(function (e) {\n    onElementEvents(e, function (imageData) {\n      var _imageData$data;\n      imageFullScreen(imageData === null || imageData === void 0 ? void 0 : (_imageData$data = imageData.data) === null || _imageData$data === void 0 ? void 0 : _imageData$data.content);\n    });\n  }, [currentMessageList]);\n  React.useEffect(function () {\n    if (!isAutoScroll) {\n      return;\n    }\n    autoScrollToBottom();\n  }, []);\n  React.useEffect(function () {\n    var _document$getElements;\n    _toConsumableArray(document.getElementsByClassName(chatUILIClickable)).forEach(function (element) {\n      element.onclick = null;\n      element.onmouseout = null;\n      element.onmouseover = null;\n      element.onclick = onElementClick;\n      element.onmouseout = onElementMouseout;\n      element.onmouseover = onElementMouseover;\n    });\n    _toConsumableArray(document.getElementsByClassName(chatUIMessageCollapseButton)).forEach(function (element) {\n      element.onclick = null;\n      element.onclick = function () {\n        return onListExpand(element);\n      };\n    });\n    _toConsumableArray(document.getElementsByClassName(chatUIImageClickClass)).forEach(function (element) {\n      element.onclick = null;\n      element.onclick = onImageClick;\n    });\n    var editableInputDom = (_document$getElements = document.getElementsByClassName(chatUIEditableInputContainer)) === null || _document$getElements === void 0 ? void 0 : _document$getElements[0];\n    if (editableInputDom) {\n      editableInputDom.setAttribute('contenteditable', 'plaintext-only');\n    }\n  });\n  var MessageInput$1 = messageInputType === 'advanced' ? MessageInput : chatUiKitReact.MessageInput;\n  return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(Helmet, _objectSpread2(_objectSpread2({}, sendButtonProps), {}, {\n    messageInputType: messageInputType\n  })), /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"chatui-container \".concat(className),\n    style: style\n  }, /*#__PURE__*/React__default['default'].createElement(ChatUiContext.Provider, {\n    value: {\n      feedbackReasonsList: feedbackReasonsList\n    }\n  }, /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.MainContainer, {\n    className: \"main-container\"\n  }, /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"cs-chat-container chat-container\"\n  }, /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.MessageList, {\n    className: \"message-list\"\n  }, /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.MessageSeparator, {\n    className: \"message-time-separator\"\n  }, /*#__PURE__*/React__default['default'].createElement(\"div\", {\n    className: \"chat-container-time\"\n  }, dayjs__default['default']().format(timeFormat))), messageListForChat.map(function (item) {\n    return [/*#__PURE__*/React__default['default'].createElement(chatUiKitReact.Message, {\n      key: item.key,\n      model: item,\n      avatarPosition: item.avatarPosition || 'top-left'\n    }, item.sentTime || item.sender ? /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.Message.Header, {\n      sentTime: item.sentTime,\n      sender: item.sender,\n      className: item.direction == 'incoming' ? 'chat-container-current-header-left' : 'chat-container-current-header-right'\n    }) : null, isShowAvatar && /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.Avatar, {\n      src: item.avatarUrl || defaultAvatar\n    })), item.isShowSeparator && /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.MessageSeparator, {\n      className: \"message-new-separator\"\n    }, /*#__PURE__*/React__default['default'].createElement(\"div\", {\n      className: \"message-new-content\"\n    }, item.separatorContent || stringConstants.DefaultSeparator))];\n  })), /*#__PURE__*/React__default['default'].createElement(MessageInput$1, _objectSpread2(_objectSpread2({}, messageInputType === 'advanced' ? {\n    sendButtonProps: sendButtonProps,\n    messageInputHeader: messageInputHeader,\n    messageInputFooter: messageInputFooter\n  } : {}), {}, {\n    className: \"message-input\",\n    attachButton: attachButton,\n    sendButton: sendButton,\n    placeholder: stringConstants.InputPlaceholder,\n    activateAfterChange: true,\n    disabled: disabled,\n    sendDisabled: sendDisabled,\n    attachDisabled: attachDisabled,\n    onSend: function onSend(value) {\n      var pureText = getPureTextFromRichText(value);\n      // const pureText = value;\n      if (_onSend === null || _onSend === void 0 ? void 0 : _onSend(pureText)) {\n        return;\n      }\n      addMessage({\n        sentTime: new Date().getTime(),\n        template: '${text}',\n        direction: sendDirection,\n        messageTraceId: '123',\n        config: {\n          text: {\n            type: 'text',\n            data: [{\n              content: pureText\n            }]\n          }\n        }\n      });\n    },\n    onAttachClick: onAttachClick\n  })), inputToolbox ? /*#__PURE__*/React__default['default'].createElement(chatUiKitReact.InputToolbox, null, inputToolbox) : null)))));\n};\n\nexports.ChatUI = ChatUI;\nexports.FeedbackMessage = FeedbackMessage;\nexports.autoScrollToBottom = autoScrollToBottom;\nexports.chatUILIClickable = chatUILIClickable;\nexports.default = ChatUI;\nexports.renderCard = renderCard;\n"]}