@next-bricks/ai-portal 0.28.5 → 0.28.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +11 -11
- package/dist/chunks/4820.e6af8c49.js +2 -0
- package/dist/chunks/4820.e6af8c49.js.map +1 -0
- package/dist/chunks/{7314.b506f276.js → 7314.71e96327.js} +3 -3
- package/dist/chunks/7314.71e96327.js.map +1 -0
- package/dist/chunks/{981.b69af31a.js → 981.42a7e029.js} +2 -2
- package/dist/chunks/981.42a7e029.js.map +1 -0
- package/dist/chunks/{main.63045414.js → main.87716b90.js} +2 -2
- package/dist/chunks/{main.63045414.js.map → main.87716b90.js.map} +1 -1
- package/dist/examples.json +9 -9
- package/dist/{index.4dc3c04b.js → index.45bcdcf1.js} +2 -2
- package/dist/{index.4dc3c04b.js.map → index.45bcdcf1.js.map} +1 -1
- package/dist/manifest.json +99 -99
- package/dist/types.json +70 -70
- package/dist-types/elevo-sidebar/ChatHistory.d.ts +1 -1
- package/package.json +2 -2
- package/dist/chunks/4820.d2d81591.js +0 -2
- package/dist/chunks/4820.d2d81591.js.map +0 -1
- package/dist/chunks/7314.b506f276.js.map +0 -1
- package/dist/chunks/981.b69af31a.js.map +0 -1
- /package/dist/chunks/{7314.b506f276.js.LICENSE.txt → 7314.71e96327.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/7314.b506f276.js","mappings":"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","sources":["webpack:///../../node_modules/@next-api-sdk/llm-sdk/dist/esm/api/llm/agent_flow/searchTaskForAgentFlow.js","webpack:///./src/elevo-sidebar/LegacyChatHistory.tsx","webpack:///./src/elevo-sidebar/bricks.ts","webpack:///./src/elevo-sidebar/styles.shadow.css","webpack:///../../node_modules/@next-api-sdk/llm-sdk/dist/esm/api/llm/elevo/listElevoConversations.js","webpack:///./src/elevo-sidebar/ChatHistory.tsx","webpack:///./src/elevo-sidebar/i18n.ts"],"sourcesContent":["import { http } from \"@next-core/http\";\n/**\n * @description 分页查询agent flow, 默认只查询最近三个页的数据\n * @endpoint POST /api/v1/llm/agent/flow/search\n */\nexport const AgentFlowApi_searchTaskForAgentFlow = async (data, options) => /**! @contract easyops.api.llm.agent_flow.SearchTaskForAgentFlow@1.0.0 */(await http.post(\"api/gateway/logic.llm.aiops_service/api/v1/llm/agent/flow/search\", data, options)).data;\n//# sourceMappingURL=searchTaskForAgentFlow.js.map","import React, {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport moment from \"moment\";\nimport classNames from \"classnames\";\nimport { AgentFlowApi_searchTaskForAgentFlow } from \"@next-api-sdk/llm-sdk\";\nimport type {\n ActionType,\n SimpleActionType,\n} from \"@next-bricks/basic/mini-actions\";\nimport { get, isEqual } from \"lodash\";\nimport { K, t } from \"./i18n.js\";\nimport type { TaskState } from \"../cruise-canvas/interfaces.js\";\nimport { WrappedIcon, WrappedLink, WrappedMiniActions } from \"./bricks.js\";\nimport { DONE_STATES } from \"../shared/constants.js\";\nimport type { ChatHistoryRef } from \"./ChatHistory.js\";\n\ninterface LegacyHistoryItem {\n id: string;\n title: string;\n startTime: number;\n state?: TaskState;\n}\n\ninterface LegacyGroupedHistory {\n title: string;\n items: LegacyHistoryItem[];\n}\n\nexport interface LegacyActionClickDetail {\n action: SimpleActionType;\n item: LegacyHistoryItem;\n}\n\nexport interface LegacyChatHistoryProps {\n activeId?: string;\n urlTemplate?: string;\n actions?: ActionType[];\n onActionClick: (detail: LegacyActionClickDetail) => void;\n onHistoryClick: () => void;\n}\n\nexport const LegacyChatHistory = forwardRef(LowLevelChatHistory);\n\nexport function LowLevelChatHistory(\n {\n activeId,\n actions,\n urlTemplate,\n onActionClick,\n onHistoryClick,\n }: LegacyChatHistoryProps,\n ref: React.Ref<ChatHistoryRef>\n) {\n const rootRef = useRef<HTMLDivElement | null>(null);\n const [list, setList] = useState<LegacyHistoryItem[] | null>(null);\n const [nextToken, setNextToken] = useState<string | undefined>();\n const [loadNextToken, setLoadNextToken] = useState<string | undefined>();\n\n useEffect(() => {\n Promise.all([\n AgentFlowApi_searchTaskForAgentFlow(\n { next_token: loadNextToken },\n {\n interceptorParams: {\n ignoreLoadingBar: true,\n },\n }\n ),\n new Promise((resolve) => setTimeout(resolve, 500)), // Force a minimum delay\n ])\n .then(([data]) => {\n setList((prev) => [\n ...(prev ?? []),\n ...(data.data as LegacyHistoryItem[]),\n ]);\n setNextToken(data.next_token);\n })\n .catch((error) => {\n if (process.env.NODE_ENV !== \"test\") {\n // eslint-disable-next-line no-console\n console.error(\"Error loading chat history:\", error);\n }\n });\n }, [loadNextToken]);\n\n const groups = useMemo(() => {\n const groupMap = new Map<string, LegacyGroupedHistory>();\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.clone().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.clone().startOf(\"year\");\n\n const timestamps = {\n startOfDay: +startOfDay / 1000,\n yesterday: +yesterday / 1000,\n sevenDaysAgo: +sevenDaysAgo / 1000,\n thirtyDaysAgo: +thirtyDaysAgo / 1000,\n thisYear: +thisYear / 1000,\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 const nextRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n const next = nextRef.current;\n const root = rootRef.current;\n if (!next || !nextToken || !root) {\n return;\n }\n const observer = new IntersectionObserver(\n (entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n setLoadNextToken(nextToken);\n }\n }\n },\n { root }\n );\n observer.observe(next);\n return () => {\n observer.disconnect();\n };\n }, [nextToken]);\n\n const pullIdRef = useRef(0);\n\n const pull = useCallback(async () => {\n try {\n const pullId = ++pullIdRef.current;\n const tempList = await AgentFlowApi_searchTaskForAgentFlow(\n {},\n {\n interceptorParams: {\n ignoreLoadingBar: true,\n },\n }\n );\n if (pullId !== pullIdRef.current) {\n // Ignore this pull if a newer one has been triggered\n return;\n }\n setList((prev) => {\n const prevList = prev ?? [];\n const newList = tempList.data as LegacyHistoryItem[];\n const newIds = new Set(newList.map((item) => item.id));\n const newItemsMap = new Map(newList.map((item) => [item.id, item]));\n\n let foundIntersection = false;\n let foundChanged = false;\n let isFirst = true;\n for (const item of prevList) {\n const newItem = newItemsMap.get(item.id);\n if (newItem) {\n foundIntersection = true;\n foundChanged =\n (isFirst && newItem !== newList[0]) || !isEqual(newItem, item);\n if (foundChanged) {\n break;\n }\n } else {\n break;\n }\n isFirst = false;\n }\n\n if (!foundIntersection) {\n setNextToken(tempList.next_token);\n return newList;\n }\n\n if (foundChanged) {\n return [\n ...newList,\n ...prevList.filter((item) => !newIds.has(item.id)),\n ];\n }\n\n return prev;\n });\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error pulling chat history:\", error);\n }\n }, []);\n\n useImperativeHandle(\n ref,\n () => ({\n pull,\n }),\n [pull]\n );\n\n if (!list) {\n return (\n <div className=\"history\">\n <div className=\"loading\">\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"history\" ref={rootRef}>\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 \"actions-active\": item.id === actionsVisible,\n active: item.id === activeId,\n })}\n onClick={onHistoryClick}\n {...(urlTemplate\n ? { url: parseTemplate(urlTemplate, item) }\n : null)}\n >\n <div className=\"item-title\" title={item.title}>\n {item.title}\n </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 {nextToken && (\n <div className=\"load-more\" ref={nextRef}>\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n )}\n </div>\n );\n}\n\nfunction parseTemplate(\n template: string | undefined,\n context: Record<string, any>\n) {\n return template?.replace(/{{(.*?)}}/g, (_match: string, key: string) => {\n const value = get(context, key);\n return value;\n });\n}\n","import { wrapBrick } from \"@next-core/react-element\";\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 EoDropdownActions,\n DropdownActionsProps,\n DropdownActionsEvents,\n DropdownActionsEventsMapping,\n} from \"@next-bricks/basic/dropdown-actions\";\nimport type {\n EoEasyopsAvatar,\n EoEasyopsAvatarProps,\n} from \"@next-bricks/basic/easyops-avatar\";\nimport type {\n EoMiniActions,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping,\n EoMiniActionsProps,\n} from \"@next-bricks/basic/mini-actions\";\nimport type { IconButton, IconButtonProps } from \"../icon-button\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nexport const WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nexport const WrappedDropdownActions = wrapBrick<\n EoDropdownActions,\n DropdownActionsProps,\n DropdownActionsEvents,\n DropdownActionsEventsMapping\n>(\"eo-dropdown-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\nexport const WrappedEasyopsAvatar = wrapBrick<\n EoEasyopsAvatar,\n EoEasyopsAvatarProps\n>(\"eo-easyops-avatar\");\nexport const WrappedMiniActions = wrapBrick<\n EoMiniActions,\n EoMiniActionsProps,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping\n>(\"eo-mini-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\nexport const WrappedIconButton = wrapBrick<IconButton, IconButtonProps>(\n \"ai-portal.icon-button\"\n);\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\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}.sidebar{position:relative;z-index:1;width:261px;height:100%;background:#f6f7f9;border-right:1px solid #e3e5eb;padding:26px 16px 0;display:flex;flex-direction:column;transition:transform 0.3s ease-in-out}.logo-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.logo-link::part(link){display:block}.logo{vertical-align:middle}.new-chat::part(link){display:flex;gap:0;align-items:center;color:var(--elevo-color-brand);font-size:14px;text-align:left;cursor:pointer}.sidebar .new-chat::part(link){background:#f0f4ff;border-radius:8px;border:1px solid #c9d7ff;padding:9px 13px;font-weight:500;margin-bottom:16px}.sidebar .new-chat::part(link):hover{background:rgba(201,215,255,0.5)}.new-chat-icon{font-size:16px;margin-right:5px}.footer{border-top:1px solid rgba(0,0,0,0.04);padding:9px 12px;margin:0 -16px}.dropdown{display:block}.account{background:none;border:none;border-radius:8px;padding:6px 10px;display:block;width:100%;text-align:left;cursor:pointer}.account:hover{background:rgba(0,0,0,0.04)}.alternative{position:fixed;top:8px;left:8px;padding:6px 10px 6px 8px;display:flex;align-items:center;opacity:0;z-index:1;transition:opacity 0.2s ease-in-out;background:rgba(255,255,255,0);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.alternative .new-chat::part(link){padding:4px;margin-left:16px;font-size:12px}.alternative .new-chat::part(link):hover{color:#7891ff}.alternative .new-chat::part(link):active{color:#0911b3}.container{width:261px;height:100%;transition:width 0.3s ease-in-out}.collapsed{width:0;overflow:visible}.collapsed .sidebar{transform:translateX(-100%)}.collapsed .alternative{opacity:1}:host([behavior=\"drawer\"]){z-index:1;width:0}:host(:not([behavior=\"drawer\"])) .alternative .new-chat{display:none}.mask{position:fixed;top:0;right:0;bottom:0;left:0}.links{border-bottom:1px solid rgba(0,0,0,0.06);padding-bottom:16px;margin-bottom:16px}.link{display:block}.link + .link{margin-top:4px}.link::part(link){display:flex;gap:0;align-items:center;padding:7px 13px;border-radius:8px;color:#000}.link::part(link):hover{background:rgba(0,0,0,0.04)}.link .icon{font-size:16px;margin-right:10px}.link .title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history{flex:1;min-height:0;overflow-y:auto;margin:0 -16px;padding:0 12px}.history ul{list-style:none;margin:0;padding:0}.history .loading{display:flex;justify-content:center;padding:8px}.history .group + .group{margin-top:15px}.history .group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.history .item{display:block}.history .item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.history .item.active::part(link){background:rgba(0,0,0,0.06)}.history .item.actions-active::part(link),.history .item::part(link):hover{background:rgba(0,0,0,0.04)}.history .item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history .actions{cursor:auto}.history .item:not(:hover):not(.actions-active) .actions{display:none}.history .working{width:8px;height:8px;border-radius:8px;background:var(--elevo-color-brand);margin:0 7px}.history .item.actions-active .working,.history .item:hover .working,.history .item.active .working{display:none}.history .load-more{display:flex;justify-content:center;align-items:center;height:36px}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { http } from \"@next-core/http\";\n/**\n * @description 获取elevo会话列表\n * @endpoint GET /api/v1/elevo/conversations\n */\nexport const ElevoApi_listElevoConversations = async (params, options) => /**! @contract easyops.api.llm.elevo.ListElevoConversations@1.0.0 */(await http.get(\"api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations\", {\n ...options,\n params\n})).data;\n//# sourceMappingURL=listElevoConversations.js.map","import React, {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport moment from \"moment\";\nimport classNames from \"classnames\";\nimport { ElevoApi_listElevoConversations } from \"@next-api-sdk/llm-sdk\";\nimport type {\n ActionType,\n SimpleActionType,\n} from \"@next-bricks/basic/mini-actions\";\nimport { get, isEqual } from \"lodash\";\nimport { K, t } from \"./i18n.js\";\nimport type { TaskState } from \"../cruise-canvas/interfaces.js\";\nimport { WrappedIcon, WrappedLink, WrappedMiniActions } from \"./bricks.js\";\nimport { DONE_STATES } from \"../shared/constants.js\";\n\nexport interface HistoryItem {\n conversationId: string;\n title: string;\n time: number;\n state?: TaskState;\n}\n\nexport interface GroupedHistory {\n title: string;\n items: HistoryItem[];\n}\n\nexport interface ActionClickDetail {\n action: SimpleActionType;\n item: HistoryItem;\n}\n\nexport interface ChatHistoryProps {\n username?: string;\n activeId?: string;\n urlTemplate?: string;\n actions?: ActionType[];\n onActionClick: (detail: ActionClickDetail) => void;\n onHistoryClick: () => void;\n}\n\nexport interface ChatHistoryRef {\n pull: () => void;\n}\n\nexport const ChatHistory = forwardRef(LowLevelChatHistory);\n\nexport function LowLevelChatHistory(\n {\n username,\n activeId,\n actions,\n urlTemplate,\n onActionClick,\n onHistoryClick,\n }: ChatHistoryProps,\n ref: React.Ref<ChatHistoryRef>\n) {\n const rootRef = useRef<HTMLDivElement | null>(null);\n const [list, setList] = useState<HistoryItem[] | null>(null);\n const [nextToken, setNextToken] = useState<string | undefined>();\n const [loadNextToken, setLoadNextToken] = useState<string | undefined>();\n\n useEffect(() => {\n setNextToken(undefined);\n setLoadNextToken(undefined);\n setList(null);\n }, [username]);\n\n useEffect(() => {\n Promise.all([\n ElevoApi_listElevoConversations(\n {\n token: loadNextToken,\n username,\n },\n {\n interceptorParams: {\n ignoreLoadingBar: true,\n },\n }\n ),\n new Promise((resolve) => setTimeout(resolve, 500)), // Force a minimum delay\n ])\n .then(([data]) => {\n setList((prev) => [\n ...(prev ?? []),\n ...(data.conversations as HistoryItem[]),\n ]);\n setNextToken(data.nextToken);\n })\n .catch((error) => {\n if (process.env.NODE_ENV !== \"test\") {\n // eslint-disable-next-line no-console\n console.error(\"Error loading chat history:\", error);\n }\n });\n }, [loadNextToken, username]);\n\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.clone().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.clone().startOf(\"year\");\n\n const timestamps = {\n startOfDay: +startOfDay / 1000,\n yesterday: +yesterday / 1000,\n sevenDaysAgo: +sevenDaysAgo / 1000,\n thirtyDaysAgo: +thirtyDaysAgo / 1000,\n thisYear: +thisYear / 1000,\n };\n for (const item of list ?? []) {\n let groupKey: string;\n if (item.time >= timestamps.startOfDay) {\n groupKey = t(K.TODAY);\n } else if (item.time >= timestamps.yesterday) {\n groupKey = t(K.YESTERDAY);\n } else if (item.time >= timestamps.sevenDaysAgo) {\n groupKey = t(K.PREVIOUS_7_DAYS);\n } else if (item.time >= timestamps.thirtyDaysAgo) {\n groupKey = t(K.PREVIOUS_30_DAYS);\n } else if (item.time >= timestamps.thisYear) {\n groupKey = moment(item.time * 1000).format(\"MMMM\");\n } else {\n groupKey = moment(item.time * 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 const nextRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n const next = nextRef.current;\n const root = rootRef.current;\n if (!next || !nextToken || !root) {\n return;\n }\n const observer = new IntersectionObserver(\n (entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n setLoadNextToken(nextToken);\n }\n }\n },\n { root }\n );\n observer.observe(next);\n return () => {\n observer.disconnect();\n };\n }, [nextToken]);\n\n const pullIdRef = useRef(0);\n\n const pull = useCallback(async () => {\n try {\n const pullId = ++pullIdRef.current;\n const tempList = await ElevoApi_listElevoConversations(\n { username },\n {\n interceptorParams: {\n ignoreLoadingBar: true,\n },\n }\n );\n if (pullId !== pullIdRef.current) {\n // Ignore this pull if a newer one has been triggered\n return;\n }\n setList((prev) => {\n const prevList = prev ?? [];\n const newList = tempList.conversations as HistoryItem[];\n const newIds = new Set(newList.map((item) => item.conversationId));\n const newItemsMap = new Map(\n newList.map((item) => [item.conversationId, item])\n );\n\n let foundIntersection = false;\n let foundChanged = false;\n let isFirst = true;\n for (const item of prevList) {\n const newItem = newItemsMap.get(item.conversationId);\n if (newItem) {\n foundIntersection = true;\n foundChanged =\n (isFirst && newItem !== newList[0]) || !isEqual(newItem, item);\n if (foundChanged) {\n break;\n }\n } else {\n break;\n }\n isFirst = false;\n }\n\n if (!foundIntersection) {\n setNextToken(tempList.nextToken);\n return newList;\n }\n\n if (foundChanged) {\n return [\n ...newList,\n ...prevList.filter((item) => !newIds.has(item.conversationId)),\n ];\n }\n\n return prev;\n });\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error pulling chat history:\", error);\n }\n }, [username]);\n\n useImperativeHandle(\n ref,\n () => ({\n pull,\n }),\n [pull]\n );\n\n if (!list) {\n return (\n <div className=\"history\">\n <div className=\"loading\">\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </div>\n </div>\n );\n }\n\n return (\n <div className=\"history\" ref={rootRef}>\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.conversationId}>\n <WrappedLink\n className={classNames(\"item\", {\n \"actions-active\": item.conversationId === actionsVisible,\n active: item.conversationId === activeId,\n })}\n onClick={onHistoryClick}\n {...(urlTemplate\n ? { url: parseTemplate(urlTemplate, item) }\n : null)}\n >\n <div className=\"item-title\" title={item.title}>\n {item.title}\n </div>\n <WrappedMiniActions\n className=\"actions\"\n actions={actions}\n onActionClick={(e) => {\n onActionClick({ action: e.detail, item });\n }}\n onVisibleChange={(e) => {\n setActionsVisible(\n e.detail ? item.conversationId : null\n );\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 {nextToken && (\n <div className=\"load-more\" ref={nextRef}>\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n )}\n </div>\n );\n}\n\nfunction parseTemplate(\n template: string | undefined,\n context: Record<string, any>\n) {\n return template?.replace(/{{(.*?)}}/g, (_match: string, key: string) => {\n const value = get(context, key);\n return value;\n });\n}\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n NEW_CHAT = \"NEW_CHAT\",\n LOGOUT = \"LOGOUT\",\n TODAY = \"TODAY\",\n YESTERDAY = \"YESTERDAY\",\n PREVIOUS_7_DAYS = \"PREVIOUS_7_DAYS\",\n PREVIOUS_30_DAYS = \"PREVIOUS_30_DAYS\",\n SWITCH_LANGUAGE = \"SWITCH_LANGUAGE\",\n}\n\nconst en: Locale = {\n [K.NEW_CHAT]: \"New chat\",\n [K.LOGOUT]: \"Logout\",\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 [K.SWITCH_LANGUAGE]: \"中文\",\n};\n\nconst zh: Locale = {\n [K.NEW_CHAT]: \"新对话\",\n [K.LOGOUT]: \"登出\",\n [K.TODAY]: \"今天\",\n [K.YESTERDAY]: \"昨天\",\n [K.PREVIOUS_7_DAYS]: \"过去7天\",\n [K.PREVIOUS_30_DAYS]: \"过去30天\",\n [K.SWITCH_LANGUAGE]: \"English\",\n};\n\nexport const NS = \"bricks/ai-portal/elevo-sidebar\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n"],"names":["AgentFlowApi_searchTaskForAgentFlow","async","data","options","http","post","LegacyChatHistory","forwardRef","LowLevelChatHistory","_ref","ref","activeId","actions","urlTemplate","onActionClick","onHistoryClick","rootRef","useRef","list","setList","useState","nextToken","setNextToken","loadNextToken","setLoadNextToken","useEffect","Promise","all","next_token","interceptorParams","ignoreLoadingBar","resolve","setTimeout","then","_ref2","prev","catch","error","console","groups","useMemo","groupMap","Map","now","moment","startOfDay","clone","startOf","yesterday","subtract","sevenDaysAgo","thirtyDaysAgo","timestamps","item","groupKey","startTime","t","K","TODAY","YESTERDAY","PREVIOUS_7_DAYS","PREVIOUS_30_DAYS","format","group","get","set","title","items","push","values","actionsVisible","setActionsVisible","nextRef","next","current","root","observer","IntersectionObserver","entries","entry","isIntersecting","observe","disconnect","pullIdRef","pull","useCallback","pullId","tempList","prevList","newList","newIds","Set","map","id","newItemsMap","foundIntersection","foundChanged","isFirst","newItem","isEqual","filter","has","useImperativeHandle","React","className","key","WrappedLink","_extends","classNames","active","onClick","url","template","context","replace","_match","WrappedMiniActions","e","action","detail","onVisibleChange","DONE_STATES","includes","state","WrappedIcon","lib","icon","spinning","theme","wrapBrick","WrappedDropdownActions","WrappedEasyopsAvatar","WrappedIconButton","___CSS_LOADER_EXPORT___","module","toString","ElevoApi_listElevoConversations","params","ChatHistory","username","undefined","token","conversations","time","conversationId","en","NEW_CHAT","LOGOUT","SWITCH_LANGUAGE","zh","NS","locales","i18n","getFixedT"],"sourceRoot":""}
|