@next-bricks/ai-portal 0.56.2 → 0.58.0

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.
Files changed (108) hide show
  1. package/dist/bricks.json +44 -34
  2. package/dist/chunks/1488.89557180.js +2 -0
  3. package/dist/chunks/1488.89557180.js.map +1 -0
  4. package/dist/chunks/151.b87bccc0.js +2 -0
  5. package/dist/chunks/151.b87bccc0.js.map +1 -0
  6. package/dist/chunks/2232.75f1ab0f.js +2 -0
  7. package/dist/chunks/2232.75f1ab0f.js.map +1 -0
  8. package/dist/chunks/3848.01a4987f.js +3 -0
  9. package/dist/chunks/3848.01a4987f.js.map +1 -0
  10. package/dist/chunks/4002.68156a0e.js +3 -0
  11. package/dist/chunks/4002.68156a0e.js.map +1 -0
  12. package/dist/chunks/7041.d7408449.js +2 -0
  13. package/dist/chunks/7041.d7408449.js.map +1 -0
  14. package/dist/chunks/9496.08074e2b.js +2 -0
  15. package/dist/chunks/9496.08074e2b.js.map +1 -0
  16. package/dist/chunks/chat-box.1b2a4a02.js +2 -0
  17. package/dist/chunks/chat-box.1b2a4a02.js.map +1 -0
  18. package/dist/chunks/chat-input.3ca07b82.js +2 -0
  19. package/dist/chunks/chat-input.3ca07b82.js.map +1 -0
  20. package/dist/chunks/chat-stream.a7c4f58d.js +2 -0
  21. package/dist/chunks/chat-stream.a7c4f58d.js.map +1 -0
  22. package/dist/chunks/cruise-canvas.b444c4ca.js +2 -0
  23. package/dist/chunks/cruise-canvas.b444c4ca.js.map +1 -0
  24. package/dist/chunks/{main.e3031a8c.js → main.703a0465.js} +2 -2
  25. package/dist/chunks/{main.e3031a8c.js.map → main.703a0465.js.map} +1 -1
  26. package/dist/chunks/notice-dropdown.37b8ffb2.js +2 -0
  27. package/dist/chunks/notice-dropdown.37b8ffb2.js.map +1 -0
  28. package/dist/examples.json +20 -17
  29. package/dist/images/0155287e.svg +18 -0
  30. package/dist/images/0e89dec0.svg +19 -0
  31. package/dist/images/218d5865.svg +18 -0
  32. package/dist/images/391238ae.png +0 -0
  33. package/dist/images/96be9327.png +0 -0
  34. package/dist/images/dcee4821.svg +12 -0
  35. package/dist/index.7d751c21.js +2 -0
  36. package/dist/index.7d751c21.js.map +1 -0
  37. package/dist/manifest.json +299 -214
  38. package/dist/types.json +1442 -511
  39. package/dist-types/bootstrap.d.ts +1 -0
  40. package/dist-types/chat-box/index.d.ts +3 -12
  41. package/dist-types/chat-input/index.d.ts +5 -2
  42. package/dist-types/chat-stream/ChatStream.d.ts +1 -1
  43. package/dist-types/chat-stream/UserMessage/UserMessage.d.ts +3 -2
  44. package/dist-types/chat-stream/index.d.ts +3 -1
  45. package/dist-types/chat-stream/interfaces.d.ts +2 -1
  46. package/dist-types/cruise-canvas/CanvasContext.d.ts +0 -2
  47. package/dist-types/cruise-canvas/CruiseCanvas.d.ts +1 -1
  48. package/dist-types/cruise-canvas/FileList/FileList.d.ts +2 -1
  49. package/dist-types/cruise-canvas/Nav/Nav.d.ts +3 -6
  50. package/dist-types/cruise-canvas/NodeRequirement/NodeRequirement.d.ts +3 -2
  51. package/dist-types/cruise-canvas/i18n.d.ts +0 -2
  52. package/dist-types/cruise-canvas/index.d.ts +3 -1
  53. package/dist-types/cruise-canvas/interfaces.d.ts +2 -5
  54. package/dist-types/cruise-canvas/useConversationDetail.d.ts +2 -2
  55. package/dist-types/cruise-canvas/useConversationGraph.d.ts +0 -1
  56. package/dist-types/notice-dropdown/i18n.d.ts +18 -0
  57. package/dist-types/notice-dropdown/index.d.ts +61 -0
  58. package/dist-types/notice-dropdown/index.spec.d.ts +1 -0
  59. package/dist-types/shared/FilePreview/FilePreview.d.ts +9 -0
  60. package/dist-types/shared/FilePreview/FilePreviewDrawer.d.ts +6 -0
  61. package/dist-types/shared/FilePreview/i18n.d.ts +18 -0
  62. package/dist-types/shared/FileUpload/GlobalDragOverlay.d.ts +8 -0
  63. package/dist-types/shared/FileUpload/GlobalDragOverlay.spec.d.ts +1 -0
  64. package/dist-types/{chat-box → shared/FileUpload}/UploadButton.d.ts +2 -0
  65. package/dist-types/shared/FileUpload/UploadedFiles.d.ts +10 -0
  66. package/dist-types/shared/FileUpload/acceptFiles.d.ts +1 -0
  67. package/dist-types/shared/FileUpload/acceptFiles.spec.d.ts +1 -0
  68. package/dist-types/shared/FileUpload/i18n.d.ts +18 -0
  69. package/dist-types/{chat-box → shared/FileUpload}/interfaces.d.ts +1 -1
  70. package/dist-types/shared/PlanProgress/PlanProgress.d.ts +15 -0
  71. package/dist-types/shared/PlanProgress/i18n.d.ts +15 -0
  72. package/dist-types/shared/TaskContext.d.ts +4 -2
  73. package/dist-types/shared/bricks.d.ts +1 -0
  74. package/dist-types/shared/interfaces.d.ts +23 -5
  75. package/dist-types/shared/useFilesUploading.d.ts +12 -0
  76. package/dist-types/shared/useFilesUploading.spec.d.ts +1 -0
  77. package/dist-types/shared/useServiceFlowPlan.d.ts +2 -0
  78. package/dist-types/shared/useServiceFlowPlan.spec.d.ts +1 -0
  79. package/docs/notice-dropdown.md +101 -0
  80. package/package.json +2 -2
  81. package/dist/chunks/1510.ba18a788.js +0 -2
  82. package/dist/chunks/1510.ba18a788.js.map +0 -1
  83. package/dist/chunks/161.6c50f07c.js +0 -3
  84. package/dist/chunks/161.6c50f07c.js.map +0 -1
  85. package/dist/chunks/1864.7e31d8fe.js +0 -2
  86. package/dist/chunks/1864.7e31d8fe.js.map +0 -1
  87. package/dist/chunks/6995.65da5073.js +0 -2
  88. package/dist/chunks/6995.65da5073.js.map +0 -1
  89. package/dist/chunks/7279.af201b60.js +0 -3
  90. package/dist/chunks/7279.af201b60.js.map +0 -1
  91. package/dist/chunks/7517.f62fe00f.js +0 -2
  92. package/dist/chunks/7517.f62fe00f.js.map +0 -1
  93. package/dist/chunks/9270.e909e789.js +0 -2
  94. package/dist/chunks/9270.e909e789.js.map +0 -1
  95. package/dist/chunks/chat-box.4d1d4fd9.js +0 -2
  96. package/dist/chunks/chat-box.4d1d4fd9.js.map +0 -1
  97. package/dist/chunks/chat-input.dd3d2035.js +0 -2
  98. package/dist/chunks/chat-input.dd3d2035.js.map +0 -1
  99. package/dist/chunks/chat-stream.9f07e680.js +0 -2
  100. package/dist/chunks/chat-stream.9f07e680.js.map +0 -1
  101. package/dist/chunks/cruise-canvas.eca7469a.js +0 -2
  102. package/dist/chunks/cruise-canvas.eca7469a.js.map +0 -1
  103. package/dist/index.9a811707.js +0 -2
  104. package/dist/index.9a811707.js.map +0 -1
  105. package/dist-types/chat-box/FileListComponent.d.ts +0 -8
  106. package/dist-types/cruise-canvas/FilePreview/FilePreview.d.ts +0 -6
  107. /package/dist/chunks/{7279.af201b60.js.LICENSE.txt → 3848.01a4987f.js.LICENSE.txt} +0 -0
  108. /package/dist/chunks/{161.6c50f07c.js.LICENSE.txt → 4002.68156a0e.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/1864.7e31d8fe.js","mappings":"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","sources":["webpack:///./src/chat-box/UploadButton.tsx","webpack:///./src/chat-box/i18n.ts","webpack:///./src/chat-box/bricks.ts","webpack:///./src/chat-box/styles.shadow.css","webpack:///../../src/getCaretPositionInTextarea.ts","webpack:///../../../src/utils/getMirroredStyle.ts","webpack:///../../src/getContentRectsInTextarea.ts","webpack:///./src/chat-box/FileListComponent.tsx","webpack:///../../../src/utils/calculateAutoSizeStyle.ts","webpack:///../../src/TextareaAutoResize.tsx"],"sourcesContent":["import React, { forwardRef, useImperativeHandle, useRef } from \"react\";\nimport type { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport { WrappedIconButton } from \"./bricks\";\nimport type { FileItem } from \"./interfaces\";\n\nconst ICON_UPLOAD: GeneralIconProps = {\n lib: \"lucide\",\n icon: \"paperclip\",\n};\n\nlet uid = 0;\n\nexport interface UploadButtonProps {\n accept?: string;\n onChange?: (files: FileItem[] | undefined) => void;\n}\n\nexport interface UploadButtonRef {\n requestUpload: () => void;\n}\n\nexport const UploadButton = forwardRef(LegacyUploadButton);\n\nfunction LegacyUploadButton(\n { accept, onChange }: UploadButtonProps,\n ref: React.Ref<UploadButtonRef>\n) {\n const inputRef = useRef<HTMLInputElement>(null);\n\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const files = e.target.files;\n onChange?.(\n files\n ? Array.from(files).map((file) => ({\n uid: uid++,\n file,\n status: \"ready\",\n }))\n : undefined\n );\n e.target.value = \"\";\n };\n\n useImperativeHandle(ref, () => ({\n requestUpload: () => {\n inputRef.current?.click();\n },\n }));\n\n return (\n <>\n <input\n type=\"file\"\n accept={accept}\n multiple\n hidden\n ref={inputRef}\n onChange={handleInputChange}\n />\n <WrappedIconButton\n variant=\"light\"\n className=\"btn-upload\"\n icon={ICON_UPLOAD}\n tooltip=\"Upload files\"\n onClick={() => inputRef.current?.click()}\n />\n </>\n );\n}\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n ASK_ANY_THING = \"ASK_ANYTHING\",\n COMMON_TASKS = \"COMMON_TASKS\",\n}\n\nconst en: Locale = {\n [K.ASK_ANY_THING]: \"Ask anything\",\n [K.COMMON_TASKS]: \"Common tasks\",\n};\n\nconst zh: Locale = {\n [K.ASK_ANY_THING]: \"询问任何问题\",\n [K.COMMON_TASKS]: \"常用任务\",\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)[] },\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","// 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)}.files{list-style:none;margin:0;padding:4px 0 0;position:absolute;display:flex;gap:8px;top:10px;left:16px;right:16px;overflow-x:auto}.file{background:rgba(0,0,0,0.04);border-radius:8px;display:flex;width:200px;height:60px;align-items:center;padding:0 8px;position:relative}.file-content{min-width:0;flex:1}.file-icon{margin:0 11px 0 6px}.file-image{margin-right:8px;object-fit:cover;border-radius:4px;max-width:44px;max-height:44px}.file-name,\n.file-metadata{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name{color:rgba(0,0,0,0.88)}.file-metadata{color:rgba(0,0,0,0.45);font-size:12px;margin-top:3px}.file-remove{position:absolute;top:-4px;right:-4px;font-size:12px;padding:1px;display:flex;color:rgba(0,0,0,0.88);cursor:pointer;background:#fff;border-radius:14px}.file:not(:hover) .file-remove{display:none}.btn-add-file{border-radius:8px;border:1px dashed rgba(0,0,0,0.1);color:rgba(0,0,0,0.45);font-size:16px;display:flex;width:60px;height:60px;align-items:center;justify-content:center;cursor:pointer}.btn-add-file:hover{background:rgba(0,0,0,0.04)}.file.failed .file-status{color:var(--color-error)}.file.as-image{width:60px;border:1px solid rgba(0,0,0,0.1);padding:0;background:none;justify-content:center}.file.as-image .file-image{max-width:100%;max-height:100%;margin:0;border-radius:6px}.file.as-image.failed{border-color:#f24c25}.file-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,10,26,0.45);border-radius:6px;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-size:20px}.file.failed .file-overlay{color:#ff754f;font-size:12px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","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","const HIDDEN_STYLE = `\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n left: 0!important;\n pointer-events: none!important;\n`;\n\nconst SIZING_STYLE = [\n \"letter-spacing\",\n \"line-height\",\n \"padding-top\",\n \"padding-bottom\",\n \"font-family\",\n \"font-weight\",\n \"font-size\",\n \"font-variant\",\n \"text-rendering\",\n \"text-transform\",\n \"width\",\n \"text-indent\",\n \"padding-left\",\n \"padding-right\",\n \"border-width\",\n \"box-sizing\",\n \"word-break\",\n \"white-space\",\n];\n\n/**\n * 创建一个镜像元素,用于计算光标位置或文本尺寸。\n */\nexport function getMirroredStyle(element: HTMLElement) {\n const uiTextNodeStyle = window.getComputedStyle(element);\n const sizingStyle = SIZING_STYLE.map(\n (name) => `${name}:${uiTextNodeStyle.getPropertyValue(name)}`\n ).join(\";\");\n return `${sizingStyle};${HIDDEN_STYLE}`;\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","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { WrappedIcon } from \"./bricks\";\nimport type { FileItem } from \"./interfaces\";\nimport {\n formatFileSize,\n getFileTypeAndIcon,\n} from \"../cruise-canvas/utils/file\";\n\nexport interface FileListComponentProps {\n files: FileItem[];\n onRemove: (uid: number, abortController: AbortController | undefined) => void;\n onAdd: () => void;\n}\n\nexport function FileListComponent({\n files,\n onRemove,\n onAdd,\n}: FileListComponentProps) {\n const showAsImage = files.every((file) =>\n file.file.type.startsWith(\"image/\")\n );\n\n return (\n <ul className=\"files\">\n {files.map((file) => (\n <FileComponent\n {...file}\n key={file.uid}\n showAsImage={showAsImage}\n onRemove={onRemove}\n />\n ))}\n <li>\n <button className=\"btn-add-file\" onClick={onAdd}>\n <WrappedIcon lib=\"antd\" icon=\"plus\" />\n </button>\n </li>\n </ul>\n );\n}\n\ninterface FileComponentProps extends FileItem {\n showAsImage?: boolean;\n onRemove: (uid: number, abortController: AbortController | undefined) => void;\n}\n\nfunction FileComponent({\n uid,\n file,\n status,\n abortController,\n showAsImage,\n onRemove,\n}: FileComponentProps) {\n const [type, icon] = getFileTypeAndIcon(file.type, file.name);\n const size = formatFileSize(file.size);\n const isImage = file.type.startsWith(\"image/\");\n const [image, setImage] = useState<string | undefined>();\n\n useEffect(() => {\n if (isImage) {\n const url = URL.createObjectURL(file);\n setImage(url);\n return () => {\n URL.revokeObjectURL(url);\n };\n } else {\n setImage(undefined);\n }\n }, [file, isImage]);\n\n const buttonRemove = (\n <button\n className=\"file-remove\"\n onClick={() => {\n onRemove(uid, abortController);\n }}\n >\n <WrappedIcon lib=\"antd\" theme=\"filled\" icon=\"close-circle\" />\n </button>\n );\n\n if (showAsImage) {\n return (\n <li\n className={classNames(\"file as-image\", { failed: status === \"failed\" })}\n >\n <img className=\"file-image\" src={image} />\n {status === \"uploading\" && (\n <div className=\"file-overlay\">\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n )}\n {status === \"failed\" && (\n <div className=\"file-overlay\">Upload failed</div>\n )}\n {buttonRemove}\n </li>\n );\n }\n\n return (\n <li className={classNames(\"file\", { failed: status === \"failed\" })}>\n {isImage ? (\n <img className=\"file-image\" src={image} />\n ) : (\n <img className=\"file-icon\" src={icon} width={26} height={32} />\n )}\n <div className=\"file-content\">\n <div className=\"file-name\">{file.name}</div>\n <div className=\"file-metadata\">\n <span className=\"file-status\">\n {`${status === \"uploading\" ? \"Uploading...\" : status === \"failed\" ? \"Upload failed\" : type}`}\n </span>\n {` · ${size}`}\n </div>\n </div>\n {buttonRemove}\n </li>\n );\n}\n","// istanbul ignore file\nimport type React from \"react\";\nimport { getMirroredStyle } from \"./getMirroredStyle.js\";\n\nlet hiddenTextarea: HTMLTextAreaElement | undefined;\n\nexport interface AutoSizeOptions {\n minRows?: number | null;\n maxRows?: number | null;\n borderSize?: number;\n paddingSize?: number;\n}\n\n/**\n * 计算 textarea 高度\n * https://github.com/react-component/textarea/blob/1c0026fbe30e5f7dff1fca695b2cf262246381ca/src/calculateNodeHeight.tsx\n */\nexport default function calculateAutoSizeStyle(\n uiTextNode: HTMLTextAreaElement,\n options?: AutoSizeOptions\n): React.CSSProperties {\n const {\n minRows = null,\n maxRows = null,\n borderSize = 2,\n paddingSize = 8,\n } = options ?? {};\n\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement(\"textarea\");\n hiddenTextarea.setAttribute(\"tab-index\", \"-1\");\n hiddenTextarea.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(hiddenTextarea);\n }\n\n // equal style\n hiddenTextarea.setAttribute(\"style\", getMirroredStyle(uiTextNode));\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || \"\";\n\n let minHeight: number | undefined;\n let maxHeight: number | undefined;\n let overflowY: React.CSSProperties[\"overflowY\"];\n\n let height = hiddenTextarea.scrollHeight + borderSize;\n\n if (minRows !== null || maxRows !== null) {\n const singleRowHeight =\n process.env.NODE_ENV === \"test\"\n ? 22\n : parseFloat(\n window\n .getComputedStyle(hiddenTextarea)\n .getPropertyValue(\"line-height\")\n );\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows + paddingSize + borderSize;\n height = Math.max(minHeight, height);\n }\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows + paddingSize + borderSize;\n if (height <= maxHeight) {\n overflowY = \"hidden\";\n }\n height = Math.min(maxHeight, height);\n }\n }\n\n const style: React.CSSProperties = {\n height,\n overflowY,\n resize: \"none\",\n };\n\n if (minHeight) {\n style.minHeight = minHeight;\n }\n if (maxHeight) {\n style.maxHeight = maxHeight;\n }\n\n return style;\n}\n","import React, {\n useCallback,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n} from \"react\";\nimport { flushSync } from \"react-dom\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport calculateAutoSizeStyle from \"./utils/calculateAutoSizeStyle.js\";\n\n// istanbul ignore next\nconst modKey = /Mac|iPod|iPhone|iPad/.test(navigator.platform)\n ? \"metaKey\"\n : \"ctrlKey\";\n\nexport interface TextareaAutoResizeProps\n extends React.DetailedHTMLProps<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HTMLTextAreaElement\n > {\n /** @default true */\n autoResize?: boolean;\n minRows?: number | null;\n maxRows?: number | null;\n /** @default 2 */\n borderSize?: number;\n /** @default 8 */\n paddingSize?: number;\n containerRef?: React.RefObject<HTMLElement>;\n submitWhen?: \"enter-without-shift\" | \"enter-with-mod\";\n desiredSelectionRef?: React.MutableRefObject<{\n start: number;\n end: number;\n } | null>;\n onChange?: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;\n /**\n * The handler can return false to prevent default behavior (submit)\n */\n onKeyDown?: (e: React.KeyboardEvent<HTMLTextAreaElement>) => void | false;\n}\n\nexport interface TextareaAutoResizeRef {\n focus(): void;\n element: HTMLTextAreaElement | null;\n}\n\nexport const TextareaAutoResize = React.forwardRef<\n TextareaAutoResizeRef,\n TextareaAutoResizeProps\n>(LegacyTextareaAutoResize);\n\nfunction LegacyTextareaAutoResize(\n {\n autoResize: _autoResize,\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n containerRef,\n value: propValue,\n style,\n submitWhen,\n desiredSelectionRef,\n onChange,\n onSubmit,\n onKeyDown,\n onCompositionStart,\n onCompositionEnd,\n ...props\n }: TextareaAutoResizeProps,\n ref: React.ForwardedRef<TextareaAutoResizeRef>\n): React.JSX.Element {\n const autoResize = _autoResize ?? true;\n const [value, setValue] = useState(propValue ?? \"\");\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n const [autoStyle, setAutoStyle] = useState<React.CSSProperties | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n focus: () => {\n const textarea = textareaRef.current;\n // istanbul ignore else: defensive check\n if (textarea) {\n const valueLength = textarea.value?.length;\n textarea.focus();\n valueLength && textarea.setSelectionRange(valueLength, valueLength);\n }\n },\n element: textareaRef.current,\n }),\n []\n );\n\n const doAutoResize = useCallback(() => {\n const textarea = textareaRef.current;\n if (textarea && autoResize) {\n const style = calculateAutoSizeStyle(textarea, {\n minRows,\n maxRows,\n borderSize,\n paddingSize,\n });\n // istanbul ignore next\n if (process.env.NODE_ENV === \"test\") {\n setAutoStyle(style);\n } else {\n flushSync(() => {\n setAutoStyle(style);\n });\n }\n }\n }, [autoResize, maxRows, minRows, borderSize, paddingSize]);\n\n const handleInputChange = (\n e: React.ChangeEvent<HTMLTextAreaElement>\n ): void => {\n setValue(e.target.value);\n onChange?.(e);\n };\n\n useEffect(() => {\n setValue(propValue ?? \"\");\n }, [propValue]);\n\n useEffect(() => {\n doAutoResize();\n }, [doAutoResize, value]);\n\n const compositionRef = useRef(false);\n\n const handleCompositionStart = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = true;\n onCompositionStart?.(e);\n },\n [onCompositionStart]\n );\n\n const handleCompositionEnd = useCallback(\n (e: React.CompositionEvent<HTMLTextAreaElement>) => {\n compositionRef.current = false;\n onCompositionEnd?.(e);\n },\n [onCompositionEnd]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n if (compositionRef.current) {\n // Ignore key events during composition\n return;\n }\n\n if (onKeyDown?.(e) === false) {\n return;\n }\n\n if (\n e.key === \"Enter\" &&\n (submitWhen === \"enter-without-shift\"\n ? !e.shiftKey\n : submitWhen === \"enter-with-mod\" && e[modKey])\n ) {\n e.preventDefault();\n e.stopPropagation();\n onSubmit?.(e);\n }\n },\n [onKeyDown, onSubmit, submitWhen]\n );\n\n useLayoutEffect(() => {\n const desiredSelection = desiredSelectionRef?.current;\n const textarea = textareaRef.current;\n if (desiredSelection && textarea) {\n const { start, end } = desiredSelection;\n desiredSelectionRef.current = null;\n textarea.setSelectionRange(start, end);\n }\n }, [desiredSelectionRef, value]);\n\n // istanbul ignore next\n useEffect(() => {\n const container = containerRef?.current;\n if (!container || !autoResize) {\n return;\n }\n let previousInlineSize: number | undefined;\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n // istanbul ignore next: compatibility\n const currentInlineSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].inlineSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .inlineSize\n : entry.contentRect.width;\n if (\n currentInlineSize !== undefined &&\n currentInlineSize !== previousInlineSize\n ) {\n const isInitial = !previousInlineSize;\n previousInlineSize = currentInlineSize;\n if (!isInitial) {\n requestAnimationFrame(doAutoResize);\n }\n }\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, [autoResize, containerRef, doAutoResize]);\n\n return (\n <textarea\n {...props}\n ref={textareaRef}\n value={value}\n style={{\n ...style,\n ...autoStyle,\n }}\n onChange={handleInputChange}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n onKeyDown={handleKeyDown}\n />\n );\n}\n"],"names":["ICON_UPLOAD","lib","icon","uid","UploadButton","forwardRef","LegacyUploadButton","_ref","ref","accept","onChange","inputRef","useRef","useImperativeHandle","requestUpload","_inputRef$current","current","click","React","type","multiple","hidden","e","files","target","Array","from","map","file","status","undefined","value","WrappedIconButton","variant","className","tooltip","onClick","_inputRef$current2","K","en","ASK_ANY_THING","COMMON_TASKS","zh","NS","locales","t","i18n","getFixedT","WrappedIcon","wrapBrick","WrappedActions","onActionClick","onItemDragEnd","onItemDragStart","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","push","module","id","toString","hiddenElement","getCaretPositionInTextarea","textarea","index","document","createElement","setAttribute","body","appendChild","getMirroredStyle","textContent","slice","span","rect","getBoundingClientRect","remove","top","left","HIDDEN_STYLE","SIZING_STYLE","element","uiTextNodeStyle","window","getComputedStyle","name","getPropertyValue","join","getContentRectsInTextarea","prefix","measureContent","fullRect","length","leadingChar","leadingSpan","leadingRect","trailingChar","trailingSpan","trailingRect","rects","DOMRect","right","bottom","height","width","FileListComponent","onRemove","onAdd","showAsImage","every","startsWith","FileComponent","_extends","key","_ref2","abortController","getFileTypeAndIcon","size","formatFileSize","isImage","image","setImage","useState","useEffect","url","createObjectURL","revokeObjectURL","buttonRemove","theme","classNames","failed","src","spinning","hiddenTextarea","modKey","test","navigator","platform","TextareaAutoResize","LegacyTextareaAutoResize","autoResize","_autoResize","minRows","maxRows","borderSize","paddingSize","containerRef","propValue","style","submitWhen","desiredSelectionRef","onSubmit","onKeyDown","onCompositionStart","onCompositionEnd","props","setValue","textareaRef","autoStyle","setAutoStyle","focus","_textarea$value","valueLength","setSelectionRange","doAutoResize","useCallback","uiTextNode","options","minHeight","maxHeight","overflowY","placeholder","scrollHeight","singleRowHeight","parseFloat","Math","max","min","resize","calculateAutoSizeStyle","flushSync","compositionRef","handleCompositionStart","handleCompositionEnd","handleKeyDown","shiftKey","preventDefault","stopPropagation","useLayoutEffect","desiredSelection","start","end","container","previousInlineSize","observer","ResizeObserver","entries","entry","currentInlineSize","contentBoxSize","inlineSize","contentRect","isInitial","requestAnimationFrame","observe","disconnect"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[6995],{2367:(e,t,n)=>{n.d(t,{U:()=>r});var a=n(18769);function r(e,t,n,r){return(0,a.useMemo)((()=>{if(!e)return null;switch(e.type){case"job":{const n=null==t?void 0:t.get(e.id);if(n)return{type:"job",job:n};break}case"flow":{const t=null==n?void 0:n.get(e.id);if(t)return{type:"flow",flow:t};break}case"activity":{const t=null==r?void 0:r.get(e.id);if(t)return{type:"activity",flow:t.flow,activity:t.activity};break}}return null}),[e,r,n,t])}},8590:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".node-feedback--qSAvjvCa{width:var(--cruise-canvas-node-width-medium);background:rgba(255,255,255,0.2);border-radius:12px;border:1px solid rgba(255,255,255,0.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px 28px}.heading--zbbPDsFk{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.title--l9cmJRhB{font-weight:500}.form-item--wtgYuM1v{font-size:12px;line-height:17px;color:rgba(0,0,0,0.88)}.form-item--wtgYuM1v.horizontal--zqc5U1Jh{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:1em}.form-item--wtgYuM1v.vertical--i26lXOiT{margin-top:16px}.form-item--wtgYuM1v.vertical--i26lXOiT label{display:block;color:rgba(0,0,0,0.45);margin-bottom:8px}.form-item--wtgYuM1v textarea{width:100%;background:none;border-radius:8px;border:1px solid rgba(0,0,0,0.15);padding:8px;color:#262626}.form-item--wtgYuM1v textarea:focus{outline:none;border-color:rgba(0,0,0,0.25)}.options--Cak4FPTk{display:flex;align-items:center}.radio--P5Vo_D45{position:relative;cursor:pointer}.radio--P5Vo_D45 input{width:0px;height:0px;position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none}.radio--P5Vo_D45 span{display:flex;align-items:center;justify-content:center;width:64px;height:28px;border-radius:8px;background:none;border:1px solid rgba(0,0,0,0.15)}.radio--P5Vo_D45 input:checked + span{background:rgba(255,255,255,0.5);border:none}.radio--P5Vo_D45 input:not(:checked) + span:hover{background:rgba(255,255,255,0.3);border:none}.radio--P5Vo_D45 + .radio--P5Vo_D45{margin-left:8px}.submit--eCyA49Nq{display:flex;justify-content:end;margin-top:18px;gap:8px}.validate--krlXob4C .form-item--wtgYuM1v:has(input:invalid) .label--U8YsN4Mm{color:#f24c25}.submitted--XxktB9y5{background:#d0e7d6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;font-weight:500;color:#009929;padding:17px;text-align:center}",""]),i.locals={"node-feedback":"node-feedback--qSAvjvCa",heading:"heading--zbbPDsFk",title:"title--l9cmJRhB","form-item":"form-item--wtgYuM1v",horizontal:"horizontal--zqc5U1Jh",vertical:"vertical--i26lXOiT",options:"options--Cak4FPTk",radio:"radio--P5Vo_D45",submit:"submit--eCyA49Nq",validate:"validate--krlXob4C",label:"label--U8YsN4Mm",submitted:"submitted--XxktB9y5"};const l=i},11190:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".heading--Mi2u66PA{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.title--t7OpwWbH{font-size:12px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;--shine-text-color:rgba(38,38,38,0.65);--shine-text-highlight-color:#dcdcdc}ai-portal\\.cruise-canvas .title--t7OpwWbH{text-indent:4px}ai-portal\\.cruise-canvas .heading--Mi2u66PA{margin-bottom:10px}",""]),i.locals={heading:"heading--Mi2u66PA",title:"title--t7OpwWbH"};const l=i},20555:(e,t,n)=>{n.d(t,{j:()=>_});var a=n(18769),r=n.n(a),o=n(30981),i=n(72591),l=n.n(i),s=n(1740),c=n.n(s),d=n(88128),u=n.n(d),p=n(30855),m=n.n(p),E=n(93051),b=n.n(E),f=n(73656),v=n.n(f),h=n(22291),g={};g.styleTagTransform=v(),g.setAttributes=m(),g.insert=u().bind(null,"head"),g.domAPI=c(),g.insertStyleElement=b(),l()(h.A,g);const T=h.A&&h.A.locals?h.A.locals:void 0,A=(0,o.wrapBrick)("presentational.code-wrapper");function _(e){var t;let{node:n,...a}=e;return r().createElement(A,{className:T["code-wrapper"],preProps:a,showCopyButton:!(null===(t=a.className)||void 0===t||!t.includes("shiki")),themeVariant:"elevo"})}},22291:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".code-wrapper--jieEbxla::part(pre){border:1px solid #ccd1de}.code-wrapper--jieEbxla::part(mermaid){border:none;background:none}",""]),i.locals={"code-wrapper":"code-wrapper--jieEbxla"};const l=i},30672:(e,t,n)=>{n.d(t,{Bj:()=>o,EM:()=>l,F_:()=>m,Gx:()=>i,IV:()=>d,Py:()=>c,n$:()=>E,p9:()=>u,ui:()=>b,xb:()=>s,yQ:()=>p}),n(18769);var a=n(30981),r=n(77019);n(60709);const o=(0,a.wrapBrick)("eo-icon"),i=(0,a.wrapBrick)("eo-button"),l=(0,a.wrapBrick)("eo-link"),s=((0,a.wrapBrick)("eo-tooltip"),(0,a.wrapBrick)("eo-popover"),(0,a.wrapBrick)("eo-drawer",{onClose:"close",onOpen:"open"})),c=(0,a.wrapBrick)("ai-portal.icon-button"),d=(0,a.wrapBrick)("ai-portal.chat-input",{onMessageSubmit:"message.submit",onTerminate:"terminate"}),u=(0,a.wrapBrick)("ai-portal.show-case"),p=(0,a.wrapBrick)("eo-code-block"),m=(0,a.wrapBrick)("ai-portal.blank-state"),E=(0,a.wrapBrick)("ai-portal.running-flow",{onActiveChange:"active.change"}),b=(0,r.unwrapProvider)("basic.show-dialog");(0,r.unwrapProvider)("basic.copy-to-clipboard")},31078:(e,t,n)=>{n.d(t,{Q:()=>a});const a=(0,n(18769).createContext)({onNodeResize:()=>{},setActiveNodeId:()=>{},hoverOnScrollableContent:!1,setHoverOnScrollableContent:()=>{},setActiveFile:()=>{}})},35430:(e,t,n)=>{n.d(t,{n:()=>S});var a=n(18769),r=n.n(a),o=n(72591),i=n.n(o),l=n(1740),s=n.n(l),c=n(88128),d=n.n(c),u=n(30855),p=n.n(u),m=n(93051),E=n.n(m),b=n(73656),f=n.n(b),v=n(90108),h={};h.styleTagTransform=f(),h.setAttributes=p(),h.insert=d().bind(null,"head"),h.domAPI=s(),h.insertStyleElement=E(),i()(v.A,h);const g=v.A&&v.A.locals?v.A.locals:void 0;var T=n(30672),A=n(76720),_=n(53373),x=n.n(_);function S(e){let{action:t,ui:n}=e;const{humanInput:o,replay:i}=(0,a.useContext)(A.j),[l,s]=(0,a.useState)(!1);return"select"===t.type?null:r().createElement("div",{className:x()(g["human-action"],{[g.canvas]:"chat"!==n})},r().createElement(T.Gx,{type:"primary",themeVariant:"elevo",shape:"chat"===n?void 0:"round",disabled:l,onClick:()=>{i||(o("",null,t.confirmText||"确认"),s(!0))}},t.confirmText||"确认"))}},36903:(e,t,n)=>{n.d(t,{A:()=>v});var a=n(72591),r=n.n(a),o=n(1740),i=n.n(o),l=n(88128),s=n.n(l),c=n(30855),d=n.n(c),u=n(93051),p=n.n(u),m=n(73656),E=n.n(m),b=n(91525),f={};f.styleTagTransform=E(),f.setAttributes=d(),f.insert=s().bind(null,"head"),f.domAPI=i(),f.insertStyleElement=p(),r()(b.A,f);const v=b.A&&b.A.locals?b.A.locals:void 0},39439:(e,t,n)=>{n.d(t,{W:()=>_});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(67993),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;function _(e){let{progress:t,failed:n}=e;const a=t.data;return r().createElement("div",{className:i()(A["progress-line"],{[A.failed]:n})},r().createElement("div",{className:i()(A.step),key:a.progress},r().createElement("div",{className:A.axis},r().createElement("div",{className:A.line}),r().createElement("div",{className:A.dot})),r().createElement("div",{className:A.progress},r().createElement("span",{className:A.count},a.progress),r().createElement("span",null,"/"),r().createElement("span",{className:A.total},a.total)),r().createElement("div",{className:A.description},a.message)))}},39649:(e,t,n)=>{n.d(t,{t:()=>R});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(21302),s=n.n(l),c=n(41030),d=n(62916),u=n(72591),p=n.n(u),m=n(1740),E=n.n(m),b=n(88128),f=n.n(b),v=n(30855),h=n.n(v),g=n(93051),T=n.n(g),A=n(73656),_=n.n(A),x=n(42671),S={};S.styleTagTransform=_(),S.setAttributes=h(),S.insert=f().bind(null,"head"),S.domAPI=E(),S.insertStyleElement=T(),p()(x.A,S);const k=x.A&&x.A.locals?x.A.locals:void 0;var w=n(30672),y=n(76720),C=n(39439);const I=e=>{let t;return null==e||e.findLast((e=>{var n;return t=null===(n=e.parts)||void 0===n?void 0:n.findLast((e=>{var t;return"data"===e.type&&"progress"===(null===(t=e.data)||void 0===t?void 0:t.type)})),!!t})),t};function R(e){var t;let{job:n,variant:o}=e;const{setActiveDetail:l,separateInstructions:u}=(0,a.useContext)(y.j),p=n.toolCall,m=(null===(t=p.annotations)||void 0===t?void 0:t.title)||p.name,E=u?m:n.instruction||m,[b,f]=(0,a.useMemo)((()=>{var e;const t=null===(e=n.messages)||void 0===e?void 0:e.filter((e=>"tool"===e.role));return[I(t),null==t?void 0:t.some((e=>e.parts.some((e=>"text"===e.type))))]}),[n.messages]),v=(0,a.useMemo)((()=>"read-only"===o),[o]),h=(0,a.useCallback)((()=>{if("read-only"===o)return;const e={type:"job",id:n.id};l((t=>(0,c.isEqual)(t,e)?t:e))}),[n.id,o,l]),g=["working","input-required"].includes(n.state)&&f?"completed":n.state,T=n.isError||"failed"===g;return r().createElement("div",{className:i()(k["tool-call"],{[k.failed]:T,[k["read-only"]]:v}),onClick:h},r().createElement("div",{className:i()(k.status)},n.isError||"failed"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"fas",icon:"xmark"}):"completed"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"fas",icon:"check"}):"working"===g?r().createElement(w.Bj,{className:k.icon,lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0}):"input-required"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"far",icon:"circle-user"}):"canceled"===g||"terminated"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"far",icon:"circle-stop"}):r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"far",icon:"clock"}),r().createElement("span",{className:k.name},"read-only"===o?m:E),n.startTime?r().createElement("span",{className:k.timing},`${(0,d.P)(1e3*n.startTime,d.c.accurate)}${n.endTime?` (${s().duration(1e3*n.endTime-1e3*n.startTime).humanize({ss:-1})})`:""}`):null),!!b&&!v&&r().createElement(C.W,{progress:b,failed:T}))}},40177:(e,t,n)=>{n.d(t,{$g:()=>c,LQ:()=>i,QB:()=>a,Rq:()=>s,X4:()=>r,Xc:()=>l,Z5:()=>o,ae:()=>p,ju:()=>u,mJ:()=>d});const a=["completed","failed","canceled","terminated"],r=[...a,"paused"],o=[...r,"input-required"],i={lib:"lucide",icon:"x"},l={lib:"antd",icon:"loading-3-quarters",spinning:!0},s={lib:"lucide",icon:"network"},c={lib:"lucide",icon:"messages-square"},d={lib:"lucide",icon:"message-square"},u={lib:"lucide",icon:"external-link"},p={lib:"fa",icon:"angle-up"}},42671:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,'.tool-call--aTh276av{--failed-color:#f24c25;--border-color:#e2e2ec;--status-border-color:rgba(226,226,236,0.8);font-size:13px;color:#595959;border-radius:10px;border:1px solid var(--border-color);background:#e6e9f3}.tool-call--aTh276av:not(.read-only--xWUswNds):hover{background:#e4e9fb;border:1px solid #b8c1ff}.tool-call--aTh276av:not(:last-child){margin-bottom:10px}.tool-call--aTh276av:not(.read-only--xWUswNds){cursor:pointer}.tool-call--aTh276av .status--V5ZXGYOG:not(:last-child){border-bottom:1px solid var(--status-border-color)}.read-only--xWUswNds{font-size:14px;padding:4px}.failed--sz70SlSa{background:#fef5f3}.failed--sz70SlSa:not(.read-only--xWUswNds):hover{background:#fee7e1;border:1px solid #ffc3b5}.failed--sz70SlSa .status--V5ZXGYOG:not(:last-child){border-bottom:1px solid rgba(253,225,218,0.8)}.status--V5ZXGYOG{height:24px;display:flex;align-items:center;padding:0 12px;color:#262626}.timing--GjuZkMuV{display:none;color:#8c8c8c}.read-only--xWUswNds .timing--GjuZkMuV,\n[class^="node-job--"]:hover .timing--GjuZkMuV,\n.status--V5ZXGYOG:hover .timing--GjuZkMuV{display:block}.icon--LTp5Jjna{margin-right:8px;color:#8c8c8c}.failed--sz70SlSa .icon--LTp5Jjna{color:var(--failed-color)}.name--FwiqyIlQ{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}',""]),i.locals={"tool-call":"tool-call--aTh276av","read-only":"read-only--xWUswNds",status:"status--V5ZXGYOG",failed:"failed--sz70SlSa",timing:"timing--GjuZkMuV",icon:"icon--LTp5Jjna",name:"name--FwiqyIlQ"};const l=i},42854:(e,t,n)=>{n.d(t,{H:()=>R});var a=n(89575),r=n(18769),o=n.n(r),i=n(41030),l=n(30348),s=n(77019),c=n(72591),d=n.n(c),u=n(1740),p=n.n(u),m=n(88128),E=n.n(m),b=n(30855),f=n.n(b),v=n(93051),h=n.n(v),g=n(73656),T=n.n(g),A=n(56819),_={};_.styleTagTransform=T(),_.setAttributes=f(),_.insert=E().bind(null,"head"),_.domAPI=p(),_.insertStyleElement=h(),d()(A.A,_);const x=A.A&&A.A.locals?A.A.locals:void 0;var S=n(23241),k=n(30672),w=n(40177);const y=6,C=2,I="__builtin_fn_stringify";function R(e){let{objectId:t,detail:n,outputSchema:c}=e;const d=(0,r.useMemo)((()=>(0,i.uniqueId)()),[]),u=(0,r.useRef)(null),p=(0,r.useRef)(null);(0,r.useEffect)((()=>{const e=u.current;if(!e)return;const t=(0,S.d)(d),n=(0,l.unstable_createRoot)(e,{portal:t,supportsUseChildren:!0});return p.current=n,()=>{n.unmount(),t.remove(),p.current=null}}),[d]);const[m,E]=(0,r.useState)(!0);return(0,r.useEffect)((()=>{let e=!1;return(async()=>{E(!0);try{var t;const{bricks:a,context:r}=await async function(e,t,n,a){var r;let o,l;if("string"==typeof n)try{o=JSON.parse(n)}catch(e){console.error("Failed to parse outputSchema as JSON",e)}else o=n;const c=[],d=[{name:I,value:F}];function u(e,t,n,r,o){var l;const s=D(t),m=s.length>0?s[0][0]:null,E=M(`modal__${r}`),b=M(`context__${r}`);o&&d.push({name:b});const f={brick:"eo-modal",portal:!0,properties:{dataset:{modalId:E},width:"800px",themeVariant:"elevo",modalTitle:n,hideCancelButton:!0,maskClosable:!0,keyboard:!0}};c.push(f);const v=[],h=[];for(const[e,t]of s){let n;"array"===t.type&&"object"===t.items.type?(n=`[${e}]`,h.push({...u("DATA.cellData",t.items,t.description||(0,i.upperFirst)(e),`${r}__${e}`,!0),slot:n})):"object"===t.type&&(n=`[${e}]`,h.push({...p("DATA.cellData",t,t.description||(0,i.upperFirst)(e),`${r}__${e}`,!0),slot:n})),v.push({key:e,dataIndex:e,title:t.description||(0,i.upperFirst)(e),useChildren:n})}f.children=[{brick:"eo-next-table",properties:{dataSource:o?`<%= { list: CTX.${b} } %>`:`<% { list: (${e}) } %>`,columns:v,themeVariant:"elevo",pagination:!1,bordered:!0},children:h}];const g=[...o?[{action:"context.replace",args:[{name:b,value:`<% ${e} %>`}]}]:[],{target:`[data-root-id="${a}"] [data-modal-id="${E}"]`,method:"open"}];return{brick:"span",if:`<% !!(${e}) %>`,properties:{style:{display:"inline-flex",alignItems:"center",gap:"0.5em"}},children:[{brick:":forEach",dataSource:`<% (${e}).slice(0, ${C}) %>`,children:[{brick:"eo-tag",properties:{textContent:`<% CTX.${I}(ITEM, ${JSON.stringify(m)}, ${JSON.stringify(null===(l=s[0])||void 0===l?void 0:l[1].type)}) %>`,outline:!0,style:{cursor:"pointer"}},events:{click:g}}]},{brick:"eo-link",if:`<% (${e}).length > ${C} %>`,properties:{textContent:`<% \`+\${(${e}).length - ${C}}\` %>`},events:{click:g}}]}}function p(e,t,n,r,o){var l;const s=D(t),u=s.length>0?s[0][0]:null,p=M(`modal__${r}`),m=M(`context__${r}`);return o&&d.push({name:m}),c.push({brick:"eo-modal",portal:!0,properties:{dataset:{modalId:p},themeVariant:"elevo",modalTitle:n,hideCancelButton:!0,maskClosable:!0,keyboard:!0},children:[{brick:"eo-descriptions",properties:{themeVariant:"elevo",column:1,dataSource:o?`<%= CTX.${m} %>`:`<% ${e} %> `,list:s.map((e=>{let[t,n]=e;return{label:n.description||(0,i.upperFirst)(t),field:t}}))}}]}),{brick:"span",if:`<% !!(${e}) %>`,properties:{style:{display:"inline-flex",alignItems:"center",gap:"0.5em"}},children:[{brick:"eo-tag",properties:{textContent:`<% CTX.${I}(${e}, ${JSON.stringify(u)}, ${JSON.stringify(null===(l=s[0])||void 0===l?void 0:l[1].type)}) %>`,outline:!0,style:{cursor:"pointer"}},events:{click:[...o?[{action:"context.replace",args:[{name:m,value:`<% ${e} %>`}]}]:[],{target:`[data-root-id="${a}"] [data-modal-id="${p}"]`,method:"open"}]}}]}}return l="object"===(null===(r=o)||void 0===r?void 0:r.type)?Object.entries(o.properties).map((t=>{let[n,a]=t;const{description:r,type:o}=a,l=r||(0,i.upperFirst)(n);if(N(e,n))return{label:l,text:""};if("array"===o&&Array.isArray(e[n])){const{items:t}=a;if("object"===(null==t?void 0:t.type)){const a=M(`context__${n}`);return d.push({name:a,value:e[n]}),{label:l,useBrick:u(`CTX.${a}`,t,l,n)}}if(!O(null==t?void 0:t.type))return{label:l,text:e[n].join(", ")}}if("object"===o&&(0,s.isObject)(e[n])){const t=M(`context__${n}`);return d.push({name:t,value:e[n]}),{label:l,useBrick:p(`CTX.${t}`,a,l,n)}}return O(o)?{label:l,text:JSON.stringify(e[n],null,2)}:{label:l,field:n}})):Object.keys(e).map((e=>({label:(0,i.upperFirst)(e),field:e}))),{bricks:[{brick:"eo-descriptions",properties:{themeVariant:"elevo",column:l.length>y?2:1,dataSource:e,list:l}},...c],context:d}}(n,0,c,d);if(e)return;await(null===(t=p.current)||void 0===t?void 0:t.render(a,{context:r}))}catch(e){console.error("Failed to render view:",e)}e||E(!1)})(),()=>{e=!0}}),[n,t,c,d]),o().createElement("div",{className:x.container},m&&o().createElement(k.Bj,(0,a.A)({className:x.loading},w.Xc)),o().createElement("div",{"data-root-id":d,ref:u}))}function O(e){return!e||"object"===e||"array"===e}function N(e,t){return!(0,s.hasOwnProperty)(e,t)||null==e[t]||""===e[t]||Array.isArray(e[t])&&0===e[t].length}function M(e){return e.replace(/[^a-zA-Z0-9_]+/g,"_")}function F(e,t,n){if(null===t||N(e,t))return"";const a=e[t];return O(n)&&(0,s.isObject)(a)?JSON.stringify(a,null,2):String(a)}function D(e){var t;const n=Object.entries(e.properties);if(null===(t=e.required)||void 0===t||!t.length)return n;const a=Object.keys(e.properties);return(0,i.orderBy)(n,[t=>{let[n]=t;const r=e.required.indexOf(n);return-1===r?e.required.length+a.indexOf(n):r}],["asc"])}},50045:(e,t,n)=>{function a(e){const t=new Map,n=new Map,a=[],r=[],o=new Map;for(const n of e)t.set(n.id,n),n.parent?o.set(n.parent,n.id):r.push(n.id);for(const t of e){var i;for(const e of null!==(l=t.upstream)&&void 0!==l?l:[]){var l;let a=n.get(e);a||n.set(e,a=[]),a.push(t.id)}t.parent||null!==(i=t.upstream)&&void 0!==i&&i.length||a.push(t.id)}const s=[],c=new Set,d=[...a],u=[];for(;d.length>0;){const e=d.shift();if(c.has(e))continue;c.add(e),s.push(e);const t=n.get(e);null!=t&&t.length?d.push(...t):u.push(e)}return{list:s,map:t,roots:a,leaves:u,childMap:o,downstreamMap:n}}function r(e,t,n,r,o){const i=function(e){const{list:t,map:n,childMap:r}=a(e),o=new Map([...n.entries()].map((e=>{let[t,n]=e;return[t,a(n.jobs)]}))),i=e=>{const t=n.get(e),a=o.get(e),{list:l,map:s}=a;return{task:t,children:l.map((e=>{const t=s.get(e),n=r.get(t.id);return n?{job:t,subTask:i(n)}:{job:t}}))}};return t.map((e=>i(e)))}(e),l=[],s=new Map,c=(e,a)=>{const i=null==n?void 0:n.get(e.task.id),s=null==r?void 0:r.get(e.task.id);s&&l.push({type:"activity",activity:s.activity,flow:s.flow,task:e.task});const d=s&&o;for(const{job:t,subTask:n}of e.children){var u;d?"completed"===t.state&&null!==(u=t.messages)&&void 0!==u&&u.length&&t.messages.every((e=>"user"===e.role))&&l.push({type:"job",job:t,level:a,fromSkippedSubTask:!0}):"serviceFlow"===t.type?i&&l.push({type:"flow",flow:i,task:e.task}):n?c(n,a+1):l.push({type:"job",job:t,level:a})}const p=t.filter((t=>t.taskId===e.task.id&&t.error));for(const e of p)l.push({type:"error",error:e.error})},d=e=>{for(const{job:t,subTask:n}of e.children)s.set(t.id,t),n&&d(n)};for(const e of i)c(e,0),d(e);for(const e of t)!e.taskId&&e.error&&l.push({type:"error",error:e.error});return{chunks:l,jobMap:s}}n.d(t,{a:()=>r})},56819:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".container--YostHfxu{background:var(--elevo-component-background);-webkit-backdrop-filter:var(--elevo-component-backdrop-filter);backdrop-filter:var(--elevo-component-backdrop-filter);border-radius:var(--elevo-border-radius);padding:16px}.container--YostHfxu:not(:first-child){margin-top:10px}ai-portal\\.chat-stream .container--YostHfxu{background:rgba(255,255,255,0.6);border-radius:8px;border:1px solid rgba(0,0,0,0.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px}.loading--FzSrGTPm{position:absolute;top:calc(50% - 7px);left:calc(50% - 7px)}",""]),i.locals={container:"container--YostHfxu",loading:"loading--FzSrGTPm"};const l=i},62309:(e,t,n)=>{n.d(t,{f:()=>O});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(30348),s=n(41030),c=n(71568),d=n(72591),u=n.n(d),p=n(1740),m=n.n(p),E=n(88128),b=n.n(E),f=n(30855),v=n.n(f),h=n(93051),g=n.n(h),T=n(73656),A=n.n(T),_=n(85036),x={};x.styleTagTransform=A(),x.setAttributes=v(),x.insert=b().bind(null,"head"),x.domAPI=m(),x.insertStyleElement=g(),u()(_.A,x);const S=_.A&&_.A.locals?_.A.locals:void 0;var k=n(30672),w=n(23241),y=n(40177),C=n(76720),I=n(91797),R=n(65549);function O(e){var t,n;let{views:o}=e;const d=(0,a.useMemo)((()=>(0,s.uniqueId)()),[]),{workspace:u,previewUrlTemplate:p,activeExpandedViewJobId:m,setActiveExpandedViewJobId:E,manuallyUpdatedViews:b,showFeedbackOnView:f,onFeedbackOnView:v,feedbackDoneViews:h}=(0,a.useContext)(C.j),g=(0,a.useRef)(null),T=(0,a.useRef)(null),A=(0,a.useRef)(null),_=m?null!==(t=null==b?void 0:b.get(m))&&void 0!==t?t:null===(n=o.find((e=>e.id===m)))||void 0===n?void 0:n.view:null,x=(0,I.G)(null==_?void 0:_.viewId,f)||_&&(null==h?void 0:h.has(_.viewId)),[O,N]=(0,a.useState)(null),M=!!O&&!(null==_||!_.viewId)&&"config"!==_.from,[F,D]=(0,a.useState)(o);(0,a.useEffect)((()=>{var e;N(null);let t=!1;return null==_||null===(e=_.asyncConstructedView)||void 0===e||e.then((e=>{t||N(e)})),()=>{t=!0}}),[_]),(0,a.useEffect)((()=>{Promise.all(o.map((async e=>{var t;const n=await e.view.asyncConstructedView;return{...e,title:null==n||null===(t=n.entry)||void 0===t||null===(t=t.defaultExport)||void 0===t?void 0:t.title}}))).then((e=>{D(e)}))}),[o]),(0,a.useEffect)((()=>{const e=T.current;if(!e)return;const t=(0,w.d)(d),n=(0,l.unstable_createRoot)(e,{portal:t,supportsUseChildren:!0});return A.current=n,()=>{n.unmount(),t.remove(),A.current=null}}),[d]);const[P,L]=(0,a.useState)(!0);(0,a.useEffect)((()=>{if(L(!0),!O)return;let e=!1;return(async()=>{try{var t;const n=await(0,c.z)(O,{rootId:d,workspace:u,expanded:!0,withContexts:O.withContexts});if(e)return;const{brick:a,context:r,functions:o,templates:i}=n;await(null===(t=A.current)||void 0===t?void 0:t.render(a,{context:r,functions:o,templates:i}))}catch(e){console.error("Failed to render view:",e)}e||L(!1)})(),()=>{e=!0}}),[d,u,O]);const H=(0,a.useCallback)((()=>{E(null)}),[E]);(0,a.useEffect)((()=>{setTimeout((()=>{var e;null===(e=g.current)||void 0===e||e.focus()}),0)}),[]);const j=(0,a.useCallback)((e=>{"Escape"===e.key&&(e.stopPropagation(),H())}),[H]);return r().createElement("div",{className:S["expanded-view"],tabIndex:-1,ref:g,onKeyDown:j},P&&r().createElement("div",{className:S.loading},r().createElement(k.Bj,{lib:"antd",icon:"loading-3-quarters",spinning:!0})),r().createElement("div",{className:i()(S.body,{}),ref:T,"data-root-id":d}),r().createElement("ul",{className:S.nav},F.map((e=>{var t;return r().createElement("li",{key:e.id},r().createElement("button",{className:i()(S["nav-button"],{[S.active]:m===e.id}),onClick:()=>E(e.id)},null!==(t=e.title)&&void 0!==t?t:"…"))}))),r().createElement("div",{className:S.buttons},f&&!x&&M&&r().createElement(k.Py,{icon:y.mJ,onClick:()=>null==v?void 0:v(_.viewId)}),!(null==_||!_.viewId||_.withContexts||!p)&&r().createElement(k.Py,{icon:y.ju,onClick:()=>{window.open(`${(0,l.getBasePath)().slice(0,-1)}${(0,R.Q)(p,{viewId:_.viewId})}`,"_blank")}}),r().createElement(k.Py,{icon:y.LQ,onClick:H})))}},62916:(e,t,n)=>{n.d(t,{c:()=>c,P:()=>d});var a=n(21302),r=n(52616);const o="libs-datetime";let i=function(e){return e.TODAY="TODAY",e.YESTERDAY="YESTERDAY",e.FUTURE_AFTER="FUTURE_AFTER",e.FORMAT_MEDIUM_DATETIME="FORMAT_MEDIUM_DATETIME",e.FORMAT_MEDIUM_DATE="FORMAT_MEDIUM_DATE",e.FORMAT_SHORT_DATETIME="FORMAT_SHORT_DATETIME",e.FORMAT_SHORT_DATE="FORMAT_SHORT_DATE",e.FORMAT_SHORT_DAY_DATETIME="FORMAT_SHORT_DAY_DATETIME",e.FORMAT_SHORT_DAY_DATE="FORMAT_SHORT_DAY_DATE",e.SECONDS="SECONDS",e.MILL_SECONDS="MILL_SECONDS",e.MINUTES="MINUTES",e.HOURS="HOURS",e.DAYS="DARS",e.MONTHS="MONTHS",e}({});const l={[i.YESTERDAY]:"Yesterday",[i.TODAY]:"Today",[i.FUTURE_AFTER]:"After {{time}}",[i.FORMAT_MEDIUM_DATETIME]:"LLL",[i.FORMAT_MEDIUM_DATE]:"LL",[i.FORMAT_SHORT_DATETIME]:"MMM D ah:mm",[i.FORMAT_SHORT_DATE]:"MMM D",[i.FORMAT_SHORT_DAY_DATETIME]:"MMM D HH:mm",[i.FORMAT_SHORT_DAY_DATE]:"MMM D",[i.MONTHS]:"months",[i.HOURS]:"hours",[i.SECONDS]:"seconds",[i.MILL_SECONDS]:"millseconds",[i.DAYS]:"days",[i.MINUTES]:"minutes"},s={[i.YESTERDAY]:"昨天",[i.TODAY]:"今天",[i.FUTURE_AFTER]:"{{time}}后",[i.FORMAT_MEDIUM_DATETIME]:"LL ah:mm",[i.FORMAT_MEDIUM_DATE]:"LL",[i.FORMAT_SHORT_DATETIME]:"MMMD日 ah:mm",[i.FORMAT_SHORT_DATE]:"MMMD日",[i.FORMAT_SHORT_DAY_DATETIME]:"MMMD日 HH:mm",[i.FORMAT_SHORT_DAY_DATE]:"MMMD日",[i.MONTHS]:"个月",[i.HOURS]:"小时",[i.SECONDS]:"秒",[i.MILL_SECONDS]:"毫秒",[i.DAYS]:"天",[i.MINUTES]:"分钟"};(0,r.initializeI18n)(o,{en:l,zh:s});let c=function(e){return e.full="full",e.default="default",e.relative="relative",e.past="past",e.future="future",e.accurate="accurate",e.auto="auto",e}({});const d=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c.auto,n=arguments.length>2?arguments[2]:void 0;if(null==e||e===-1/0||e===1/0)return null;const l=a(e),s=a().add(0),d="date"===n?"LL":"LL HH:mm",u=r.i18n.t(`${o}:${"date"===n?i.FORMAT_MEDIUM_DATE:i.FORMAT_MEDIUM_DATETIME}`),p=r.i18n.t(`${o}:${"date"===n?i.FORMAT_SHORT_DATE:i.FORMAT_SHORT_DATETIME}`),m=r.i18n.t(`${o}:${"date"===n?i.FORMAT_SHORT_DAY_DATE:i.FORMAT_SHORT_DAY_DATETIME}`),E="date"===n?"LL":"LL HH:mm:ss";let b;switch(t){case c.full:b=l.format(d);break;case c.default:b=l.format(E);break;case c.relative:{const e=+l-+s;b=e<=0?a.duration(e).humanize(!0):r.i18n.t(`${o}:${i.FUTURE_AFTER}`,{time:a.duration(e).humanize()});break}case c.past:b=a.duration(Math.min(+l-+s,0)).humanize(!0);break;case c.future:b=r.i18n.t(`${o}:${i.FUTURE_AFTER}`,{time:a.duration(Math.max(+l-+s,0)).humanize()});break;case c.accurate:b=(()=>{const e=+l.diff(s,"days",!0).toFixed(1);let t="";const a=l.year()<s.year()?"lastYear":e<-2||l.isBefore(s.clone().add(-1,"day"),"day")?"twoDaysBefore":l.isSame(s.clone().add(-1,"day"),"day")?"yesterday":l.isSame(s,"day")?"sameDay":e<2&&l.isSame(s.clone().add(1,"day"),"day")?"nextDay":e<7?"nextWeek":"default";switch(a){case"sameDay":case"yesterday":t=`${r.i18n.t(`${o}:${"yesterday"===a?i.YESTERDAY:i.TODAY}`)}${"date"===n?"":` ${l.format("HH:mm")}`}`;break;case"lastYear":default:t=l.format(d);break;case"twoDaysBefore":t=l.format(m)}return t})();break;default:b=l.format(l.year()===s.year()?p:u)}return b}},65549:(e,t,n)=>{n.d(t,{Q:()=>r});var a=n(41030);function r(e,t){return null==e?void 0:e.replace(/{{(.*?)}}/g,((e,n)=>(0,a.get)(t,n.trim())))}},67101:(e,t,n)=>{n.d(t,{u:()=>g});var a=n(18769),r=n(77019),o=n(30348),i=n(41030),l=n(75321);function s(e,t,n,a){let r=null!=e?e:[];for(const e of null!=t?t:[]){var o,s;const t=null!==(o=null===(s=r)||void 0===s?void 0:s.findIndex((t=>t.id===e.id)))&&void 0!==o?o:-1,{messages:g,toolCall:T}=e;if("string"==typeof(null==T?void 0:T.arguments)){T.originalArguments=T.arguments;try{T.arguments=JSON.parse(T.arguments)}catch(e){T.arguments={},T.argumentsParseFailed=!0,T.argumentsParseError=e}}if(-1===t){var d;const t={...e};if(void 0!==a&&(t.aiEmployeeId=a),"create_view"===(null===(d=t.toolCall)||void 0===d?void 0:d.name)&&"completed"===t.state){const e=u(g,n);e&&(t.generatedView=e)}r=Array.isArray(g)&&g.length>0?[...r,{...t,messages:c(g)}]:[...r,t]}else{var E,b,f,v;const o=r[t],s=(0,i.pick)(e,["id","upstream","parent","state","instruction","toolCall","isError","hidden","startTime","endTime","requestHumanAction","humanAction","username","cmd","hil"]);var h;if(void 0!==a&&(s.aiEmployeeId=a),Array.isArray(g)&&g.length>0&&(s.messages=c([...null!==(h=o.messages)&&void 0!==h?h:[],...g])),!o.generatedView&&["create_view"].includes(null!==(E=null===(b=s.toolCall)||void 0===b?void 0:b.name)&&void 0!==E?E:null===(f=o.toolCall)||void 0===f?void 0:f.name)&&"completed"===(null!==(v=s.state)&&void 0!==v?v:o.state)){const e=u(g,n);e&&(s.generatedView=e)}if(!o.generatedView&&!s.generatedView){const e=p(g);e&&(e.withContexts={RESPONSE:m(s.messages)},e.asyncConstructedView=(0,l.e)(e,n),s.generatedView=e)}(0,i.isMatch)(o,s)||(r=[...r.slice(0,t),{...o,...s},...r.slice(t+1)])}}return r}function c(e){const t=[];let n;for(const a of e){if(n&&n===a.role){const e=t[t.length-1];e.parts=[...e.parts,...a.parts]}else t.push({...a});n=a.role}for(const e of t)e.parts=d(e.parts);return t}function d(e){const t=[];let n,a;for(const i of e){var r,o;"text"===n&&"text"===i.type?t[t.length-1].text+=i.text:"stream"===a&&"data"===i.type&&"stream"===(null===(r=i.data)||void 0===r?void 0:r.type)?t[t.length-1].data.message+=i.data.message:t.push({...i}),n=i.type,a="data"===i.type?null===(o=i.data)||void 0===o?void 0:o.type:void 0}return t}function u(e,t){if(e)for(const n of e)if("tool"===n.role)for(const e of n.parts)if("text"===e.type)try{const n=JSON.parse(e.text);return n.asyncConstructedView=(0,l.e)(n,t),n}catch{}}function p(e){if(e)for(const n of e)if("tool"===n.role)for(const e of n.parts){var t;if("data"===e.type&&"static_data_view"===(null===(t=e.data)||void 0===t?void 0:t.type))return{viewId:e.data.viewId,code:e.data.code,from:e.data.from,isStaticData:!0}}}function m(e){for(const t of e)if("tool"===t.role)for(const e of t.parts)if("text"===e.type)try{return JSON.parse(e.text)}catch(e){console.error("Failed to parse static data response as JSON:",e)}return null}function E(e,t,n){if(Array.isArray(n))return n;if(!Array.isArray(t.spec))return null!=e?e:[];const a=e?[...e]:[];for(const e of t.spec){const t=a.findIndex((t=>t.name===e.name));if(-1===t){var r;const t={...e};null!==(r=t.serviceFlowActivities)&&void 0!==r||(t.serviceFlowActivities=[]),a.push(t)}else{const n=b(a[t].serviceFlowActivities,e.serviceFlowActivities);a[t]={...a[t],...e,serviceFlowActivities:n}}}return a}function b(e,t){let n=null!=e?e:[];if(!Array.isArray(t)||0===t.length)return n;for(const e of t){const t=n.findIndex((t=>t.taskId?t.taskId===e.taskId:t.name===e.name));n=-1===t?[...n,e]:[...n.slice(0,t),{...n[t],...e},...n.slice(t+1)]}return n}const f=(v={conversation:(e,t)=>{switch(t.type){case"sse":{const n=(0,i.pick)(t.payload,["id","state","title","startTime","endTime","projectId"]);return e&&(0,i.isMatch)(e,n)?e:{...e,...n}}case"reset":return null;case"finished":return e?{...e,finished:!0}:e}return e},tasks:(e,t)=>{switch(t.type){case"sse":{const a=t.payload.tasks;let r=e;if(!Array.isArray(a)||0===a.length)return e;for(const e of a){var n;const a=(0,i.pick)(e,["id","upstream","parent","state","plan","startTime","endTime","jobs","aiEmployeeId"]),o=r.findIndex((e=>e.id===a.id)),l=r[o];a.jobs=s(null==l?void 0:l.jobs,a.jobs,t.workspace,null!==(n=a.aiEmployeeId)&&void 0!==n?n:null==l?void 0:l.aiEmployeeId),-1===o?r=[...r,a]:(0,i.isMatch)(l,a)||(r=[...r.slice(0,o),{...l,...a},...r.slice(o+1)])}return r}case"reset":return 0===e.length?e:[]}return e},errors:(e,t)=>{switch(t.type){case"sse":{const{error:n,tasks:a}=t.payload,r=e[e.length-1];let o;return o=null!=a&&a.length?a[a.length-1].id:null==r?void 0:r.taskId,"string"==typeof n&&n&&r?e.slice(0,-1).concat({taskId:o,error:n},{taskId:o}):r?r.error?e.concat({taskId:o}):r.taskId!==o?e.slice(0,-1).concat({taskId:o}):e:o?[{taskId:o}]:e}case"reset":return 0===e.length?e:[]}return e},serviceFlows:(e,t)=>{switch(t.type){case"sse":{const n=t.payload.serviceFlows;let a=e;if(!Array.isArray(n)||0===n.length)return e;for(const e of n){const t=(0,i.pick)(e,["taskId","flowInstanceId","name","spec","space"]),n=a.findIndex((e=>e.taskId===t.taskId)),r=a[n];t.spec=E(null==r?void 0:r.spec,t,e.fullSpec),-1===n?a=[...a,t]:(0,i.isMatch)(r,t)||(a=[...a.slice(0,n),{...r,...t},...a.slice(n+1)])}return a}case"reset":return 0===e.length?e:[]}return e}},(e,t)=>Object.fromEntries(Object.entries(v).map((n=>{let[a,r]=n;return[a,r(e[a],t)]}))));var v;const h=500;function g(e,t,n,i){const[{conversation:l,tasks:s,serviceFlows:c,errors:d},u]=(0,a.useReducer)(f,null,(()=>({conversation:null,tasks:[],serviceFlows:[],errors:[]}))),p=(0,a.useRef)(),m=(0,a.useRef)([]),E=(0,a.useRef)(n),b=(0,a.useRef)(1e3*(null!=i?i:2)),v=(0,a.useRef)(null),g=(0,a.useCallback)((()=>{E.current=!1,v.current&&(v.current(),v.current=null)}),[]),T=(0,a.useCallback)((async()=>{E.current=!0,u({type:"reset"});let t,n=!0;for(const a of m.current){if(E.current){let e=b.current;a.time&&t&&(e=Math.min(Math.max(h,1e3*(a.time-t)),e)),t=a.time,n||(await new Promise((t=>{v.current=t,setTimeout(t,e)})),v.current=null)}u({type:"sse",payload:a,workspace:e}),n=!1}u({type:"finished"})}),[e]);return(0,a.useEffect)((()=>{u({type:"reset"}),m.current=[],p.current=void 0;let n,a=!1,i=!1;const l=async(t,l,s,c)=>{if(!i){i=!0,n=new AbortController;try{const d=await(null!==t||l?(0,r.createSSEStream)(`${(0,o.getBasePath)()}api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations/${e}/messages`,{signal:n.signal,method:"POST",body:JSON.stringify(l?{action:l}:{content:t,cmd:s,files:c}),headers:{"Content-Type":"application/json"}}):(0,r.createSSEStream)(`${(0,o.getBasePath)()}api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations/${e}/stream`,{signal:n.signal})),p=await d;let f,g=!0;for await(const t of p){if(a)return void(i=!1);if(E.current){let e=b.current;t.time&&f&&(e=Math.min(Math.max(h,1e3*(t.time-f)),e)),f=t.time,g||(await new Promise((t=>{v.current=t,setTimeout(t,e)})),v.current=null)}m.current.push(t),u({type:"sse",payload:t,workspace:e}),g=!1}u({type:"finished"})}catch(e){console.error("sse failed",e),(0,o.handleHttpError)(e)}finally{i=!1}}};return p.current=async(e,t,n)=>{l(t,n)},(null==t?void 0:t.conversationId)===e?l(t.content,void 0,t.cmd,t.files):l(null),()=>{var e;a=!0,null===(e=n)||void 0===e||e.abort()}}),[e,t]),{conversation:l,tasks:s,serviceFlows:c,errors:d,humanInputRef:p,skipToResults:g,watchAgain:T}}},67993:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".progress-line--CX_xuAHC{--breathing-color:rgba(205,205,217,0.7);--breathing-color-2:rgba(205,205,217,0);display:flex;flex-direction:column}.progress-line--CX_xuAHC .step--YXd66tSR{position:relative;display:flex;align-items:center;padding:10px 4px 10px 16px;color:rgba(0,0,0,0.5)}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5{position:absolute;top:0;bottom:0;left:14px;width:1px}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5 .line--BUSBjzxD{width:1px;height:100%;background:linear-gradient(172deg,rgba(205,205,217,0) 0%,#cdcdd9 46%,rgba(205,205,217,0) 100%)}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5 .dot--TPMEta87{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:5px;height:5px;background:rgba(205,205,217,1);border-radius:50%}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF{padding:3px;margin:0 8px 0 12px;border-radius:10px;line-height:1;background:#ffffff}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF .count--RdZcMYhZ{font-weight:400}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF .total--BKoLTm8c{opacity:0.6}.progress-line--CX_xuAHC .step--YXd66tSR .description--AyfMh1_M{flex:1;color:#999}.progress-line--CX_xuAHC .step--YXd66tSR:last-child .progress--alc7SspF .count--RdZcMYhZ{font-weight:600}.failed--Q9TADo_k .step--YXd66tSR:last-child .axis--T4nVxQt5 .line--BUSBjzxD{background:linear-gradient(172deg,rgba(242,76,37,0) 0%,rgba(242,76,37,0.3) 47%,rgba(242,76,37,0) 100%)}.failed--Q9TADo_k .step--YXd66tSR:last-child .axis--T4nVxQt5 .dot--TPMEta87{background:rgba(255,154,120,1)}.failed--Q9TADo_k .step--YXd66tSR:last-child .progress--alc7SspF{background:#ffd6d6}.failed--Q9TADo_k .step--YXd66tSR:last-child .progress--alc7SspF .count--RdZcMYhZ{color:#f44336}",""]),i.locals={"progress-line":"progress-line--CX_xuAHC",step:"step--YXd66tSR",axis:"axis--T4nVxQt5",line:"line--BUSBjzxD",dot:"dot--TPMEta87",progress:"progress--alc7SspF",count:"count--RdZcMYhZ",total:"total--BKoLTm8c",description:"description--AyfMh1_M",failed:"failed--Q9TADo_k"};const l=i},69606:(e,t,n)=>{n.d(t,{w:()=>Y});var a=n(89575),r=n(18769),o=n.n(r),i=n(31085),l=n(51309),s=n(81735),c=n(35532),d=n(23640),u=n(48302),p=n(45619),m=n(62142),E=n(56948),b=n(64149),f=n(29755);const v={json:()=>n.e(4190).then(n.bind(n,64190)),javascript:()=>n.e(5065).then(n.bind(n,15065)),js:()=>n.e(5065).then(n.bind(n,15065)),typescript:()=>n.e(2449).then(n.bind(n,72449)),ts:()=>n.e(2449).then(n.bind(n,72449)),html:()=>Promise.all([n.e(5065),n.e(2593),n.e(4735)]).then(n.bind(n,74735)),"html-derivative":()=>Promise.all([n.e(5065),n.e(2593),n.e(4735),n.e(9251)]).then(n.bind(n,9251)),xml:()=>n.e(8263).then(n.bind(n,28263)),css:()=>n.e(2593).then(n.bind(n,62593)),markdown:()=>n.e(8311).then(n.bind(n,88311)),md:()=>n.e(8311).then(n.bind(n,88311)),mermaid:()=>n.e(8757).then(n.bind(n,58757)),mmd:()=>n.e(8757).then(n.bind(n,58757)),jsx:()=>n.e(1136).then(n.bind(n,58755)),tsx:()=>n.e(4609).then(n.bind(n,54609)),shellscript:()=>n.e(1215).then(n.bind(n,1215)),bash:()=>n.e(1215).then(n.bind(n,1215)),sh:()=>n.e(1215).then(n.bind(n,1215)),shell:()=>n.e(1215).then(n.bind(n,1215)),zsh:()=>n.e(1215).then(n.bind(n,1215)),python:()=>n.e(2510).then(n.bind(n,82510)),py:()=>n.e(2510).then(n.bind(n,82510)),go:()=>n.e(5498).then(n.bind(n,75498)),sql:()=>n.e(1120).then(n.bind(n,21120))},h={"light-plus":m.A,"dark-plus":E.A},g=(0,b.q6)({langs:v,themes:h,engine:()=>(0,f.Mk)(n.e(5032).then(n.bind(n,75032)))}),{codeToHtml:T,codeToHast:A,codeToTokensBase:_,codeToTokens:x,codeToTokensWithThemes:S,getSingletonHighlighter:k,getLastGrammarState:w}=(0,b.CZ)(g,{guessEmbeddedLanguages(e,t){if("markdown"===t||"md"===t)return["mermaid"]}});var y=n(74269),C=n(74650),I=n(96271);let R;let O=0;const N=new DOMParser,M=new XMLSerializer;function F(){return async e=>{const t=[];(0,y.YR)(e,"element",((e,a,r)=>{if(!r||"element"!==r.type||"pre"!==r.tagName||"code"!==e.tagName)return;const o=function(e){const t=e.properties.className||[];for(const e of t)if("language-"===e.slice(0,9))return e.slice(9).toLowerCase();return null}(e);"mermaid"===o&&t.push((async()=>{const t="mermaid-"+O++;let o;try{const a=await(R||(R=async function(){const e=(await Promise.all([n.e(8324),n.e(7367)]).then(n.bind(n,67367))).default;return e.initialize({startOnLoad:!1,theme:"base",themeVariables:{fontSize:"14px",lineColor:"#979797",primaryColor:"#DCD2F3",primaryBorderColor:"#0000001A"}}),e}(),R));o=(await a.render(t,(0,C.d)(e))).svg}catch(e){var i;return console.error("Error rendering mermaid diagram:",e),void(null===(i=document.getElementById(t))||void 0===i||i.remove())}const l=N.parseFromString(o,"text/html"),s=l.querySelector("svg"),c=l.createElementNS("http://www.w3.org/2000/svg","defs");c.innerHTML=`<linearGradient id="linear-gradient-${t}" x1="0%" y1="0%" x2="0%" y2="100%">\n <stop offset="0%" stop-color="#F0EBFA" />\n <stop offset="75%" stop-color="#DED4F4" />\n <stop offset="100%" stop-color="#C5C7FA" />\n</linearGradient>`,s.prepend(c);const d=l.createElementNS("http://www.w3.org/2000/svg","style");d.textContent=`\n#${t} .node rect,\n#${t} .node circle,\n#${t} .node ellipse,\n#${t} .node polygon,\n#${t} .node path {\n fill: url(#linear-gradient-${t});\n}\n#${t} .node rect {\n rx: 4;\n ry: 4;\n}\n#${t} .labelBkg {\n background-color: #f5f8ff;\n}\n#${t} .edgeLabel,\n#${t} .edgeLabel p {\n background-color: transparent;\n}\n#${t} .edgeLabel {\n color: #8c8c8c;\n font-size: 12px;\n}\n`,s.appendChild(d);const u=M.serializeToString(s),p=(0,I.f)(u,{fragment:!0}).children;r.children.splice(a,1,...p),r.properties.className=(r.properties.className||[]).concat("mermaid")})())})),await Promise.all(t)}}const D={Fragment:i.Fragment,jsx:i.jsx,jsxs:i.jsxs};function P(e){var t;let{content:n,components:a,shiki:o}=e;const[i,m]=(0,r.useState)(null),E=null!==(t=null==o?void 0:o.theme)&&void 0!==t?t:"dark-plus";return(0,r.useEffect)((()=>{let e=!1;return(async()=>{try{const t=await k({themes:[E]});if(e)return;const r=await(0,l.l)().use(s.A).use(c.A).use(d.A).use(F).use(p.A,t,{theme:E,lazy:!0,defaultLanguage:"text"}).use(u.A,{...D,passNode:!0,components:a}).process(n);e||m(r.result)}catch(t){e||(console.error("Convert markdown failed:",t),m(null))}})(),()=>{e=!0}}),[a,n,E]),i}var L=n(31078);const H={pre:n(20555).j},j={theme:"light-plus"};function Y(e){let{className:t,...n}=e;const i=(0,r.useRef)(null),{setHoverOnScrollableContent:l}=(0,r.useContext)(L.Q),s=(0,r.useCallback)((e=>{let t=!1;for(const n of e.nativeEvent.composedPath()){if(n===i.current)break;if((n instanceof HTMLTableElement||n instanceof HTMLPreElement)&&n.scrollWidth>n.clientWidth){t=!0;break}}l(t)}),[l]),c=(0,r.useCallback)((()=>{l(!1)}),[l]);return o().createElement("div",{className:t,onMouseMove:s,onMouseLeave:c},o().createElement(P,(0,a.A)({},n,{components:H,shiki:j})))}},70046:(e,t,n)=>{n.d(t,{s:()=>u});var a=n(18769),r=n.n(a),o=n(52616),i=n(30672);let l=function(e){return e.SEND_MESSAGE="SEND_MESSAGE",e.CONFIRM_TO_TERMINATE_THE_TASK_TITLE="CONFIRM_TO_TERMINATE_THE_TASK_TITLE",e}({});const s="bricks/ai-portal/ChatBox",c=o.i18n.getFixedT(null,s);var d=n(76720);function u(e){let{state:t,canChat:n}=e;const{humanInput:o,onTerminate:s,supports:u}=(0,a.useContext)(d.j),[p,m]=(0,a.useState)(!1);(0,a.useEffect)((()=>{m(!1)}),[t]);const E=(0,a.useCallback)((async()=>{try{await(0,i.ui)({type:"confirm",title:c(l.CONFIRM_TO_TERMINATE_THE_TASK_TITLE),content:""})}catch{return}s(),m(!0)}),[s]);return r().createElement(i.IV,{placeholder:c(l.SEND_MESSAGE),autoFocus:!0,submitDisabled:!n,supportsTerminate:null==u?void 0:u.intercept,terminating:p,onMessageSubmit:e=>{o("",e.detail)},onTerminate:E})}(0,o.initializeI18n)(s,{en:{SEND_MESSAGE:"Send message",CONFIRM_TO_TERMINATE_THE_TASK_TITLE:"Are you sure to terminate the task?"},zh:{SEND_MESSAGE:"发送消息",CONFIRM_TO_TERMINATE_THE_TASK_TITLE:"确定终止任务吗?"}})},75321:(e,t,n)=>{n.d(t,{e:()=>r});var a=n(43100);async function r(e,t){try{const n=await(0,a.f)();return{...await n.parseView(e.code,{workspace:t,withContexts:e.withContexts?Object.keys(e.withContexts):void 0}),viewId:e.viewId,withContexts:e.withContexts}}catch(e){return console.error("Failed to parse generated view:",e),null}}},76720:(e,t,n)=>{n.d(t,{j:()=>a});const a=(0,n(18769).createContext)({tasks:[],errors:[],humanInput:()=>{},onShare:()=>{},onTerminate:()=>{},activeExpandedViewJobId:null,setActiveExpandedViewJobId:()=>{},activeDetail:null,setActiveDetail:()=>{},subActiveDetail:null,setSubActiveDetail:()=>{},submittingFeedback:!1,submittedFeedback:!1,onSubmitFeedback:()=>{},setShowFeedback:()=>{}})},77388:(e,t,n)=>{n.d(t,{_:()=>_});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(82674),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;function _(e){let{cmd:t,size:n}=e;const o=(0,a.useMemo)((()=>"serviceFlowStarting"===t.type?`/start service flow${[t.serviceFlowStarting.spaceName,t.serviceFlowStarting.flowName].filter(Boolean).map((e=>`: ${e}`)).join("")}`:`/${t.type}`),[t]);return r().createElement(r().Fragment,null,r().createElement("span",{className:i()(A.command,{[A.small]:"small"===n})},o)," ")}},78697:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".node-replay--RJPyOwC6{width:var(--cruise-canvas-node-width-large);max-width:100%;background:rgba(255,255,255,0.5);border-radius:12px;border:1px solid rgba(255,255,255,0.4);padding:4px}.finished--DCI6ewIN:not(.chat--YJT4RmwA){max-width:90vw}.node-replay--RJPyOwC6.chat--YJT4RmwA{margin-top:14px}.bar--Pae7qP58{background:rgba(184,187,205,0.3);border-radius:8px;border:1px solid rgba(255,255,255,0.4);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.buttons--m0009sdd{display:flex;align-items:center;gap:8px}.label--VlLhkZeC{font-weight:500}.cases--czpvOoLX,\n.projects--W1KI5fUu{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.content--rFWHJyEy{padding:0 16px 16px}.heading--jlFUCX5n{margin:26px 0 10px;color:rgba(0,0,0,0.6);line-height:20px}.tips--FzM5aSiq{font-size:12px;line-height:20px;color:rgba(0,0,0,0.35);margin:-3px 0 10px}.project--BSu5VIGZ{width:100%}.project--BSu5VIGZ::part(link){height:48px;background:rgba(255,255,255,0.5);border-radius:12px;border:1px solid rgba(255,255,255,0.4);display:flex;align-items:center;padding:0 16px;gap:6px;font-weight:500;color:#262626}.project--BSu5VIGZ::part(link):hover{color:var(--elevo-color-brand)}.tag--Hp8eFjie{display:inline-block;padding:0 4px;background:rgba(37,64,255,0.1);border-radius:4px;color:var(--elevo-color-brand)}",""]),i.locals={"node-replay":"node-replay--RJPyOwC6",finished:"finished--DCI6ewIN",chat:"chat--YJT4RmwA",bar:"bar--Pae7qP58",buttons:"buttons--m0009sdd",label:"label--VlLhkZeC",cases:"cases--czpvOoLX",projects:"projects--W1KI5fUu",content:"content--rFWHJyEy",heading:"heading--jlFUCX5n",tips:"tips--FzM5aSiq",project:"project--BSu5VIGZ",tag:"tag--Hp8eFjie"};const l=i},80865:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".toolbar--ELlNUAti{position:absolute;display:flex;align-items:center;padding:3px 5px;-webkit-user-select:none;user-select:none;background:rgba(255,255,255,0.7);box-shadow:0px 3px 14px 0px rgba(0,0,0,0.1),0px 1px 4px 0px rgba(0,0,0,0.06);border-radius:8px;border:1px solid rgba(255,255,255,0.3)}.divider--JeH8feaX{background:rgba(0,0,0,0.15);width:1px;height:16px}.toolbar--ELlNUAti > :not(:last-child){margin-right:6px}",""]),i.locals={toolbar:"toolbar--ELlNUAti",divider:"divider--JeH8feaX"};const l=i},82674:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".command--PjYZ4uqH{display:inline-block;background:rgba(37,64,255,0.06);border-radius:8px;color:#2540ff;padding:4px 6px;line-height:22px}.small--dUc9qGKv{padding:2px 6px}",""]),i.locals={command:"command--PjYZ4uqH",small:"small--dUc9qGKv"};const l=i},85036:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".expanded-view--Pl3PL2nR{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;background:rgba(247,248,250,0.5);-webkit-backdrop-filter:blur(74px);backdrop-filter:blur(74px);padding:106px var(--page-padding-right) 40px var(--page-padding-left);overflow-y:auto;display:flex;flex-direction:column;align-items:center}.nav--dLWwzH3E{position:absolute;top:39px;left:50%;transform:translate(-50%,0);list-style:none;margin:0 0 25px;padding:4px;display:flex;justify-content:start;align-items:center;background:rgba(2,0,102,0.05);box-shadow:inset 0px 1px 2px 0px #cdd1d7;border-radius:21px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.nav-button--zv2Yj10m{display:flex;align-items:center;height:34px;padding:0 26px;background:none;border:none;color:#595959;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.nav-button--zv2Yj10m:not(:last-child){margin-right:12px}.nav-button--zv2Yj10m.active--MHyqtaKu{background:rgba(255,255,255,0.6);border-radius:20px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);color:var(--elevo-color-brand);text-shadow:-0.02ex 0 0 currentColor,0.02ex 0 0 currentColor}.nav-button--zv2Yj10m:hover{color:var(--elevo-color-brand)}.body--edodw95r{width:100%;max-width:1556px}.body--edodw95r.small--Y90AL_bt{max-width:804px}.loading--UxfFogUY{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;color:#fff}.buttons--ZZYyY2LU{position:absolute;top:24px;right:24px;display:flex;gap:12px}",""]),i.locals={"expanded-view":"expanded-view--Pl3PL2nR",nav:"nav--dLWwzH3E","nav-button":"nav-button--zv2Yj10m",active:"active--MHyqtaKu",body:"body--edodw95r",small:"small--Y90AL_bt",loading:"loading--UxfFogUY",buttons:"buttons--ZZYyY2LU"};const l=i},86011:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".view-toolbar--kVhd3X5H{display:flex;align-items:center;gap:8px}.button--f3fGXpYl{display:flex;background:none;border:none;padding:3px;cursor:pointer;color:#595959}.button-lucide--J7U9FEo_{font-size:16px;padding:2px}.button--f3fGXpYl:hover{color:var(--elevo-color-brand)}",""]),i.locals={"view-toolbar":"view-toolbar--kVhd3X5H",button:"button--f3fGXpYl","button-lucide":"button-lucide--J7U9FEo_"};const l=i},86767:(e,t,n)=>{n.d(t,{A:()=>v});var a=n(72591),r=n.n(a),o=n(1740),i=n.n(o),l=n(88128),s=n.n(l),c=n(30855),d=n.n(c),u=n(93051),p=n.n(u),m=n(73656),E=n.n(m),b=n(80865),f={};f.styleTagTransform=E(),f.setAttributes=d(),f.insert=s().bind(null,"head"),f.domAPI=i(),f.insertStyleElement=p(),r()(b.A,f);const v=b.A&&b.A.locals?b.A.locals:void 0},86976:(e,t,n)=>{n.d(t,{y:()=>O});var a=n(18769),r=n.n(a),o=n(30348),i=n(53373),l=n.n(i),s=n(41030),c=n(71568),d=n(72591),u=n.n(d),p=n(1740),m=n.n(p),E=n(88128),b=n.n(E),f=n(30855),v=n.n(f),h=n(93051),g=n.n(h),T=n(73656),A=n.n(T),_=n(11190),x={};x.styleTagTransform=A(),x.setAttributes=v(),x.insert=b().bind(null,"head"),x.domAPI=m(),x.insertStyleElement=g(),u()(_.A,x);const S=_.A&&_.A.locals?_.A.locals:void 0;var k=n(36903),w=n(30672),y=n(23241),C=n(76720),I=n(40177),R=n(89064);function O(e){var t;let{job:n,noHeading:i,onSizeChange:d}=e;const u=(0,a.useMemo)((()=>(0,s.uniqueId)()),[]),{workspace:p,manuallyUpdatedViews:m}=(0,a.useContext)(C.j),E=(0,a.useRef)(null),b=(0,a.useRef)(null),f=null!==(t=null==m?void 0:m.get(n.id))&&void 0!==t?t:n.generatedView,[v,h]=(0,a.useState)(null),g=!!v&&!!f.viewId&&"config"!==f.from;(0,a.useEffect)((()=>{var e;h(null);let t=!1;return null===(e=f.asyncConstructedView)||void 0===e||e.then((e=>{t||h(e)})),()=>{t=!0}}),[f]),(0,a.useEffect)((()=>{const e=E.current;if(!e)return;const t=(0,y.d)(u),n=(0,o.unstable_createRoot)(e,{portal:t,supportsUseChildren:!0});return b.current=n,()=>{n.unmount(),t.remove(),b.current=null}}),[u]);const[T,A]=(0,a.useState)(!0),[_,x]=(0,a.useState)(!1);(0,a.useEffect)((()=>{if(A(!0),!v)return;let e=!1;return(async()=>{try{var t;const n=await(0,c.z)(v,{rootId:u,workspace:p,withContexts:v.withContexts});if(e)return;const{brick:a,context:r,functions:o,templates:i}=n;x(function(e){let t=!1;return N([].concat(e),(e=>{var n;if("eo-next-table"===e.brick)return t=!0,!0;if("div"===e.brick&&"dashboard"===(null===(n=e.properties)||void 0===n||null===(n=n.dataset)||void 0===n?void 0:n.component)){const n=e.children;if(Array.isArray(n)&&n.length>=7)return t=!0,!0}return!1})),t}(a)),await(null===(t=b.current)||void 0===t?void 0:t.render(a,{context:r,functions:o,templates:i}))}catch(e){console.error("Failed to render view:",e)}e||A(!1)})(),()=>{e=!0}}),[u,p,v]),(0,a.useEffect)((()=>{null==d||d(_?"large":"medium")}),[d,_]);const O=(0,a.useMemo)((()=>{var e;return null==v||null===(e=v.entry)||void 0===e||null===(e=e.defaultExport)||void 0===e?void 0:e.title}),[v]);return r().createElement(r().Fragment,null,i?null:r().createElement("div",{className:S.heading},r().createElement("div",{className:l()(S.title,{[k.A["shine-text"]]:v&&T})},v?O:r().createElement(w.Bj,I.Xc)),r().createElement(R.v,{job:n,canFeedback:g})),r().createElement("div",{"data-root-id":u,ref:E}))}function N(e,t){for(const n of e){if(t(n))break;Array.isArray(n.children)&&N(n.children,t)}}},88253:(e,t,n)=>{n.d(t,{o:()=>r});var a=n(18769);function r(e){return(0,a.useMemo)((()=>{const t=new Map,n=new Map;for(const a of e){a.taskId&&t.set(a.taskId,a);for(const e of a.spec)for(const t of e.serviceFlowActivities)t.taskId&&n.set(t.taskId,{activity:t,flow:a})}return{flowMap:t,activityMap:n}}),[e])}},89064:(e,t,n)=>{n.d(t,{v:()=>R});var a=n(18769),r=n.n(a),o=n(30348),i=n(52616),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(86011),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;var _=n(30672);let x=function(e){return e.FULLSCREEN="FULLSCREEN",e.FEEDBACK="FEEDBACK",e.OPEN_PREVIEW="OPEN_PREVIEW",e}({});const S="bricks/ai-portal/CreatedView",k=i.i18n.getFixedT(null,S);var w=n(76720),y=n(40177),C=n(91797),I=n(65549);function R(e){var t;let{job:n,canFeedback:i}=e;const{previewUrlTemplate:l,showJsxEditor:s,setActiveExpandedViewJobId:c,setActiveJsxEditorJob:d,manuallyUpdatedViews:u,showFeedbackOnView:p,onFeedbackOnView:m,feedbackDoneViews:E}=(0,a.useContext)(w.j),b=null!==(t=null==u?void 0:u.get(n.id))&&void 0!==t?t:n.generatedView,f=(0,C.G)(b.viewId,p)||(null==E?void 0:E.has(b.viewId)),v=i&&!!b.viewId&&"config"!==b.from,h=(0,a.useCallback)((()=>{c(n.id)}),[n.id,c]);return r().createElement("div",{className:A["view-toolbar"]},s&&r().createElement("button",{className:A.button,onClick:()=>{null==d||d(n)}},r().createElement(_.Bj,{lib:"antd",icon:"bug"})),p&&!f&&v&&r().createElement("button",{className:`${A.button} ${A["button-lucide"]}`,title:k(x.FEEDBACK),onClick:()=>null==m?void 0:m(b.viewId)},r().createElement(_.Bj,y.mJ)),!(!b.viewId||b.withContexts||!l)&&r().createElement("button",{className:`${A.button} ${A["button-lucide"]}`,title:k(x.OPEN_PREVIEW),onClick:()=>{window.open(`${(0,o.getBasePath)().slice(0,-1)}${(0,I.Q)(l,{viewId:b.viewId})}`,"_blank")}},r().createElement(_.Bj,{lib:"lucide",icon:"external-link"})),r().createElement("button",{className:A.button,title:k(x.FULLSCREEN),onClick:h},r().createElement(_.Bj,{lib:"easyops",icon:"expand"})))}(0,i.initializeI18n)(S,{en:{FULLSCREEN:"Fullscreen",FEEDBACK:"Feedback",OPEN_PREVIEW:"Open preview"},zh:{FULLSCREEN:"全屏",FEEDBACK:"反馈",OPEN_PREVIEW:"打开预览"}})},90108:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".human-action--WMMvJhMD{margin-top:22px}.canvas--mQCtCDkd{display:flex;justify-content:center;align-items:center;padding:24px 12px;background:rgba(62,67,102,0.05);box-shadow:0px 1px 0px 0px rgba(255,255,255,0.5);border-radius:9px}",""]),i.locals={"human-action":"human-action--WMMvJhMD",canvas:"canvas--mQCtCDkd"};const l=i},91525:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,'.shine-text--t2t9tIJp{color:transparent;background:linear-gradient(to right,var(--shine-text-color) 0%,var(--shine-text-color) 40%,var(--shine-text-highlight-color) 50%,var(--shine-text-color) 60%,var(--shine-text-color) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:shineText--ycIJ4nxc 2s infinite linear}@keyframes shineText--ycIJ4nxc{0%{background-position:-50% 50%}100%{background-position:-250% 50%}}.markdown--t5EHw6k4 a{color:var(--elevo-color-brand)}.markdown--t5EHw6k4 a:hover{color:var(--elevo-color-brand-hover)}.markdown--t5EHw6k4 a:active{color:var(--elevo-color-brand-active)}.markdown--t5EHw6k4 .shiki{font-family:"Fira Code","Fira Mono",Menlo,Consolas,"DejaVu Sans Mono",monospace;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none;font-size:13px;padding:1em;margin:0.5em 0;overflow-x:auto;border-radius:9px}.markdown--t5EHw6k4 .shiki.light-plus{background:hsl(230,1%,98%)!important}.markdown--t5EHw6k4 table{width:100%;overflow-x:auto;border-collapse:collapse}.markdown--t5EHw6k4 tr{border-top:1px solid #ccd1de}.markdown--t5EHw6k4 td,.markdown--t5EHw6k4 th{border:1px solid #ccd1de;padding:6px 13px}.markdown--t5EHw6k4{overflow-wrap:break-word}.markdown--t5EHw6k4:not(:first-child){margin-top:6px}.markdown--t5EHw6k4 p{margin:1em 0}.markdown--t5EHw6k4 > :first-child,\n.markdown-wrapper--TGg3xHyX > :first-child{margin-top:0}.markdown--t5EHw6k4 > :last-child,\n.markdown-wrapper--TGg3xHyX > :last-child{margin-bottom:0}.table-container--hekbaxrD{padding:8px 8px 10px;border-radius:12px;border:1px solid #e2e2ec;background:#ffffff}.table-container--hekbaxrD:not(:first-child){margin-top:6px}',""]),i.locals={"shine-text":"shine-text--t2t9tIJp",shineText:"shineText--ycIJ4nxc",markdown:"markdown--t5EHw6k4","markdown-wrapper":"markdown-wrapper--TGg3xHyX","table-container":"table-container--hekbaxrD"};const l=i},91797:(e,t,n)=>{n.d(t,{G:()=>i});var a=n(81752),r=n(18769);const o=new Map;function i(e,t){const[n,i]=(0,r.useState)(!0);return(0,r.useEffect)((()=>{if(!e||!t)return void i(!0);let n=o.get(e);void 0===n&&(n=async function(e){var t;const n=await(0,a.y)("LLM_WEB_VIEW_INFO@EASYOPS",e,{fields:"feedback.instanceId"},{priority:"low"});return!(null==n||null===(t=n.feedback)||void 0===t||!t.length)}(e),o.set(e,n));let r=!1;return n.then((e=>{r||i(e)})),()=>{r=!0}}),[e,t]),n}},94625:(e,t,n)=>{n.d(t,{k:()=>O});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(52616),s=n(72591),c=n.n(s),d=n(1740),u=n.n(d),p=n(88128),m=n.n(p),E=n(30855),b=n.n(E),f=n(93051),v=n.n(f),h=n(73656),g=n.n(h),T=n(8590),A={};A.styleTagTransform=g(),A.setAttributes=b(),A.insert=m().bind(null,"head"),A.domAPI=u(),A.insertStyleElement=v(),c()(T.A,A);const _=T.A&&T.A.locals?T.A.locals:void 0;let x=function(e){return e.YES="YES",e.NO="NO",e.SUBMIT="SUBMIT",e.RESET="RESET",e.FEEDBACK_NODE_TITLE="FEEDBACK_NODE_TITLE",e.PROBLEM_FEEDBACK="PROBLEM_FEEDBACK",e.PROBLEM_FEEDBACK_PLACEHOLDER="PROBLEM_FEEDBACK_PLACEHOLDER",e.IS_THE_TASK_PLAN_COMPLETE="IS_THE_TASK_PLAN_COMPLETE",e.IS_THE_TASK_PLAN_LOGICALLY_CORRECT="IS_THE_TASK_PLAN_LOGICALLY_CORRECT",e.ARE_THE_TASK_PLAN_STEPS_CONCISE="ARE_THE_TASK_PLAN_STEPS_CONCISE",e.ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE="ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE",e.IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT="IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT",e.THANKS_FOR_YOUR_FEEDBACK="THANKS_FOR_YOUR_FEEDBACK",e}({});const S="bricks/ai-portal/NodeFeedback",k=l.i18n.getFixedT(null,S);var w=n(30672),y=n(40177),C=n(76720);let I;function R(){return I||(I=[{label:`1. ${k(x.IS_THE_TASK_PLAN_COMPLETE)}`,value:"计划完备",group:"plan"},{label:`2. ${k(x.IS_THE_TASK_PLAN_LOGICALLY_CORRECT)}`,value:"逻辑正确",group:"plan"},{label:`3. ${k(x.ARE_THE_TASK_PLAN_STEPS_CONCISE)}`,value:"步骤精简",group:"plan"},{label:`4. ${k(x.ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE)}`,value:"结论准确",group:"result"},{label:`5. ${k(x.IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT)}`,value:"支撑证据充足",group:"result"}]),I}function O(e){let{className:t}=e;const{submittingFeedback:n,submittedFeedback:o,setShowFeedback:l,onSubmitFeedback:s}=(0,a.useContext)(C.j),c=(0,a.useRef)(null),d=R(),[u,p]=(0,a.useState)(!1),m=(0,a.useCallback)((e=>{var t,n;if(e.preventDefault(),p(!0),null===(t=c.current)||void 0===t||!t.reportValidity())return;const a=new FormData(c.current),r=[],o=[];for(let e=0;e<d.length;e++){const t=a.get(`feedback-check-${e}`);t&&("plan"===d[e].group?r.push(t):o.push(t))}s({plan:r,result:o,feedback:null!==(n=a.get("feedback"))&&void 0!==n?n:""})}),[d,s]),E=(0,a.useCallback)((e=>{var t;e.preventDefault(),p(!1),null===(t=c.current)||void 0===t||t.reset()}),[]);return o?r().createElement("div",{className:`${_["node-feedback"]} ${_.submitted}`},k(x.THANKS_FOR_YOUR_FEEDBACK)):r().createElement("div",{className:i()(_["node-feedback"],t)},r().createElement("div",{className:_.heading},r().createElement("div",{className:_.title},k(x.FEEDBACK_NODE_TITLE)),r().createElement(w.Py,{icon:y.LQ,variant:"mini",onClick:()=>l(!1)})),r().createElement("form",{className:i()(_.form,{[_.validate]:u}),ref:c},d.map(((e,t)=>r().createElement("div",{key:t,className:`${_["form-item"]} ${_.horizontal}`},r().createElement("div",{className:_.label},e.label),r().createElement("div",{className:_.options},r().createElement("label",{className:_.radio},r().createElement("input",{type:"radio",required:!0,name:`feedback-check-${t}`,value:e.value}),r().createElement("span",null,k(x.YES))),r().createElement("label",{className:_.radio},r().createElement("input",{type:"radio",required:!0,name:`feedback-check-${t}`,value:""}),r().createElement("span",null,k(x.NO))))))),r().createElement("div",{className:`${_["form-item"]} ${_.vertical}`},r().createElement("label",{htmlFor:"feedback-content"},k(x.PROBLEM_FEEDBACK)),r().createElement("textarea",{id:"feedback-content",name:"feedback",placeholder:k(x.PROBLEM_FEEDBACK_PLACEHOLDER),rows:2})),r().createElement("div",{className:_.submit},r().createElement(w.Gx,{themeVariant:"elevo",type:"text",onClick:E},k(x.RESET)),r().createElement(w.Gx,{themeVariant:"elevo",type:"primary",shape:"round",onClick:m,disabled:n},k(x.SUBMIT)))))}(0,l.initializeI18n)(S,{en:{YES:"Yes",NO:"No",SUBMIT:"Submit",RESET:"Reset",FEEDBACK_NODE_TITLE:"How do you think Elevo has done this task?",PROBLEM_FEEDBACK:"Problem feedback",PROBLEM_FEEDBACK_PLACEHOLDER:"Please describe the problem you encountered.",IS_THE_TASK_PLAN_COMPLETE:"Is the task plan complete:",IS_THE_TASK_PLAN_LOGICALLY_CORRECT:"Is the task plan logically correct:",ARE_THE_TASK_PLAN_STEPS_CONCISE:"Are the task plan steps concise:",ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE:"Are the analytical conclusions accurate:",IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT:"Is the evidence supporting the conclusions sufficient:",THANKS_FOR_YOUR_FEEDBACK:"Thank you for helping us become better."},zh:{YES:"是",NO:"否",SUBMIT:"提交",RESET:"重置",FEEDBACK_NODE_TITLE:"Elevo 完成这项任务的效果如何?",PROBLEM_FEEDBACK:"问题反馈",PROBLEM_FEEDBACK_PLACEHOLDER:"欢迎留下您的意见",IS_THE_TASK_PLAN_COMPLETE:"任务计划是否完备:",IS_THE_TASK_PLAN_LOGICALLY_CORRECT:"任务计划是否逻辑正确:",ARE_THE_TASK_PLAN_STEPS_CONCISE:"任务计划步骤是否精简:",ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE:"分析结论是否准确:",IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT:"结论的支撑证据是否充足:",THANKS_FOR_YOUR_FEEDBACK:"感谢你帮我们变得更好。"}})},98153:(e,t,n)=>{n.d(t,{A:()=>O});var a=n(89575),r=n(18769),o=n.n(r),i=n(52616),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(78697),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;var _=n(30672),x=n(76720),S=n(40177);let k=function(e){return e.WATCH_AGAIN="WATCH_AGAIN",e.TRY_IT_OUT="TRY_IT_OUT",e.CASE_REPLAYING="CASE_REPLAYING",e.CASE_REPLAY_FINISHED="CASE_REPLAY_FINISHED",e.SKIP_TO_RESULTS="SKIP_TO_RESULTS",e.OTHER_CASES="OTHER_CASES",e.PROJECT_TIPS="PROJECT_TIPS",e.GET_STARTED_WITH_PROJECTS_PREFIX="GET_STARTED_WITH_PROJECTS_PREFIX",e.PROJECTS="PROJECTS",e.GET_STARTED_WITH_PROJECTS_SUFFIX="GET_STARTED_WITH_PROJECTS_SUFFIX",e}({});const w="bricks/ai-portal/NodeReplay",y=i.i18n.getFixedT(null,w),C=n.p+"images/b567cca3.png";var I=n(53373),R=n.n(I);function O(e){let{finished:t,ui:n}=e;const{conversationId:i,showCases:l,exampleProjects:s,skipToResults:c,watchAgain:d,tryItOut:u}=(0,r.useContext)(x.j);return o().createElement("div",{className:R()(A["node-replay"],{[A.finished]:t,[A.chat]:"chat"===n})},o().createElement("div",{className:A.bar},o().createElement("div",{className:A.label},y(t?k.CASE_REPLAY_FINISHED:k.CASE_REPLAYING)),o().createElement("div",{className:A.buttons},t?o().createElement(_.Gx,{themeVariant:"elevo",onClick:d},y(k.WATCH_AGAIN)):o().createElement(_.Gx,{themeVariant:"elevo",onClick:c},y(k.SKIP_TO_RESULTS)),o().createElement(_.Gx,{type:"primary",themeVariant:"elevo",onClick:u},y(k.TRY_IT_OUT)))),t&&o().createElement("div",{className:A.content},!l||l.length>0&&o().createElement(o().Fragment,null,o().createElement("div",{className:A.heading},y(k.OTHER_CASES)),l?o().createElement("ul",{className:A.cases},l.filter((e=>e.conversationId!==i)).slice(0,3).map((e=>o().createElement("li",{key:e.conversationId},o().createElement(_.p9,{caseTitle:e.title,summary:e.summary,url:e.url}))))):o().createElement(_.Bj,(0,a.A)({className:A.loading},S.Xc))),!s||s.length>0&&o().createElement(o().Fragment,null,o().createElement("div",{className:A.heading},y(k.GET_STARTED_WITH_PROJECTS_PREFIX),o().createElement("span",{className:A.tag},y(k.PROJECTS)),y(k.GET_STARTED_WITH_PROJECTS_SUFFIX)),o().createElement("div",{className:A.tips},y(k.PROJECT_TIPS)),s?o().createElement("ul",{className:A.projects},s.slice(0,2).map((e=>o().createElement("li",{key:e.instanceId},o().createElement(_.EM,{className:A.project,url:e.url},o().createElement("img",{src:C,width:16,height:16}),e.name))))):o().createElement(_.Bj,(0,a.A)({className:A.loading},S.Xc)))))}(0,i.initializeI18n)(w,{en:{WATCH_AGAIN:"Watch again",TRY_IT_OUT:"Try it out",CASE_REPLAYING:"The case is replaying...",CASE_REPLAY_FINISHED:"The case replay has finished.",SKIP_TO_RESULTS:"Skip to results",OTHER_CASES:"Other cases",PROJECT_TIPS:"Start your project collaboration journey and achieve shared goals with team members and AI employees.",GET_STARTED_WITH_PROJECTS_PREFIX:"Get started with ",PROJECTS:"Projects",GET_STARTED_WITH_PROJECTS_SUFFIX:""},zh:{WATCH_AGAIN:"再次观看",TRY_IT_OUT:"尝试同款",CASE_REPLAYING:"案例回放中...",CASE_REPLAY_FINISHED:"案例回放完成",SKIP_TO_RESULTS:"跳转到结果",OTHER_CASES:"其他案例",PROJECT_TIPS:"开启项目协作之旅,和团队成员及多位AI数字人一起实现共同制定的目标。",GET_STARTED_WITH_PROJECTS_PREFIX:"开启 ",PROJECTS:"项目",GET_STARTED_WITH_PROJECTS_SUFFIX:" 体验"}})}}]);
2
- //# sourceMappingURL=6995.65da5073.js.map