@next-bricks/ai-portal 0.59.0 → 0.59.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +38 -38
- package/dist/chunks/{2232.243a2f0f.js → 2232.b162e41f.js} +2 -2
- package/dist/chunks/2232.b162e41f.js.map +1 -0
- package/dist/chunks/2621.0d56009c.js +2 -0
- package/dist/chunks/2621.0d56009c.js.map +1 -0
- package/dist/chunks/5712.a63bddd8.js +2 -0
- package/dist/chunks/5712.a63bddd8.js.map +1 -0
- package/dist/chunks/{chat-box.2f9b10eb.js → chat-box.5ba0e969.js} +2 -2
- package/dist/chunks/chat-box.5ba0e969.js.map +1 -0
- package/dist/chunks/chat-stream.362a2292.js +2 -0
- package/dist/chunks/chat-stream.362a2292.js.map +1 -0
- package/dist/chunks/{main.a4c13164.js → main.9309c699.js} +2 -2
- package/dist/chunks/{main.a4c13164.js.map → main.9309c699.js.map} +1 -1
- package/dist/examples.json +22 -22
- package/dist/{index.c707abd3.js → index.457a283c.js} +2 -2
- package/dist/{index.c707abd3.js.map → index.457a283c.js.map} +1 -1
- package/dist/manifest.json +283 -277
- package/dist/types.json +307 -298
- package/dist-types/chat-stream/ChatStream.d.ts +2 -1
- package/dist-types/shared/bricks.d.ts +0 -3
- package/package.json +2 -2
- package/dist/chunks/2232.243a2f0f.js.map +0 -1
- package/dist/chunks/2621.f3a430d7.js +0 -2
- package/dist/chunks/2621.f3a430d7.js.map +0 -1
- package/dist/chunks/5712.50d420b4.js +0 -2
- package/dist/chunks/5712.50d420b4.js.map +0 -1
- package/dist/chunks/chat-box.2f9b10eb.js.map +0 -1
- package/dist/chunks/chat-stream.713ffcaf.js +0 -2
- package/dist/chunks/chat-stream.713ffcaf.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/chat-box.2f9b10eb.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///./src/chat-box/i18n.ts","webpack:///./src/chat-box/bricks.ts","webpack:///../../node_modules/css-loader/dist/runtime/getUrl.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/chat-box/styles.shadow.css","webpack:///./src/cruise-canvas/utils/file.ts","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///../../src/getCaretPositionInTextarea.ts","webpack:///../../src/getContentRectsInTextarea.ts","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///./src/data-providers/set-chat-command.ts","webpack:///./src/chat-box/index.tsx"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n ASK_ANY_THING = \"ASK_ANYTHING\",\n COMMON_TASKS = \"COMMON_TASKS\",\n COMMAND_TIPS = \"COMMAND_TIPS\",\n SEARCH_COMMANDS_TIPS = \"SEARCH_COMMANDS_TIPS\",\n}\n\nconst en: Locale = {\n [K.ASK_ANY_THING]: \"Ask anything\",\n [K.COMMON_TASKS]: \"Common tasks\",\n [K.COMMAND_TIPS]: \"‘@’ AI Employee | ‘/’ Command\",\n [K.SEARCH_COMMANDS_TIPS]:\n \"Showing up to {{count}} items, type keywords to search\",\n};\n\nconst zh: Locale = {\n [K.ASK_ANY_THING]: \"询问任何问题\",\n [K.COMMON_TASKS]: \"常用任务\",\n [K.COMMAND_TIPS]: \"‘@’ 数字人 | ‘/’ 命令\",\n [K.SEARCH_COMMANDS_TIPS]: \"最多显示 {{count}} 条数据,输入关键字搜索\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-box\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","import { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type {\n ActionsEvents,\n ActionsEventsMapping,\n ActionsProps,\n EoActions,\n} from \"@next-bricks/basic/actions\";\nimport type { IconButton, IconButtonProps } from \"../icon-button\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nexport const WrappedActions = wrapBrick<\n EoActions,\n ActionsProps & { activeKeys?: (string | number)[]; footerTips?: string },\n ActionsEvents,\n ActionsEventsMapping\n>(\"eo-actions\", {\n onActionClick: \"action.click\",\n onItemDragEnd: \"item.drag.end\",\n onItemDragStart: \"item.drag.start\",\n});\nexport const WrappedIconButton = wrapBrick<IconButton, IconButtonProps>(\n \"ai-portal.icon-button\"\n);\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _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}","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/bg.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.root{color:#262626;background:url(${___CSS_LOADER_URL_REPLACEMENT_0___}) no-repeat center bottom;background-size:100% 104px;padding:12px 12px 29px;margin:0 -12px}.container{position:relative;background:#ffffff;box-shadow:0px 2px 4px 0px rgba(38,45,65,0.1);border-radius:16px;border:1px solid #dadfe8}.container:has(textarea:focus){border-color:#b7c3d8}textarea{display:block;width:100%;padding:10px 16px 50px;color:var(--antd-input-color);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font:inherit;font-size:14px;line-height:22px;height:120px}textarea::placeholder{color:rgba(0,0,0,0.4)}button:focus,\ntextarea:focus{outline:none}button{margin:0;padding:0;font:inherit;background:none;border:none}.actions-bar{position:absolute;bottom:12px;left:14px;right:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:6px}.btn-send{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--elevo-color-brand);border:none;border-radius:8px;color:#fff;flex-shrink:0}.btn-send[disabled]{background:rgba(0,0,0,0.15)}.btn-send:not([disabled]){cursor:pointer}.btn-send:not([disabled]):hover{background:#5166ff}.btn-send:not([disabled]):active{background:#1e33cc}.mention-overlay{position:absolute;border-radius:4px;pointer-events:none;background:rgba(38,45,65,0.1)}.buttons{display:flex;align-items:center;gap:12px}.btn-divider{width:1px;height:16px;background:rgba(0,0,0,0.1)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { pipes } from \"@easyops-cn/brick-next-pipes\";\nimport fileText from \"../images/file-text@2x.png\";\nimport filePdf from \"../images/file-pdf@2x.png\";\nimport fileDoc from \"../images/file-doc@2x.png\";\nimport filePpt from \"../images/file-ppt@2x.png\";\nimport fileXls from \"../images/file-xls@2x.png\";\nimport fileOther from \"../images/file-other@2x.png\";\n\nconst MIME_TYPES = new Map<string, string>([\n [\"md\", \"text/markdown\"],\n [\"pdf\", \"application/pdf\"],\n [\"doc\", \"application/msword\"],\n [\n \"docx\",\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n ],\n [\"txt\", \"text/plain\"],\n [\"csv\", \"text/csv\"],\n [\"xls\", \"application/vnd.ms-excel\"],\n [\"xlsx\", \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"],\n [\"ppt\", \"application/vnd.ms-powerpoint\"],\n [\n \"pptx\",\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\",\n ],\n [\"jpg\", \"image/jpeg\"],\n [\"jpeg\", \"image/jpeg\"],\n [\"png\", \"image/png\"],\n [\"gif\", \"image/gif\"],\n [\"bmp\", \"image/bmp\"],\n [\"webp\", \"image/webp\"],\n [\"svg\", \"image/svg+xml\"],\n]);\n\nexport function formatFileSize(size: number) {\n const [value, unit] = pipes.unitFormat(size, \"bytes\", 1);\n const number = +value;\n return `${number > 100 ? Math.round(number) : number} ${unit}`;\n}\n\nexport function getFileTypeAndIcon(\n mimeType: string | undefined,\n filename: string | undefined\n): [type: string, icon: string] {\n const type = mimeType || getMimeTypeByFilename(filename);\n\n if (type.startsWith(\"image/\")) {\n return [\"Image\", fileOther];\n }\n\n switch (type) {\n case \"text/markdown\":\n case \"text/x-markdown\":\n return [\"Markdown\", fileText];\n case \"application/pdf\":\n return [\"PDF\", filePdf];\n case \"application/msword\":\n case \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\":\n return [\"Word\", fileDoc];\n case \"application/vnd.ms-excel\":\n case \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\":\n return [\"Excel\", fileXls];\n case \"application/vnd.ms-powerpoint\":\n case \"application/vnd.openxmlformats-officedocument.presentationml.presentation\":\n return [\"PowerPoint\", filePpt];\n }\n\n if (type.startsWith(\"text/\")) {\n return [\"Text\", fileText];\n }\n\n return [\"File\", fileOther];\n}\n\nexport function getMimeTypeByFilename(filename: string | undefined): string {\n let ext = \"\";\n const matches = filename?.match(/\\.([^.]+)$/);\n if (matches) {\n ext = matches[1].toLowerCase();\n }\n return MIME_TYPES.get(ext) ?? \"unknown\";\n}\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","import { getMirroredStyle } from \"./utils/getMirroredStyle.js\";\n\nlet hiddenElement: HTMLDivElement | undefined;\n\nexport function getCaretPositionInTextarea(\n textarea: HTMLTextAreaElement,\n index: number\n) {\n if (!hiddenElement) {\n hiddenElement = document.createElement(\"div\");\n hiddenElement.setAttribute(\"tab-index\", \"-1\");\n hiddenElement.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenElement);\n }\n\n hiddenElement.setAttribute(\"style\", getMirroredStyle(textarea));\n hiddenElement.textContent = textarea.value.slice(0, index);\n\n const span = document.createElement(\"span\");\n span.textContent = \"\\u200b\"; // 占位符\n hiddenElement.appendChild(span);\n\n const rect = span.getBoundingClientRect();\n span.remove();\n return {\n top: rect.top,\n left: rect.left,\n };\n}\n","import { getMirroredStyle } from \"./utils/getMirroredStyle.js\";\n\nlet hiddenElement: HTMLDivElement | undefined;\n\nexport function getContentRectsInTextarea(\n textarea: HTMLTextAreaElement,\n prefix: string,\n measureContent: string\n): DOMRect[] {\n if (!hiddenElement) {\n hiddenElement = document.createElement(\"div\");\n hiddenElement.setAttribute(\"tab-index\", \"-1\");\n hiddenElement.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenElement);\n }\n hiddenElement.setAttribute(\"style\", getMirroredStyle(textarea));\n\n hiddenElement.textContent = prefix;\n\n const span = document.createElement(\"span\");\n span.textContent = measureContent;\n hiddenElement.appendChild(span);\n\n const fullRect = span.getBoundingClientRect();\n span.remove();\n\n if (measureContent.length <= 1) {\n return [fullRect];\n }\n\n const leadingChar = measureContent[0];\n const leadingSpan = document.createElement(\"span\");\n leadingSpan.textContent = leadingChar;\n hiddenElement.appendChild(leadingSpan);\n const leadingRect = leadingSpan.getBoundingClientRect();\n leadingSpan.remove();\n\n hiddenElement.textContent = `${prefix}${measureContent.slice(0, -1)}`;\n const trailingChar = measureContent[measureContent.length - 1];\n const trailingSpan = document.createElement(\"span\");\n trailingSpan.textContent = trailingChar;\n hiddenElement.appendChild(trailingSpan);\n const trailingRect = trailingSpan.getBoundingClientRect();\n trailingSpan.remove();\n\n if (leadingRect.top === trailingRect.top) {\n return [fullRect];\n }\n\n const rects: DOMRect[] = [];\n\n // Leading rect\n rects.push(\n new DOMRect(\n leadingRect.left,\n leadingRect.top,\n fullRect.right - leadingRect.left,\n leadingRect.bottom - leadingRect.top\n )\n );\n\n // Middle rect\n const height = trailingRect.top - leadingRect.bottom;\n if (height >= 10) {\n rects.push(\n new DOMRect(fullRect.left, leadingRect.bottom, fullRect.width, height)\n );\n }\n\n // Trailing rect\n rects.push(\n new DOMRect(\n fullRect.left,\n trailingRect.top,\n trailingRect.right - fullRect.left,\n trailingRect.bottom - trailingRect.top\n )\n );\n\n return rects;\n}\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","import { createProviderClass } from \"@next-core/utils/general\";\nimport type { CommandPayload } from \"../shared/interfaces.js\";\n\nexport interface ChatCommand {\n command: string;\n payload: CommandPayload;\n}\n\nlet chatCommand: ChatCommand | null = null;\n\nexport function setChatCommand(command: ChatCommand | null): void {\n chatCommand = command;\n}\n\nexport function getChatCommand(): ChatCommand | null {\n return chatCommand;\n}\n\ncustomElements.define(\n \"ai-portal.set-chat-command\",\n createProviderClass(setChatCommand)\n);\n","import React, {\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n useImperativeHandle,\n createRef,\n useMemo,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport {\n getCaretPositionInTextarea,\n getContentRectsInTextarea,\n TextareaAutoResize,\n type TextareaAutoResizeRef,\n} from \"@next-shared/form\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type { SimpleAction } from \"@next-bricks/basic/actions\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport {\n getChatCommand,\n setChatCommand,\n} from \"../data-providers/set-chat-command.js\";\nimport type {\n ChatPayload,\n CommandPayload,\n UploadOptions,\n} from \"../shared/interfaces.js\";\nimport {\n UploadButton,\n type UploadButtonRef,\n} from \"../shared/FileUpload/UploadButton.js\";\nimport { UploadedFiles } from \"../shared/FileUpload/UploadedFiles.js\";\nimport UploadedFilesStyleText from \"../shared/FileUpload/UploadedFiles.shadow.css\";\nimport { WrappedActions, WrappedIcon } from \"./bricks.js\";\nimport { useFilesUploading } from \"../shared/useFilesUploading.js\";\nimport GlobalDragOverlay from \"../shared/FileUpload/GlobalDragOverlay.js\";\n\ninitializeI18n(NS, locales);\n\nconst MAX_SHOWN_COMMANDS = 10;\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport const ChatBoxComponent = forwardRef(LegacyChatBoxComponent);\n\nexport interface ChatBoxProps {\n disabled?: boolean;\n placeholder?: string;\n autoFocus?: boolean;\n aiEmployees?: AIEmployee[];\n commands?: Command[];\n uploadOptions?: UploadOptions;\n}\n\nexport interface AIEmployee {\n employeeId: string;\n name: string;\n}\n\nexport interface ChatBoxRef {\n setValue: (value: string) => void;\n getValue: () => string;\n focusOnInput: () => void;\n}\n\nexport interface Command {\n label: string;\n value: string;\n groupKey?: string;\n groupLabel?: string;\n subCommands?: Command[];\n payload?: CommandPayload;\n}\n\ntype ActionWithSubCommands = SimpleAction & {\n key: string | number;\n subCommands?: Command[];\n payload?: CommandPayload;\n};\n\n/**\n * 构件 `ai-portal.chat-box`\n */\nexport\n@defineElement(\"ai-portal.chat-box\", {\n styleTexts: [styleText, UploadedFilesStyleText],\n shadowOptions: {\n delegatesFocus: true,\n },\n})\nclass ChatBox extends ReactNextElement implements ChatBoxProps {\n ref = createRef<ChatBoxRef>();\n\n @property({ type: Boolean })\n accessor disabled: boolean | undefined;\n\n @property()\n accessor placeholder: string | undefined;\n\n @property({ type: Boolean })\n accessor autoFocus: boolean | undefined;\n\n @property({ attribute: false })\n accessor aiEmployees: AIEmployee[] | undefined;\n\n @property({ attribute: false })\n accessor commands: Command[] | undefined;\n\n @property({ attribute: false })\n accessor uploadOptions: UploadOptions | undefined;\n\n /**\n * @deprecated Use `chat.submit` event instead\n */\n @event({ type: \"message.submit\" })\n accessor #messageSubmit!: EventEmitter<string>;\n\n #handleMessageSubmit = (value: string) => {\n this.#messageSubmit.emit(value);\n };\n\n @event({ type: \"chat.submit\" })\n accessor #chatSubmit!: EventEmitter<ChatPayload>;\n\n #handleChatSubmit = (payload: ChatPayload) => {\n this.#chatSubmit.emit(payload);\n };\n\n @event({ type: \"command.select\" })\n accessor #commandSelect!: EventEmitter<CommandPayload | null>;\n\n #handleCommandSelect = (command: CommandPayload | null) => {\n this.#commandSelect.emit(command);\n };\n\n @method()\n setValue(value: string) {\n this.ref.current?.setValue(value);\n }\n\n @method()\n getValue() {\n return this.ref.current?.getValue();\n }\n\n @method()\n focusOnInput() {\n return this.ref.current?.focusOnInput();\n }\n\n render() {\n return (\n <ChatBoxComponent\n disabled={this.disabled}\n placeholder={this.placeholder}\n autoFocus={this.autoFocus}\n aiEmployees={this.aiEmployees}\n commands={this.commands}\n uploadOptions={this.uploadOptions}\n onMessageSubmit={this.#handleMessageSubmit}\n onChatSubmit={this.#handleChatSubmit}\n onCommandSelect={this.#handleCommandSelect}\n root={this}\n ref={this.ref}\n />\n );\n }\n}\n\ninterface ChatBoxComponentProps extends ChatBoxProps {\n root: HTMLElement;\n onMessageSubmit: (value: string) => void;\n onChatSubmit: (payload: ChatPayload) => void;\n onCommandSelect: (command: CommandPayload | null) => void;\n ref?: React.Ref<ChatBoxRef>;\n}\n\ninterface MentionPopover {\n style: React.CSSProperties;\n range: {\n start: number;\n end: number;\n };\n actions: ActionWithSubCommands[];\n}\n\nfunction LegacyChatBoxComponent(\n {\n root,\n disabled,\n placeholder,\n autoFocus,\n aiEmployees,\n commands: propCommands,\n uploadOptions,\n onMessageSubmit,\n onChatSubmit,\n onCommandSelect,\n }: ChatBoxComponentProps,\n ref: React.Ref<ChatBoxRef>\n) {\n const containerRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<TextareaAutoResizeRef>(null);\n const [value, setValue] = useState(\"\");\n const valueRef = useRef(\"\");\n const [mentionPopover, setMentionPopover] = useState<MentionPopover | null>(\n null\n );\n const [mentionOverlay, setMentionOverlay] = useState<\n React.CSSProperties[] | null\n >(null);\n const [mentionedText, setMentionedText] = useState(\"\");\n const [activeActionIndex, setActiveActionIndex] = useState(0);\n const [commandPrefix, setCommandPrefix] = useState(\"/\");\n const [commands, setCommands] = useState<Command[] | undefined>(propCommands);\n const [command, setCommand] = useState<CommandPayload | null>(null);\n const [mentioned, setMentioned] = useState<string | null>(null);\n const [commandPopover, setCommandPopover] = useState<MentionPopover | null>(\n null\n );\n const [commandOverlay, setCommandOverlay] = useState<\n React.CSSProperties[] | null\n >(null);\n const [commandText, setCommandText] = useState(\"\");\n const selectionRef = useRef<{ start: number; end: number } | null>(null);\n\n useEffect(() => {\n setCommands(propCommands);\n }, [propCommands]);\n\n const uploadEnabled = uploadOptions?.enabled;\n const uploadAccept = uploadOptions?.accept;\n const {\n files,\n resetFiles,\n appendFiles,\n removeFile,\n hasFiles,\n allFilesDone,\n fileInfos,\n exceeded,\n paste,\n } = useFilesUploading(uploadOptions);\n\n useEffect(() => {\n if (!uploadEnabled) {\n resetFiles();\n }\n }, [uploadEnabled, resetFiles]);\n\n useEffect(() => {\n const store = window.__elevo_try_it_out;\n if (store) {\n delete window.__elevo_try_it_out;\n }\n if (typeof store?.content === \"string\") {\n valueRef.current = store.content;\n setValue(store.content);\n }\n }, []);\n\n useImperativeHandle(ref, () => ({\n setValue: (value: string) => {\n valueRef.current = value;\n setValue(value);\n },\n getValue: () => {\n return valueRef.current;\n },\n focusOnInput: () => {\n textareaRef.current?.focus();\n },\n }));\n\n const doSubmit = useCallback(\n (value: string) => {\n const content = value.slice(commandText.length || mentionedText.length);\n onMessageSubmit(content);\n onChatSubmit({\n content,\n files: fileInfos,\n cmd: command,\n aiEmployeeId: mentioned,\n });\n },\n [\n commandText.length,\n mentionedText.length,\n command,\n fileInfos,\n mentioned,\n onChatSubmit,\n onMessageSubmit,\n ]\n );\n\n const handleSubmit = useCallback(\n (e: React.FormEvent<HTMLTextAreaElement>) => {\n if (e.currentTarget.value && allFilesDone) {\n doSubmit(e.currentTarget.value);\n }\n },\n [doSubmit, allFilesDone]\n );\n\n const showMentionSuggestions = useCallback(\n (textarea: HTMLTextAreaElement, employees: AIEmployee[] | undefined) => {\n const { value, selectionStart, selectionEnd } = textarea;\n if (\n selectionStart !== null &&\n selectionStart === selectionEnd &&\n employees?.length\n ) {\n const previousContent = value.slice(0, selectionStart);\n if (previousContent.startsWith(\"@\")) {\n const mentionText = previousContent.slice(1).toLowerCase();\n const matchedEmployees = employees\n .filter(\n (employee) =>\n employee.employeeId.toLowerCase().includes(mentionText) ||\n employee.name.toLowerCase().includes(mentionText)\n )\n .slice(0, MAX_SHOWN_COMMANDS);\n if (matchedEmployees.length > 0) {\n const position = getCaretPositionInTextarea(\n textarea,\n selectionStart\n );\n const textareaRect = textarea.getBoundingClientRect();\n setMentionPopover({\n style: {\n left: position.left + 10 + textareaRect.left,\n top: position.top + 22 + textareaRect.top,\n position: \"absolute\",\n zIndex: 1,\n },\n range: { start: 0, end: selectionStart },\n actions: matchedEmployees.map((employee) => ({\n key: employee.employeeId,\n text: employee.name,\n data: employee,\n })),\n });\n setActiveActionIndex(0);\n return true;\n }\n }\n }\n setMentionPopover(null);\n },\n []\n );\n\n const showCommandSuggestions = useCallback(\n (\n textarea: HTMLTextAreaElement,\n commandList: Command[] | undefined,\n prefix: string\n ) => {\n const { value, selectionStart, selectionEnd } = textarea;\n if (\n selectionStart !== null &&\n selectionStart === selectionEnd &&\n commandList?.length\n ) {\n const previousContent = value.slice(0, selectionStart);\n if (previousContent.startsWith(prefix)) {\n const searchText = previousContent.slice(prefix.length).toLowerCase();\n const matchedCommands = commandList\n .filter(\n (command) =>\n command.label.toLowerCase().includes(searchText) ||\n command.groupLabel?.toLowerCase().includes(searchText)\n )\n .slice(0, MAX_SHOWN_COMMANDS);\n if (matchedCommands.length > 0) {\n const popover = getCommandPopover(\n matchedCommands,\n textarea,\n selectionStart\n );\n setCommandPopover(popover);\n setActiveActionIndex(0);\n return true;\n }\n }\n }\n setCommandPopover(null);\n },\n []\n );\n\n // Show mention/commands suggestions once candidates are loaded\n const mentionInitializedRef = useRef(false);\n useEffect(() => {\n const textarea = textareaRef.current?.element;\n if (\n mentionInitializedRef.current ||\n !aiEmployees ||\n !textarea ||\n document.activeElement !== root ||\n root.shadowRoot?.activeElement !== textarea\n ) {\n return;\n }\n mentionInitializedRef.current = true;\n showMentionSuggestions(textarea, aiEmployees);\n }, [aiEmployees, root, showMentionSuggestions]);\n\n const commandsInitializedRef = useRef(false);\n useEffect(() => {\n const textarea = textareaRef.current?.element;\n if (\n commandsInitializedRef.current ||\n !propCommands ||\n !textarea ||\n document.activeElement !== root ||\n root.shadowRoot?.activeElement !== textarea\n ) {\n return;\n }\n commandsInitializedRef.current = true;\n showCommandSuggestions(textarea, propCommands, \"/\");\n }, [propCommands, root, showCommandSuggestions]);\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n const { value } = e.target;\n valueRef.current = value;\n setValue(value);\n\n if (showMentionSuggestions(e.target, aiEmployees)) {\n return;\n }\n showCommandSuggestions(e.target, commands, commandPrefix);\n },\n [\n aiEmployees,\n commandPrefix,\n commands,\n showCommandSuggestions,\n showMentionSuggestions,\n ]\n );\n\n useEffect(() => {\n if (mentionedText && !value.startsWith(mentionedText)) {\n setMentionedText(\"\");\n setMentioned(null);\n }\n }, [mentionedText, value]);\n\n useEffect(() => {\n if (\n !value.startsWith(commandPrefix) ||\n (commandText && !value.startsWith(commandText))\n ) {\n setCommandText(\"\");\n setCommand(null);\n onCommandSelect(null);\n setCommands(propCommands);\n setCommandPrefix(\"/\");\n setCommandPopover(null);\n }\n }, [commandPrefix, commandText, onCommandSelect, value, propCommands]);\n\n const handleSubmitClick = useCallback(() => {\n doSubmit(valueRef.current);\n }, [doSubmit]);\n\n useEffect(\n () => {\n if (autoFocus) {\n Promise.resolve().then(() => {\n textareaRef.current?.focus();\n });\n }\n },\n // One-time focus\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n );\n\n useEffect(() => {\n const element = textareaRef.current?.element;\n if (!mentionedText || !element) {\n setMentionOverlay(null);\n return;\n }\n const rects = getContentRectsInTextarea(\n element,\n \"\",\n // Ignore the last space\n mentionedText.slice(0, -1)\n );\n setMentionOverlay(\n rects.map((rect) => ({\n left: rect.left - 1,\n top: rect.top - 1,\n width: rect.width + 4,\n height: rect.height + 4,\n }))\n );\n }, [mentionedText, hasFiles]);\n\n useEffect(() => {\n const element = textareaRef.current?.element;\n if (!commandText || !element) {\n setCommandOverlay(null);\n return;\n }\n const rects = getContentRectsInTextarea(\n element,\n \"\",\n // Ignore the last space\n commandText.slice(0, -1)\n );\n setCommandOverlay(\n rects.map((rect) => ({\n left: rect.left - 1,\n top: rect.top - 1,\n width: rect.width + 4,\n height: rect.height + 4,\n }))\n );\n }, [commandText, hasFiles]);\n\n const chatCommand = useMemo(() => {\n const command = getChatCommand();\n if (command) {\n setChatCommand(null);\n }\n return command;\n }, []);\n\n useEffect(() => {\n if (chatCommand) {\n setCommand(chatCommand.payload);\n onCommandSelect(chatCommand.payload);\n }\n }, [chatCommand, onCommandSelect]);\n\n useEffect(() => {\n const element = textareaRef.current?.element;\n if (chatCommand && element) {\n const commandStr = `/${chatCommand.command} `;\n const rects = getContentRectsInTextarea(\n element,\n \"\",\n // Ignore the last space\n commandStr.slice(0, -1)\n );\n setCommandOverlay(\n rects.map((rect) => ({\n left: rect.left - 1,\n top: rect.top - 1,\n width: rect.width + 4,\n height: rect.height + 4,\n }))\n );\n valueRef.current = commandStr;\n selectionRef.current = {\n start: commandStr.length,\n end: commandStr.length,\n };\n setValue(commandStr);\n setCommandText(commandStr);\n }\n }, [chatCommand]);\n\n const handleMention = useCallback(\n (action: SimpleAction) => {\n const mention = `@${action.text} `;\n const prefix = `${valueRef.current.slice(0, mentionPopover!.range.start)}${mention}`;\n const newValue = `${prefix}${valueRef.current.slice(mentionPopover!.range.end)}`;\n valueRef.current = newValue;\n selectionRef.current = { start: prefix.length, end: prefix.length };\n setValue(newValue);\n setMentionedText(mention);\n setMentionPopover(null);\n setMentioned((action as { data?: AIEmployee }).data!.employeeId);\n textareaRef.current?.focus();\n },\n [mentionPopover]\n );\n\n const handleSelectCommand = useCallback(\n (action: ActionWithSubCommands) => {\n const hasSubCommands =\n action.subCommands && action.subCommands.length > 0;\n const command = `${commandPrefix.replace(/ $/, \": \")}${action.text} `;\n const prefix = `${valueRef.current.slice(0, commandPopover!.range.start)}${command}`;\n const newValue = `${prefix}${valueRef.current.slice(commandPopover!.range.end)}`;\n valueRef.current = newValue;\n selectionRef.current = { start: prefix.length, end: prefix.length };\n setValue(newValue);\n if (hasSubCommands) {\n if (action.payload) {\n setCommandText(command);\n setCommand(action.payload);\n }\n setCommands(action.subCommands);\n setCommandPrefix(command);\n // Wait for the textarea to update\n setTimeout(() => {\n const popover = getCommandPopover(\n action.subCommands!.slice(0, MAX_SHOWN_COMMANDS),\n textareaRef.current!.element!,\n prefix.length\n );\n setCommandPopover(popover);\n setActiveActionIndex(0);\n }, 100);\n } else {\n setCommandText(command);\n setCommand(action.payload!);\n setCommandPopover(null);\n setCommandPrefix(\"/\");\n onCommandSelect(action.payload!);\n }\n textareaRef.current?.focus();\n },\n [commandPopover, commandPrefix, onCommandSelect]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n switch (e.key) {\n case \"Escape\":\n if (!mentionPopover && !commandPopover) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n setMentionPopover(null);\n setCommandPopover(null);\n return false;\n case \"ArrowUp\":\n case \"ArrowDown\": {\n if (!mentionPopover && !commandPopover) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n setActiveActionIndex((prev) => {\n const nextIndex = prev + (e.key === \"ArrowUp\" ? -1 : 1);\n const meaningfulActions = getMeaningfulActions(\n (mentionPopover || commandPopover)!.actions\n );\n const total = meaningfulActions.length;\n const next = (total + nextIndex) % total;\n return next;\n });\n return false;\n }\n case \"Enter\": {\n if (!mentionPopover && !commandPopover) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n const activeAction = getMeaningfulActions(\n (mentionPopover || commandPopover)!.actions\n )[activeActionIndex];\n if (mentionPopover) {\n handleMention(activeAction);\n } else {\n handleSelectCommand(activeAction);\n }\n return false;\n }\n case \"Delete\":\n case \"Backspace\": {\n const popovers = [\n {\n textLength: mentionedText.length,\n prefixLength: 0,\n },\n {\n textLength: commandText.length,\n prefixLength: 0,\n },\n ];\n\n for (const { textLength, prefixLength } of popovers) {\n if (textLength) {\n let { selectionStart, selectionEnd } = e.currentTarget;\n if (selectionStart === selectionEnd) {\n if (e.key === \"Backspace\") {\n selectionStart -= 1;\n } else {\n selectionEnd += 1;\n }\n }\n const currentStart = prefixLength;\n const currentEnd = currentStart + textLength;\n if (selectionStart < currentEnd && selectionEnd > currentStart) {\n const start = Math.min(selectionStart, currentStart);\n const end = Math.max(selectionEnd, currentEnd);\n const newValue = `${valueRef.current.slice(0, start)}${valueRef.current.slice(end)}`;\n valueRef.current = newValue;\n selectionRef.current = { start, end: start };\n setValue(newValue);\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n }\n }\n break;\n }\n }\n },\n [\n activeActionIndex,\n commandPopover,\n commandText.length,\n handleMention,\n handleSelectCommand,\n mentionPopover,\n mentionedText.length,\n ]\n );\n\n const uploadButtonRef = useRef<UploadButtonRef>(null);\n\n const onFilesDropped = useCallback(\n (files: File[]) => {\n appendFiles(files);\n textareaRef.current?.focus();\n },\n [appendFiles]\n );\n\n const sendDisabled =\n !value ||\n !allFilesDone ||\n (!!mentionedText && value.length <= mentionedText.length) ||\n (!!commandText && value.length <= commandText.length);\n\n return (\n <>\n <div className=\"root\">\n <div className=\"container\" ref={containerRef}>\n <TextareaAutoResize\n containerRef={containerRef}\n ref={textareaRef}\n value={value}\n minRows={58 / 22}\n paddingSize={hasFiles ? 144 : 60}\n autoResize\n disabled={disabled}\n placeholder={placeholder ?? t(K.ASK_ANY_THING)}\n submitWhen=\"enter-without-shift\"\n desiredSelectionRef={selectionRef}\n onSubmit={handleSubmit}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onPaste={paste}\n style={{\n paddingTop: hasFiles ? 94 : 10,\n }}\n />\n {hasFiles && (\n <UploadedFiles\n files={files!}\n onRemove={(uid, abortController) => {\n removeFile(uid);\n abortController?.abort();\n }}\n onAdd={() => {\n uploadButtonRef.current?.requestUpload();\n }}\n />\n )}\n <div className=\"actions-bar\">\n <div>\n <slot name=\"actions\"></slot>\n </div>\n <div className=\"buttons\">\n {uploadEnabled ? (\n <>\n <UploadButton\n ref={uploadButtonRef}\n accept={uploadAccept}\n disabled={exceeded}\n onChange={(files) => {\n appendFiles(files);\n textareaRef.current?.focus();\n }}\n />\n <div className=\"btn-divider\"></div>\n </>\n ) : null}\n <button\n className=\"btn-send\"\n disabled={sendDisabled}\n onClick={handleSubmitClick}\n >\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-up\" />\n </button>\n </div>\n </div>\n {mentionOverlay?.map((overlay, index) => (\n <div key={index} className=\"mention-overlay\" style={overlay} />\n ))}\n {commandOverlay?.map((overlay, index) => (\n <div key={index} className=\"mention-overlay\" style={overlay} />\n ))}\n {mentionPopover &&\n createPortal(\n <WrappedActions\n actions={mentionPopover.actions}\n style={mentionPopover.style}\n activeKeys={getActiveActionKeys(\n mentionPopover.actions,\n activeActionIndex\n )}\n footerTips={t(K.COMMAND_TIPS)}\n onActionClick={(e) => handleMention(e.detail)}\n />,\n document.body\n )}\n {commandPopover &&\n createPortal(\n <WrappedActions\n actions={commandPopover.actions}\n style={commandPopover.style}\n activeKeys={getActiveActionKeys(\n commandPopover.actions,\n activeActionIndex\n )}\n footerTips={\n commandPrefix === \"/\"\n ? t(K.COMMAND_TIPS)\n : t(K.SEARCH_COMMANDS_TIPS, { count: MAX_SHOWN_COMMANDS })\n }\n onActionClick={(e) =>\n handleSelectCommand(e.detail as ActionWithSubCommands)\n }\n />,\n document.body\n )}\n </div>\n </div>\n <GlobalDragOverlay\n disabled={!uploadEnabled || exceeded}\n uploadOptions={uploadOptions}\n onFilesDropped={onFilesDropped}\n />\n </>\n );\n}\n\nfunction getMeaningfulActions(\n actions: ActionWithSubCommands[]\n): ActionWithSubCommands[] {\n return actions.filter(\n (action) =>\n (action as any).type !== \"group\" && (action as any).type !== \"divider\"\n );\n}\n\nfunction getActiveActionKeys(\n actions: ActionWithSubCommands[],\n index: number\n): (string | number)[] {\n const meaningfulActions = getMeaningfulActions(actions);\n return [meaningfulActions[index].key!];\n}\n\nfunction getCommandPopover(\n commands: Command[],\n textarea: HTMLTextAreaElement,\n selectionStart: number\n): MentionPopover {\n const position = getCaretPositionInTextarea(textarea, selectionStart);\n const textareaRect = textarea.getBoundingClientRect();\n return {\n style: {\n left: position.left + 10 + textareaRect.left,\n top: position.top + 22 + textareaRect.top,\n position: \"absolute\",\n zIndex: 1,\n },\n range: { start: 0, end: selectionStart },\n actions: getGroupedCommandActions(commands),\n };\n}\n\nfunction getGroupedCommandActions(\n commands: Command[]\n): ActionWithSubCommands[] {\n const grouped = commands.every((cmd) => cmd.groupKey && cmd.groupLabel);\n if (grouped) {\n const groups = new Map<string, { label: string; commands: Command[] }>();\n for (const command of commands) {\n const groupKey = command.groupKey!;\n let group = groups.get(groupKey);\n if (!group) {\n groups.set(\n groupKey,\n (group = {\n label: command.groupLabel!,\n commands: [],\n })\n );\n }\n group.commands.push(command);\n }\n return [...groups.values()].flatMap((group) => [\n {\n type: \"group\",\n text: group.label,\n },\n ...getCommandActions(group.commands),\n ]) as ActionWithSubCommands[];\n }\n\n return getCommandActions(commands);\n}\n\nfunction getCommandActions(commands: Command[]): ActionWithSubCommands[] {\n return commands.map((command) => ({\n key: command.value,\n text: command.label,\n subCommands: command.subCommands,\n payload: command.payload,\n }));\n}\n"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","K","en","ASK_ANY_THING","COMMON_TASKS","COMMAND_TIPS","SEARCH_COMMANDS_TIPS","zh","NS","locales","t","i18n","getFixedT","WrappedIcon","wrapBrick","WrappedActions","onActionClick","onItemDragEnd","onItemDragStart","url","String","__esModule","default","test","slice","hash","needQuotes","replace","_defineProperty","key","value","Object","defineProperty","enumerable","configurable","writable","nonce","setAttribute","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","push","id","toString","MIME_TYPES","Map","formatFileSize","size","unit","pipes","unitFormat","number","Math","round","getFileTypeAndIcon","mimeType","filename","type","getMimeTypeByFilename","startsWith","fileOther","fileText","filePdf","fileDoc","fileXls","filePpt","_MIME_TYPES$get","ext","matches","match","toLowerCase","get","stylesInDOM","getIndexByIdentifier","identifier","result","i","modulesToDom","list","idCountMap","identifiers","item","base","count","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","domAPI","newObj","lastIdentifiers","newList","index","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","hiddenElement","getCaretPositionInTextarea","textarea","createElement","body","getMirroredStyle","textContent","span","rect","getBoundingClientRect","top","left","getContentRectsInTextarea","prefix","measureContent","fullRect","leadingChar","leadingSpan","leadingRect","trailingChar","trailingSpan","trailingRect","rects","DOMRect","right","bottom","height","width","memo","insert","style","target","styleTarget","querySelector","window","HTMLIFrameElement","contentDocument","head","e","getTarget","Error","_extends","assign","bind","arguments","source","prototype","hasOwnProperty","call","this","element","setAttributes","attributes","chatCommand","setChatCommand","command","getChatCommand","customElements","define","createProviderClass","initializeI18n","defineElement","property","event","method","createDecorators","ChatBoxComponent","forwardRef","LegacyChatBoxComponent","_ChatBox","_A","WeakMap","_B","_C","_D","_E","_F","_G","_ChatBox_brand","WeakSet","_handleMessageSubmit","_H","_handleChatSubmit","_I","_handleCommandSelect","ChatBox","ReactNextElement","constructor","_classPrivateMethodInitSpec","_initProto","createRef","_classPrivateFieldInitSpec","_init_disabled","_init_extra_disabled","_init_placeholder","_init_extra_placeholder","_init_autoFocus","_init_extra_autoFocus","_init_aiEmployees","_init_extra_aiEmployees","_init_commands","_init_extra_commands","_init_uploadOptions","_init_extra_uploadOptions","_init_messageSubmit","_init_extra_messageSubmit","_classPrivateGetter","_get_messageSubmit","emit","_init_chatSubmit","_init_extra_chatSubmit","payload","_get_chatSubmit","_init_commandSelect","_init_extra_commandSelect","_get_commandSelect","disabled","_classPrivateFieldGet","v","_classPrivateFieldSet","placeholder","autoFocus","aiEmployees","commands","uploadOptions","setValue","_this$ref$current","ref","current","getValue","_this$ref$current2","focusOnInput","_this$ref$current3","render","React","onMessageSubmit","onChatSubmit","onCommandSelect","root","_ref","propCommands","containerRef","useRef","textareaRef","useState","valueRef","mentionPopover","setMentionPopover","mentionOverlay","setMentionOverlay","mentionedText","setMentionedText","activeActionIndex","setActiveActionIndex","commandPrefix","setCommandPrefix","setCommands","setCommand","mentioned","setMentioned","commandPopover","setCommandPopover","commandOverlay","setCommandOverlay","commandText","setCommandText","selectionRef","useEffect","uploadEnabled","enabled","uploadAccept","accept","files","resetFiles","appendFiles","removeFile","hasFiles","allFilesDone","fileInfos","exceeded","paste","useFilesUploading","store","__elevo_try_it_out","content","useImperativeHandle","_textareaRef$current","focus","doSubmit","useCallback","cmd","aiEmployeeId","handleSubmit","currentTarget","showMentionSuggestions","employees","selectionStart","selectionEnd","previousContent","mentionText","matchedEmployees","filter","employee","employeeId","includes","name","position","textareaRect","zIndex","range","start","end","actions","map","text","data","showCommandSuggestions","commandList","searchText","matchedCommands","_command$groupLabel","label","groupLabel","popover","getCommandPopover","mentionInitializedRef","_textareaRef$current2","_root$shadowRoot","activeElement","shadowRoot","commandsInitializedRef","_textareaRef$current3","_root$shadowRoot2","handleChange","handleSubmitClick","Promise","resolve","then","_textareaRef$current4","_textareaRef$current5","_textareaRef$current6","useMemo","_textareaRef$current7","commandStr","handleMention","action","_textareaRef$current8","mention","newValue","handleSelectCommand","_textareaRef$current9","hasSubCommands","subCommands","setTimeout","handleKeyDown","preventDefault","stopPropagation","nativeEvent","stopImmediatePropagation","prev","nextIndex","total","getMeaningfulActions","activeAction","popovers","textLength","prefixLength","currentStart","currentEnd","min","max","uploadButtonRef","onFilesDropped","_textareaRef$current0","sendDisabled","className","TextareaAutoResize","minRows","paddingSize","autoResize","submitWhen","desiredSelectionRef","onSubmit","onChange","onKeyDown","onPaste","paddingTop","UploadedFiles","onRemove","uid","abortController","abort","onAdd","_uploadButtonRef$curr","requestUpload","UploadButton","_textareaRef$current1","onClick","lib","icon","overlay","createPortal","activeKeys","getActiveActionKeys","footerTips","detail","GlobalDragOverlay","getGroupedCommandActions","every","groupKey","groups","group","set","values","flatMap","getCommandActions","_ChatBox2","_set_messageSubmit","_set_chatSubmit","_set_commandSelect","c","_initClass","_applyDecs","styleTexts","styleText","UploadedFilesStyleText","shadowOptions","delegatesFocus","Boolean","attribute","o","_","has","_checkInRHS"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[366],{23182:(e,t,i)=>{i.r(t),i.d(t,{ChatStream:()=>Se});var s,a=i(74635),h=i(70918),n=i(26902),r=i(5536),o=i(86121),A=i(70829),p=i(62740),l=i(18769),w=i.n(l),c=i(90870),u=i(30981),d=(i(34419),i(52616)),k=i(48952),b=i(62232);let m,y,M,W,v,F,f,g,O,S,U,D,C,I,x,V,R,T,E,_,B,j,q,H,P,N,z,G,J,K,L,Q,X,Y,Z,$,ee,te,ie,se,ae,he,ne,re,oe,Ae,pe,le,we,ce,ue,de,ke,be,me,ye,Me,We;(0,d.initializeI18n)(k.NS,k.I);const{defineElement:ve,property:Fe,event:fe,method:ge}=(0,c.createDecorators)(),Oe=(0,l.forwardRef)(b.C);let Se;var Ue=new WeakMap,De=new WeakMap,Ce=new WeakMap,Ie=new WeakMap,xe=new WeakMap,Ve=new WeakMap,Re=new WeakMap,Te=new WeakMap,Ee=new WeakMap,_e=new WeakMap,Be=new WeakMap,je=new WeakMap,qe=new WeakMap,He=new WeakMap,Pe=new WeakMap,Ne=new WeakMap,ze=new WeakMap,Ge=new WeakSet,Je=new WeakMap,Ke=new WeakMap,Le=new WeakMap,Qe=new WeakMap,Xe=new WeakMap,Ye=new WeakMap,Ze=new WeakMap,$e=new WeakMap,et=new WeakMap,tt=new WeakMap,it=new WeakMap,st=new WeakMap;class at extends u.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,Ge),(0,h.A)(this,Ue,(m(this),M(this))),(0,h.A)(this,De,(W(this),v(this))),(0,h.A)(this,Ce,(F(this),f(this))),(0,h.A)(this,Ie,(g(this),O(this))),(0,h.A)(this,xe,(S(this),U(this))),(0,h.A)(this,Ve,(D(this),C(this))),(0,h.A)(this,Re,(I(this),x(this))),(0,h.A)(this,Te,(V(this),R(this))),(0,h.A)(this,Ee,(T(this),E(this))),(0,h.A)(this,_e,(_(this),B(this))),(0,h.A)(this,Be,(j(this),q(this))),(0,h.A)(this,je,(H(this),P(this))),(0,h.A)(this,qe,(N(this),z(this))),(0,h.A)(this,He,(G(this),J(this))),(0,h.A)(this,Pe,(K(this),L(this))),(0,h.A)(this,Ne,(Q(this),X(this))),(0,h.A)(this,ze,(Y(this),Z(this))),(0,h.A)(this,Je,(te(this),()=>{(0,r.A)(Ge,this,$).emit()})),(0,h.A)(this,Ke,ie(this)),(0,h.A)(this,Le,(he(this),()=>{(0,r.A)(Ge,this,se).emit()})),(0,h.A)(this,Qe,ne(this)),(0,h.A)(this,Xe,(Ae(this),e=>{(0,r.A)(Ge,this,re).emit(e)})),(0,h.A)(this,Ye,pe(this)),(0,h.A)(this,Ze,(ce(this),e=>{(0,r.A)(Ge,this,le).emit(e)})),(0,h.A)(this,$e,ue(this)),(0,h.A)(this,et,(be(this),()=>{(0,r.A)(Ge,this,de).emit("canvas")})),(0,h.A)(this,tt,me(this)),(0,h.A)(this,it,(We(this),e=>{(0,r.A)(Ge,this,ye).emit(e)})),(0,h.A)(this,st,(0,l.createRef)())}get conversationId(){return(0,A.A)(Ue,this)}set conversationId(e){(0,o.A)(Ue,this,e)}get initialRequest(){return(0,A.A)(De,this)}set initialRequest(e){(0,o.A)(De,this,e)}get replay(){return(0,A.A)(Ce,this)}set replay(e){(0,o.A)(Ce,this,e)}get replayDelay(){return(0,A.A)(Ie,this)}set replayDelay(e){(0,o.A)(Ie,this,e)}get supports(){return(0,A.A)(xe,this)}set supports(e){(0,o.A)(xe,this,e)}get showHumanActions(){return(0,A.A)(Ve,this)}set showHumanActions(e){(0,o.A)(Ve,this,e)}get showFeedback(){return(0,A.A)(Re,this)}set showFeedback(e){(0,o.A)(Re,this,e)}get showFeedbackAfterFailed(){return(0,A.A)(Te,this)}set showFeedbackAfterFailed(e){(0,o.A)(Te,this,e)}get showFeedbackOnView(){return(0,A.A)(Ee,this)}set showFeedbackOnView(e){(0,o.A)(Ee,this,e)}get showUiSwitch(){return(0,A.A)(_e,this)}set showUiSwitch(e){(0,o.A)(_e,this,e)}get hideMermaid(){return(0,A.A)(Be,this)}set hideMermaid(e){(0,o.A)(Be,this,e)}get previewUrlTemplate(){return(0,A.A)(je,this)}set previewUrlTemplate(e){(0,o.A)(je,this,e)}get showCases(){return(0,A.A)(qe,this)}set showCases(e){(0,o.A)(qe,this,e)}get exampleProjects(){return(0,A.A)(He,this)}set exampleProjects(e){(0,o.A)(He,this,e)}get tryItOutUrl(){return(0,A.A)(Pe,this)}set tryItOutUrl(e){(0,o.A)(Pe,this,e)}get uploadOptions(){return(0,A.A)(Ne,this)}set uploadOptions(e){(0,o.A)(Ne,this,e)}resumed(){var e,t;null===(e=(0,A.A)(st,this).current)||void 0===e||null===(t=e.resumed)||void 0===t||t.call(e)}feedbackSubmitDone(){var e;null===(e=(0,A.A)(st,this).current)||void 0===e||e.feedbackSubmitDone()}feedbackSubmitFailed(){var e;null===(e=(0,A.A)(st,this).current)||void 0===e||e.feedbackSubmitFailed()}feedbackOnViewDone(e){var t;null===(t=(0,A.A)(st,this).current)||void 0===t||t.feedbackOnViewDone(e)}render(){return w().createElement(Oe,{conversationId:this.conversationId,initialRequest:this.initialRequest,replay:this.replay,replayDelay:this.replayDelay,supports:this.supports,showHumanActions:this.showHumanActions,showFeedback:this.showFeedback,showFeedbackAfterFailed:this.showFeedbackAfterFailed,showFeedbackOnView:this.showFeedbackOnView,showUiSwitch:this.showUiSwitch,previewUrlTemplate:this.previewUrlTemplate,showCases:this.showCases,exampleProjects:this.exampleProjects,tryItOutUrl:this.tryItOutUrl,uploadOptions:this.uploadOptions,onShare:(0,A.A)(Je,this),onTerminate:(0,A.A)(Le,this),onSubmitFeedback:(0,A.A)(Xe,this),onSwitchToCanvas:(0,A.A)(et,this),onFeedbackOnView:(0,A.A)(Ze,this),onDetailChange:(0,A.A)(it,this),ref:(0,A.A)(st,this)})}}s=at,({e:[M,W,v,F,f,g,O,S,U,D,C,I,x,V,R,T,E,_,B,j,q,H,P,N,z,G,J,K,L,Q,X,Y,Z,$,ee,te,ie,se,ae,he,ne,re,oe,Ae,pe,le,we,ce,ue,de,ke,be,me,ye,Me,We,m],c:[Se,y]}=(0,p.A)(s,[ve("ai-portal.chat-stream",{shadowOptions:!1})],[[Fe(),1,"conversationId"],[Fe({attribute:!1,render:!1}),1,"initialRequest"],[Fe({type:Boolean}),1,"replay"],[Fe({type:Number}),1,"replayDelay"],[Fe({attribute:!1}),1,"supports"],[Fe({type:Boolean}),1,"showHumanActions"],[Fe({type:Boolean}),1,"showFeedback"],[Fe({type:Boolean}),1,"showFeedbackAfterFailed"],[Fe({type:Boolean}),1,"showFeedbackOnView"],[Fe({type:Boolean}),1,"showUiSwitch"],[Fe({type:Boolean,render:!1}),1,"hideMermaid"],[Fe(),1,"previewUrlTemplate"],[Fe({attribute:!1}),1,"showCases"],[Fe({attribute:!1}),1,"exampleProjects"],[Fe(),1,"tryItOutUrl"],[Fe({attribute:!1}),1,"uploadOptions"],[fe({type:"share"}),1,"shareEvent",e=>(0,A.A)(ze,e),(e,t)=>(0,o.A)(ze,e,t)],[fe({type:"terminate"}),1,"terminateEvent",e=>(0,A.A)(Ke,e),(e,t)=>(0,o.A)(Ke,e,t)],[fe({type:"feedback.submit"}),1,"feedbackSubmitEvent",e=>(0,A.A)(Qe,e),(e,t)=>(0,o.A)(Qe,e,t)],[fe({type:"feedback.on.view"}),1,"feedbackOnViewEvent",e=>(0,A.A)(Ye,e),(e,t)=>(0,o.A)(Ye,e,t)],[fe({type:"ui.switch"}),1,"switch",e=>(0,A.A)($e,e),(e,t)=>(0,o.A)($e,e,t)],[fe({type:"detail.change"}),1,"detailChange",e=>(0,A.A)(tt,e),(e,t)=>(0,o.A)(tt,e,t)],[ge(),2,"resumed"],[ge(),2,"feedbackSubmitDone"],[ge(),2,"feedbackSubmitFailed"],[ge(),2,"feedbackOnViewDone"]],0,(e=>st.has((0,n.A)(e))),u.ReactNextElement)),y()}}]);
|
|
2
|
-
//# sourceMappingURL=chat-stream.713ffcaf.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/chat-stream.713ffcaf.js","mappings":"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","sources":["webpack:///./src/chat-stream/index.tsx"],"sourcesContent":["// istanbul ignore file: experimental\nimport React, { createRef, forwardRef } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { NS, locales } from \"./i18n.js\";\nimport type { FeedbackDetail } from \"../cruise-canvas/interfaces.js\";\nimport { ChatStreamComponent } from \"./ChatStream.js\";\nimport type {\n ExampleProject,\n RequestStore,\n ShowCaseType,\n UploadOptions,\n} from \"../shared/interfaces.js\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface ChatStreamProps {\n conversationId?: string;\n initialRequest?: RequestStore | null;\n replay?: boolean;\n replayDelay?: number;\n supports?: Record<string, boolean>;\n showHumanActions?: boolean;\n showFeedback?: boolean;\n showFeedbackAfterFailed?: boolean;\n showFeedbackOnView?: boolean;\n showUiSwitch?: boolean;\n previewUrlTemplate?: string;\n showCases?: ShowCaseType[];\n exampleProjects?: ExampleProject[];\n tryItOutUrl?: string;\n uploadOptions?: UploadOptions;\n}\n\nexport interface ConversationDetail {\n projectId?: string;\n}\n\nconst ForwardedChatStreamComponent = forwardRef(ChatStreamComponent);\n\n/**\n * 构件 `ai-portal.chat-stream`\n */\nexport\n@defineElement(\"ai-portal.chat-stream\", {\n // Will wrap v2 bricks which don't support in shadow DOM.\n shadowOptions: false,\n})\nclass ChatStream extends ReactNextElement implements ChatStreamProps {\n @property()\n accessor conversationId: string | undefined;\n\n /** 初始请求数据。仅初始设置有效。 */\n @property({ attribute: false, render: false })\n accessor initialRequest: RequestStore | undefined | null;\n\n /** 是否启用回放。仅初始设置有效。 */\n @property({ type: Boolean })\n accessor replay: boolean | undefined;\n\n /**\n * 设置回放时消息之间的时间间隔,单位为秒。仅初始设置有效。\n *\n * @default 2\n */\n @property({ type: Number })\n accessor replayDelay: number | undefined;\n\n @property({ attribute: false })\n accessor supports: Record<string, boolean> | undefined;\n\n @property({ type: Boolean })\n accessor showHumanActions: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedback: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedbackAfterFailed: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showFeedbackOnView: boolean | undefined;\n\n @property({ type: Boolean })\n accessor showUiSwitch: boolean | undefined;\n\n @property({ type: Boolean, render: false })\n accessor hideMermaid: boolean | undefined;\n\n @property()\n accessor previewUrlTemplate: string | undefined;\n\n @property({ attribute: false })\n accessor showCases: ShowCaseType[] | undefined;\n\n @property({ attribute: false })\n accessor exampleProjects: ExampleProject[] | undefined;\n\n @property()\n accessor tryItOutUrl: string | undefined;\n\n @property({ attribute: false })\n accessor uploadOptions: UploadOptions | undefined;\n\n @event({ type: \"share\" })\n accessor #shareEvent!: EventEmitter<void>;\n\n #onShare = () => {\n this.#shareEvent.emit();\n };\n\n @event({ type: \"terminate\" })\n accessor #terminateEvent!: EventEmitter<void>;\n\n #onTerminate = () => {\n this.#terminateEvent.emit();\n };\n\n @event({ type: \"feedback.submit\" })\n accessor #feedbackSubmitEvent!: EventEmitter<FeedbackDetail>;\n\n #onSubmitFeedback = (detail: FeedbackDetail) => {\n this.#feedbackSubmitEvent.emit(detail);\n };\n\n @event({ type: \"feedback.on.view\" })\n accessor #feedbackOnViewEvent!: EventEmitter<string>;\n\n #onFeedbackOnView = (viewId: string) => {\n this.#feedbackOnViewEvent.emit(viewId);\n };\n\n @event({ type: \"ui.switch\" })\n accessor #switch!: EventEmitter<\"canvas\">;\n\n #onSwitchToCanvas = () => {\n this.#switch.emit(\"canvas\");\n };\n\n @event({ type: \"detail.change\" })\n accessor #detailChange!: EventEmitter<ConversationDetail>;\n\n #onDetailChange = (detail: ConversationDetail) => {\n this.#detailChange.emit(detail);\n };\n\n #ref = createRef<ChatStreamRef>();\n\n @method()\n resumed() {\n this.#ref.current?.resumed?.();\n }\n\n @method()\n feedbackSubmitDone() {\n this.#ref.current?.feedbackSubmitDone();\n }\n\n @method()\n feedbackSubmitFailed() {\n this.#ref.current?.feedbackSubmitFailed();\n }\n\n @method()\n feedbackOnViewDone(viewId: string) {\n this.#ref.current?.feedbackOnViewDone(viewId);\n }\n\n render() {\n return (\n <ForwardedChatStreamComponent\n conversationId={this.conversationId!}\n initialRequest={this.initialRequest}\n replay={this.replay}\n replayDelay={this.replayDelay}\n supports={this.supports}\n showHumanActions={this.showHumanActions}\n showFeedback={this.showFeedback}\n showFeedbackAfterFailed={this.showFeedbackAfterFailed}\n showFeedbackOnView={this.showFeedbackOnView}\n showUiSwitch={this.showUiSwitch}\n previewUrlTemplate={this.previewUrlTemplate}\n showCases={this.showCases}\n exampleProjects={this.exampleProjects}\n tryItOutUrl={this.tryItOutUrl}\n uploadOptions={this.uploadOptions}\n onShare={this.#onShare}\n onTerminate={this.#onTerminate}\n onSubmitFeedback={this.#onSubmitFeedback}\n onSwitchToCanvas={this.#onSwitchToCanvas}\n onFeedbackOnView={this.#onFeedbackOnView}\n onDetailChange={this.#onDetailChange}\n ref={this.#ref}\n />\n );\n }\n}\n\nexport interface ChatStreamRef {\n resumed?: () => void;\n feedbackSubmitDone: () => void;\n feedbackSubmitFailed: () => void;\n feedbackOnViewDone: (viewId: string) => void;\n}\n"],"names":["initializeI18n","NS","locales","defineElement","property","event","method","createDecorators","ForwardedChatStreamComponent","forwardRef","ChatStreamComponent","_ChatStream","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_ChatStream_brand","WeakSet","_onShare","_R","_onTerminate","_S","_onSubmitFeedback","_T","_onFeedbackOnView","_U","_onSwitchToCanvas","_V","_onDetailChange","_ref","ChatStream","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","_init_conversationId","_init_extra_conversationId","_init_initialRequest","_init_extra_initialRequest","_init_replay","_init_extra_replay","_init_replayDelay","_init_extra_replayDelay","_init_supports","_init_extra_supports","_init_showHumanActions","_init_extra_showHumanActions","_init_showFeedback","_init_extra_showFeedback","_init_showFeedbackAfterFailed","_init_extra_showFeedbackAfterFailed","_init_showFeedbackOnView","_init_extra_showFeedbackOnView","_init_showUiSwitch","_init_extra_showUiSwitch","_init_hideMermaid","_init_extra_hideMermaid","_init_previewUrlTemplate","_init_extra_previewUrlTemplate","_init_showCases","_init_extra_showCases","_init_exampleProjects","_init_extra_exampleProjects","_init_tryItOutUrl","_init_extra_tryItOutUrl","_init_uploadOptions","_init_extra_uploadOptions","_init_shareEvent","_init_extra_shareEvent","_classPrivateGetter","this","_get_shareEvent","emit","_init_terminateEvent","_init_extra_terminateEvent","_get_terminateEvent","_init_feedbackSubmitEvent","_init_extra_feedbackSubmitEvent","detail","_get_feedbackSubmitEvent","_init_feedbackOnViewEvent","_init_extra_feedbackOnViewEvent","viewId","_get_feedbackOnViewEvent","_init_switch","_init_extra_switch","_get_switch","_init_detailChange","_init_extra_detailChange","_get_detailChange","createRef","conversationId","_classPrivateFieldGet","v","_classPrivateFieldSet","initialRequest","replay","replayDelay","supports","showHumanActions","showFeedback","showFeedbackAfterFailed","showFeedbackOnView","showUiSwitch","hideMermaid","previewUrlTemplate","showCases","exampleProjects","tryItOutUrl","uploadOptions","resumed","_classPrivateFieldGet2","_classPrivateFieldGet3","current","call","feedbackSubmitDone","_classPrivateFieldGet4","feedbackSubmitFailed","_classPrivateFieldGet5","feedbackOnViewDone","_classPrivateFieldGet6","render","React","onShare","onTerminate","onSubmitFeedback","onSwitchToCanvas","onFeedbackOnView","onDetailChange","ref","_ChatStream2","e","_set_shareEvent","_set_terminateEvent","_set_feedbackSubmitEvent","_set_feedbackOnViewEvent","_set_switch","_set_detailChange","c","_initClass","_applyDecs","shadowOptions","attribute","type","Boolean","Number","o","_","has","_checkInRHS"],"sourceRoot":""}
|