@next-bricks/ai-portal 0.39.7 → 0.40.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 (100) hide show
  1. package/dist/bricks.json +32 -19
  2. package/dist/chunks/3506.da6e43af.js +2 -0
  3. package/dist/chunks/3506.da6e43af.js.map +1 -0
  4. package/dist/chunks/3554.65e56ba5.js +2 -0
  5. package/dist/chunks/3554.65e56ba5.js.map +1 -0
  6. package/dist/chunks/{382.673901e0.js → 382.d2e3f46f.js} +2 -2
  7. package/dist/chunks/382.d2e3f46f.js.map +1 -0
  8. package/dist/chunks/453.e0c39d75.js +2 -0
  9. package/dist/chunks/453.e0c39d75.js.map +1 -0
  10. package/dist/chunks/{4837.ef36f6e2.js → 4837.e8c87fc9.js} +2 -2
  11. package/dist/chunks/{4837.ef36f6e2.js.map → 4837.e8c87fc9.js.map} +1 -1
  12. package/dist/chunks/6862.32630cc8.js +3 -0
  13. package/dist/chunks/6862.32630cc8.js.map +1 -0
  14. package/dist/chunks/7493.b181babb.js +2 -0
  15. package/dist/chunks/7493.b181babb.js.map +1 -0
  16. package/dist/chunks/7774.505f9191.js +2 -0
  17. package/dist/chunks/7774.505f9191.js.map +1 -0
  18. package/dist/chunks/8176.2a3975e1.js +2 -0
  19. package/dist/chunks/8176.2a3975e1.js.map +1 -0
  20. package/dist/chunks/9535.ff0f82a1.js +3 -0
  21. package/dist/chunks/9535.ff0f82a1.js.map +1 -0
  22. package/dist/chunks/{7218.13c19b72.js → 9599.ffd509c6.js} +2 -2
  23. package/dist/chunks/{7218.13c19b72.js.map → 9599.ffd509c6.js.map} +1 -1
  24. package/dist/chunks/activity-timeline.a7da73e9.js +2 -0
  25. package/dist/chunks/activity-timeline.a7da73e9.js.map +1 -0
  26. package/dist/chunks/chat-box.37df7bc1.js +2 -0
  27. package/dist/chunks/chat-box.37df7bc1.js.map +1 -0
  28. package/dist/chunks/chat-input.2bd1c748.js +3 -0
  29. package/dist/chunks/chat-input.2bd1c748.js.map +1 -0
  30. package/dist/chunks/goal-card-list.9866674c.js +3 -0
  31. package/dist/chunks/goal-card-list.9866674c.js.map +1 -0
  32. package/dist/chunks/main.1b2393f2.js +2 -0
  33. package/dist/chunks/{main.a10d6485.js.map → main.1b2393f2.js.map} +1 -1
  34. package/dist/chunks/preview-container.fa54ae91.js +2 -0
  35. package/dist/chunks/preview-container.fa54ae91.js.map +1 -0
  36. package/dist/chunks/project-conversations.d4771579.js +3 -0
  37. package/dist/chunks/project-conversations.d4771579.js.LICENSE.txt +5 -0
  38. package/dist/chunks/project-conversations.d4771579.js.map +1 -0
  39. package/dist/examples.json +12 -6
  40. package/dist/index.890818f5.js +2 -0
  41. package/dist/index.890818f5.js.map +1 -0
  42. package/dist/manifest.json +220 -153
  43. package/dist/types.json +1128 -78
  44. package/dist-types/activity-timeline/i18n.d.ts +25 -0
  45. package/dist-types/activity-timeline/index.d.ts +16 -0
  46. package/dist-types/activity-timeline/index.spec.d.ts +1 -0
  47. package/dist-types/activity-timeline/interfaces.d.ts +85 -0
  48. package/dist-types/bootstrap.d.ts +2 -0
  49. package/dist-types/chat-box/index.d.ts +1 -5
  50. package/dist-types/chat-input/i18n.d.ts +15 -0
  51. package/dist-types/chat-input/index.d.ts +30 -0
  52. package/dist-types/chat-input/index.spec.d.ts +1 -0
  53. package/dist-types/chat-stream/useConversationStream.d.ts +0 -2
  54. package/dist-types/chat-stream/useTaskStream.d.ts +0 -1
  55. package/dist-types/cruise-canvas/NodeJob/NodeJob.d.ts +2 -1
  56. package/dist-types/cruise-canvas/interfaces.d.ts +3 -1
  57. package/dist-types/cruise-canvas/useConversationDetail.d.ts +1 -1
  58. package/dist-types/cruise-canvas/useTaskDetail.d.ts +1 -1
  59. package/dist-types/project-conversations/index.d.ts +7 -1
  60. package/dist-types/shared/ChatBox/ChatBox.d.ts +1 -2
  61. package/dist-types/shared/ChatBox/i18n.d.ts +2 -6
  62. package/dist-types/shared/RequestHumanAction/RequestHumanAction.d.ts +4 -0
  63. package/dist-types/shared/TaskContext.d.ts +1 -1
  64. package/dist-types/shared/bricks.d.ts +2 -0
  65. package/dist-types/shared/interfaces.d.ts +3 -3
  66. package/docs/activity-timeline.md +54 -0
  67. package/docs/chat-input.md +9 -0
  68. package/package.json +2 -2
  69. package/dist/chunks/1967.118ab1ff.js +0 -2
  70. package/dist/chunks/1967.118ab1ff.js.map +0 -1
  71. package/dist/chunks/3554.d27ba6a7.js +0 -2
  72. package/dist/chunks/3554.d27ba6a7.js.map +0 -1
  73. package/dist/chunks/382.673901e0.js.map +0 -1
  74. package/dist/chunks/453.bb828a7c.js +0 -2
  75. package/dist/chunks/453.bb828a7c.js.map +0 -1
  76. package/dist/chunks/4994.58c51a7a.js +0 -2
  77. package/dist/chunks/4994.58c51a7a.js.map +0 -1
  78. package/dist/chunks/6977.3f6d97bc.js +0 -3
  79. package/dist/chunks/6977.3f6d97bc.js.map +0 -1
  80. package/dist/chunks/71.41081144.js +0 -2
  81. package/dist/chunks/71.41081144.js.map +0 -1
  82. package/dist/chunks/7774.4418c30b.js +0 -2
  83. package/dist/chunks/7774.4418c30b.js.map +0 -1
  84. package/dist/chunks/8794.dc43f083.js +0 -3
  85. package/dist/chunks/8794.dc43f083.js.map +0 -1
  86. package/dist/chunks/chat-box.95d5030b.js +0 -2
  87. package/dist/chunks/chat-box.95d5030b.js.map +0 -1
  88. package/dist/chunks/goal-card-list.4fdfa5cb.js +0 -3
  89. package/dist/chunks/goal-card-list.4fdfa5cb.js.map +0 -1
  90. package/dist/chunks/main.a10d6485.js +0 -2
  91. package/dist/chunks/preview-container.260a045a.js +0 -2
  92. package/dist/chunks/preview-container.260a045a.js.map +0 -1
  93. package/dist/chunks/project-conversations.972403a2.js +0 -3
  94. package/dist/chunks/project-conversations.972403a2.js.map +0 -1
  95. package/dist/index.6133ae77.js +0 -2
  96. package/dist/index.6133ae77.js.map +0 -1
  97. /package/dist/chunks/{6977.3f6d97bc.js.LICENSE.txt → 6862.32630cc8.js.LICENSE.txt} +0 -0
  98. /package/dist/chunks/{8794.dc43f083.js.LICENSE.txt → 9535.ff0f82a1.js.LICENSE.txt} +0 -0
  99. /package/dist/chunks/{goal-card-list.4fdfa5cb.js.LICENSE.txt → chat-input.2bd1c748.js.LICENSE.txt} +0 -0
  100. /package/dist/chunks/{project-conversations.972403a2.js.LICENSE.txt → goal-card-list.9866674c.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/preview-container.fa54ae91.js","mappings":"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","sources":["webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./src/preview-container/styles.module.css?836e","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///./src/preview-container/styles.module.css","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///./src/preview-container/index.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///./src/preview-container/i18n.ts"],"sourcesContent":["import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\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\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ai-portal\\\\.preview-container{display:block;background:rgba(247,248,250,1)}.loading--uD2jY9vX{position:absolute;top:50%;left:50%;font-size:48px;color:var(--palette-gray-5);margin:0 -24px}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"loading\": `loading--uD2jY9vX`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import React, { Suspense, use, useEffect, useMemo, useRef } from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { unstable_createRoot } from \"@next-core/runtime\";\nimport type { ParseResult } from \"@next-shared/tsx-parser\";\nimport { convertTsx, type ConvertResult } from \"@next-shared/tsx-converter\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type {\n EoPageTitle,\n PageTitleProps,\n} from \"@next-bricks/basic/page-title\";\nimport type {\n EoMainView,\n MainViewProps,\n} from \"@next-bricks/containers/main-view\";\nimport type {\n EoNarrowView,\n NarrowViewProps,\n} from \"@next-bricks/containers/narrow-view\";\nimport { uniqueId } from \"lodash\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styles from \"./styles.module.css\";\nimport { getRemoteTsxParserWorker } from \"../shared/workers/tsxParser.js\";\nimport { createPortal } from \"../cruise-canvas/utils/createPortal.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedPageTitle = wrapBrick<EoPageTitle, PageTitleProps>(\n \"eo-page-title\"\n);\nconst WrappedMainView = wrapBrick<EoMainView, MainViewProps>(\"eo-main-view\");\nconst WrappedNarrowView = wrapBrick<EoNarrowView, NarrowViewProps>(\n \"eo-narrow-view\"\n);\n\nconst { defineElement, property } = createDecorators();\n\nexport interface PreviewContainerProps {\n source?: string;\n}\n\n/**\n * 构件 `ai-portal.preview-container`\n */\nexport\n@defineElement(\"ai-portal.preview-container\", {\n shadowOptions: false,\n})\nclass PreviewContainer\n extends ReactNextElement\n implements PreviewContainerProps\n{\n @property({ attribute: false })\n accessor source: string | undefined;\n\n #rootId = uniqueId();\n\n render() {\n return (\n <Suspense\n fallback={\n <WrappedIcon\n lib=\"antd\"\n icon=\"loading-3-quarters\"\n spinning\n className={styles.loading}\n />\n }\n >\n <PreviewContainerComponent rootId={this.#rootId} source={this.source} />\n </Suspense>\n );\n }\n}\n\ninterface PreviewContainerComponentProps extends PreviewContainerProps {\n rootId: string;\n}\n\nfunction PreviewContainerComponent({\n rootId,\n source,\n}: PreviewContainerComponentProps) {\n const parsedResultPromise = useMemo(() => {\n if (!source) {\n return Promise.resolve(null);\n }\n return parse(source).catch((error) => {\n // eslint-disable-next-line no-console\n console.error(\"Failed to parse view:\", error);\n return null;\n });\n }, [source]);\n\n const parsedResult = use(parsedResultPromise);\n\n const convertedResultPromise = useMemo(() => {\n if (!parsedResult) {\n return Promise.resolve(null);\n }\n return convertTsx(parsedResult, {\n rootId,\n expanded: true,\n }).catch((error) => {\n // eslint-disable-next-line no-console\n console.error(\"Failed to convert view:\", error);\n return null;\n });\n }, [parsedResult, rootId]);\n\n const convertedResult = use(convertedResultPromise);\n\n return (\n <RenderComponent\n rootId={rootId}\n pageTitle={parsedResult?.title}\n convertedResult={convertedResult}\n />\n );\n}\n\ninterface RenderComponentProps {\n rootId: string;\n pageTitle?: string;\n convertedResult: ConvertResult | null;\n}\n\nfunction RenderComponent({\n rootId,\n pageTitle,\n convertedResult,\n}: RenderComponentProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const rootRef = useRef<Awaited<\n ReturnType<typeof unstable_createRoot>\n > | null>(null);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) {\n return;\n }\n const portal = createPortal(rootId);\n const root = unstable_createRoot(container, {\n portal,\n supportsUseChildren: true,\n } as any);\n rootRef.current = root;\n return () => {\n root.unmount();\n portal.remove();\n rootRef.current = null;\n };\n }, [rootId]);\n\n useEffect(() => {\n if (!convertedResult) {\n return;\n }\n const { brick, context, functions, templates } = convertedResult;\n rootRef.current?.render(brick, { context, functions, templates });\n }, [convertedResult]);\n\n return (\n <WrappedNarrowView size=\"large\" className={styles.container}>\n <WrappedMainView>\n <WrappedPageTitle\n slot=\"pageTitle\"\n pageTitle={pageTitle || t(K.UNTITLED)}\n />\n <div className={styles.main} ref={containerRef} data-root-id={rootId} />\n </WrappedMainView>\n </WrappedNarrowView>\n );\n}\n\nasync function parse(source: string): Promise<ParseResult> {\n const worker = await getRemoteTsxParserWorker();\n const result = await worker.parse(source);\n return result;\n}\n","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n UNTITLED = \"UNTITLED\",\n}\n\nconst en: Locale = {\n UNTITLED: \"Untitled\",\n};\n\nconst zh: Locale = {\n UNTITLED: \"无标题\",\n};\n\nexport const NS = \"bricks/ai-portal/preview-container\";\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"],"names":["toPropertyKey","t","i","e","Symbol","toPrimitive","call","r","TypeError","String","_assertClassBrand","n","has","arguments","length","_typeof","o","iterator","constructor","prototype","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","undefined","_checkInRHS","Object","module","exports","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","join","modules","media","dedupe","supports","layer","alreadyImportedModules","k","id","_k","push","___CSS_LOADER_EXPORT___","setFunctionName","description","defineProperty","configurable","value","applyDecs2311","a","c","u","s","f","l","p","d","metadata","m","h","create","y","v","g","apply","b","applyDec","w","D","S","j","E","I","P","F","get","set","getOwnPropertyDescriptor","Error","name","N","O","z","A","H","K","kind","addInitializer","bind","access","init","unshift","splice","enumerable","checkInRHS","initializeI18n","NS","locales","WrappedIcon","wrapBrick","WrappedPageTitle","WrappedMainView","WrappedNarrowView","defineElement","property","createDecorators","_PreviewContainer","_A","WeakMap","_rootId","PreviewContainer","ReactNextElement","_classPrivateFieldInitSpec","_init_source","_init_extra_source","uniqueId","source","_classPrivateFieldGet","_classPrivateFieldSet","render","React","Suspense","fallback","lib","icon","spinning","className","styles","loading","PreviewContainerComponent","rootId","_ref","parsedResultPromise","useMemo","async","worker","getRemoteTsxParserWorker","parse","catch","error","console","Promise","resolve","parsedResult","use","convertedResultPromise","convertTsx","expanded","convertedResult","RenderComponent","pageTitle","title","_ref2","containerRef","useRef","rootRef","useEffect","container","current","portal","createPortal","root","unstable_createRoot","supportsUseChildren","unmount","remove","_rootRef$current","brick","context","functions","templates","size","slot","UNTITLED","main","ref","_PreviewContainer2","_initClass","_applyDecs","shadowOptions","attribute","_classPrivateFieldGet2","obj","privateMap","_checkPrivateRedeclaration","privateCollection","_classPrivateFieldSet2","en","zh","i18n","getFixedT"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ /*! For license information please see project-conversations.d4771579.js.LICENSE.txt */
2
+ (globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2052,2697],{465:(t,e,n)=>{"use strict";n.d(e,{c:()=>l,P:()=>u});var i=n(21302),r=n(87117);const a="libs-datetime";let o=function(t){return t.TODAY="TODAY",t.YESTERDAY="YESTERDAY",t.FUTURE_AFTER="FUTURE_AFTER",t.FORMAT_MEDIUM_DATETIME="FORMAT_MEDIUM_DATETIME",t.FORMAT_MEDIUM_DATE="FORMAT_MEDIUM_DATE",t.FORMAT_SHORT_DATETIME="FORMAT_SHORT_DATETIME",t.FORMAT_SHORT_DATE="FORMAT_SHORT_DATE",t.FORMAT_SHORT_DAY_DATETIME="FORMAT_SHORT_DAY_DATETIME",t.FORMAT_SHORT_DAY_DATE="FORMAT_SHORT_DAY_DATE",t.SECONDS="SECONDS",t.MILL_SECONDS="MILL_SECONDS",t.MINUTES="MINUTES",t.HOURS="HOURS",t.DAYS="DARS",t.MONTHS="MONTHS",t}({});const s={[o.YESTERDAY]:"Yesterday",[o.TODAY]:"Today",[o.FUTURE_AFTER]:"After {{time}}",[o.FORMAT_MEDIUM_DATETIME]:"LLL",[o.FORMAT_MEDIUM_DATE]:"LL",[o.FORMAT_SHORT_DATETIME]:"MMM D ah:mm",[o.FORMAT_SHORT_DATE]:"MMM D",[o.FORMAT_SHORT_DAY_DATETIME]:"MMM D HH:mm",[o.FORMAT_SHORT_DAY_DATE]:"MMM D",[o.MONTHS]:"months",[o.HOURS]:"hours",[o.SECONDS]:"seconds",[o.MILL_SECONDS]:"millseconds",[o.DAYS]:"days",[o.MINUTES]:"minutes"},c={[o.YESTERDAY]:"昨天",[o.TODAY]:"今天",[o.FUTURE_AFTER]:"{{time}}后",[o.FORMAT_MEDIUM_DATETIME]:"LL ah:mm",[o.FORMAT_MEDIUM_DATE]:"LL",[o.FORMAT_SHORT_DATETIME]:"MMMD日 ah:mm",[o.FORMAT_SHORT_DATE]:"MMMD日",[o.FORMAT_SHORT_DAY_DATETIME]:"MMMD日 HH:mm",[o.FORMAT_SHORT_DAY_DATE]:"MMMD日",[o.MONTHS]:"个月",[o.HOURS]:"小时",[o.SECONDS]:"秒",[o.MILL_SECONDS]:"毫秒",[o.DAYS]:"天",[o.MINUTES]:"分钟"};(0,r.initializeI18n)(a,{en:s,zh:c});let l=function(t){return t.full="full",t.default="default",t.relative="relative",t.past="past",t.future="future",t.accurate="accurate",t.auto="auto",t}({});const u=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.auto,n=arguments.length>2?arguments[2]:void 0;if(null==t||t===-1/0||t===1/0)return null;const s=i(t),c=i().add(0),u="date"===n?"LL":"LL HH:mm",d=r.i18n.t(`${a}:${"date"===n?o.FORMAT_MEDIUM_DATE:o.FORMAT_MEDIUM_DATETIME}`),f=r.i18n.t(`${a}:${"date"===n?o.FORMAT_SHORT_DATE:o.FORMAT_SHORT_DATETIME}`),p=r.i18n.t(`${a}:${"date"===n?o.FORMAT_SHORT_DAY_DATE:o.FORMAT_SHORT_DAY_DATETIME}`),A="date"===n?"LL":"LL HH:mm:ss";let m;switch(e){case l.full:m=s.format(u);break;case l.default:m=s.format(A);break;case l.relative:{const t=+s-+c;m=t<=0?i.duration(t).humanize(!0):r.i18n.t(`${a}:${o.FUTURE_AFTER}`,{time:i.duration(t).humanize()});break}case l.past:m=i.duration(Math.min(+s-+c,0)).humanize(!0);break;case l.future:m=r.i18n.t(`${a}:${o.FUTURE_AFTER}`,{time:i.duration(Math.max(+s-+c,0)).humanize()});break;case l.accurate:m=(()=>{const t=+s.diff(c,"days",!0).toFixed(1);let e="";const i=s.year()<c.year()?"lastYear":t<-2||s.isBefore(c.clone().add(-1,"day"),"day")?"twoDaysBefore":s.isSame(c.clone().add(-1,"day"),"day")?"yesterday":s.isSame(c,"day")?"sameDay":t<2&&s.isSame(c.clone().add(1,"day"),"day")?"nextDay":t<7?"nextWeek":"default";switch(i){case"sameDay":case"yesterday":e=`${r.i18n.t(`${a}:${"yesterday"===i?o.YESTERDAY:o.TODAY}`)}${"date"===n?"":` ${s.format("HH:mm")}`}`;break;case"lastYear":default:e=s.format(u);break;case"twoDaysBefore":e=s.format(p)}return e})();break;default:m=s.format(s.year()===c.year()?f:d)}return m}},5536:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(12559);function r(t,e,n){return n((0,i.A)(t,e))}},11369:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(17545);function r(t){var e=function(t){if("object"!=(0,i.A)(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=(0,i.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==(0,i.A)(e)?e:e+""}},12559:(t,e,n)=>{"use strict";function i(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}n.d(e,{A:()=>i})},17545:(t,e,n)=>{"use strict";function i(t){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}n.d(e,{A:()=>i})},26902:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(17545);function r(t){if(Object(t)!==t)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==t?(0,i.A)(t):"null"));return t}},36758:t=>{"use strict";t.exports=function(t){return t[1]}},40935:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",i=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),i&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),i&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,i,r,a){"string"==typeof t&&(t=[[null,t,void 0]]);var o={};if(i)for(var s=0;s<this.length;s++){var c=this[s][0];null!=c&&(o[c]=!0)}for(var l=0;l<t.length;l++){var u=[].concat(t[l]);i&&o[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),r&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=r):u[4]="".concat(r)),e.push(u))}},e}},53373:(t,e)=>{var n;!function(){"use strict";var i={}.hasOwnProperty;function r(){for(var t="",e=0;e<arguments.length;e++){var n=arguments[e];n&&(t=o(t,a(n)))}return t}function a(t){if("string"==typeof t||"number"==typeof t)return t;if("object"!=typeof t)return"";if(Array.isArray(t))return r.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var e="";for(var n in t)i.call(t,n)&&t[n]&&(e=o(e,n));return e}function o(t,e){return e?t?t+" "+e:t+e:t}t.exports?(r.default=r,t.exports=r):void 0===(n=function(){return r}.apply(e,[]))||(t.exports=n)}()},57855:(t,e,n)=>{"use strict";n.r(e),n.d(e,{ProjectConversations:()=>V});var i,r=n(74635),a=n(70918),o=n(26902),s=n(5536),c=n(86121),l=n(70829),u=n(62740),d=n(18769),f=n.n(d),p=n(7921),A=n(11280),m=(n(65168),n(87117)),T=n(465),h=n(53373),E=n.n(h),M=n(71813),v=n(79286),g=n(98343);let _,y,O,D,b,R,S,k,w,I,x,F,H,L,N,C,Y;(0,m.initializeI18n)(M.NS,M.I);const U=(0,A.wrapBrick)("eo-link"),j=(0,A.wrapBrick)("eo-icon"),z=(0,A.wrapBrick)("eo-easyops-avatar"),P=(0,A.wrapBrick)("eo-mini-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),{defineElement:$,property:W,event:B}=(0,p.createDecorators)();let V;var J=new WeakMap,G=new WeakMap,K=new WeakMap,Q=new WeakMap,q=new WeakMap,X=new WeakSet,Z=new WeakMap,tt=new WeakMap,et=new WeakMap;class nt extends A.ReactNextElement{constructor(){super(...arguments),(0,r.A)(this,X),(0,a.A)(this,J,y(this)),(0,a.A)(this,G,(O(this),D(this))),(0,a.A)(this,K,(b(this),R(this))),(0,a.A)(this,Q,(S(this),k(this))),(0,a.A)(this,q,(w(this),I(this))),(0,a.A)(this,Z,(H(this),t=>{(0,s.A)(X,this,x).emit(t)})),(0,a.A)(this,tt,L(this)),(0,a.A)(this,et,(Y(this),t=>{(0,s.A)(X,this,N).emit(t)}))}get list(){return(0,l.A)(J,this)}set list(t){(0,c.A)(J,this,t)}get urlTemplate(){return(0,l.A)(G,this)}set urlTemplate(t){(0,c.A)(G,this,t)}get actions(){return(0,l.A)(K,this)}set actions(t){(0,c.A)(K,this,t)}get goals(){return(0,l.A)(Q,this)}set goals(t){(0,c.A)(Q,this,t)}render(){return f().createElement(it,{list:this.list,urlTemplate:this.urlTemplate,actions:this.actions,goals:this.goals,onGoalClick:(0,l.A)(Z,this),onActionClick:(0,l.A)(et,this)})}}function it(t){let{list:e,urlTemplate:n,actions:i,goals:r,onGoalClick:a,onActionClick:o}=t;return e?f().createElement("ul",null,e.map((t=>f().createElement("li",{className:"item",key:t.conversationId},f().createElement(rt,{conversation:t,urlTemplate:n,actions:i,goals:r,onGoalClick:a,onActionClick:o}))))):f().createElement("div",{className:"loading"},f().createElement(j,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))}function rt(t){var e;let{conversation:n,urlTemplate:i,actions:r,goals:a,onGoalClick:o,onActionClick:s}=t;const c=(0,d.useRef)(null);(0,d.useEffect)((()=>{const t=c.current;if(!t)return;const e=t=>{t.stopPropagation(),t.preventDefault(),o(n)};return t.addEventListener("click",e),()=>{t.removeEventListener("click",e)}}),[n,o]);const[l,u]=(0,d.useState)(!1);return f().createElement(U,{className:E()("link",{"actions-active":l}),url:(0,g.Q)(i,n)},f().createElement("div",{className:"main"},f().createElement("div",{className:"header"},f().createElement(j,{className:"icon",lib:"easyops",category:"common",icon:"clock"}),f().createElement("div",{className:"title"},n.title)),n.description&&f().createElement("div",{className:"description"},n.description)),a&&f().createElement("div",{className:E()("goal",{global:!n.goalInstanceId}),ref:c},n.goalInstanceId?null===(e=a.find((t=>t.instanceId===n.goalInstanceId)))||void 0===e?void 0:e.title:(0,M.t)(M.K.PROJECT_OVERALL)),f().createElement(z,{className:"avatar",size:"small",nameOrInstanceId:n.username}),f().createElement("div",{className:"operations"},f().createElement(P,{className:"actions",actions:r,onActionClick:t=>{s({action:t.detail,item:n})},onVisibleChange:t=>{u(t.detail)}}),f().createElement("div",{className:"time",title:(0,T.P)(1e3*n.startTime,T.c.full)},(0,T.P)(1e3*n.startTime,T.c.relative))))}i=nt,({e:[y,O,D,b,R,S,k,w,I,x,F,H,L,N,C,Y],c:[V,_]}=(0,u.A)(i,[$("ai-portal.project-conversations",{styleTexts:[v.A]})],[[W({attribute:!1}),1,"list"],[W(),1,"urlTemplate"],[W({attribute:!1}),1,"actions"],[W({attribute:!1}),1,"goals"],[B({type:"goal.click"}),1,"goalClick",t=>(0,l.A)(q,t),(t,e)=>(0,c.A)(q,t,e)],[B({type:"action.click"}),1,"actionClick",t=>(0,l.A)(tt,t),(t,e)=>(0,c.A)(tt,t,e)]],0,(t=>et.has((0,o.A)(t))),A.ReactNextElement)),_()},62740:(t,e,n)=>{"use strict";n.d(e,{A:()=>s});var i=n(17545),r=n(26902);function a(t,e,n){"symbol"==(0,i.A)(e)&&(e=(e=e.description)?"["+e+"]":"");try{Object.defineProperty(t,"name",{configurable:!0,value:n?n+" "+e:e})}catch(t){}return t}var o=n(11369);function s(t,e,n,s,c,l){var u,d,f,p,A,m,T,h=Symbol.metadata||Symbol.for("Symbol.metadata"),E=Object.defineProperty,M=Object.create,v=[M(null),M(null)],g=e.length;function _(e,n,i){return function(r,a){n&&(a=r,r=t);for(var o=0;o<e.length;o++)a=e[o].apply(r,i?[a]:[]);return i?a:r}}function y(t,e,n,i){if("function"!=typeof t&&(i||void 0!==t))throw new TypeError(e+" must "+(n||"be")+" a function"+(i?"":" or undefined"));return t}function O(t,e,n,r,o,s,c,l,f,p,A){function m(t){if(!A(t))throw new TypeError("Attempted to access private element on non-instance")}var T=[].concat(e[0]),h=e[3],M=!c,g=1===o,O=3===o,D=4===o,b=2===o;function R(e,n,i){return function(r,a){return n&&(a=r,r=t),i&&i(r),S[e].call(r,a)}}if(!M){var S={},k=[],w=O?"get":D||g?"set":"value";if(f?(p||g?S={get:a((function(){return h(this)}),r,"get"),set:function(t){e[4](this,t)}}:S[w]=h,p||a(S[w],r,b?"":w)):p||(S=Object.getOwnPropertyDescriptor(t,r)),!p&&!f){if((d=v[+l][r])&&7!=(d^o))throw Error("Decorating two elements with the same name ("+S[w].name+") is not supported yet");v[+l][r]=o<3?1:o}}for(var I=t,x=T.length-1;x>=0;x-=n?2:1){var F=y(T[x],"A decorator","be",!0),H=n?T[x-1]:void 0,L={},N={kind:["field","accessor","method","getter","setter","class"][o],name:r,metadata:u,addInitializer:function(t,e){if(t.v)throw Error("attempted to call addInitializer after decoration was finished");y(e,"An initializer","be",!0),s.push(e)}.bind(null,L)};if(M)d=F.call(H,I,N),L.v=1,y(d,"class decorators","return")&&(I=d);else if(N.static=l,N.private=f,d=N.access={has:f?A.bind():function(t){return r in t}},D||(d.get=f?b?function(t){return m(t),S.value}:R("get",0,m):function(t){return t[r]}),b||O||(d.set=f?R("set",0,m):function(t,e){t[r]=e}),I=F.call(H,g?{get:S.get,set:S.set}:S[w],N),L.v=1,g){if("object"==(0,i.A)(I)&&I)(d=y(I.get,"accessor.get"))&&(S.get=d),(d=y(I.set,"accessor.set"))&&(S.set=d),(d=y(I.init,"accessor.init"))&&k.unshift(d);else if(void 0!==I)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else y(I,(p?"field":"method")+" decorators","return")&&(p?k.unshift(I):S[w]=I)}return o<2&&c.push(_(k,l,1),_(s,l,0)),p||M||(f?g?c.splice(-1,0,R("get",l),R("set",l)):c.push(b?S[w]:y.call.bind(S[w])):E(t,r,S)),I}function D(t){return E(t,h,{configurable:!0,enumerable:!0,value:u})}return void 0!==l&&(u=l[h]),u=M(null==u?null:u),A=[],m=function(t){t&&A.push(_(t))},T=function(e,i){for(var a=0;a<n.length;a++){var s=n[a],l=s[1],u=7&l;if((8&l)==e&&!u==i){var d=s[2],m=!!s[3],T=16&l;O(e?t:t.prototype,s,T,m?"#"+d:(0,o.A)(d),u,u<2?[]:e?p=p||[]:f=f||[],A,!!e,m,i,e&&m?function(e){return(0,r.A)(e)===t}:c)}}},T(8,0),T(0,0),T(8,1),T(0,1),m(f),m(p),d=A,g||D(t),{e:d,get c(){var n=[];return g&&[D(t=O(t,[e],s,t.name,5,n)),_(n,1)]}}}},70829:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(12559);function r(t,e){return t.get((0,i.A)(t,e))}},70918:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(72016);function r(t,e,n){(0,i.A)(t,e),e.set(t,n)}},71813:(t,e,n)=>{"use strict";n.d(e,{I:()=>o,K:()=>r,NS:()=>a,t:()=>s});var i=n(87117);let r=function(t){return t.PROJECT_OVERALL="PROJECT_OVERALL",t}({});const a="bricks/ai-portal/project-conversations",o={en:{PROJECT_OVERALL:"Project overall"},zh:{PROJECT_OVERALL:"项目整体"}},s=i.i18n.getFixedT(null,a)},72016:(t,e,n)=>{"use strict";function i(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(e,{A:()=>i})},74635:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(72016);function r(t,e){(0,i.A)(t,e),e.add(t)}},79286:(t,e,n)=>{"use strict";n.d(e,{A:()=>s});var i=n(36758),r=n.n(i),a=n(40935),o=n.n(a)()(r());o.push([t.id,":host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.link{display:block}.link::part(link){display:flex;align-items:center;gap:16px;padding:12px 24px;color:#262626;background:rgba(255,255,255,0.6);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.link.actions-active::part(link),\n.link::part(link):hover{background:rgba(0,0,0,0.05);-webkit-backdrop-filter:none;backdrop-filter:none}.item:not(:last-child){margin-bottom:4px}.icon{font-size:18px;margin-right:8px}.title{font-weight:500;font-size:16px}.title,\n.description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal{background:#f0fff8;border-radius:4px;font-weight:500;font-size:12px;color:#1dc897;line-height:20px;padding:2px 8px;white-space:nowrap}.goal.global{background:#e6f4ff;color:#1a7aff}.header{display:flex;align-items:center}.description{color:#595959;margin-top:6px;padding-left:28px;line-height:20px}.time{color:rgba(0,0,0,0.45);white-space:nowrap}.main{flex:1;min-width:0}.operations{display:flex;align-items:center;justify-content:right;width:100px}.link.actions-active .time,\n.link:hover .time,\n.link:not(:hover):not(.actions-active) .actions{display:none}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}",""]);const s=o.toString()},86121:(t,e,n)=>{"use strict";n.d(e,{A:()=>r});var i=n(12559);function r(t,e,n){return t.set((0,i.A)(t,e),n),n}},98343:(t,e,n)=>{"use strict";n.d(e,{Q:()=>r});var i=n(41030);function r(t,e){return null==t?void 0:t.replace(/{{(.*?)}}/g,((t,n)=>(0,i.get)(e,n.trim())))}}}]);
3
+ //# sourceMappingURL=project-conversations.d4771579.js.map
@@ -0,0 +1,5 @@
1
+ /*!
2
+ Copyright (c) 2018 Jed Watson.
3
+ Licensed under the MIT License (MIT), see
4
+ http://jedwatson.github.io/classnames
5
+ */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/project-conversations.d4771579.js","mappings":";mMAAO,MAAMA,EAAmB,gBAEzB,IAAKC,EAAC,SAADA,GAAC,OAADA,EAAC,cAADA,EAAC,sBAADA,EAAC,4BAADA,EAAC,gDAADA,EAAC,wCAADA,EAAC,8CAADA,EAAC,sCAADA,EAAC,sDAADA,EAAC,8CAADA,EAAC,kBAADA,EAAC,4BAADA,EAAC,kBAADA,EAAC,cAADA,EAAC,YAADA,EAAC,gBAADA,CAAC,MCAb,MAkBA,EAlBuB,CACrB,CAACA,EAAEC,WAAY,YACf,CAACD,EAAEE,OAAQ,QACX,CAACF,EAAEG,cAAe,iBAClB,CAACH,EAAEI,wBAAyB,MAC5B,CAACJ,EAAEK,oBAAqB,KACxB,CAACL,EAAEM,uBAAwB,cAC3B,CAACN,EAAEO,mBAAoB,QACvB,CAACP,EAAEQ,2BAA4B,cAC/B,CAACR,EAAES,uBAAwB,QAC3B,CAACT,EAAEU,QAAS,SACZ,CAACV,EAAEW,OAAQ,QACX,CAACX,EAAEY,SAAU,UACb,CAACZ,EAAEa,cAAe,cAClB,CAACb,EAAEc,MAAO,OACV,CAACd,EAAEe,SAAU,WCGf,EAlBuB,CACrB,CAACf,EAAEC,WAAY,KACf,CAACD,EAAEE,OAAQ,KACX,CAACF,EAAEG,cAAe,YAClB,CAACH,EAAEI,wBAAyB,WAC5B,CAACJ,EAAEK,oBAAqB,KACxB,CAACL,EAAEM,uBAAwB,cAC3B,CAACN,EAAEO,mBAAoB,QACvB,CAACP,EAAEQ,2BAA4B,cAC/B,CAACR,EAAES,uBAAwB,QAC3B,CAACT,EAAEU,QAAS,KACZ,CAACV,EAAEW,OAAQ,KACX,CAACX,EAAEY,SAAU,IACb,CAACZ,EAAEa,cAAe,KAClB,CAACb,EAAEc,MAAO,IACV,CAACd,EAAEe,SAAU,OCXbC,EAAAA,EAAAA,gBAAejB,EAAkB,CAAEkB,GAAE,EAAEC,GAAEA,ICGpC,IAAKC,EAAkB,SAAlBA,GAAkB,OAAlBA,EAAkB,YAAlBA,EAAkB,kBAAlBA,EAAkB,oBAAlBA,EAAkB,YAAlBA,EAAkB,gBAAlBA,EAAkB,oBAAlBA,EAAkB,YAAlBA,CAAkB,MAUvB,MAAMC,EAAe,SAC1BC,GAIkB,IAHlBC,EAA0BC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAGJ,EAAmBO,KAEhDC,EAA0BJ,UAAAC,OAAA,EAAAD,UAAA,QAAAE,EAE1B,GACEJ,SAEAA,KAAS,KACTA,IAASO,IAET,OAAO,KAET,MAAMC,EAAIC,EAAOT,GACXU,EAAMD,IAASE,IA3BH,GA4BZC,EAAiB,SAATN,EAAkB,KAAO,WACjCO,EAAUC,EAAAA,KAAKC,EACnB,GAAGrC,KAA6B,SAAT4B,EAAkB3B,EAAEK,mBAAqBL,EAAEI,0BAE9DiC,EAASF,EAAAA,KAAKC,EAClB,GAAGrC,KAA6B,SAAT4B,EAAkB3B,EAAEO,kBAAoBP,EAAEM,yBAE7DgC,EAAWH,EAAAA,KAAKC,EACpB,GAAGrC,KAA6B,SAAT4B,EAAkB3B,EAAES,sBAAwBT,EAAEQ,6BAEjE+B,EAAoB,SAATZ,EAAkB,KAAO,cAE1C,IAAIa,EA4CJ,OAAQlB,GACN,KAAKH,EAAmBsB,KACtBD,EAAOX,EAAEP,OAAOW,GAChB,MACF,KAAKd,EAAmBuB,QACtBF,EAAOX,EAAEP,OAAOiB,GAChB,MACF,KAAKpB,EAAmBwB,SAAU,CAChC,MAAMC,GAAQf,GAAKE,EACnBS,EACEI,GAAQ,EACJd,EAAAA,SAAgBc,GAAMC,UAAS,GAC/BV,EAAAA,KAAKC,EAAE,GAAGrC,KAAoBC,EAAEG,eAAgB,CAC9CkB,KAAMS,EAAAA,SAAgBc,GAAMC,aAEpC,KACF,CACA,KAAK1B,EAAmB2B,KACtBN,EAAOV,EAAAA,SAAgBiB,KAAKC,KAAKnB,GAAKE,EAAK,IAAIc,UAAS,GACxD,MACF,KAAK1B,EAAmB8B,OACtBT,EAAOL,EAAAA,KAAKC,EAAE,GAAGrC,KAAoBC,EAAEG,eAAgB,CACrDkB,KAAMS,EAAAA,SAAgBiB,KAAKG,KAAKrB,GAAKE,EAAK,IAAIc,aAEhD,MACF,KAAK1B,EAAmBgC,SACtBX,EA/DoBY,MACtB,MAAMR,GAAQf,EAAEe,KAAKb,EAAK,QAAQ,GAAMsB,QAAQ,GAChD,IAAIC,EAAQ,GACZ,MAAMC,EACJ1B,EAAE2B,OAASzB,EAAIyB,OACX,WACAZ,GAAQ,GAAKf,EAAE4B,SAAS1B,EAAI2B,QAAQ1B,KAAK,EAAG,OAAQ,OAClD,gBACAH,EAAE8B,OAAO5B,EAAI2B,QAAQ1B,KAAK,EAAG,OAAQ,OACnC,YACAH,EAAE8B,OAAO5B,EAAK,OACZ,UACAa,EAAO,GAAKf,EAAE8B,OAAO5B,EAAI2B,QAAQ1B,IAAI,EAAG,OAAQ,OAC9C,UACAY,EAAO,EACL,WACA,UAChB,OAAQW,GACN,IAAK,UACL,IAAK,YACHD,EAAQ,GAAGnB,EAAAA,KAAKC,EAAE,GAAGrC,KAA+B,cAAXwD,EAAyBvD,EAAEC,UAAYD,EAAEE,WACvE,SAATyB,EAAkB,GAAK,IAAIE,EAAEP,OA7BjB,aA+Bd,MACF,IAAK,WAML,QACEgC,EAAQzB,EAAEP,OAAOW,SAJnB,IAAK,gBACHqB,EAAQzB,EAAEP,OAAOgB,GAMrB,OAAOgB,CAAK,EA6BHF,GACP,MACF,QACEZ,EAAOX,EAAEP,OAAOO,EAAE2B,SAAWzB,EAAIyB,OAASnB,EAASH,GAEvD,OAAOM,CACT,+DC1He,SAASoB,EAAoBC,EAAGC,EAAGC,GAChD,OAAOA,GAAE,OAAiBF,EAAGC,GAC/B,gECDe,SAASE,EAAc5B,GACpC,IAAI6B,ECFS,SAAqB7B,GAClC,GAAI,WAAY,OAAQA,KAAOA,EAAG,OAAOA,EACzC,IAAI8B,EAAI9B,EAAE+B,OAAOC,aACjB,QAAI,IAAWF,EAAG,CAChB,IAAID,EAAIC,EAAEG,KAAKjC,EAAG0B,UAClB,GAAI,WAAY,OAAQG,GAAI,OAAOA,EACnC,MAAM,IAAIK,UAAU,+CACtB,CACA,OAAyBC,OAAiBnC,EAC5C,CDPUgC,CAAYhC,GACpB,MAAO,WAAY,OAAQ6B,GAAKA,EAAIA,EAAI,EAC1C,gCELe,SAASO,EAAkBN,EAAG9B,EAAGqC,GAC9C,GAAI,mBAAqBP,EAAIA,IAAM9B,EAAI8B,EAAEQ,IAAItC,GAAI,OAAOb,UAAUC,OAAS,EAAIY,EAAIqC,EACnF,MAAM,IAAIH,UAAU,gDACtB,gDCHe,SAASK,EAAQC,GAG9B,OAAOD,EAAU,mBAAqBR,QAAU,iBAAmBA,OAAOU,SAAW,SAAUD,GAC7F,cAAcA,CAChB,EAAI,SAAUA,GACZ,OAAOA,GAAK,mBAAqBT,QAAUS,EAAEE,cAAgBX,QAAUS,IAAMT,OAAOY,UAAY,gBAAkBH,CACpH,EAAGD,EAAQC,EACb,gFCPe,SAASI,EAAYd,GAClC,GAAIe,OAAOf,KAAOA,EAAG,MAAMI,UAAU,qDAAuD,OAASJ,GAAI,OAAQA,GAAK,SACtH,OAAOA,CACT,0BCFAgB,EAAOC,QAAU,SAAUlB,GACzB,OAAOA,EAAE,EACX,0BCEAiB,EAAOC,QAAU,SAAUC,GACzB,IAAIC,EAAO,GA4EX,OAzEAA,EAAKC,SAAW,WACd,OAAOC,KAAKC,KAAI,SAAUC,GACxB,IAAIC,EAAU,GACVC,OAA+B,IAAZF,EAAK,GAoB5B,OAnBIA,EAAK,KACPC,GAAW,cAAcE,OAAOH,EAAK,GAAI,QAEvCA,EAAK,KACPC,GAAW,UAAUE,OAAOH,EAAK,GAAI,OAEnCE,IACFD,GAAW,SAASE,OAAOH,EAAK,GAAGjE,OAAS,EAAI,IAAIoE,OAAOH,EAAK,IAAM,GAAI,OAE5EC,GAAWN,EAAuBK,GAC9BE,IACFD,GAAW,KAETD,EAAK,KACPC,GAAW,KAETD,EAAK,KACPC,GAAW,KAENA,CACT,IAAGG,KAAK,GACV,EAGAR,EAAKpB,EAAI,SAAW6B,EAASC,EAAOC,EAAQC,EAAUC,GAC7B,iBAAZJ,IACTA,EAAU,CAAC,CAAC,KAAMA,OAASrE,KAE7B,IAAI0E,EAAyB,CAAC,EAC9B,GAAIH,EACF,IAAK,IAAII,EAAI,EAAGA,EAAIb,KAAK/D,OAAQ4E,IAAK,CACpC,IAAIC,EAAKd,KAAKa,GAAG,GACP,MAANC,IACFF,EAAuBE,IAAM,EAEjC,CAEF,IAAK,IAAIC,EAAK,EAAGA,EAAKR,EAAQtE,OAAQ8E,IAAM,CAC1C,IAAIb,EAAO,GAAGG,OAAOE,EAAQQ,IACzBN,GAAUG,EAAuBV,EAAK,WAGrB,IAAVS,SACc,IAAZT,EAAK,KAGdA,EAAK,GAAK,SAASG,OAAOH,EAAK,GAAGjE,OAAS,EAAI,IAAIoE,OAAOH,EAAK,IAAM,GAAI,MAAMG,OAAOH,EAAK,GAAI,MAF/FA,EAAK,GAAKS,GAMVH,IACGN,EAAK,IAGRA,EAAK,GAAK,UAAUG,OAAOH,EAAK,GAAI,MAAMG,OAAOH,EAAK,GAAI,KAC1DA,EAAK,GAAKM,GAHVN,EAAK,GAAKM,GAMVE,IACGR,EAAK,IAGRA,EAAK,GAAK,cAAcG,OAAOH,EAAK,GAAI,OAAOG,OAAOH,EAAK,GAAI,KAC/DA,EAAK,GAAKQ,GAHVR,EAAK,GAAK,GAAGG,OAAOK,IAMxBZ,EAAKkB,KAAKd,GACZ,CACF,EACOJ,CACT,iBCpFA,OAOC,WACA,aAEA,IAAImB,EAAS,CAAC,EAAEC,eAEhB,SAASC,IAGR,IAFA,IAAIC,EAAU,GAEL1C,EAAI,EAAGA,EAAI1C,UAAUC,OAAQyC,IAAK,CAC1C,IAAI2C,EAAMrF,UAAU0C,GAChB2C,IACHD,EAAUE,EAAYF,EAASG,EAAWF,IAE5C,CAEA,OAAOD,CACR,CAEA,SAASG,EAAYF,GACpB,GAAmB,iBAARA,GAAmC,iBAARA,EACrC,OAAOA,EAGR,GAAmB,iBAARA,EACV,MAAO,GAGR,GAAIG,MAAMC,QAAQJ,GACjB,OAAOF,EAAWO,MAAM,KAAML,GAG/B,GAAIA,EAAItB,WAAaL,OAAOF,UAAUO,WAAasB,EAAItB,SAASA,WAAW4B,SAAS,iBACnF,OAAON,EAAItB,WAGZ,IAAIqB,EAAU,GAEd,IAAK,IAAIQ,KAAOP,EACXJ,EAAOnC,KAAKuC,EAAKO,IAAQP,EAAIO,KAChCR,EAAUE,EAAYF,EAASQ,IAIjC,OAAOR,CACR,CAEA,SAASE,EAAaO,EAAOC,GAC5B,OAAKA,EAIDD,EACIA,EAAQ,IAAMC,EAGfD,EAAQC,EAPPD,CAQT,CAEqClC,EAAOC,SAC3CuB,EAAWhE,QAAUgE,EACrBxB,EAAOC,QAAUuB,QAKhB,KAFwB,EAAF,WACtB,OAAOA,CACP,UAFoB,OAEpB,YAIH,CArEA,kUCqBA1F,EAAAA,EAAAA,gBAAesG,EAAAA,GAAIC,EAAAA,GAEnB,MAAMC,GAAcC,EAAAA,EAAAA,WAA2B,WACzCC,GAAcD,EAAAA,EAAAA,WAAyC,WACvDE,GAAgBF,EAAAA,EAAAA,WACpB,qBAEIG,GAAqBH,EAAAA,EAAAA,WAKzB,kBAAmB,CACnBI,cAAe,eACfC,gBAAiB,oBAGb,cAAEC,EAAa,SAAEC,EAAQ,MAAEC,IAAUC,EAAAA,EAAAA,oBAAmB,IAAAC,EAAA,IAAAC,EAAA,IAAAC,QAAAC,EAAA,IAAAD,QAAAE,EAAA,IAAAF,QAAAG,EAAA,IAAAH,QAAAI,EAAA,IAAAJ,QAAAK,EAAA,IAAAC,QAAAC,EAAA,IAAAP,QAAAQ,GAAA,IAAAR,QAAAS,GAAA,IAAAT,QAgC9D,MAAAU,WAIUC,EAAAA,iBAEVlE,WAAAA,GAAA,SAAAvD,YAAA0H,EAAAA,EAAAA,GAAA,KAAAP,IAAAQ,EAAAA,EAAAA,GAAA,KAAAd,EAAAe,EAAA,QAAAD,EAAAA,EAAAA,GAAA,KAAAZ,GAAAc,EAAA,MAAAC,EAAA,SAAAH,EAAAA,EAAAA,GAAA,KAAAX,GAAAe,EAAA,MAAAC,EAAA,SAAAL,EAAAA,EAAAA,GAAA,KAAAV,GAAAgB,EAAA,MAAAC,EAAA,SAAAP,EAAAA,EAAAA,GAAA,KAAAT,GAAAiB,EAAA,MAAAC,EAAA,SAgBET,EAAAA,EAAAA,GAAA,KAAAN,GAAgBgB,EAAA,MAAIC,KAClBjG,EAAAA,EAAAA,GAAA8E,EAAAnD,KAAKuE,GAAWC,KAAKF,EAAa,KAClCX,EAAAA,EAAAA,GAAA,KAAAL,GAAAmB,EAAA,QAKFd,EAAAA,EAAAA,GAAA,KAAAJ,IAAkBmB,EAAA,MAAIC,KACpBtG,EAAAA,EAAAA,GAAA8E,EAAAnD,KAAK4E,GAAaJ,KAAKG,EAAO,GAC9B,SAvBO7E,GAAI,OAAA+E,EAAAA,EAAAA,GAAAhC,EAAA,cAAJ/C,CAAIgF,IAAAC,EAAAA,EAAAA,GAAAlC,EAAA,KAAAiC,EAAA,gBAGJE,GAAW,OAAAH,EAAAA,EAAAA,GAAA9B,EAAA,qBAAXiC,CAAWF,IAAAC,EAAAA,EAAAA,GAAAhC,EAAA,KAAA+B,EAAA,YAGXG,GAAO,OAAAJ,EAAAA,EAAAA,GAAA7B,EAAA,iBAAPiC,CAAOH,IAAAC,EAAAA,EAAAA,GAAA/B,EAAA,KAAA8B,EAAA,UAGPI,GAAK,OAAAL,EAAAA,EAAAA,GAAA5B,EAAA,eAALiC,CAAKJ,IAAAC,EAAAA,EAAAA,GAAA9B,EAAA,KAAA6B,EAAA,CAgBdK,MAAAA,GACE,OACEC,IAAAA,cAACC,GAA6B,CAC5BvF,KAAME,KAAKF,KACXkF,YAAahF,KAAKgF,YAClBC,QAASjF,KAAKiF,QACdC,MAAOlF,KAAKkF,MACZI,aAAaT,EAAAA,EAAAA,GAAKxB,EAALrD,MACbsC,eAAeuC,EAAAA,EAAAA,GAAKtB,GAALvD,OAGrB,EAQF,SAASqF,GAA6BE,GAOC,IAPA,KACrCzF,EAAI,YACJkF,EAAW,QACXC,EAAO,MACPC,EAAK,YACLI,EAAW,cACXhD,GACmCiD,EACnC,OAAKzF,EASHsF,IAAAA,cAAA,UACGtF,EAAKG,KAAKC,GACTkF,IAAAA,cAAA,MAAII,UAAU,OAAO5D,IAAK1B,EAAKuF,gBAC7BL,IAAAA,cAACM,GAAgB,CACfpB,aAAcpE,EACd8E,YAAaA,EACbC,QAASA,EACTC,MAAOA,EACPI,YAAaA,EACbhD,cAAeA,QAhBrB8C,IAAAA,cAAA,OAAKI,UAAU,WACbJ,IAAAA,cAACjD,EAAW,CAACwD,IAAI,OAAOC,KAAK,qBAAqBC,UAAQ,IAqBlE,CAUA,SAASH,GAAgBI,GAOC,IAAAC,EAAA,IAPA,aACxBzB,EAAY,YACZU,EAAW,QACXC,EAAO,MACPC,EAAK,YACLI,EAAW,cACXhD,GACsBwD,EACtB,MAAME,GAAUC,EAAAA,EAAAA,QAAuB,OAIvCC,EAAAA,EAAAA,YAAU,KACR,MAAMC,EAAKH,EAAQI,QACnB,IAAKD,EAAI,OACT,MAAME,EAAe1H,IACnBA,EAAE2H,kBACF3H,EAAE4H,iBACFjB,EAAYhB,EAAa,EAG3B,OADA6B,EAAGK,iBAAiB,QAASH,GACtB,KACLF,EAAGM,oBAAoB,QAASJ,EAAY,CAC7C,GACA,CAAC/B,EAAcgB,IAElB,MAAOoB,EAAgBC,IAAqBC,EAAAA,EAAAA,WAAS,GAErD,OACExB,IAAAA,cAACnD,EAAW,CACVuD,UAAWrE,IAAW,OAAQ,CAAE,iBAAkBuF,IAClDG,KAAKC,EAAAA,EAAAA,GAAc9B,EAAaV,IAEhCc,IAAAA,cAAA,OAAKI,UAAU,QACbJ,IAAAA,cAAA,OAAKI,UAAU,UACbJ,IAAAA,cAACjD,EAAW,CACVqD,UAAU,OACVG,IAAI,UACJoB,SAAS,SACTnB,KAAK,UAEPR,IAAAA,cAAA,OAAKI,UAAU,SAASlB,EAAa0C,QAEtC1C,EAAa2C,aACZ7B,IAAAA,cAAA,OAAKI,UAAU,eAAelB,EAAa2C,cAG9C/B,GACCE,IAAAA,cAAA,OACEI,UAAWrE,IAAW,OAAQ,CAC5B+F,QAAS5C,EAAa6C,iBAExBC,IAAKpB,GAEJ1B,EAAa6C,eACqD,QADvCpB,EACxBb,EAAMmC,MAAMC,GAAMA,EAAEC,aAAejD,EAAa6C,wBAAe,IAAApB,OAAA,EAA/DA,EACIiB,OACJnK,EAAAA,EAAAA,GAAEpC,EAAAA,EAAE+M,kBAGZpC,IAAAA,cAAChD,EAAa,CACZoD,UAAU,SACViC,KAAK,QACLC,iBAAkBpD,EAAaqD,WAEjCvC,IAAAA,cAAA,OAAKI,UAAU,cACbJ,IAAAA,cAAC/C,EAAkB,CACjBmD,UAAU,UACVP,QAASA,EACT3C,cAAgB3D,IACd2D,EAAc,CAAEsF,OAAQjJ,EAAEgG,OAAQzE,KAAMoE,GAAe,EAEzD/B,gBAAkB5D,IAChBgI,EAAkBhI,EAAEgG,OAAO,IAG/BS,IAAAA,cAAA,OACEI,UAAU,OACVwB,OACEnL,EAAAA,EAAAA,GAC2B,IAAzByI,EAAauD,UACbjM,EAAAA,EAAmBsB,QAItBrB,EAAAA,EAAAA,GAC0B,IAAzByI,EAAauD,UACbjM,EAAAA,EAAmBwB,YAM/B,CA9IC0K,EAAAtE,KAAA7E,GAAAiF,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAG,EAAAwD,EAAA1D,EAAAI,EAAAG,EAAAoD,EAAAtD,GAAAuD,GAAArF,EAAAsF,KAAAC,EAAAA,EAAAA,GAAAL,EAAA,CA7CAtF,EAAc,kCAAmC,CAChD4F,WAAY,CAACC,EAAAA,MACb,EAKC5F,EAAS,CAAE6F,WAAW,IAAQ,WAG9B7F,IAAU,kBAGVA,EAAS,CAAE6F,WAAW,IAAQ,cAG9B7F,EAAS,CAAE6F,WAAW,IAAQ,YAG9B5F,EAAM,CAAEtG,KAAM,eAAe,cAAAiD,IAAAwF,EAAAA,EAAAA,GAAA3B,EAAA7D,GAAA,CAAAA,EAAAyF,KAAAC,EAAAA,EAAAA,GAAA7B,EAAA7D,EAAAyF,IAAA,CAO7BpC,EAAM,CAAEtG,KAAM,iBAAiB,gBAAAiD,IAAAwF,EAAAA,EAAAA,GAAAvB,GAAAjE,GAAA,CAAAA,EAAAyF,KAAAC,EAAAA,EAAAA,GAAAzB,GAAAjE,EAAAyF,KAAA,GAAAyD,GAAAhF,GAAApE,KAAAM,EAAAA,EAAAA,GAAA8I,KAtBxB9E,EAAAA,mBAAgByE,6EChFX,SAASM,EAAgB7J,EAAG9B,EAAGqC,GAC5C,WAAY,OAAQrC,KAAOA,GAAKA,EAAIA,EAAEoK,aAAe,IAAMpK,EAAI,IAAM,IACrE,IACE6C,OAAO+I,eAAe9J,EAAG,OAAQ,CAC/B+J,cAAc,EACd7G,MAAO3C,EAAIA,EAAI,IAAMrC,EAAIA,GAE7B,CAAE,MAAO8B,GAAI,CACb,OAAOA,CACT,gBCNe,SAASgK,EAAchK,EAAG9B,EAAGqC,EAAGX,EAAGc,EAAGX,GACnD,IAAIF,EACFyJ,EACAW,EACAtK,EACAuK,EACAC,EACAC,EACAC,EAAIpK,OAAOqK,UAAYrK,OAAY,IAAE,mBACrCtC,EAAIoD,OAAO+I,eACXS,EAAIxJ,OAAOyJ,OACXC,EAAI,CAACF,EAAE,MAAOA,EAAE,OAChBpE,EAAIjI,EAAEZ,OACR,SAASqL,EAAEzK,EAAGqC,EAAGX,GACf,OAAO,SAAUc,EAAGX,GAClBQ,IAAMR,EAAIW,EAAGA,EAAIV,GACjB,IAAK,IAAIH,EAAI,EAAGA,EAAI3B,EAAEZ,OAAQuC,IAAKE,EAAI7B,EAAE2B,GAAGkD,MAAMrC,EAAGd,EAAI,CAACG,GAAK,IAC/D,OAAOH,EAAIG,EAAIW,CACjB,CACF,CACA,SAASgK,EAAE1K,EAAG9B,EAAGqC,EAAGX,GAClB,GAAI,mBAAqBI,IAAMJ,QAAK,IAAWI,GAAI,MAAM,IAAII,UAAUlC,EAAI,UAAYqC,GAAK,MAAQ,eAAiBX,EAAI,GAAK,kBAC9H,OAAOI,CACT,CACA,SAAS2K,EAAS3K,EAAG9B,EAAGqC,EAAGX,EAAGc,EAAGX,EAAGkK,EAAGtK,EAAGuK,EAAGC,EAAGC,GAC9C,SAASC,EAAErK,GACT,IAAKoK,EAAEpK,GAAI,MAAM,IAAII,UAAU,sDACjC,CACA,IAAImK,EAAI,GAAG7I,OAAOxD,EAAE,IAClBiI,EAAIjI,EAAE,GACN0M,GAAKX,EACLY,EAAI,IAAMnK,EACVoK,EAAI,IAAMpK,EACVqK,EAAI,IAAMrK,EACVsK,EAAI,IAAMtK,EACZ,SAASuK,EAAE/M,EAAGqC,EAAGX,GACf,OAAO,SAAUc,EAAGX,GAClB,OAAOQ,IAAMR,EAAIW,EAAGA,EAAIV,GAAIJ,GAAKA,EAAEc,GAAIwK,EAAEhN,GAAGiC,KAAKO,EAAGX,EACtD,CACF,CACA,IAAK6K,EAAG,CACN,IAAIM,EAAI,CAAC,EACPhJ,EAAI,GACJiJ,EAAIL,EAAI,MAAQC,GAAKF,EAAI,MAAQ,QACnC,GAAIX,GAAKC,GAAKU,EAAIK,EAAI,CACpBE,IAAKvB,GAAgB,WACnB,OAAO1D,EAAE9E,KACX,GAAGzB,EAAG,OACNyL,IAAK,SAAarL,GAChB9B,EAAE,GAAGmD,KAAMrB,EACb,GACEkL,EAAEC,GAAKhF,EAAGgE,GAAKN,EAAgBqB,EAAEC,GAAIvL,EAAGoL,EAAI,GAAKG,IAAMhB,IAAMe,EAAInK,OAAOuK,yBAAyBtL,EAAGJ,KAAMuK,IAAMD,EAAG,CACrH,IAAKZ,EAAImB,GAAG9K,GAAGC,KAAO,IAAM0J,EAAI5I,GAAI,MAAM6K,MAAM,+CAAiDL,EAAEC,GAAGK,KAAO,0BAC7Gf,GAAG9K,GAAGC,GAAKc,EAAI,EAAI,EAAIA,CACzB,CACF,CACA,IAAK,IAAI+K,EAAIzL,EAAG0L,EAAInB,EAAEjN,OAAS,EAAGoO,GAAK,EAAGA,GAAKnL,EAAI,EAAI,EAAG,CACxD,IAAIoL,EAAIjB,EAAEH,EAAEmB,GAAI,cAAe,MAAM,GACnCE,EAAIrL,EAAIgK,EAAEmB,EAAI,QAAK,EACnBG,EAAI,CAAC,EACL/P,EAAI,CACFgQ,KAAM,CAAC,QAAS,WAAY,SAAU,SAAU,SAAU,SAASpL,GACnE8K,KAAM5L,EACN0K,SAAUzK,EACVkM,eAAgB,SAAU/L,EAAG9B,GAC3B,GAAI8B,EAAEmG,EAAG,MAAMoF,MAAM,kEACrBb,EAAExM,EAAG,iBAAkB,MAAM,GAAK6B,EAAEsC,KAAKnE,EAC3C,EAAE8N,KAAK,KAAMH,IAEjB,GAAIjB,EAAGtB,EAAIqC,EAAExL,KAAKyL,EAAGH,EAAG3P,GAAI+P,EAAE1F,EAAI,EAAGuE,EAAEpB,EAAG,mBAAoB,YAAcmC,EAAInC,QAAQ,GAAIxN,EAAU,OAAI6D,EAAG7D,EAAW,QAAIoO,EAAGZ,EAAIxN,EAAEmQ,OAAS,CAC5IzL,IAAK0J,EAAIE,EAAE4B,OAAS,SAAUhM,GAC5B,OAAOJ,KAAKI,CACd,GACC+K,IAAMzB,EAAE8B,IAAMlB,EAAIc,EAAI,SAAUhL,GACjC,OAAOqK,EAAErK,GAAIkL,EAAEhI,KACjB,EAAI+H,EAAE,MAAO,EAAGZ,GAAK,SAAUrK,GAC7B,OAAOA,EAAEJ,EACX,GAAIoL,GAAKF,IAAMxB,EAAE+B,IAAMnB,EAAIe,EAAE,MAAO,EAAGZ,GAAK,SAAUrK,EAAG9B,GACvD8B,EAAEJ,GAAK1B,CACT,GAAIuN,EAAIE,EAAExL,KAAKyL,EAAGf,EAAI,CACpBO,IAAKF,EAAEE,IACPC,IAAKH,EAAEG,KACLH,EAAEC,GAAIrP,GAAI+P,EAAE1F,EAAI,EAAG0E,GACrB,GAAI,WAAY,OAAQY,IAAMA,GAAInC,EAAIoB,EAAEe,EAAEL,IAAK,mBAAqBF,EAAEE,IAAM9B,IAAKA,EAAIoB,EAAEe,EAAEJ,IAAK,mBAAqBH,EAAEG,IAAM/B,IAAKA,EAAIoB,EAAEe,EAAES,KAAM,mBAAqBhK,EAAEiK,QAAQ7C,QAAQ,QAAI,IAAWmC,EAAG,MAAM,IAAIrL,UAAU,iGACtNsK,EAAEe,GAAItB,EAAI,QAAU,UAAY,cAAe,YAAcA,EAAIjI,EAAEiK,QAAQV,GAAKP,EAAEC,GAAKM,EAChG,CACA,OAAO/K,EAAI,GAAKuJ,EAAE5H,KAAKsG,EAAEzG,EAAGvC,EAAG,GAAIgJ,EAAE5I,EAAGJ,EAAG,IAAKwK,GAAKS,IAAMV,EAAIW,EAAIZ,EAAEmC,QAAQ,EAAG,EAAGnB,EAAE,MAAOtL,GAAIsL,EAAE,MAAOtL,IAAMsK,EAAE5H,KAAK2I,EAAIE,EAAEC,GAAKT,EAAEvK,KAAK6L,KAAKd,EAAEC,KAAOxN,EAAEqC,EAAGJ,EAAGsL,IAAKO,CACrK,CACA,SAASb,EAAE5K,GACT,OAAOrC,EAAEqC,EAAGqK,EAAG,CACbN,cAAc,EACdsC,YAAY,EACZnJ,MAAOrD,GAEX,CACA,YAAO,IAAWE,IAAMF,EAAIE,EAAEsK,IAAKxK,EAAI0K,EAAE,MAAQ1K,EAAI,KAAOA,GAAIqK,EAAI,GAAIC,EAAI,SAAWnK,GACrFA,GAAKkK,EAAE7H,KAAKsG,EAAE3I,GAChB,EAAGoK,EAAI,SAAWlM,EAAG0B,GACnB,IAAK,IAAIG,EAAI,EAAGA,EAAIQ,EAAEjD,OAAQyC,IAAK,CACjC,IAAIF,EAAIU,EAAER,GACRuJ,EAAIzJ,EAAE,GACNsK,EAAI,EAAIb,EACV,IAAK,EAAIA,IAAMpL,IAAMiM,GAAKvK,EAAG,CAC3B,IAAIwK,EAAIvK,EAAE,GACRwK,IAAMxK,EAAE,GACRlC,EAAI,GAAK2L,EACXqB,EAASzM,EAAI8B,EAAIA,EAAEa,UAAWhB,EAAGlC,EAAG0M,EAAI,IAAMD,GAAI,EAAAtK,EAAA,GAAcsK,GAAID,EAAGA,EAAI,EAAI,GAAKjM,EAAIyB,EAAIA,GAAK,GAAKsK,EAAIA,GAAK,GAAIC,IAAKhM,EAAGmM,EAAGzK,EAAG1B,GAAKmM,EAAI,SAAUnM,GAClJ,OAAO,EAAAoO,EAAA,GAAWpO,KAAO8B,CAC3B,EAAIU,EACN,CACF,CACF,EAAG0J,EAAE,EAAG,GAAIA,EAAE,EAAG,GAAIA,EAAE,EAAG,GAAIA,EAAE,EAAG,GAAID,EAAEF,GAAIE,EAAExK,GAAI2J,EAAIY,EAAG/D,GAAKyE,EAAE5K,GAAI,CACnEA,EAAGsJ,EACH,KAAIA,GACF,IAAI/I,EAAI,GACR,OAAO4F,GAAK,CAACyE,EAAE5K,EAAI2K,EAAS3K,EAAG,CAAC9B,GAAI0B,EAAGI,EAAEwL,KAAM,EAAGjL,IAAKoI,EAAEpI,EAAG,GAC9D,EAEJ,gECzHe,SAASgM,EAAuB5M,EAAGE,GAChD,OAAOF,EAAEyL,KAAI,OAAiBzL,EAAGE,GACnC,gECFe,SAASmF,EAA2BwH,EAAKC,EAAYvJ,IAClE,OAA0BsJ,EAAKC,GAC/BA,EAAWpB,IAAImB,EAAKtJ,EACtB,yFCFO,IAAKpH,EAAC,SAADA,GAAC,OAADA,EAAC,kCAADA,CAAC,MAIb,MAQasH,EAAK,yCAELC,EAAU,CAAEtG,GAVN,CACjB8L,gBAAiB,mBASU7L,GANV,CACjB6L,gBAAiB,SAON3K,EAAID,EAAAA,KAAKyO,UAAU,KAAMtJ,iCClBvB,SAASuJ,EAA2BH,EAAKI,GACtD,GAAIA,EAAkBpM,IAAIgM,GACxB,MAAM,IAAIpM,UAAU,iEAExB,gFCHe,SAAS2E,EAA4ByH,EAAKK,IACvD,OAA0BL,EAAKK,GAC/BA,EAAW/O,IAAI0O,EACjB,oFCDIM,QAA0B,GAA4B,KAE1DA,EAAwBzK,KAAK,CAACrB,EAAOmB,GAAI,8zCAIiI,KAE1K,QAAe2K,EAAwB1L,yECVxB,SAAS2L,EAAuBpN,EAAGE,EAAGD,GACnD,OAAOD,EAAE0L,KAAI,OAAiB1L,EAAGE,GAAID,GAAIA,CAC3C,gECDO,SAASuI,EACd6E,EACAC,GAEA,OAAOD,aAAQ,EAARA,EAAUE,QAAQ,cAAc,CAACC,EAAgBlK,KACxCmI,EAAAA,EAAAA,KAAI6B,EAAShK,EAAImK,SAGnC","sources":["webpack:///../../../src/i18n/constants.ts","webpack:///../../../../src/i18n/locales/en.ts","webpack:///../../../../src/i18n/locales/zh.ts","webpack:///../../../src/i18n/index.ts","webpack:///../../src/humanizeTime.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///../../node_modules/classnames/index.js","webpack:///./src/project-conversations/index.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///./src/project-conversations/i18n.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///./src/project-conversations/styles.shadow.css","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///./src/shared/parseTemplate.ts"],"sourcesContent":["export const NS_LIBS_DATETIME = \"libs-datetime\";\n\nexport enum K {\n TODAY = \"TODAY\",\n YESTERDAY = \"YESTERDAY\",\n FUTURE_AFTER = \"FUTURE_AFTER\",\n FORMAT_MEDIUM_DATETIME = \"FORMAT_MEDIUM_DATETIME\",\n FORMAT_MEDIUM_DATE = \"FORMAT_MEDIUM_DATE\",\n FORMAT_SHORT_DATETIME = \"FORMAT_SHORT_DATETIME\",\n FORMAT_SHORT_DATE = \"FORMAT_SHORT_DATE\",\n FORMAT_SHORT_DAY_DATETIME = \"FORMAT_SHORT_DAY_DATETIME\",\n FORMAT_SHORT_DAY_DATE = \"FORMAT_SHORT_DAY_DATE\",\n SECONDS = \"SECONDS\",\n MILL_SECONDS = \"MILL_SECONDS\",\n MINUTES = \"MINUTES\",\n HOURS = \"HOURS\",\n DAYS = \"DARS\",\n MONTHS = \"MONTHS\",\n}\n\nexport type Locale = { [key in K]: string };\n","import { Locale, K } from \"../constants.js\";\n\nconst locale: Locale = {\n [K.YESTERDAY]: \"Yesterday\",\n [K.TODAY]: \"Today\",\n [K.FUTURE_AFTER]: \"After {{time}}\",\n [K.FORMAT_MEDIUM_DATETIME]: \"LLL\",\n [K.FORMAT_MEDIUM_DATE]: \"LL\",\n [K.FORMAT_SHORT_DATETIME]: \"MMM D ah:mm\",\n [K.FORMAT_SHORT_DATE]: \"MMM D\",\n [K.FORMAT_SHORT_DAY_DATETIME]: \"MMM D HH:mm\",\n [K.FORMAT_SHORT_DAY_DATE]: \"MMM D\",\n [K.MONTHS]: \"months\",\n [K.HOURS]: \"hours\",\n [K.SECONDS]: \"seconds\",\n [K.MILL_SECONDS]: \"millseconds\",\n [K.DAYS]: \"days\",\n [K.MINUTES]: \"minutes\",\n};\n\nexport default locale;\n","import { Locale, K } from \"../constants.js\";\n\nconst locale: Locale = {\n [K.YESTERDAY]: \"昨天\",\n [K.TODAY]: \"今天\",\n [K.FUTURE_AFTER]: \"{{time}}后\",\n [K.FORMAT_MEDIUM_DATETIME]: \"LL ah:mm\",\n [K.FORMAT_MEDIUM_DATE]: \"LL\",\n [K.FORMAT_SHORT_DATETIME]: \"MMMD日 ah:mm\",\n [K.FORMAT_SHORT_DATE]: \"MMMD日\",\n [K.FORMAT_SHORT_DAY_DATETIME]: \"MMMD日 HH:mm\",\n [K.FORMAT_SHORT_DAY_DATE]: \"MMMD日\",\n [K.MONTHS]: \"个月\",\n [K.HOURS]: \"小时\",\n [K.SECONDS]: \"秒\",\n [K.MILL_SECONDS]: \"毫秒\",\n [K.DAYS]: \"天\",\n [K.MINUTES]: \"分钟\",\n};\n\nexport default locale;\n","import { initializeI18n } from \"@next-core/i18n\";\nimport { NS_LIBS_DATETIME } from \"./constants.js\";\nimport en from \"./locales/en.js\";\nimport zh from \"./locales/zh.js\";\n\nexport function addResourceBundle(): void {\n initializeI18n(NS_LIBS_DATETIME, { en, zh });\n}\n","import moment from \"moment\";\nimport { i18n } from \"@next-core/i18n\";\nimport { NS_LIBS_DATETIME, K } from \"./i18n/constants.js\";\nimport { addResourceBundle } from \"./i18n/index.js\";\n\naddResourceBundle();\n\nconst TIME_OFFSET = 0;\n\nexport enum HumanizeTimeFormat {\n full = \"full\",\n default = \"default\",\n relative = \"relative\",\n past = \"past\",\n future = \"future\",\n accurate = \"accurate\",\n auto = \"auto\",\n}\n\nexport const humanizeTime = (\n time: moment.MomentInput,\n format: HumanizeTimeFormat = HumanizeTimeFormat.auto,\n /** 默认为 \"datetime\" */\n type?: \"datetime\" | \"date\"\n): string | null => {\n if (\n time === undefined ||\n time === null ||\n time === -Infinity ||\n time === Infinity\n ) {\n return null;\n }\n const m = moment(time);\n const now = moment().add(TIME_OFFSET);\n const fFull = type === \"date\" ? \"LL\" : \"LL HH:mm\";\n const fMedium = i18n.t(\n `${NS_LIBS_DATETIME}:${type === \"date\" ? K.FORMAT_MEDIUM_DATE : K.FORMAT_MEDIUM_DATETIME}`\n );\n const fShort = i18n.t(\n `${NS_LIBS_DATETIME}:${type === \"date\" ? K.FORMAT_SHORT_DATE : K.FORMAT_SHORT_DATETIME}`\n );\n const fShort24 = i18n.t(\n `${NS_LIBS_DATETIME}:${type === \"date\" ? K.FORMAT_SHORT_DAY_DATE : K.FORMAT_SHORT_DAY_DATETIME}`\n );\n const fDefault = type === \"date\" ? \"LL\" : \"LL HH:mm:ss\";\n const fHourMinute = \"HH:mm\";\n let text;\n\n /* 用于精确显示时间的参数\n * 今天与昨天,显示:今天(昨天)x:x的格式,如:今天12:21、昨天16:33\n * 昨天以前的时间,显示:x月x日x时:x分,如:11月23日11:22\n * 今年以前的时间,显示:x年x月x日x时:x分,如:2016年11月11日11:11\n */\n const getAccurateTime = () => {\n const diff = +m.diff(now, \"days\", true).toFixed(1);\n let _text = \"\";\n const retVal =\n m.year() < now.year()\n ? \"lastYear\"\n : diff < -2 || m.isBefore(now.clone().add(-1, \"day\"), \"day\")\n ? \"twoDaysBefore\"\n : m.isSame(now.clone().add(-1, \"day\"), \"day\")\n ? \"yesterday\"\n : m.isSame(now, \"day\")\n ? \"sameDay\"\n : diff < 2 && m.isSame(now.clone().add(1, \"day\"), \"day\")\n ? \"nextDay\"\n : diff < 7\n ? \"nextWeek\"\n : \"default\";\n switch (retVal) {\n case \"sameDay\":\n case \"yesterday\":\n _text = `${i18n.t(`${NS_LIBS_DATETIME}:${retVal === \"yesterday\" ? K.YESTERDAY : K.TODAY}`)}${\n type === \"date\" ? \"\" : ` ${m.format(fHourMinute)}`\n }`;\n break;\n case \"lastYear\":\n _text = m.format(fFull);\n break;\n case \"twoDaysBefore\":\n _text = m.format(fShort24);\n break;\n default:\n _text = m.format(fFull);\n }\n\n return _text;\n };\n\n switch (format) {\n case HumanizeTimeFormat.full:\n text = m.format(fFull);\n break;\n case HumanizeTimeFormat.default:\n text = m.format(fDefault);\n break;\n case HumanizeTimeFormat.relative: {\n const diff = +m - +now;\n text =\n diff <= 0\n ? moment.duration(diff).humanize(true)\n : i18n.t(`${NS_LIBS_DATETIME}:${K.FUTURE_AFTER}`, {\n time: moment.duration(diff).humanize(),\n });\n break;\n }\n case HumanizeTimeFormat.past:\n text = moment.duration(Math.min(+m - +now, 0)).humanize(true);\n break;\n case HumanizeTimeFormat.future:\n text = i18n.t(`${NS_LIBS_DATETIME}:${K.FUTURE_AFTER}`, {\n time: moment.duration(Math.max(+m - +now, 0)).humanize(),\n });\n break;\n case HumanizeTimeFormat.accurate:\n text = getAccurateTime();\n break;\n default:\n text = m.format(m.year() === now.year() ? fShort : fMedium);\n }\n return text;\n};\n","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { useEffect, useRef, useState } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type {\n EoEasyopsAvatar,\n EoEasyopsAvatarProps,\n} from \"@next-bricks/basic/easyops-avatar\";\nimport type {\n ActionType,\n EoMiniActions,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping,\n EoMiniActionsProps,\n SimpleActionType,\n} from \"@next-bricks/basic/mini-actions\";\nimport { humanizeTime, HumanizeTimeFormat } from \"@next-shared/datetime\";\nimport classNames from \"classnames\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport { parseTemplate } from \"../shared/parseTemplate.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedAvatar = wrapBrick<EoEasyopsAvatar, EoEasyopsAvatarProps>(\n \"eo-easyops-avatar\"\n);\nconst WrappedMiniActions = wrapBrick<\n EoMiniActions,\n EoMiniActionsProps,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping\n>(\"eo-mini-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface ProjectConversationsProps {\n list?: Conversation[];\n urlTemplate?: string;\n actions?: ActionType[];\n goals?: Goal[];\n}\n\nexport interface Conversation {\n conversationId: string;\n title: string;\n startTime: number;\n description?: string;\n goalInstanceId?: string;\n username?: string;\n}\n\nexport interface ActionClickDetail {\n action: SimpleActionType;\n item: Conversation;\n}\n\nexport interface Goal {\n instanceId: string;\n title: string;\n}\n\n/**\n * 构件 `ai-portal.project-conversations`\n */\nexport\n@defineElement(\"ai-portal.project-conversations\", {\n styleTexts: [styleText],\n})\nclass ProjectConversations\n extends ReactNextElement\n implements ProjectConversationsProps\n{\n @property({ attribute: false })\n accessor list: Conversation[] | undefined;\n\n @property()\n accessor urlTemplate: string | undefined;\n\n @property({ attribute: false })\n accessor actions: ActionType[] | undefined;\n\n @property({ attribute: false })\n accessor goals: Goal[] | undefined;\n\n @event({ type: \"goal.click\" })\n accessor #goalClick!: EventEmitter<Conversation>;\n\n #handleGoalClick = (conversation: Conversation) => {\n this.#goalClick.emit(conversation);\n };\n\n @event({ type: \"action.click\" })\n accessor #actionClick!: EventEmitter<ActionClickDetail>;\n\n #handleActionClick = (detail: ActionClickDetail) => {\n this.#actionClick.emit(detail);\n };\n\n render() {\n return (\n <ProjectConversationsComponent\n list={this.list}\n urlTemplate={this.urlTemplate}\n actions={this.actions}\n goals={this.goals}\n onGoalClick={this.#handleGoalClick}\n onActionClick={this.#handleActionClick}\n />\n );\n }\n}\n\ninterface ProjectConversationsComponentProps extends ProjectConversationsProps {\n onGoalClick: (conversation: Conversation) => void;\n onActionClick: (detail: ActionClickDetail) => void;\n}\n\nfunction ProjectConversationsComponent({\n list,\n urlTemplate,\n actions,\n goals,\n onGoalClick,\n onActionClick,\n}: ProjectConversationsComponentProps) {\n if (!list) {\n return (\n <div className=\"loading\">\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n );\n }\n\n return (\n <ul>\n {list.map((item) => (\n <li className=\"item\" key={item.conversationId}>\n <ConversationLink\n conversation={item}\n urlTemplate={urlTemplate}\n actions={actions}\n goals={goals}\n onGoalClick={onGoalClick}\n onActionClick={onActionClick}\n />\n </li>\n ))}\n </ul>\n );\n}\n\ninterface ConversationLinkProps\n extends Pick<\n ProjectConversationsComponentProps,\n \"urlTemplate\" | \"actions\" | \"goals\" | \"onGoalClick\" | \"onActionClick\"\n > {\n conversation: Conversation;\n}\n\nfunction ConversationLink({\n conversation,\n urlTemplate,\n actions,\n goals,\n onGoalClick,\n onActionClick,\n}: ConversationLinkProps) {\n const goalRef = useRef<HTMLDivElement>(null);\n\n // <eo-link> handles click manually,\n // so we need to stop propagation and prevent default manually.\n useEffect(() => {\n const el = goalRef.current;\n if (!el) return;\n const handleClick = (e: MouseEvent) => {\n e.stopPropagation();\n e.preventDefault();\n onGoalClick(conversation);\n };\n el.addEventListener(\"click\", handleClick);\n return () => {\n el.removeEventListener(\"click\", handleClick);\n };\n }, [conversation, onGoalClick]);\n\n const [actionsVisible, setActionsVisible] = useState(false);\n\n return (\n <WrappedLink\n className={classNames(\"link\", { \"actions-active\": actionsVisible })}\n url={parseTemplate(urlTemplate, conversation)}\n >\n <div className=\"main\">\n <div className=\"header\">\n <WrappedIcon\n className=\"icon\"\n lib=\"easyops\"\n category=\"common\"\n icon=\"clock\"\n />\n <div className=\"title\">{conversation.title}</div>\n </div>\n {conversation.description && (\n <div className=\"description\">{conversation.description}</div>\n )}\n </div>\n {goals && (\n <div\n className={classNames(\"goal\", {\n global: !conversation.goalInstanceId,\n })}\n ref={goalRef}\n >\n {conversation.goalInstanceId\n ? goals.find((g) => g.instanceId === conversation.goalInstanceId)\n ?.title\n : t(K.PROJECT_OVERALL)}\n </div>\n )}\n <WrappedAvatar\n className=\"avatar\"\n size=\"small\"\n nameOrInstanceId={conversation.username}\n />\n <div className=\"operations\">\n <WrappedMiniActions\n className=\"actions\"\n actions={actions}\n onActionClick={(e) => {\n onActionClick({ action: e.detail, item: conversation });\n }}\n onVisibleChange={(e) => {\n setActionsVisible(e.detail);\n }}\n />\n <div\n className=\"time\"\n title={\n humanizeTime(\n conversation.startTime * 1000,\n HumanizeTimeFormat.full\n )!\n }\n >\n {humanizeTime(\n conversation.startTime * 1000,\n HumanizeTimeFormat.relative\n )}\n </div>\n </div>\n </WrappedLink>\n );\n}\n","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n PROJECT_OVERALL = \"PROJECT_OVERALL\",\n}\n\nconst en: Locale = {\n PROJECT_OVERALL: \"Project overall\",\n};\n\nconst zh: Locale = {\n PROJECT_OVERALL: \"项目整体\",\n};\n\nexport const NS = \"bricks/ai-portal/project-conversations\";\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","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\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\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.link{display:block}.link::part(link){display:flex;align-items:center;gap:16px;padding:12px 24px;color:#262626;background:rgba(255,255,255,0.6);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.link.actions-active::part(link),\n.link::part(link):hover{background:rgba(0,0,0,0.05);-webkit-backdrop-filter:none;backdrop-filter:none}.item:not(:last-child){margin-bottom:4px}.icon{font-size:18px;margin-right:8px}.title{font-weight:500;font-size:16px}.title,\n.description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal{background:#f0fff8;border-radius:4px;font-weight:500;font-size:12px;color:#1dc897;line-height:20px;padding:2px 8px;white-space:nowrap}.goal.global{background:#e6f4ff;color:#1a7aff}.header{display:flex;align-items:center}.description{color:#595959;margin-top:6px;padding-left:28px;line-height:20px}.time{color:rgba(0,0,0,0.45);white-space:nowrap}.main{flex:1;min-width:0}.operations{display:flex;align-items:center;justify-content:right;width:100px}.link.actions-active .time,\n.link:hover .time,\n.link:not(:hover):not(.actions-active) .actions{display:none}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import { get } from \"lodash\";\n\nexport function parseTemplate(\n template: string | undefined,\n context: Record<string, any>\n) {\n return template?.replace(/{{(.*?)}}/g, (_match: string, key: string) => {\n const value = get(context, key.trim());\n return value;\n });\n}\n"],"names":["NS_LIBS_DATETIME","K","YESTERDAY","TODAY","FUTURE_AFTER","FORMAT_MEDIUM_DATETIME","FORMAT_MEDIUM_DATE","FORMAT_SHORT_DATETIME","FORMAT_SHORT_DATE","FORMAT_SHORT_DAY_DATETIME","FORMAT_SHORT_DAY_DATE","MONTHS","HOURS","SECONDS","MILL_SECONDS","DAYS","MINUTES","initializeI18n","en","zh","HumanizeTimeFormat","humanizeTime","time","format","arguments","length","undefined","auto","type","Infinity","m","moment","now","add","fFull","fMedium","i18n","t","fShort","fShort24","fDefault","text","full","default","relative","diff","humanize","past","Math","min","future","max","accurate","getAccurateTime","toFixed","_text","retVal","year","isBefore","clone","isSame","_classPrivateGetter","s","r","a","toPropertyKey","i","e","Symbol","toPrimitive","call","TypeError","String","_assertClassBrand","n","has","_typeof","o","iterator","constructor","prototype","_checkInRHS","Object","module","exports","cssWithMappingToString","list","toString","this","map","item","content","needLayer","concat","join","modules","media","dedupe","supports","layer","alreadyImportedModules","k","id","_k","push","hasOwn","hasOwnProperty","classNames","classes","arg","appendClass","parseValue","Array","isArray","apply","includes","key","value","newClass","NS","locales","WrappedLink","wrapBrick","WrappedIcon","WrappedAvatar","WrappedMiniActions","onActionClick","onVisibleChange","defineElement","property","event","createDecorators","_ProjectConversations","_A","WeakMap","_B","_C","_D","_E","_ProjectConversations_brand","WeakSet","_handleGoalClick","_F","_handleActionClick","ProjectConversations","ReactNextElement","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_list","_init_extra_list","_init_urlTemplate","_init_extra_urlTemplate","_init_actions","_init_extra_actions","_init_goals","_init_extra_goals","_init_goalClick","_init_extra_goalClick","conversation","_get_goalClick","emit","_init_actionClick","_init_extra_actionClick","detail","_get_actionClick","_classPrivateFieldGet","v","_classPrivateFieldSet","urlTemplate","actions","goals","render","React","ProjectConversationsComponent","onGoalClick","_ref","className","conversationId","ConversationLink","lib","icon","spinning","_ref2","_goals$find","goalRef","useRef","useEffect","el","current","handleClick","stopPropagation","preventDefault","addEventListener","removeEventListener","actionsVisible","setActionsVisible","useState","url","parseTemplate","category","title","description","global","goalInstanceId","ref","find","g","instanceId","PROJECT_OVERALL","size","nameOrInstanceId","username","action","startTime","_ProjectConversations2","_set_goalClick","_set_actionClick","c","_initClass","_applyDecs","styleTexts","styleText","attribute","_","setFunctionName","defineProperty","configurable","applyDecs2311","u","f","l","p","d","metadata","h","create","y","b","applyDec","w","D","S","j","E","I","P","F","get","set","getOwnPropertyDescriptor","Error","name","N","O","z","A","H","kind","addInitializer","bind","access","init","unshift","splice","enumerable","checkInRHS","_classPrivateFieldGet2","obj","privateMap","getFixedT","_checkPrivateRedeclaration","privateCollection","privateSet","___CSS_LOADER_EXPORT___","_classPrivateFieldSet2","template","context","replace","_match","trim"],"sourceRoot":""}
@@ -2,9 +2,6 @@
2
2
  "ai-portal.chat-box": {
3
3
  "doc": "构件 `ai-portal.chat-box`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.chat-box\nproperties:\n textContent: Hello world\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.chat-box>Hello world</ai-portal.chat-box>\n# \n```\n\n### With cruise canvas\n\n```yaml preview minHeight=\"600px\"\nbrick: div\nproperties:\n style:\n width: 100vw\n height: 100vh\n position: fixed\n top: 0\n left: 0\ncontext:\n - name: task\nchildren:\n - brick: ai-portal.chat-box\n if: <%= !CTX.task %>\n properties:\n style:\n position: absolute\n width: 500px\n maxWidth: 90vw\n maxHeight: 90vh\n top: 50%\n left: 50%\n transform: translate(-50%, -50%)\n events:\n message.submit:\n useProvider: basic.http-request\n args:\n - \"<% `${BASE_URL}/api/gateway/logic.llm.aiops_service/api/v1/llm/agent/flow/create` %>\"\n # - /api/mocks/task/send\n # - \"http://localhost:8888/.netlify/functions/task-send\"\n # - \"https://serverless-mocks.netlify.app/.netlify/functions/task-send\"\n - method: POST\n body: |\n <%\n JSON.stringify({\n input: EVENT.detail\n })\n %>\n headers:\n Content-Type: application/json\n callback:\n error:\n action: handleHttpError\n success:\n action: context.replace\n args:\n - task\n - <% EVENT.detail %>\n - brick: ai-portal.cruise-canvas\n if: <%= !!CTX.task %>\n properties:\n taskId: <% CTX.task.id %>\n# -- YAML DELIMITER (1nbbm8) --\n# <div style=\"width: 100vw; height: 100vh; position: fixed; top: 0; left: 0\">\n# <ai-portal.chat-box\n# style=\"\n# position: absolute;\n# width: 500px;\n# max-width: 90vw;\n# max-height: 90vh;\n# top: 50%;\n# left: 50%;\n# transform: translate(-50%, -50%);\n# \"\n# id=\"brick-1\"\n# ></ai-portal.chat-box>\n# <ai-portal.cruise-canvas\n# task-id=\"&lt;% CTX.task.id %&gt;\"\n# ></ai-portal.cruise-canvas>\n# </div>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.addEventListener(\"message.submit\", (e) => {\n# const provider = document.createElement(\"basic.http-request\");\n# const promise = Promise.resolve(\n# provider.resolve(\n# /* WARN: incompatible expressions in HTML, please try YAML: */\n# \"<% `${BASE_URL}/api/gateway/logic.llm.aiops_service/api/v1/llm/agent/flow/create` %>\",\n# {\n# method: \"POST\",\n# body: \"<%\\n JSON.stringify({\\n input: EVENT.detail\\n })\\n%>\\n\",\n# headers: { \"Content-Type\": \"application/json\" },\n# }\n# )\n# );\n# promise.then((r) => {\n# // WARN: encountered incompatible event handlers in HTML mode, please try YAML.\n# });\n# promise.catch((r) => {\n# // WARN: encountered incompatible event handlers in HTML mode, please try YAML.\n# });\n# });\n# </script>\n# \n```\n"
4
4
  },
