@next-bricks/ai-portal 0.8.0 → 0.9.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 (79) hide show
  1. package/dist/bricks.json +5 -6
  2. package/dist/chunks/1550.73c02195.js +3 -0
  3. package/dist/chunks/1550.73c02195.js.map +1 -0
  4. package/dist/chunks/{1889.d6185164.js → 1889.e5637ffa.js} +2 -2
  5. package/dist/chunks/{1889.d6185164.js.map → 1889.e5637ffa.js.map} +1 -1
  6. package/dist/chunks/{3171.dbc33a51.js → 3171.9901a89f.js} +2 -2
  7. package/dist/chunks/{3171.dbc33a51.js.map → 3171.9901a89f.js.map} +1 -1
  8. package/dist/chunks/{3933.46c6b203.js → 3933.8bdb5813.js} +2 -2
  9. package/dist/chunks/{3933.46c6b203.js.map → 3933.8bdb5813.js.map} +1 -1
  10. package/dist/chunks/4837.d80fe058.js +2 -0
  11. package/dist/chunks/{4837.78431856.js.map → 4837.d80fe058.js.map} +1 -1
  12. package/dist/chunks/{5552.517eedc2.js → 5552.77c9524e.js} +2 -2
  13. package/dist/chunks/{5552.517eedc2.js.map → 5552.77c9524e.js.map} +1 -1
  14. package/dist/chunks/{6314.11c44a7e.js → 6314.eba1fb91.js} +2 -2
  15. package/dist/chunks/{6314.11c44a7e.js.map → 6314.eba1fb91.js.map} +1 -1
  16. package/dist/chunks/7218.91b5ad29.js +2 -0
  17. package/dist/chunks/{7218.4ed3eab4.js.map → 7218.91b5ad29.js.map} +1 -1
  18. package/dist/chunks/7301.b39378d6.js +2 -0
  19. package/dist/chunks/7301.b39378d6.js.map +1 -0
  20. package/dist/chunks/8660.3de86810.js +2 -0
  21. package/dist/chunks/8660.3de86810.js.map +1 -0
  22. package/dist/chunks/871.81f76df0.js +2 -0
  23. package/dist/chunks/871.81f76df0.js.map +1 -0
  24. package/dist/chunks/9140.fa0b40fe.js +3 -0
  25. package/dist/chunks/9140.fa0b40fe.js.map +1 -0
  26. package/dist/chunks/940.0be35dfb.js +3 -0
  27. package/dist/chunks/940.0be35dfb.js.map +1 -0
  28. package/dist/chunks/{9515.02c68755.js → 9515.81b4f7b8.js} +2 -2
  29. package/dist/chunks/9515.81b4f7b8.js.map +1 -0
  30. package/dist/chunks/{chat-box.e2888c33.js → chat-box.13609201.js} +2 -2
  31. package/dist/chunks/{chat-box.e2888c33.js.map → chat-box.13609201.js.map} +1 -1
  32. package/dist/chunks/{chat-history.f20f37fb.js → chat-history.5746208f.js} +3 -3
  33. package/dist/chunks/chat-history.5746208f.js.map +1 -0
  34. package/dist/chunks/cruise-canvas.64d546fb.js +2 -0
  35. package/dist/chunks/cruise-canvas.64d546fb.js.map +1 -0
  36. package/dist/chunks/main.5863edbd.js +2 -0
  37. package/dist/chunks/{main.22c76dec.js.map → main.5863edbd.js.map} +1 -1
  38. package/dist/examples.json +3 -3
  39. package/dist/index.fe476c10.js +2 -0
  40. package/dist/{index.f247f2b6.js.map → index.fe476c10.js.map} +1 -1
  41. package/dist/manifest.json +45 -44
  42. package/dist/types.json +8 -9
  43. package/dist-types/cruise-canvas/CanvasContext.d.ts +1 -2
  44. package/dist-types/cruise-canvas/ToolProgressLine/ToolProgressLine.d.ts +2 -2
  45. package/dist-types/cruise-canvas/Topology/Topology.d.ts +1 -0
  46. package/dist-types/cruise-canvas/bricks.d.ts +0 -4
  47. package/dist-types/cruise-canvas/constants.d.ts +2 -1
  48. package/dist-types/cruise-canvas/diagram.d.ts +3 -0
  49. package/dist-types/cruise-canvas/i18n.d.ts +4 -3
  50. package/dist-types/cruise-canvas/index.d.ts +1 -9
  51. package/dist-types/cruise-canvas/table.d.ts +3 -0
  52. package/dist-types/cruise-canvas/useTaskDetail.d.ts +1 -0
  53. package/dist-types/cruise-canvas/utils/getToolDataProgress.d.ts +2 -3
  54. package/package.json +4 -3
  55. package/dist/chunks/1550.b4a46d30.js +0 -3
  56. package/dist/chunks/1550.b4a46d30.js.map +0 -1
  57. package/dist/chunks/437.0ec404d3.js +0 -2
  58. package/dist/chunks/437.0ec404d3.js.map +0 -1
  59. package/dist/chunks/4837.78431856.js +0 -2
  60. package/dist/chunks/7218.4ed3eab4.js +0 -2
  61. package/dist/chunks/7301.562f065e.js +0 -2
  62. package/dist/chunks/7301.562f065e.js.map +0 -1
  63. package/dist/chunks/871.623e9948.js +0 -2
  64. package/dist/chunks/871.623e9948.js.map +0 -1
  65. package/dist/chunks/9140.9370c1d8.js +0 -3
  66. package/dist/chunks/9140.9370c1d8.js.map +0 -1
  67. package/dist/chunks/940.98a91cc2.js +0 -3
  68. package/dist/chunks/940.98a91cc2.js.map +0 -1
  69. package/dist/chunks/9515.02c68755.js.map +0 -1
  70. package/dist/chunks/chat-history.f20f37fb.js.map +0 -1
  71. package/dist/chunks/cruise-canvas.c3ba89cd.js +0 -2
  72. package/dist/chunks/cruise-canvas.c3ba89cd.js.map +0 -1
  73. package/dist/chunks/main.22c76dec.js +0 -2
  74. package/dist/index.f247f2b6.js +0 -2
  75. /package/dist/chunks/{1550.b4a46d30.js.LICENSE.txt → 1550.73c02195.js.LICENSE.txt} +0 -0
  76. /package/dist/chunks/{9140.9370c1d8.js.LICENSE.txt → 9140.fa0b40fe.js.LICENSE.txt} +0 -0
  77. /package/dist/chunks/{940.98a91cc2.js.LICENSE.txt → 940.0be35dfb.js.LICENSE.txt} +0 -0
  78. /package/dist/chunks/{chat-history.f20f37fb.js.LICENSE.txt → chat-history.5746208f.js.LICENSE.txt} +0 -0
  79. /package/dist-types/cruise-canvas/utils/{index.spec.d.ts → getToolDataProgress.spec.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/7218.4ed3eab4.js","mappings":"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","sources":["webpack:///../../node_modules/@next-core/react-runtime/dist/esm/ReactUseBrick.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentTheme.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useRecentApps.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentApp.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useRouteRender.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/useProviderArgsDefaults.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/fetch.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/useProvider.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/useProviderArgs.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/asyncWrapBrick.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useNavConfig.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useLazyWrapBrick.js"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { __secret_internals, handleHttpError, getV2RuntimeFromDll } from \"@next-core/runtime\";\n// Note: always synchronize code in LegacyUseBrick:\n// `bricks/v2-adapter/src/data-providers/legacy-brick-kit/getLegacyUseBrick.ts`\nlet ReactUseBrick = function ReactUseBrick(_ref) {\n let {\n useBrick,\n data,\n errorBoundary,\n refCallback,\n ignoredCallback\n } = _ref;\n const [renderResult, setRenderResult] = useState(null);\n const mountResult = useRef();\n const [renderKey, setRenderKey] = useState();\n const IdCounterRef = useRef(0);\n const initialRenderId = useMemo(() => {\n var _secret_internals$ge;\n return (_secret_internals$ge = __secret_internals.getRenderId) === null || _secret_internals$ge === void 0 ? void 0 : _secret_internals$ge.call(__secret_internals);\n }, []);\n useEffect(() => {\n let ignore = false;\n async function init() {\n try {\n const newRender = await __secret_internals.renderUseBrick(useBrick, data, errorBoundary);\n if (ignore) {\n return;\n }\n setRenderResult(newRender);\n setRenderKey(getUniqueId(IdCounterRef));\n } catch (error) {\n if (!ignore && isTheSameRender(initialRenderId)) {\n // eslint-disable-next-line no-console\n console.error(\"Render useBrick failed:\", useBrick, \"with data:\", data);\n handleHttpError(error);\n }\n }\n }\n init();\n return () => {\n ignore = true;\n };\n }, [data, useBrick, initialRenderId, errorBoundary]);\n const _refCallback = useCallback(element => {\n if (element) {\n mountResult.current = __secret_internals.mountUseBrick(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n renderResult, element);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n __secret_internals.unmountUseBrick(renderResult, mountResult.current);\n mountResult.current = undefined;\n }\n refCallback === null || refCallback === void 0 || refCallback(element);\n }, [refCallback, renderResult]);\n if (!renderResult) {\n // Fallback when loading/\n return null;\n // return <span>🌀 Loading...</span>;\n }\n const {\n tagName\n } = renderResult;\n if (tagName === null) {\n ignoredCallback === null || ignoredCallback === void 0 || ignoredCallback();\n return null;\n }\n const WebComponent = tagName;\n return /*#__PURE__*/React.createElement(WebComponent, {\n key: renderKey,\n ref: _refCallback\n });\n};\nfunction getUniqueId(ref) {\n return ++ref.current;\n}\nfunction isTheSameRender(initialRenderId) {\n var _secret_internals$ge2;\n const newRenderId = (_secret_internals$ge2 = __secret_internals.getRenderId) === null || _secret_internals$ge2 === void 0 ? void 0 : _secret_internals$ge2.call(__secret_internals);\n return !initialRenderId || !newRenderId || initialRenderId === newRenderId;\n}\nlet ReactUseMultipleBricks = function ReactUseMultipleBricks(_ref2) {\n let {\n useBrick,\n data,\n errorBoundary\n } = _ref2;\n if (Array.isArray(useBrick)) {\n return /*#__PURE__*/React.createElement(React.Fragment, null, useBrick.map((item, index) => /*#__PURE__*/React.createElement(ReactUseBrick, {\n key: index,\n useBrick: item,\n data: data,\n errorBoundary: errorBoundary\n })));\n }\n return /*#__PURE__*/React.createElement(ReactUseBrick, {\n useBrick: useBrick,\n data: data,\n errorBoundary: errorBoundary\n });\n};\n\n// Make v3 bricks compatible with Brick Next v2.\n// istanbul ignore next\nconst v2Kit = getV2RuntimeFromDll();\n// istanbul ignore next\nif (v2Kit) {\n const {\n SingleBrickAsComponentFactory,\n BrickAsComponentFactory\n } = v2Kit;\n if (SingleBrickAsComponentFactory && BrickAsComponentFactory) {\n ReactUseBrick = SingleBrickAsComponentFactory(React);\n ReactUseMultipleBricks = BrickAsComponentFactory(React);\n }\n}\nexport { ReactUseBrick, ReactUseMultipleBricks };\n//# sourceMappingURL=ReactUseBrick.js.map","import { useEffect, useState } from \"react\";\nimport { getCurrentTheme } from \"@next-core/runtime\";\nexport function useCurrentTheme() {\n const [currentTheme, setCurrentTheme] = useState(getCurrentTheme);\n useEffect(() => {\n const listenToThemeChange = event => {\n setCurrentTheme(event.detail);\n };\n window.addEventListener(\"theme.change\", listenToThemeChange);\n return () => {\n window.removeEventListener(\"theme.change\", listenToThemeChange);\n };\n }, []);\n return currentTheme;\n}\n//# sourceMappingURL=useCurrentTheme.js.map","import React from \"react\";\nimport { getRuntime } from \"@next-core/runtime\";\nexport function useRecentApps() {\n const [recentApps, setRecentApps] = React.useState(() => getRuntime().getRecentApps());\n React.useEffect(() => {\n const listener = event => {\n setRecentApps(event.detail);\n };\n window.addEventListener(\"app.change\", listener);\n return () => window.removeEventListener(\"app.change\", listener);\n }, []);\n return recentApps;\n}\n//# sourceMappingURL=useRecentApps.js.map","import { useRecentApps } from \"./useRecentApps.js\";\n\n/**\n * 获取当前所在微应用信息的 React hooks。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent() {\n * const app = useCurrentApp();\n * return <div>{app.id}</div>;\n * }\n * ```\n *\n * @returns 当前所在微应用的信息。\n */\nexport function useCurrentApp() {\n return useRecentApps().currentApp;\n}\n//# sourceMappingURL=useCurrentApp.js.map","import React from \"react\";\nexport function useRouteRender() {\n const [routeRender, setRouteRender] = React.useState(null);\n React.useEffect(() => {\n const listener = event => {\n setRouteRender(event.detail);\n };\n window.addEventListener(\"route.render\", listener);\n return () => window.removeEventListener(\"route.render\", listener);\n }, []);\n return routeRender;\n}\n//# sourceMappingURL=useRouteRender.js.map","export const useProviderArgsDefaults = {\n provider: \"\",\n customOptions: {\n onError: () => {\n /* Do nothing.. */\n },\n transform: (oldData, newData) => newData,\n data: undefined,\n loading: false,\n suspense: false,\n cache: true\n },\n dependencies: undefined\n};\nexport default Object.entries(useProviderArgsDefaults).reduce((acc, _ref) => {\n let [key, value] = _ref;\n if (Object.prototype.toString.call(value) === \"[object Object]\") return {\n ...acc,\n ...value\n };\n return {\n ...acc,\n [key]: value\n };\n}, {});\n//# sourceMappingURL=useProviderArgsDefaults.js.map","import { fetchByProvider } from \"@next-core/runtime\";\nconst cacheMap = new Map();\nfunction isObj(v) {\n return typeof v === \"object\" && v !== null && !Array.isArray(v);\n}\nfunction isString(v) {\n return typeof v === \"string\";\n}\nfunction buildSortedCacheKey(provider) {\n const sortObj = obj => Object.keys(obj).sort().map(k => ({\n [k]: obj[k]\n }));\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n try {\n const sortedArgs = isObj(args) ? sortObj(args) : args.map(arg => isString(arg) ? arg : sortObj(arg));\n return JSON.stringify({\n provider,\n args: sortedArgs\n });\n } catch (e) {\n return JSON.stringify({\n provider,\n args\n });\n }\n}\nexport default async function fetch(provider, cache, args) {\n let promise;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const cacheKey = buildSortedCacheKey(provider, ...args);\n !cache && cacheMap.has(cacheKey) && cacheMap.delete(cacheKey);\n if (cacheMap.has(cacheKey)) {\n promise = cacheMap.get(cacheKey);\n } else {\n promise = (() => {\n return fetchByProvider(provider, args, {\n cache: cache ? \"default\" : \"reload\"\n });\n })();\n cache && cacheMap.set(cacheKey, promise);\n }\n return promise;\n}\n//# sourceMappingURL=fetch.js.map","import { useCallback, useEffect, useMemo, useReducer, useRef, useState } from \"react\";\nimport useProviderArgs from \"./useProviderArgs.js\";\nimport { isObject, isString } from \"lodash\";\nimport fetch from \"./fetch.js\";\nexport function useProvider() {\n const {\n provider,\n customOptions,\n dependencies,\n requestInit\n } = useProviderArgs(...arguments);\n const {\n onError,\n transform,\n suspense,\n cache,\n ...defaults\n } = customOptions;\n const [loading, setLoading] = useState(defaults.loading);\n const suspenseStatus = useRef(\"pending\");\n const suspender = useRef();\n const mounted = useRef(false);\n const error = useRef();\n const response = useRef();\n const data = useRef(defaults.data);\n const forceUpdate = useReducer(() => ({}), [])[1];\n const doFetch = useCallback(async (provider, providerArgs) => {\n try {\n error.current = undefined;\n if (!suspense) setLoading(true);\n const newRes = await fetch(provider, cache, providerArgs);\n response.current = newRes;\n data.current = transform(data.current, newRes);\n } catch (e) {\n error.current = e;\n data.current = undefined;\n }\n if (!suspense) setLoading(false);\n if (error.current) onError(error.current);\n return data.current;\n }, [provider, customOptions, dependencies, requestInit, suspense, transform, defaults.data, onError, cache]);\n const makeFetch = useCallback(async (providerOrBody, args) => {\n let providerStr = provider;\n let providerArgs = [];\n if (isString(providerOrBody)) {\n providerStr = providerOrBody;\n }\n if (isObject(providerOrBody)) {\n providerArgs = providerOrBody;\n } else if (isObject(args)) {\n providerArgs = args;\n }\n if (suspense) {\n return (async () => {\n suspender.current = doFetch(providerStr, providerArgs).then(newData => {\n suspenseStatus.current = \"success\";\n return newData;\n }, error => {\n /* istanbul ignore next */\n suspenseStatus.current = \"error\";\n error.current = error;\n return error;\n });\n forceUpdate();\n return await suspender.current;\n })();\n }\n return doFetch(providerStr, providerArgs);\n }, [doFetch]);\n const request = useMemo(() => Object.defineProperties({\n query: makeFetch\n }, {\n loading: {\n get() {\n return loading;\n }\n },\n data: {\n get() {\n return data.current;\n }\n },\n error: {\n get() {\n return error.current;\n }\n }\n }), [makeFetch]);\n\n // onMount/onUpdate\n useEffect(() => {\n mounted.current = true;\n if (Array.isArray(dependencies) && provider) {\n request.query(provider, requestInit.args);\n }\n return () => mounted.current = false;\n }, dependencies);\n if (suspense && suspender.current) {\n switch (suspenseStatus.current) {\n case \"pending\":\n throw suspender.current;\n /* istanbul ignore next */\n case \"error\":\n throw error.current;\n }\n }\n return Object.assign([request, response.current, loading, error.current], {\n request,\n ...request,\n response: response.current,\n data: data.current,\n loading,\n error: error.current\n });\n}\n//# sourceMappingURL=useProvider.js.map","import { useMemo } from \"react\";\nimport defaults, { useProviderArgsDefaults } from \"./useProviderArgsDefaults.js\";\nimport { isObject } from \"lodash\";\nexport default function useProviderArgs(providerOrParamsOrGlobalOptions, globalOptionsOrDeps, deps) {\n const provider = useMemo(() => {\n if (typeof providerOrParamsOrGlobalOptions === \"string\") {\n return providerOrParamsOrGlobalOptions;\n }\n return useProviderArgsDefaults.provider;\n }, [providerOrParamsOrGlobalOptions, globalOptionsOrDeps]);\n const options = useMemo(() => {\n let localOptions = {};\n if (isObject(providerOrParamsOrGlobalOptions)) {\n localOptions = providerOrParamsOrGlobalOptions;\n } else if (isObject(globalOptionsOrDeps)) {\n localOptions = globalOptionsOrDeps;\n }\n return {\n ...defaults,\n ...localOptions\n };\n }, [providerOrParamsOrGlobalOptions, globalOptionsOrDeps]);\n const requestInit = useMemo(() => {\n const customOptionKeys = [...Object.keys(useProviderArgsDefaults), ...Object.keys(useProviderArgsDefaults.customOptions)];\n const {\n args = null,\n ...restOptions\n } = Object.keys(options).reduce((acc, key) => {\n if (!customOptionKeys.includes(key)) acc[key] = options[key];\n return acc;\n }, {});\n return {\n options: {\n ...restOptions\n },\n args\n };\n }, [options]);\n const dependencies = useMemo(() => {\n if (Array.isArray(globalOptionsOrDeps)) return globalOptionsOrDeps;\n if (Array.isArray(deps)) return deps;\n return defaults.dependencies;\n }, [globalOptionsOrDeps, deps]);\n const loading = options.loading || Array.isArray(dependencies);\n const customOptions = useMemo(() => {\n const customOptionKeys = Object.keys(useProviderArgsDefaults.customOptions);\n const customOptions = customOptionKeys.reduce((opts, key) => {\n opts[key] = options[key];\n return opts;\n }, {});\n return {\n ...customOptions,\n loading\n };\n }, [options]);\n return {\n provider,\n customOptions,\n requestInit,\n dependencies\n };\n}\n//# sourceMappingURL=useProviderArgs.js.map","import { __secret_internals } from \"@next-core/runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\n\n/**\n * 使用异步加载的方式包装一个构件,可用于按条件渲染的构件依赖。\n *\n * 例如提供复杂弹层内容的按钮构件,其内容需要使用到一些大型构件,那么这些依赖可以使用 asyncWrapBrick,\n * 这样只有在需要时才会加载这些依赖的构件。\n */\n\n/**\n * 使用异步加载的方式包装一个构件,可用于按条件渲染的构件依赖。\n *\n * 例如提供复杂弹层内容的按钮构件,其内容需要使用到一些大型构件,那么这些依赖可以使用 asyncWrapBrick,\n * 这样只有在需要时才会加载这些依赖的构件。\n */\n\nexport async function asyncWrapBrick(brickName, eventsMapping) {\n await __secret_internals.loadBricks([brickName]);\n return wrapBrick(brickName, eventsMapping);\n}\n//# sourceMappingURL=asyncWrapBrick.js.map","import { useEffect, useState } from \"react\";\nimport { getRuntime } from \"@next-core/runtime\";\nexport function useNavConfig() {\n const [navConfig, setNavConfig] = useState(() => getRuntime().getNavConfig());\n useEffect(() => {\n const listener = event => {\n setNavConfig(event.detail);\n };\n window.addEventListener(\"navConfig.change\", listener);\n return () => window.removeEventListener(\"navConfig.change\", listener);\n }, []);\n return navConfig;\n}\n//# sourceMappingURL=useNavConfig.js.map","import { lazy, useMemo } from \"react\";\nimport { asyncWrapBrick } from \"./asyncWrapBrick.js\";\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\nexport function useLazyWrapBrick(brickName, eventsMapping) {\n return useMemo(() => {\n if (brickName != null) {\n return /*#__PURE__*/lazy(async () => ({\n default: await asyncWrapBrick(brickName, eventsMapping)\n }));\n }\n return null;\n }, [brickName, eventsMapping]);\n}\n//# sourceMappingURL=useLazyWrapBrick.js.map"],"names":["ReactUseBrick","_ref","useBrick","data","errorBoundary","refCallback","ignoredCallback","renderResult","setRenderResult","useState","mountResult","useRef","renderKey","setRenderKey","IdCounterRef","initialRenderId","useMemo","_secret_internals$ge","__secret_internals","getRenderId","call","useEffect","ignore","async","newRender","renderUseBrick","current","error","_secret_internals$ge2","newRenderId","isTheSameRender","console","handleHttpError","init","_refCallback","useCallback","element","mountUseBrick","unmountUseBrick","undefined","tagName","WebComponent","key","ref","ReactUseMultipleBricks","_ref2","Array","isArray","map","item","index","v2Kit","getV2RuntimeFromDll","SingleBrickAsComponentFactory","BrickAsComponentFactory","useCurrentTheme","currentTheme","setCurrentTheme","getCurrentTheme","listenToThemeChange","event","detail","window","addEventListener","removeEventListener","useRecentApps","recentApps","setRecentApps","getRuntime","getRecentApps","listener","useCurrentApp","currentApp","useRouteRender","routeRender","setRouteRender","useProviderArgsDefaults","provider","customOptions","onError","transform","oldData","newData","loading","suspense","cache","dependencies","Object","entries","reduce","acc","value","prototype","toString","cacheMap","Map","useProvider","requestInit","providerOrParamsOrGlobalOptions","globalOptionsOrDeps","deps","options","localOptions","isObject","customOptionKeys","keys","args","restOptions","includes","opts","useProviderArgs","arguments","defaults","setLoading","suspenseStatus","suspender","mounted","response","forceUpdate","useReducer","doFetch","providerArgs","newRes","promise","cacheKey","sortObj","obj","sort","k","_len","length","_key","sortedArgs","v","arg","isString","JSON","stringify","e","buildSortedCacheKey","has","delete","get","fetchByProvider","set","fetch","makeFetch","providerOrBody","providerStr","then","request","defineProperties","query","assign","asyncWrapBrick","brickName","eventsMapping","loadBricks","wrapBrick","useNavConfig","navConfig","setNavConfig","getNavConfig","useLazyWrapBrick","lazy","default"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/7218.91b5ad29.js","mappings":"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","sources":["webpack:///../../node_modules/@next-core/react-runtime/dist/esm/ReactUseBrick.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentTheme.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useRecentApps.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useCurrentApp.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useRouteRender.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/useProviderArgsDefaults.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/fetch.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/useProvider.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useProvider/useProviderArgs.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/asyncWrapBrick.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useNavConfig.js","webpack:///../../node_modules/@next-core/react-runtime/dist/esm/useLazyWrapBrick.js"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { __secret_internals, handleHttpError, getV2RuntimeFromDll } from \"@next-core/runtime\";\n// Note: always synchronize code in LegacyUseBrick:\n// `bricks/v2-adapter/src/data-providers/legacy-brick-kit/getLegacyUseBrick.ts`\nlet ReactUseBrick = function ReactUseBrick(_ref) {\n let {\n useBrick,\n data,\n errorBoundary,\n refCallback,\n ignoredCallback\n } = _ref;\n const [renderResult, setRenderResult] = useState(null);\n const mountResult = useRef();\n const [renderKey, setRenderKey] = useState();\n const IdCounterRef = useRef(0);\n const initialRenderId = useMemo(() => {\n var _secret_internals$ge;\n return (_secret_internals$ge = __secret_internals.getRenderId) === null || _secret_internals$ge === void 0 ? void 0 : _secret_internals$ge.call(__secret_internals);\n }, []);\n useEffect(() => {\n let ignore = false;\n async function init() {\n try {\n const newRender = await __secret_internals.renderUseBrick(useBrick, data, errorBoundary);\n if (ignore) {\n return;\n }\n setRenderResult(newRender);\n setRenderKey(getUniqueId(IdCounterRef));\n } catch (error) {\n if (!ignore && isTheSameRender(initialRenderId)) {\n // eslint-disable-next-line no-console\n console.error(\"Render useBrick failed:\", useBrick, \"with data:\", data);\n handleHttpError(error);\n }\n }\n }\n init();\n return () => {\n ignore = true;\n };\n }, [data, useBrick, initialRenderId, errorBoundary]);\n const _refCallback = useCallback(element => {\n if (element) {\n mountResult.current = __secret_internals.mountUseBrick(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n renderResult, element);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n __secret_internals.unmountUseBrick(renderResult, mountResult.current);\n mountResult.current = undefined;\n }\n refCallback === null || refCallback === void 0 || refCallback(element);\n }, [refCallback, renderResult]);\n if (!renderResult) {\n // Fallback when loading/\n return null;\n // return <span>🌀 Loading...</span>;\n }\n const {\n tagName\n } = renderResult;\n if (tagName === null) {\n ignoredCallback === null || ignoredCallback === void 0 || ignoredCallback();\n return null;\n }\n const WebComponent = tagName;\n return /*#__PURE__*/React.createElement(WebComponent, {\n key: renderKey,\n ref: _refCallback\n });\n};\nfunction getUniqueId(ref) {\n return ++ref.current;\n}\nfunction isTheSameRender(initialRenderId) {\n var _secret_internals$ge2;\n const newRenderId = (_secret_internals$ge2 = __secret_internals.getRenderId) === null || _secret_internals$ge2 === void 0 ? void 0 : _secret_internals$ge2.call(__secret_internals);\n return !initialRenderId || !newRenderId || initialRenderId === newRenderId;\n}\nlet ReactUseMultipleBricks = function ReactUseMultipleBricks(_ref2) {\n let {\n useBrick,\n data,\n errorBoundary\n } = _ref2;\n if (Array.isArray(useBrick)) {\n return /*#__PURE__*/React.createElement(React.Fragment, null, useBrick.map((item, index) => /*#__PURE__*/React.createElement(ReactUseBrick, {\n key: index,\n useBrick: item,\n data: data,\n errorBoundary: errorBoundary\n })));\n }\n return /*#__PURE__*/React.createElement(ReactUseBrick, {\n useBrick: useBrick,\n data: data,\n errorBoundary: errorBoundary\n });\n};\n\n// Make v3 bricks compatible with Brick Next v2.\n// istanbul ignore next\nconst v2Kit = getV2RuntimeFromDll();\n// istanbul ignore next\nif (v2Kit) {\n const {\n SingleBrickAsComponentFactory,\n BrickAsComponentFactory\n } = v2Kit;\n if (SingleBrickAsComponentFactory && BrickAsComponentFactory) {\n ReactUseBrick = SingleBrickAsComponentFactory(React);\n ReactUseMultipleBricks = BrickAsComponentFactory(React);\n }\n}\nexport { ReactUseBrick, ReactUseMultipleBricks };\n//# sourceMappingURL=ReactUseBrick.js.map","import { useEffect, useState } from \"react\";\nimport { getCurrentTheme } from \"@next-core/runtime\";\nexport function useCurrentTheme() {\n const [currentTheme, setCurrentTheme] = useState(getCurrentTheme);\n useEffect(() => {\n const listenToThemeChange = event => {\n setCurrentTheme(event.detail);\n };\n window.addEventListener(\"theme.change\", listenToThemeChange);\n return () => {\n window.removeEventListener(\"theme.change\", listenToThemeChange);\n };\n }, []);\n return currentTheme;\n}\n//# sourceMappingURL=useCurrentTheme.js.map","import React from \"react\";\nimport { getRuntime } from \"@next-core/runtime\";\nexport function useRecentApps() {\n const [recentApps, setRecentApps] = React.useState(() => getRuntime().getRecentApps());\n React.useEffect(() => {\n const listener = event => {\n setRecentApps(event.detail);\n };\n window.addEventListener(\"app.change\", listener);\n return () => window.removeEventListener(\"app.change\", listener);\n }, []);\n return recentApps;\n}\n//# sourceMappingURL=useRecentApps.js.map","import { useRecentApps } from \"./useRecentApps.js\";\n\n/**\n * 获取当前所在微应用信息的 React hooks。\n *\n * @example\n *\n * ```tsx\n * function MyReactComponent() {\n * const app = useCurrentApp();\n * return <div>{app.id}</div>;\n * }\n * ```\n *\n * @returns 当前所在微应用的信息。\n */\nexport function useCurrentApp() {\n return useRecentApps().currentApp;\n}\n//# sourceMappingURL=useCurrentApp.js.map","import React from \"react\";\nexport function useRouteRender() {\n const [routeRender, setRouteRender] = React.useState(null);\n React.useEffect(() => {\n const listener = event => {\n setRouteRender(event.detail);\n };\n window.addEventListener(\"route.render\", listener);\n return () => window.removeEventListener(\"route.render\", listener);\n }, []);\n return routeRender;\n}\n//# sourceMappingURL=useRouteRender.js.map","export const useProviderArgsDefaults = {\n provider: \"\",\n customOptions: {\n onError: () => {\n /* Do nothing.. */\n },\n transform: (oldData, newData) => newData,\n data: undefined,\n loading: false,\n suspense: false,\n cache: true\n },\n dependencies: undefined\n};\nexport default Object.entries(useProviderArgsDefaults).reduce((acc, _ref) => {\n let [key, value] = _ref;\n if (Object.prototype.toString.call(value) === \"[object Object]\") return {\n ...acc,\n ...value\n };\n return {\n ...acc,\n [key]: value\n };\n}, {});\n//# sourceMappingURL=useProviderArgsDefaults.js.map","import { fetchByProvider } from \"@next-core/runtime\";\nconst cacheMap = new Map();\nfunction isObj(v) {\n return typeof v === \"object\" && v !== null && !Array.isArray(v);\n}\nfunction isString(v) {\n return typeof v === \"string\";\n}\nfunction buildSortedCacheKey(provider) {\n const sortObj = obj => Object.keys(obj).sort().map(k => ({\n [k]: obj[k]\n }));\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n try {\n const sortedArgs = isObj(args) ? sortObj(args) : args.map(arg => isString(arg) ? arg : sortObj(arg));\n return JSON.stringify({\n provider,\n args: sortedArgs\n });\n } catch (e) {\n return JSON.stringify({\n provider,\n args\n });\n }\n}\nexport default async function fetch(provider, cache, args) {\n let promise;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const cacheKey = buildSortedCacheKey(provider, ...args);\n !cache && cacheMap.has(cacheKey) && cacheMap.delete(cacheKey);\n if (cacheMap.has(cacheKey)) {\n promise = cacheMap.get(cacheKey);\n } else {\n promise = (() => {\n return fetchByProvider(provider, args, {\n cache: cache ? \"default\" : \"reload\"\n });\n })();\n cache && cacheMap.set(cacheKey, promise);\n }\n return promise;\n}\n//# sourceMappingURL=fetch.js.map","import { useCallback, useEffect, useMemo, useReducer, useRef, useState } from \"react\";\nimport useProviderArgs from \"./useProviderArgs.js\";\nimport { isObject, isString } from \"lodash\";\nimport fetch from \"./fetch.js\";\nexport function useProvider() {\n const {\n provider,\n customOptions,\n dependencies,\n requestInit\n } = useProviderArgs(...arguments);\n const {\n onError,\n transform,\n suspense,\n cache,\n ...defaults\n } = customOptions;\n const [loading, setLoading] = useState(defaults.loading);\n const suspenseStatus = useRef(\"pending\");\n const suspender = useRef();\n const mounted = useRef(false);\n const error = useRef();\n const response = useRef();\n const data = useRef(defaults.data);\n const forceUpdate = useReducer(() => ({}), [])[1];\n const doFetch = useCallback(async (provider, providerArgs) => {\n try {\n error.current = undefined;\n if (!suspense) setLoading(true);\n const newRes = await fetch(provider, cache, providerArgs);\n response.current = newRes;\n data.current = transform(data.current, newRes);\n } catch (e) {\n error.current = e;\n data.current = undefined;\n }\n if (!suspense) setLoading(false);\n if (error.current) onError(error.current);\n return data.current;\n }, [provider, customOptions, dependencies, requestInit, suspense, transform, defaults.data, onError, cache]);\n const makeFetch = useCallback(async (providerOrBody, args) => {\n let providerStr = provider;\n let providerArgs = [];\n if (isString(providerOrBody)) {\n providerStr = providerOrBody;\n }\n if (isObject(providerOrBody)) {\n providerArgs = providerOrBody;\n } else if (isObject(args)) {\n providerArgs = args;\n }\n if (suspense) {\n return (async () => {\n suspender.current = doFetch(providerStr, providerArgs).then(newData => {\n suspenseStatus.current = \"success\";\n return newData;\n }, error => {\n /* istanbul ignore next */\n suspenseStatus.current = \"error\";\n error.current = error;\n return error;\n });\n forceUpdate();\n return await suspender.current;\n })();\n }\n return doFetch(providerStr, providerArgs);\n }, [doFetch]);\n const request = useMemo(() => Object.defineProperties({\n query: makeFetch\n }, {\n loading: {\n get() {\n return loading;\n }\n },\n data: {\n get() {\n return data.current;\n }\n },\n error: {\n get() {\n return error.current;\n }\n }\n }), [makeFetch]);\n\n // onMount/onUpdate\n useEffect(() => {\n mounted.current = true;\n if (Array.isArray(dependencies) && provider) {\n request.query(provider, requestInit.args);\n }\n return () => mounted.current = false;\n }, dependencies);\n if (suspense && suspender.current) {\n switch (suspenseStatus.current) {\n case \"pending\":\n throw suspender.current;\n /* istanbul ignore next */\n case \"error\":\n throw error.current;\n }\n }\n return Object.assign([request, response.current, loading, error.current], {\n request,\n ...request,\n response: response.current,\n data: data.current,\n loading,\n error: error.current\n });\n}\n//# sourceMappingURL=useProvider.js.map","import { useMemo } from \"react\";\nimport defaults, { useProviderArgsDefaults } from \"./useProviderArgsDefaults.js\";\nimport { isObject } from \"lodash\";\nexport default function useProviderArgs(providerOrParamsOrGlobalOptions, globalOptionsOrDeps, deps) {\n const provider = useMemo(() => {\n if (typeof providerOrParamsOrGlobalOptions === \"string\") {\n return providerOrParamsOrGlobalOptions;\n }\n return useProviderArgsDefaults.provider;\n }, [providerOrParamsOrGlobalOptions, globalOptionsOrDeps]);\n const options = useMemo(() => {\n let localOptions = {};\n if (isObject(providerOrParamsOrGlobalOptions)) {\n localOptions = providerOrParamsOrGlobalOptions;\n } else if (isObject(globalOptionsOrDeps)) {\n localOptions = globalOptionsOrDeps;\n }\n return {\n ...defaults,\n ...localOptions\n };\n }, [providerOrParamsOrGlobalOptions, globalOptionsOrDeps]);\n const requestInit = useMemo(() => {\n const customOptionKeys = [...Object.keys(useProviderArgsDefaults), ...Object.keys(useProviderArgsDefaults.customOptions)];\n const {\n args = null,\n ...restOptions\n } = Object.keys(options).reduce((acc, key) => {\n if (!customOptionKeys.includes(key)) acc[key] = options[key];\n return acc;\n }, {});\n return {\n options: {\n ...restOptions\n },\n args\n };\n }, [options]);\n const dependencies = useMemo(() => {\n if (Array.isArray(globalOptionsOrDeps)) return globalOptionsOrDeps;\n if (Array.isArray(deps)) return deps;\n return defaults.dependencies;\n }, [globalOptionsOrDeps, deps]);\n const loading = options.loading || Array.isArray(dependencies);\n const customOptions = useMemo(() => {\n const customOptionKeys = Object.keys(useProviderArgsDefaults.customOptions);\n const customOptions = customOptionKeys.reduce((opts, key) => {\n opts[key] = options[key];\n return opts;\n }, {});\n return {\n ...customOptions,\n loading\n };\n }, [options]);\n return {\n provider,\n customOptions,\n requestInit,\n dependencies\n };\n}\n//# sourceMappingURL=useProviderArgs.js.map","import { __secret_internals } from \"@next-core/runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\n\n/**\n * 使用异步加载的方式包装一个构件,可用于按条件渲染的构件依赖。\n *\n * 例如提供复杂弹层内容的按钮构件,其内容需要使用到一些大型构件,那么这些依赖可以使用 asyncWrapBrick,\n * 这样只有在需要时才会加载这些依赖的构件。\n */\n\n/**\n * 使用异步加载的方式包装一个构件,可用于按条件渲染的构件依赖。\n *\n * 例如提供复杂弹层内容的按钮构件,其内容需要使用到一些大型构件,那么这些依赖可以使用 asyncWrapBrick,\n * 这样只有在需要时才会加载这些依赖的构件。\n */\n\nexport async function asyncWrapBrick(brickName, eventsMapping) {\n await __secret_internals.loadBricks([brickName]);\n return wrapBrick(brickName, eventsMapping);\n}\n//# sourceMappingURL=asyncWrapBrick.js.map","import { useEffect, useState } from \"react\";\nimport { getRuntime } from \"@next-core/runtime\";\nexport function useNavConfig() {\n const [navConfig, setNavConfig] = useState(() => getRuntime().getNavConfig());\n useEffect(() => {\n const listener = event => {\n setNavConfig(event.detail);\n };\n window.addEventListener(\"navConfig.change\", listener);\n return () => window.removeEventListener(\"navConfig.change\", listener);\n }, []);\n return navConfig;\n}\n//# sourceMappingURL=useNavConfig.js.map","import { lazy, useMemo } from \"react\";\nimport { asyncWrapBrick } from \"./asyncWrapBrick.js\";\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\n/**\n * 使用 `React.lazy` 包装一个异步加载的构件。\n *\n * ```jsx\n * const DepComponent = useLazyWrapBrick(\"async-dep\");\n * return (\n * <Suspense fallback=\"Loading...\">\n * <DepComponent {...props} />\n * </Suspense>\n * );\n * ```\n */\n\nexport function useLazyWrapBrick(brickName, eventsMapping) {\n return useMemo(() => {\n if (brickName != null) {\n return /*#__PURE__*/lazy(async () => ({\n default: await asyncWrapBrick(brickName, eventsMapping)\n }));\n }\n return null;\n }, [brickName, eventsMapping]);\n}\n//# sourceMappingURL=useLazyWrapBrick.js.map"],"names":["ReactUseBrick","_ref","useBrick","data","errorBoundary","refCallback","ignoredCallback","renderResult","setRenderResult","useState","mountResult","useRef","renderKey","setRenderKey","IdCounterRef","initialRenderId","useMemo","_secret_internals$ge","__secret_internals","getRenderId","call","useEffect","ignore","async","newRender","renderUseBrick","current","error","_secret_internals$ge2","newRenderId","isTheSameRender","console","handleHttpError","init","_refCallback","useCallback","element","mountUseBrick","unmountUseBrick","undefined","tagName","WebComponent","key","ref","ReactUseMultipleBricks","_ref2","Array","isArray","map","item","index","v2Kit","getV2RuntimeFromDll","SingleBrickAsComponentFactory","BrickAsComponentFactory","useCurrentTheme","currentTheme","setCurrentTheme","getCurrentTheme","listenToThemeChange","event","detail","window","addEventListener","removeEventListener","useRecentApps","recentApps","setRecentApps","getRuntime","getRecentApps","listener","useCurrentApp","currentApp","useRouteRender","routeRender","setRouteRender","useProviderArgsDefaults","provider","customOptions","onError","transform","oldData","newData","loading","suspense","cache","dependencies","Object","entries","reduce","acc","value","prototype","toString","cacheMap","Map","useProvider","requestInit","providerOrParamsOrGlobalOptions","globalOptionsOrDeps","deps","options","localOptions","isObject","customOptionKeys","keys","args","restOptions","includes","opts","useProviderArgs","arguments","defaults","setLoading","suspenseStatus","suspender","mounted","response","forceUpdate","useReducer","doFetch","providerArgs","newRes","promise","cacheKey","sortObj","obj","sort","k","_len","length","_key","sortedArgs","v","arg","isString","JSON","stringify","e","buildSortedCacheKey","has","delete","get","fetchByProvider","set","fetch","makeFetch","providerOrBody","providerStr","then","request","defineProperties","query","assign","asyncWrapBrick","brickName","eventsMapping","loadBricks","wrapBrick","useNavConfig","navConfig","setNavConfig","getNavConfig","useLazyWrapBrick","lazy","default"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[7301],{1107:(e,t,n)=>{e.exports=n.p+"images/eef4f2bd.png"},1411:(e,t,n)=>{n.d(t,{A:()=>o});var s=n(6758),a=n.n(s),i=n(935),r=n.n(i)()(a());r.push([e.id,":host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}ul{list-style:none;margin:0;padding:0}.loading{display:flex;justify-content:center;padding:8px}.group + .group{margin-top:15px}.group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.item{display:block}.item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.item::part(link):hover{background:rgba(0,0,0,0.04)}.item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.actions{cursor:auto}.item:not(:hover):not(.active) .actions{display:none}.working{width:8px;height:8px;border-radius:8px;background:#2540ff;margin:0 7px}.item:hover .working,\n.item.active .working{display:none}",""]);const o=r.toString()},2165:(e,t,n)=>{n.d(t,{A:()=>m});var s=n(6758),a=n.n(s),i=n(935),r=n.n(i),o=n(62),l=n.n(o),c=new URL(n(2360),n.b),u=r()(a()),d=l()(c);u.push([e.id,`:host{display:block;background-color:#fff;background-image:url(${d});background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed}:host([hidden]){display:none}`,""]);const m=u.toString()},2360:(e,t,n)=>{e.exports=n.p+"images/6336f999.png"},6372:(e,t,n)=>{var s,a=n(4635),i=n(918),r=n(6902),o=n(5536),l=n(6121),c=n(829),u=n(2740),d=n(8769),m=n.n(d),p=n(6192),h=n(9859),g=n(140),b=(n(6477),n(7448)),A=n(3373),f=n.n(A),k=n(9126),v=n(7566),x=n(79),E=n(2464),w=n(8231),y=n(6494),S=n(7642),M=n(2773),N=n(9533),R=n(3153),T=n(4999),_=n(7954),C=n(4388),Y=n(6938),W=n(8100),I=n(9295),O=n(6854),D=n(5805),z=n(5620),P=n(3349);let L,B,U,j,F,V,H,$,K,q,G,Q,X,J,Z,ee,te,ne,se,ae,ie,re,oe,le,ce,ue;(0,b.initializeI18n)(x.NS,x.I);const{defineElement:de,property:me,event:pe,method:he}=(0,p.createDecorators)(),ge=(0,d.memo)(Ie),be=(0,d.forwardRef)(We);let Ae;var fe=new WeakMap,ke=new WeakMap,ve=new WeakMap,xe=new WeakMap,Ee=new WeakMap,we=new WeakSet,ye=new WeakMap,Se=new WeakMap,Me=new WeakMap,Ne=new WeakMap,Re=new WeakMap,Te=new WeakMap,_e=new WeakMap,Ce=new WeakMap;class Ye extends h.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,we),(0,i.A)(this,fe,(L(this),U(this))),(0,i.A)(this,ke,(j(this),F(this))),(0,i.A)(this,ve,(V(this),H(this))),(0,i.A)(this,xe,($(this),K(this))),(0,i.A)(this,Ee,(q(this),G(this))),(0,i.A)(this,ye,(J(this),()=>{(0,o.A)(we,this,Q).emit()})),(0,i.A)(this,Se,Z(this)),(0,i.A)(this,Me,(ne(this),()=>{(0,o.A)(we,this,ee).emit()})),(0,i.A)(this,Ne,se(this)),(0,i.A)(this,Re,(re(this),()=>{(0,o.A)(we,this,ae).emit()})),(0,i.A)(this,Te,oe(this)),(0,i.A)(this,_e,(ue(this),()=>{(0,o.A)(we,this,le).emit()})),(0,i.A)(this,Ce,(0,d.createRef)())}get taskId(){return(0,c.A)(fe,this)}set taskId(e){(0,l.A)(fe,this,e)}get task(){return(0,c.A)(ke,this)}set task(e){(0,l.A)(ke,this,e)}get jobs(){return(0,c.A)(ve,this)}set jobs(e){(0,l.A)(ve,this,e)}get goBackUrl(){return(0,c.A)(xe,this)}set goBackUrl(e){(0,l.A)(xe,this,e)}resumed(){var e;null===(e=(0,c.A)(Ce,this).current)||void 0===e||e.resumed()}render(){return m().createElement(be,{taskId:this.taskId,jobs:this.jobs,task:this.task,goBackUrl:this.goBackUrl,onShare:(0,c.A)(ye,this),onPause:(0,c.A)(Me,this),onResume:(0,c.A)(Re,this),onCancel:(0,c.A)(_e,this),ref:(0,c.A)(Ce,this)})}}function We(e,t){var n;let{taskId:s,task:a,jobs:i,goBackUrl:r,onShare:o,onPause:l,onResume:c,onCancel:u}=e;const p=(0,d.useRef)(null),{task:h,jobs:b,plan:A,error:k,humanInputRef:x,resumedRef:_}=(0,M.S)(s),C=s?h:a,Y=s?b:i,W=s?A:null==a?void 0:a.plan,I=(0,N.B)(C,Y),L=null==I?void 0:I.nodes,B=null==I?void 0:I.edges,U=null!==(n=null==C?void 0:C.title)&&void 0!==n?n:"",j=null==C?void 0:C.state;(0,d.useImperativeHandle)(t,(()=>({resumed:()=>{var e;return null===(e=_.current)||void 0===e?void 0:e.call(_)}})),[_]),(0,d.useEffect)((()=>{(0,g.getRuntime)().applyPageTitle(U)}),[U]),(0,d.useEffect)((()=>{k&&(0,g.handleHttpError)(k)}),[k]);const F=(0,d.useCallback)(((e,t)=>{var n;null===(n=x.current)||void 0===n||n.call(x,e,t)}),[x]),[V,H]=(0,d.useState)(null),$=(0,d.useCallback)(((e,t)=>{H((n=>{if(!t){if(!n)return null;const t=new Map(n);return t.delete(e)?t:n}return n?new Map(n).set(e,t):new Map([[e,t]])}))}),[]),{sizeReady:K,nodes:q,edges:G}=(0,S.g)({rawNodes:L,rawEdges:B,state:j,sizeMap:V}),{grabbing:Q,transform:X,transformRef:J,zoomer:Z}=(0,w.f)({rootRef:p,zoomable:K,scrollable:K,pannable:K}),{centered:ee,setCentered:te,reCenterRef:ne}=(0,y.E)({nodes:q,sizeReady:K,zoomer:Z,rootRef:p}),se=!O.QB.includes(null!=j?j:"working")&&2===q.length,ae=(0,d.useMemo)((()=>new Set(G.map((e=>e.source)))),[G]),ie=(0,d.useMemo)((()=>{if(!K)return null;const e=[];for(const t of q)ae.has(t.id)||e.push(t);return e.length>0?Math.max(...e.map((e=>e.view.y+e.view.height))):null}),[q,ae,K]),re=(0,d.useRef)(null);(0,d.useEffect)((()=>{re.current=ie}),[ie]);const oe=(0,d.useRef)(!1);(0,d.useEffect)((()=>{const e=p.current;if(!e||null===ie||oe.current)return;const{offsetHeight:t}=e,n=J.current,s=ie*n.k+n.y,a=t-O.xX-s;a<0&&Z.translateBy((0,v.A)(p.current),0,a)}),[ie,J,Z]),(0,d.useEffect)((()=>{const e=re.current,t=p.current;if(!t||null===e)return;const{offsetHeight:n}=t,s=e*X.k+X.y,a=n-O.xX-s;oe.current=a<0}),[X,Z]);const le=(0,d.useCallback)((()=>{ne.current=!0,te(!1)}),[ne,te]),ce=(0,d.useCallback)((e=>{Z.scaleTo((0,v.A)(p.current),e)}),[Z]),[ue,de]=(0,d.useState)(null),me=(0,d.useMemo)((()=>({humanInput:F,onShare:o,onPause:l,onResume:c,onCancel:u,onNodeResize:$,activeToolCallJobId:ue,setActiveToolCallJobId:de})),[ue,$,F,o,l,c,u]),pe=(0,d.useMemo)((()=>ue?null==Y?void 0:Y.find((e=>e.id===ue)):null),[ue,Y]);return m().createElement(z.Q.Provider,{value:me},m().createElement("div",{className:f()(E.A.root,{[E.A.loading]:!C}),ref:p,style:{cursor:Q?"grabbing":"grab"}},!C&&m().createElement("div",{className:E.A["loading-icon"]},m().createElement(D.Bj,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0})),m().createElement("div",{className:f()(E.A.canvas,{[E.A.ready]:K&&ee}),style:{transform:`translate3d(${X.x}px, ${X.y}px, 0) scale(${X.k})`}},m().createElement("svg",{className:E.A.edges},G.map((e=>m().createElement("path",{className:E.A.edge,key:`${e.source}-${e.target}`,d:e.points.map(((e,t)=>{let{x:n,y:s}=e;return`${0===t?"M":"L"}${n},${s}`})).join(" ")})))),q.map((e=>{var t,n,s;return m().createElement(ge,{key:e.id,id:e.id,type:e.type,content:e.content,job:e.job,state:e.state,startTime:null==C?void 0:C.startTime,taskLoading:se,instructionLoading:"instruction"===e.type&&!ae.has(e.id)&&!O.QB.includes(null!==(t=e.state)&&void 0!==t?t:"working")&&!O.X4.includes(null!=j?j:"working"),edges:G,x:null===(n=e.view)||void 0===n?void 0:n.x,y:null===(s=e.view)||void 0===s?void 0:s.y})})))),m().createElement("div",{className:E.A.widgets},r&&m().createElement(D.EM,{className:E.A["go-back"],url:r},m().createElement(D.Bj,{lib:"fa",prefix:"fas",icon:"arrow-left-long"})),m().createElement(R.r,{plan:W,state:j}),m().createElement(T.l,{scale:X.k,onScaleChange:ce,onReCenter:le})),pe&&m().createElement(P.M,{job:pe}))}function Ie(e){let{id:t,type:n,state:s,job:a,content:i,startTime:r,taskLoading:o,instructionLoading:l,x:c,y:u}=e;const p=(0,d.useRef)(null),{onNodeResize:h}=(0,d.useContext)(z.Q);return(0,d.useEffect)((()=>{const e=p.current;if(!e)return;const n=new k.A((()=>{h(t,[e.offsetWidth,e.offsetHeight])}));return n.observe(e),()=>{n.disconnect(),h(t,null)}}),[t,h]),(0,d.useEffect)((()=>{const e=p.current;if(!e)return;const t=e=>{e.stopPropagation()};return e.addEventListener("mousedown",t),()=>{e.removeEventListener("mousedown",t)}}),[]),m().createElement("div",{className:f()(E.A.node,{[E.A.ready]:null!=c&&null!=u}),ref:p,style:{left:c,top:u}},"start"===n?m().createElement(_.H,null):"end"===n?m().createElement(I.s,null):"requirement"===n?m().createElement(C.O,{content:i,startTime:r,loading:o}):"instruction"===n?m().createElement(Y.L,{content:a.instruction,loading:l}):m().createElement(W.W,{state:s,job:a}))}s=Ye,({e:[U,j,F,V,H,$,K,q,G,Q,X,J,Z,ee,te,ne,se,ae,ie,re,oe,le,ce,ue,L],c:[Ae,B]}=(0,u.A)(s,[de("ai-portal.cruise-canvas",{shadowOptions:!1})],[[me(),1,"taskId"],[me({attribute:!1}),1,"task"],[me({attribute:!1}),1,"jobs"],[me(),1,"goBackUrl"],[pe({type:"share"}),1,"shareEvent",e=>(0,c.A)(Ee,e),(e,t)=>(0,l.A)(Ee,e,t)],[pe({type:"pause"}),1,"pauseEvent",e=>(0,c.A)(Se,e),(e,t)=>(0,l.A)(Se,e,t)],[pe({type:"resume"}),1,"resumeEvent",e=>(0,c.A)(Ne,e),(e,t)=>(0,l.A)(Ne,e,t)],[pe({type:"cancel"}),1,"cancelEvent",e=>(0,c.A)(Te,e),(e,t)=>(0,l.A)(Te,e,t)],[he(),2,"resumed"]],0,(e=>Ce.has((0,r.A)(e))),h.ReactNextElement)),B();var Oe=n(1451),De=n(1030);let ze=function(e){return e.ASK_ANY_THING="ASK_ANYTHING",e.COMMON_TASKS="COMMON_TASKS",e}({});const Pe="bricks/ai-portal/chat-box",Le={en:{[ze.ASK_ANY_THING]:"Ask anything",[ze.COMMON_TASKS]:"Common tasks"},zh:{[ze.ASK_ANY_THING]:"询问任何问题",[ze.COMMON_TASKS]:"常用任务"}},Be=b.i18n.getFixedT(null,Pe),Ue=n.p+"images/af389fa6.svg";var je,Fe=n(7008);let Ve,He,$e,Ke,qe,Ge,Qe,Xe,Je,Ze,et,tt,nt,st,at;(0,b.initializeI18n)(Pe,Le);const it=(0,h.wrapBrick)("eo-icon"),{defineElement:rt,property:ot,event:lt}=(0,p.createDecorators)();let ct;var ut=new WeakMap,dt=new WeakMap,mt=new WeakMap,pt=new WeakMap,ht=new WeakMap,gt=new WeakMap,bt=new WeakSet,At=new WeakMap;class ft extends h.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,bt),(0,i.A)(this,ut,He(this)),(0,i.A)(this,dt,($e(this),Ke(this))),(0,i.A)(this,mt,(qe(this),Ge(this))),(0,i.A)(this,pt,(Qe(this),Xe(this))),(0,i.A)(this,ht,(Je(this),Ze(this))),(0,i.A)(this,gt,(et(this),tt(this))),(0,i.A)(this,At,(at(this),e=>{(0,o.A)(bt,this,nt).emit(e)}))}get disabled(){return(0,c.A)(ut,this)}set disabled(e){(0,l.A)(ut,this,e)}get placeholder(){return(0,c.A)(dt,this)}set placeholder(e){(0,l.A)(dt,this,e)}get autoFocus(){return(0,c.A)(mt,this)}set autoFocus(e){(0,l.A)(mt,this,e)}get suggestions(){return(0,c.A)(pt,this)}set suggestions(e){(0,l.A)(pt,this,e)}get suggestionsLabel(){return(0,c.A)(ht,this)}set suggestionsLabel(e){(0,l.A)(ht,this,e)}render(){return m().createElement(kt,{disabled:this.disabled,placeholder:this.placeholder,autoFocus:this.autoFocus,suggestions:this.suggestions,suggestionsLabel:this.suggestionsLabel,onSubmit:(0,c.A)(At,this)})}}function kt(e){let{disabled:t,placeholder:n,autoFocus:s,suggestions:a,suggestionsLabel:i,onSubmit:r}=e;const o=(0,d.useRef)(null),l=(0,d.useRef)(null),[c,u]=(0,d.useState)(""),p=(0,d.useRef)(""),h=(0,d.useCallback)((e=>{e.currentTarget.value&&(null==r||r(e.currentTarget.value))}),[r]),g=(0,d.useCallback)((e=>{p.current=e.target.value,u(e.target.value)}),[]),b=(0,d.useCallback)((()=>{null==r||r(p.current)}),[r]);(0,d.useEffect)((()=>{s&&Promise.resolve().then((()=>{var e;null===(e=l.current)||void 0===e||e.focus()}))}),[]);const A=(0,d.useMemo)((()=>null!=a&&a.length?(0,De.chunk)(a,Math.max(2,Math.ceil(a.length/2))):[]),[a]),f=(0,d.useCallback)((e=>{p.current=e.content,u(e.content),setTimeout((()=>{var e;null===(e=l.current)||void 0===e||e.focus()}))}),[]);return m().createElement("div",{className:"root"},m().createElement("div",{className:"container",ref:o},m().createElement(Oe.e,{containerRef:o,ref:l,value:c,minRows:3,paddingSize:62,autoResize:!0,disabled:t,placeholder:null!=n?n:Be(ze.ASK_ANY_THING),submitWhen:"enter-without-shift",onSubmit:h,onChange:g}),m().createElement("button",{className:"btn-send",disabled:!c,onClick:b},m().createElement(it,{lib:"fa",prefix:"fas",icon:"arrow-up"}))),!(null==A||!A.length)&&m().createElement("div",{className:"suggestions"},m().createElement("div",{className:"heading"},m().createElement("img",{className:"icon",src:Ue,width:16,height:16}),m().createElement("span",null,null!=i?i:Be(ze.COMMON_TASKS))),A.map(((e,t)=>m().createElement(vt,{key:t,suggestions:e,pixelPerSecond:10*(t+2),onSelect:f})))))}function vt(e){let{suggestions:t,pixelPerSecond:n,onSelect:s}=e;const a=(0,d.useRef)(null),i=(0,d.useRef)(null),[r,o]=(0,d.useState)(0);return(0,d.useEffect)((()=>{const e=a.current,t=i.current;if(!e||!t)return;let s,r,l,c,u=0;const d=(t.offsetWidth-7)/2+7;function m(e){r=e,void 0===l&&(l=e),void 0!==s&&(u+=e-s,s=void 0),o((e-l-u)/1e3*n%d),c=requestAnimationFrame(m)}c=requestAnimationFrame(m);const p=()=>{cancelAnimationFrame(c),s=r},h=()=>{c=requestAnimationFrame(m)};return e.addEventListener("mouseenter",p),e.addEventListener("mouseleave",h),()=>{cancelAnimationFrame(c),e.removeEventListener("mouseenter",p),e.removeEventListener("mouseleave",h)}}),[t,n]),m().createElement("div",{className:"carousel",ref:a},m().createElement("ul",{className:"list",ref:i,style:{transform:`translateX(${-r}px)`}},[...t,...t].map(((e,t)=>m().createElement("li",{key:t},m().createElement("div",{className:"item",onClick:()=>s(e),title:e.content},m().createElement("div",{className:"title"},e.title),m().createElement("div",{className:"content"},e.content)))))))}je=ft,({e:[He,$e,Ke,qe,Ge,Qe,Xe,Je,Ze,et,tt,nt,st,at],c:[ct,Ve]}=(0,u.A)(je,[rt("ai-portal.chat-box",{styleTexts:[Fe.A]})],[[ot({type:Boolean}),1,"disabled"],[ot(),1,"placeholder"],[ot({type:Boolean}),1,"autoFocus"],[ot({attribute:!1}),1,"suggestions"],[ot(),1,"suggestionsLabel"],[lt({type:"message.submit"}),1,"messageSubmit",e=>(0,c.A)(gt,e),(e,t)=>(0,l.A)(gt,e,t)]],0,(e=>At.has((0,r.A)(e))),h.ReactNextElement)),Ve();var xt,Et=n(2165);let wt;const{defineElement:yt}=(0,p.createDecorators)();let St;class Mt extends h.ReactNextElement{render(){return m().createElement(Nt,null)}}function Nt(){return m().createElement("slot",null)}xt=Mt,[St,wt]=(0,u.A)(xt,[yt("ai-portal.home-container",{styleTexts:[Et.A]})],[],0,void 0,h.ReactNextElement).c,wt();var Rt=n(1302),Tt=n.n(Rt);let _t=function(e){return e.TODAY="TODAY",e.YESTERDAY="YESTERDAY",e.PREVIOUS_7_DAYS="PREVIOUS_7_DAYS",e.PREVIOUS_30_DAYS="PREVIOUS_30_DAYS",e}({});const Ct="bricks/ai-portal/chat-history",Yt={en:{[_t.TODAY]:"Today",[_t.YESTERDAY]:"Yesterday",[_t.PREVIOUS_7_DAYS]:"Previous 7 days",[_t.PREVIOUS_30_DAYS]:"Previous 30 days"},zh:{[_t.TODAY]:"今天",[_t.YESTERDAY]:"昨天",[_t.PREVIOUS_7_DAYS]:"过去7天",[_t.PREVIOUS_30_DAYS]:"过去30天"}},Wt=b.i18n.getFixedT(null,Ct);var It,Ot=n(1411);let Dt,zt,Pt,Lt,Bt,Ut,jt,Ft,Vt;(0,b.initializeI18n)(Ct,Yt);const Ht=(0,h.wrapBrick)("eo-icon"),$t=(0,h.wrapBrick)("eo-link"),Kt=(0,h.wrapBrick)("eo-mini-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),{defineElement:qt,property:Gt,event:Qt}=(0,p.createDecorators)();let Xt;var Jt=new WeakMap,Zt=new WeakMap,en=new WeakMap,tn=new WeakSet,nn=new WeakMap;class sn extends h.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,tn),(0,i.A)(this,Jt,zt(this)),(0,i.A)(this,Zt,(Pt(this),Lt(this))),(0,i.A)(this,en,(Bt(this),Ut(this))),(0,i.A)(this,nn,(Vt(this),e=>{(0,o.A)(tn,this,jt).emit(e)}))}get list(){return(0,c.A)(Jt,this)}set list(e){(0,l.A)(Jt,this,e)}get actions(){return(0,c.A)(Zt,this)}set actions(e){(0,l.A)(Zt,this,e)}render(){return m().createElement(an,{list:this.list,actions:this.actions,onActionClick:(0,c.A)(nn,this)})}}function an(e){let{list:t,actions:n,onActionClick:s}=e;const a=(0,d.useMemo)((()=>{const e=new Map,n=Tt()(),s=n.startOf("day"),a=s.clone().subtract(1,"day"),i=s.clone().subtract(7,"days"),r=s.clone().subtract(30,"days"),o=+s/1e3,l=+a/1e3,c=+i/1e3,u=+r/1e3,d=n.year();for(const n of null!=t?t:[]){let t;t=n.startTime>=o?Wt(_t.TODAY):n.startTime>=l?Wt(_t.YESTERDAY):n.startTime>=c?Wt(_t.PREVIOUS_7_DAYS):n.startTime>=u?Wt(_t.PREVIOUS_30_DAYS):n.startTime>=d?Tt()(1e3*n.startTime).format("MMMM"):Tt()(1e3*n.startTime).format("YYYY");let s=e.get(t);s||e.set(t,s={title:t,items:[]}),s.items.push(n)}return[...e.values()]}),[t]),[i,r]=(0,d.useState)(null);return t?m().createElement("ul",null,a.map((e=>m().createElement("li",{key:e.title,className:"group"},m().createElement("div",{className:"group-title"},e.title),m().createElement("ul",{className:"items"},e.items.map((e=>m().createElement("li",{key:e.id},m().createElement($t,{className:f()("item",{active:i===e.id}),url:e.url},m().createElement("div",{className:"item-title"},e.title),m().createElement(Kt,{className:"actions",actions:n,onActionClick:t=>{null==s||s({action:t.detail,item:e})},onVisibleChange:t=>{r(t.detail?e.id:null)}}),!O.QB.includes(e.state)&&m().createElement("div",{className:"working"})))))))))):m().createElement("div",{className:"loading"},m().createElement(Ht,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0}))}It=sn,({e:[zt,Pt,Lt,Bt,Ut,jt,Ft,Vt],c:[Xt,Dt]}=(0,u.A)(It,[qt("ai-portal.chat-history",{styleTexts:[Ot.A]})],[[Gt({attribute:!1}),1,"list"],[Gt({attribute:!1}),1,"actions"],[Qt({type:"action.click"}),1,"actionClick",e=>(0,c.A)(en,e),(e,t)=>(0,l.A)(en,e,t)]],0,(e=>nn.has((0,r.A)(e))),h.ReactNextElement)),Dt()},7008:(e,t,n)=>{n.d(t,{A:()=>m});var s=n(6758),a=n.n(s),i=n(935),r=n.n(i),o=n(62),l=n.n(o),c=new URL(n(1107),n.b),u=r()(a()),d=l()(c);u.push([e.id,`:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.root{color:#262626;background-color:#e1e3ec;background-image:url(${d});background-size:694px 144px;background-position:top left;background-repeat:no-repeat;box-shadow:inset 0px 2px 5px 1px rgba(42,46,59,0.1);border-radius:20px;padding:12px}.container{position:relative}textarea{display:block;width:100%;padding:10px 16px 52px;color:var(--antd-input-color);background:rgba(255,255,255,0.8);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font-size:14px;line-height:22px;height:130px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{position:absolute;bottom:14px;right:14px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#2540ff;border:none;border-radius:8px;color:#fff}.btn-send[disabled]{background:rgba(0,0,0,0.15)}.btn-send:not([disabled]){cursor:pointer}.btn-send:not([disabled]):hover{background:#5166ff}.btn-send:not([disabled]):active{background:#1e33cc}.suggestions{margin-top:19px}.heading{display:flex;align-items:center;padding:0 5px;margin-bottom:8px}.icon{margin-right:5px}.carousel{overflow:hidden}.carousel + .carousel{margin-top:7px}.list{display:flex;width:max-content;list-style:none;margin:0;padding:0;font-size:12px}.item{background:rgba(255,255,255,0.4);border-radius:12px;border:1px solid #dcdee6;padding:12px;max-width:330px;cursor:pointer}.item:hover{background:rgba(255,255,255,0.5);border:1px solid rgba(37,64,255,0.3)}.list > li + li{margin-left:7px}.title{margin-bottom:4px}.content{color:rgba(0,0,0,0.45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tooltip{display:block}`,""]);const m=u.toString()}}]);
2
+ //# sourceMappingURL=7301.b39378d6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/7301.b39378d6.js","mappings":"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","sources":["webpack:///./src/chat-history/styles.shadow.css","webpack:///./src/home-container/styles.shadow.css","webpack:///./src/cruise-canvas/index.tsx","webpack:///./src/chat-box/i18n.ts","webpack:///./src/chat-box/index.tsx","webpack:///./src/home-container/index.tsx","webpack:///./src/chat-history/i18n.ts","webpack:///./src/chat-history/index.tsx","webpack:///./src/chat-box/styles.shadow.css"],"sourcesContent":["// 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}.loading{display:flex;justify-content:center;padding:8px}.group + .group{margin-top:15px}.group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.item{display:block}.item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.item::part(link):hover{background:rgba(0,0,0,0.04)}.item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.actions{cursor:auto}.item:not(:hover):not(.active) .actions{display:none}.working{width:8px;height:8px;border-radius:8px;background:#2540ff;margin:0 7px}.item:hover .working,\n.item.active .working{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/background.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;background-color:#fff;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed}:host([hidden]){display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// istanbul ignore file: experimental\nimport React, {\n createRef,\n forwardRef,\n memo,\n useCallback,\n useContext,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { getRuntime, handleHttpError } from \"@next-core/runtime\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport classNames from \"classnames\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport { select } from \"d3-selection\";\nimport { NS, locales } from \"./i18n.js\";\nimport styles from \"./styles.module.css\";\nimport { useZoom } from \"./useZoom.js\";\nimport type {\n SizeTuple,\n GraphNode,\n Job,\n RequirementGraphNode,\n JobGraphNode,\n TaskBaseDetail,\n GraphEdge,\n} from \"./interfaces.js\";\nimport { useAutoCenter } from \"./useAutoCenter.js\";\nimport { useLayout } from \"./useLayout.js\";\nimport { useTaskDetail } from \"./useTaskDetail.js\";\nimport { useTaskGraph } from \"./useTaskGraph.js\";\nimport { PlanProgress } from \"./PlanProgress/PlanProgress.js\";\nimport { ZoomBar } from \"./ZoomBar/ZoomBar.js\";\nimport { NodeStart } from \"./NodeStart/NodeStart.js\";\nimport { NodeRequirement } from \"./NodeRequirement/NodeRequirement.js\";\nimport { NodeInstruction } from \"./NodeInstruction/NodeInstruction.js\";\nimport { NodeJob } from \"./NodeJob/NodeJob.js\";\nimport { NodeEnd } from \"./NodeEnd/NodeEnd.js\";\nimport {\n CANVAS_PADDING_BOTTOM,\n DONE_STATES,\n GENERAL_DONE_STATES,\n} from \"./constants.js\";\nimport { WrappedIcon, WrappedLink } from \"./bricks.js\";\nimport { CanvasContext } from \"./CanvasContext.js\";\nimport { ToolCallDetail } from \"./ToolCallDetail/ToolCallDetail.js\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nconst MemoizedNodeComponent = memo(NodeComponent);\n\nexport interface CruiseCanvasProps {\n taskId?: string;\n task?: TaskBaseDetail;\n jobs?: Job[];\n goBackUrl?: string;\n}\n\nconst CruiseCanvasComponent = forwardRef(LegacyCruiseCanvasComponent);\n\n/**\n * 构件 `ai-portal.cruise-canvas`\n */\nexport\n@defineElement(\"ai-portal.cruise-canvas\", {\n // Will wrap v2 bricks which don't support in shadow DOM.\n shadowOptions: false,\n})\nclass CruiseCanvas extends ReactNextElement implements CruiseCanvasProps {\n @property()\n accessor taskId: string | undefined;\n\n @property({ attribute: false })\n accessor task: TaskBaseDetail | undefined;\n\n @property({ attribute: false })\n accessor jobs: Job[] | undefined;\n\n @property()\n accessor goBackUrl: string | undefined;\n\n @event({ type: \"share\" })\n accessor #shareEvent!: EventEmitter<void>;\n\n #onShare = () => {\n this.#shareEvent.emit();\n };\n\n @event({ type: \"pause\" })\n accessor #pauseEvent!: EventEmitter<void>;\n\n #onPause = () => {\n this.#pauseEvent.emit();\n };\n\n @event({ type: \"resume\" })\n accessor #resumeEvent!: EventEmitter<void>;\n\n #onResume = () => {\n this.#resumeEvent.emit();\n };\n\n @event({ type: \"cancel\" })\n accessor #cancelEvent!: EventEmitter<void>;\n\n #onCancel = () => {\n this.#cancelEvent.emit();\n };\n\n #ref = createRef<CruiseCanvasRef>();\n\n @method()\n resumed() {\n this.#ref.current?.resumed();\n }\n\n render() {\n return (\n <CruiseCanvasComponent\n taskId={this.taskId}\n jobs={this.jobs}\n task={this.task}\n goBackUrl={this.goBackUrl}\n onShare={this.#onShare}\n onPause={this.#onPause}\n onResume={this.#onResume}\n onCancel={this.#onCancel}\n ref={this.#ref}\n />\n );\n }\n}\n\ninterface CruiseCanvasComponentProps extends CruiseCanvasProps {\n onShare: () => void;\n onPause: () => void;\n onResume: () => void;\n onCancel: () => void;\n}\n\ninterface CruiseCanvasRef {\n resumed: () => void;\n}\n\nfunction LegacyCruiseCanvasComponent(\n {\n taskId,\n task: propTask,\n jobs: propJobs,\n goBackUrl,\n onShare,\n onPause,\n onResume,\n onCancel,\n }: CruiseCanvasComponentProps,\n ref: React.Ref<CruiseCanvasRef>\n) {\n const rootRef = useRef<HTMLDivElement>(null);\n const {\n task: _task,\n jobs: _jobs,\n plan: _plan,\n error,\n humanInputRef,\n resumedRef,\n } = useTaskDetail(taskId);\n const task = taskId ? _task : propTask;\n const jobs = taskId ? _jobs : propJobs;\n const plan = taskId ? _plan : propTask?.plan;\n const graph = useTaskGraph(task, jobs);\n const rawNodes = graph?.nodes;\n const rawEdges = graph?.edges;\n const pageTitle = task?.title ?? \"\";\n const taskState = task?.state;\n\n useImperativeHandle(\n ref,\n () => ({\n resumed: () => resumedRef.current?.(),\n }),\n [resumedRef]\n );\n\n useEffect(() => {\n getRuntime().applyPageTitle(pageTitle);\n }, [pageTitle]);\n\n useEffect(() => {\n if (error) {\n handleHttpError(error);\n }\n }, [error]);\n\n const humanInput = useCallback(\n (jobId: string, input: string) => {\n humanInputRef.current?.(jobId, input);\n },\n [humanInputRef]\n );\n\n const [sizeMap, setSizeMap] = useState<Map<string, SizeTuple> | null>(null);\n const onNodeResize = useCallback((id: string, size: SizeTuple | null) => {\n // Handle resize logic here\n setSizeMap((prev) => {\n if (!size) {\n if (!prev) {\n return null;\n }\n const newMap = new Map(prev);\n const deleted = newMap.delete(id);\n return deleted ? newMap : prev;\n }\n return prev ? new Map(prev).set(id, size) : new Map([[id, size]]);\n });\n }, []);\n\n const { sizeReady, nodes, edges } = useLayout({\n rawNodes,\n rawEdges,\n state: taskState,\n sizeMap,\n });\n\n const { grabbing, transform, transformRef, zoomer /* , scaleRange */ } =\n useZoom({\n rootRef,\n zoomable: sizeReady,\n scrollable: sizeReady,\n pannable: sizeReady,\n });\n\n const { centered, setCentered, reCenterRef } = useAutoCenter({\n nodes,\n sizeReady,\n zoomer,\n rootRef,\n });\n\n const taskDone = DONE_STATES.includes(taskState ?? \"working\");\n const taskLoading = !taskDone && nodes.length === 2;\n\n const nonLeafNodes = useMemo(() => {\n return new Set<string>(edges.map((edge) => edge.source));\n }, [edges]);\n\n const bottom = useMemo(() => {\n if (!sizeReady) {\n return null;\n }\n\n const leafNodes: GraphNode[] = [];\n for (const node of nodes) {\n if (!nonLeafNodes.has(node.id)) {\n leafNodes.push(node);\n }\n }\n if (leafNodes.length > 0) {\n const y1 = Math.max(\n ...leafNodes.map((node) => node.view!.y + node.view!.height)\n );\n return y1;\n }\n\n return null;\n }, [nodes, nonLeafNodes, sizeReady]);\n\n const bottomRef = useRef<number | null>(null);\n useEffect(() => {\n bottomRef.current = bottom;\n }, [bottom]);\n\n // Disable auto scroll when the user manually scrolled up\n const manualScrolledUpRef = useRef(false);\n\n useEffect(() => {\n const root = rootRef.current;\n if (!root || bottom === null || manualScrolledUpRef.current) {\n return;\n }\n const { offsetHeight } = root;\n const transform = transformRef.current;\n const transformedBottom = bottom * transform.k + transform.y;\n const diffY = offsetHeight - CANVAS_PADDING_BOTTOM - transformedBottom;\n if (diffY < 0) {\n // Make the latest node visible\n zoomer.translateBy(select(rootRef.current!), 0, diffY);\n }\n }, [bottom, transformRef, zoomer]);\n\n // Detect if the user scrolled up manually\n useEffect(() => {\n const bottom = bottomRef.current;\n const root = rootRef.current;\n if (!root || bottom === null) {\n return;\n }\n const { offsetHeight } = root;\n const transformedBottom = bottom * transform.k + transform.y;\n\n const diffY = offsetHeight - CANVAS_PADDING_BOTTOM - transformedBottom;\n manualScrolledUpRef.current = diffY < 0;\n }, [transform, zoomer]);\n\n const handleReCenter = useCallback(() => {\n reCenterRef.current = true;\n setCentered(false);\n }, [reCenterRef, setCentered]);\n\n const handleScaleChange = useCallback(\n (scale: number) => {\n zoomer.scaleTo(select(rootRef.current!), scale);\n },\n [zoomer]\n );\n\n const [activeToolCallJobId, setActiveToolCallJobId] = useState<string | null>(\n null\n );\n\n const canvasContextValue = useMemo(\n () => ({\n humanInput,\n onShare,\n onPause,\n onResume,\n onCancel,\n onNodeResize,\n activeToolCallJobId,\n setActiveToolCallJobId,\n }),\n [\n activeToolCallJobId,\n onNodeResize,\n humanInput,\n onShare,\n onPause,\n onResume,\n onCancel,\n ]\n );\n\n const activeToolCallJob = useMemo(() => {\n if (!activeToolCallJobId) {\n return null;\n }\n return jobs?.find((job) => job.id === activeToolCallJobId);\n }, [activeToolCallJobId, jobs]);\n\n return (\n <CanvasContext.Provider value={canvasContextValue}>\n <div\n className={classNames(styles.root, { [styles.loading]: !task })}\n ref={rootRef}\n style={{\n cursor: grabbing ? \"grabbing\" : \"grab\",\n }}\n >\n {!task && (\n <div className={styles[\"loading-icon\"]}>\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </div>\n )}\n <div\n className={classNames(styles.canvas, {\n [styles.ready]: sizeReady && centered,\n })}\n style={{\n transform: `translate3d(${transform.x}px, ${transform.y}px, 0) scale(${transform.k})`,\n }}\n >\n <svg className={styles.edges}>\n {edges.map((edge) => (\n <path\n className={styles.edge}\n key={`${edge.source}-${edge.target}`}\n d={edge\n .points!.map(\n ({ x, y }, i) => `${i === 0 ? \"M\" : \"L\"}${x},${y}`\n )\n .join(\" \")}\n />\n ))}\n </svg>\n {nodes.map((node) => (\n <MemoizedNodeComponent\n key={node.id}\n id={node.id}\n type={node.type}\n content={(node as RequirementGraphNode).content}\n job={(node as JobGraphNode).job}\n state={node.state}\n startTime={task?.startTime}\n taskLoading={taskLoading}\n instructionLoading={\n node.type === \"instruction\" &&\n !nonLeafNodes.has(node.id) &&\n !DONE_STATES.includes(node.state ?? \"working\") &&\n !GENERAL_DONE_STATES.includes(taskState ?? \"working\")\n }\n edges={edges}\n x={node.view?.x}\n y={node.view?.y}\n />\n ))}\n </div>\n </div>\n <div className={styles.widgets}>\n {goBackUrl && (\n <WrappedLink className={styles[\"go-back\"]} url={goBackUrl}>\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-left-long\" />\n </WrappedLink>\n )}\n <PlanProgress plan={plan} state={taskState} />\n <ZoomBar\n scale={transform.k}\n onScaleChange={handleScaleChange}\n onReCenter={handleReCenter}\n />\n </div>\n {activeToolCallJob && <ToolCallDetail job={activeToolCallJob} />}\n </CanvasContext.Provider>\n );\n}\n\ninterface NodeComponentProps {\n id: string;\n type: GraphNode[\"type\"];\n edges: GraphEdge[];\n content?: string;\n job?: Job;\n state?: string;\n startTime?: number;\n taskLoading?: boolean;\n instructionLoading?: boolean;\n x?: number;\n y?: number;\n}\n\nfunction NodeComponent({\n id,\n type,\n state,\n job,\n content,\n startTime,\n taskLoading,\n instructionLoading,\n x,\n y,\n}: NodeComponentProps) {\n const nodeRef = useRef<HTMLDivElement>(null);\n const { onNodeResize } = useContext(CanvasContext);\n\n useEffect(() => {\n const element = nodeRef.current;\n if (!element) {\n return;\n }\n const observer = new ResizeObserver(() => {\n onNodeResize(id, [element.offsetWidth, element.offsetHeight]);\n });\n observer.observe(element);\n return () => {\n observer.disconnect();\n onNodeResize(id, null);\n };\n }, [id, onNodeResize]);\n\n useEffect(() => {\n const element = nodeRef.current;\n if (!element) {\n return;\n }\n const handleMouseDown = (e: MouseEvent) => {\n e.stopPropagation();\n };\n element.addEventListener(\"mousedown\", handleMouseDown);\n return () => {\n element.removeEventListener(\"mousedown\", handleMouseDown);\n };\n }, []);\n\n return (\n <div\n className={classNames(styles.node, {\n [styles.ready]: x != null && y != null,\n })}\n ref={nodeRef}\n style={{\n left: x,\n top: y,\n }}\n >\n {type === \"start\" ? (\n <NodeStart />\n ) : type === \"end\" ? (\n <NodeEnd />\n ) : type === \"requirement\" ? (\n <NodeRequirement\n content={content}\n startTime={startTime}\n loading={taskLoading}\n />\n ) : type === \"instruction\" ? (\n <NodeInstruction\n content={job!.instruction}\n loading={instructionLoading}\n />\n ) : (\n <NodeJob state={state} job={job!} />\n )}\n </div>\n );\n}\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n ASK_ANY_THING = \"ASK_ANYTHING\",\n COMMON_TASKS = \"COMMON_TASKS\",\n}\n\nconst en: Locale = {\n [K.ASK_ANY_THING]: \"Ask anything\",\n [K.COMMON_TASKS]: \"Common tasks\",\n};\n\nconst zh: Locale = {\n [K.ASK_ANY_THING]: \"询问任何问题\",\n [K.COMMON_TASKS]: \"常用任务\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-box\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","import React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport {\n TextareaAutoResize,\n type TextareaAutoResizeRef,\n} from \"@next-shared/form\";\nimport { chunk } from \"lodash\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport tips from \"./images/tips.svg\";\nimport styleText from \"./styles.shadow.css\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface ChatBoxProps {\n disabled?: boolean;\n placeholder?: string;\n autoFocus?: boolean;\n suggestions?: Suggestion[];\n suggestionsLabel?: string;\n}\n\nexport interface Suggestion {\n title: string;\n content: string;\n}\n\n/**\n * 构件 `ai-portal.chat-box`\n */\nexport\n@defineElement(\"ai-portal.chat-box\", {\n styleTexts: [styleText],\n})\nclass ChatBox extends ReactNextElement implements ChatBoxProps {\n @property({ type: Boolean })\n accessor disabled: boolean | undefined;\n\n @property()\n accessor placeholder: string | undefined;\n\n @property({ type: Boolean })\n accessor autoFocus: boolean | undefined;\n\n @property({ attribute: false })\n accessor suggestions: Suggestion[] | undefined;\n\n @property()\n accessor suggestionsLabel: string | undefined;\n\n @event({ type: \"message.submit\" })\n accessor #messageSubmit!: EventEmitter<string>;\n\n #handleMessageSubmit = (value: string) => {\n this.#messageSubmit.emit(value);\n };\n\n render() {\n return (\n <ChatBoxComponent\n disabled={this.disabled}\n placeholder={this.placeholder}\n autoFocus={this.autoFocus}\n suggestions={this.suggestions}\n suggestionsLabel={this.suggestionsLabel}\n onSubmit={this.#handleMessageSubmit}\n />\n );\n }\n}\n\nexport interface ChatBoxComponentProps extends ChatBoxProps {\n // Define react event handlers here.\n onSubmit?: (value: string) => void;\n}\n\nexport function ChatBoxComponent({\n disabled,\n placeholder,\n autoFocus,\n suggestions,\n suggestionsLabel,\n onSubmit,\n}: ChatBoxComponentProps) {\n const containerRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<TextareaAutoResizeRef>(null);\n const [value, setValue] = useState(\"\");\n const valueRef = useRef(\"\");\n\n const handleSubmit = useCallback(\n (e: React.FormEvent<HTMLTextAreaElement>) => {\n if (e.currentTarget.value) {\n onSubmit?.(e.currentTarget.value);\n }\n },\n [onSubmit]\n );\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n valueRef.current = e.target.value;\n setValue(e.target.value);\n },\n []\n );\n\n const handleSubmitClick = useCallback(() => {\n onSubmit?.(valueRef.current);\n }, [onSubmit]);\n\n useEffect(\n () => {\n if (autoFocus) {\n Promise.resolve().then(() => {\n textareaRef.current?.focus();\n });\n }\n },\n // One-time focus\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n );\n\n // istanbul ignore next: experimental\n const groupedSuggestions = useMemo(() => {\n if (!suggestions?.length) {\n return [];\n }\n return chunk(suggestions, Math.max(2, Math.ceil(suggestions.length / 2)));\n }, [suggestions]);\n\n // istanbul ignore next: experimental\n const handleSelectSuggestion = useCallback((suggestion: Suggestion) => {\n valueRef.current = suggestion.content;\n setValue(suggestion.content);\n setTimeout(() => {\n textareaRef.current?.focus();\n });\n }, []);\n\n return (\n <div className=\"root\">\n <div className=\"container\" ref={containerRef}>\n <TextareaAutoResize\n containerRef={containerRef}\n ref={textareaRef}\n value={value}\n minRows={3}\n paddingSize={62}\n autoResize\n disabled={disabled}\n placeholder={placeholder ?? t(K.ASK_ANY_THING)}\n submitWhen=\"enter-without-shift\"\n onSubmit={handleSubmit}\n onChange={handleChange}\n />\n <button\n className=\"btn-send\"\n disabled={!value}\n onClick={handleSubmitClick}\n >\n <WrappedIcon lib=\"fa\" prefix=\"fas\" icon=\"arrow-up\" />\n </button>\n </div>\n {\n // istanbul ignore next: experimental\n !!groupedSuggestions?.length && (\n <div className=\"suggestions\">\n <div className=\"heading\">\n <img\n className=\"icon\"\n src={tips as unknown as string}\n width={16}\n height={16}\n />\n <span>{suggestionsLabel ?? t(K.COMMON_TASKS)}</span>\n </div>\n {groupedSuggestions.map((group, index) => (\n <SuggestionCarousel\n key={index}\n suggestions={group}\n pixelPerSecond={(index + 2) * 10}\n onSelect={handleSelectSuggestion}\n />\n ))}\n </div>\n )\n }\n </div>\n );\n}\n\nexport interface SuggestionCarouselProps {\n suggestions: Suggestion[];\n pixelPerSecond: number;\n onSelect: (suggestion: Suggestion) => void;\n}\n\n// istanbul ignore next: experimental\nfunction SuggestionCarousel({\n suggestions,\n pixelPerSecond,\n onSelect,\n}: SuggestionCarouselProps) {\n const carouselRef = useRef<HTMLDivElement>(null);\n const listRef = useRef<HTMLUListElement>(null);\n const [x, setX] = useState(0);\n\n // Auto scroll suggestions infinitely.\n // Stop scrolling when mouse enter, and resume when mouse leave.\n useEffect(() => {\n const carousel = carouselRef.current;\n const list = listRef.current;\n\n if (!carousel || !list) {\n return;\n }\n\n let previousTimestamp: number | undefined;\n let currentTimestamp: number | undefined;\n let offsetTime = 0;\n let start: number | undefined;\n let timer: number;\n\n // We doubled the suggestions to make it scroll infinitely.\n const gap = 7;\n const listSingleWidth = (list.offsetWidth - gap) / 2;\n const mod = listSingleWidth + gap;\n\n function step(timestamp: number) {\n currentTimestamp = timestamp;\n if (start === undefined) {\n start = timestamp;\n }\n if (previousTimestamp !== undefined) {\n offsetTime += timestamp - previousTimestamp;\n previousTimestamp = undefined;\n }\n const elapsed = timestamp - start - offsetTime;\n setX(((elapsed / 1000) * pixelPerSecond) % mod);\n timer = requestAnimationFrame(step);\n }\n\n timer = requestAnimationFrame(step);\n\n const onMouseEnter = () => {\n cancelAnimationFrame(timer);\n previousTimestamp = currentTimestamp;\n };\n const onMouseLeave = () => {\n timer = requestAnimationFrame(step);\n };\n\n carousel.addEventListener(\"mouseenter\", onMouseEnter);\n carousel.addEventListener(\"mouseleave\", onMouseLeave);\n\n return () => {\n cancelAnimationFrame(timer);\n carousel.removeEventListener(\"mouseenter\", onMouseEnter);\n carousel.removeEventListener(\"mouseleave\", onMouseLeave);\n };\n }, [suggestions, pixelPerSecond]);\n\n return (\n <div className=\"carousel\" ref={carouselRef}>\n <ul\n className=\"list\"\n ref={listRef}\n style={{ transform: `translateX(${-x}px)` }}\n >\n {[...suggestions, ...suggestions].map((item, index) => (\n <li key={index}>\n <div\n className=\"item\"\n onClick={() => onSelect(item)}\n title={item.content}\n >\n <div className=\"title\">{item.title}</div>\n <div className=\"content\">{item.content}</div>\n </div>\n </li>\n ))}\n </ul>\n </div>\n );\n}\n","import React from \"react\";\nimport { createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport styleText from \"./styles.shadow.css\";\n\nconst { defineElement } = createDecorators();\n\n/**\n * 构件 `ai-portal.home-container`\n */\nexport\n@defineElement(\"ai-portal.home-container\", {\n styleTexts: [styleText],\n})\nclass HomeContainer extends ReactNextElement {\n render() {\n return <HomeContainerComponent />;\n }\n}\n\nexport function HomeContainerComponent() {\n return <slot />;\n}\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n TODAY = \"TODAY\",\n YESTERDAY = \"YESTERDAY\",\n PREVIOUS_7_DAYS = \"PREVIOUS_7_DAYS\",\n PREVIOUS_30_DAYS = \"PREVIOUS_30_DAYS\",\n}\n\nconst en: Locale = {\n [K.TODAY]: \"Today\",\n [K.YESTERDAY]: \"Yesterday\",\n [K.PREVIOUS_7_DAYS]: \"Previous 7 days\",\n [K.PREVIOUS_30_DAYS]: \"Previous 30 days\",\n};\n\nconst zh: Locale = {\n [K.TODAY]: \"今天\",\n [K.YESTERDAY]: \"昨天\",\n [K.PREVIOUS_7_DAYS]: \"过去7天\",\n [K.PREVIOUS_30_DAYS]: \"过去30天\",\n};\n\nexport const NS = \"bricks/ai-portal/chat-history\";\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","// istanbul ignore file: experimental\nimport React, { useMemo, useState } from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport moment from \"moment\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n ActionType,\n EoMiniActions,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping,\n EoMiniActionsProps,\n SimpleActionType,\n} from \"@next-bricks/basic/mini-actions\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport type { TaskState } from \"../cruise-canvas/interfaces.js\";\nimport classNames from \"classnames\";\nimport { DONE_STATES } from \"../cruise-canvas/constants.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\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 ChatHistoryProps {\n list?: HistoryItem[];\n actions?: ActionType[];\n}\n\nexport interface HistoryItem {\n id: string;\n url: string;\n title: string;\n startTime: number;\n state?: TaskState;\n}\n\nexport interface ActionClickDetail {\n action: SimpleActionType;\n item: HistoryItem;\n}\n\n/**\n * 构件 `ai-portal.chat-history`\n */\nexport\n@defineElement(\"ai-portal.chat-history\", {\n styleTexts: [styleText],\n})\nclass ChatHistory extends ReactNextElement implements ChatHistoryProps {\n @property({ attribute: false })\n accessor list: HistoryItem[] | undefined;\n\n @property({ attribute: false })\n accessor actions: ActionType[] | undefined;\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 <ChatHistoryComponent\n list={this.list}\n actions={this.actions}\n onActionClick={this.#handleActionClick}\n />\n );\n }\n}\n\nexport interface ChatHistoryComponentProps extends ChatHistoryProps {\n onActionClick?: (detail: ActionClickDetail) => void;\n}\n\ninterface GroupedHistory {\n title: string;\n items: HistoryItem[];\n}\n\nexport function ChatHistoryComponent({\n list,\n actions,\n onActionClick,\n}: ChatHistoryComponentProps) {\n const groups = useMemo(() => {\n const groupMap = new Map<string, GroupedHistory>();\n // Group history by\n // - today\n // - yesterday\n // - previous 7 days\n // - previous 30 days\n // - each month this year\n // - each year before.\n const now = moment();\n const startOfDay = now.startOf(\"day\");\n const yesterday = startOfDay.clone().subtract(1, \"day\");\n const sevenDaysAgo = startOfDay.clone().subtract(7, \"days\");\n const thirtyDaysAgo = startOfDay.clone().subtract(30, \"days\");\n const thisYear = now.year();\n\n const timestamps = {\n startOfDay: +startOfDay / 1000,\n yesterday: +yesterday / 1000,\n sevenDaysAgo: +sevenDaysAgo / 1000,\n thirtyDaysAgo: +thirtyDaysAgo / 1000,\n thisYear,\n };\n for (const item of list ?? []) {\n let groupKey: string;\n if (item.startTime >= timestamps.startOfDay) {\n groupKey = t(K.TODAY);\n } else if (item.startTime >= timestamps.yesterday) {\n groupKey = t(K.YESTERDAY);\n } else if (item.startTime >= timestamps.sevenDaysAgo) {\n groupKey = t(K.PREVIOUS_7_DAYS);\n } else if (item.startTime >= timestamps.thirtyDaysAgo) {\n groupKey = t(K.PREVIOUS_30_DAYS);\n } else if (item.startTime >= timestamps.thisYear) {\n groupKey = moment(item.startTime * 1000).format(\"MMMM\");\n } else {\n groupKey = moment(item.startTime * 1000).format(\"YYYY\");\n }\n let group = groupMap.get(groupKey);\n if (!group) {\n groupMap.set(groupKey, (group = { title: groupKey, items: [] }));\n }\n group.items.push(item);\n }\n\n return [...groupMap.values()];\n }, [list]);\n\n const [actionsVisible, setActionsVisible] = useState<string | null>(null);\n\n if (!list) {\n return (\n <div className=\"loading\">\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </div>\n );\n }\n\n return (\n <ul>\n {groups.map((group) => (\n <li key={group.title} className=\"group\">\n <div className=\"group-title\">{group.title}</div>\n <ul className=\"items\">\n {group.items.map((item) => (\n <li key={item.id}>\n <WrappedLink\n className={classNames(\"item\", {\n active: actionsVisible === item.id,\n })}\n url={item.url}\n >\n <div className=\"item-title\">{item.title}</div>\n <WrappedMiniActions\n className=\"actions\"\n actions={actions}\n onActionClick={(e) => {\n onActionClick?.({ action: e.detail, item });\n }}\n onVisibleChange={(e) => {\n setActionsVisible(e.detail ? item.id : null);\n }}\n />\n {!DONE_STATES.includes(item.state!) && (\n <div className=\"working\"></div>\n )}\n </WrappedLink>\n </li>\n ))}\n </ul>\n </li>\n ))}\n </ul>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"./images/background@2x.png\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.root{color:#262626;background-color:#e1e3ec;background-image:url(${___CSS_LOADER_URL_REPLACEMENT_0___});background-size:694px 144px;background-position:top left;background-repeat:no-repeat;box-shadow:inset 0px 2px 5px 1px rgba(42,46,59,0.1);border-radius:20px;padding:12px}.container{position:relative}textarea{display:block;width:100%;padding:10px 16px 52px;color:var(--antd-input-color);background:rgba(255,255,255,0.8);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.5);font-size:14px;line-height:22px;height:130px}textarea::placeholder{color:rgba(0,0,0,0.4)}.btn-send:focus,\ntextarea:focus{outline:none}.btn-send{position:absolute;bottom:14px;right:14px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#2540ff;border:none;border-radius:8px;color:#fff}.btn-send[disabled]{background:rgba(0,0,0,0.15)}.btn-send:not([disabled]){cursor:pointer}.btn-send:not([disabled]):hover{background:#5166ff}.btn-send:not([disabled]):active{background:#1e33cc}.suggestions{margin-top:19px}.heading{display:flex;align-items:center;padding:0 5px;margin-bottom:8px}.icon{margin-right:5px}.carousel{overflow:hidden}.carousel + .carousel{margin-top:7px}.list{display:flex;width:max-content;list-style:none;margin:0;padding:0;font-size:12px}.item{background:rgba(255,255,255,0.4);border-radius:12px;border:1px solid #dcdee6;padding:12px;max-width:330px;cursor:pointer}.item:hover{background:rgba(255,255,255,0.5);border:1px solid rgba(37,64,255,0.3)}.list > li + li{margin-left:7px}.title{margin-bottom:4px}.content{color:rgba(0,0,0,0.45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tooltip{display:block}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","toString","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_URL_REPLACEMENT_0___","initializeI18n","NS","locales","defineElement","property","event","method","createDecorators","MemoizedNodeComponent","memo","NodeComponent","CruiseCanvasComponent","forwardRef","LegacyCruiseCanvasComponent","_CruiseCanvas","_A","WeakMap","_B","_C","_D","_E","_CruiseCanvas_brand","WeakSet","_onShare","_F","_onPause","_G","_onResume","_H","_onCancel","_ref","CruiseCanvas","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","_init_taskId","_init_extra_taskId","_init_task","_init_extra_task","_init_jobs","_init_extra_jobs","_init_goBackUrl","_init_extra_goBackUrl","_init_shareEvent","_init_extra_shareEvent","_classPrivateGetter","this","_get_shareEvent","emit","_init_pauseEvent","_init_extra_pauseEvent","_get_pauseEvent","_init_resumeEvent","_init_extra_resumeEvent","_get_resumeEvent","_init_cancelEvent","_init_extra_cancelEvent","_get_cancelEvent","createRef","taskId","_classPrivateFieldGet","v","_classPrivateFieldSet","task","jobs","goBackUrl","resumed","_classPrivateFieldGet2","current","render","React","onShare","onPause","onResume","onCancel","ref","_ref2","_task$title","propTask","propJobs","rootRef","useRef","_task","_jobs","plan","_plan","error","humanInputRef","resumedRef","useTaskDetail","graph","useTaskGraph","rawNodes","nodes","rawEdges","edges","pageTitle","title","taskState","state","useImperativeHandle","_resumedRef$current","call","useEffect","getRuntime","applyPageTitle","handleHttpError","humanInput","useCallback","jobId","input","_humanInputRef$curren","sizeMap","setSizeMap","useState","onNodeResize","size","prev","newMap","Map","delete","set","sizeReady","useLayout","grabbing","transform","transformRef","zoomer","useZoom","zoomable","scrollable","pannable","centered","setCentered","reCenterRef","useAutoCenter","taskLoading","DONE_STATES","includes","length","nonLeafNodes","useMemo","Set","map","edge","source","bottom","leafNodes","node","has","Math","max","view","y","height","bottomRef","manualScrolledUpRef","root","offsetHeight","transformedBottom","k","diffY","CANVAS_PADDING_BOTTOM","translateBy","select","handleReCenter","handleScaleChange","scale","scaleTo","activeToolCallJobId","setActiveToolCallJobId","canvasContextValue","activeToolCallJob","find","job","CanvasContext","Provider","value","className","classNames","styles","loading","style","cursor","WrappedIcon","lib","theme","icon","spinning","canvas","ready","x","key","target","d","points","_ref3","i","join","_node$state","_node$view","_node$view2","type","content","startTime","instructionLoading","GENERAL_DONE_STATES","widgets","WrappedLink","url","prefix","PlanProgress","ZoomBar","onScaleChange","onReCenter","ToolCallDetail","_ref4","nodeRef","useContext","element","observer","ResizeObserver","offsetWidth","observe","disconnect","handleMouseDown","e","stopPropagation","addEventListener","removeEventListener","left","top","NodeStart","NodeEnd","NodeRequirement","NodeInstruction","instruction","NodeJob","_CruiseCanvas2","_set_shareEvent","_set_pauseEvent","_set_resumeEvent","_set_cancelEvent","c","_initClass","_applyDecs","shadowOptions","attribute","o","_","_checkInRHS","K","en","ASK_ANY_THING","COMMON_TASKS","zh","t","i18n","getFixedT","wrapBrick","_ChatBox","_ChatBox_brand","_handleMessageSubmit","ChatBox","_init_disabled","_init_extra_disabled","_init_placeholder","_init_extra_placeholder","_init_autoFocus","_init_extra_autoFocus","_init_suggestions","_init_extra_suggestions","_init_suggestionsLabel","_init_extra_suggestionsLabel","_init_messageSubmit","_init_extra_messageSubmit","_get_messageSubmit","disabled","placeholder","autoFocus","suggestions","suggestionsLabel","ChatBoxComponent","onSubmit","containerRef","textareaRef","setValue","valueRef","handleSubmit","currentTarget","handleChange","handleSubmitClick","Promise","resolve","then","_textareaRef$current","focus","groupedSuggestions","chunk","ceil","handleSelectSuggestion","suggestion","setTimeout","_textareaRef$current2","TextareaAutoResize","minRows","paddingSize","autoResize","submitWhen","onChange","onClick","src","tips","width","group","index","SuggestionCarousel","pixelPerSecond","onSelect","carouselRef","listRef","setX","carousel","list","previousTimestamp","currentTimestamp","start","timer","offsetTime","mod","step","timestamp","undefined","requestAnimationFrame","onMouseEnter","cancelAnimationFrame","onMouseLeave","item","_ChatBox2","_set_messageSubmit","styleTexts","styleText","Boolean","_HomeContainer","HomeContainer","HomeContainerComponent","_HomeContainer2","TODAY","YESTERDAY","PREVIOUS_7_DAYS","PREVIOUS_30_DAYS","WrappedMiniActions","onActionClick","onVisibleChange","_ChatHistory","_ChatHistory_brand","_handleActionClick","ChatHistory","_init_list","_init_extra_list","_init_actions","_init_extra_actions","_init_actionClick","_init_extra_actionClick","detail","_get_actionClick","actions","ChatHistoryComponent","groups","groupMap","now","moment","startOfDay","startOf","yesterday","clone","subtract","sevenDaysAgo","thirtyDaysAgo","timestamps","year","groupKey","format","get","items","values","actionsVisible","setActionsVisible","active","action","_ChatHistory2","_set_actionClick"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[8660],{79:(e,t,n)=>{n.d(t,{I:()=>s,K:()=>a,NS:()=>r,t:()=>l});var o=n(7448);let a=function(e){return e.YES="YES",e.NO="NO",e.CONFIRM="CONFIRM",e.ADD_STEP="ADD_STEP",e.RESET_PLAN="RESET_PLAN",e.PLAN_COMPLETED="PLAN_COMPLETED",e.TASK_COMPLETED="TASK_COMPLETED",e.SHARE="SHARE",e.TYPE_YOUR_MESSAGE_HERE="TYPE_YOUR_MESSAGE_HERE",e.ARGUMENTS="ARGUMENTS",e.PROCESS="PROCESS",e.RESPONSE="RESPONSE",e.CONFIRMING_PLAN_TIPS="CONFIRMING_PLAN_TIPS",e.PAUSE_THE_TASK="PAUSE_THE_TASK",e.RESUME_THE_TASK="RESUME_THE_TASK",e.CANCEL_THE_TASK="CANCEL_THE_TASK",e.CONFIRM_TO_CANCEL_THE_TASK_TITLE="CONFIRM_TO_CANCEL_THE_TASK_TITLE",e.CONFIRM_TO_CANCEL_THE_TASK_CONTENT="CONFIRM_TO_CANCEL_THE_TASK_CONTENT",e.cmdb_create_app_system="cmdb_create_app_system",e.cmdb_create_service_set="cmdb_create_service_set",e.cmdb_append_host_to_service_set="cmdb_append_host_to_service_set",e.cmdb_create_agent_scan_job="cmdb_create_agent_scan_job",e.cmdb_service_node_clustering="cmdb_service_node_clustering",e.ask_human="ask_human",e.ask_human_confirming_plan="ask_human_confirming_plan",e}({});const r="bricks/ai-portal/cruise-canvas",s={en:{YES:"Yes",NO:"No",CONFIRM:"Confirm",ADD_STEP:"Add step",RESET_PLAN:"Reset plan",PLAN_COMPLETED:"All jobs done",TASK_COMPLETED:"Task completed",SHARE:"Share",TYPE_YOUR_MESSAGE_HERE:"Type your message here",ARGUMENTS:"Arguments",PROCESS:"Process",RESPONSE:"Response",CONFIRMING_PLAN_TIPS:"According to your request, I have made the following plan:",PAUSE_THE_TASK:"Pause the task",RESUME_THE_TASK:"Resume the task",CANCEL_THE_TASK:"Cancel the task",CONFIRM_TO_CANCEL_THE_TASK_TITLE:"Are you sure to cancel the task?",CONFIRM_TO_CANCEL_THE_TASK_CONTENT:"The task can not be resumed after been canceled.",cmdb_create_app_system:"Create app system",cmdb_create_service_set:"Create service set",cmdb_append_host_to_service_set:"Append host to service set",cmdb_create_agent_scan_job:"Create agent scan job",cmdb_service_node_clustering:"Service node clustering",ask_human:"Ask user",ask_human_confirming_plan:"Ask user to confirm the plan"},zh:{YES:"是",NO:"否",CONFIRM:"确认",ADD_STEP:"添加步骤",RESET_PLAN:"重置计划",PLAN_COMPLETED:"所有任务已全部完成",TASK_COMPLETED:"任务完成",SHARE:"分享",TYPE_YOUR_MESSAGE_HERE:"在这里输入信息",ARGUMENTS:"参数",PROCESS:"过程",RESPONSE:"响应",CONFIRMING_PLAN_TIPS:"根据你的需求,我已制定如下计划:",PAUSE_THE_TASK:"暂停任务",RESUME_THE_TASK:"恢复任务",CANCEL_THE_TASK:"取消任务",CONFIRM_TO_CANCEL_THE_TASK_TITLE:"确定取消任务吗?",CONFIRM_TO_CANCEL_THE_TASK_CONTENT:"任务取消后将无法再恢复运行。",cmdb_create_app_system:"创建应用系统",cmdb_create_service_set:"创建服务集",cmdb_append_host_to_service_set:"将主机添加到服务集",cmdb_create_agent_scan_job:"创建 agent 扫描任务",cmdb_service_node_clustering:"服务节点聚类",ask_human:"询问用户",ask_human_confirming_plan:"询问用户确认计划"}},l=o.i18n.getFixedT(null,r)},865:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".toolbar--ELlNUAti{position:absolute;display:flex;align-items:center;padding:3px 5px;-webkit-user-select:none;user-select:none;background:rgba(255,255,255,0.7);box-shadow:0px 3px 14px 0px rgba(0,0,0,0.1),0px 1px 4px 0px rgba(0,0,0,0.06);border-radius:8px;border:1px solid rgba(255,255,255,0.3)}.toolbar--ELlNUAti button{background:transparent;border:none;border-radius:4px;color:#333;width:24px;height:24px;font-size:16px;line-height:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}.toolbar--ELlNUAti button:hover{background:rgba(0,0,0,0.04)}.toolbar--ELlNUAti button:active{background:rgba(0,0,0,0.08)}.toolbar--ELlNUAti button:focus{outline:none}.divider--JeH8feaX{background:rgba(0,0,0,0.15);width:1px;height:16px}.toolbar--ELlNUAti > :not(:last-child){margin-right:6px}",""]),s.locals={toolbar:"toolbar--ELlNUAti",divider:"divider--JeH8feaX"};const l=s},1073:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".topology--H9SWG_Xt{color:#666;position:relative}.toolbar--l7OnuKQT{right:20px;bottom:20px}.topology--H9SWG_Xt:not(:hover) .toolbar--l7OnuKQT{display:none}",""]),s.locals={topology:"topology--H9SWG_Xt",toolbar:"toolbar--l7OnuKQT"};const l=s},1451:(e,t,n)=>{n.d(t,{e:()=>d});var o=n(9575),a=n(8769),r=n(9435),s=n(9126);const l=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break","white-space"];let i;const c=/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"metaKey":"ctrlKey",d=a.forwardRef(u);function u(e,t){let{autoResize:n,minRows:d,maxRows:u,borderSize:p,paddingSize:m,containerRef:g,value:b,style:f,submitWhen:h,onChange:x,onSubmit:k,onKeyDown:E,onCompositionStart:w,onCompositionEnd:v,...y}=e;const A=null==n||n,[_,N]=(0,a.useState)(null!=b?b:""),S=(0,a.useRef)(null),[T,C]=(0,a.useState)(null);(0,a.useImperativeHandle)(t,(()=>({focus:()=>{const e=S.current;if(e){var t;const n=null===(t=e.value)||void 0===t?void 0:t.length;e.focus(),n&&e.setSelectionRange(n,n)}}})),[]);const H=(0,a.useCallback)((()=>{const e=S.current;if(e&&A){const t=function(e,t){const{minRows:n=null,maxRows:o=null,borderSize:a=2,paddingSize:r=8}=null!=t?t:{};i||(i=document.createElement("textarea"),i.setAttribute("tab-index","-1"),i.setAttribute("aria-hidden","true"),document.body.appendChild(i));const s=window.getComputedStyle(e),c=l.map((e=>`${e}:${s.getPropertyValue(e)}`)).join(";");let d,u,p;i.setAttribute("style",`${c};\n min-height: 0!important;\n max-height: none!important;\n height: 0!important;\n visibility: hidden!important;\n overflow: hidden!important;\n position: absolute!important;\n z-index: -1000!important;\n top: 0!important;\n right: 0!important;\n pointer-events: none!important;\n`),i.value=e.value||e.placeholder||"";let m=i.scrollHeight+a;if(null!==n||null!==o){const e=parseFloat(window.getComputedStyle(i).getPropertyValue("line-height"));null!==n&&(d=e*n+r+a,m=Math.max(d,m)),null!==o&&(u=e*o+r+a,m<=u&&(p="hidden"),m=Math.min(u,m))}const g={height:m,overflowY:p,resize:"none"};return d&&(g.minHeight=d),u&&(g.maxHeight=u),g}(e,{minRows:d,maxRows:u,borderSize:p,paddingSize:m});(0,r.flushSync)((()=>{C(t)}))}}),[A,u,d,p,m]);(0,a.useEffect)((()=>{N(null!=b?b:"")}),[b]),(0,a.useEffect)((()=>{H()}),[H,_]);const R=(0,a.useRef)(!1),j=(0,a.useCallback)((e=>{R.current=!0,null==w||w(e)}),[w]),P=(0,a.useCallback)((e=>{R.current=!1,null==v||v(e)}),[v]),M=(0,a.useCallback)((e=>{R.current||("Enter"===e.key&&("enter-without-shift"===h?!e.shiftKey:"enter-with-mod"===h&&e[c])&&(e.preventDefault(),e.stopPropagation(),null==k||k(e)),null==E||E(e))}),[E,k,h]);return(0,a.useEffect)((()=>{const e=null==g?void 0:g.current;if(!e||!A)return;let t;const n=new s.A((n=>{for(const o of n)if(o.target===e){const e=o.contentBoxSize?o.contentBoxSize[0]?o.contentBoxSize[0].inlineSize:o.contentBoxSize.inlineSize:o.contentRect.width;if(void 0!==e&&e!==t){const n=!t;t=e,n||requestAnimationFrame(H)}}}));return n.observe(e),()=>{n.disconnect()}}),[A,g,H]),a.createElement("textarea",(0,o.A)({},y,{ref:S,value:_,style:{...f,...T},onChange:e=>{N(e.target.value),null==x||x(e)},onCompositionStart:j,onCompositionEnd:P,onKeyDown:M}))}},1525:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,'.shine-text--t2t9tIJp{color:transparent;background:linear-gradient(to right,var(--shine-text-color) 0%,var(--shine-text-color) 40%,var(--shine-text-highlight-color) 50%,var(--shine-text-color) 60%,var(--shine-text-color) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:shineText--ycIJ4nxc 2s infinite linear}@keyframes shineText--ycIJ4nxc{0%{background-position:-50% 50%}100%{background-position:-250% 50%}}.rounded-button--k7a_h0P_::part(button){border-radius:9999px;padding-left:17px;padding-right:17px}.markdown--t5EHw6k4 code[class*="language-"],.markdown--t5EHw6k4 pre[class*="language-"]{background:hsl(230,1%,98%);color:hsl(230,8%,24%);font-family:"Fira Code","Fira Mono",Menlo,Consolas,"DejaVu Sans Mono",monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:2;tab-size:2;-webkit-hyphens:none;hyphens:none;font-size:13px}.markdown--t5EHw6k4 code[class*="language-"]::selection,.markdown--t5EHw6k4 code[class*="language-"] *::selection,.markdown--t5EHw6k4 pre[class*="language-"] *::selection{background:hsl(230,1%,90%);color:inherit}.markdown--t5EHw6k4 pre[class*="language-"]{padding:1em;margin:0.5em 0;overflow:auto;border-radius:9px}.markdown--t5EHw6k4 :not(pre) > code[class*="language-"]{padding:0.2em 0.3em;border-radius:9px;white-space:normal}.markdown--t5EHw6k4 .token.comment,.markdown--t5EHw6k4 .token.prolog,.markdown--t5EHw6k4 .token.cdata{color:hsl(230,4%,64%)}.markdown--t5EHw6k4 .token.doctype,.markdown--t5EHw6k4 .token.punctuation,.markdown--t5EHw6k4 .token.entity{color:hsl(230,8%,24%)}.markdown--t5EHw6k4 .token.attr-name,.markdown--t5EHw6k4 .token.class-name,.markdown--t5EHw6k4 .token.boolean,.markdown--t5EHw6k4 .token.constant,.markdown--t5EHw6k4 .token.number,.markdown--t5EHw6k4 .token.atrule{color:hsl(35,99%,36%)}.markdown--t5EHw6k4 .token.keyword{color:hsl(301,63%,40%)}.markdown--t5EHw6k4 .token.property,.markdown--t5EHw6k4 .token.tag,.markdown--t5EHw6k4 .token.symbol,.markdown--t5EHw6k4 .token.deleted,.markdown--t5EHw6k4 .token.important{color:hsl(5,74%,59%)}.markdown--t5EHw6k4 .token.selector,.markdown--t5EHw6k4 .token.string,.markdown--t5EHw6k4 .token.char,.markdown--t5EHw6k4 .token.builtin,.markdown--t5EHw6k4 .token.inserted,.markdown--t5EHw6k4 .token.regex,.markdown--t5EHw6k4 .token.attr-value,.markdown--t5EHw6k4 .token.attr-value > .token.punctuation{color:hsl(119,34%,47%)}.markdown--t5EHw6k4 .token.variable,.markdown--t5EHw6k4 .token.operator,.markdown--t5EHw6k4 .token.function{color:hsl(221,87%,60%)}.markdown--t5EHw6k4 .token.url{color:hsl(198,99%,37%)}.markdown--t5EHw6k4 .token.attr-value > .token.punctuation.attr-equals,.markdown--t5EHw6k4 .token.special-attr > .token.attr-value > .token.value.css{color:hsl(230,8%,24%)}.markdown--t5EHw6k4 .language-css .token.selector{color:hsl(5,74%,59%)}.markdown--t5EHw6k4 .language-css .token.property{color:hsl(230,8%,24%)}.markdown--t5EHw6k4 .language-css .token.function,.markdown--t5EHw6k4 .language-css .token.url > .token.function{color:hsl(198,99%,37%)}.markdown--t5EHw6k4 .language-css .token.url > .token.string.url{color:hsl(119,34%,47%)}.markdown--t5EHw6k4 .language-css .token.important,.markdown--t5EHw6k4 .language-css .token.atrule .token.rule{color:hsl(301,63%,40%)}.markdown--t5EHw6k4 .language-javascript .token.operator{color:hsl(301,63%,40%)}.markdown--t5EHw6k4 .language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation{color:hsl(344,84%,43%)}.markdown--t5EHw6k4 .language-json .token.operator{color:hsl(230,8%,24%)}.markdown--t5EHw6k4 .language-json .token.null.keyword{color:hsl(35,99%,36%)}.markdown--t5EHw6k4 .language-markdown .token.url,.markdown--t5EHw6k4 .language-markdown .token.url > .token.operator,.markdown--t5EHw6k4 .language-markdown .token.url-reference.url > .token.string{color:hsl(230,8%,24%)}.markdown--t5EHw6k4 .language-markdown .token.url > .token.content{color:hsl(221,87%,60%)}.markdown--t5EHw6k4 .language-markdown .token.url > .token.url,.markdown--t5EHw6k4 .language-markdown .token.url-reference.url{color:hsl(198,99%,37%)}.markdown--t5EHw6k4 .language-markdown .token.blockquote.punctuation,.markdown--t5EHw6k4 .language-markdown .token.hr.punctuation{color:hsl(230,4%,64%);font-style:italic}.markdown--t5EHw6k4 .language-markdown .token.code-snippet{color:hsl(119,34%,47%)}.markdown--t5EHw6k4 .language-markdown .token.bold .token.content{color:hsl(35,99%,36%)}.markdown--t5EHw6k4 .language-markdown .token.italic .token.content{color:hsl(301,63%,40%)}.markdown--t5EHw6k4 .language-markdown .token.strike .token.content,.markdown--t5EHw6k4 .language-markdown .token.strike .token.punctuation,.markdown--t5EHw6k4 .language-markdown .token.list.punctuation,.markdown--t5EHw6k4 .language-markdown .token.title.important > .token.punctuation{color:hsl(5,74%,59%)}.markdown--t5EHw6k4 .token.bold{font-weight:bold}.markdown--t5EHw6k4 .token.comment,.markdown--t5EHw6k4 .token.italic{font-style:italic}.markdown--t5EHw6k4 .token.entity{cursor:help}.markdown--t5EHw6k4 .token.namespace{opacity:0.8}.markdown--t5EHw6k4 table{display:block;width:100%;width:max-content;max-width:100%;overflow:auto;border-collapse:collapse}.markdown--t5EHw6k4 tr{border-top:1px solid #ccd1de}.markdown--t5EHw6k4 td,.markdown--t5EHw6k4 th{border:1px solid #ccd1de;padding:6px 13px}.markdown--t5EHw6k4{overflow-wrap:break-word}.markdown--t5EHw6k4:not(:first-child){margin-top:6px}.markdown--t5EHw6k4 p{margin:1em 0}.markdown--t5EHw6k4 > :first-child{margin-top:0}.markdown--t5EHw6k4 > :last-child{margin-bottom:0}.table-container--hekbaxrD{padding:8px 8px 10px;border-radius:12px;border:1px solid #e2e2ec;background:#ffffff}.table-container--hekbaxrD:not(:first-child){margin-top:6px}',""]),s.locals={"shine-text":"shine-text--t2t9tIJp",shineText:"shineText--ycIJ4nxc","rounded-button":"rounded-button--k7a_h0P_",markdown:"markdown--t5EHw6k4","table-container":"table-container--hekbaxrD"};const l=s},1776:(e,t,n)=>{e.exports=n.p+"images/a1d108f4.png"},2128:(e,t,n)=>{n.d(t,{t:()=>N});var o=n(8769),a=n.n(o),r=n(3373),s=n.n(r),l=n(2591),i=n.n(l),c=n(1740),d=n.n(c),u=n(8128),p=n.n(u),m=n(855),g=n.n(m),b=n(3051),f=n.n(b),h=n(3656),x=n.n(h),k=n(2671),E={};E.styleTagTransform=x(),E.setAttributes=g(),E.insert=p().bind(null,"head"),E.domAPI=d(),E.insertStyleElement=f(),i()(k.A,E);const w=k.A&&k.A.locals?k.A.locals:void 0;var v=n(5805),y=n(5620),A=n(4833);const _=e=>{let t;return null==e||e.findLast((e=>{var n;return t=null===(n=e.parts)||void 0===n?void 0:n.findLast((e=>{var t;return"data"===e.type&&"progress"===(null===(t=e.data)||void 0===t?void 0:t.type)})),!!t})),t};function N(e){let{job:t,variant:n}=e;const{setActiveToolCallJobId:r}=(0,o.useContext)(y.Q),l=t.toolCall,[i,c]=(0,o.useMemo)((()=>{var e;const n=null===(e=t.messages)||void 0===e?void 0:e.filter((e=>"tool"===e.role));return[_(n),!(null==n||!n.length)]}),[t.messages]),d=(0,o.useMemo)((()=>"read-only"===n),[n]),u=(0,o.useCallback)((()=>{"read-only"!==n&&r(t.id)}),[t.id,n,r]),p=["working","input-required"].includes(t.state)&&c?"completed":t.state,m=t.isError||"failed"===p;return a().createElement("div",{className:s()(w["tool-call"],{[w.failed]:m,[w["read-only"]]:d}),onClick:u},a().createElement("div",{className:s()(w.status)},t.isError||"failed"===p?a().createElement(v.Bj,{className:w.icon,lib:"fa",prefix:"fas",icon:"xmark"}):"completed"===p?a().createElement(v.Bj,{className:w.icon,lib:"fa",prefix:"fas",icon:"check"}):"working"===p?a().createElement(v.Bj,{className:w.icon,lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0}):"input-required"===p?a().createElement(v.Bj,{className:w.icon,lib:"fa",prefix:"far",icon:"circle-user"}):"canceled"===p?a().createElement(v.Bj,{className:w.icon,lib:"fa",prefix:"far",icon:"circle-stop"}):a().createElement(v.Bj,{className:w.icon,lib:"fa",prefix:"far",icon:"clock"}),a().createElement("span",{className:w.name},l.name)),!!i&&!d&&a().createElement(A.W,{progress:i,failed:m}))}},2464:(e,t,n)=>{n.d(t,{A:()=>h});var o=n(2591),a=n.n(o),r=n(1740),s=n.n(r),l=n(8128),i=n.n(l),c=n(855),d=n.n(c),u=n(3051),p=n.n(u),m=n(3656),g=n.n(m),b=n(7110),f={};f.styleTagTransform=g(),f.setAttributes=d(),f.insert=i().bind(null,"head"),f.domAPI=s(),f.insertStyleElement=p(),a()(b.A,f);const h=b.A&&b.A.locals?b.A.locals:void 0},2671:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".tool-call--aTh276av{--failed-color:#f24c25;--border-color:#e2e2ec;--status-border-color:rgba(226,226,236,0.8);font-size:13px;color:#595959;border-radius:10px;border:1px solid var(--border-color);background:#e6e9f3}.tool-call--aTh276av:not(.read-only--xWUswNds):hover{background:#e4e9fb;border:1px solid #b8c1ff}.tool-call--aTh276av:not(:last-child){margin-bottom:10px}.tool-call--aTh276av:not(.read-only--xWUswNds){cursor:pointer}.tool-call--aTh276av .status--V5ZXGYOG:not(:last-child){border-bottom:1px solid var(--status-border-color)}.read-only--xWUswNds{font-size:14px;padding:4px}.failed--sz70SlSa{background:#fef5f3}.failed--sz70SlSa:not(.read-only--xWUswNds):hover{background:#fee7e1;border:1px solid #ffc3b5}.failed--sz70SlSa .status--V5ZXGYOG:not(:last-child){border-bottom:1px solid rgba(253,225,218,0.8)}.status--V5ZXGYOG{height:24px;display:flex;align-items:center;padding:0 12px;color:#262626}.icon--LTp5Jjna{margin-right:8px;color:#8c8c8c}.failed--sz70SlSa .icon--LTp5Jjna{color:var(--failed-color)}.name--FwiqyIlQ{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}",""]),s.locals={"tool-call":"tool-call--aTh276av","read-only":"read-only--xWUswNds",status:"status--V5ZXGYOG",failed:"failed--sz70SlSa",icon:"icon--LTp5Jjna",name:"name--FwiqyIlQ"};const l=s},2773:(e,t,n)=>{n.d(t,{S:()=>p});var o=n(8769),a=n(1030),r=n(3357),s=n(9005),l=n(140);function i(e){const t=[];let n;for(const o of e){if(n&&n===o.role){const e=t[t.length-1];e.parts=[...e.parts,...o.parts]}else t.push({...o});n=o.role}for(const e of t)e.parts=c(e.parts);return t}function c(e){const t=[];let n,o;for(const s of e){var a,r;"text"===n&&"text"===s.type?t[t.length-1].text+=s.text:"stream"===o&&"data"===s.type&&"stream"===(null===(a=s.data)||void 0===a?void 0:a.type)?t[t.length-1].data.message+=s.data.message:t.push({...s}),n=s.type,o="data"===s.type?null===(r=s.data)||void 0===r?void 0:r.type:void 0}return t}const d=(u={task:(e,t)=>{switch(t.type){case"sse":{const n=(0,a.pick)(t.payload,["id","requirement","state","title","startTime","endTime","plan"]);return t.isInitial?n:e&&(0,a.isMatchWith)(e,n,a.isEqual)?e:{...e,...n}}case"reset":return null}return e},jobs:(e,t)=>{switch(t.type){case"sse":{const s=t.payload.jobs;let l=t.isInitial?[]:e;if(!Array.isArray(s)||0===s.length)return l;for(const e of s){var n,o;"blocked"===e.state&&(e.state="working");const t=null!==(n=null===(o=l)||void 0===o?void 0:o.findIndex((t=>t.id===e.id)))&&void 0!==n?n:-1,{messages:s,toolCall:c}=e;if("string"==typeof(null==c?void 0:c.arguments)){c.originalArguments=c.arguments;try{c.arguments=JSON.parse(c.arguments)}catch(e){console.error("Failed to parse toolCall arguments:",e),c.arguments={},c.argumentsParseFailed=!0,c.argumentsParseError=e}}if(-1===t)l=Array.isArray(s)&&s.length>0?[...l,{...e,messages:i(s)}]:[...l,e];else{const n=l[t],o=(0,a.pick)(e,["id","upstream","parent","state","instruction","toolCall","isError","startTime","endTime"]);var r;Array.isArray(s)&&s.length>0&&(o.messages=i([...null!==(r=n.messages)&&void 0!==r?r:[],...s])),(0,a.isMatchWith)(n,o,a.isEqual)||(l=[...l.slice(0,t),{...n,...o},...l.slice(t+1)])}}return l}case"reset":return 0===e.length?e:[]}return e},error:(e,t)=>{switch(t.type){case"sse":{const n=t.payload.error;return null===e&&"string"==typeof n?n:e}case"reset":return null}return e}},(e,t)=>Object.fromEntries(Object.entries(u).map((n=>{let[o,a]=n;return[o,a(e[o],t)]}))));var u;function p(e){const[{task:t,jobs:n,error:i},c]=(0,o.useReducer)(d,null,(()=>({task:null,jobs:[],error:null}))),u=(0,o.useRef)(),p=(0,o.useRef)();(0,o.useEffect)((()=>{if(c({type:"reset"}),u.current=void 0,!e)return;let t,n=!1,o=!1;const a=async()=>{if(!o){o=!0,t=new AbortController;try{const a=await(0,s.createSSEStream)(`${(0,l.getBasePath)()}api/gateway/logic.llm.aiops_service/api/v1/llm/agent/flow/${e}`,{signal:t.signal}),r=await a;let i=!0;for await(const e of r){if(n)return void(o=!1);c({type:"sse",payload:e,isInitial:i}),i=!1}}catch(e){console.error("sse failed",e),(0,l.handleHttpError)(e)}finally{o=!1}}};return p.current=a,u.current=async(t,n)=>{try{await r.http.post(`${(0,l.getBasePath)()}api/gateway/logic.llm.aiops_service/api/v1/llm/agent/flow/${e}/job/${t}`,{input:n})}catch(e){return console.error("human input failed",e),void(0,l.handleHttpError)(e)}a()},a(),()=>{var e;n=!0,null===(e=t)||void 0===e||e.abort()}}),[e]);const[m,g]=(0,o.useState)([]);return(0,o.useEffect)((()=>{g((e=>{const o=new Map,r=new Map;for(const e of n){var s;o.set(e.id,e),e.parent&&r.set(e.parent,[...null!==(s=r.get(e.parent))&&void 0!==s?s:[],e.id])}const l=e=>{var t;return"input-required"===e.state||!(null===(t=r.get(e.id))||void 0===t||!t.some((e=>{const t=o.get(e);return l(t)})))},i=[];for(const e of null!==(c=null==t?void 0:t.plan)&&void 0!==c?c:[]){var c;const t=o.get(e.id);i.push({id:e.id,instruction:e.instruction,state:t?l(t)?"input-required":t.state:void 0})}return(0,a.isEqual)(e,i)?e:i}))}),[n,null==t?void 0:t.plan]),{task:t,jobs:n,plan:m,error:i,humanInputRef:u,resumedRef:p}}},3153:(e,t,n)=>{n.d(t,{r:()=>S});var o=n(9575),a=n(8769),r=n.n(a),s=n(3373),l=n.n(s),i=n(2591),c=n.n(i),d=n(1740),u=n.n(d),p=n(8128),m=n.n(p),g=n(855),b=n.n(g),f=n(3051),h=n.n(f),x=n(3656),k=n.n(x),E=n(4751),w={};w.styleTagTransform=k(),w.setAttributes=b(),w.insert=m().bind(null,"head"),w.domAPI=u(),w.insertStyleElement=h(),c()(E.A,w);const v=E.A&&E.A.locals?E.A.locals:void 0;var y=n(5805),A=n(79),_=n(6854),N=n(5620);function S(e){let{plan:t,state:n}=e;const{onPause:o,onResume:s,onCancel:i}=(0,a.useContext)(N.Q),[c,d]=(0,a.useState)(!1),[u,p]=(0,a.useState)(null);(0,a.useEffect)((()=>{p(null)}),[n]);const{doneCount:m,state:g,instruction:b}=(0,a.useMemo)((()=>(null!=t?t:[]).reduce(((e,t)=>"completed"===t.state?{...e,state:t.state,doneCount:e.doneCount+1}:!e.instruction||t.state&&"unknown"!==t.state?{...e,state:t.state,instruction:t.instruction}:e),{doneCount:0,state:"unknown",instruction:""})),[t]),{className:f,icon:h}=(0,a.useMemo)((()=>C(g,n)),[g,n]),x=(0,a.useCallback)((()=>{d((e=>!e))}),[]),k=(0,a.useCallback)((()=>{s(),p("toggle")}),[s]),E=(0,a.useCallback)((()=>{o(),p("toggle")}),[o]),w=(0,a.useCallback)((async()=>{try{await(0,y.ui)({type:"confirm",title:(0,A.t)(A.K.CONFIRM_TO_CANCEL_THE_TASK_TITLE),content:(0,A.t)(A.K.CONFIRM_TO_CANCEL_THE_TASK_CONTENT)})}catch{return}i(),p("cancel")}),[i]);if(null==t||!t.length)return null;const S=!_.QB.includes(n)&&"input-required"!==g;return r().createElement("div",{className:l()(v.progress,f)},r().createElement("div",{className:v.bar,onClick:x},r().createElement("div",{className:v.icon},r().createElement(y.Bj,h)),r().createElement("span",{className:v.text,title:"completed"===g?"":b},"completed"===g?(0,A.t)(A.K.PLAN_COMPLETED):b),r().createElement("span",{className:v.stat},m,"/",t.length),r().createElement(y.Bj,{className:v.expand,lib:"antd",theme:"outlined",icon:c?"down":"up"})),S&&r().createElement("div",{className:v.actions},"toggle"===u?r().createElement(y.Ne,null,r().createElement("button",{disabled:!0,className:v.action},r().createElement(y.Bj,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))):"paused"===n?r().createElement(y.Ne,{content:u?void 0:(0,A.t)(A.K.RESUME_THE_TASK),onClick:k},r().createElement("button",{disabled:!!u,className:v.action},r().createElement(y.Bj,{lib:"fa",prefix:"far",icon:"circle-play"}))):r().createElement(y.Ne,{content:u?void 0:(0,A.t)(A.K.PAUSE_THE_TASK),onClick:E},r().createElement("button",{disabled:!!u,className:v.action},r().createElement(y.Bj,{lib:"fa",prefix:"far",icon:"circle-pause"}))),"cancel"===u?r().createElement(y.Ne,null,r().createElement("button",{disabled:!0,className:v.action},r().createElement(y.Bj,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))):r().createElement(y.Ne,{content:u?void 0:(0,A.t)(A.K.CANCEL_THE_TASK),onClick:w},r().createElement("button",{disabled:!!u,className:v.action},r().createElement(y.Bj,{lib:"fa",prefix:"far",icon:"circle-stop"})))),c&&r().createElement("ul",{className:v.details},t.map(((e,t)=>r().createElement(T,{key:t,state:e.state,taskState:n,instruction:e.instruction})))))}function T(e){let{state:t,taskState:n,instruction:s}=e;const{className:i,icon:c}=(0,a.useMemo)((()=>C(t,n)),[t,n]);return r().createElement("li",{className:v.step},r().createElement(y.Bj,(0,o.A)({},c,{className:l()(v.state,i)})),r().createElement("span",{className:v.instruction,title:s},s))}function C(e,t){switch(e){case"completed":return{className:v.completed,icon:{lib:"fa",prefix:"fas",icon:"check"}};case"submitted":case"working":return"paused"===t||"canceled"===t?{className:void 0,icon:{lib:"fa",prefix:"far",icon:"paused"===t?"circle-pause":"circle-stop"}}:{className:v.working,icon:{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0}};case"input-required":return{className:v["input-required"],icon:{lib:"fa",prefix:"far",icon:"circle-user"}};case"failed":return{className:v.failed,icon:{lib:"fa",prefix:"fas",icon:"xmark"}};case"canceled":return{className:v.canceled,icon:{lib:"fa",prefix:"far",icon:"circle-stop"}};default:return{icon:{lib:"fa",prefix:"far",icon:"clock"}}}}},3349:(e,t,n)=>{n.d(t,{M:()=>H});var o=n(8769),a=n.n(o),r=n(5738),s=n(3373),l=n.n(s),i=n(5805),c=n(2591),d=n.n(c),u=n(1740),p=n.n(u),m=n(8128),g=n.n(m),b=n(855),f=n.n(b),h=n(3051),x=n.n(h),k=n(3656),E=n.n(k),w=n(9926),v={};v.styleTagTransform=E(),v.setAttributes=f(),v.insert=g().bind(null,"head"),v.domAPI=p(),v.insertStyleElement=x(),d()(w.A,v);const y=w.A&&w.A.locals?w.A.locals:void 0;var A=n(6903),_=n(79),N=n(5620),S=n(2128),T=n(4833);function C(){const{innerWidth:e}=window;return e<800?Math.min(500,e):e<1e3?.8*e:800}function H(e){let{job:t}=e;const{setActiveToolCallJobId:n}=(0,o.useContext)(N.Q),r=t.toolCall,[s,c,d]=(0,o.useMemo)((()=>{var e;const n=null===(e=t.messages)||void 0===e?void 0:e.filter((e=>"tool"===e.role)),o=[],a=[];let r;for(const e of null!=n?n:[])for(const t of null!==(s=e.parts)&&void 0!==s?s:[]){var s;if("data"!==t.type)a.push(t);else{var l;if("progress"===(null===(l=t.data)||void 0===l?void 0:l.type)){r=t;continue}o.push(t)}}return[r,o,a]}),[t.messages]),u=(0,o.useCallback)((()=>{setTimeout((()=>{n(null)}),300)}),[n]),p=(0,o.useRef)(null);(0,o.useEffect)((()=>{setTimeout((()=>{var e;null===(e=p.current)||void 0===e||e.open()}))}),[]);const[m,g]=(0,o.useState)(C);(0,o.useEffect)((()=>{const e=()=>{g(C)};return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]);const b=c.length>0||!!s,f=d.length>0,h=["working","input-required"].includes(t.state)&&b||f?"completed":t.state,x=t.isError||"failed"===h;return a().createElement(i.xb,{ref:p,customTitle:(0,_.t)(_.K[r.name])||r.name,width:m,closable:!0,mask:!0,maskClosable:!0,onClose:u},a().createElement(S.t,{job:t,variant:"read-only"}),a().createElement("div",{className:y.detail},a().createElement("div",{className:y.heading},(0,_.t)(_.K.ARGUMENTS),":"),a().createElement("div",{className:`${y.body} ${A.A.markdown}`},a().createElement(R,{content:r.originalArguments,maybeJson:!0}))),b&&a().createElement("div",{className:y.detail},a().createElement("div",{className:y.heading},(0,_.t)(_.K.PROCESS),":"),a().createElement("div",{className:`${y.body} ${A.A.markdown}`},c.map(((e,t)=>{var n;return"stream"===(null===(n=e.data)||void 0===n?void 0:n.type)?a().createElement(j,{key:t,content:e.data.message}):a().createElement(R,{key:t,content:JSON.stringify(e)})})),!!s&&a().createElement("div",{className:l()(y["progress-container"],{[y.fallback]:x})},a().createElement(T.W,{progress:s,failed:x})))),f&&a().createElement("div",{className:y.detail},a().createElement("div",{className:y.heading},(0,_.t)(_.K.RESPONSE),":"),a().createElement("div",{className:`${y.body} ${A.A.markdown}`},d.map(((e,t)=>{var n;return"data"===e.type&&"progress"===(null===(n=e.data)||void 0===n?void 0:n.type)?null:a().createElement(R,{key:t,content:"text"===e.type?e.text:JSON.stringify(e),maybeJson:"text"===e.type})})))))}function R(e){let{content:t,maybeJson:n}=e;const[s,i]=(0,o.useMemo)((()=>{if(n)try{const e=JSON.parse(null!=t?t:"");return[`\`\`\`json\n${JSON.stringify(e,null,2)}\n\`\`\``]}catch{}return[t,!0]}),[t,n]);return i?a().createElement("pre",{className:l()("language-plaintext",y.fallback)},s):a().createElement(r.N,{content:s})}function j(e){let{content:t}=e;return a().createElement("div",{className:l()(y["stream-message"],A.A.markdown)},a().createElement(r.N,{content:t}))}},3865:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".zoom-bar--MTw5VGPl{left:20px;bottom:20px}@media (max-width: 719px){.zoom-bar--MTw5VGPl{left:auto;bottom:auto;top:20px;right:20px}}",""]),s.locals={"zoom-bar":"zoom-bar--MTw5VGPl"};const l=s},3921:(e,t,n)=>{e.exports=n.p+"images/9f5ff403.png"},4388:(e,t,n)=>{n.d(t,{O:()=>_});var o=n(8769),a=n.n(o),r=n(9859),s=n(2340),l=n(1302),i=n.n(l),c=n(2591),d=n.n(c),u=n(1740),p=n.n(u),m=n(8128),g=n.n(m),b=n(855),f=n.n(b),h=n(3051),x=n.n(h),k=n(3656),E=n.n(k),w=n(6137),v={};v.styleTagTransform=E(),v.setAttributes=f(),v.insert=g().bind(null,"head"),v.domAPI=p(),v.insertStyleElement=x(),d()(w.A,v);const y=w.A&&w.A.locals?w.A.locals:void 0,A=(0,r.wrapBrick)("eo-easyops-avatar");function _(e){let{content:t,startTime:n,loading:r}=e;const l=(0,o.useMemo)((()=>s.auth.getAuth().username),[]);return a().createElement("div",{className:y["node-requirement"]},a().createElement("div",{className:y.heading},a().createElement(A,{className:y.avatar,nameOrInstanceId:l,showName:!0,size:"xs"}),a().createElement("div",{className:y.time},n&&i()(1e3*n).format("MM-DD HH:mm"))),a().createElement("div",{className:y.body},t),r&&a().createElement(a().Fragment,null,a().createElement("svg",{className:y["loading-line"],viewBox:"0 0 2 62",width:"2",height:"62"},a().createElement("path",{d:"M1 0 L1 62"})),a().createElement("div",{className:y.loading},a().createElement("div",{className:y.inner}))))}},4751:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".progress--62eOnxaf{position:absolute;bottom:20px;left:50%;transform:translate(-50%,0);width:var(--cruise-canvas-node-width-medium);max-width:80%}.bar--rnIPF564{background:#24203d;box-shadow:0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);border-radius:12px;color:rgba(255,255,255,0.85);padding:12px;line-height:24px;cursor:pointer;display:flex;align-items:center}.icon--TMLJniSx{margin-right:6px;width:22px;height:22px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:linear-gradient(222deg,#abaab7 25%,#fff 75%);color:#4e4d56;font-size:12px;text-shadow:0px 1px 1px #fff}.progress--62eOnxaf.completed--ACUTqxl7 .icon--TMLJniSx{background:linear-gradient(222deg,#16c661 25%,#fff 75%);color:#055527}.progress--62eOnxaf.failed--atS7ek2B .icon--TMLJniSx{background:linear-gradient(222deg,#f24c25 25%,#fff 75%);color:#5b1504}.progress--62eOnxaf.working--Z6W16jVj .icon--TMLJniSx{background:linear-gradient(222deg,#3e56ff 25%,#fff 75%);color:#0c165d}.progress--62eOnxaf.input-required--YhWlEgu0 .icon--TMLJniSx{background:linear-gradient(222deg,#12aacc 25%,#fff 75%);color:#0c353e}.progress--62eOnxaf.canceled--imA9nfyy .icon--TMLJniSx{background:linear-gradient(222deg,#fcaa07 25%,#fff 75%);color:#302206}.text--vZYOZzn1,\n.instruction--Z7riLyFL{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1}.instruction--Z7riLyFL{color:#262626}.stat--YsJ88cZz{margin-left:6px}.expand--gqn8QEnc{margin-left:6px}.stat--YsJ88cZz,\n.expand--gqn8QEnc{color:rgba(255,255,255,0.65)}.details--rtuqBzKj{position:absolute;left:0;right:0;bottom:4em;background:#fff;border-radius:12px;box-shadow:0px 6px 16px 0px rgba(0,0,0,0.08),0px 3px 6px -4px rgba(0,0,0,0.12);list-style:none;margin:0;padding:12px;cursor:auto}.step--f9i49Db2{display:flex;align-items:center}.step--f9i49Db2:not(:last-child){margin-bottom:8px}.state--TmkD_q3_{margin-right:6px;color:var(--text-color-secondary)}.state--TmkD_q3_.completed--ACUTqxl7{color:var(--color-success)}.state--TmkD_q3_.failed--atS7ek2B{color:var(--color-error)}.state--TmkD_q3_.working--Z6W16jVj{color:var(--color-info)}.state--TmkD_q3_.input-required--YhWlEgu0{color:var(--palette-cyan-7)}.state--TmkD_q3_.canceled--imA9nfyy{color:#fcaa07}.actions--yZPhzbBj{position:absolute;left:0;top:-34px;display:flex}.action--dUQ0UNCE{width:26px;height:26px;border-radius:15px;background:rgba(255,255,255,0.5);box-shadow:0px 2px 4px 0px rgba(0,0,0,0.06);border:1px solid rgba(255,255,255,0.2);color:#262626;display:flex;align-items:center;justify-content:center}.action--dUQ0UNCE:not([disabled]){cursor:pointer}.action--dUQ0UNCE:not([disabled]):active,\n.action--dUQ0UNCE:not([disabled]):hover{background:rgba(255,255,255,0.8)}.action--dUQ0UNCE:focus{outline:none}.actions--yZPhzbBj > * + *{margin-left:8px}",""]),s.locals={progress:"progress--62eOnxaf",bar:"bar--rnIPF564",icon:"icon--TMLJniSx",completed:"completed--ACUTqxl7",failed:"failed--atS7ek2B",working:"working--Z6W16jVj","input-required":"input-required--YhWlEgu0",canceled:"canceled--imA9nfyy",text:"text--vZYOZzn1",instruction:"instruction--Z7riLyFL",stat:"stat--YsJ88cZz",expand:"expand--gqn8QEnc",details:"details--rtuqBzKj",step:"step--f9i49Db2",state:"state--TmkD_q3_",actions:"actions--yZPhzbBj",action:"action--dUQ0UNCE"};const l=s},4833:(e,t,n)=>{n.d(t,{W:()=>v});var o=n(8769),a=n.n(o),r=n(3373),s=n.n(r),l=n(2591),i=n.n(l),c=n(1740),d=n.n(c),u=n(8128),p=n.n(u),m=n(855),g=n.n(m),b=n(3051),f=n.n(b),h=n(3656),x=n.n(h),k=n(7993),E={};E.styleTagTransform=x(),E.setAttributes=g(),E.insert=p().bind(null,"head"),E.domAPI=d(),E.insertStyleElement=f(),i()(k.A,E);const w=k.A&&k.A.locals?k.A.locals:void 0;function v(e){let{progress:t,failed:n}=e;const o=t.data;return a().createElement("div",{className:s()(w["progress-line"],{[w.failed]:n})},a().createElement("div",{className:s()(w.step),key:o.progress},a().createElement("div",{className:w.axis},a().createElement("div",{className:w.line}),a().createElement("div",{className:w.dot})),a().createElement("div",{className:w.progress},a().createElement("span",{className:w.count},o.progress),a().createElement("span",null,"/"),a().createElement("span",{className:w.total},o.total)),a().createElement("div",{className:w.description},o.message)))}},4921:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".plan--ScYmFeqq{padding:8px;background:rgba(62,67,102,0.05);box-shadow:0px 1px 0px 0px rgba(255,255,255,0.5);border-radius:9px}.plan--ScYmFeqq:not(:first-child){margin-top:6px}.steps--l0R0pye1{list-style:none;margin:0;padding:0}.step--b20up4EN{background:#fff;border-radius:8px;padding-right:12px;display:flex}.step--b20up4EN + .step--b20up4EN{margin-top:4px}.step--b20up4EN.editing--qJ7xFdgL{background:var(--cruise-canvas-input-background);box-shadow:var(--cruise-canvas-input-box-shadow)}.content--oJ6ZEiGB{flex:1;min-width:0;padding:0 10px 0 5px;margin:10px 0}.step--b20up4EN:not(.editing--qJ7xFdgL) .content--oJ6ZEiGB{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis}.content--oJ6ZEiGB:focus{outline:none}.dragging--jCn2bzij{cursor:grabbing}.toolbar--CiHZDBZ_{margin-top:12px;display:flex;justify-content:center}.handle--pKE0LK3p,\n.delete--hUaJfjMA{color:#8c8c8c;display:flex;align-items:center;justify-content:center}.handle--pKE0LK3p{cursor:grab;width:24px;border-radius:8px 0px 0px 8px;touch-action:none}.handle--pKE0LK3p:hover,\n.dragging--jCn2bzij .handle--pKE0LK3p{background:rgba(62,67,102,0.05)}.dragging--jCn2bzij,\n.dragging--jCn2bzij .handle--pKE0LK3p{cursor:grabbing}.dragging--jCn2bzij{position:relative;z-index:1}.delete--hUaJfjMA{cursor:pointer}.step--b20up4EN:not(:hover) .delete--hUaJfjMA{visibility:hidden}.delete--hUaJfjMA > *:hover{color:#595959}.actions--jUqHGA_J{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.button-add--QJtgEBHC,\n.button-reset--dyu96f9R{background:none;border:none;padding:0;cursor:pointer}.button-icon--z01cXnf1{border-radius:9px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.04);color:rgba(0,0,0,0.45);margin-right:8px}.button-reset--dyu96f9R{color:#8c8c8c}.button-reset--dyu96f9R:hover,\n.button-add--QJtgEBHC{color:#595959}.button-add--QJtgEBHC:hover .button-icon--z01cXnf1{background:rgba(0,0,0,0.08)}.button-add--QJtgEBHC{display:flex;align-items:center}",""]),s.locals={plan:"plan--ScYmFeqq",steps:"steps--l0R0pye1",step:"step--b20up4EN",editing:"editing--qJ7xFdgL",content:"content--oJ6ZEiGB",dragging:"dragging--jCn2bzij",toolbar:"toolbar--CiHZDBZ_",handle:"handle--pKE0LK3p",delete:"delete--hUaJfjMA",actions:"actions--jUqHGA_J","button-add":"button-add--QJtgEBHC","button-reset":"button-reset--dyu96f9R","button-icon":"button-icon--z01cXnf1"};const l=s},4999:(e,t,n)=>{n.d(t,{l:()=>v});var o=n(8769),a=n.n(o),r=n(2591),s=n.n(r),l=n(1740),i=n.n(l),c=n(8128),d=n.n(c),u=n(855),p=n.n(u),m=n(3051),g=n.n(m),b=n(3656),f=n.n(b),h=n(3865),x={};x.styleTagTransform=f(),x.setAttributes=p(),x.insert=d().bind(null,"head"),x.domAPI=i(),x.insertStyleElement=g(),s()(h.A,x);const k=h.A&&h.A.locals?h.A.locals:void 0;var E=n(6767),w=n(5805);function v(e){let{scale:t,onScaleChange:n,onReCenter:r}=e;const s=(0,o.useCallback)((()=>{null==n||n(t+.1)}),[n,t]),l=(0,o.useCallback)((()=>{null==n||n(t-.1)}),[n,t]);return a().createElement("div",{className:`${E.A.toolbar} ${k["zoom-bar"]}`},a().createElement("button",{onClick:r},a().createElement(w.Bj,{lib:"fa",prefix:"fas",icon:"expand"})),a().createElement("div",{className:k.divider}),a().createElement("button",{onClick:l},a().createElement(w.Bj,{lib:"antd",theme:"outlined",icon:"minus-circle"})),a().createElement("button",{onClick:s},a().createElement(w.Bj,{lib:"antd",theme:"outlined",icon:"plus-circle"})))}},5005:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".node-instruction--Gu7k6RDs{max-width:437px;max-width:min(437px,90vw);background:rgba(255,255,255,0.2);box-shadow:0px 4px 10px 0px rgba(54,64,80,0.08);border-radius:9999px;border:1px solid rgba(255,255,255,0.284);padding:6px 16px;color:rgba(0,0,0,0.45)}.text--jsSeLl7B{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;--shine-text-color:rgba(0,0,0,0.45);--shine-text-highlight-color:#dcdcdc}",""]),s.locals={"node-instruction":"node-instruction--Gu7k6RDs",text:"text--jsSeLl7B"};const l=s},5620:(e,t,n)=>{n.d(t,{Q:()=>o});const o=(0,n(8769).createContext)({humanInput:()=>{},onShare:()=>{},onPause:()=>{},onResume:()=>{},onCancel:()=>{},onNodeResize:()=>{},activeToolCallJobId:null,setActiveToolCallJobId:()=>{}})},5738:(e,t,n)=>{n.d(t,{N:()=>b});var o=n(8769),a=n(1085),r=n(3091),s=n(7447),l=n(6025),i=n(3640),c=n(4360),d=n(4269),u=n(4650),p=n(9830);function m(){function e(e,t,n){if(!n||"pre"!==n.tagName||"code"!==e.tagName)return;const o=function(e){const t=e.properties.className||[];for(const e of t)if("language-"===e.slice(0,9))return e.slice(9).toLowerCase();return null}(e);if(null===o)return;let a;try{n.properties.className=(n.properties.className||[]).concat("language-"+o),a=p.L.highlight((0,u.d)(e),o)}catch{return}e.children=a.children}return t=>{(0,d.YR)(t,"element",e)}}const g={Fragment:a.Fragment,jsx:a.jsx,jsxs:a.jsxs};function b(e){let{content:t}=e;const[n,a]=(0,o.useState)(null);return(0,o.useEffect)((()=>{let e=!1;return(0,r.l)().use(s.A).use(l.A).use(i.A).use([m]).use(c.A,g).process(t).then((t=>{e||a(t.result)})).catch((t=>{e||(console.error("Convert markdown failed:",t),a(null))})),()=>{e=!0}}),[t]),n}},5805:(e,t,n)=>{n.d(t,{Bj:()=>r,EM:()=>l,Gx:()=>s,Ne:()=>i,ui:()=>d,xb:()=>c});var o=n(9859),a=n(9005);const r=(0,o.wrapBrick)("eo-icon"),s=(0,o.wrapBrick)("eo-button"),l=(0,o.wrapBrick)("eo-link"),i=(0,o.wrapBrick)("eo-tooltip"),c=((0,o.wrapBrick)("eo-popover"),(0,o.wrapBrick)("eo-drawer",{onClose:"close",onOpen:"open"})),d=(0,a.unwrapProvider)("basic.show-dialog")},6137:(e,t,n)=>{n.d(t,{A:()=>p});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r),l=n(62),i=n.n(l),c=new URL(n(1776),n.b),d=s()(a()),u=i()(c);d.push([e.id,`.node-requirement--aVjY3LFY{width:var(--cruise-canvas-node-width-medium);max-width:90vw;background-color:rgba(255,255,255,0.4);background-image:url(${u});background-position:center bottom;background-size:var(--cruise-canvas-node-width-medium) 128px;background-repeat:no-repeat;box-shadow:0px 4px 10px 0px rgba(54,64,80,0.18);border-radius:12px;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);border:1px solid rgba(255,255,255,0.4);padding:8px;white-space:pre-wrap;position:relative}.heading--F8b1aIJT{display:flex;align-items:center;margin-bottom:11px;font-size:13px}.avatar--BbtS9D46{flex:1;min-width:0}.avatar--BbtS9D46::part(avatar){border:1px solid #fff}.time--IRwoiblW{color:#8c8c8c}.body--JYv_r9n_{background:#f1f6ff;box-shadow:0px 1px 0px 0px #ffffff;border-radius:9px;padding:15px 10px}.loading-line--xDrsXoxu{position:absolute;bottom:-62px;left:50%;transform:translate(-50%,0)}.loading-line--xDrsXoxu path{fill:none;stroke-width:2px;stroke:rgba(255,255,255,0.6);stroke-dasharray:5,5}.loading--yZvyv4wE{position:absolute;bottom:-74px;left:50%;transform:translate(-50%,0);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:rgba(69,94,255,0.5);border-radius:24px;animation:loading--yZvyv4wE 1s infinite linear}.inner--voOHXPcc{width:12px;height:12px;background:rgb(69,94,255);border-radius:12px}@keyframes loading--yZvyv4wE{0%{transform:translate(-50%,0) scale(1);opacity:1}100%{transform:translate(-50%,0) scale(1.5);opacity:0}}`,""]),d.locals={"node-requirement":"node-requirement--aVjY3LFY",heading:"heading--F8b1aIJT",avatar:"avatar--BbtS9D46",time:"time--IRwoiblW",body:"body--JYv_r9n_","loading-line":"loading-line--xDrsXoxu",loading:"loading--yZvyv4wE",inner:"inner--voOHXPcc"};const p=d},6261:(e,t,n)=>{e.exports=n.p+"images/854a0152.png"},6494:(e,t,n)=>{n.d(t,{E:()=>l});var o=n(8769),a=n(4257),r=n(7566),s=n(6854);function l(e){let{nodes:t,sizeReady:n,zoomer:l,rootRef:i}=e;const[c,d]=(0,o.useState)(!1),u=(0,o.useRef)(!1);return(0,o.useEffect)((()=>{const e=i.current;if(n&&e&&!c&&t.length>0){let n=1/0,o=-1/0,i=1/0,c=-1/0;for(const e of t){const t=e.view,a=t.x+t.width,r=t.y+t.height;t.x<n&&(n=t.x),a>o&&(o=a),t.y<i&&(i=t.y),r>c&&(c=r)}const p=(e.clientWidth-(o+n))/2;let m=30;if(u.current){const t=c-i+s.xX-e.clientHeight;m=t>0?-t-i:(e.clientHeight-(c+i))/2}l.transform((0,r.A)(e),new a.uV(1,p,m)),d(!0)}u.current=!1}),[c,t,i,n,l]),{centered:c,setCentered:d,reCenterRef:u}}},6629:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".human-confirm--pILwNVPH{display:flex;justify-content:center;align-items:center;padding:24px 12px;background:rgba(62,67,102,0.05);box-shadow:0px 1px 0px 0px rgba(255,255,255,0.5);border-radius:9px}.human-confirm--pILwNVPH:not(:first-child){margin-top:6px}.human-confirm--pILwNVPH > * + *{margin-left:8px}",""]),s.locals={"human-confirm":"human-confirm--pILwNVPH"};const l=s},6767:(e,t,n)=>{n.d(t,{A:()=>h});var o=n(2591),a=n.n(o),r=n(1740),s=n.n(r),l=n(8128),i=n.n(l),c=n(855),d=n.n(c),u=n(3051),p=n.n(u),m=n(3656),g=n.n(m),b=n(865),f={};f.styleTagTransform=g(),f.setAttributes=d(),f.insert=i().bind(null,"head"),f.domAPI=s(),f.insertStyleElement=p(),a()(b.A,f);const h=b.A&&b.A.locals?b.A.locals:void 0},6811:(e,t,n)=>{e.exports=n.p+"images/d4ea5a5c.png"},6854:(e,t,n)=>{n.d(t,{Bf:()=>d,CO:()=>i,GT:()=>c,Jw:()=>s,QB:()=>u,U5:()=>r,X4:()=>p,Yt:()=>a,sS:()=>o,xX:()=>l});const o=.5,a=2,r="<START>",s="<END>",l=122,i=40,c=42,d=10,u=["completed","failed","canceled"],p=[...u,"paused"]},6903:(e,t,n)=>{n.d(t,{A:()=>h});var o=n(2591),a=n.n(o),r=n(1740),s=n.n(r),l=n(8128),i=n.n(l),c=n(855),d=n.n(c),u=n(3051),p=n.n(u),m=n(3656),g=n.n(m),b=n(1525),f={};f.styleTagTransform=g(),f.setAttributes=d(),f.insert=i().bind(null,"head"),f.domAPI=s(),f.insertStyleElement=p(),a()(b.A,f);const h=b.A&&b.A.locals?b.A.locals:void 0},6938:(e,t,n)=>{n.d(t,{L:()=>y});var o=n(8769),a=n.n(o),r=n(3373),s=n.n(r),l=n(2591),i=n.n(l),c=n(1740),d=n.n(c),u=n(8128),p=n.n(u),m=n(855),g=n.n(m),b=n(3051),f=n.n(b),h=n(3656),x=n.n(h),k=n(5005),E={};E.styleTagTransform=x(),E.setAttributes=g(),E.insert=p().bind(null,"head"),E.domAPI=d(),E.insertStyleElement=f(),i()(k.A,E);const w=k.A&&k.A.locals?k.A.locals:void 0;var v=n(6903);function y(e){let{content:t,loading:n}=e;return a().createElement("div",{className:w["node-instruction"]},a().createElement("div",{className:s()(w.text,{[v.A["shine-text"]]:n}),title:t},t))}},7110:(e,t,n)=>{n.d(t,{A:()=>p});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r),l=n(62),i=n.n(l),c=new URL(n(3921),n.b),d=s()(a()),u=i()(c);d.push([e.id,`ai-portal\\.cruise-canvas{display:block;position:relative;width:100%;height:100%;overflow:hidden;background-color:rgb(205,206,207);background-image:url(${u});background-size:cover;background-repeat:no-repeat;background-position:center;background-attachment:fixed;color:#262626;--cruise-canvas-node-border:1px solid gray;--cruise-canvas-node-width-small:330px;--cruise-canvas-node-width-medium:453px;--cruise-canvas-primary-color:#2540ff;--cruise-canvas-input-background:rgba(255,255,255,0.8);--cruise-canvas-input-box-shadow:0px 1px 0px 0px #ffffff,inset 0px 2px 4px 0px #b3bcf9}.root--z6jdb_BU{width:100%;height:100%;position:relative}.widgets--r6lUPOu2{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;-webkit-user-select:none;user-select:none}.root--z6jdb_BU.loading--m5r507Hp .canvas--u6C26uH_,\n.root--z6jdb_BU.loading--m5r507Hp + .widgets--r6lUPOu2{visibility:hidden}.loading-icon--UkRBMlBy{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;color:#fff}.widgets--r6lUPOu2 > *{pointer-events:auto;-webkit-user-select:text;user-select:text}.canvas--u6C26uH_,\n.edges--uNPQGWZg{width:100%;height:100%;position:absolute;transform-origin:0% 0%;-webkit-user-select:none;user-select:none}.node--IBGywwp4{position:absolute;-webkit-user-select:text;user-select:text;cursor:auto}.node--IBGywwp4:not(.ready--pmh440go),\n.canvas--u6C26uH_:not(.ready--pmh440go) > .edges--uNPQGWZg{visibility:hidden}svg.edges--uNPQGWZg{pointer-events:none;overflow:visible}.edge--muRUWYG1{fill:none;stroke-width:2px;stroke:rgba(255,255,255,0.6);stroke-dasharray:5,5}.go-back--myNmSpSv{position:absolute;top:20px;left:20px}.go-back--myNmSpSv::part(link){width:32px;height:32px;display:flex;justify-content:center;align-items:center;background:rgba(255,255,255,0.7);box-shadow:0px 3px 14px 0px rgba(0,0,0,0.1),0px 1px 4px 0px rgba(0,0,0,0.06);border-radius:8px;border:1px solid rgba(255,255,255,0.3);color:inherit;box-sizing:border-box}.go-back--myNmSpSv::part(link):hover{background:rgba(255,255,255,0.5)}.go-back--myNmSpSv::part(link):active{background:rgba(255,255,255,0.3)}`,""]),d.locals={root:"root--z6jdb_BU",widgets:"widgets--r6lUPOu2",loading:"loading--m5r507Hp",canvas:"canvas--u6C26uH_","loading-icon":"loading-icon--UkRBMlBy",edges:"edges--uNPQGWZg",node:"node--IBGywwp4",ready:"ready--pmh440go",edge:"edge--muRUWYG1","go-back":"go-back--myNmSpSv"};const p=d},7221:(e,t,n)=>{n.d(t,{A:()=>g});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r),l=n(62),i=n.n(l),c=new URL(n(9594),n.b),d=new URL(n(6261),n.b),u=s()(a()),p=i()(c),m=i()(d);u.push([e.id,`.node-end--yzRaOZnC{width:var(--cruise-canvas-node-width-small);background-color:#fff;background-image:url(${p});background-size:var(--cruise-canvas-node-width-small) 271px;background-repeat:no-repeat;background-position:center;border:1px solid #e0e5f0;border-radius:12px;display:flex;flex-direction:column;align-items:center;padding:41px 24px 28px}.icon--IVcHjGFO{width:64px;height:64px;background-image:url(${m});background-size:59px 49px;background-repeat:no-repeat;background-position:center;margin-bottom:16px}.title--ESn4jaJ9{margin-bottom:8px;font-weight:500;font-size:16px;line-height:24px}.description--aYl8sq6S{margin-bottom:36px;font-size:13px;color:#8c8c8c;line-height:24px}.button--mkIwsPzt{width:120px;height:30px;background:rgba(0,0,0,0.04);border:none;border-radius:15px;text-align:center;cursor:pointer}.button--mkIwsPzt:hover{background:rgba(0,0,0,0.08)}.button--mkIwsPzt:active{background:rgba(0,0,0,0.15)}.button--mkIwsPzt:focus{outline:none}`,""]),u.locals={"node-end":"node-end--yzRaOZnC",icon:"icon--IVcHjGFO",title:"title--ESn4jaJ9",description:"description--aYl8sq6S",button:"button--mkIwsPzt"};const g=u},7617:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".node-job--soTYrcA7{width:var(--cruise-canvas-node-width-medium);max-width:90vw;background:linear-gradient(180deg,#f5f8ff 0%,#edf0f9 100%);box-shadow:0px 4px 10px 0px rgba(177,149,207,0.4),0px 2px 4px 0px rgba(0,0,0,0.06);border-radius:12px;border:1px solid #fff;padding:8px}.fit-content--HuAZHd31{min-width:var(--cruise-canvas-node-width-medium);width:min-content}.ask-user--lf925zGf{background:rgba(255,255,255,0.4);box-shadow:0px 4px 10px 0px rgba(54,64,80,0.18);border-color:rgba(255,255,255,0.5);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}.error--IwtdD0T6{box-shadow:inset 0px 0px 8px 2px rgba(242,76,37,0.6);border-color:rgba(242,76,37,0.6)}.heading--GZqrhPqL{display:flex;align-items:center;border-bottom:1px solid #e2e2ec;padding:0 5px 5px;font-size:13px;color:#8c8c8c}.icon--Rb_vveHN{margin-right:6px;font-size:14px}.tool--RR3S1Z1V{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;--shine-text-color:#8c8c8c;--shine-text-highlight-color:#dcdcdc}.time--eHXSEjt6{margin-left:6px}.body--V34MsV9R{padding:9px 4px 4px}.scrollable--LudR_5Pj{max-height:462px;overflow-y:auto}.ask-user--lf925zGf .heading--GZqrhPqL{border-bottom:none}.role-assistant--Y8vd9Oms,\n.role-user--nAW4Hzsu{background:var(--cruise-canvas-input-background);border-radius:9px;border:1px solid #ccd1de;padding:6px 16px}.role-user--nAW4Hzsu{white-space:pre-wrap}.human-input--wFc6ovnT{margin-top:1em;display:block;width:100%;padding:10px 16px;color:inherit;background:var(--cruise-canvas-input-background);box-shadow:var(--cruise-canvas-input-box-shadow);border-radius:9px;border:none;font-size:14px;line-height:22px;height:64px}.human-input--wFc6ovnT:focus{outline:none}.human-input--wFc6ovnT::placeholder{color:#bfbfbf}.node-job--soTYrcA7 *::-webkit-scrollbar{width:5px;height:5px;background:transparent}.node-job--soTYrcA7 *::-webkit-scrollbar-thumb{background-color:#d8d8d8;border-radius:3px}.node-job--soTYrcA7 *::-webkit-scrollbar-track{background:transparent}",""]),s.locals={"node-job":"node-job--soTYrcA7","fit-content":"fit-content--HuAZHd31","ask-user":"ask-user--lf925zGf",error:"error--IwtdD0T6",heading:"heading--GZqrhPqL",icon:"icon--Rb_vveHN",tool:"tool--RR3S1Z1V",time:"time--eHXSEjt6",body:"body--V34MsV9R",scrollable:"scrollable--LudR_5Pj","role-assistant":"role-assistant--Y8vd9Oms","role-user":"role-user--nAW4Hzsu","human-input":"human-input--wFc6ovnT"};const l=s},7642:(e,t,n)=>{n.d(t,{g:()=>l});var o=n(7586),a=n.n(o),r=n(8769),s=n(6854);function l(e){let{rawNodes:t,rawEdges:n,sizeMap:o,state:l}=e;const c=(0,r.useRef)(null),d="completed"===l,{initialNodes:u,initialEdges:p}=(0,r.useMemo)((()=>{const e=[{type:"start",id:s.U5}],o=[],a=[],r=null!=t?t:[],l=null!=n?n:[],i=new Set(l.map((e=>e.target))),u=d?new Set(l.map((e=>e.source))):null;for(const e of r)i.has(e.id)||o.push({source:s.U5,target:e.id}),d&&!u.has(e.id)&&a.push(e.id);e.push(...r),o.push(...l),a.length>0&&(e.push({id:s.Jw,type:"end"}),o.push(...a.map((e=>({source:e,target:s.Jw})))));const p=c.current;if(p)for(const t of e){const e=p.get(t.id);e&&(t.view=e)}return{initialNodes:e,initialEdges:o}}),[d,n,t]),m=(0,r.useRef)(null);return(0,r.useMemo)((()=>{var e;for(const e of u)if(null==o||!o.has(e.id))return{sizeReady:!1,nodes:u,edges:[]};const t=new(a().graphlib.Graph);t.setGraph({rankdir:"TB",nodesep:s.GT,edgesep:s.Bf,ranksep:s.CO}),t.setDefaultEdgeLabel((function(){return{}}));for(const e of p)t.setEdge(e.source,e.target);for(const e of u){const[n,a]=o.get(e.id);t.setNode(e.id,{id:e.id,width:n,height:a})}a().layout(t);let n=null;const r=u.map((e=>{const o=t.node(e.id),a=o.x-o.width/2,r=o.y-o.height/2;return"start"===e.type&&(m.current?n={x:m.current.x-a,y:m.current.y-r}:m.current={x:a,y:r}),{...e,view:{x:a,y:r,width:o.width,height:o.height}}}));if(n)for(const e of r)Object.assign(e.view,i(e.view,n));const l=null!==(e=c.current)&&void 0!==e?e:c.current=new Map;for(const e of r){const{x:t,y:n}=e.view;l.set(e.id,{x:t,y:n})}return{sizeReady:!0,nodes:r,edges:p.map((e=>{const o=t.node(e.source),a=i(o,n),r=t.node(e.target),l=i(r,n),c=l.y-(r.height+s.CO)/2,d=[{x:a.x,y:a.y+o.height/2},{x:a.x,y:c},{x:l.x,y:c},{x:l.x,y:l.y-r.height/2}];return{...e,points:d}}))}}),[p,u,o])}function i(e,t){return t?{x:e.x+t.x,y:e.y+t.y}:{x:e.x,y:e.y}}},7954:(e,t,n)=>{n.d(t,{H:()=>E});var o=n(8769),a=n.n(o),r=n(2591),s=n.n(r),l=n(1740),i=n.n(l),c=n(8128),d=n.n(c),u=n(855),p=n.n(u),m=n(3051),g=n.n(m),b=n(3656),f=n.n(b),h=n(8905),x={};x.styleTagTransform=f(),x.setAttributes=p(),x.insert=d().bind(null,"head"),x.domAPI=i(),x.insertStyleElement=g(),s()(h.A,x);const k=h.A&&h.A.locals?h.A.locals:void 0;function E(){return a().createElement("div",{className:k["node-start"]},a().createElement("div",{className:k.icon}))}},7993:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".progress-line--CX_xuAHC{--breathing-color:rgba(205,205,217,0.7);--breathing-color-2:rgba(205,205,217,0);display:flex;flex-direction:column}.progress-line--CX_xuAHC .step--YXd66tSR{position:relative;display:flex;align-items:center;padding:10px 4px 10px 16px;color:rgba(0,0,0,0.5)}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5{position:absolute;top:0;bottom:0;left:14px;width:1px}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5 .line--BUSBjzxD{width:1px;height:100%;background:linear-gradient(172deg,rgba(205,205,217,0) 0%,#cdcdd9 46%,rgba(205,205,217,0) 100%)}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5 .dot--TPMEta87{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:5px;height:5px;background:rgba(205,205,217,1);border-radius:50%}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF{padding:3px;margin:0 8px 0 12px;border-radius:10px;line-height:1;background:#ffffff}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF .count--RdZcMYhZ{font-weight:400}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF .total--BKoLTm8c{opacity:0.6}.progress-line--CX_xuAHC .step--YXd66tSR .description--AyfMh1_M{flex:1;color:#999}.progress-line--CX_xuAHC .step--YXd66tSR:last-child .progress--alc7SspF .count--RdZcMYhZ{font-weight:600}.failed--Q9TADo_k .step--YXd66tSR:last-child .axis--T4nVxQt5 .line--BUSBjzxD{background:linear-gradient(172deg,rgba(242,76,37,0) 0%,rgba(242,76,37,0.3) 47%,rgba(242,76,37,0) 100%)}.failed--Q9TADo_k .step--YXd66tSR:last-child .axis--T4nVxQt5 .dot--TPMEta87{background:rgba(255,154,120,1)}.failed--Q9TADo_k .step--YXd66tSR:last-child .progress--alc7SspF{background:#ffd6d6}.failed--Q9TADo_k .step--YXd66tSR:last-child .progress--alc7SspF .count--RdZcMYhZ{color:#f44336}",""]),s.locals={"progress-line":"progress-line--CX_xuAHC",step:"step--YXd66tSR",axis:"axis--T4nVxQt5",line:"line--BUSBjzxD",dot:"dot--TPMEta87",progress:"progress--alc7SspF",count:"count--RdZcMYhZ",total:"total--BKoLTm8c",description:"description--AyfMh1_M",failed:"failed--Q9TADo_k"};const l=s},8100:(e,t,n)=>{n.d(t,{W:()=>V});var o=n(8769),a=n.n(o),r=n(5738),s=n(1451),l=n(4598),i=n(3373),c=n.n(i),d=n(1302),u=n.n(d),p=n(140),m=n(9443),g=n(6903),b=n(79),f=n(7390);const h=a().lazy((async()=>({default:await(0,f.asyncWrapBrick)("cmdb-instances.cmdb-instances-input-form",{onChangeV2:"cmdb.instance.form.change.v2"})})));var x=n(5805),k=n(2591),E=n.n(k),w=n(1740),v=n.n(w),y=n(8128),A=n.n(y),_=n(855),N=n.n(_),S=n(3051),T=n.n(S),C=n(3656),H=n.n(C),R=n(6629),j={};j.styleTagTransform=H(),j.setAttributes=N(),j.insert=A().bind(null,"head"),j.domAPI=v(),j.insertStyleElement=T(),E()(R.A,j);const P=R.A&&R.A.locals?R.A.locals:void 0;var M=n(5620);function I(e){let{jobId:t,confirmText:n,cancelText:r}=e;const{humanInput:s}=(0,o.useContext)(M.Q);return a().createElement("div",{className:P["human-confirm"]},a().createElement(x.Gx,{type:"primary",className:g.A["rounded-button"],onClick:()=>{s(t,n||(0,b.t)(b.K.YES))}},n||(0,b.t)(b.K.YES)),a().createElement(x.Gx,{type:"text",onClick:()=>{s(t,r||(0,b.t)(b.K.NO))},style:{marginLeft:"0.5em"}},r||(0,b.t)(b.K.NO)))}var z=n(9575),L=n(1030),O=n(1380),B=n(5414),K=n(7046),U=n(6550),D=n(4921),Y={};Y.styleTagTransform=H(),Y.setAttributes=N(),Y.insert=A().bind(null,"head"),Y.domAPI=v(),Y.insertStyleElement=T(),E()(D.A,Y);const q=D.A&&D.A.locals?D.A.locals:void 0;let F;function J(e){let{jobId:t,steps:n}=e;const[r,s]=(0,o.useState)([]),{humanInput:l}=(0,o.useContext)(M.Q);(0,o.useEffect)((()=>{s((null!=n?n:[]).map((e=>({id:(0,L.uniqueId)("step-"),content:e}))))}),[n]);const i=(0,o.useMemo)((()=>r.map((e=>e.id))),[r]),[c,d]=(0,o.useState)(!1),u=(0,O.FR)((0,O.MS)(O.AN,{activationConstraint:{distance:1}})),p=(0,o.useMemo)((()=>[B.FN,B.Mk]),[]),m=(0,o.useCallback)((e=>{let{active:t,over:n}=e;n&&t.id!==n.id&&(s((e=>{const o=e.findIndex((e=>e.id===t.id)),a=e.findIndex((e=>e.id===n.id));return(0,K.be)(e,o,a)})),d(!0))}),[]),f=(0,o.useCallback)((()=>{l(t,JSON.stringify({type:"plan",steps:r.map((e=>e.content))}))}),[l,t,r]),h=(0,o.useCallback)((()=>{s((null!=n?n:[]).map((e=>({id:(0,L.uniqueId)("step-"),content:e})))),d(!1)}),[n]),k=(0,o.useCallback)((()=>{s((e=>e.concat({id:(0,L.uniqueId)("step-"),content:"",newlyAdded:!0}))),d(!0)}),[]),E=(0,o.useCallback)((e=>{s((t=>t.filter((t=>t.id!==e)))),d(!0)}),[]),w=(0,o.useCallback)(((e,t)=>{s((n=>n.map((n=>n.id===e?{...n,content:t}:n)))),d(!0)}),[]);return a().createElement(a().Fragment,null,a().createElement("div",{className:q.plan},a().createElement(O.Mp,{sensors:u,collisionDetection:O.fp,modifiers:p,onDragEnd:m},a().createElement(K.gB,{items:i,strategy:K._G},a().createElement("ul",{className:q.steps},r.map((e=>a().createElement(G,{key:e.id,id:e.id,content:e.content,newlyAdded:e.newlyAdded,onDelete:E,onUpdateContent:w})))))),a().createElement("div",{className:q.actions},a().createElement("button",{className:q["button-add"],onClick:k},a().createElement(x.Bj,{className:q["button-icon"],lib:"antd",icon:"plus"}),a().createElement("span",{className:q["button-text"]},(0,b.t)(b.K.ADD_STEP))),a().createElement("button",{className:q["button-reset"],hidden:!c,onClick:h},(0,b.t)(b.K.RESET_PLAN)))),a().createElement("div",{className:q.toolbar},a().createElement(x.Gx,{type:"primary",className:g.A["rounded-button"],onClick:f},(0,b.t)(b.K.CONFIRM))))}function G(e){let{id:t,content:n,newlyAdded:r,onDelete:s,onUpdateContent:l}=e;const{attributes:i,listeners:d,setNodeRef:u,transform:p,transition:m,isDragging:g}=(0,K.gl)({id:t}),b=(0,o.useRef)(null);(0,o.useEffect)((()=>{var e;r&&(null===(e=b.current)||void 0===e||e.focus())}),[]);const f=(0,o.useMemo)((()=>({transform:U.Ks.Transform.toString(p),transition:m})),[p,m]),[h,k]=(0,o.useState)(!1),E=(0,o.useCallback)((()=>{k(!0)}),[]),w=(0,o.useCallback)((e=>{k(!1);const o=e.currentTarget.textContent;null!==o&&n!==o&&l(t,o)}),[n,t,l]),v=(0,o.useCallback)((e=>{"Enter"===e.key&&(e.preventDefault(),e.currentTarget.blur())}),[]);return a().createElement("li",(0,z.A)({ref:u},i,d,{className:c()(q.step,{[q.dragging]:g,[q.editing]:h}),style:f}),a().createElement("span",{className:q.handle},a().createElement(x.Bj,{lib:"antd",icon:"holder"})),a().createElement("span",{className:q.content,ref:b,onFocus:E,onBlur:w,onKeyDown:v,contentEditable:(y=!0,y?function(){if("boolean"!=typeof F){const e=document.createElement("div");e.setAttribute("contenteditable","PLAINTEXT-ONLY"),F="plaintext-only"===e.contentEditable}return F}()?"plaintext-only":"true":"false")},n),a().createElement("span",{className:q.delete},a().createElement(x.Bj,{className:q.delete,lib:"antd",icon:"delete",onClick:()=>s(t)})));var y}var Z=n(2128);function W(e){let{job:t}=e;const n=(0,o.useMemo)((()=>{var e;const n=null===(e=t.messages)||void 0===e?void 0:e.find((e=>"tool"===e.role));if(n){var o;const e=null===(o=n.parts)||void 0===o||null===(o=o.find((e=>"text"===e.type)))||void 0===o?void 0:o.text;if(e)try{return JSON.parse(e)}catch{}}return null}),[t.messages]);return"plan"===(null==n?void 0:n.type)&&Array.isArray(n.steps)?a().createElement("div",{className:`${m.A.message} ${m.A["role-user"]}`},a().createElement("ol",{style:{paddingLeft:.5*Math.floor(Math.log10(n.steps.length+1))+1.5+"em"}},n.steps.map(((e,t)=>a().createElement("li",{key:t},e))))):a().createElement("div",{className:`${m.A.message} ${m.A["role-user"]}`},"Something went wrong.")}n(6767);var X=n(1073),Q={};function V(e){var t,n,o,s,l,i,d,p,f;let{job:h,state:k}=e;const E="ask_human"===(null===(t=h.toolCall)||void 0===t?void 0:t.name),w="ask_human_confirming_plan"===(null===(n=h.toolCall)||void 0===n?void 0:n.name),v=E||w,y=E&&["ask_user_more","ask_user_confirm","ask_user_choose","ask_user_select_from_cmdb","ask_user_adjust_plan"].includes(null===(o=h.toolCall.arguments)||void 0===o?void 0:o.command)||w,A="working"===k||"submitted"===k,_=!1;return a().createElement("div",{className:c()(m.A["node-job"],{[m.A.error]:h.isError,[m.A["ask-user"]]:v,[m.A["fit-content"]]:_})},a().createElement("div",{className:m.A.heading},v?a().createElement(x.Bj,{className:m.A.icon,lib:"fa",prefix:"fas",icon:"user-check"}):h.toolCall?a().createElement(x.Bj,{className:m.A.icon,lib:"antd",theme:"outlined",icon:"tool"}):a().createElement(x.Bj,{className:m.A.icon,lib:"easyops",icon:"robot"}),a().createElement("div",{className:c()(m.A.tool,{[g.A["shine-text"]]:A})},null!==(s=h.toolCall)&&void 0!==s&&s.name?(0,b.t)(b.K[h.toolCall.name])||h.toolCall.name:"Elevo"),a().createElement("div",{className:m.A.time},h.startTime&&u()(1e3*h.startTime).format("MM-DD HH:mm"))),a().createElement("div",{className:c()(m.A.body,{})},y?a().createElement(a().Fragment,null,(w||!(null===(l=h.toolCall.arguments)||void 0===l||!l.question))&&a().createElement("div",{className:`${m.A.message} ${g.A.markdown} ${m.A["role-assistant"]}`},a().createElement(r.N,{content:w?(0,b.t)(b.K.CONFIRMING_PLAN_TIPS):null===(i=h.toolCall.arguments)||void 0===i?void 0:i.question})),"input-required"===k&&("ask_user_more"===h.toolCall.arguments.command?a().createElement($,{jobId:h.id}):"ask_user_confirm"===h.toolCall.arguments.command?a().createElement(I,{jobId:h.id,confirmText:h.toolCall.arguments.confirm_text,cancelText:h.toolCall.arguments.cancel_text}):"ask_user_choose"===h.toolCall.arguments.command?a().createElement(ee,{jobId:h.id,options:h.toolCall.arguments.options}):"ask_user_select_from_cmdb"===h.toolCall.arguments.command?a().createElement(te,{jobId:h.id,objectId:h.toolCall.arguments.objectId,attrId:h.toolCall.arguments.attrId}):w?a().createElement(J,{jobId:h.id,steps:h.toolCall.arguments.steps}):null)):E?a().createElement("div",{className:`${m.A.message} ${m.A["role-assistant"]}`},"Unexpected ask_human command:"," ",JSON.stringify(null!==(d=null===(p=h.toolCall.arguments)||void 0===p?void 0:p.command)&&void 0!==d?d:null)):null,!v&&h.toolCall&&a().createElement(Z.t,{job:h}),w&&"input-required"!==k?a().createElement(W,{job:h}):null===(f=h.messages)||void 0===f?void 0:f.map(((e,t)=>{var n;return"tool"!==e.role||v?a().createElement("div",{key:t,className:c()(m.A.message,g.A.markdown,{[m.A["role-user"]]:"tool"===e.role})},null===(n=e.parts)||void 0===n?void 0:n.map(((e,t)=>a().createElement(a().Fragment,{key:t},"text"===e.type?a().createElement(r.N,{content:e.text}):a().createElement("pre",{className:"language-plaintext"},JSON.stringify(e,null,2)))))):null})),_))}function $(e){let{jobId:t}=e;const n=(0,o.useRef)(null),{humanInput:r}=(0,o.useContext)(M.Q);return a().createElement("div",{ref:n},a().createElement(s.e,{className:m.A["human-input"],containerRef:n,autoResize:!0,minRows:2,borderSize:0,paddingSize:20,placeholder:(0,b.t)(b.K.TYPE_YOUR_MESSAGE_HERE),submitWhen:"enter-without-shift",onSubmit:e=>{const n=e.currentTarget.value;n&&r(t,n)}}))}function ee(e){let{jobId:t,options:n}=e;const{humanInput:r}=(0,o.useContext)(M.Q);return a().createElement("div",{style:{marginTop:"1em",display:"flex",flexDirection:"column",gap:"0.5em"}},null==n?void 0:n.map(((e,n)=>a().createElement(x.Gx,{key:n,onClick:()=>{r(t,e)}},e))))}function te(e){let{jobId:t,objectId:n,attrId:r}=e;const{humanInput:s}=(0,o.useContext)(M.Q),[i,c]=(0,o.useState)(null);if((0,o.useEffect)((()=>{if(!n)return;let e=!1;return(async()=>{try{const t=(await(0,l.r)({ref_object:n})).data;e||c(t)}catch(e){console.error("Fetch object list failed:",e),(0,p.handleHttpError)(e)}})(),()=>{e=!0}}),[n]),!n)return a().createElement("div",{style:{marginTop:"1em"}},"Can not call ask_user_select_from_cmdb without objectId");const d=!r||"instanceId"===r&&"HOST"===n?"ip":r;return a().createElement("div",{style:{marginTop:"1em"}},a().createElement(o.Suspense,null,a().createElement(h,{objectList:i,objectId:n,fieldId:d,onChangeV2:e=>{e.detail.length&&s(t,e.detail.map((e=>e[d])).join("\n"))}})))}Q.styleTagTransform=H(),Q.setAttributes=N(),Q.insert=A().bind(null,"head"),Q.domAPI=v(),Q.insertStyleElement=T(),E()(X.A,Q),X.A&&X.A.locals&&X.A.locals,n(9626).A},8231:(e,t,n)=>{n.d(t,{f:()=>m});var o,a,r,s=n(8769),l=n(7566),i=n(4257),c=n(6854),d=n(9443);const u=/mac/i.test(null!==(o=null!==(a=null===(r=navigator.userAgentData)||void 0===r?void 0:r.platform)&&void 0!==a?a:navigator.platform)&&void 0!==o?o:navigator.userAgent);function p(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey&&u?10:1)}function m(e){let{rootRef:t,zoomable:n,scrollable:o,pannable:a,pannableWithCtrl:r,scaleRange:u,onSwitchActiveTarget:m}=e;const[g,b]=(0,s.useState)(!1),[f,h]=(0,s.useState)({k:1,x:0,y:0}),x=(0,s.useRef)(f),k=(0,s.useMemo)((()=>null!=u?u:[c.sS,c.Yt]),[u]),E=(0,s.useMemo)((()=>(0,i.s_)().wheelDelta(p)),[]);return(0,s.useEffect)((()=>{let e=!1;E.scaleExtent(n?k:[1,1]).on("start",(()=>{e=!1,b(!0)})).on("zoom",(t=>{e=!0,h(t.transform),x.current=t.transform})).on("end",(()=>{b(!1),e||null==m||m(null)})).filter((e=>("wheel"===e.type||(r?a||e.ctrlKey:!e.ctrlKey))&&!e.button))}),[m,k,n,E,r,a]),(0,s.useEffect)((()=>{if(r){const e=e=>{e.ctrlKey&&e.preventDefault()};return document.addEventListener("contextmenu",e,!0),()=>{document.removeEventListener("contextmenu",e,!0)}}}),[r]),(0,s.useEffect)((()=>{const e=t.current;if(!e)return;const s=(0,l.A)(e),i=()=>{s.on(".zoom",null).on(".zoom.custom",null).on("wheel",null)};if(n||o||a)return(n||o)&&s.on("wheel.zoom.custom",(e=>{if(!e.ctrlKey&&(e.stopImmediatePropagation(),o)){const t=e.target.closest('pre[class*="language-"]');if(t&&function(e,t){if(!t)return!1;if(t>0){const t=e.scrollWidth-e.clientWidth;return e.scrollLeft<=t-1}return e.scrollLeft>=1}(t,e.deltaX))return;const n=e.target.closest(`.${d.A.body}`);if(n&&function(e,t){if(!t)return!1;if(t>0){const t=e.scrollHeight-e.clientHeight;return e.scrollTop<=t-1}return e.scrollTop>=1}(n,e.deltaY))return;e.cancelable&&(e.preventDefault(),E.translateBy(s,e.wheelDeltaX/5,e.wheelDeltaY/5))}})),s.call(E).on("wheel",(e=>{e.preventDefault()})).on("dblclick.zoom",null),a||r||s.on("mousedown.zoom",null),a||s.on("touchstart.zoom",null).on("touchmove.zoom",null).on("touchend.zoom",null),i;i()}),[r,a,t,o,n,E]),{grabbing:g,transform:f,transformRef:x,zoomer:E,scaleRange:k}}},8905:(e,t,n)=>{n.d(t,{A:()=>p});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r),l=n(62),i=n.n(l),c=new URL(n(6811),n.b),d=s()(a()),u=i()(c);d.push([e.id,`.node-start--Mrh1iP5r{width:65px;height:65px;position:relative;overflow:visible}.icon--NxC4u6Wl{width:75px;height:75px;background-image:url(${u});background-size:75px 75px;background-repeat:no-repeat;background-position:center;position:absolute;left:-5px;top:-1px}`,""]),d.locals={"node-start":"node-start--Mrh1iP5r",icon:"icon--NxC4u6Wl"};const p=d},9295:(e,t,n)=>{n.d(t,{s:()=>v});var o=n(8769),a=n.n(o),r=n(2591),s=n.n(r),l=n(1740),i=n.n(l),c=n(8128),d=n.n(c),u=n(855),p=n.n(u),m=n(3051),g=n.n(m),b=n(3656),f=n.n(b),h=n(7221),x={};x.styleTagTransform=f(),x.setAttributes=p(),x.insert=d().bind(null,"head"),x.domAPI=i(),x.insertStyleElement=g(),s()(h.A,x);const k=h.A&&h.A.locals?h.A.locals:void 0;var E=n(79),w=n(5620);function v(){const{onShare:e}=(0,o.useContext)(w.Q);return a().createElement("div",{className:k["node-end"]},a().createElement("div",{className:k.icon}),a().createElement("div",{className:k.title},(0,E.t)(E.K.TASK_COMPLETED)),a().createElement("div",{className:k.description},(0,E.t)(E.K.PLAN_COMPLETED)),a().createElement("button",{className:k.button,onClick:e},(0,E.t)(E.K.SHARE)))}},9443:(e,t,n)=>{n.d(t,{A:()=>h});var o=n(2591),a=n.n(o),r=n(1740),s=n.n(r),l=n(8128),i=n.n(l),c=n(855),d=n.n(c),u=n(3051),p=n.n(u),m=n(3656),g=n.n(m),b=n(7617),f={};f.styleTagTransform=g(),f.setAttributes=d(),f.insert=i().bind(null,"head"),f.domAPI=s(),f.insertStyleElement=p(),a()(b.A,f);const h=b.A&&b.A.locals?b.A.locals:void 0},9533:(e,t,n)=>{n.d(t,{B:()=>a});var o=n(8769);function a(e,t){return(0,o.useMemo)((()=>{if(!e)return null;const n=null!=t?t:[],o=[],a=[],r="requirement";o.push({type:"requirement",id:r,content:e.requirement,state:0===n.length?"working":"completed"});const s=new Map,l=new Map,i=new Map,c=new Map,d=[],u=[];for(const e of n)if(e.parent){let t=l.get(e.parent);t||(t=[],l.set(e.parent,t)),t.push(e.id)}for(const e of n){s.set(e.id,e);for(const t of null!==(p=e.upstream)&&void 0!==p?p:[]){var p;let n=i.get(t);n||(n=[],i.set(t,n)),n.push(e.id)}var m;e.parent||(u.push(e.id),null!==(m=e.upstream)&&void 0!==m&&m.length||d.push(e.id))}const g=e=>{for(const t of e){const e=l.get(t),n=i.get(t);if(e){const o=e.filter((e=>{var t;return!(null!==(t=s.get(e).upstream)&&void 0!==t&&t.length)})),a=n?e.filter((e=>!i.has(e))):[];i.set(t,o);for(const e of a)i.set(e,[...n]);g(e)}}};g(u);for(const[e,t]of i)for(const n of t){let t=c.get(n);t||(t=[],c.set(n,t)),t.push(e)}const b=[],f=new Set,h=[...d];for(;h.length>0;){const e=h.shift();if(f.has(e))continue;f.add(e),b.push(e);const t=i.get(e);t&&h.push(...t)}const x=new Map([[r,[r]]]);for(const e of b){const t=s.get(e),{messages:n}=t,a=Array.isArray(n)&&n.length>0||t.toolCall,r=[];if(t.instruction){const n=`instruction:${e}`;o.push({type:"instruction",id:n,job:t,state:t.state}),r.push(n)}if(a||!t.instruction){const e=`job:${t.id}`;o.push({type:"job",id:e,job:t,state:t.state}),r.push(e)}x.set(e,r)}for(const e of b){const t=x.get(e),n=c.get(e);for(const e of null!=n?n:[r]){const n=x.get(e);a.push({source:n[n.length-1],target:t[0]})}for(let e=1;e<t.length;e++)a.push({source:t[e-1],target:t[e]})}return{nodes:o,edges:a}}),[e,t])}},9594:(e,t,n)=>{e.exports=n.p+"images/b1e65906.png"},9626:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,".topology-node{padding:5px;font-size:24px}.topology-node-label{position:absolute;bottom:-20px;left:50%;transform:translate(-50%,0);font-size:14px;line-height:16px;background:#fff;padding:0 2px 2px;border-radius:4px;max-width:124px;overflow:hidden;text-overflow:ellipsis}",""]);const l=s.toString()},9926:(e,t,n)=>{n.d(t,{A:()=>l});var o=n(6758),a=n.n(o),r=n(935),s=n.n(r)()(a());s.push([e.id,'.detail--JiiWugxP{margin-top:20px;color:#595959;margin-bottom:7px}.detail--JiiWugxP .body--H_Wy7M2z code[class*="language-"],.detail--JiiWugxP .body--H_Wy7M2z pre[class*="language-"]{background:#ffffff}.detail--JiiWugxP .body--H_Wy7M2z pre[class*="language-"]{border-radius:9px;border:1px solid #ccd1de}.detail--JiiWugxP .body--H_Wy7M2z pre.fallback--mxkVhIEE{white-space:pre-wrap;background:#fef5f3}.progress-container--tFUAQo73,\n.stream-message--G0tAm9aa{border-radius:9px;border:1px solid #ccd1de;background:#ffffff}.progress-container--tFUAQo73{padding:6px 2px}.fallback--mxkVhIEE{background:#fef5f3}.stream-message--G0tAm9aa{padding:1em;margin:0.5em 0}',""]),s.locals={detail:"detail--JiiWugxP",body:"body--H_Wy7M2z",fallback:"fallback--mxkVhIEE","progress-container":"progress-container--tFUAQo73","stream-message":"stream-message--G0tAm9aa"};const l=s}}]);
2
+ //# sourceMappingURL=8660.3de86810.js.map