5
- "ai-portal.cruise-canvas": {
6
- "doc": "构件 `ai-portal.cruise-canvas`\n\n## Examples\n\n### Basic\n\n```yaml preview minHeight=\"600px\"\nbrick: div\nproperties:\n style:\n width: 100vw\n height: 100vh\n position: fixed\n top: 0\n left: 0\nchildren:\n - brick: ai-portal.cruise-canvas\n properties:\n task:\n state: completed\n requirement: |-\n 帮我在CMDB中完成手机银行系统的资源纳管\n plan:\n - id: \"2\"\n state: completed\n instruction: |-\n 深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\n - id: \"8\"\n state: completed\n instruction: |-\n 深度搜素CMDB给出资源的纳管现状\n - id: \"10\"\n state: completed\n instruction: |-\n 利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\n - id: \"12\"\n state: completed\n instruction: |-\n 在CMDB中完成手机银行系统的资源纳管\n - id: \"14\"\n state: completed\n instruction: |-\n 生成纳管后手机银行系统的逻辑架构和部署架构图\n jobs:\n - id: \"2\"\n state: completed\n instruction: |-\n 深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\n - id: \"4\"\n upstream: [\"2\"]\n toolCall:\n name: online_search\n originalArguments: |-\n {\"keywords\":\"手机银行系统\"}\n state: completed\n messages:\n - role: tool\n parts:\n - type: text\n text: |-\n {\"content\":\"手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\"}\n - role: assistant\n parts:\n - type: text\n text: |-\n 《手机银行系统》\n\n 依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\n - id: \"5\"\n upstream: [\"2\"]\n state: completed\n toolCall:\n name: online_search\n originalArguments: |-\n {\"keywords\":\"XX公司运维管理文件\"}\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n 《XX公司运维管理文件》\n\n 依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\n - role: tool\n parts:\n - type: data\n data:\n type: cmdb_instance_detail\n objectId: HOST\n detail:\n hostname: dev-01\n env:\n - id: prod\n name: 生产\n - id: test\n name: 测试\n backupOwners:\n - username: Jerry\n email: jerry@example.com\n - username: Lucy\n email: lucy@example.com\n - username: Mark\n email: mark@example.com\n owner:\n username: Jim\n email: jim@example.com\n - id: dev\n name: 开发\n owner:\n username: Tom\n email: tom@example.com\n system:\n id: web\n name: Web\n outputSchema:\n type: object\n properties:\n hostname:\n description: 主机名\n type: string\n system:\n type: object\n properties:\n id:\n type: string\n description: ID\n name:\n type: string\n env:\n type: array\n description: 环境\n items:\n type: object\n properties:\n id:\n description: ID\n type: string\n name:\n description: 环境名称\n type: string\n owner:\n type: object\n properties:\n username:\n type: string\n description: 用户名\n email:\n type: string\n description: 邮箱\n backupOwners:\n type: array\n items:\n type: object\n properties:\n username:\n type: string\n description: 用户名\n email:\n type: string\n description: 邮箱\n - id: \"7\"\n upstream: [\"4\", \"5\"]\n state: completed\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n 依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\n - id: \"8\"\n upstream: [\"7\"]\n instruction: |-\n 深度搜素CMDB给出资源的纳管现状\n state: completed\n toolCall:\n name: create_view\n originalArguments: |-\n {\"requirement\":\"创建一个 XX 视图\"}\n messages:\n - role: tool\n parts:\n - type: text\n text: |-\n <%\n JSON.stringify({\n \"viewId\": \"view-123\",\n \"code\": `// 调用监控数据查询接口查询该主机该时间段内的 CPU 使用率、磁盘使用率和网络流量的指标数据\n defineDataSource(\"hostMetrics\", {\n api: \"easyops.api.data_exchange.olap@Query\",\n objectId: \"HOST\",\n params: {\n model: \"easyops.HOST\",\n filters: [\n {\n name: \"ip\",\n operator: \"==\",\n value: \"1.2.3.4\"\n },\n {\n name: \"time\",\n operator: \">=\",\n value: \"now-2d\"\n },\n {\n name: \"time\",\n operator: \"<=\",\n value: \"now-1s\"\n }\n ],\n dims: [\"time(auto)\"],\n measures: [\n {\n function: {\n args: [\"system_cpu_total_norm_pct\"],\n expression: \"avg\"\n },\n name: \"system_cpu_total_norm_pct\"\n },\n {\n function: {\n args: [\"system_filesystem_usage_pct\"],\n expression: \"avg\"\n },\n name: \"system_filesystem_usage_pct\"\n },\n {\n function: {\n args: [\"system_network_in_bits_per_sec\"],\n expression: \"avg\"\n },\n name: \"system_network_in_bits_per_sec\"\n },\n {\n function: {\n args: [\"system_network_out_bits_per_sec\"],\n expression: \"avg\"\n },\n name: \"system_network_out_bits_per_sec\"\n }\n ]\n }\n });\n\n export default (\n <eo-view title=\"主机 1.2.3.4 监控趋势\">\n <eo-dashboard\n dataSource={CTX.hostMetrics}\n widgets={[\n {\n widget: \"chart\",\n type: \"line\",\n title: \"CPU 使用率\",\n metric: {\n id: \"system_cpu_total_norm_pct\",\n unit: \"percent(1)\"\n }\n },\n {\n widget: \"chart\",\n type: \"area\",\n title: \"磁盘使用率\",\n metric: {\n id: \"system_filesystem_usage_pct\",\n unit: \"percent(1)\"\n }\n },\n {\n widget: \"chart\",\n type: \"line\",\n title: \"网络流量 (入)\",\n metric: {\n id: \"system_network_in_bits_per_sec\",\n unit: \"bits/sec\"\n }\n },\n {\n widget: \"chart\",\n type: \"line\",\n title: \"网络流量 (出)\",\n metric: {\n id: \"system_network_out_bits_per_sec\",\n unit: \"bits/sec\"\n }\n }\n ]}\n />\n </eo-view>\n );`\n })\n %>\n - role: assistant\n parts:\n - type: text\n text: |-\n 基于CMDB查询手机银行的资源纳管情况,纳管现状总结如下:\n\n 实例数据的完整性\n 1. 系统录入(已完成)\n 2. 模块录入(部分完成),交易接入模块未录入\n 3. 环境录入(已完成)\n 4. 主机录入(部分完成),交易接入模块主机未录入\n 5. 部署实例录入(部分完成),交易接入模块的部署实例未录入\n\n 关系数据的完整性\n 1. 系统和模块(部分完成),系统和交易接入模块的关系未建立\n 2. 系统和环境(√)\n 3. 模块和主机(部分完成)\n 4. ...\n - id: \"10\"\n upstream: [\"8\"]\n toolCall:\n name: ask_human\n arguments:\n command: ask_user_more\n question: |-\n - 交易接入模块的录入;\n - 系统和交易接入模块的关系创建 ;\n - 部署实例自动采集特征录入。\n instruction: |-\n 利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\n state: completed\n messages:\n - role: user\n parts:\n - type: text\n text: |-\n 我补充下...\n - id: \"12\"\n upstream: [\"10\"]\n instruction: |-\n 在CMDB中完成手机银行系统的资源纳管\n toolCall:\n name: ask_human\n arguments:\n command: ask_user_confirm\n question: |-\n 方案执行的过程信息\n state: completed\n messages:\n - role: tool\n parts:\n - type: text\n text: |-\n 确认\n - id: \"14\"\n upstream: [\"12\"]\n instruction: |-\n 生成纳管后手机银行系统的逻辑架构和部署架构图\n tag: topology\n state: completed\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n https://example.com/topology\n - id: \"16\"\n upstream: [\"14\"]\n state: completed\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n 该手机银行系统的资源纳管已经完成,本次纳管新增了交易接入模块和该模块相关的主机,以及部署实例信息,模块的纳管建议和架构管理平台打通,部署实例的纳管建议和自动发布平台打通,以便自动完成数据变更,确保数据的准确性,降低架构维护成本。\n# -- YAML DELIMITER (1nbbm8) --\n# <div style=\"width: 100vw; height: 100vh; position: fixed; top: 0; left: 0\">\n# <ai-portal.cruise-canvas id=\"brick-1\"></ai-portal.cruise-canvas>\n# </div>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.task = {\n# state: \"completed\",\n# requirement: \"帮我在CMDB中完成手机银行系统的资源纳管\",\n# plan: [\n# {\n# id: \"2\",\n# state: \"completed\",\n# instruction:\n# \"深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\",\n# },\n# {\n# id: \"8\",\n# state: \"completed\",\n# instruction: \"深度搜素CMDB给出资源的纳管现状\",\n# },\n# {\n# id: \"10\",\n# state: \"completed\",\n# instruction:\n# \"利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\",\n# },\n# {\n# id: \"12\",\n# state: \"completed\",\n# instruction: \"在CMDB中完成手机银行系统的资源纳管\",\n# },\n# {\n# id: \"14\",\n# state: \"completed\",\n# instruction: \"生成纳管后手机银行系统的逻辑架构和部署架构图\",\n# },\n# ],\n# };\n# brick_1.jobs = [\n# {\n# id: \"2\",\n# state: \"completed\",\n# instruction:\n# \"深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\",\n# },\n# {\n# id: \"4\",\n# upstream: [\"2\"],\n# toolCall: {\n# name: \"online_search\",\n# originalArguments: '{\"keywords\":\"手机银行系统\"}',\n# },\n# state: \"completed\",\n# messages: [\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"text\",\n# text: '{\"content\":\"手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\"}',\n# },\n# ],\n# },\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"《手机银行系统》\\n\\n依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"5\",\n# upstream: [\"2\"],\n# state: \"completed\",\n# toolCall: {\n# name: \"online_search\",\n# originalArguments: '{\"keywords\":\"XX公司运维管理文件\"}',\n# },\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"《XX公司运维管理文件》\\n\\n依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\",\n# },\n# ],\n# },\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"data\",\n# data: {\n# type: \"cmdb_instance_detail\",\n# objectId: \"HOST\",\n# detail: {\n# hostname: \"dev-01\",\n# env: [\n# {\n# id: \"prod\",\n# name: \"生产\",\n# },\n# {\n# id: \"test\",\n# name: \"测试\",\n# backupOwners: [\n# {\n# username: \"Jerry\",\n# email: \"jerry@example.com\",\n# },\n# {\n# username: \"Lucy\",\n# email: \"lucy@example.com\",\n# },\n# {\n# username: \"Mark\",\n# email: \"mark@example.com\",\n# },\n# ],\n# owner: {\n# username: \"Jim\",\n# email: \"jim@example.com\",\n# },\n# },\n# {\n# id: \"dev\",\n# name: \"开发\",\n# owner: {\n# username: \"Tom\",\n# email: \"tom@example.com\",\n# },\n# },\n# ],\n# system: {\n# id: \"web\",\n# name: \"Web\",\n# },\n# },\n# outputSchema: {\n# type: \"object\",\n# properties: {\n# hostname: {\n# description: \"主机名\",\n# type: \"string\",\n# },\n# system: {\n# type: \"object\",\n# properties: {\n# id: {\n# type: \"string\",\n# description: \"ID\",\n# },\n# name: {\n# type: \"string\",\n# },\n# },\n# },\n# env: {\n# type: \"array\",\n# description: \"环境\",\n# items: {\n# type: \"object\",\n# properties: {\n# id: {\n# description: \"ID\",\n# type: \"string\",\n# },\n# name: {\n# description: \"环境名称\",\n# type: \"string\",\n# },\n# owner: {\n# type: \"object\",\n# properties: {\n# username: {\n# type: \"string\",\n# description: \"用户名\",\n# },\n# email: {\n# type: \"string\",\n# description: \"邮箱\",\n# },\n# },\n# },\n# backupOwners: {\n# type: \"array\",\n# items: {\n# type: \"object\",\n# properties: {\n# username: {\n# type: \"string\",\n# description: \"用户名\",\n# },\n# email: {\n# type: \"string\",\n# description: \"邮箱\",\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"7\",\n# upstream: [\"4\", \"5\"],\n# state: \"completed\",\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"8\",\n# upstream: [\"7\"],\n# instruction: \"深度搜素CMDB给出资源的纳管现状\",\n# state: \"completed\",\n# toolCall: {\n# name: \"create_view\",\n# originalArguments: '{\"requirement\":\"创建一个 XX 视图\"}',\n# },\n# messages: [\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"text\",\n# text: '<%\\n JSON.stringify({\\n \"viewId\": \"view-123\",\\n \"code\": `// 调用监控数据查询接口查询该主机该时间段内的 CPU 使用率、磁盘使用率和网络流量的指标数据\\ndefineDataSource(\"hostMetrics\", {\\n api: \"easyops.api.data_exchange.olap@Query\",\\n objectId: \"HOST\",\\n params: {\\n model: \"easyops.HOST\",\\n filters: [\\n {\\n name: \"ip\",\\n operator: \"==\",\\n value: \"1.2.3.4\"\\n },\\n {\\n name: \"time\",\\n operator: \">=\",\\n value: \"now-2d\"\\n },\\n {\\n name: \"time\",\\n operator: \"<=\",\\n value: \"now-1s\"\\n }\\n ],\\n dims: [\"time(auto)\"],\\n measures: [\\n {\\n function: {\\n args: [\"system_cpu_total_norm_pct\"],\\n expression: \"avg\"\\n },\\n name: \"system_cpu_total_norm_pct\"\\n },\\n {\\n function: {\\n args: [\"system_filesystem_usage_pct\"],\\n expression: \"avg\"\\n },\\n name: \"system_filesystem_usage_pct\"\\n },\\n {\\n function: {\\n args: [\"system_network_in_bits_per_sec\"],\\n expression: \"avg\"\\n },\\n name: \"system_network_in_bits_per_sec\"\\n },\\n {\\n function: {\\n args: [\"system_network_out_bits_per_sec\"],\\n expression: \"avg\"\\n },\\n name: \"system_network_out_bits_per_sec\"\\n }\\n ]\\n }\\n});\\n\\nexport default (\\n <eo-view title=\"主机 1.2.3.4 监控趋势\">\\n <eo-dashboard\\n dataSource={CTX.hostMetrics}\\n widgets={[\\n {\\n widget: \"chart\",\\n type: \"line\",\\n title: \"CPU 使用率\",\\n metric: {\\n id: \"system_cpu_total_norm_pct\",\\n unit: \"percent(1)\"\\n }\\n },\\n {\\n widget: \"chart\",\\n type: \"area\",\\n title: \"磁盘使用率\",\\n metric: {\\n id: \"system_filesystem_usage_pct\",\\n unit: \"percent(1)\"\\n }\\n },\\n {\\n widget: \"chart\",\\n type: \"line\",\\n title: \"网络流量 (入)\",\\n metric: {\\n id: \"system_network_in_bits_per_sec\",\\n unit: \"bits/sec\"\\n }\\n },\\n {\\n widget: \"chart\",\\n type: \"line\",\\n title: \"网络流量 (出)\",\\n metric: {\\n id: \"system_network_out_bits_per_sec\",\\n unit: \"bits/sec\"\\n }\\n }\\n ]}\\n />\\n </eo-view>\\n);`\\n })\\n%>',\n# },\n# ],\n# },\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"基于CMDB查询手机银行的资源纳管情况,纳管现状总结如下:\\n\\n实例数据的完整性\\n1. 系统录入(已完成)\\n2. 模块录入(部分完成),交易接入模块未录入\\n3. 环境录入(已完成)\\n4. 主机录入(部分完成),交易接入模块主机未录入\\n5. 部署实例录入(部分完成),交易接入模块的部署实例未录入\\n\\n关系数据的完整性\\n1. 系统和模块(部分完成),系统和交易接入模块的关系未建立\\n2. 系统和环境(√)\\n3. 模块和主机(部分完成)\\n4. ...\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"10\",\n# upstream: [\"8\"],\n# toolCall: {\n# name: \"ask_human\",\n# arguments: {\n# command: \"ask_user_more\",\n# question:\n# \"- 交易接入模块的录入;\\n- 系统和交易接入模块的关系创建 ;\\n- 部署实例自动采集特征录入。\",\n# },\n# },\n# instruction:\n# \"利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\",\n# state: \"completed\",\n# messages: [\n# {\n# role: \"user\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"我补充下...\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"12\",\n# upstream: [\"10\"],\n# instruction: \"在CMDB中完成手机银行系统的资源纳管\",\n# toolCall: {\n# name: \"ask_human\",\n# arguments: {\n# command: \"ask_user_confirm\",\n# question: \"方案执行的过程信息\",\n# },\n# },\n# state: \"completed\",\n# messages: [\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"确认\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"14\",\n# upstream: [\"12\"],\n# instruction: \"生成纳管后手机银行系统的逻辑架构和部署架构图\",\n# tag: \"topology\",\n# state: \"completed\",\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"https://example.com/topology\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"16\",\n# upstream: [\"14\"],\n# state: \"completed\",\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"该手机银行系统的资源纳管已经完成,本次纳管新增了交易接入模块和该模块相关的主机,以及部署实例信息,模块的纳管建议和架构管理平台打通,部署实例的纳管建议和自动发布平台打通,以便自动完成数据变更,确保数据的准确性,降低架构维护成本。\",\n# },\n# ],\n# },\n# ],\n# },\n# ];\n# </script>\n# \n```\n"
7
- },
8
5
  "ai-portal.home-container": {
9
6
  "doc": "构件 `ai-portal.home-container`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.home-container\nproperties:\n textContent: Hello world\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.home-container>Hello world</ai-portal.home-container>\n# \n```\n"
10
7
  },
@@ -47,16 +44,25 @@
47
44
  "ai-portal.preview-container": {
48
45
  "doc": "构件 `ai-portal.preview-container`\n\n## Examples\n\n### Basic\n\n```yaml preview minHeight=\"600px\"\nbrick: ai-portal.preview-container\nproperties:\n style:\n position: fixed\n inset: 0\n overflowY: auto\n source: |\n const RESPONSE = {\n \"list\": [\n {\n \"inode_usage\": [\n {\n \"total_inodes\": 21162000,\n \"used_inodes\": 1385716,\n \"free_inodes\": 19776284,\n \"percent\": \"7%\",\n \"device\": \"/dev/sda1\",\n \"mount_point\": \"/\"\n },\n {\n \"mount_point\": \"/boot\",\n \"total_inodes\": 524288,\n \"used_inodes\": 333,\n \"free_inodes\": 523955,\n \"percent\": \"1%\",\n \"device\": \"/dev/vda1\"\n }\n ],\n \"ip\": \"172.30.0.134\",\n \"disk_usage\": [\n {\n \"total\": \"95.00GB\",\n \"used\": \"85.00GB\",\n \"free\": \"9.00GB\",\n \"percent\": \"91%\",\n \"rw_status\": \"rw\",\n \"large_files\": [\n {\n \"size\": \"1.00GB\",\n \"path\": \"/temp/1\"\n },\n {\n \"path\": \"/temp/2\",\n \"size\": \"759.00MB\"\n },\n {\n \"size\": \"360.00MB\",\n \"path\": \"/temp/3\"\n }\n ],\n \"device\": \"/dev/sda1\",\n \"mount_point\": \"/\"\n },\n {\n \"rw_status\": \"rw\",\n \"device\": \"/dev/vda1\",\n \"mount_point\": \"/boot\",\n \"total\": \"1014.00MB\",\n \"used\": \"181.00MB\",\n \"free\": \"834.00MB\",\n \"percent\": \"18%\"\n }\n ]\n }\n ]\n };\n\n export default (\n <View title=\"磁盘使用情况\">\n {RESPONSE.list.map((item) => (\n <Card title={item.ip}>\n {/* 磁盘空间使用情况 */}\n <Plaintext>磁盘空间使用</Plaintext>\n <Table\n dataSource={{ list: item.disk_usage }}\n columns={[\n { dataIndex: \"device\", key: \"device\", title: \"设备\" },\n { dataIndex: \"mount_point\", key: \"mount_point\", title: \"挂载点\" },\n { dataIndex: \"total\", key: \"total\", title: \"总大小\" },\n { dataIndex: \"used\", key: \"used\", title: \"已用空间\" },\n { dataIndex: \"free\", key: \"free\", title: \"可用空间\" },\n { dataIndex: \"percent\", key: \"percent\", title: \"使用率\" },\n { dataIndex: \"rw_status\", key: \"rw_status\", title: \"读写状态\" }\n ]}\n rowKey=\"device\"\n pagination={false}\n />\n\n {/* Inode 使用情况 */}\n <Plaintext>Inode 使用情况</Plaintext>\n <Table\n dataSource={{ list: item.inode_usage }}\n columns={[\n { dataIndex: \"device\", key: \"device\", title: \"设备\" },\n { dataIndex: \"mount_point\", key: \"mount_point\", title: \"挂载点\" },\n { dataIndex: \"total_inodes\", key: \"total_inodes\", title: \"Inode 总数\" },\n { dataIndex: \"used_inodes\", key: \"used_inodes\", title: \"已用 Inode\" },\n { dataIndex: \"free_inodes\", key: \"free_inodes\", title: \"空闲 Inode\" },\n {\n dataIndex: \"percent\", key: \"percent\", title: \"使用率\",\n render: (cell, record) => (\n // <Plaintext>{record.percent}%</Plaintext>\n `~${record.percent}`\n )\n }\n ]}\n rowKey=\"device\"\n pagination={false}\n />\n\n {/* 大文件列表(仅当存在 large_files 且有内容时) */}\n {item.disk_usage\n .filter(disk => disk.large_files && disk.large_files.length > 0)\n .map(disk =>\n disk.large_files ? (\n <Fragment key={disk.device}>\n <Plaintext>{`大文件列表 (${disk.mount_point})`}</Plaintext>\n <Table\n dataSource={{ list: disk.large_files }}\n columns={[\n { dataIndex: \"path\", key: \"path\", title: \"路径\" },\n { dataIndex: \"size\", key: \"size\", title: \"大小\" }\n ]}\n rowKey=\"path\"\n pagination={false}\n />\n </Fragment>\n ) : null\n )}\n </Card>\n ))}\n </View>\n );\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.preview-container\n# style=\"position: fixed; inset: 0; overflow-y: auto\"\n# id=\"brick-1\"\n# ></ai-portal.preview-container>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.source =\n# 'const RESPONSE = {\\n \"list\": [\\n {\\n \"inode_usage\": [\\n {\\n \"total_inodes\": 21162000,\\n \"used_inodes\": 1385716,\\n \"free_inodes\": 19776284,\\n \"percent\": \"7%\",\\n \"device\": \"/dev/sda1\",\\n \"mount_point\": \"/\"\\n },\\n {\\n \"mount_point\": \"/boot\",\\n \"total_inodes\": 524288,\\n \"used_inodes\": 333,\\n \"free_inodes\": 523955,\\n \"percent\": \"1%\",\\n \"device\": \"/dev/vda1\"\\n }\\n ],\\n \"ip\": \"172.30.0.134\",\\n \"disk_usage\": [\\n {\\n \"total\": \"95.00GB\",\\n \"used\": \"85.00GB\",\\n \"free\": \"9.00GB\",\\n \"percent\": \"91%\",\\n \"rw_status\": \"rw\",\\n \"large_files\": [\\n {\\n \"size\": \"1.00GB\",\\n \"path\": \"/temp/1\"\\n },\\n {\\n \"path\": \"/temp/2\",\\n \"size\": \"759.00MB\"\\n },\\n {\\n \"size\": \"360.00MB\",\\n \"path\": \"/temp/3\"\\n }\\n ],\\n \"device\": \"/dev/sda1\",\\n \"mount_point\": \"/\"\\n },\\n {\\n \"rw_status\": \"rw\",\\n \"device\": \"/dev/vda1\",\\n \"mount_point\": \"/boot\",\\n \"total\": \"1014.00MB\",\\n \"used\": \"181.00MB\",\\n \"free\": \"834.00MB\",\\n \"percent\": \"18%\"\\n }\\n ]\\n }\\n ]\\n};\\n\\nexport default (\\n <View title=\"磁盘使用情况\">\\n {RESPONSE.list.map((item) => (\\n <Card title={item.ip}>\\n {/* 磁盘空间使用情况 */}\\n <Plaintext>磁盘空间使用</Plaintext>\\n <Table\\n dataSource={{ list: item.disk_usage }}\\n columns={[\\n { dataIndex: \"device\", key: \"device\", title: \"设备\" },\\n { dataIndex: \"mount_point\", key: \"mount_point\", title: \"挂载点\" },\\n { dataIndex: \"total\", key: \"total\", title: \"总大小\" },\\n { dataIndex: \"used\", key: \"used\", title: \"已用空间\" },\\n { dataIndex: \"free\", key: \"free\", title: \"可用空间\" },\\n { dataIndex: \"percent\", key: \"percent\", title: \"使用率\" },\\n { dataIndex: \"rw_status\", key: \"rw_status\", title: \"读写状态\" }\\n ]}\\n rowKey=\"device\"\\n pagination={false}\\n />\\n\\n {/* Inode 使用情况 */}\\n <Plaintext>Inode 使用情况</Plaintext>\\n <Table\\n dataSource={{ list: item.inode_usage }}\\n columns={[\\n { dataIndex: \"device\", key: \"device\", title: \"设备\" },\\n { dataIndex: \"mount_point\", key: \"mount_point\", title: \"挂载点\" },\\n { dataIndex: \"total_inodes\", key: \"total_inodes\", title: \"Inode 总数\" },\\n { dataIndex: \"used_inodes\", key: \"used_inodes\", title: \"已用 Inode\" },\\n { dataIndex: \"free_inodes\", key: \"free_inodes\", title: \"空闲 Inode\" },\\n {\\n dataIndex: \"percent\", key: \"percent\", title: \"使用率\",\\n render: (cell, record) => (\\n // <Plaintext>{record.percent}%</Plaintext>\\n `~${record.percent}`\\n )\\n }\\n ]}\\n rowKey=\"device\"\\n pagination={false}\\n />\\n\\n {/* 大文件列表(仅当存在 large_files 且有内容时) */}\\n {item.disk_usage\\n .filter(disk => disk.large_files && disk.large_files.length > 0)\\n .map(disk =>\\n disk.large_files ? (\\n <Fragment key={disk.device}>\\n <Plaintext>{`大文件列表 (${disk.mount_point})`}</Plaintext>\\n <Table\\n dataSource={{ list: disk.large_files }}\\n columns={[\\n { dataIndex: \"path\", key: \"path\", title: \"路径\" },\\n { dataIndex: \"size\", key: \"size\", title: \"大小\" }\\n ]}\\n rowKey=\"path\"\\n pagination={false}\\n />\\n </Fragment>\\n ) : null\\n )}\\n </Card>\\n ))}\\n </View>\\n);\\n';\n# </script>\n# \n```\n"
49
46
  },
47
+ "ai-portal.action-buttons": {
48
+ "doc": "构件 `ai-portal.action-buttons`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.chat-box\nchildren:\n - brick: ai-portal.action-buttons\n properties:\n items:\n - event: think\n text: 深度思考\n icon:\n - lib: antd\n theme: outlined\n icon: reddit\n - event: networking\n text: 联网搜索\n icon:\n lib: antd\n theme: outlined\n icon: global\n events:\n think:\n action: console.log\n networking:\n action: console.log\n slot: actions\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.chat-box>\n# <ai-portal.action-buttons\n# slot=\"actions\"\n# id=\"brick-1\"\n# ></ai-portal.action-buttons>\n# </ai-portal.chat-box>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.items = [\n# {\n# event: \"think\",\n# text: \"深度思考\",\n# icon: [\n# {\n# lib: \"antd\",\n# theme: \"outlined\",\n# icon: \"reddit\",\n# },\n# ],\n# },\n# {\n# event: \"networking\",\n# text: \"联网搜索\",\n# icon: {\n# lib: \"antd\",\n# theme: \"outlined\",\n# icon: \"global\",\n# },\n# },\n# ];\n# brick_1.addEventListener(\"think\", (e) => {\n# console.log(e.detail);\n# });\n# brick_1.addEventListener(\"networking\", (e) => {\n# console.log(e.detail);\n# });\n# </script>\n# \n```\n"
49
+ },
50
50
  "ai-portal.goal-card-list": {
51
51
  "doc": "构件 `ai-portal.goal-card-list`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.goal-card-list\nproperties:\n style:\n width: 600px\n goalList:\n - title: 页面流程绘制\n index: 100124\n state: ready\n instanceId: abc1\n conversations:\n - 会话1\n - 会话2\n - 会话3\n - title: 原型与设计绘制\n index: 100125\n state: working\n instanceId: bdc9\n conversations:\n - 会话4\n - title: 设计稿绘制\n index: 100126\n state: completed\n instanceId: d76a\n conversations:\n - 会话5\n - 会话6\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.goal-card-list\n# style=\"width: 600px\"\n# id=\"brick-1\"\n# ></ai-portal.goal-card-list>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.goalList = [\n# {\n# title: \"页面流程绘制\",\n# index: 100124,\n# state: \"ready\",\n# instanceId: \"abc1\",\n# conversations: [\"会话1\", \"会话2\", \"会话3\"],\n# },\n# {\n# title: \"原型与设计绘制\",\n# index: 100125,\n# state: \"working\",\n# instanceId: \"bdc9\",\n# conversations: [\"会话4\"],\n# },\n# {\n# title: \"设计稿绘制\",\n# index: 100126,\n# state: \"completed\",\n# instanceId: \"d76a\",\n# conversations: [\"会话5\", \"会话6\"],\n# },\n# ];\n# </script>\n# \n```\n"
52
52
  },
53
53
  "ai-portal.project-conversations": {
54
54
  "doc": "构件 `ai-portal.project-conversations`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.project-conversations\nproperties:\n list:\n - conversationId: \"conv-a\"\n title: 标题一\n description: 这是一段描述\n startTime: 1757904096\n goal: GOAL0005\n - conversationId: \"conv-b\"\n title: 标题二\n startTime: 1757863597\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.project-conversations id=\"brick-1\"></ai-portal.project-conversations>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.list = [\n# {\n# conversationId: \"conv-a\",\n# title: \"标题一\",\n# description: \"这是一段描述\",\n# startTime: 1757904096,\n# goal: \"GOAL0005\",\n# },\n# {\n# conversationId: \"conv-b\",\n# title: \"标题二\",\n# startTime: 1757863597,\n# },\n# ];\n# </script>\n# \n```\n\n### Loading\n\n```yaml preview\nbrick: ai-portal.project-conversations\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.project-conversations></ai-portal.project-conversations>\n# \n```\n"
55
55
  },
56
- "ai-portal.action-buttons": {
57
- "doc": "构件 `ai-portal.action-buttons`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.chat-box\nchildren:\n - brick: ai-portal.action-buttons\n properties:\n items:\n - event: think\n text: 深度思考\n icon:\n - lib: antd\n theme: outlined\n icon: reddit\n - event: networking\n text: 联网搜索\n icon:\n lib: antd\n theme: outlined\n icon: global\n events:\n think:\n action: console.log\n networking:\n action: console.log\n slot: actions\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.chat-box>\n# <ai-portal.action-buttons\n# slot=\"actions\"\n# id=\"brick-1\"\n# ></ai-portal.action-buttons>\n# </ai-portal.chat-box>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.items = [\n# {\n# event: \"think\",\n# text: \"深度思考\",\n# icon: [\n# {\n# lib: \"antd\",\n# theme: \"outlined\",\n# icon: \"reddit\",\n# },\n# ],\n# },\n# {\n# event: \"networking\",\n# text: \"联网搜索\",\n# icon: {\n# lib: \"antd\",\n# theme: \"outlined\",\n# icon: \"global\",\n# },\n# },\n# ];\n# brick_1.addEventListener(\"think\", (e) => {\n# console.log(e.detail);\n# });\n# brick_1.addEventListener(\"networking\", (e) => {\n# console.log(e.detail);\n# });\n# </script>\n# \n```\n"
58
- },
59
56
  "ai-portal.project-knowledges": {
60
57
  "doc": "构件 `ai-portal.project-knowledges`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.project-knowledges\nproperties:\n list:\n - knowledgeId: \"knowledge-a\"\n title: 标题一\n description: 这是一段描述\n time: 1757904096\n - knowledgeId: \"knowledge-b\"\n title: 标题二\n time: 1757863597\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.project-knowledges id=\"brick-1\"></ai-portal.project-knowledges>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.list = [\n# {\n# knowledgeId: \"knowledge-a\",\n# title: \"标题一\",\n# description: \"这是一段描述\",\n# time: 1757904096,\n# },\n# {\n# knowledgeId: \"knowledge-b\",\n# title: \"标题二\",\n# time: 1757863597,\n# },\n# ];\n# </script>\n# \n```\n\n### Loading\n\n```yaml preview\nbrick: ai-portal.project-knowledges\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.project-knowledges></ai-portal.project-knowledges>\n# \n```\n"
58
+ },
59
+ "ai-portal.activity-timeline": {
60
+ "doc": "构件 `ai-portal.activity-timeline`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.activity-timeline\nproperties:\n list:\n - user_id: u001\n user_name: Tom\n action_type: create_goal\n time: 1757853597\n - user_id: u001\n user_name: Tom\n action_type: alter_owner\n time: 1757863597\n metadata:\n after:\n user_name: Lucy\n - user_id: u002\n user_name: Lucy\n action_type: start_conversation\n time: 1757904096\n metadata:\n conversation_id: c001\n conversation_title: 项目规划\n - user_id: u002\n user_name: Lucy\n action_type: decompose_goals\n time: 1757904096\n metadata:\n sub_goals_count: 2\n sub_goals:\n - title: \"先计划\"\n - title: \"再执行\"\n - user_id: u002\n user_name: Lucy\n action_type: alter_user\n time: 1757904096\n metadata:\n before:\n - user_name: Jim\n after:\n - user_name: Joy\n - user_name: Green\n - user_id: u001\n user_name: Tom\n action_type: add_comment\n time: 1757904096\n metadata:\n comment_content: Good!\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.activity-timeline id=\"brick-1\"></ai-portal.activity-timeline>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.list = [\n# {\n# user_id: \"u001\",\n# user_name: \"Tom\",\n# action_type: \"create_goal\",\n# time: 1757853597,\n# },\n# {\n# user_id: \"u001\",\n# user_name: \"Tom\",\n# action_type: \"alter_owner\",\n# time: 1757863597,\n# metadata: {\n# after: {\n# user_name: \"Lucy\",\n# },\n# },\n# },\n# {\n# user_id: \"u002\",\n# user_name: \"Lucy\",\n# action_type: \"start_conversation\",\n# time: 1757904096,\n# metadata: {\n# conversation_id: \"c001\",\n# conversation_title: \"项目规划\",\n# },\n# },\n# {\n# user_id: \"u002\",\n# user_name: \"Lucy\",\n# action_type: \"decompose_goals\",\n# time: 1757904096,\n# metadata: {\n# sub_goals_count: 2,\n# sub_goals: [\n# {\n# title: \"先计划\",\n# },\n# {\n# title: \"再执行\",\n# },\n# ],\n# },\n# },\n# {\n# user_id: \"u002\",\n# user_name: \"Lucy\",\n# action_type: \"alter_user\",\n# time: 1757904096,\n# metadata: {\n# before: [\n# {\n# user_name: \"Jim\",\n# },\n# ],\n# after: [\n# {\n# user_name: \"Joy\",\n# },\n# {\n# user_name: \"Green\",\n# },\n# ],\n# },\n# },\n# {\n# user_id: \"u001\",\n# user_name: \"Tom\",\n# action_type: \"add_comment\",\n# time: 1757904096,\n# metadata: {\n# comment_content: \"Good!\",\n# },\n# },\n# ];\n# </script>\n# \n```\n"
61
+ },
62
+ "ai-portal.chat-input": {
63
+ "doc": "构件 `ai-portal.chat-input`\n\n## Examples\n\n### Basic\n\n```yaml preview\nbrick: ai-portal.chat-input\n# -- YAML DELIMITER (1nbbm8) --\n# <ai-portal.chat-input></ai-portal.chat-input>\n# \n```\n"
64
+ },
65
+ "ai-portal.cruise-canvas": {
66
+ "doc": "构件 `ai-portal.cruise-canvas`\n\n## Examples\n\n### Basic\n\n```yaml preview minHeight=\"600px\"\nbrick: div\nproperties:\n style:\n width: 100vw\n height: 100vh\n position: fixed\n top: 0\n left: 0\nchildren:\n - brick: ai-portal.cruise-canvas\n properties:\n task:\n state: completed\n requirement: |-\n 帮我在CMDB中完成手机银行系统的资源纳管\n plan:\n - id: \"2\"\n state: completed\n instruction: |-\n 深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\n - id: \"8\"\n state: completed\n instruction: |-\n 深度搜素CMDB给出资源的纳管现状\n - id: \"10\"\n state: completed\n instruction: |-\n 利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\n - id: \"12\"\n state: completed\n instruction: |-\n 在CMDB中完成手机银行系统的资源纳管\n - id: \"14\"\n state: completed\n instruction: |-\n 生成纳管后手机银行系统的逻辑架构和部署架构图\n jobs:\n - id: \"2\"\n state: completed\n instruction: |-\n 深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\n - id: \"4\"\n upstream: [\"2\"]\n toolCall:\n name: online_search\n originalArguments: |-\n {\"keywords\":\"手机银行系统\"}\n state: completed\n messages:\n - role: tool\n parts:\n - type: text\n text: |-\n {\"content\":\"手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\"}\n - role: assistant\n parts:\n - type: text\n text: |-\n 《手机银行系统》\n\n 依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\n - id: \"5\"\n upstream: [\"2\"]\n state: completed\n toolCall:\n name: online_search\n originalArguments: |-\n {\"keywords\":\"XX公司运维管理文件\"}\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n 《XX公司运维管理文件》\n\n 依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\n - role: tool\n parts:\n - type: data\n data:\n type: cmdb_instance_detail\n objectId: HOST\n detail:\n hostname: dev-01\n env:\n - id: prod\n name: 生产\n - id: test\n name: 测试\n backupOwners:\n - username: Jerry\n email: jerry@example.com\n - username: Lucy\n email: lucy@example.com\n - username: Mark\n email: mark@example.com\n owner:\n username: Jim\n email: jim@example.com\n - id: dev\n name: 开发\n owner:\n username: Tom\n email: tom@example.com\n system:\n id: web\n name: Web\n outputSchema:\n type: object\n properties:\n hostname:\n description: 主机名\n type: string\n system:\n type: object\n properties:\n id:\n type: string\n description: ID\n name:\n type: string\n env:\n type: array\n description: 环境\n items:\n type: object\n properties:\n id:\n description: ID\n type: string\n name:\n description: 环境名称\n type: string\n owner:\n type: object\n properties:\n username:\n type: string\n description: 用户名\n email:\n type: string\n description: 邮箱\n backupOwners:\n type: array\n items:\n type: object\n properties:\n username:\n type: string\n description: 用户名\n email:\n type: string\n description: 邮箱\n - id: \"7\"\n upstream: [\"4\", \"5\"]\n state: completed\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n 依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\n - id: \"8\"\n upstream: [\"7\"]\n instruction: |-\n 深度搜素CMDB给出资源的纳管现状\n state: completed\n toolCall:\n name: create_view\n originalArguments: |-\n {\"requirement\":\"创建一个 XX 视图\"}\n messages:\n - role: tool\n parts:\n - type: text\n text: |-\n <%\n JSON.stringify({\n \"viewId\": \"view-123\",\n \"code\": `// 调用监控数据查询接口查询该主机该时间段内的 CPU 使用率、磁盘使用率和网络流量的指标数据\n defineDataSource(\"hostMetrics\", {\n api: \"easyops.api.data_exchange.olap@Query\",\n objectId: \"HOST\",\n params: {\n model: \"easyops.HOST\",\n filters: [\n {\n name: \"ip\",\n operator: \"==\",\n value: \"1.2.3.4\"\n },\n {\n name: \"time\",\n operator: \">=\",\n value: \"now-2d\"\n },\n {\n name: \"time\",\n operator: \"<=\",\n value: \"now-1s\"\n }\n ],\n dims: [\"time(auto)\"],\n measures: [\n {\n function: {\n args: [\"system_cpu_total_norm_pct\"],\n expression: \"avg\"\n },\n name: \"system_cpu_total_norm_pct\"\n },\n {\n function: {\n args: [\"system_filesystem_usage_pct\"],\n expression: \"avg\"\n },\n name: \"system_filesystem_usage_pct\"\n },\n {\n function: {\n args: [\"system_network_in_bits_per_sec\"],\n expression: \"avg\"\n },\n name: \"system_network_in_bits_per_sec\"\n },\n {\n function: {\n args: [\"system_network_out_bits_per_sec\"],\n expression: \"avg\"\n },\n name: \"system_network_out_bits_per_sec\"\n }\n ]\n }\n });\n\n export default (\n <eo-view title=\"主机 1.2.3.4 监控趋势\">\n <eo-dashboard\n dataSource={CTX.hostMetrics}\n widgets={[\n {\n widget: \"chart\",\n type: \"line\",\n title: \"CPU 使用率\",\n metric: {\n id: \"system_cpu_total_norm_pct\",\n unit: \"percent(1)\"\n }\n },\n {\n widget: \"chart\",\n type: \"area\",\n title: \"磁盘使用率\",\n metric: {\n id: \"system_filesystem_usage_pct\",\n unit: \"percent(1)\"\n }\n },\n {\n widget: \"chart\",\n type: \"line\",\n title: \"网络流量 (入)\",\n metric: {\n id: \"system_network_in_bits_per_sec\",\n unit: \"bits/sec\"\n }\n },\n {\n widget: \"chart\",\n type: \"line\",\n title: \"网络流量 (出)\",\n metric: {\n id: \"system_network_out_bits_per_sec\",\n unit: \"bits/sec\"\n }\n }\n ]}\n />\n </eo-view>\n );`\n })\n %>\n - role: assistant\n parts:\n - type: text\n text: |-\n 基于CMDB查询手机银行的资源纳管情况,纳管现状总结如下:\n\n 实例数据的完整性\n 1. 系统录入(已完成)\n 2. 模块录入(部分完成),交易接入模块未录入\n 3. 环境录入(已完成)\n 4. 主机录入(部分完成),交易接入模块主机未录入\n 5. 部署实例录入(部分完成),交易接入模块的部署实例未录入\n\n 关系数据的完整性\n 1. 系统和模块(部分完成),系统和交易接入模块的关系未建立\n 2. 系统和环境(√)\n 3. 模块和主机(部分完成)\n 4. ...\n - id: \"10\"\n upstream: [\"8\"]\n toolCall:\n name: ask_human\n arguments:\n command: ask_user_more\n question: |-\n - 交易接入模块的录入;\n - 系统和交易接入模块的关系创建 ;\n - 部署实例自动采集特征录入。\n instruction: |-\n 利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\n state: completed\n messages:\n - role: user\n parts:\n - type: text\n text: |-\n 我补充下...\n - id: \"12\"\n upstream: [\"10\"]\n instruction: |-\n 在CMDB中完成手机银行系统的资源纳管\n toolCall:\n name: ask_human\n arguments:\n command: ask_user_confirm\n question: |-\n 方案执行的过程信息\n state: completed\n messages:\n - role: tool\n parts:\n - type: text\n text: |-\n 确认\n - id: \"14\"\n upstream: [\"12\"]\n instruction: |-\n 生成纳管后手机银行系统的逻辑架构和部署架构图\n tag: topology\n state: completed\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n https://example.com/topology\n - id: \"16\"\n upstream: [\"14\"]\n state: completed\n messages:\n - role: assistant\n parts:\n - type: text\n text: |-\n 该手机银行系统的资源纳管已经完成,本次纳管新增了交易接入模块和该模块相关的主机,以及部署实例信息,模块的纳管建议和架构管理平台打通,部署实例的纳管建议和自动发布平台打通,以便自动完成数据变更,确保数据的准确性,降低架构维护成本。\n# -- YAML DELIMITER (1nbbm8) --\n# <div style=\"width: 100vw; height: 100vh; position: fixed; top: 0; left: 0\">\n# <ai-portal.cruise-canvas id=\"brick-1\"></ai-portal.cruise-canvas>\n# </div>\n# \n# <script>\n# const brick_1 = document.getElementById(\"brick-1\");\n# brick_1.task = {\n# state: \"completed\",\n# requirement: \"帮我在CMDB中完成手机银行系统的资源纳管\",\n# plan: [\n# {\n# id: \"2\",\n# state: \"completed\",\n# instruction:\n# \"深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\",\n# },\n# {\n# id: \"8\",\n# state: \"completed\",\n# instruction: \"深度搜素CMDB给出资源的纳管现状\",\n# },\n# {\n# id: \"10\",\n# state: \"completed\",\n# instruction:\n# \"利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\",\n# },\n# {\n# id: \"12\",\n# state: \"completed\",\n# instruction: \"在CMDB中完成手机银行系统的资源纳管\",\n# },\n# {\n# id: \"14\",\n# state: \"completed\",\n# instruction: \"生成纳管后手机银行系统的逻辑架构和部署架构图\",\n# },\n# ],\n# };\n# brick_1.jobs = [\n# {\n# id: \"2\",\n# state: \"completed\",\n# instruction:\n# \"深度搜素内部知识库,确认手机银行系统包含的逻辑组件和部署要求\",\n# },\n# {\n# id: \"4\",\n# upstream: [\"2\"],\n# toolCall: {\n# name: \"online_search\",\n# originalArguments: '{\"keywords\":\"手机银行系统\"}',\n# },\n# state: \"completed\",\n# messages: [\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"text\",\n# text: '{\"content\":\"手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\"}',\n# },\n# ],\n# },\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"《手机银行系统》\\n\\n依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"5\",\n# upstream: [\"2\"],\n# state: \"completed\",\n# toolCall: {\n# name: \"online_search\",\n# originalArguments: '{\"keywords\":\"XX公司运维管理文件\"}',\n# },\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"《XX公司运维管理文件》\\n\\n依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\",\n# },\n# ],\n# },\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"data\",\n# data: {\n# type: \"cmdb_instance_detail\",\n# objectId: \"HOST\",\n# detail: {\n# hostname: \"dev-01\",\n# env: [\n# {\n# id: \"prod\",\n# name: \"生产\",\n# },\n# {\n# id: \"test\",\n# name: \"测试\",\n# backupOwners: [\n# {\n# username: \"Jerry\",\n# email: \"jerry@example.com\",\n# },\n# {\n# username: \"Lucy\",\n# email: \"lucy@example.com\",\n# },\n# {\n# username: \"Mark\",\n# email: \"mark@example.com\",\n# },\n# ],\n# owner: {\n# username: \"Jim\",\n# email: \"jim@example.com\",\n# },\n# },\n# {\n# id: \"dev\",\n# name: \"开发\",\n# owner: {\n# username: \"Tom\",\n# email: \"tom@example.com\",\n# },\n# },\n# ],\n# system: {\n# id: \"web\",\n# name: \"Web\",\n# },\n# },\n# outputSchema: {\n# type: \"object\",\n# properties: {\n# hostname: {\n# description: \"主机名\",\n# type: \"string\",\n# },\n# system: {\n# type: \"object\",\n# properties: {\n# id: {\n# type: \"string\",\n# description: \"ID\",\n# },\n# name: {\n# type: \"string\",\n# },\n# },\n# },\n# env: {\n# type: \"array\",\n# description: \"环境\",\n# items: {\n# type: \"object\",\n# properties: {\n# id: {\n# description: \"ID\",\n# type: \"string\",\n# },\n# name: {\n# description: \"环境名称\",\n# type: \"string\",\n# },\n# owner: {\n# type: \"object\",\n# properties: {\n# username: {\n# type: \"string\",\n# description: \"用户名\",\n# },\n# email: {\n# type: \"string\",\n# description: \"邮箱\",\n# },\n# },\n# },\n# backupOwners: {\n# type: \"array\",\n# items: {\n# type: \"object\",\n# properties: {\n# username: {\n# type: \"string\",\n# description: \"用户名\",\n# },\n# email: {\n# type: \"string\",\n# description: \"邮箱\",\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"7\",\n# upstream: [\"4\", \"5\"],\n# state: \"completed\",\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"依据内部知识库,手机银行系统的逻辑组件包含用户认证,交易接入和理财中心三个模块组成。依据《XX公司运维管理文件》该系统的重要等级为一级,可用性要求99.999%,MTTR为小于3分钟,该系统部署需要实现异地容灾,建议采用双中心部署,且单中心内核心模块无单点。\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"8\",\n# upstream: [\"7\"],\n# instruction: \"深度搜素CMDB给出资源的纳管现状\",\n# state: \"completed\",\n# toolCall: {\n# name: \"create_view\",\n# originalArguments: '{\"requirement\":\"创建一个 XX 视图\"}',\n# },\n# messages: [\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"text\",\n# text: '<%\\n JSON.stringify({\\n \"viewId\": \"view-123\",\\n \"code\": `// 调用监控数据查询接口查询该主机该时间段内的 CPU 使用率、磁盘使用率和网络流量的指标数据\\ndefineDataSource(\"hostMetrics\", {\\n api: \"easyops.api.data_exchange.olap@Query\",\\n objectId: \"HOST\",\\n params: {\\n model: \"easyops.HOST\",\\n filters: [\\n {\\n name: \"ip\",\\n operator: \"==\",\\n value: \"1.2.3.4\"\\n },\\n {\\n name: \"time\",\\n operator: \">=\",\\n value: \"now-2d\"\\n },\\n {\\n name: \"time\",\\n operator: \"<=\",\\n value: \"now-1s\"\\n }\\n ],\\n dims: [\"time(auto)\"],\\n measures: [\\n {\\n function: {\\n args: [\"system_cpu_total_norm_pct\"],\\n expression: \"avg\"\\n },\\n name: \"system_cpu_total_norm_pct\"\\n },\\n {\\n function: {\\n args: [\"system_filesystem_usage_pct\"],\\n expression: \"avg\"\\n },\\n name: \"system_filesystem_usage_pct\"\\n },\\n {\\n function: {\\n args: [\"system_network_in_bits_per_sec\"],\\n expression: \"avg\"\\n },\\n name: \"system_network_in_bits_per_sec\"\\n },\\n {\\n function: {\\n args: [\"system_network_out_bits_per_sec\"],\\n expression: \"avg\"\\n },\\n name: \"system_network_out_bits_per_sec\"\\n }\\n ]\\n }\\n});\\n\\nexport default (\\n <eo-view title=\"主机 1.2.3.4 监控趋势\">\\n <eo-dashboard\\n dataSource={CTX.hostMetrics}\\n widgets={[\\n {\\n widget: \"chart\",\\n type: \"line\",\\n title: \"CPU 使用率\",\\n metric: {\\n id: \"system_cpu_total_norm_pct\",\\n unit: \"percent(1)\"\\n }\\n },\\n {\\n widget: \"chart\",\\n type: \"area\",\\n title: \"磁盘使用率\",\\n metric: {\\n id: \"system_filesystem_usage_pct\",\\n unit: \"percent(1)\"\\n }\\n },\\n {\\n widget: \"chart\",\\n type: \"line\",\\n title: \"网络流量 (入)\",\\n metric: {\\n id: \"system_network_in_bits_per_sec\",\\n unit: \"bits/sec\"\\n }\\n },\\n {\\n widget: \"chart\",\\n type: \"line\",\\n title: \"网络流量 (出)\",\\n metric: {\\n id: \"system_network_out_bits_per_sec\",\\n unit: \"bits/sec\"\\n }\\n }\\n ]}\\n />\\n </eo-view>\\n);`\\n })\\n%>',\n# },\n# ],\n# },\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"基于CMDB查询手机银行的资源纳管情况,纳管现状总结如下:\\n\\n实例数据的完整性\\n1. 系统录入(已完成)\\n2. 模块录入(部分完成),交易接入模块未录入\\n3. 环境录入(已完成)\\n4. 主机录入(部分完成),交易接入模块主机未录入\\n5. 部署实例录入(部分完成),交易接入模块的部署实例未录入\\n\\n关系数据的完整性\\n1. 系统和模块(部分完成),系统和交易接入模块的关系未建立\\n2. 系统和环境(√)\\n3. 模块和主机(部分完成)\\n4. ...\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"10\",\n# upstream: [\"8\"],\n# toolCall: {\n# name: \"ask_human\",\n# arguments: {\n# command: \"ask_user_more\",\n# question:\n# \"- 交易接入模块的录入;\\n- 系统和交易接入模块的关系创建 ;\\n- 部署实例自动采集特征录入。\",\n# },\n# },\n# instruction:\n# \"利用深度思考能力,给出手机银行系统的资源纳管优化方案,该方案用户可以微调或确认\",\n# state: \"completed\",\n# messages: [\n# {\n# role: \"user\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"我补充下...\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"12\",\n# upstream: [\"10\"],\n# instruction: \"在CMDB中完成手机银行系统的资源纳管\",\n# toolCall: {\n# name: \"ask_human\",\n# arguments: {\n# command: \"ask_user_confirm\",\n# question: \"方案执行的过程信息\",\n# },\n# },\n# state: \"completed\",\n# messages: [\n# {\n# role: \"tool\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"确认\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"14\",\n# upstream: [\"12\"],\n# instruction: \"生成纳管后手机银行系统的逻辑架构和部署架构图\",\n# tag: \"topology\",\n# state: \"completed\",\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"https://example.com/topology\",\n# },\n# ],\n# },\n# ],\n# },\n# {\n# id: \"16\",\n# upstream: [\"14\"],\n# state: \"completed\",\n# messages: [\n# {\n# role: \"assistant\",\n# parts: [\n# {\n# type: \"text\",\n# text: \"该手机银行系统的资源纳管已经完成,本次纳管新增了交易接入模块和该模块相关的主机,以及部署实例信息,模块的纳管建议和架构管理平台打通,部署实例的纳管建议和自动发布平台打通,以便自动完成数据变更,确保数据的准确性,降低架构维护成本。\",\n# },\n# ],\n# },\n# ],\n# },\n# ];\n# </script>\n# \n```\n"
61
67
  }
62
68
  }
@@ -0,0 +1,2 @@
1
+ (()=>{"use strict";var e,t,r,a,n,o,l,i,s,c,d,f,h,u,m,b,p,v,g,P,y,x,w,k={92309:(e,t,r)=>{var a={"./chat-box":()=>Promise.all([r.e(3506),r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(9435),r.e(6573)]).then((()=>()=>r(67707))),"./home-container":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(3172)]).then((()=>()=>r(67494))),"./stat-with-mini-chart":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7345)]).then((()=>()=>r(57687))),"./elevo-sidebar":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(1302),r.e(9475),r.e(7372),r.e(8616),r.e(7771)]).then((()=>()=>r(86833))),"./icon-button":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(1541)]).then((()=>()=>r(99011))),"./show-cases":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(9475),r.e(4332)]).then((()=>()=>r(32118))),"./mcp-tools":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(7087)]).then((()=>()=>r(72789))),"./chat-stream":()=>Promise.all([r.e(5521),r.e(3506),r.e(6862),r.e(9535),r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(4558),r.e(1302),r.e(9475),r.e(7372),r.e(1321),r.e(9435),r.e(0),r.e(1919),r.e(7774),r.e(7493),r.e(3554),r.e(366)]).then((()=>()=>r(38208))),"./ai-employees":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(6729)]).then((()=>()=>r(61159))),"./ai-agents":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(304)]).then((()=>()=>r(72714))),"./entity-sdk-get":()=>Promise.all([r.e(4558),r.e(7372),r.e(8858)]).then((()=>()=>r(53725))),"./entity-sdk-list":()=>Promise.all([r.e(4558),r.e(7372),r.e(4330)]).then((()=>()=>r(61417))),"./save-request-store":()=>Promise.all([r.e(4558),r.e(8539)]).then((()=>()=>r(10917))),"./load-request-store":()=>Promise.all([r.e(4558),r.e(8539)]).then((()=>()=>r(10917))),"./clear-request-store":()=>Promise.all([r.e(4558),r.e(8539)]).then((()=>()=>r(10917))),"./page-container":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(9475),r.e(5020)]).then((()=>()=>r(75142))),"./project-summary":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(1302),r.e(2677)]).then((()=>()=>r(39051))),"./tab-list":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(9873)]).then((()=>()=>r(1911))),"./dropdown-select":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(9053)]).then((()=>()=>r(63651))),"./preview-container":()=>Promise.all([r.e(5521),r.e(6862),r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(4558),r.e(9475),r.e(7372),r.e(1321),r.e(0),r.e(1919),r.e(7774),r.e(8775)]).then((()=>()=>r(67693))),"./action-buttons":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(6109)]).then((()=>()=>r(24059))),"./goal-card-list":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(4322)]).then((()=>()=>r(30404))),"./project-conversations":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(1302),r.e(2697)]).then((()=>()=>r(57855))),"./project-knowledges":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(1302),r.e(7908)]).then((()=>()=>r(76734))),"./activity-timeline":()=>Promise.all([r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(1302),r.e(9576)]).then((()=>()=>r(88954))),"./chat-input":()=>Promise.all([r.e(3506),r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(9435),r.e(7218)]).then((()=>()=>r(6988))),"./cruise-canvas":()=>Promise.all([r.e(5521),r.e(3506),r.e(6862),r.e(9535),r.e(8324),r.e(9828),r.e(8769),r.e(7921),r.e(1280),r.e(5168),r.e(7117),r.e(1030),r.e(4558),r.e(1302),r.e(9475),r.e(7372),r.e(1321),r.e(9435),r.e(0),r.e(1919),r.e(7774),r.e(7493),r.e(453),r.e(2267)]).then((()=>()=>r(16185)))},n=(e,t)=>(r.R=t,t=r.o(a,e)?a[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),r.R=void 0,t),o=(e,t)=>{if(r.S){var a="default",n=r.S[a];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return r.S[a]=e,r.I(a,t)}};r.d(t,{get:()=>n,init:()=>o})}},j={};function S(e){var t=j[e];if(void 0!==t)return t.exports;var r=j[e]={id:e,loaded:!1,exports:{}};return k[e].call(r.exports,r,r.exports,S),r.loaded=!0,r.exports}S.m=k,S.c=j,S.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return S.d(t,{a:t}),t},S.d=(e,t)=>{for(var r in t)S.o(t,r)&&!S.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},S.f={},S.e=e=>Promise.all(Object.keys(S.f).reduce(((t,r)=>(S.f[r](e,t),t)),[])),S.u=e=>"chunks/"+({304:"ai-agents",366:"chat-stream",1541:"icon-button",2267:"cruise-canvas",2677:"project-summary",2697:"project-conversations",3172:"home-container",4322:"goal-card-list",4330:"entity-sdk-list",4332:"show-cases",5020:"page-container",6109:"action-buttons",6573:"chat-box",6729:"ai-employees",7087:"mcp-tools",7218:"chat-input",7345:"stat-with-mini-chart",7771:"elevo-sidebar",7908:"project-knowledges",8539:"load-request-store",8775:"preview-container",8858:"entity-sdk-get",9053:"dropdown-select",9576:"activity-timeline",9873:"tab-list"}[e]||e)+"."+{114:"86e10cdd",304:"8bc0db39",366:"88ec601e",382:"d2e3f46f",453:"e0c39d75",721:"f43de0ef",726:"392de709",843:"9b7325c3",871:"42c14164",879:"a469d051",1045:"0906fc23",1097:"56d301a5",1120:"fd177648",1122:"95231c39",1136:"456f1c68",1215:"78630d79",1541:"1f657055",1889:"218ea7ea",1931:"2abee15e",1940:"afcdea49",2052:"ef23d12a",2260:"9564eb16",2267:"f715731a",2277:"b026624f",2432:"352ae272",2449:"b46fc22a",2508:"15c05669",2510:"91062655",2593:"783fb42e",2677:"fab144a8",2697:"d4771579",3003:"a607b32b",3144:"4088b5d1",3171:"f486ac82",3172:"9f9ca1ca",3208:"0796f5be",3331:"bb7b4c1c",3419:"28287d23",3506:"da6e43af",3554:"65e56ba5",3744:"327905d1",3816:"fc867cd4",3935:"3b6a2f5d",4041:"6b503155",4190:"7612613e",4228:"fb9278c3",4281:"ddad94d5",4306:"bae21d5d",4322:"9866674c",4330:"0b8120ce",4332:"5d37311e",4474:"5fd3e9c8",4491:"539d30f8",4609:"e21567a0",4658:"18d5ee4d",4735:"24157512",4765:"ae81ae59",4837:"e8c87fc9",5020:"a637a6c4",5032:"2e4fb116",5065:"9616e9d3",5191:"ce5dfec4",5250:"5294dc23",5307:"28ab7643",5384:"564ae2e4",5399:"501fc322",5498:"298984c7",5521:"ef48a4d3",5548:"498b312d",5552:"57a9edba",5727:"93a1388d",5807:"0b926b80",5936:"5bba7f2f",6023:"843ea4a1",6029:"6fe4c192",6109:"bc5e9334",6161:"d7e3ea42",6519:"3ce478ef",6530:"dd7ab536",6573:"37df7bc1",6729:"b4cfaf9c",6773:"afd27a30",6862:"32630cc8",7087:"457ff64a",7146:"c0ae3b12",7218:"2bd1c748",7302:"3117acc5",7345:"0c308dd8",7353:"02afd00b",7367:"26e21493",7493:"b181babb",7721:"c985db03",7733:"0615ed85",7771:"199ad1c6",7774:"505f9191",7842:"d5a94411",7908:"e5845df3",8231:"89b65f56",8263:"d9eaafab",8311:"69ab488d",8324:"71f13678",8348:"2fbb3b7e",8539:"eb92f754",8588:"0bce58e7",8616:"ceae4e7b",8633:"1b8bb39e",8755:"1525c38d",8757:"5cde95c7",8775:"fa54ae91",8858:"37c62d5f",8936:"b9a73775",8989:"ddf83737",9034:"7ff08734",9053:"3c0cd96d",9140:"8e69fcb4",9251:"52df4857",9263:"affcdb7b",9515:"468a8527",9535:"ff0f82a1",9559:"3db56cb0",9576:"a7da73e9",9599:"ffd509c6",9634:"71192f72",9828:"6afc1a0f",9831:"f659ce60",9844:"c3062a6b",9848:"ab8ad988",9873:"acfe1ff4"}[e]+".js",S.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),S.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="@next-bricks/ai-portal:",S.l=(r,a,n,o)=>{if(e[r])e[r].push(a);else{var l,i;if(void 0!==n)for(var s=document.getElementsByTagName("script"),c=0;c<s.length;c++){var d=s[c];if(d.getAttribute("src")==r||d.getAttribute("data-webpack")==t+n){l=d;break}}l||(i=!0,(l=document.createElement("script")).charset="utf-8",l.timeout=120,S.nc&&l.setAttribute("nonce",S.nc),l.setAttribute("data-webpack",t+n),l.src=r),e[r]=[a];var f=(t,a)=>{l.onerror=l.onload=null,clearTimeout(h);var n=e[r];if(delete e[r],l.parentNode&&l.parentNode.removeChild(l),n&&n.forEach((e=>e(a))),t)return t(a)},h=setTimeout(f.bind(null,void 0,{type:"timeout",target:l}),12e4);l.onerror=f.bind(null,l.onerror),l.onload=f.bind(null,l.onload),i&&document.head.appendChild(l)}},S.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},S.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{S.S={};var e={},t={};S.I=(r,a)=>{a||(a=[]);var n=t[r];if(n||(n=t[r]={}),!(a.indexOf(n)>=0)){if(a.push(n),e[r])return e[r];S.o(S.S,r)||(S.S[r]={});var o=S.S[r],l="@next-bricks/ai-portal",i=(e,t,r,a)=>{var n=o[e]=o[e]||{},i=n[t];(!i||!i.loaded&&(!a!=!i.eager?a:l>i.from))&&(n[t]={get:r,from:l,eager:!!a})},s=[];return"default"===r&&(i("@babel/parser","7.27.2",(()=>S.e(6773).then((()=>()=>S(46773))))),i("@easyops-cn/brick-next-pipes","0.7.3",(()=>Promise.all([S.e(4306),S.e(1030),S.e(1302),S.e(5310)]).then((()=>()=>S(34306))))),i("@next-core/cook","2.5.10",(()=>Promise.all([S.e(1122),S.e(580)]).then((()=>()=>S(61122))))),i("@next-core/easyops-runtime","0.15.8",(()=>Promise.all([S.e(1097),S.e(7117),S.e(1030),S.e(4558),S.e(9475),S.e(7372),S.e(1321),S.e(0),S.e(9933),S.e(5310),S.e(1732),S.e(9848)]).then((()=>()=>S(11097))))),i("@next-core/element","1.2.18",(()=>S.e(1045).then((()=>()=>S(21045))))),i("@next-core/http","1.2.13",(()=>S.e(8989).then((()=>()=>S(48989))))),i("@next-core/i18n","1.0.83",(()=>Promise.all([S.e(7117),S.e(4558),S.e(671),S.e(5552)]).then((()=>()=>S(75552))))),i("@next-core/inject","1.0.58",(()=>Promise.all([S.e(1030),S.e(9933),S.e(2277)]).then((()=>()=>S(72277))))),i("@next-core/loader","1.6.16",(()=>S.e(5399).then((()=>()=>S(35399))))),i("@next-core/pipes","2.0.34",(()=>Promise.all([S.e(1919),S.e(6519)]).then((()=>()=>S(76519))))),i("@next-core/react-element","1.0.37",(()=>Promise.all([S.e(8769),S.e(7921),S.e(9435),S.e(114)]).then((()=>()=>S(20114))))),i("@next-core/react-runtime","1.7.28",(()=>Promise.all([S.e(8769),S.e(1280),S.e(1030),S.e(9475),S.e(4837)]).then((()=>()=>S(64837))))),i("@next-core/runtime","1.65.6",(()=>Promise.all([S.e(9140),S.e(7117),S.e(1030),S.e(4558),S.e(1302),S.e(7372),S.e(1321),S.e(0),S.e(1732),S.e(9718)]).then((()=>()=>S(19140))))),i("@next-core/supply","2.3.7",(()=>Promise.all([S.e(1030),S.e(1302),S.e(9933),S.e(9559)]).then((()=>()=>S(49559))))),i("@next-core/theme","1.6.0",(()=>Promise.all([S.e(1889),S.e(2052)]).then((()=>()=>S(51889))))),i("@next-core/utils/general","1.8.4",(()=>S.e(871).then((()=>()=>S(40871))))),i("@next-core/utils/storyboard","1.8.4",(()=>Promise.all([S.e(1030),S.e(4558),S.e(1321),S.e(7146)]).then((()=>()=>S(97146))))),i("history","4.10.1",(()=>S.e(3003).then((()=>()=>S(65384))))),i("i18next-browser-languagedetector","7.2.2",(()=>S.e(726).then((()=>()=>S(50726))))),i("i18next","22.5.1",(()=>S.e(843).then((()=>()=>S(20843))))),i("js-yaml","3.14.1",(()=>S.e(9515).then((()=>()=>S(19515))))),i("lodash","4.17.21",(()=>S.e(5250).then((()=>()=>S(45250))))),i("moment/locale/zh-cn.js","2.30.1",(()=>Promise.all([S.e(7721),S.e(9844)]).then((()=>()=>S(61329))))),i("moment","2.30.1",(()=>Promise.all([S.e(7721),S.e(9844)]).then((()=>()=>S(99420))))),i("react-dom","0.0.0-experimental-ee8509801-20230117",(()=>Promise.all([S.e(3144),S.e(8769)]).then((()=>()=>S(43144))))),i("react","0.0.0-experimental-ee8509801-20230117",(()=>S.e(4041).then((()=>()=>S(14041)))))),e[r]=s.length?Promise.all(s).then((()=>e[r]=1)):1}}})(),(()=>{var e;S.g.importScripts&&(e=S.g.location+"");var t=S.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var a=r.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=r[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),S.p=e})(),r=e=>{var t=e=>e.split(".").map((e=>+e==e?+e:e)),r=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),a=r[1]?t(r[1]):[];return r[2]&&(a.length++,a.push.apply(a,t(r[2]))),r[3]&&(a.push([]),a.push.apply(a,t(r[3]))),a},a=(e,t)=>{e=r(e),t=r(t);for(var a=0;;){if(a>=e.length)return a<t.length&&"u"!=(typeof t[a])[0];var n=e[a],o=(typeof n)[0];if(a>=t.length)return"u"==o;var l=t[a],i=(typeof l)[0];if(o!=i)return"o"==o&&"n"==i||"s"==i||"u"==o;if("o"!=o&&"u"!=o&&n!=l)return n<l;a++}},n=e=>{var t=e[0],r="";if(1===e.length)return"*";if(t+.5){r+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var a=1,o=1;o<e.length;o++)a--,r+="u"==(typeof(i=e[o]))[0]?"-":(a>0?".":"")+(a=2,i);return r}var l=[];for(o=1;o<e.length;o++){var i=e[o];l.push(0===i?"not("+s()+")":1===i?"("+s()+" || "+s()+")":2===i?l.pop()+" "+l.pop():n(i))}return s();function s(){return l.pop().replace(/^\((.+)\)$/,"$1")}},o=(e,t)=>{if(0 in e){t=r(t);var a=e[0],n=a<0;n&&(a=-a-1);for(var l=0,i=1,s=!0;;i++,l++){var c,d,f=i<e.length?(typeof e[i])[0]:"";if(l>=t.length||"o"==(d=(typeof(c=t[l]))[0]))return!s||("u"==f?i>a&&!n:""==f!=n);if("u"==d){if(!s||"u"!=f)return!1}else if(s)if(f==d)if(i<=a){if(c!=e[i])return!1}else{if(n?c>e[i]:c<e[i])return!1;c!=e[i]&&(s=!1)}else if("s"!=f&&"n"!=f){if(n||i<=a)return!1;s=!1,i--}else{if(i<=a||d<f!=n)return!1;s=!1}else"s"!=f&&"n"!=f&&(s=!1,i--)}}var h=[],u=h.pop.bind(h);for(l=1;l<e.length;l++){var m=e[l];h.push(1==m?u()|u():2==m?u()&u():m?o(m,t):!u())}return!!u()},l=(e,t)=>e&&S.o(e,t),i=e=>(e.loaded=1,e.get()),s=e=>Object.keys(e).reduce(((t,r)=>(e[r].eager&&(t[r]=e[r]),t)),{}),c=(e,t,r,n)=>{var l=n?s(e[t]):e[t];return(t=Object.keys(l).reduce(((e,t)=>!o(r,t)||e&&!a(e,t)?e:t),0))&&l[t]},d=(e,t,r)=>{var n=r?s(e[t]):e[t];return Object.keys(n).reduce(((e,t)=>!e||!n[e].loaded&&a(e,t)?t:e),0)},f=(e,t,r,a)=>"Unsatisfied version "+r+" from "+(r&&e[t][r].from)+" of shared singleton module "+t+" (required "+n(a)+")",h=(e,t,r,a,o)=>{var l=e[r];return"No satisfying version ("+n(a)+")"+(o?" for eager consumption":"")+" of shared module "+r+" found in shared scope "+t+".\nAvailable versions: "+Object.keys(l).map((e=>e+" from "+l[e].from)).join(", ")},u=e=>{throw new Error(e)},m=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},p=(e,t,r)=>r?r():((e,t)=>u("Shared module "+t+" doesn't exist in shared scope "+e))(e,t),v=(b=e=>function(t,r,a,n,o){var l=S.I(t);return l&&l.then&&!a?l.then(e.bind(e,t,S.S[t],r,!1,n,o)):e(t,S.S[t],r,a,n,o)})(((e,t,r,a,n,o)=>{if(!l(t,r))return p(e,r,o);var s=c(t,r,n,a);return s?i(s):o?o():void u(h(t,e,r,n,a))})),g=b(((e,t,r,a,n,s)=>{if(!l(t,r))return p(e,r,s);var c=d(t,r,a);return o(n,c)||m(f(t,r,c,n)),i(t[r][c])})),P={},y={41030:()=>g("default","lodash",!1,[1,4,17,21],(()=>S.e(5250).then((()=>()=>S(45250))))),21302:()=>g("default","moment",!1,[1,2,30,1],(()=>Promise.all([S.e(7721),S.e(9844)]).then((()=>()=>S(99420))))),55310:()=>g("default","js-yaml",!1,[0],(()=>S.e(9515).then((()=>()=>S(19515))))),40580:()=>g("default","@babel/parser",!1,[0],(()=>S.e(6773).then((()=>()=>S(46773))))),87117:()=>g("default","@next-core/i18n",!1,[1,1,0,83],(()=>Promise.all([S.e(4558),S.e(671),S.e(3171)]).then((()=>()=>S(75552))))),94558:()=>g("default","@next-core/utils/general",!1,[1,1,8,4],(()=>S.e(871).then((()=>()=>S(40871))))),29475:()=>g("default","@next-core/runtime",!1,[1,1,65,6],(()=>Promise.all([S.e(9140),S.e(7117),S.e(1030),S.e(4558),S.e(1302),S.e(7372),S.e(1321),S.e(0),S.e(1732),S.e(9718)]).then((()=>()=>S(19140))))),57372:()=>g("default","@next-core/http",!1,[1,1,2,13],(()=>S.e(8989).then((()=>()=>S(48989))))),71321:()=>g("default","@next-core/cook",!1,[0],(()=>Promise.all([S.e(1122),S.e(580)]).then((()=>()=>S(61122))))),7e4:()=>g("default","@next-core/utils/storyboard",!1,[1,1,8,4],(()=>S.e(4765).then((()=>()=>S(97146))))),59933:()=>g("default","@next-core/pipes",!1,[0],(()=>Promise.all([S.e(1919),S.e(6519)]).then((()=>()=>S(76519))))),11732:()=>g("default","history",!1,[0],(()=>S.e(3003).then((()=>()=>S(65384))))),848:()=>g("default","i18next-browser-languagedetector",!1,[0],(()=>S.e(726).then((()=>()=>S(50726))))),75630:()=>g("default","i18next",!1,[0],(()=>S.e(843).then((()=>()=>S(20843))))),61919:()=>g("default","@easyops-cn/brick-next-pipes",!1,[2,0,7,3],(()=>Promise.all([S.e(4306),S.e(1030),S.e(1302),S.e(5310)]).then((()=>()=>S(34306))))),18769:()=>v("default","react",!1,[6,0,0,0,,"experimental-ee8509801-20230117"],(()=>S.e(4041).then((()=>()=>S(14041))))),7921:()=>v("default","@next-core/element",!1,[1,1,2,18],(()=>S.e(1045).then((()=>()=>S(21045))))),59435:()=>v("default","react-dom",!1,[6,0,0,0,,"experimental-ee8509801-20230117"],(()=>S.e(3144).then((()=>()=>S(43144))))),11280:()=>v("default","@next-core/react-element",!1,[1,1,0,37],(()=>Promise.all([S.e(7921),S.e(9435),S.e(7733)]).then((()=>()=>S(20114))))),26036:()=>g("default","moment/locale/zh-cn.js",!1,[1,2,30,1],(()=>Promise.all([S.e(7721),S.e(9844)]).then((()=>()=>S(61329))))),29283:()=>g("default","@next-core/inject",!1,[0],(()=>Promise.all([S.e(9933),S.e(4658)]).then((()=>()=>S(72277))))),45599:()=>g("default","@next-core/loader",!1,[0],(()=>S.e(5399).then((()=>()=>S(35399))))),94167:()=>g("default","@next-core/supply",!1,[0],(()=>Promise.all([S.e(9933),S.e(1940)]).then((()=>()=>S(49559))))),65168:()=>g("default","@next-core/theme",!1,[1,1,6,0],(()=>S.e(1889).then((()=>()=>S(51889))))),28247:()=>v("default","@next-core/react-runtime",!1,[1,1,7,28],(()=>S.e(9599).then((()=>()=>S(64837))))),92775:()=>g("default","@next-core/easyops-runtime",!1,[2,0,15,8],(()=>Promise.all([S.e(1097),S.e(9933),S.e(5310),S.e(1732)]).then((()=>()=>S(11097)))))},x={0:[7e4],453:[92775],580:[40580],671:[848,75630],1030:[41030],1280:[11280],1302:[21302],1321:[71321],1732:[11732],1919:[61919],4558:[94558],5168:[65168],5310:[55310],7117:[87117],7372:[57372],7493:[28247],7921:[7921],8769:[18769],9435:[59435],9475:[29475],9718:[26036,29283,45599,94167],9933:[59933]},w={},S.f.consumes=(e,t)=>{S.o(x,e)&&x[e].forEach((e=>{if(S.o(P,e))return t.push(P[e]);if(!w[e]){var r=t=>{P[e]=0,S.m[e]=r=>{delete S.c[e],r.exports=t()}};w[e]=!0;var a=t=>{delete P[e],S.m[e]=r=>{throw delete S.c[e],t}};try{var n=y[e]();n.then?t.push(P[e]=n.then(r).catch(a)):r(n)}catch(e){a(e)}}}))},(()=>{S.b=document.baseURI||self.location.href;var e={2641:0};S.f.j=(t,r)=>{var a=S.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(1(030|280|302|321|732|919)|5(168|310|80)|7(117|372|921)|9(435|475|718|933)|0|4558|671|8769)$/.test(t))e[t]=0;else{var n=new Promise(((r,n)=>a=e[t]=[r,n]));r.push(a[2]=n);var o=S.p+S.u(t),l=new Error;S.l(o,(r=>{if(S.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var n=r&&("load"===r.type?"missing":r.type),o=r&&r.target&&r.target.src;l.message="Loading chunk "+t+" failed.\n("+n+": "+o+")",l.name="ChunkLoadError",l.type=n,l.request=o,a[1](l)}}),"chunk-"+t,t)}};var t=(t,r)=>{var a,n,[o,l,i]=r,s=0;if(o.some((t=>0!==e[t]))){for(a in l)S.o(l,a)&&(S.m[a]=l[a]);i&&i(S)}for(t&&t(r);s<o.length;s++)n=o[s],S.o(e,n)&&e[n]&&e[n][0](),e[n]=0},r=globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),S.nc=void 0;var E=S(92309);window["bricks/ai-portal"]=E})();
2
+ //# sourceMappingURL=index.890818f5.js.map