@next-bricks/ai-portal 0.60.1 → 0.60.3
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 +26 -26
- package/dist/chunks/{1480.ec45b604.js → 1480.0de951a3.js} +2 -2
- package/dist/chunks/{1480.ec45b604.js.map → 1480.0de951a3.js.map} +1 -1
- package/dist/chunks/{2084.ddaad7cc.js → 2084.aae5392b.js} +3 -3
- package/dist/chunks/2084.aae5392b.js.map +1 -0
- package/dist/chunks/{2232.02cd2bbc.js → 2232.085b8abd.js} +2 -2
- package/dist/chunks/{2232.02cd2bbc.js.map → 2232.085b8abd.js.map} +1 -1
- package/dist/chunks/{2324.d6932d39.js → 2324.a4a90c77.js} +2 -2
- package/dist/chunks/{2324.d6932d39.js.map → 2324.a4a90c77.js.map} +1 -1
- package/dist/chunks/{3171.a0251432.js → 3171.45ef4669.js} +2 -2
- package/dist/chunks/{3171.a0251432.js.map → 3171.45ef4669.js.map} +1 -1
- package/dist/chunks/{7146.1af0c62e.js → 4765.03d9c7c5.js} +2 -2
- package/dist/chunks/{4765.e2813cac.js.map → 4765.03d9c7c5.js.map} +1 -1
- package/dist/chunks/{4837.c7f9a784.js → 4837.570099ad.js} +2 -2
- package/dist/chunks/{4837.c7f9a784.js.map → 4837.570099ad.js.map} +1 -1
- package/dist/chunks/{5552.84bdc597.js → 5552.09658542.js} +2 -2
- package/dist/chunks/{5552.84bdc597.js.map → 5552.09658542.js.map} +1 -1
- package/dist/chunks/{5712.4f691939.js → 5712.f692e3f5.js} +2 -2
- package/dist/chunks/5712.f692e3f5.js.map +1 -0
- package/dist/chunks/{6792.26bcd166.js → 6792.03e66697.js} +2 -2
- package/dist/chunks/{6792.26bcd166.js.map → 6792.03e66697.js.map} +1 -1
- package/dist/chunks/{4765.e2813cac.js → 7146.b327120d.js} +2 -2
- package/dist/chunks/{7146.1af0c62e.js.map → 7146.b327120d.js.map} +1 -1
- package/dist/chunks/{7888.c0645842.js → 7888.61a7cdf2.js} +3 -3
- package/dist/chunks/{7888.c0645842.js.map → 7888.61a7cdf2.js.map} +1 -1
- package/dist/chunks/948.e601f18c.js +3 -0
- package/dist/chunks/948.e601f18c.js.map +1 -0
- package/dist/chunks/{9599.1f04dd1f.js → 9599.02a5e6e3.js} +2 -2
- package/dist/chunks/{9599.1f04dd1f.js.map → 9599.02a5e6e3.js.map} +1 -1
- package/dist/chunks/{action-buttons.989fd1c9.js → action-buttons.68666920.js} +2 -2
- package/dist/chunks/{action-buttons.989fd1c9.js.map → action-buttons.68666920.js.map} +1 -1
- package/dist/chunks/{activity-timeline.60adaa84.js → activity-timeline.96e7aaea.js} +2 -2
- package/dist/chunks/{activity-timeline.60adaa84.js.map → activity-timeline.96e7aaea.js.map} +1 -1
- package/dist/chunks/{ai-agents.92ed0274.js → ai-agents.cffd08a0.js} +3 -3
- package/dist/chunks/{ai-agents.92ed0274.js.map → ai-agents.cffd08a0.js.map} +1 -1
- package/dist/chunks/{ai-employees.52fe4443.js → ai-employees.267c3626.js} +3 -3
- package/dist/chunks/{ai-employees.52fe4443.js.map → ai-employees.267c3626.js.map} +1 -1
- package/dist/chunks/{call-tool.89a848e0.js → call-tool.a3219d5e.js} +2 -2
- package/dist/chunks/{call-tool.89a848e0.js.map → call-tool.a3219d5e.js.map} +1 -1
- package/dist/chunks/chat-box.a8e58e50.js +3 -0
- package/dist/chunks/chat-box.a8e58e50.js.map +1 -0
- package/dist/chunks/{chat-input.fce2d021.js → chat-input.e999f79c.js} +2 -2
- package/dist/chunks/{chat-input.fce2d021.js.map → chat-input.e999f79c.js.map} +1 -1
- package/dist/chunks/{chat-stream.362a2292.js → chat-stream.8d8dc5a0.js} +2 -2
- package/dist/chunks/{chat-stream.362a2292.js.map → chat-stream.8d8dc5a0.js.map} +1 -1
- package/dist/chunks/{cruise-canvas.426be93e.js → cruise-canvas.4a0692fb.js} +2 -2
- package/dist/chunks/{cruise-canvas.426be93e.js.map → cruise-canvas.4a0692fb.js.map} +1 -1
- package/dist/chunks/{dropdown-select.1140bf2b.js → dropdown-select.336442ba.js} +2 -2
- package/dist/chunks/{dropdown-select.1140bf2b.js.map → dropdown-select.336442ba.js.map} +1 -1
- package/dist/chunks/{elevo-sidebar.0d1f76dd.js → elevo-sidebar.68648b33.js} +3 -3
- package/dist/chunks/elevo-sidebar.68648b33.js.map +1 -0
- package/dist/chunks/{gantt-chart.0086539c.js → gantt-chart.42c7f514.js} +2 -2
- package/dist/chunks/{gantt-chart.0086539c.js.map → gantt-chart.42c7f514.js.map} +1 -1
- package/dist/chunks/{goal-card-list.44c21cf2.js → goal-card-list.74ab5767.js} +3 -3
- package/dist/chunks/{goal-card-list.44c21cf2.js.map → goal-card-list.74ab5767.js.map} +1 -1
- package/dist/chunks/{load-request-store.b4cf045b.js → load-request-store.a6effafd.js} +2 -2
- package/dist/chunks/{load-request-store.b4cf045b.js.map → load-request-store.a6effafd.js.map} +1 -1
- package/dist/chunks/main.fc9fd5d4.js +2 -0
- package/dist/chunks/{main.08db9bee.js.map → main.fc9fd5d4.js.map} +1 -1
- package/dist/chunks/{mcp-tools.0acb474a.js → mcp-tools.f132c502.js} +2 -2
- package/dist/chunks/{mcp-tools.0acb474a.js.map → mcp-tools.f132c502.js.map} +1 -1
- package/dist/chunks/{notice-dropdown.365134e6.js → notice-dropdown.63cb2415.js} +2 -2
- package/dist/chunks/{notice-dropdown.365134e6.js.map → notice-dropdown.63cb2415.js.map} +1 -1
- package/dist/chunks/{notice-list.d51c0103.js → notice-list.9a78cc87.js} +3 -3
- package/dist/chunks/{notice-list.d51c0103.js.map → notice-list.9a78cc87.js.map} +1 -1
- package/dist/chunks/{page-container.570e7c6d.js → page-container.08e26095.js} +2 -2
- package/dist/chunks/{page-container.570e7c6d.js.map → page-container.08e26095.js.map} +1 -1
- package/dist/chunks/{preview-container.5793faee.js → preview-container.a0ca6e2f.js} +2 -2
- package/dist/chunks/{preview-container.5793faee.js.map → preview-container.a0ca6e2f.js.map} +1 -1
- package/dist/chunks/{project-conversations.3f559e57.js → project-conversations.4cc72f40.js} +3 -3
- package/dist/chunks/{project-conversations.3f559e57.js.map → project-conversations.4cc72f40.js.map} +1 -1
- package/dist/chunks/{project-knowledges.24611263.js → project-knowledges.51731410.js} +3 -3
- package/dist/chunks/{project-knowledges.24611263.js.map → project-knowledges.51731410.js.map} +1 -1
- package/dist/chunks/{set-chat-command.367b9c88.js → set-chat-command.182747cc.js} +2 -2
- package/dist/chunks/{set-chat-command.367b9c88.js.map → set-chat-command.182747cc.js.map} +1 -1
- package/dist/chunks/{show-case.7bc5fc9e.js → show-case.44e995fc.js} +2 -2
- package/dist/chunks/{show-case.7bc5fc9e.js.map → show-case.44e995fc.js.map} +1 -1
- package/dist/chunks/{show-cases.85fe99d4.js → show-cases.c3921ea0.js} +2 -2
- package/dist/chunks/{show-cases.85fe99d4.js.map → show-cases.c3921ea0.js.map} +1 -1
- package/dist/chunks/{stage-flow.22610ca5.js → stage-flow.9b6fad93.js} +2 -2
- package/dist/chunks/{stage-flow.22610ca5.js.map → stage-flow.9b6fad93.js.map} +1 -1
- package/dist/examples.json +12 -12
- package/dist/index.f2850973.js +2 -0
- package/dist/index.f2850973.js.map +1 -0
- package/dist/manifest.json +227 -227
- package/dist/types.json +6072 -4106
- package/dist-types/elevo-sidebar/ChatHistory.d.ts +3 -1
- package/dist-types/elevo-sidebar/index.d.ts +2 -1
- package/dist-types/jsx.d.ts +77 -0
- package/dist-types/shared/interfaces.d.ts +40 -2
- package/package.json +5 -3
- package/dist/chunks/2084.ddaad7cc.js.map +0 -1
- package/dist/chunks/5712.4f691939.js.map +0 -1
- package/dist/chunks/948.d125d58c.js +0 -3
- package/dist/chunks/948.d125d58c.js.map +0 -1
- package/dist/chunks/chat-box.991e397f.js +0 -3
- package/dist/chunks/chat-box.991e397f.js.map +0 -1
- package/dist/chunks/elevo-sidebar.0d1f76dd.js.map +0 -1
- package/dist/chunks/main.08db9bee.js +0 -2
- package/dist/index.8852dff5.js +0 -2
- package/dist/index.8852dff5.js.map +0 -1
- /package/dist/chunks/{2084.ddaad7cc.js.LICENSE.txt → 2084.aae5392b.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{7888.c0645842.js.LICENSE.txt → 7888.61a7cdf2.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{948.d125d58c.js.LICENSE.txt → 948.e601f18c.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{ai-agents.92ed0274.js.LICENSE.txt → ai-agents.cffd08a0.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{ai-employees.52fe4443.js.LICENSE.txt → ai-employees.267c3626.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{chat-box.991e397f.js.LICENSE.txt → chat-box.a8e58e50.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{elevo-sidebar.0d1f76dd.js.LICENSE.txt → elevo-sidebar.68648b33.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{goal-card-list.44c21cf2.js.LICENSE.txt → goal-card-list.74ab5767.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{notice-list.d51c0103.js.LICENSE.txt → notice-list.9a78cc87.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{project-conversations.3f559e57.js.LICENSE.txt → project-conversations.4cc72f40.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{project-knowledges.24611263.js.LICENSE.txt → project-knowledges.51731410.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/gantt-chart.0086539c.js","mappings":"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","sources":["webpack:///./src/gantt-chart/index.tsx","webpack:///./src/gantt-chart/styles.shadow.css","webpack:///./src/gantt-chart/i18n.ts","webpack:///./src/gantt-chart/constants.ts","webpack:///./src/gantt-chart/GanttBar.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./src/gantt-chart/utils.ts","webpack:///./src/gantt-chart/getStateIcon.ts"],"sourcesContent":["import React, { createContext, useContext, useMemo, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport type { GanttNode, Timing } from \"./interfaces.js\";\nimport { countNodes, processTimeline } from \"./utils.js\";\nimport { getStateIcon } from \"./getStateIcon.js\";\nimport { GanttBar } from \"./GanttBar.js\";\nimport {\n BAR_HEIGHT,\n CONTAINER_BAR_HEIGHT,\n INDENT_SIZE,\n LABEL_WIDTH,\n} from \"./constants.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst TimelineContext = createContext<TimelineContextValue | null>(null);\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface GanttChartProps {\n chartTitle?: string;\n nodes?: GanttNode[];\n}\n\n/**\n * 构件 `ai-portal.gantt-chart`\n */\nexport\n@defineElement(\"ai-portal.gantt-chart\", {\n styleTexts: [styleText],\n})\nclass GanttChart extends ReactNextElement implements GanttChartProps {\n @property()\n accessor chartTitle: string | undefined;\n\n @property({ attribute: false })\n accessor nodes: GanttNode[] | undefined;\n\n @event({ type: \"node.click\" })\n accessor #nodeClickEvent!: EventEmitter<GanttNode>;\n\n #handleNodeClick = (node: GanttNode) => {\n this.#nodeClickEvent.emit(node);\n };\n\n @event({ type: \"fullscreen.click\" })\n accessor #fullscreenClickEvent!: EventEmitter<void>;\n\n #handleFullscreenClick = () => {\n this.#fullscreenClickEvent.emit();\n };\n\n render() {\n return (\n <GanttChartComponent\n chartTitle={this.chartTitle}\n nodes={this.nodes}\n onNodeClick={this.#handleNodeClick}\n onFullscreenClick={this.#handleFullscreenClick}\n />\n );\n }\n}\n\ninterface GanttChartComponentProps extends GanttChartProps {\n onNodeClick(node: GanttNode): void;\n onFullscreenClick(): void;\n}\n\ninterface TimelineContextValue {\n duration: number;\n timeline: Map<GanttNode, Timing>;\n collapsedNodes: Set<GanttNode> | null;\n setCollapsedNodes: React.Dispatch<\n React.SetStateAction<Set<GanttNode> | null>\n >;\n onNodeClick(node: GanttNode): void;\n}\n\nfunction GanttChartComponent({\n chartTitle,\n nodes,\n onNodeClick,\n onFullscreenClick,\n}: GanttChartComponentProps) {\n const [collapsedNodes, setCollapsedNodes] =\n React.useState<Set<GanttNode> | null>(null);\n const timeline = useMemo(() => processTimeline(nodes), [nodes]);\n const timelineContext = useMemo(\n () => ({\n ...timeline,\n collapsedNodes,\n setCollapsedNodes,\n onNodeClick,\n }),\n [timeline, collapsedNodes, onNodeClick]\n );\n const [collapsed, setCollapsed] = useState(false);\n\n return (\n <TimelineContext.Provider value={timelineContext}>\n <div className=\"container\">\n <div className=\"heading\">\n <div className=\"title\">{chartTitle}</div>\n <div className=\"toolbar\">\n <button className=\"button\" onClick={onFullscreenClick}>\n <WrappedIcon lib=\"easyops\" icon=\"expand\" />\n {t(K.FULLSCREEN)}\n </button>\n <button\n className={classNames(\"button\", { collapsed })}\n onClick={() => {\n setCollapsed((prev) => !prev);\n }}\n >\n <WrappedIcon lib=\"lucide\" icon=\"chevron-up\" />\n {collapsed ? t(K.EXPAND) : t(K.COLLAPSE)}\n </button>\n </div>\n </div>\n {!collapsed && <GanttChartTree nodes={nodes} level={0} />}\n </div>\n </TimelineContext.Provider>\n );\n}\n\ninterface GanttChartTreeProps {\n nodes?: GanttNode[];\n level: number;\n}\n\nfunction GanttChartTree({ nodes, level }: GanttChartTreeProps) {\n return (\n <ul className=\"tree\">\n {nodes?.map((node, index, list) => (\n <GanttChartNode\n key={index}\n node={node}\n level={level}\n isLast={index === list.length - 1}\n />\n ))}\n </ul>\n );\n}\n\nexport interface GanttChartNodeProps {\n node: GanttNode;\n level: number;\n isLast: boolean;\n}\n\nexport function GanttChartNode({ node, level, isLast }: GanttChartNodeProps) {\n const { duration, timeline, collapsedNodes, setCollapsedNodes, onNodeClick } =\n useContext(TimelineContext)!;\n const { start, end } = timeline.get(node)!;\n const isFirstLevel = level === 0;\n const { icon, className } = getStateIcon(node.state, isFirstLevel);\n const collapsible = !!node.children?.length;\n const isCollapsed = collapsible && (collapsedNodes?.has(node) ?? false);\n const showChildren = collapsible && !isCollapsed;\n\n const lineBottom = useMemo(() => {\n let count = 0;\n if (isLast && showChildren) {\n const lastChild = node.children![node.children!.length - 1];\n count = countNodes(lastChild, collapsedNodes);\n }\n return count * 32 - (isFirstLevel ? 18 : isLast ? 20 : 8);\n }, [collapsedNodes, showChildren, isFirstLevel, isLast, node.children]);\n\n return (\n <li className={isFirstLevel ? \"root\" : undefined}>\n {showChildren && (\n <div\n className=\"line\"\n style={{ left: level * INDENT_SIZE + 11, bottom: lineBottom }}\n />\n )}\n <div\n className={classNames(\"node\", { collapsible })}\n style={{ marginLeft: level * INDENT_SIZE }}\n onClick={() => {\n onNodeClick(node);\n }}\n >\n <div\n className=\"label\"\n style={{ width: LABEL_WIDTH - level * INDENT_SIZE }}\n >\n <WrappedIcon className={classNames(\"icon\", className)} {...icon} />\n {collapsible && (\n <WrappedIcon\n className={classNames(\"collapse\", { collapsed: isCollapsed })}\n lib={isFirstLevel ? \"fa\" : \"lucide\"}\n prefix=\"fas\"\n icon=\"circle-chevron-down\"\n onClick={(e) => {\n e.stopPropagation();\n setCollapsedNodes((prev) => {\n if (prev?.has(node)) {\n const newSet = new Set(prev);\n newSet.delete(node);\n if (newSet.size === 0) {\n return null;\n }\n return newSet;\n }\n const newSet = new Set(prev ?? []);\n newSet.add(node);\n return newSet;\n });\n }}\n />\n )}\n <span className=\"name\">{node.name}</span>\n </div>\n <div className=\"chart\">\n <div\n className={classNames(\n \"bar\",\n { \"container-bar\": showChildren },\n className\n )}\n style={{\n top: showChildren ? 5 : 7,\n left: `${(start / duration) * 100}%`,\n width: `${((end - start) / duration) * 100}%`,\n height: showChildren ? CONTAINER_BAR_HEIGHT : BAR_HEIGHT,\n }}\n >\n {showChildren && <GanttBar />}\n </div>\n </div>\n </div>\n {showChildren && (\n <GanttChartTree nodes={node.children} level={level + 1} />\n )}\n </li>\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\";\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;padding:0;margin:0}.tree > li{position:relative}.collapse,\n.icon{font-size:16px;padding:2px;color:#8c8c8c}.large.collapse,.large.icon{font-size:20px;padding:0}.icon.completed{color:#08bf33}.icon.working{color:var(--elevo-color-brand)}.icon.paused{color:#faad14}.icon.failed{color:#f24c25}.collapse[lib=\"lucide\"]{transform:scale(1.1)}.collapse:not(:hover){color:rgba(0,0,0,0.3)}.button eo-icon,\n.collapse{transition:transform 0.2s}.collapse.collapsed{transform:rotate(-90deg)}.collapse.collapsed[lib=\"lucide\"]{transform:scale(1.1) rotate(-90deg)}.node:not(:hover) .collapse,\n.node.collapsible:hover .icon{display:none}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.title{font-weight:600;font-size:16px;color:rgba(0,0,0,0.88);min-width:0}.node:not(:last-child),\n.tree > li:not(:last-child){margin-bottom:8px}.tree .root:not(:last-child){margin-bottom:18px}.node{display:flex;align-items:center;padding:0 2px;height:24px;gap:20px;cursor:pointer}.node:hover{background:rgba(0,0,0,0.04);border-radius:6px}.label{display:flex;align-items:center;gap:4px;color:rgba(0,0,0,0.65)}.root > .node > .label{color:#000;font-weight:500}.name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart{flex:1;min-width:0;position:relative;height:100%}.bar{position:absolute;--gantt-chart-bar-bg:rgba(140,140,140,0.36)}.bar.completed{--gantt-chart-bar-bg:#4ed965}.bar.working{--gantt-chart-bar-bg:#a1b5ff}.bar.paused{--gantt-chart-bar-bg:rgba(230,150,12,0.6)}.bar.failed{--gantt-chart-bar-bg:#ff754f}.bar:not(.container-bar){background:var(--gantt-chart-bar-bg);border-radius:10px}.bar path{fill:var(--gantt-chart-bar-bg)}.line{position:absolute;top:24px;border:1px dashed rgba(0,0,0,0.2);pointer-events:none}.toolbar{display:flex;align-items:center;gap:16px}.button{background:none;padding:0;border:none;cursor:pointer;display:flex;align-items:center;gap:5px;color:rgba(0,0,0,0.65)}.button:hover{color:rgba(0,0,0,0.85)}.button:focus{outline:none}.button eo-icon[lib=\"easyops\"]{font-size:10px}.button.collapsed eo-icon{transform:rotate(-180deg)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n FULLSCREEN = \"FULLSCREEN\",\n COLLAPSE = \"COLLAPSE\",\n EXPAND = \"EXPAND\",\n}\n\nconst en: Locale = {\n FULLSCREEN: \"Fullscreen\",\n COLLAPSE: \"Collapse\",\n EXPAND: \"Expand\",\n};\n\nconst zh: Locale = {\n FULLSCREEN: \"放大\",\n COLLAPSE: \"折叠\",\n EXPAND: \"展开\",\n};\n\nexport const NS = \"bricks/ai-portal/gantt-chart\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","export const INDENT_SIZE = 18;\nexport const LABEL_WIDTH = 260;\nexport const BAR_HEIGHT = 10;\nexport const CONTAINER_BAR_OFFSET = 8;\nexport const CONTAINER_BAR_HEIGHT = BAR_HEIGHT + CONTAINER_BAR_OFFSET;\n","import React, { useEffect, useMemo, useRef, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport {\n BAR_HEIGHT,\n CONTAINER_BAR_OFFSET,\n CONTAINER_BAR_HEIGHT,\n} from \"./constants\";\n\nexport function GanttBar() {\n const ref = useRef<SVGSVGElement>(null);\n const [width, setWidth] = useState(0);\n\n useEffect(() => {\n const container = ref.current?.parentElement;\n // istanbul ignore next: defensive\n if (!container) {\n return;\n }\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n // istanbul ignore next: compatibility\n const currentInlineSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].inlineSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .inlineSize\n : entry.contentRect.width;\n setWidth(currentInlineSize);\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n const pathD = useMemo(() => {\n if (width <= 0) {\n return null;\n }\n const radius = CONTAINER_BAR_OFFSET;\n const w = Math.max(width, CONTAINER_BAR_OFFSET * 2);\n return `M0,${radius}\n A${radius},${radius} 0 0 1 ${radius},0\n L${w - radius},0\n A${radius},${radius} 0 0 1 ${w},${radius}\n L${w},${CONTAINER_BAR_HEIGHT}\n A${radius},${radius} 0 0 0 ${w - radius},${BAR_HEIGHT}\n L${radius},${BAR_HEIGHT}\n A${radius},${radius} 0 0 0 0,${CONTAINER_BAR_HEIGHT}\n Z`;\n }, [width]);\n\n return (\n <svg ref={ref} width={width} height={CONTAINER_BAR_HEIGHT}>\n {pathD && <path d={pathD} />}\n </svg>\n );\n}\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import type { GanttNode, Timing } from \"./interfaces\";\n\nexport function countNodes(\n node: GanttNode,\n collapsedNodes: Set<GanttNode> | null\n): number {\n let count = 1;\n if (!collapsedNodes?.has(node) && node.children) {\n for (const child of node.children) {\n count += countNodes(child, collapsedNodes);\n }\n }\n return count;\n}\n\nexport function processTimeline(nodes: GanttNode[] | undefined) {\n const leaves = getLeafNodes(nodes);\n\n // Handle empty cases early\n if (leaves.length === 0) {\n return { duration: 0, timeline: new Map<GanttNode, Timing>() };\n }\n\n const durations = leaves.map((node) => {\n if (\n typeof node.startTime === \"number\" &&\n typeof node.endTime === \"number\"\n ) {\n return node.endTime - node.startTime;\n }\n return null;\n });\n const meaningfulDurations = durations.filter(\n (duration): duration is number => duration !== null\n );\n\n const timeline = new Map<GanttNode, Timing>();\n\n let globalStartTime = 0;\n let minimalDuration = 1;\n let duration = leaves.length;\n const hasMeaningfulDurations = durations[0] !== null;\n\n if (hasMeaningfulDurations) {\n const startTimes = leaves\n .map((node) => node.startTime)\n .filter((time): time is number => typeof time === \"number\");\n const endTimes = leaves\n .map((node) => node.endTime)\n .filter((time): time is number => typeof time === \"number\");\n\n minimalDuration = Math.min(...meaningfulDurations);\n globalStartTime = Math.min(...startTimes);\n const globalEndTime = Math.max(...endTimes);\n\n // For those nodes without duration, assign them the minimal duration\n duration =\n globalEndTime -\n globalStartTime +\n minimalDuration * (leaves.length - meaningfulDurations.length);\n }\n\n let time = 0;\n for (const node of leaves) {\n const nodeStart =\n hasMeaningfulDurations && typeof node.startTime === \"number\"\n ? node.startTime - globalStartTime\n : time;\n const nodeEnd =\n hasMeaningfulDurations && typeof node.endTime === \"number\"\n ? node.endTime - globalStartTime\n : nodeStart + minimalDuration;\n time = nodeEnd;\n timeline.set(node, { start: nodeStart, end: nodeEnd });\n }\n\n if (nodes) {\n setupSubNodesTiming(nodes, timeline);\n }\n\n return { duration, timeline };\n}\n\nfunction getLeafNodes(nodes: GanttNode[] | undefined): GanttNode[] {\n if (!nodes) return [];\n return nodes.flatMap((node) => {\n return node.children?.length ? getLeafNodes(node.children) : [node];\n });\n}\n\nfunction setupSubNodesTiming(\n nodes: GanttNode[],\n timeline: Map<GanttNode, Timing>\n): Timing {\n let start = Infinity;\n let end = -Infinity;\n for (const node of nodes) {\n let timing = timeline.get(node);\n if (!timing) {\n timing = setupSubNodesTiming(node.children!, timeline);\n timeline.set(node, timing);\n }\n start = Math.min(start, timing.start);\n end = Math.max(end, timing.end);\n }\n return { start, end };\n}\n","import classNames from \"classnames\";\nimport type { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport type {\n ConversationState,\n JobState,\n TaskState,\n} from \"../shared/interfaces\";\n\nexport function getStateIcon(\n state: TaskState | JobState | ConversationState | undefined,\n isFirstLevel?: boolean\n): { icon: GeneralIconProps; className?: string } {\n let icon: GeneralIconProps;\n let className: string | undefined;\n const preferTheme = isFirstLevel ? \"filled\" : \"outlined\";\n switch (state) {\n case \"input-required\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"pause-circle\" };\n className = \"paused\";\n break;\n case \"completed\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"check-circle\" };\n className = classNames(\"completed\", { large: isFirstLevel });\n break;\n case \"failed\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"close-circle\" };\n className = \"failed\";\n break;\n case \"terminated\":\n case \"canceled\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"stop\" };\n break;\n case \"working\":\n icon = { lib: \"antd\", icon: \"loading-3-quarters\", spinning: true };\n className = \"working\";\n break;\n default:\n icon = { lib: \"antd\", theme: preferTheme, icon: \"clock-circle\" };\n break;\n }\n return { icon, className };\n}\n"],"names":["initializeI18n","NS","locales","WrappedIcon","wrapBrick","TimelineContext","createContext","defineElement","property","event","createDecorators","_GanttChart","_A","WeakMap","_B","_C","_GanttChart_brand","WeakSet","_handleNodeClick","_D","_handleFullscreenClick","GanttChart","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_chartTitle","_init_extra_chartTitle","_init_nodes","_init_extra_nodes","_init_nodeClickEvent","_init_extra_nodeClickEvent","node","_classPrivateGetter","this","_get_nodeClickEvent","emit","_init_fullscreenClickEvent","_init_extra_fullscreenClickEvent","_get_fullscreenClickEvent","chartTitle","_classPrivateFieldGet","v","_classPrivateFieldSet","nodes","render","React","GanttChartComponent","onNodeClick","onFullscreenClick","_ref","collapsedNodes","setCollapsedNodes","timeline","useMemo","processTimeline","timelineContext","collapsed","setCollapsed","useState","Provider","value","className","onClick","lib","icon","t","K","FULLSCREEN","classNames","prev","EXPAND","COLLAPSE","GanttChartTree","level","_ref2","map","index","list","GanttChartNode","key","isLast","length","_ref3","_node$children","_collapsedNodes$has","duration","useContext","start","end","get","isFirstLevel","getStateIcon","state","collapsible","children","isCollapsed","has","showChildren","lineBottom","count","lastChild","countNodes","undefined","style","left","INDENT_SIZE","bottom","marginLeft","width","LABEL_WIDTH","_extends","prefix","e","stopPropagation","newSet","Set","delete","size","add","name","top","height","CONTAINER_BAR_HEIGHT","BAR_HEIGHT","GanttBar","_GanttChart2","_set_nodeClickEvent","_set_fullscreenClickEvent","c","_initClass","_applyDecs","styleTexts","styleText","attribute","type","o","_","_checkInRHS","___CSS_LOADER_EXPORT___","push","module","id","toString","en","zh","i18n","getFixedT","CONTAINER_BAR_OFFSET","ref","useRef","setWidth","useEffect","_ref$current","container","current","parentElement","observer","ResizeObserver","entries","entry","target","currentInlineSize","contentBoxSize","inlineSize","contentRect","observe","disconnect","pathD","radius","w","Math","max","d","Object","assign","bind","i","source","prototype","hasOwnProperty","call","apply","child","leaves","getLeafNodes","Map","durations","startTime","endTime","meaningfulDurations","filter","globalStartTime","minimalDuration","hasMeaningfulDurations","startTimes","time","endTimes","min","nodeStart","nodeEnd","set","setupSubNodesTiming","flatMap","Infinity","timing","preferTheme","theme","large","spinning"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/gantt-chart.42c7f514.js","mappings":"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","sources":["webpack:///./src/gantt-chart/index.tsx","webpack:///./src/gantt-chart/styles.shadow.css","webpack:///./src/gantt-chart/i18n.ts","webpack:///./src/gantt-chart/constants.ts","webpack:///./src/gantt-chart/GanttBar.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./src/gantt-chart/utils.ts","webpack:///./src/gantt-chart/getStateIcon.ts"],"sourcesContent":["import React, { createContext, useContext, useMemo, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport { K, NS, locales, t } from \"./i18n.js\";\nimport styleText from \"./styles.shadow.css\";\nimport type { GanttNode, Timing } from \"./interfaces.js\";\nimport { countNodes, processTimeline } from \"./utils.js\";\nimport { getStateIcon } from \"./getStateIcon.js\";\nimport { GanttBar } from \"./GanttBar.js\";\nimport {\n BAR_HEIGHT,\n CONTAINER_BAR_HEIGHT,\n INDENT_SIZE,\n LABEL_WIDTH,\n} from \"./constants.js\";\n\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nconst TimelineContext = createContext<TimelineContextValue | null>(null);\n\nconst { defineElement, property, event } = createDecorators();\n\nexport interface GanttChartProps {\n chartTitle?: string;\n nodes?: GanttNode[];\n}\n\n/**\n * 构件 `ai-portal.gantt-chart`\n */\nexport\n@defineElement(\"ai-portal.gantt-chart\", {\n styleTexts: [styleText],\n})\nclass GanttChart extends ReactNextElement implements GanttChartProps {\n @property()\n accessor chartTitle: string | undefined;\n\n @property({ attribute: false })\n accessor nodes: GanttNode[] | undefined;\n\n @event({ type: \"node.click\" })\n accessor #nodeClickEvent!: EventEmitter<GanttNode>;\n\n #handleNodeClick = (node: GanttNode) => {\n this.#nodeClickEvent.emit(node);\n };\n\n @event({ type: \"fullscreen.click\" })\n accessor #fullscreenClickEvent!: EventEmitter<void>;\n\n #handleFullscreenClick = () => {\n this.#fullscreenClickEvent.emit();\n };\n\n render() {\n return (\n <GanttChartComponent\n chartTitle={this.chartTitle}\n nodes={this.nodes}\n onNodeClick={this.#handleNodeClick}\n onFullscreenClick={this.#handleFullscreenClick}\n />\n );\n }\n}\n\ninterface GanttChartComponentProps extends GanttChartProps {\n onNodeClick(node: GanttNode): void;\n onFullscreenClick(): void;\n}\n\ninterface TimelineContextValue {\n duration: number;\n timeline: Map<GanttNode, Timing>;\n collapsedNodes: Set<GanttNode> | null;\n setCollapsedNodes: React.Dispatch<\n React.SetStateAction<Set<GanttNode> | null>\n >;\n onNodeClick(node: GanttNode): void;\n}\n\nfunction GanttChartComponent({\n chartTitle,\n nodes,\n onNodeClick,\n onFullscreenClick,\n}: GanttChartComponentProps) {\n const [collapsedNodes, setCollapsedNodes] =\n React.useState<Set<GanttNode> | null>(null);\n const timeline = useMemo(() => processTimeline(nodes), [nodes]);\n const timelineContext = useMemo(\n () => ({\n ...timeline,\n collapsedNodes,\n setCollapsedNodes,\n onNodeClick,\n }),\n [timeline, collapsedNodes, onNodeClick]\n );\n const [collapsed, setCollapsed] = useState(false);\n\n return (\n <TimelineContext.Provider value={timelineContext}>\n <div className=\"container\">\n <div className=\"heading\">\n <div className=\"title\">{chartTitle}</div>\n <div className=\"toolbar\">\n <button className=\"button\" onClick={onFullscreenClick}>\n <WrappedIcon lib=\"easyops\" icon=\"expand\" />\n {t(K.FULLSCREEN)}\n </button>\n <button\n className={classNames(\"button\", { collapsed })}\n onClick={() => {\n setCollapsed((prev) => !prev);\n }}\n >\n <WrappedIcon lib=\"lucide\" icon=\"chevron-up\" />\n {collapsed ? t(K.EXPAND) : t(K.COLLAPSE)}\n </button>\n </div>\n </div>\n {!collapsed && <GanttChartTree nodes={nodes} level={0} />}\n </div>\n </TimelineContext.Provider>\n );\n}\n\ninterface GanttChartTreeProps {\n nodes?: GanttNode[];\n level: number;\n}\n\nfunction GanttChartTree({ nodes, level }: GanttChartTreeProps) {\n return (\n <ul className=\"tree\">\n {nodes?.map((node, index, list) => (\n <GanttChartNode\n key={index}\n node={node}\n level={level}\n isLast={index === list.length - 1}\n />\n ))}\n </ul>\n );\n}\n\nexport interface GanttChartNodeProps {\n node: GanttNode;\n level: number;\n isLast: boolean;\n}\n\nexport function GanttChartNode({ node, level, isLast }: GanttChartNodeProps) {\n const { duration, timeline, collapsedNodes, setCollapsedNodes, onNodeClick } =\n useContext(TimelineContext)!;\n const { start, end } = timeline.get(node)!;\n const isFirstLevel = level === 0;\n const { icon, className } = getStateIcon(node.state, isFirstLevel);\n const collapsible = !!node.children?.length;\n const isCollapsed = collapsible && (collapsedNodes?.has(node) ?? false);\n const showChildren = collapsible && !isCollapsed;\n\n const lineBottom = useMemo(() => {\n let count = 0;\n if (isLast && showChildren) {\n const lastChild = node.children![node.children!.length - 1];\n count = countNodes(lastChild, collapsedNodes);\n }\n return count * 32 - (isFirstLevel ? 18 : isLast ? 20 : 8);\n }, [collapsedNodes, showChildren, isFirstLevel, isLast, node.children]);\n\n return (\n <li className={isFirstLevel ? \"root\" : undefined}>\n {showChildren && (\n <div\n className=\"line\"\n style={{ left: level * INDENT_SIZE + 11, bottom: lineBottom }}\n />\n )}\n <div\n className={classNames(\"node\", { collapsible })}\n style={{ marginLeft: level * INDENT_SIZE }}\n onClick={() => {\n onNodeClick(node);\n }}\n >\n <div\n className=\"label\"\n style={{ width: LABEL_WIDTH - level * INDENT_SIZE }}\n >\n <WrappedIcon className={classNames(\"icon\", className)} {...icon} />\n {collapsible && (\n <WrappedIcon\n className={classNames(\"collapse\", { collapsed: isCollapsed })}\n lib={isFirstLevel ? \"fa\" : \"lucide\"}\n prefix=\"fas\"\n icon=\"circle-chevron-down\"\n onClick={(e) => {\n e.stopPropagation();\n setCollapsedNodes((prev) => {\n if (prev?.has(node)) {\n const newSet = new Set(prev);\n newSet.delete(node);\n if (newSet.size === 0) {\n return null;\n }\n return newSet;\n }\n const newSet = new Set(prev ?? []);\n newSet.add(node);\n return newSet;\n });\n }}\n />\n )}\n <span className=\"name\">{node.name}</span>\n </div>\n <div className=\"chart\">\n <div\n className={classNames(\n \"bar\",\n { \"container-bar\": showChildren },\n className\n )}\n style={{\n top: showChildren ? 5 : 7,\n left: `${(start / duration) * 100}%`,\n width: `${((end - start) / duration) * 100}%`,\n height: showChildren ? CONTAINER_BAR_HEIGHT : BAR_HEIGHT,\n }}\n >\n {showChildren && <GanttBar />}\n </div>\n </div>\n </div>\n {showChildren && (\n <GanttChartTree nodes={node.children} level={level + 1} />\n )}\n </li>\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\";\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;padding:0;margin:0}.tree > li{position:relative}.collapse,\n.icon{font-size:16px;padding:2px;color:#8c8c8c}.large.collapse,.large.icon{font-size:20px;padding:0}.icon.completed{color:#08bf33}.icon.working{color:var(--elevo-color-brand)}.icon.paused{color:#faad14}.icon.failed{color:#f24c25}.collapse[lib=\"lucide\"]{transform:scale(1.1)}.collapse:not(:hover){color:rgba(0,0,0,0.3)}.button eo-icon,\n.collapse{transition:transform 0.2s}.collapse.collapsed{transform:rotate(-90deg)}.collapse.collapsed[lib=\"lucide\"]{transform:scale(1.1) rotate(-90deg)}.node:not(:hover) .collapse,\n.node.collapsible:hover .icon{display:none}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.title{font-weight:600;font-size:16px;color:rgba(0,0,0,0.88);min-width:0}.node:not(:last-child),\n.tree > li:not(:last-child){margin-bottom:8px}.tree .root:not(:last-child){margin-bottom:18px}.node{display:flex;align-items:center;padding:0 2px;height:24px;gap:20px;cursor:pointer}.node:hover{background:rgba(0,0,0,0.04);border-radius:6px}.label{display:flex;align-items:center;gap:4px;color:rgba(0,0,0,0.65)}.root > .node > .label{color:#000;font-weight:500}.name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart{flex:1;min-width:0;position:relative;height:100%}.bar{position:absolute;--gantt-chart-bar-bg:rgba(140,140,140,0.36)}.bar.completed{--gantt-chart-bar-bg:#4ed965}.bar.working{--gantt-chart-bar-bg:#a1b5ff}.bar.paused{--gantt-chart-bar-bg:rgba(230,150,12,0.6)}.bar.failed{--gantt-chart-bar-bg:#ff754f}.bar:not(.container-bar){background:var(--gantt-chart-bar-bg);border-radius:10px}.bar path{fill:var(--gantt-chart-bar-bg)}.line{position:absolute;top:24px;border:1px dashed rgba(0,0,0,0.2);pointer-events:none}.toolbar{display:flex;align-items:center;gap:16px}.button{background:none;padding:0;border:none;cursor:pointer;display:flex;align-items:center;gap:5px;color:rgba(0,0,0,0.65)}.button:hover{color:rgba(0,0,0,0.85)}.button:focus{outline:none}.button eo-icon[lib=\"easyops\"]{font-size:10px}.button.collapsed eo-icon{transform:rotate(-180deg)}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n FULLSCREEN = \"FULLSCREEN\",\n COLLAPSE = \"COLLAPSE\",\n EXPAND = \"EXPAND\",\n}\n\nconst en: Locale = {\n FULLSCREEN: \"Fullscreen\",\n COLLAPSE: \"Collapse\",\n EXPAND: \"Expand\",\n};\n\nconst zh: Locale = {\n FULLSCREEN: \"放大\",\n COLLAPSE: \"折叠\",\n EXPAND: \"展开\",\n};\n\nexport const NS = \"bricks/ai-portal/gantt-chart\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","export const INDENT_SIZE = 18;\nexport const LABEL_WIDTH = 260;\nexport const BAR_HEIGHT = 10;\nexport const CONTAINER_BAR_OFFSET = 8;\nexport const CONTAINER_BAR_HEIGHT = BAR_HEIGHT + CONTAINER_BAR_OFFSET;\n","import React, { useEffect, useMemo, useRef, useState } from \"react\";\nimport ResizeObserver from \"resize-observer-polyfill\";\nimport {\n BAR_HEIGHT,\n CONTAINER_BAR_OFFSET,\n CONTAINER_BAR_HEIGHT,\n} from \"./constants\";\n\nexport function GanttBar() {\n const ref = useRef<SVGSVGElement>(null);\n const [width, setWidth] = useState(0);\n\n useEffect(() => {\n const container = ref.current?.parentElement;\n // istanbul ignore next: defensive\n if (!container) {\n return;\n }\n const observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target === container) {\n // istanbul ignore next: compatibility\n const currentInlineSize = entry.contentBoxSize\n ? entry.contentBoxSize[0]\n ? entry.contentBoxSize[0].inlineSize\n : (entry.contentBoxSize as unknown as ResizeObserverSize)\n .inlineSize\n : entry.contentRect.width;\n setWidth(currentInlineSize);\n }\n }\n });\n observer.observe(container);\n return () => {\n observer.disconnect();\n };\n }, []);\n\n const pathD = useMemo(() => {\n if (width <= 0) {\n return null;\n }\n const radius = CONTAINER_BAR_OFFSET;\n const w = Math.max(width, CONTAINER_BAR_OFFSET * 2);\n return `M0,${radius}\n A${radius},${radius} 0 0 1 ${radius},0\n L${w - radius},0\n A${radius},${radius} 0 0 1 ${w},${radius}\n L${w},${CONTAINER_BAR_HEIGHT}\n A${radius},${radius} 0 0 0 ${w - radius},${BAR_HEIGHT}\n L${radius},${BAR_HEIGHT}\n A${radius},${radius} 0 0 0 0,${CONTAINER_BAR_HEIGHT}\n Z`;\n }, [width]);\n\n return (\n <svg ref={ref} width={width} height={CONTAINER_BAR_HEIGHT}>\n {pathD && <path d={pathD} />}\n </svg>\n );\n}\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import type { GanttNode, Timing } from \"./interfaces\";\n\nexport function countNodes(\n node: GanttNode,\n collapsedNodes: Set<GanttNode> | null\n): number {\n let count = 1;\n if (!collapsedNodes?.has(node) && node.children) {\n for (const child of node.children) {\n count += countNodes(child, collapsedNodes);\n }\n }\n return count;\n}\n\nexport function processTimeline(nodes: GanttNode[] | undefined) {\n const leaves = getLeafNodes(nodes);\n\n // Handle empty cases early\n if (leaves.length === 0) {\n return { duration: 0, timeline: new Map<GanttNode, Timing>() };\n }\n\n const durations = leaves.map((node) => {\n if (\n typeof node.startTime === \"number\" &&\n typeof node.endTime === \"number\"\n ) {\n return node.endTime - node.startTime;\n }\n return null;\n });\n const meaningfulDurations = durations.filter(\n (duration): duration is number => duration !== null\n );\n\n const timeline = new Map<GanttNode, Timing>();\n\n let globalStartTime = 0;\n let minimalDuration = 1;\n let duration = leaves.length;\n const hasMeaningfulDurations = durations[0] !== null;\n\n if (hasMeaningfulDurations) {\n const startTimes = leaves\n .map((node) => node.startTime)\n .filter((time): time is number => typeof time === \"number\");\n const endTimes = leaves\n .map((node) => node.endTime)\n .filter((time): time is number => typeof time === \"number\");\n\n minimalDuration = Math.min(...meaningfulDurations);\n globalStartTime = Math.min(...startTimes);\n const globalEndTime = Math.max(...endTimes);\n\n // For those nodes without duration, assign them the minimal duration\n duration =\n globalEndTime -\n globalStartTime +\n minimalDuration * (leaves.length - meaningfulDurations.length);\n }\n\n let time = 0;\n for (const node of leaves) {\n const nodeStart =\n hasMeaningfulDurations && typeof node.startTime === \"number\"\n ? node.startTime - globalStartTime\n : time;\n const nodeEnd =\n hasMeaningfulDurations && typeof node.endTime === \"number\"\n ? node.endTime - globalStartTime\n : nodeStart + minimalDuration;\n time = nodeEnd;\n timeline.set(node, { start: nodeStart, end: nodeEnd });\n }\n\n if (nodes) {\n setupSubNodesTiming(nodes, timeline);\n }\n\n return { duration, timeline };\n}\n\nfunction getLeafNodes(nodes: GanttNode[] | undefined): GanttNode[] {\n if (!nodes) return [];\n return nodes.flatMap((node) => {\n return node.children?.length ? getLeafNodes(node.children) : [node];\n });\n}\n\nfunction setupSubNodesTiming(\n nodes: GanttNode[],\n timeline: Map<GanttNode, Timing>\n): Timing {\n let start = Infinity;\n let end = -Infinity;\n for (const node of nodes) {\n let timing = timeline.get(node);\n if (!timing) {\n timing = setupSubNodesTiming(node.children!, timeline);\n timeline.set(node, timing);\n }\n start = Math.min(start, timing.start);\n end = Math.max(end, timing.end);\n }\n return { start, end };\n}\n","import classNames from \"classnames\";\nimport type { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport type {\n ConversationState,\n JobState,\n TaskState,\n} from \"../shared/interfaces\";\n\nexport function getStateIcon(\n state: TaskState | JobState | ConversationState | undefined,\n isFirstLevel?: boolean\n): { icon: GeneralIconProps; className?: string } {\n let icon: GeneralIconProps;\n let className: string | undefined;\n const preferTheme = isFirstLevel ? \"filled\" : \"outlined\";\n switch (state) {\n case \"input-required\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"pause-circle\" };\n className = \"paused\";\n break;\n case \"completed\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"check-circle\" };\n className = classNames(\"completed\", { large: isFirstLevel });\n break;\n case \"failed\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"close-circle\" };\n className = \"failed\";\n break;\n case \"terminated\":\n case \"canceled\":\n icon = { lib: \"antd\", theme: preferTheme, icon: \"stop\" };\n break;\n case \"working\":\n icon = { lib: \"antd\", icon: \"loading-3-quarters\", spinning: true };\n className = \"working\";\n break;\n default:\n icon = { lib: \"antd\", theme: preferTheme, icon: \"clock-circle\" };\n break;\n }\n return { icon, className };\n}\n"],"names":["initializeI18n","NS","locales","WrappedIcon","wrapBrick","TimelineContext","createContext","defineElement","property","event","createDecorators","_GanttChart","_A","WeakMap","_B","_C","_GanttChart_brand","WeakSet","_handleNodeClick","_D","_handleFullscreenClick","GanttChart","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_init_chartTitle","_init_extra_chartTitle","_init_nodes","_init_extra_nodes","_init_nodeClickEvent","_init_extra_nodeClickEvent","node","_classPrivateGetter","this","_get_nodeClickEvent","emit","_init_fullscreenClickEvent","_init_extra_fullscreenClickEvent","_get_fullscreenClickEvent","chartTitle","_classPrivateFieldGet","v","_classPrivateFieldSet","nodes","render","React","GanttChartComponent","onNodeClick","onFullscreenClick","_ref","collapsedNodes","setCollapsedNodes","timeline","useMemo","processTimeline","timelineContext","collapsed","setCollapsed","useState","Provider","value","className","onClick","lib","icon","t","K","FULLSCREEN","classNames","prev","EXPAND","COLLAPSE","GanttChartTree","level","_ref2","map","index","list","GanttChartNode","key","isLast","length","_ref3","_node$children","_collapsedNodes$has","duration","useContext","start","end","get","isFirstLevel","getStateIcon","state","collapsible","children","isCollapsed","has","showChildren","lineBottom","count","lastChild","countNodes","undefined","style","left","INDENT_SIZE","bottom","marginLeft","width","LABEL_WIDTH","_extends","prefix","e","stopPropagation","newSet","Set","delete","size","add","name","top","height","CONTAINER_BAR_HEIGHT","BAR_HEIGHT","GanttBar","_GanttChart2","_set_nodeClickEvent","_set_fullscreenClickEvent","c","_initClass","_applyDecs","styleTexts","styleText","attribute","type","o","_","_checkInRHS","___CSS_LOADER_EXPORT___","push","module","id","toString","en","zh","i18n","getFixedT","CONTAINER_BAR_OFFSET","ref","useRef","setWidth","useEffect","_ref$current","container","current","parentElement","observer","ResizeObserver","entries","entry","target","currentInlineSize","contentBoxSize","inlineSize","contentRect","observe","disconnect","pathD","radius","w","Math","max","d","Object","assign","bind","i","source","prototype","hasOwnProperty","call","apply","child","leaves","getLeafNodes","Map","durations","startTime","endTime","meaningfulDurations","filter","globalStartTime","minimalDuration","hasMeaningfulDurations","startTimes","time","endTimes","min","nodeStart","nodeEnd","set","setupSubNodesTiming","flatMap","Infinity","timing","preferTheme","theme","large","spinning"],"sourceRoot":""}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see goal-card-list.
|
|
2
|
-
(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2052,4322],{3976:(e,t,n)=>{"use strict";n.d(t,{I:()=>r,K:()=>o,NS:()=>a,t:()=>l});var i=n(52616);let o=function(e){return e.UN_START_STATUS="UN_START_STATUS",e.RUNNING_STATUS="RUNNING_STATUS",e.COMPLETED_STATUS="COMPLETED_STATUS",e.NEW_CHAT="NEW_CHAT",e}({});const a="bricks/ai-portal/goal-card-list",r={en:{UN_START_STATUS:"Not Start",RUNNING_STATUS:"Running",COMPLETED_STATUS:"Completed",NEW_CHAT:"New chat"},zh:{UN_START_STATUS:"未开始",RUNNING_STATUS:"运行中",COMPLETED_STATUS:"已完成",NEW_CHAT:"新对话"}},l=i.i18n.getFixedT(null,a)},5536:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(12559);function o(e,t,n){return n((0,i.A)(e,t))}},10335:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var i=n(36758),o=n.n(i),a=n(40935),r=n.n(a)()(o());r.push([e.id,":host{display:inline-block}:host([hidden]){display:none}.goal-container{display:flex;flex-direction:column;gap:3px}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}",""]);const l=r.toString()},11369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(17545);function o(e){var t=function(e){if("object"!=(0,i.A)(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=(0,i.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,i.A)(t)?t:t+""}},12559:(e,t,n)=>{"use strict";function i(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>i})},17545:(e,t,n)=>{"use strict";function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}n.d(t,{A:()=>i})},19059:(e,t,n)=>{"use strict";n.d(t,{B:()=>v});var i=n(18769),o=n.n(i),a=n(52616),r=n(30981),l=n(53373),s=n.n(l),c=n(3976),u=n(52279);(0,a.initializeI18n)(c.NS,c.I);const d=(0,r.wrapBrick)("eo-icon"),p=(0,r.wrapBrick)("eo-dropdown-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),m=(0,r.wrapBrick)("eo-easyops-avatar"),g=(0,r.wrapBrick)("eo-button"),h={ready:"uncheck-status",working:"active-status",completed:"check-status"},f=[{key:"ready",icon:{icon:"uncheck-status",lib:"easyops",category:"colored-common"},text:(0,c.t)(c.K.UN_START_STATUS)},{key:"working",icon:{icon:"active-status",lib:"easyops",category:"colored-common"},text:(0,c.t)(c.K.RUNNING_STATUS)},{key:"completed",icon:{icon:"check-status",lib:"easyops",category:"colored-common"},text:(0,c.t)(c.K.COMPLETED_STATUS)}];function v(e){let{goalItem:t,idWidth:n,cardStyle:a,onStatusChange:r,onTitleChange:l,onClick:v,onNewChat:y,onAppendChild:A,onRevokeAppendChild:b,isActive:S}=e;const{state:w,id:k,title:x,conversations:T,owner:C,pending:E}=t,N=(0,i.useRef)(!1),I=(0,i.useCallback)((()=>{N.current=!0}),[]),_=(0,i.useCallback)((()=>{N.current=!1}),[]),[U,W]=(0,i.useState)(!1),M=(0,i.useCallback)((()=>{W(!0)}),[]),R=(0,i.useCallback)((e=>{W(!1);const t=e.currentTarget.textContent;!E||null!=t&&t.trim()?null!==t&&x!==t&&(null==l||l(t)):null==b||b()}),[E,x,b,l]),j=(0,i.useCallback)((e=>{N.current||"Enter"===e.key&&(e.preventDefault(),e.currentTarget.blur())}),[]),P=(0,i.useRef)(null);return(0,i.useEffect)((()=>{var e;E&&(null===(e=P.current)||void 0===e||e.focus())}),[E]),o().createElement("div",{className:s()("goal-item",t.state,{editing:U},{active:S}),style:{paddingLeft:24*(t.level+1)+"px",...a},onClick:E?void 0:v},o().createElement("div",{className:"start"},o().createElement(p,{actions:f,disabled:E,onActionClick:e=>{var t;t=e.detail,null==r||r(t.key)}},o().createElement(d,{className:"icon",lib:"easyops",category:"colored-common",icon:h[w],onClick:e=>e.stopPropagation()})),o().createElement("span",{className:"serial-number",style:{width:n}},"#",E?"":k),o().createElement("span",{className:"title",ref:P,onClick:e=>e.stopPropagation(),onFocus:M,onBlur:R,onKeyDown:j,onCompositionStart:I,onCompositionEnd:_,contentEditable:(0,u.U)(!0),suppressContentEditableWarning:!0},x)),o().createElement("div",{className:"end"},o().createElement("div",{className:"info"},o().createElement("div",{className:"message"},o().createElement(d,{lib:"easyops",category:"common",icon:"message"}),o().createElement("span",{className:"count"},T||0)),o().createElement(m,{nameOrInstanceId:null==C?void 0:C.instanceId,size:"small"})),o().createElement("div",{className:"operation",onClick:e=>e.stopPropagation()},0===t.level&&o().createElement(g,{className:"append-child",themeVariant:"elevo",type:"neutral",size:"small",onClick:A},o().createElement(d,{lib:"lucide",icon:"plus"})),!E&&o().createElement(g,{className:"new-chat",themeVariant:"elevo",type:"neutral",size:"small",onClick:y},(0,c.t)(c.K.NEW_CHAT)))))}},26902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(17545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,i.A)(e):"null"));return e}},36758:e=>{"use strict";e.exports=function(e){return e[1]}},40935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",i=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),i&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),i&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,i,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(i)for(var l=0;l<this.length;l++){var s=this[l][0];null!=s&&(r[s]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);i&&r[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},46342:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var i=n(36758),o=n.n(i),a=n(40935),r=n.n(a)()(o());r.push([e.id,".goal-item{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;padding:12px 24px;background-color:rgba(255,255,255,0.6);border-radius:8px;-webkit-user-select:none;user-select:none;border:1px solid transparent}.goal-item:hover,.goal-item:has(.title:focus){background-color:rgba(0,0,0,0.05)}.goal-item:has(.title:focus) .end .operation{display:flex}.goal-item:hover:not(.does-not-exist) .end .operation{display:flex}.goal-item:has(.title:focus) .end .info{display:none}.goal-item:hover:not(.does-not-exist) .end .info{display:none}.goal-item.completed .serial-number,.goal-item.completed .title{color:#bfbfbf}.goal-item.active{background:rgba(37,64,255,0.1);border:1px solid #2540ff}.goal-item > *{-webkit-user-select:auto;user-select:auto}.goal-item .start,.goal-item .end{display:flex;align-items:center}.goal-item .start{flex:1;min-width:0;column-gap:16px;min-width:0}.goal-item .end{flex-shrink:0;column-gap:30px}.goal-item .end .operation{display:none;align-items:center;gap:8px}.goal-item .end .operation eo-button::part(button){height:28px}.goal-item .end .operation .new-chat::part(button){padding:5px 10px;font-size:13px}.goal-item .end .operation .append-child::part(button){padding:5px 8px;font-size:14px}.goal-item .end .info{display:inline-flex;align-items:center;column-gap:24px}.goal-item .serial-number{font-weight:400;color:var(--palette-gray-7);font-size:16px;overflow:visible}.goal-item .title{font-weight:500;padding:2px 4px;font-size:16px;color:var(--palette-gray-10);border:1px solid transparent;border-radius:8px;cursor:pointer;min-width:80px}.goal-item .title:hover{background-color:rgba(255,255,255,0.6);border:1px solid var(--palette-gray-5);cursor:text}.goal-item .title:focus{outline:none;background-color:rgba(255,255,255,0.6);border:1px solid var(--elevo-color-brand)}.goal-item .icon{border-radius:8px;padding:6px;position:relative;top:2px}.goal-item .icon:hover{background-color:rgba(0,0,0,0.04)}.goal-item .message{color:var(--palette-gray-7);display:inline-flex;align-items:center;column-gap:6px}.goal-item .message .count{font-weight:500;color:var(--palette-gray-10)}.goal-item:not(.editing) .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}",""]);const l=r.toString()},52279:(e,t,n)=>{"use strict";let i;function o(e){return e?function(){if("boolean"!=typeof i){const e=document.createElement("div");e.setAttribute("contenteditable","PLAINTEXT-ONLY"),i="plaintext-only"===e.contentEditable}return i}()?"plaintext-only":"true":"false"}n.d(t,{U:()=>o})},53373:(e,t)=>{var n;!function(){"use strict";var i={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=r(e,a(n)))}return e}function a(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)i.call(e,n)&&e[n]&&(t=r(t,n));return t}function r(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},62740:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var i=n(17545),o=n(26902);function a(e,t,n){"symbol"==(0,i.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var r=n(11369);function l(e,t,n,l,s,c){var u,d,p,m,g,h,f,v=Symbol.metadata||Symbol.for("Symbol.metadata"),y=Object.defineProperty,A=Object.create,b=[A(null),A(null)],S=t.length;function w(t,n,i){return function(o,a){n&&(a=o,o=e);for(var r=0;r<t.length;r++)a=t[r].apply(o,i?[a]:[]);return i?a:o}}function k(e,t,n,i){if("function"!=typeof e&&(i||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(i?"":" or undefined"));return e}function x(e,t,n,o,r,l,s,c,p,m,g){function h(e){if(!g(e))throw new TypeError("Attempted to access private element on non-instance")}var f=[].concat(t[0]),v=t[3],A=!s,S=1===r,x=3===r,T=4===r,C=2===r;function E(t,n,i){return function(o,a){return n&&(a=o,o=e),i&&i(o),N[t].call(o,a)}}if(!A){var N={},I=[],_=x?"get":T||S?"set":"value";if(p?(m||S?N={get:a((function(){return v(this)}),o,"get"),set:function(e){t[4](this,e)}}:N[_]=v,m||a(N[_],o,C?"":_)):m||(N=Object.getOwnPropertyDescriptor(e,o)),!m&&!p){if((d=b[+c][o])&&7!=(d^r))throw Error("Decorating two elements with the same name ("+N[_].name+") is not supported yet");b[+c][o]=r<3?1:r}}for(var U=e,W=f.length-1;W>=0;W-=n?2:1){var M=k(f[W],"A decorator","be",!0),R=n?f[W-1]:void 0,j={},P={kind:["field","accessor","method","getter","setter","class"][r],name:o,metadata:u,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");k(t,"An initializer","be",!0),l.push(t)}.bind(null,j)};if(A)d=M.call(R,U,P),j.v=1,k(d,"class decorators","return")&&(U=d);else if(P.static=c,P.private=p,d=P.access={has:p?g.bind():function(e){return o in e}},T||(d.get=p?C?function(e){return h(e),N.value}:E("get",0,h):function(e){return e[o]}),C||x||(d.set=p?E("set",0,h):function(e,t){e[o]=t}),U=M.call(R,S?{get:N.get,set:N.set}:N[_],P),j.v=1,S){if("object"==(0,i.A)(U)&&U)(d=k(U.get,"accessor.get"))&&(N.get=d),(d=k(U.set,"accessor.set"))&&(N.set=d),(d=k(U.init,"accessor.init"))&&I.unshift(d);else if(void 0!==U)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else k(U,(m?"field":"method")+" decorators","return")&&(m?I.unshift(U):N[_]=U)}return r<2&&s.push(w(I,c,1),w(l,c,0)),m||A||(p?S?s.splice(-1,0,E("get",c),E("set",c)):s.push(C?N[_]:k.call.bind(N[_])):y(e,o,N)),U}function T(e){return y(e,v,{configurable:!0,enumerable:!0,value:u})}return void 0!==c&&(u=c[v]),u=A(null==u?null:u),g=[],h=function(e){e&&g.push(w(e))},f=function(t,i){for(var a=0;a<n.length;a++){var l=n[a],c=l[1],u=7&c;if((8&c)==t&&!u==i){var d=l[2],h=!!l[3],f=16&c;x(t?e:e.prototype,l,f,h?"#"+d:(0,r.A)(d),u,u<2?[]:t?m=m||[]:p=p||[],g,!!t,h,i,t&&h?function(t){return(0,o.A)(t)===e}:s)}}},f(8,0),f(0,0),f(8,1),f(0,1),h(p),h(m),d=g,S||T(e),{e:d,get c(){var n=[];return S&&[T(e=x(e,[t],l,e.name,5,n)),w(n,1)]}}}},70829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(12559);function o(e,t){return e.get((0,i.A)(e,t))}},70918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(72016);function o(e,t,n){(0,i.A)(e,t),t.set(e,n)}},72016:(e,t,n)=>{"use strict";function i(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>i})},74635:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(72016);function o(e,t){(0,i.A)(e,t),t.add(e)}},86121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(12559);function o(e,t,n){return e.set((0,i.A)(e,t),n),n}},96318:(e,t,n)=>{"use strict";n.r(t),n.d(t,{GoalCardList:()=>Q});var i,o=n(74635),a=n(70918),r=n(26902),l=n(5536),s=n(86121),c=n(70829),u=n(62740),d=n(18769),p=n.n(d),m=n(90870),g=n(30981),h=(n(34419),n(52616)),f=n(3976),v=n(46342),y=n(10335),A=n(19059),b=n(41030);let S,w,k,x,T,C,E,N,I,_,U,W,M,R,j,P,z,L,O,D,K,B,G,H;(0,h.initializeI18n)(f.NS,f.I);const{defineElement:V,property:q,event:F,method:X}=(0,m.createDecorators)(),Y=(0,g.wrapBrick)("eo-icon"),J=(0,d.forwardRef)(pe);let Q;var Z=new WeakMap,$=new WeakMap,ee=new WeakMap,te=new WeakMap,ne=new WeakSet,ie=new WeakMap,oe=new WeakMap,ae=new WeakMap,re=new WeakMap,le=new WeakMap,se=new WeakMap,ce=new WeakMap,ue=new WeakMap;class de extends g.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,ne),(0,a.A)(this,Z,(S(this),k(this))),(0,a.A)(this,$,(x(this),T(this))),(0,a.A)(this,ee,(C(this),E(this))),(0,a.A)(this,te,(N(this),I(this))),(0,a.A)(this,ie,(W(this),e=>{(0,l.A)(ne,this,_).emit(e)})),(0,a.A)(this,oe,M(this)),(0,a.A)(this,ae,(P(this),e=>{(0,l.A)(ne,this,R).emit(e)})),(0,a.A)(this,re,z(this)),(0,a.A)(this,le,(D(this),e=>{(0,l.A)(ne,this,L).emit(e)})),(0,a.A)(this,se,K(this)),(0,a.A)(this,ce,(H(this),e=>{(0,l.A)(ne,this,B).emit(e)})),(0,a.A)(this,ue,(0,d.createRef)())}get goalList(){return(0,c.A)(Z,this)}set goalList(e){(0,s.A)(Z,this,e)}get cardStyle(){return(0,c.A)($,this)}set cardStyle(e){(0,s.A)($,this,e)}get activeKey(){return(0,c.A)(ee,this)}set activeKey(e){(0,s.A)(ee,this,e)}appendChildDone(e,t){var n;null===(n=(0,c.A)(ue,this).current)||void 0===n||n.appendChildDone(e,t)}render(){return p().createElement(J,{ref:(0,c.A)(ue,this),goalList:this.goalList,cardStyle:this.cardStyle,onTitleChange:(0,c.A)(le,this),onStatusChange:(0,c.A)(ae,this),onItemClick:(0,c.A)(ie,this),onNewChat:(0,c.A)(ce,this),activeKey:this.activeKey})}}function pe(e,t){let{goalList:n,cardStyle:i,onTitleChange:o,onStatusChange:a,onItemClick:r,onNewChat:l,activeKey:s}=e;const[c,u]=(0,d.useState)(n);(0,d.useEffect)((()=>{u(n)}),[n]);const m=(e,t,n,i)=>{const o={...e,[t]:n};u(null==c?void 0:c.map((e=>e.instanceId===o.instanceId?o:e))),null==i||i(o)};(0,d.useImperativeHandle)(t,(()=>({appendChildDone:(e,t)=>{u((n=>null==n?void 0:n.map((n=>n.instanceId===e?{...t,level:n.level}:n))))}})),[]);const g=(0,d.useMemo)((()=>{var e;return 10*((null!==(e=null==c?void 0:c.reduce(((e,t)=>Math.max(e,t.id)),0))&&void 0!==e?e:0).toString().length+1)}),[c]);return c?p().createElement("div",{className:"goal-container"},null==c?void 0:c.map((e=>p().createElement(A.B,{key:e.instanceId,isActive:s===e.instanceId,goalItem:e,idWidth:g,cardStyle:i,onTitleChange:t=>((e,t)=>{m(t,"title",e,o)})(t,e),onStatusChange:t=>((e,t)=>{m(t,"state",e,a)})(t,e),onNewChat:()=>null==l?void 0:l(e),onClick:()=>null==r?void 0:r(e),onAppendChild:()=>(e=>{const t={instanceId:(0,b.uniqueId)("pending-"),pending:!0,id:0,title:"",state:"ready",level:1,pendingParentId:e.instanceId};u((n=>{var i;const o=null!==(i=null==n?void 0:n.findIndex((t=>t.instanceId===e.instanceId)))&&void 0!==i?i:-1;if(-1===o)return n;const a=n.slice(o+1).findIndex((e=>0===e.level))+1;return 0===a?[...n,t]:[...n.slice(0,o+a),t,...n.slice(o+a)]}))})(e),onRevokeAppendChild:()=>{u((t=>null==t?void 0:t.filter((t=>t.instanceId!==e.instanceId))))}})))):p().createElement("div",{className:"loading"},p().createElement(Y,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))}i=de,({e:[k,x,T,C,E,N,I,_,U,W,M,R,j,P,z,L,O,D,K,B,G,H,S],c:[Q,w]}=(0,u.A)(i,[V("ai-portal.goal-card-list",{styleTexts:[y.A,v.A]})],[[q({attribute:!1}),1,"goalList"],[q({attribute:!1}),1,"cardStyle"],[q(),1,"activeKey"],[F({type:"item.click"}),1,"itemClickEvent",e=>(0,c.A)(te,e),(e,t)=>(0,s.A)(te,e,t)],[F({type:"item.status.change"}),1,"itemStatusChangeEvent",e=>(0,c.A)(oe,e),(e,t)=>(0,s.A)(oe,e,t)],[F({type:"item.title.change"}),1,"itemTitleChangeEvent",e=>(0,c.A)(re,e),(e,t)=>(0,s.A)(re,e,t)],[F({type:"item.new.chat"}),1,"itemNewChatEvent",e=>(0,c.A)(se,e),(e,t)=>(0,s.A)(se,e,t)],[X(),2,"appendChildDone"]],0,(e=>ue.has((0,r.A)(e))),g.ReactNextElement)),w()}}]);
|
|
3
|
-
//# sourceMappingURL=goal-card-list.
|
|
1
|
+
/*! For license information please see goal-card-list.74ab5767.js.LICENSE.txt */
|
|
2
|
+
(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2052,4322],{3976:(e,t,n)=>{"use strict";n.d(t,{I:()=>r,K:()=>o,NS:()=>a,t:()=>l});var i=n(67177);let o=function(e){return e.UN_START_STATUS="UN_START_STATUS",e.RUNNING_STATUS="RUNNING_STATUS",e.COMPLETED_STATUS="COMPLETED_STATUS",e.NEW_CHAT="NEW_CHAT",e}({});const a="bricks/ai-portal/goal-card-list",r={en:{UN_START_STATUS:"Not Start",RUNNING_STATUS:"Running",COMPLETED_STATUS:"Completed",NEW_CHAT:"New chat"},zh:{UN_START_STATUS:"未开始",RUNNING_STATUS:"运行中",COMPLETED_STATUS:"已完成",NEW_CHAT:"新对话"}},l=i.i18n.getFixedT(null,a)},5536:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(12559);function o(e,t,n){return n((0,i.A)(e,t))}},10335:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var i=n(36758),o=n.n(i),a=n(40935),r=n.n(a)()(o());r.push([e.id,":host{display:inline-block}:host([hidden]){display:none}.goal-container{display:flex;flex-direction:column;gap:3px}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}",""]);const l=r.toString()},11369:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(17545);function o(e){var t=function(e){if("object"!=(0,i.A)(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=(0,i.A)(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==(0,i.A)(t)?t:t+""}},12559:(e,t,n)=>{"use strict";function i(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>i})},17545:(e,t,n)=>{"use strict";function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}n.d(t,{A:()=>i})},19059:(e,t,n)=>{"use strict";n.d(t,{B:()=>v});var i=n(18769),o=n.n(i),a=n(67177),r=n(30981),l=n(53373),s=n.n(l),c=n(3976),u=n(52279);(0,a.initializeI18n)(c.NS,c.I);const d=(0,r.wrapBrick)("eo-icon"),p=(0,r.wrapBrick)("eo-dropdown-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),m=(0,r.wrapBrick)("eo-easyops-avatar"),g=(0,r.wrapBrick)("eo-button"),h={ready:"uncheck-status",working:"active-status",completed:"check-status"},f=[{key:"ready",icon:{icon:"uncheck-status",lib:"easyops",category:"colored-common"},text:(0,c.t)(c.K.UN_START_STATUS)},{key:"working",icon:{icon:"active-status",lib:"easyops",category:"colored-common"},text:(0,c.t)(c.K.RUNNING_STATUS)},{key:"completed",icon:{icon:"check-status",lib:"easyops",category:"colored-common"},text:(0,c.t)(c.K.COMPLETED_STATUS)}];function v(e){let{goalItem:t,idWidth:n,cardStyle:a,onStatusChange:r,onTitleChange:l,onClick:v,onNewChat:y,onAppendChild:A,onRevokeAppendChild:b,isActive:S}=e;const{state:w,id:k,title:x,conversations:T,owner:C,pending:E}=t,N=(0,i.useRef)(!1),I=(0,i.useCallback)((()=>{N.current=!0}),[]),_=(0,i.useCallback)((()=>{N.current=!1}),[]),[U,W]=(0,i.useState)(!1),M=(0,i.useCallback)((()=>{W(!0)}),[]),R=(0,i.useCallback)((e=>{W(!1);const t=e.currentTarget.textContent;!E||null!=t&&t.trim()?null!==t&&x!==t&&(null==l||l(t)):null==b||b()}),[E,x,b,l]),j=(0,i.useCallback)((e=>{N.current||"Enter"===e.key&&(e.preventDefault(),e.currentTarget.blur())}),[]),P=(0,i.useRef)(null);return(0,i.useEffect)((()=>{var e;E&&(null===(e=P.current)||void 0===e||e.focus())}),[E]),o().createElement("div",{className:s()("goal-item",t.state,{editing:U},{active:S}),style:{paddingLeft:24*(t.level+1)+"px",...a},onClick:E?void 0:v},o().createElement("div",{className:"start"},o().createElement(p,{actions:f,disabled:E,onActionClick:e=>{var t;t=e.detail,null==r||r(t.key)}},o().createElement(d,{className:"icon",lib:"easyops",category:"colored-common",icon:h[w],onClick:e=>e.stopPropagation()})),o().createElement("span",{className:"serial-number",style:{width:n}},"#",E?"":k),o().createElement("span",{className:"title",ref:P,onClick:e=>e.stopPropagation(),onFocus:M,onBlur:R,onKeyDown:j,onCompositionStart:I,onCompositionEnd:_,contentEditable:(0,u.U)(!0),suppressContentEditableWarning:!0},x)),o().createElement("div",{className:"end"},o().createElement("div",{className:"info"},o().createElement("div",{className:"message"},o().createElement(d,{lib:"easyops",category:"common",icon:"message"}),o().createElement("span",{className:"count"},T||0)),o().createElement(m,{nameOrInstanceId:null==C?void 0:C.instanceId,size:"small"})),o().createElement("div",{className:"operation",onClick:e=>e.stopPropagation()},0===t.level&&o().createElement(g,{className:"append-child",themeVariant:"elevo",type:"neutral",size:"small",onClick:A},o().createElement(d,{lib:"lucide",icon:"plus"})),!E&&o().createElement(g,{className:"new-chat",themeVariant:"elevo",type:"neutral",size:"small",onClick:y},(0,c.t)(c.K.NEW_CHAT)))))}},26902:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(17545);function o(e){if(Object(e)!==e)throw TypeError("right-hand side of 'in' should be an object, got "+(null!==e?(0,i.A)(e):"null"));return e}},36758:e=>{"use strict";e.exports=function(e){return e[1]}},40935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",i=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),i&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),i&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,i,o,a){"string"==typeof e&&(e=[[null,e,void 0]]);var r={};if(i)for(var l=0;l<this.length;l++){var s=this[l][0];null!=s&&(r[s]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);i&&r[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=a),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},46342:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var i=n(36758),o=n.n(i),a=n(40935),r=n.n(a)()(o());r.push([e.id,".goal-item{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;padding:12px 24px;background-color:rgba(255,255,255,0.6);border-radius:8px;-webkit-user-select:none;user-select:none;border:1px solid transparent}.goal-item:hover,.goal-item:has(.title:focus){background-color:rgba(0,0,0,0.05)}.goal-item:has(.title:focus) .end .operation{display:flex}.goal-item:hover:not(.does-not-exist) .end .operation{display:flex}.goal-item:has(.title:focus) .end .info{display:none}.goal-item:hover:not(.does-not-exist) .end .info{display:none}.goal-item.completed .serial-number,.goal-item.completed .title{color:#bfbfbf}.goal-item.active{background:rgba(37,64,255,0.1);border:1px solid #2540ff}.goal-item > *{-webkit-user-select:auto;user-select:auto}.goal-item .start,.goal-item .end{display:flex;align-items:center}.goal-item .start{flex:1;min-width:0;column-gap:16px;min-width:0}.goal-item .end{flex-shrink:0;column-gap:30px}.goal-item .end .operation{display:none;align-items:center;gap:8px}.goal-item .end .operation eo-button::part(button){height:28px}.goal-item .end .operation .new-chat::part(button){padding:5px 10px;font-size:13px}.goal-item .end .operation .append-child::part(button){padding:5px 8px;font-size:14px}.goal-item .end .info{display:inline-flex;align-items:center;column-gap:24px}.goal-item .serial-number{font-weight:400;color:var(--palette-gray-7);font-size:16px;overflow:visible}.goal-item .title{font-weight:500;padding:2px 4px;font-size:16px;color:var(--palette-gray-10);border:1px solid transparent;border-radius:8px;cursor:pointer;min-width:80px}.goal-item .title:hover{background-color:rgba(255,255,255,0.6);border:1px solid var(--palette-gray-5);cursor:text}.goal-item .title:focus{outline:none;background-color:rgba(255,255,255,0.6);border:1px solid var(--elevo-color-brand)}.goal-item .icon{border-radius:8px;padding:6px;position:relative;top:2px}.goal-item .icon:hover{background-color:rgba(0,0,0,0.04)}.goal-item .message{color:var(--palette-gray-7);display:inline-flex;align-items:center;column-gap:6px}.goal-item .message .count{font-weight:500;color:var(--palette-gray-10)}.goal-item:not(.editing) .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}",""]);const l=r.toString()},52279:(e,t,n)=>{"use strict";let i;function o(e){return e?function(){if("boolean"!=typeof i){const e=document.createElement("div");e.setAttribute("contenteditable","PLAINTEXT-ONLY"),i="plaintext-only"===e.contentEditable}return i}()?"plaintext-only":"true":"false"}n.d(t,{U:()=>o})},53373:(e,t)=>{var n;!function(){"use strict";var i={}.hasOwnProperty;function o(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=r(e,a(n)))}return e}function a(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return o.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)i.call(e,n)&&e[n]&&(t=r(t,n));return t}function r(e,t){return t?e?e+" "+t:e+t:e}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},62740:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var i=n(17545),o=n(26902);function a(e,t,n){"symbol"==(0,i.A)(t)&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}var r=n(11369);function l(e,t,n,l,s,c){var u,d,p,m,g,h,f,v=Symbol.metadata||Symbol.for("Symbol.metadata"),y=Object.defineProperty,A=Object.create,b=[A(null),A(null)],S=t.length;function w(t,n,i){return function(o,a){n&&(a=o,o=e);for(var r=0;r<t.length;r++)a=t[r].apply(o,i?[a]:[]);return i?a:o}}function k(e,t,n,i){if("function"!=typeof e&&(i||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(i?"":" or undefined"));return e}function x(e,t,n,o,r,l,s,c,p,m,g){function h(e){if(!g(e))throw new TypeError("Attempted to access private element on non-instance")}var f=[].concat(t[0]),v=t[3],A=!s,S=1===r,x=3===r,T=4===r,C=2===r;function E(t,n,i){return function(o,a){return n&&(a=o,o=e),i&&i(o),N[t].call(o,a)}}if(!A){var N={},I=[],_=x?"get":T||S?"set":"value";if(p?(m||S?N={get:a((function(){return v(this)}),o,"get"),set:function(e){t[4](this,e)}}:N[_]=v,m||a(N[_],o,C?"":_)):m||(N=Object.getOwnPropertyDescriptor(e,o)),!m&&!p){if((d=b[+c][o])&&7!=(d^r))throw Error("Decorating two elements with the same name ("+N[_].name+") is not supported yet");b[+c][o]=r<3?1:r}}for(var U=e,W=f.length-1;W>=0;W-=n?2:1){var M=k(f[W],"A decorator","be",!0),R=n?f[W-1]:void 0,j={},P={kind:["field","accessor","method","getter","setter","class"][r],name:o,metadata:u,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");k(t,"An initializer","be",!0),l.push(t)}.bind(null,j)};if(A)d=M.call(R,U,P),j.v=1,k(d,"class decorators","return")&&(U=d);else if(P.static=c,P.private=p,d=P.access={has:p?g.bind():function(e){return o in e}},T||(d.get=p?C?function(e){return h(e),N.value}:E("get",0,h):function(e){return e[o]}),C||x||(d.set=p?E("set",0,h):function(e,t){e[o]=t}),U=M.call(R,S?{get:N.get,set:N.set}:N[_],P),j.v=1,S){if("object"==(0,i.A)(U)&&U)(d=k(U.get,"accessor.get"))&&(N.get=d),(d=k(U.set,"accessor.set"))&&(N.set=d),(d=k(U.init,"accessor.init"))&&I.unshift(d);else if(void 0!==U)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else k(U,(m?"field":"method")+" decorators","return")&&(m?I.unshift(U):N[_]=U)}return r<2&&s.push(w(I,c,1),w(l,c,0)),m||A||(p?S?s.splice(-1,0,E("get",c),E("set",c)):s.push(C?N[_]:k.call.bind(N[_])):y(e,o,N)),U}function T(e){return y(e,v,{configurable:!0,enumerable:!0,value:u})}return void 0!==c&&(u=c[v]),u=A(null==u?null:u),g=[],h=function(e){e&&g.push(w(e))},f=function(t,i){for(var a=0;a<n.length;a++){var l=n[a],c=l[1],u=7&c;if((8&c)==t&&!u==i){var d=l[2],h=!!l[3],f=16&c;x(t?e:e.prototype,l,f,h?"#"+d:(0,r.A)(d),u,u<2?[]:t?m=m||[]:p=p||[],g,!!t,h,i,t&&h?function(t){return(0,o.A)(t)===e}:s)}}},f(8,0),f(0,0),f(8,1),f(0,1),h(p),h(m),d=g,S||T(e),{e:d,get c(){var n=[];return S&&[T(e=x(e,[t],l,e.name,5,n)),w(n,1)]}}}},70829:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(12559);function o(e,t){return e.get((0,i.A)(e,t))}},70918:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(72016);function o(e,t,n){(0,i.A)(e,t),t.set(e,n)}},72016:(e,t,n)=>{"use strict";function i(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>i})},74635:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(72016);function o(e,t){(0,i.A)(e,t),t.add(e)}},86121:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var i=n(12559);function o(e,t,n){return e.set((0,i.A)(e,t),n),n}},96318:(e,t,n)=>{"use strict";n.r(t),n.d(t,{GoalCardList:()=>Q});var i,o=n(74635),a=n(70918),r=n(26902),l=n(5536),s=n(86121),c=n(70829),u=n(62740),d=n(18769),p=n.n(d),m=n(90870),g=n(30981),h=(n(34419),n(67177)),f=n(3976),v=n(46342),y=n(10335),A=n(19059),b=n(41030);let S,w,k,x,T,C,E,N,I,_,U,W,M,R,j,P,z,L,O,D,K,B,G,H;(0,h.initializeI18n)(f.NS,f.I);const{defineElement:V,property:q,event:F,method:X}=(0,m.createDecorators)(),Y=(0,g.wrapBrick)("eo-icon"),J=(0,d.forwardRef)(pe);let Q;var Z=new WeakMap,$=new WeakMap,ee=new WeakMap,te=new WeakMap,ne=new WeakSet,ie=new WeakMap,oe=new WeakMap,ae=new WeakMap,re=new WeakMap,le=new WeakMap,se=new WeakMap,ce=new WeakMap,ue=new WeakMap;class de extends g.ReactNextElement{constructor(){super(...arguments),(0,o.A)(this,ne),(0,a.A)(this,Z,(S(this),k(this))),(0,a.A)(this,$,(x(this),T(this))),(0,a.A)(this,ee,(C(this),E(this))),(0,a.A)(this,te,(N(this),I(this))),(0,a.A)(this,ie,(W(this),e=>{(0,l.A)(ne,this,_).emit(e)})),(0,a.A)(this,oe,M(this)),(0,a.A)(this,ae,(P(this),e=>{(0,l.A)(ne,this,R).emit(e)})),(0,a.A)(this,re,z(this)),(0,a.A)(this,le,(D(this),e=>{(0,l.A)(ne,this,L).emit(e)})),(0,a.A)(this,se,K(this)),(0,a.A)(this,ce,(H(this),e=>{(0,l.A)(ne,this,B).emit(e)})),(0,a.A)(this,ue,(0,d.createRef)())}get goalList(){return(0,c.A)(Z,this)}set goalList(e){(0,s.A)(Z,this,e)}get cardStyle(){return(0,c.A)($,this)}set cardStyle(e){(0,s.A)($,this,e)}get activeKey(){return(0,c.A)(ee,this)}set activeKey(e){(0,s.A)(ee,this,e)}appendChildDone(e,t){var n;null===(n=(0,c.A)(ue,this).current)||void 0===n||n.appendChildDone(e,t)}render(){return p().createElement(J,{ref:(0,c.A)(ue,this),goalList:this.goalList,cardStyle:this.cardStyle,onTitleChange:(0,c.A)(le,this),onStatusChange:(0,c.A)(ae,this),onItemClick:(0,c.A)(ie,this),onNewChat:(0,c.A)(ce,this),activeKey:this.activeKey})}}function pe(e,t){let{goalList:n,cardStyle:i,onTitleChange:o,onStatusChange:a,onItemClick:r,onNewChat:l,activeKey:s}=e;const[c,u]=(0,d.useState)(n);(0,d.useEffect)((()=>{u(n)}),[n]);const m=(e,t,n,i)=>{const o={...e,[t]:n};u(null==c?void 0:c.map((e=>e.instanceId===o.instanceId?o:e))),null==i||i(o)};(0,d.useImperativeHandle)(t,(()=>({appendChildDone:(e,t)=>{u((n=>null==n?void 0:n.map((n=>n.instanceId===e?{...t,level:n.level}:n))))}})),[]);const g=(0,d.useMemo)((()=>{var e;return 10*((null!==(e=null==c?void 0:c.reduce(((e,t)=>Math.max(e,t.id)),0))&&void 0!==e?e:0).toString().length+1)}),[c]);return c?p().createElement("div",{className:"goal-container"},null==c?void 0:c.map((e=>p().createElement(A.B,{key:e.instanceId,isActive:s===e.instanceId,goalItem:e,idWidth:g,cardStyle:i,onTitleChange:t=>((e,t)=>{m(t,"title",e,o)})(t,e),onStatusChange:t=>((e,t)=>{m(t,"state",e,a)})(t,e),onNewChat:()=>null==l?void 0:l(e),onClick:()=>null==r?void 0:r(e),onAppendChild:()=>(e=>{const t={instanceId:(0,b.uniqueId)("pending-"),pending:!0,id:0,title:"",state:"ready",level:1,pendingParentId:e.instanceId};u((n=>{var i;const o=null!==(i=null==n?void 0:n.findIndex((t=>t.instanceId===e.instanceId)))&&void 0!==i?i:-1;if(-1===o)return n;const a=n.slice(o+1).findIndex((e=>0===e.level))+1;return 0===a?[...n,t]:[...n.slice(0,o+a),t,...n.slice(o+a)]}))})(e),onRevokeAppendChild:()=>{u((t=>null==t?void 0:t.filter((t=>t.instanceId!==e.instanceId))))}})))):p().createElement("div",{className:"loading"},p().createElement(Y,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))}i=de,({e:[k,x,T,C,E,N,I,_,U,W,M,R,j,P,z,L,O,D,K,B,G,H,S],c:[Q,w]}=(0,u.A)(i,[V("ai-portal.goal-card-list",{styleTexts:[y.A,v.A]})],[[q({attribute:!1}),1,"goalList"],[q({attribute:!1}),1,"cardStyle"],[q(),1,"activeKey"],[F({type:"item.click"}),1,"itemClickEvent",e=>(0,c.A)(te,e),(e,t)=>(0,s.A)(te,e,t)],[F({type:"item.status.change"}),1,"itemStatusChangeEvent",e=>(0,c.A)(oe,e),(e,t)=>(0,s.A)(oe,e,t)],[F({type:"item.title.change"}),1,"itemTitleChangeEvent",e=>(0,c.A)(re,e),(e,t)=>(0,s.A)(re,e,t)],[F({type:"item.new.chat"}),1,"itemNewChatEvent",e=>(0,c.A)(se,e),(e,t)=>(0,s.A)(se,e,t)],[X(),2,"appendChildDone"]],0,(e=>ue.has((0,r.A)(e))),g.ReactNextElement)),w()}}]);
|
|
3
|
+
//# sourceMappingURL=goal-card-list.74ab5767.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/goal-card-list.44c21cf2.js","mappings":"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","sources":["webpack:///./src/goal-card-list/i18n.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///./src/goal-card-list/styles.shadow.css","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./src/goal-card-list/CardItem/CardItem.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///./src/goal-card-list/CardItem/CardItem.shadow.css","webpack:///./src/shared/getContentEditable.ts","webpack:///../../node_modules/classnames/index.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///./src/goal-card-list/index.tsx"],"sourcesContent":["import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n UN_START_STATUS = \"UN_START_STATUS\",\n RUNNING_STATUS = \"RUNNING_STATUS\",\n COMPLETED_STATUS = \"COMPLETED_STATUS\",\n NEW_CHAT = \"NEW_CHAT\",\n}\n\nconst en: Locale = {\n UN_START_STATUS: \"Not Start\",\n RUNNING_STATUS: \"Running\",\n COMPLETED_STATUS: \"Completed\",\n NEW_CHAT: \"New chat\",\n};\n\nconst zh: Locale = {\n UN_START_STATUS: \"未开始\",\n RUNNING_STATUS: \"运行中\",\n COMPLETED_STATUS: \"已完成\",\n NEW_CHAT: \"新对话\",\n};\n\nexport const NS = \"bricks/ai-portal/goal-card-list\";\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 assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\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:inline-block}:host([hidden]){display:none}.goal-container{display:flex;flex-direction:column;gap:3px}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\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 { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport type { Action, SimpleAction } from \"@next-bricks/basic/actions\";\nimport classNames from \"classnames\";\nimport { K, NS, locales, t } from \"../i18n.js\";\nimport { getContentEditable } from \"../../shared/getContentEditable.js\";\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedDropdownActions = wrapBrick<\n EoDropdownActions,\n DropdownActionsProps,\n DropdownActionsEvents,\n DropdownActionsEventsMapping\n>(\"eo-dropdown-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\nconst WrappedEasyopsAvatar = wrapBrick<EoEasyopsAvatar, EoEasyopsAvatarProps>(\n \"eo-easyops-avatar\"\n);\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\n\nexport interface InputEventsMap {\n onValueChange: \"change\";\n}\n\nexport type GoalState = \"ready\" | \"working\" | \"completed\";\n\ninterface GoalMember {\n instanceId: string;\n}\n\nexport interface GoalItem {\n title: string;\n description?: string;\n state: GoalState;\n id: number;\n conversations?: number;\n owner?: GoalMember;\n users?: GoalMember[];\n instanceId: string;\n level: number;\n pending?: boolean;\n pendingParentId?: string;\n}\n\ninterface GoalCardItemProps {\n goalItem: GoalItem;\n idWidth?: number;\n cardStyle?: React.CSSProperties;\n isActive?: boolean;\n onTitleChange?: (newTitle: string) => void;\n onStatusChange?: (newStatus: GoalState) => void;\n onNewChat?: () => void;\n onClick?: () => void;\n onAppendChild?: () => void;\n onRevokeAppendChild?: () => void;\n}\n\nconst iconMap = {\n ready: \"uncheck-status\",\n working: \"active-status\",\n completed: \"check-status\",\n};\n\nconst iconActions: Action[] = [\n {\n key: \"ready\",\n icon: {\n icon: \"uncheck-status\",\n lib: \"easyops\",\n category: \"colored-common\",\n },\n text: t(K.UN_START_STATUS),\n },\n {\n key: \"working\",\n icon: {\n icon: \"active-status\",\n lib: \"easyops\",\n category: \"colored-common\",\n },\n text: t(K.RUNNING_STATUS),\n },\n {\n key: \"completed\",\n icon: {\n icon: \"check-status\",\n lib: \"easyops\",\n category: \"colored-common\",\n },\n text: t(K.COMPLETED_STATUS),\n },\n];\n\nexport function GoalCardItem({\n goalItem,\n idWidth,\n cardStyle,\n onStatusChange,\n onTitleChange,\n onClick,\n onNewChat,\n onAppendChild,\n onRevokeAppendChild,\n isActive,\n}: GoalCardItemProps) {\n const {\n state,\n id: serialNumber,\n title,\n conversations,\n owner,\n pending,\n } = goalItem;\n\n const handleStatusChange = (action: SimpleAction) => {\n onStatusChange?.(action.key as GoalState);\n };\n\n const compositionRef = useRef(false);\n\n const handleCompositionStart = useCallback(() => {\n compositionRef.current = true;\n }, []);\n\n const handleCompositionEnd = useCallback(() => {\n compositionRef.current = false;\n }, []);\n\n const [editing, setEditing] = useState(false);\n\n const handleFocus = useCallback(() => {\n setEditing(true);\n }, []);\n\n const handleBlur = useCallback(\n (e: React.FocusEvent<HTMLSpanElement>) => {\n setEditing(false);\n const value = e.currentTarget.textContent;\n\n if (pending && !value?.trim()) {\n onRevokeAppendChild?.();\n return;\n }\n\n if (value !== null && title !== value) {\n onTitleChange?.(value);\n }\n },\n [pending, title, onRevokeAppendChild, onTitleChange]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLSpanElement>) => {\n if (compositionRef.current) {\n // Ignore key events during composition\n return;\n }\n if (e.key === \"Enter\") {\n e.preventDefault();\n e.currentTarget.blur();\n }\n },\n []\n );\n\n const titleRef = useRef<HTMLSpanElement>(null);\n\n useEffect(() => {\n if (pending) {\n titleRef.current?.focus();\n }\n }, [pending]);\n\n return (\n <div\n className={classNames(\n \"goal-item\",\n goalItem.state,\n { editing },\n { active: isActive }\n )}\n style={{\n paddingLeft: `${(goalItem.level + 1) * 24}px`,\n ...cardStyle,\n }}\n onClick={pending ? undefined : onClick}\n >\n <div className=\"start\">\n <WrappedDropdownActions\n actions={iconActions}\n disabled={pending}\n onActionClick={(e) => {\n handleStatusChange(e.detail);\n }}\n >\n <WrappedIcon\n className=\"icon\"\n lib=\"easyops\"\n category=\"colored-common\"\n icon={iconMap[state]}\n onClick={(e) => e.stopPropagation()}\n />\n </WrappedDropdownActions>\n\n <span className=\"serial-number\" style={{ width: idWidth }}>\n #{pending ? \"\" : serialNumber}\n </span>\n <span\n className=\"title\"\n ref={titleRef}\n onClick={(e) => e.stopPropagation()}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n contentEditable={getContentEditable(true)}\n suppressContentEditableWarning\n >\n {title}\n </span>\n </div>\n <div className=\"end\">\n <div className=\"info\">\n <div className=\"message\">\n <WrappedIcon lib=\"easyops\" category=\"common\" icon=\"message\" />\n <span className=\"count\">{conversations || 0}</span>\n </div>\n <WrappedEasyopsAvatar\n nameOrInstanceId={owner?.instanceId}\n size=\"small\"\n />\n </div>\n <div className=\"operation\" onClick={(e) => e.stopPropagation()}>\n {goalItem.level === 0 && (\n <WrappedButton\n className=\"append-child\"\n themeVariant=\"elevo\"\n type=\"neutral\"\n size=\"small\"\n onClick={onAppendChild}\n >\n <WrappedIcon lib=\"lucide\" icon=\"plus\" />\n </WrappedButton>\n )}\n {!pending && (\n <WrappedButton\n className=\"new-chat\"\n themeVariant=\"elevo\"\n type=\"neutral\"\n size=\"small\"\n onClick={onNewChat}\n >\n {t(K.NEW_CHAT)}\n </WrappedButton>\n )}\n </div>\n </div>\n </div>\n );\n}\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.goal-item{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;padding:12px 24px;background-color:rgba(255,255,255,0.6);border-radius:8px;-webkit-user-select:none;user-select:none;border:1px solid transparent}.goal-item:hover,.goal-item:has(.title:focus){background-color:rgba(0,0,0,0.05)}.goal-item:has(.title:focus) .end .operation{display:flex}.goal-item:hover:not(.does-not-exist) .end .operation{display:flex}.goal-item:has(.title:focus) .end .info{display:none}.goal-item:hover:not(.does-not-exist) .end .info{display:none}.goal-item.completed .serial-number,.goal-item.completed .title{color:#bfbfbf}.goal-item.active{background:rgba(37,64,255,0.1);border:1px solid #2540ff}.goal-item > *{-webkit-user-select:auto;user-select:auto}.goal-item .start,.goal-item .end{display:flex;align-items:center}.goal-item .start{flex:1;min-width:0;column-gap:16px;min-width:0}.goal-item .end{flex-shrink:0;column-gap:30px}.goal-item .end .operation{display:none;align-items:center;gap:8px}.goal-item .end .operation eo-button::part(button){height:28px}.goal-item .end .operation .new-chat::part(button){padding:5px 10px;font-size:13px}.goal-item .end .operation .append-child::part(button){padding:5px 8px;font-size:14px}.goal-item .end .info{display:inline-flex;align-items:center;column-gap:24px}.goal-item .serial-number{font-weight:400;color:var(--palette-gray-7);font-size:16px;overflow:visible}.goal-item .title{font-weight:500;padding:2px 4px;font-size:16px;color:var(--palette-gray-10);border:1px solid transparent;border-radius:8px;cursor:pointer;min-width:80px}.goal-item .title:hover{background-color:rgba(255,255,255,0.6);border:1px solid var(--palette-gray-5);cursor:text}.goal-item .title:focus{outline:none;background-color:rgba(255,255,255,0.6);border:1px solid var(--elevo-color-brand)}.goal-item .icon{border-radius:8px;padding:6px;position:relative;top:2px}.goal-item .icon:hover{background-color:rgba(0,0,0,0.04)}.goal-item .message{color:var(--palette-gray-7);display:inline-flex;align-items:center;column-gap:6px}.goal-item .message .count{font-weight:500;color:var(--palette-gray-10)}.goal-item:not(.editing) .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// istanbul ignore file: compatibility workaround\nimport type { HTMLAttributes } from \"react\";\n\nlet _supports: boolean | undefined;\n\nfunction supportsContentEditablePlaintextOnly(): boolean {\n if (typeof _supports !== \"boolean\") {\n const div = document.createElement(\"div\");\n div.setAttribute(\"contenteditable\", \"PLAINTEXT-ONLY\");\n _supports = div.contentEditable === \"plaintext-only\";\n }\n return _supports;\n}\n\nexport function getContentEditable(\n editable: boolean\n): HTMLAttributes<HTMLDivElement>[\"contentEditable\"] {\n return editable\n ? supportsContentEditablePlaintextOnly()\n ? \"plaintext-only\"\n : \"true\"\n : \"false\";\n}\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import React, {\n useState,\n useEffect,\n forwardRef,\n createRef,\n useImperativeHandle,\n useMemo,\n} from \"react\";\nimport { createDecorators, EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { NS, locales } from \"./i18n.js\";\nimport CardItemStyleText from \"./CardItem/CardItem.shadow.css\";\nimport styleText from \"./styles.shadow.css\";\nimport { GoalCardItem, GoalItem, GoalState } from \"./CardItem/CardItem.js\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport { uniqueId } from \"lodash\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface GoalCardListProps {\n goalList?: GoalItem[];\n cardStyle?: React.CSSProperties;\n activeKey?: string;\n}\n\nconst GoalCardListComponent = forwardRef(LegacyGoalCardListComponent);\n\n/**\n * 构件 `ai-portal.goal-card-list`\n */\nexport\n@defineElement(\"ai-portal.goal-card-list\", {\n styleTexts: [styleText, CardItemStyleText],\n})\nclass GoalCardList extends ReactNextElement implements GoalCardListProps {\n @property({\n attribute: false,\n })\n accessor goalList: GoalItem[] | undefined;\n\n @property({\n attribute: false,\n })\n accessor cardStyle: React.CSSProperties | undefined;\n\n @property()\n accessor activeKey: string | undefined;\n\n @event({ type: \"item.click\" })\n accessor #itemClickEvent!: EventEmitter<GoalItem>;\n #handleItemClick = (item: GoalItem) => {\n this.#itemClickEvent.emit(item);\n };\n\n @event({ type: \"item.status.change\" })\n accessor #itemStatusChangeEvent!: EventEmitter<GoalItem>;\n #handleItemStatusChange = (item: GoalItem) => {\n this.#itemStatusChangeEvent.emit(item);\n };\n\n @event({ type: \"item.title.change\" })\n accessor #itemTitleChangeEvent!: EventEmitter<GoalItem>;\n #handleTitleChange = (item: GoalItem) => {\n this.#itemTitleChangeEvent.emit(item);\n };\n\n @event({ type: \"item.new.chat\" })\n accessor #itemNewChatEvent!: EventEmitter<GoalItem>;\n #handleNewChat = (item: GoalItem) => {\n this.#itemNewChatEvent.emit(item);\n };\n\n #ref = createRef<GoalListRef>();\n\n @method()\n appendChildDone(pendingId: string, newItem: GoalItem) {\n this.#ref.current?.appendChildDone(pendingId, newItem);\n }\n\n render() {\n return (\n <GoalCardListComponent\n ref={this.#ref}\n goalList={this.goalList}\n cardStyle={this.cardStyle}\n onTitleChange={this.#handleTitleChange}\n onStatusChange={this.#handleItemStatusChange}\n onItemClick={this.#handleItemClick}\n onNewChat={this.#handleNewChat}\n activeKey={this.activeKey}\n />\n );\n }\n}\n\ninterface GoalCardListComponentProps extends GoalCardListProps {\n onTitleChange?: (item: GoalItem) => void;\n onStatusChange?: (item: GoalItem) => void;\n onItemClick?: (item: GoalItem) => void;\n onNewChat?: (item: GoalItem) => void;\n}\n\ninterface GoalListRef {\n appendChildDone: (pendingId: string, newItem: GoalItem) => void;\n}\n\nfunction LegacyGoalCardListComponent(\n {\n goalList: _goalList,\n cardStyle,\n onTitleChange,\n onStatusChange,\n onItemClick,\n onNewChat,\n activeKey,\n }: GoalCardListComponentProps,\n ref: React.Ref<GoalListRef>\n) {\n const [goalList, setGoalList] = useState(_goalList);\n\n useEffect(() => {\n setGoalList(_goalList);\n }, [_goalList]);\n\n const updateGoalItem = <T extends keyof GoalItem>(\n item: GoalItem,\n field: T,\n value: GoalItem[T],\n callback?: (updatedItem: GoalItem) => void\n ) => {\n const updatedItem = {\n ...item,\n [field]: value,\n };\n\n setGoalList(\n goalList?.map((goalItem) =>\n goalItem.instanceId === updatedItem.instanceId ? updatedItem : goalItem\n )\n );\n\n callback?.(updatedItem);\n };\n\n const handleTitleChange = (newTitle: string, item: GoalItem) => {\n updateGoalItem(item, \"title\", newTitle, onTitleChange);\n };\n\n const handleStatusChange = (newStatus: GoalState, item: GoalItem) => {\n updateGoalItem(item, \"state\", newStatus, onStatusChange);\n };\n\n const handleAppendChild = (item: GoalItem) => {\n const newChild: GoalItem = {\n instanceId:\n process.env.NODE_ENV === \"test\"\n ? \"test-pending-id\"\n : uniqueId(\"pending-\"),\n pending: true,\n id: 0,\n title: \"\",\n state: \"ready\",\n level: 1,\n pendingParentId: item.instanceId,\n };\n setGoalList((prevList) => {\n const index =\n prevList?.findIndex((goal) => goal.instanceId === item.instanceId) ??\n -1;\n if (index === -1) return prevList;\n const offsetIndex =\n prevList!.slice(index + 1).findIndex((goal) => goal.level === 0) + 1;\n if (offsetIndex === 0) {\n return [...prevList!, newChild];\n }\n return [\n ...prevList!.slice(0, index + offsetIndex),\n newChild,\n ...prevList!.slice(index + offsetIndex),\n ];\n });\n };\n\n useImperativeHandle(\n ref,\n () => ({\n appendChildDone: (pendingId: string, newItem: GoalItem) => {\n setGoalList((prevList) =>\n prevList?.map((goal) =>\n goal.instanceId === pendingId\n ? { ...newItem, level: goal.level }\n : goal\n )\n );\n },\n }),\n []\n );\n\n const idWidth = useMemo(() => {\n const maxId =\n goalList?.reduce((max, item) => Math.max(max, item.id), 0) ?? 0;\n return 10 * (maxId.toString().length + 1);\n }, [goalList]);\n\n if (!goalList) {\n return (\n <div className=\"loading\">\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n );\n }\n\n return (\n <div className=\"goal-container\">\n {goalList?.map((item) => (\n <GoalCardItem\n key={item.instanceId}\n isActive={activeKey === item.instanceId}\n goalItem={item}\n idWidth={idWidth}\n cardStyle={cardStyle}\n onTitleChange={(v) => handleTitleChange(v, item)}\n onStatusChange={(v) => handleStatusChange(v, item)}\n onNewChat={() => onNewChat?.(item)}\n onClick={() => onItemClick?.(item)}\n onAppendChild={() => handleAppendChild(item)}\n onRevokeAppendChild={() => {\n setGoalList((prevList) =>\n prevList?.filter((goal) => goal.instanceId !== item.instanceId)\n );\n }}\n />\n ))}\n </div>\n );\n}\n"],"names":["K","NS","locales","en","UN_START_STATUS","RUNNING_STATUS","COMPLETED_STATUS","NEW_CHAT","zh","t","i18n","getFixedT","_classPrivateGetter","s","r","a","___CSS_LOADER_EXPORT___","push","module","id","toString","toPropertyKey","i","e","Symbol","toPrimitive","call","TypeError","String","_assertClassBrand","n","has","arguments","length","_typeof","o","iterator","constructor","prototype","initializeI18n","WrappedIcon","wrapBrick","WrappedDropdownActions","onActionClick","onVisibleChange","WrappedEasyopsAvatar","WrappedButton","iconMap","ready","working","completed","iconActions","key","icon","lib","category","text","GoalCardItem","_ref","goalItem","idWidth","cardStyle","onStatusChange","onTitleChange","onClick","onNewChat","onAppendChild","onRevokeAppendChild","isActive","state","serialNumber","title","conversations","owner","pending","compositionRef","useRef","handleCompositionStart","useCallback","current","handleCompositionEnd","editing","setEditing","useState","handleFocus","handleBlur","value","currentTarget","textContent","trim","handleKeyDown","preventDefault","blur","titleRef","useEffect","_titleRef$current","focus","React","className","classNames","active","style","paddingLeft","level","undefined","actions","disabled","action","detail","stopPropagation","width","ref","onFocus","onBlur","onKeyDown","onCompositionStart","onCompositionEnd","contentEditable","getContentEditable","suppressContentEditableWarning","nameOrInstanceId","instanceId","size","themeVariant","type","_checkInRHS","Object","exports","cssWithMappingToString","list","this","map","item","content","needLayer","concat","join","modules","media","dedupe","supports","layer","alreadyImportedModules","k","_k","_supports","editable","div","document","createElement","setAttribute","supportsContentEditablePlaintextOnly","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","apply","includes","newClass","default","setFunctionName","description","defineProperty","configurable","applyDecs2311","c","u","f","l","p","d","metadata","m","h","create","y","v","g","b","applyDec","w","D","S","j","E","I","P","F","get","set","getOwnPropertyDescriptor","Error","name","N","O","z","A","H","kind","addInitializer","bind","access","init","unshift","splice","enumerable","checkInRHS","_classPrivateFieldGet2","_classPrivateFieldInitSpec","obj","privateMap","_checkPrivateRedeclaration","privateCollection","_classPrivateMethodInitSpec","privateSet","add","_classPrivateFieldSet2","defineElement","property","event","method","createDecorators","GoalCardListComponent","forwardRef","LegacyGoalCardListComponent","_GoalCardList","_A","WeakMap","_B","_C","_D","_GoalCardList_brand","WeakSet","_handleItemClick","_E","_handleItemStatusChange","_F","_handleTitleChange","_G","_handleNewChat","GoalCardList","ReactNextElement","_initProto","_init_goalList","_init_extra_goalList","_init_cardStyle","_init_extra_cardStyle","_init_activeKey","_init_extra_activeKey","_init_itemClickEvent","_init_extra_itemClickEvent","_get_itemClickEvent","emit","_init_itemStatusChangeEvent","_init_extra_itemStatusChangeEvent","_get_itemStatusChangeEvent","_init_itemTitleChangeEvent","_init_extra_itemTitleChangeEvent","_get_itemTitleChangeEvent","_init_itemNewChatEvent","_init_extra_itemNewChatEvent","_get_itemNewChatEvent","createRef","goalList","_classPrivateFieldGet","_classPrivateFieldSet","activeKey","appendChildDone","pendingId","newItem","render","onItemClick","_ref2","_goalList","setGoalList","updateGoalItem","field","callback","updatedItem","useImperativeHandle","prevList","goal","useMemo","_goalList$reduce","reduce","max","Math","handleTitleChange","newTitle","handleStatusChange","newStatus","newChild","uniqueId","pendingParentId","_prevList$findIndex","index","findIndex","offsetIndex","slice","handleAppendChild","filter","spinning","_GoalCardList2","_set_itemClickEvent","_set_itemStatusChangeEvent","_set_itemTitleChangeEvent","_set_itemNewChatEvent","_initClass","_applyDecs","styleTexts","styleText","CardItemStyleText","attribute","_"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/goal-card-list.74ab5767.js","mappings":"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","sources":["webpack:///./src/goal-card-list/i18n.ts","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///./src/goal-card-list/styles.shadow.css","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./src/goal-card-list/CardItem/CardItem.tsx","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkInRHS.js","webpack:///../../node_modules/css-loader/dist/runtime/noSourceMaps.js","webpack:///../../node_modules/css-loader/dist/runtime/api.js","webpack:///./src/goal-card-list/CardItem/CardItem.shadow.css","webpack:///./src/shared/getContentEditable.ts","webpack:///../../node_modules/classnames/index.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/setFunctionName.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/applyDecs2311.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///./src/goal-card-list/index.tsx"],"sourcesContent":["import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n UN_START_STATUS = \"UN_START_STATUS\",\n RUNNING_STATUS = \"RUNNING_STATUS\",\n COMPLETED_STATUS = \"COMPLETED_STATUS\",\n NEW_CHAT = \"NEW_CHAT\",\n}\n\nconst en: Locale = {\n UN_START_STATUS: \"Not Start\",\n RUNNING_STATUS: \"Running\",\n COMPLETED_STATUS: \"Completed\",\n NEW_CHAT: \"New chat\",\n};\n\nconst zh: Locale = {\n UN_START_STATUS: \"未开始\",\n RUNNING_STATUS: \"运行中\",\n COMPLETED_STATUS: \"已完成\",\n NEW_CHAT: \"新对话\",\n};\n\nexport const NS = \"bricks/ai-portal/goal-card-list\";\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 assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\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:inline-block}:host([hidden]){display:none}.goal-container{display:flex;flex-direction:column;gap:3px}.loading{display:flex;align-items:center;justify-content:center;padding:24px;font-size:20px;color:#595959}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import React, { useCallback, useEffect, useRef, useState } from \"react\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\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 { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport type { Action, SimpleAction } from \"@next-bricks/basic/actions\";\nimport classNames from \"classnames\";\nimport { K, NS, locales, t } from \"../i18n.js\";\nimport { getContentEditable } from \"../../shared/getContentEditable.js\";\ninitializeI18n(NS, locales);\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nconst WrappedDropdownActions = wrapBrick<\n EoDropdownActions,\n DropdownActionsProps,\n DropdownActionsEvents,\n DropdownActionsEventsMapping\n>(\"eo-dropdown-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\nconst WrappedEasyopsAvatar = wrapBrick<EoEasyopsAvatar, EoEasyopsAvatarProps>(\n \"eo-easyops-avatar\"\n);\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\n\nexport interface InputEventsMap {\n onValueChange: \"change\";\n}\n\nexport type GoalState = \"ready\" | \"working\" | \"completed\";\n\ninterface GoalMember {\n instanceId: string;\n}\n\nexport interface GoalItem {\n title: string;\n description?: string;\n state: GoalState;\n id: number;\n conversations?: number;\n owner?: GoalMember;\n users?: GoalMember[];\n instanceId: string;\n level: number;\n pending?: boolean;\n pendingParentId?: string;\n}\n\ninterface GoalCardItemProps {\n goalItem: GoalItem;\n idWidth?: number;\n cardStyle?: React.CSSProperties;\n isActive?: boolean;\n onTitleChange?: (newTitle: string) => void;\n onStatusChange?: (newStatus: GoalState) => void;\n onNewChat?: () => void;\n onClick?: () => void;\n onAppendChild?: () => void;\n onRevokeAppendChild?: () => void;\n}\n\nconst iconMap = {\n ready: \"uncheck-status\",\n working: \"active-status\",\n completed: \"check-status\",\n};\n\nconst iconActions: Action[] = [\n {\n key: \"ready\",\n icon: {\n icon: \"uncheck-status\",\n lib: \"easyops\",\n category: \"colored-common\",\n },\n text: t(K.UN_START_STATUS),\n },\n {\n key: \"working\",\n icon: {\n icon: \"active-status\",\n lib: \"easyops\",\n category: \"colored-common\",\n },\n text: t(K.RUNNING_STATUS),\n },\n {\n key: \"completed\",\n icon: {\n icon: \"check-status\",\n lib: \"easyops\",\n category: \"colored-common\",\n },\n text: t(K.COMPLETED_STATUS),\n },\n];\n\nexport function GoalCardItem({\n goalItem,\n idWidth,\n cardStyle,\n onStatusChange,\n onTitleChange,\n onClick,\n onNewChat,\n onAppendChild,\n onRevokeAppendChild,\n isActive,\n}: GoalCardItemProps) {\n const {\n state,\n id: serialNumber,\n title,\n conversations,\n owner,\n pending,\n } = goalItem;\n\n const handleStatusChange = (action: SimpleAction) => {\n onStatusChange?.(action.key as GoalState);\n };\n\n const compositionRef = useRef(false);\n\n const handleCompositionStart = useCallback(() => {\n compositionRef.current = true;\n }, []);\n\n const handleCompositionEnd = useCallback(() => {\n compositionRef.current = false;\n }, []);\n\n const [editing, setEditing] = useState(false);\n\n const handleFocus = useCallback(() => {\n setEditing(true);\n }, []);\n\n const handleBlur = useCallback(\n (e: React.FocusEvent<HTMLSpanElement>) => {\n setEditing(false);\n const value = e.currentTarget.textContent;\n\n if (pending && !value?.trim()) {\n onRevokeAppendChild?.();\n return;\n }\n\n if (value !== null && title !== value) {\n onTitleChange?.(value);\n }\n },\n [pending, title, onRevokeAppendChild, onTitleChange]\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLSpanElement>) => {\n if (compositionRef.current) {\n // Ignore key events during composition\n return;\n }\n if (e.key === \"Enter\") {\n e.preventDefault();\n e.currentTarget.blur();\n }\n },\n []\n );\n\n const titleRef = useRef<HTMLSpanElement>(null);\n\n useEffect(() => {\n if (pending) {\n titleRef.current?.focus();\n }\n }, [pending]);\n\n return (\n <div\n className={classNames(\n \"goal-item\",\n goalItem.state,\n { editing },\n { active: isActive }\n )}\n style={{\n paddingLeft: `${(goalItem.level + 1) * 24}px`,\n ...cardStyle,\n }}\n onClick={pending ? undefined : onClick}\n >\n <div className=\"start\">\n <WrappedDropdownActions\n actions={iconActions}\n disabled={pending}\n onActionClick={(e) => {\n handleStatusChange(e.detail);\n }}\n >\n <WrappedIcon\n className=\"icon\"\n lib=\"easyops\"\n category=\"colored-common\"\n icon={iconMap[state]}\n onClick={(e) => e.stopPropagation()}\n />\n </WrappedDropdownActions>\n\n <span className=\"serial-number\" style={{ width: idWidth }}>\n #{pending ? \"\" : serialNumber}\n </span>\n <span\n className=\"title\"\n ref={titleRef}\n onClick={(e) => e.stopPropagation()}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n contentEditable={getContentEditable(true)}\n suppressContentEditableWarning\n >\n {title}\n </span>\n </div>\n <div className=\"end\">\n <div className=\"info\">\n <div className=\"message\">\n <WrappedIcon lib=\"easyops\" category=\"common\" icon=\"message\" />\n <span className=\"count\">{conversations || 0}</span>\n </div>\n <WrappedEasyopsAvatar\n nameOrInstanceId={owner?.instanceId}\n size=\"small\"\n />\n </div>\n <div className=\"operation\" onClick={(e) => e.stopPropagation()}>\n {goalItem.level === 0 && (\n <WrappedButton\n className=\"append-child\"\n themeVariant=\"elevo\"\n type=\"neutral\"\n size=\"small\"\n onClick={onAppendChild}\n >\n <WrappedIcon lib=\"lucide\" icon=\"plus\" />\n </WrappedButton>\n )}\n {!pending && (\n <WrappedButton\n className=\"new-chat\"\n themeVariant=\"elevo\"\n type=\"neutral\"\n size=\"small\"\n onClick={onNewChat}\n >\n {t(K.NEW_CHAT)}\n </WrappedButton>\n )}\n </div>\n </div>\n </div>\n );\n}\n","import _typeof from \"./typeof.js\";\nexport default function _checkInRHS(e) {\n if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? _typeof(e) : \"null\"));\n return e;\n}","\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.goal-item{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;padding:12px 24px;background-color:rgba(255,255,255,0.6);border-radius:8px;-webkit-user-select:none;user-select:none;border:1px solid transparent}.goal-item:hover,.goal-item:has(.title:focus){background-color:rgba(0,0,0,0.05)}.goal-item:has(.title:focus) .end .operation{display:flex}.goal-item:hover:not(.does-not-exist) .end .operation{display:flex}.goal-item:has(.title:focus) .end .info{display:none}.goal-item:hover:not(.does-not-exist) .end .info{display:none}.goal-item.completed .serial-number,.goal-item.completed .title{color:#bfbfbf}.goal-item.active{background:rgba(37,64,255,0.1);border:1px solid #2540ff}.goal-item > *{-webkit-user-select:auto;user-select:auto}.goal-item .start,.goal-item .end{display:flex;align-items:center}.goal-item .start{flex:1;min-width:0;column-gap:16px;min-width:0}.goal-item .end{flex-shrink:0;column-gap:30px}.goal-item .end .operation{display:none;align-items:center;gap:8px}.goal-item .end .operation eo-button::part(button){height:28px}.goal-item .end .operation .new-chat::part(button){padding:5px 10px;font-size:13px}.goal-item .end .operation .append-child::part(button){padding:5px 8px;font-size:14px}.goal-item .end .info{display:inline-flex;align-items:center;column-gap:24px}.goal-item .serial-number{font-weight:400;color:var(--palette-gray-7);font-size:16px;overflow:visible}.goal-item .title{font-weight:500;padding:2px 4px;font-size:16px;color:var(--palette-gray-10);border:1px solid transparent;border-radius:8px;cursor:pointer;min-width:80px}.goal-item .title:hover{background-color:rgba(255,255,255,0.6);border:1px solid var(--palette-gray-5);cursor:text}.goal-item .title:focus{outline:none;background-color:rgba(255,255,255,0.6);border:1px solid var(--elevo-color-brand)}.goal-item .icon{border-radius:8px;padding:6px;position:relative;top:2px}.goal-item .icon:hover{background-color:rgba(0,0,0,0.04)}.goal-item .message{color:var(--palette-gray-7);display:inline-flex;align-items:center;column-gap:6px}.goal-item .message .count{font-weight:500;color:var(--palette-gray-10)}.goal-item:not(.editing) .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","// istanbul ignore file: compatibility workaround\nimport type { HTMLAttributes } from \"react\";\n\nlet _supports: boolean | undefined;\n\nfunction supportsContentEditablePlaintextOnly(): boolean {\n if (typeof _supports !== \"boolean\") {\n const div = document.createElement(\"div\");\n div.setAttribute(\"contenteditable\", \"PLAINTEXT-ONLY\");\n _supports = div.contentEditable === \"plaintext-only\";\n }\n return _supports;\n}\n\nexport function getContentEditable(\n editable: boolean\n): HTMLAttributes<HTMLDivElement>[\"contentEditable\"] {\n return editable\n ? supportsContentEditablePlaintextOnly()\n ? \"plaintext-only\"\n : \"true\"\n : \"false\";\n}\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import _typeof from \"./typeof.js\";\nexport default function setFunctionName(e, t, n) {\n \"symbol\" == _typeof(t) && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\");\n try {\n Object.defineProperty(e, \"name\", {\n configurable: !0,\n value: n ? n + \" \" + t : t\n });\n } catch (e) {}\n return e;\n}","import _typeof from \"./typeof.js\";\nimport checkInRHS from \"./checkInRHS.js\";\nimport setFunctionName from \"./setFunctionName.js\";\nimport toPropertyKey from \"./toPropertyKey.js\";\nexport default function applyDecs2311(e, t, n, r, o, i) {\n var a,\n c,\n u,\n s,\n f,\n l,\n p,\n d = Symbol.metadata || Symbol[\"for\"](\"Symbol.metadata\"),\n m = Object.defineProperty,\n h = Object.create,\n y = [h(null), h(null)],\n v = t.length;\n function g(t, n, r) {\n return function (o, i) {\n n && (i = o, o = e);\n for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []);\n return r ? i : o;\n };\n }\n function b(e, t, n, r) {\n if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\"));\n return e;\n }\n function applyDec(e, t, n, r, o, i, u, s, f, l, p) {\n function d(e) {\n if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\");\n }\n var h = [].concat(t[0]),\n v = t[3],\n w = !u,\n D = 1 === o,\n S = 3 === o,\n j = 4 === o,\n E = 2 === o;\n function I(t, n, r) {\n return function (o, i) {\n return n && (i = o, o = e), r && r(o), P[t].call(o, i);\n };\n }\n if (!w) {\n var P = {},\n k = [],\n F = S ? \"get\" : j || D ? \"set\" : \"value\";\n if (f ? (l || D ? P = {\n get: setFunctionName(function () {\n return v(this);\n }, r, \"get\"),\n set: function set(e) {\n t[4](this, e);\n }\n } : P[F] = v, l || setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) {\n if ((c = y[+s][r]) && 7 != (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\");\n y[+s][r] = o < 3 ? 1 : o;\n }\n }\n for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) {\n var z = b(h[O], \"A decorator\", \"be\", !0),\n A = n ? h[O - 1] : void 0,\n H = {},\n K = {\n kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o],\n name: r,\n metadata: a,\n addInitializer: function (e, t) {\n if (e.v) throw Error(\"attempted to call addInitializer after decoration was finished\");\n b(t, \"An initializer\", \"be\", !0), i.push(t);\n }.bind(null, H)\n };\n if (w) c = z.call(A, N, K), H.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (K[\"static\"] = s, K[\"private\"] = f, c = K.access = {\n has: f ? p.bind() : function (e) {\n return r in e;\n }\n }, j || (c.get = f ? E ? function (e) {\n return d(e), P.value;\n } : I(\"get\", 0, d) : function (e) {\n return e[r];\n }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) {\n e[r] = t;\n }), N = z.call(A, D ? {\n get: P.get,\n set: P.set\n } : P[F], K), H.v = 1, D) {\n if (\"object\" == _typeof(N) && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\");\n } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N);\n }\n return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N;\n }\n function w(e) {\n return m(e, d, {\n configurable: !0,\n enumerable: !0,\n value: a\n });\n }\n return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function l(e) {\n e && f.push(g(e));\n }, p = function p(t, r) {\n for (var i = 0; i < n.length; i++) {\n var a = n[i],\n c = a[1],\n l = 7 & c;\n if ((8 & c) == t && !l == r) {\n var p = a[2],\n d = !!a[3],\n m = 16 & c;\n applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) {\n return checkInRHS(t) === e;\n } : o);\n }\n }\n }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), {\n e: c,\n get c() {\n var n = [];\n return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)];\n }\n };\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import React, {\n useState,\n useEffect,\n forwardRef,\n createRef,\n useImperativeHandle,\n useMemo,\n} from \"react\";\nimport { createDecorators, EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport { initializeI18n } from \"@next-core/i18n\";\nimport { NS, locales } from \"./i18n.js\";\nimport CardItemStyleText from \"./CardItem/CardItem.shadow.css\";\nimport styleText from \"./styles.shadow.css\";\nimport { GoalCardItem, GoalItem, GoalState } from \"./CardItem/CardItem.js\";\nimport { GeneralIcon, GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport { uniqueId } from \"lodash\";\n\ninitializeI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface GoalCardListProps {\n goalList?: GoalItem[];\n cardStyle?: React.CSSProperties;\n activeKey?: string;\n}\n\nconst GoalCardListComponent = forwardRef(LegacyGoalCardListComponent);\n\n/**\n * 构件 `ai-portal.goal-card-list`\n */\nexport\n@defineElement(\"ai-portal.goal-card-list\", {\n styleTexts: [styleText, CardItemStyleText],\n})\nclass GoalCardList extends ReactNextElement implements GoalCardListProps {\n @property({\n attribute: false,\n })\n accessor goalList: GoalItem[] | undefined;\n\n @property({\n attribute: false,\n })\n accessor cardStyle: React.CSSProperties | undefined;\n\n @property()\n accessor activeKey: string | undefined;\n\n @event({ type: \"item.click\" })\n accessor #itemClickEvent!: EventEmitter<GoalItem>;\n #handleItemClick = (item: GoalItem) => {\n this.#itemClickEvent.emit(item);\n };\n\n @event({ type: \"item.status.change\" })\n accessor #itemStatusChangeEvent!: EventEmitter<GoalItem>;\n #handleItemStatusChange = (item: GoalItem) => {\n this.#itemStatusChangeEvent.emit(item);\n };\n\n @event({ type: \"item.title.change\" })\n accessor #itemTitleChangeEvent!: EventEmitter<GoalItem>;\n #handleTitleChange = (item: GoalItem) => {\n this.#itemTitleChangeEvent.emit(item);\n };\n\n @event({ type: \"item.new.chat\" })\n accessor #itemNewChatEvent!: EventEmitter<GoalItem>;\n #handleNewChat = (item: GoalItem) => {\n this.#itemNewChatEvent.emit(item);\n };\n\n #ref = createRef<GoalListRef>();\n\n @method()\n appendChildDone(pendingId: string, newItem: GoalItem) {\n this.#ref.current?.appendChildDone(pendingId, newItem);\n }\n\n render() {\n return (\n <GoalCardListComponent\n ref={this.#ref}\n goalList={this.goalList}\n cardStyle={this.cardStyle}\n onTitleChange={this.#handleTitleChange}\n onStatusChange={this.#handleItemStatusChange}\n onItemClick={this.#handleItemClick}\n onNewChat={this.#handleNewChat}\n activeKey={this.activeKey}\n />\n );\n }\n}\n\ninterface GoalCardListComponentProps extends GoalCardListProps {\n onTitleChange?: (item: GoalItem) => void;\n onStatusChange?: (item: GoalItem) => void;\n onItemClick?: (item: GoalItem) => void;\n onNewChat?: (item: GoalItem) => void;\n}\n\ninterface GoalListRef {\n appendChildDone: (pendingId: string, newItem: GoalItem) => void;\n}\n\nfunction LegacyGoalCardListComponent(\n {\n goalList: _goalList,\n cardStyle,\n onTitleChange,\n onStatusChange,\n onItemClick,\n onNewChat,\n activeKey,\n }: GoalCardListComponentProps,\n ref: React.Ref<GoalListRef>\n) {\n const [goalList, setGoalList] = useState(_goalList);\n\n useEffect(() => {\n setGoalList(_goalList);\n }, [_goalList]);\n\n const updateGoalItem = <T extends keyof GoalItem>(\n item: GoalItem,\n field: T,\n value: GoalItem[T],\n callback?: (updatedItem: GoalItem) => void\n ) => {\n const updatedItem = {\n ...item,\n [field]: value,\n };\n\n setGoalList(\n goalList?.map((goalItem) =>\n goalItem.instanceId === updatedItem.instanceId ? updatedItem : goalItem\n )\n );\n\n callback?.(updatedItem);\n };\n\n const handleTitleChange = (newTitle: string, item: GoalItem) => {\n updateGoalItem(item, \"title\", newTitle, onTitleChange);\n };\n\n const handleStatusChange = (newStatus: GoalState, item: GoalItem) => {\n updateGoalItem(item, \"state\", newStatus, onStatusChange);\n };\n\n const handleAppendChild = (item: GoalItem) => {\n const newChild: GoalItem = {\n instanceId:\n process.env.NODE_ENV === \"test\"\n ? \"test-pending-id\"\n : uniqueId(\"pending-\"),\n pending: true,\n id: 0,\n title: \"\",\n state: \"ready\",\n level: 1,\n pendingParentId: item.instanceId,\n };\n setGoalList((prevList) => {\n const index =\n prevList?.findIndex((goal) => goal.instanceId === item.instanceId) ??\n -1;\n if (index === -1) return prevList;\n const offsetIndex =\n prevList!.slice(index + 1).findIndex((goal) => goal.level === 0) + 1;\n if (offsetIndex === 0) {\n return [...prevList!, newChild];\n }\n return [\n ...prevList!.slice(0, index + offsetIndex),\n newChild,\n ...prevList!.slice(index + offsetIndex),\n ];\n });\n };\n\n useImperativeHandle(\n ref,\n () => ({\n appendChildDone: (pendingId: string, newItem: GoalItem) => {\n setGoalList((prevList) =>\n prevList?.map((goal) =>\n goal.instanceId === pendingId\n ? { ...newItem, level: goal.level }\n : goal\n )\n );\n },\n }),\n []\n );\n\n const idWidth = useMemo(() => {\n const maxId =\n goalList?.reduce((max, item) => Math.max(max, item.id), 0) ?? 0;\n return 10 * (maxId.toString().length + 1);\n }, [goalList]);\n\n if (!goalList) {\n return (\n <div className=\"loading\">\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n );\n }\n\n return (\n <div className=\"goal-container\">\n {goalList?.map((item) => (\n <GoalCardItem\n key={item.instanceId}\n isActive={activeKey === item.instanceId}\n goalItem={item}\n idWidth={idWidth}\n cardStyle={cardStyle}\n onTitleChange={(v) => handleTitleChange(v, item)}\n onStatusChange={(v) => handleStatusChange(v, item)}\n onNewChat={() => onNewChat?.(item)}\n onClick={() => onItemClick?.(item)}\n onAppendChild={() => handleAppendChild(item)}\n onRevokeAppendChild={() => {\n setGoalList((prevList) =>\n prevList?.filter((goal) => goal.instanceId !== item.instanceId)\n );\n }}\n />\n ))}\n </div>\n );\n}\n"],"names":["K","NS","locales","en","UN_START_STATUS","RUNNING_STATUS","COMPLETED_STATUS","NEW_CHAT","zh","t","i18n","getFixedT","_classPrivateGetter","s","r","a","___CSS_LOADER_EXPORT___","push","module","id","toString","toPropertyKey","i","e","Symbol","toPrimitive","call","TypeError","String","_assertClassBrand","n","has","arguments","length","_typeof","o","iterator","constructor","prototype","initializeI18n","WrappedIcon","wrapBrick","WrappedDropdownActions","onActionClick","onVisibleChange","WrappedEasyopsAvatar","WrappedButton","iconMap","ready","working","completed","iconActions","key","icon","lib","category","text","GoalCardItem","_ref","goalItem","idWidth","cardStyle","onStatusChange","onTitleChange","onClick","onNewChat","onAppendChild","onRevokeAppendChild","isActive","state","serialNumber","title","conversations","owner","pending","compositionRef","useRef","handleCompositionStart","useCallback","current","handleCompositionEnd","editing","setEditing","useState","handleFocus","handleBlur","value","currentTarget","textContent","trim","handleKeyDown","preventDefault","blur","titleRef","useEffect","_titleRef$current","focus","React","className","classNames","active","style","paddingLeft","level","undefined","actions","disabled","action","detail","stopPropagation","width","ref","onFocus","onBlur","onKeyDown","onCompositionStart","onCompositionEnd","contentEditable","getContentEditable","suppressContentEditableWarning","nameOrInstanceId","instanceId","size","themeVariant","type","_checkInRHS","Object","exports","cssWithMappingToString","list","this","map","item","content","needLayer","concat","join","modules","media","dedupe","supports","layer","alreadyImportedModules","k","_k","_supports","editable","div","document","createElement","setAttribute","supportsContentEditablePlaintextOnly","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","apply","includes","newClass","default","setFunctionName","description","defineProperty","configurable","applyDecs2311","c","u","f","l","p","d","metadata","m","h","create","y","v","g","b","applyDec","w","D","S","j","E","I","P","F","get","set","getOwnPropertyDescriptor","Error","name","N","O","z","A","H","kind","addInitializer","bind","access","init","unshift","splice","enumerable","checkInRHS","_classPrivateFieldGet2","_classPrivateFieldInitSpec","obj","privateMap","_checkPrivateRedeclaration","privateCollection","_classPrivateMethodInitSpec","privateSet","add","_classPrivateFieldSet2","defineElement","property","event","method","createDecorators","GoalCardListComponent","forwardRef","LegacyGoalCardListComponent","_GoalCardList","_A","WeakMap","_B","_C","_D","_GoalCardList_brand","WeakSet","_handleItemClick","_E","_handleItemStatusChange","_F","_handleTitleChange","_G","_handleNewChat","GoalCardList","ReactNextElement","_initProto","_init_goalList","_init_extra_goalList","_init_cardStyle","_init_extra_cardStyle","_init_activeKey","_init_extra_activeKey","_init_itemClickEvent","_init_extra_itemClickEvent","_get_itemClickEvent","emit","_init_itemStatusChangeEvent","_init_extra_itemStatusChangeEvent","_get_itemStatusChangeEvent","_init_itemTitleChangeEvent","_init_extra_itemTitleChangeEvent","_get_itemTitleChangeEvent","_init_itemNewChatEvent","_init_extra_itemNewChatEvent","_get_itemNewChatEvent","createRef","goalList","_classPrivateFieldGet","_classPrivateFieldSet","activeKey","appendChildDone","pendingId","newItem","render","onItemClick","_ref2","_goalList","setGoalList","updateGoalItem","field","callback","updatedItem","useImperativeHandle","prevList","goal","useMemo","_goalList$reduce","reduce","max","Math","handleTitleChange","newTitle","handleStatusChange","newStatus","newChild","uniqueId","pendingParentId","_prevList$findIndex","index","findIndex","offsetIndex","slice","handleAppendChild","filter","spinning","_GoalCardList2","_set_itemClickEvent","_set_itemStatusChangeEvent","_set_itemTitleChangeEvent","_set_itemNewChatEvent","_initClass","_applyDecs","styleTexts","styleText","CardItemStyleText","attribute","_"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[8539],{93291:(e,t,r)=>{r.r(t),r.d(t,{clearRequestStore:()=>n,loadRequestStore:()=>o,saveRequestStore:()=>l});var s=r(
|
|
2
|
-
//# sourceMappingURL=load-request-store.
|
|
1
|
+
"use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[8539],{93291:(e,t,r)=>{r.r(t),r.d(t,{clearRequestStore:()=>n,loadRequestStore:()=>o,saveRequestStore:()=>l});var s=r(40410);let a=null;function l(e){a=e}function o(){const e=a;return a=null,e}function n(){a=null}customElements.define("ai-portal.save-request-store",(0,s.createProviderClass)(l)),customElements.define("ai-portal.load-request-store",(0,s.createProviderClass)(o)),customElements.define("ai-portal.clear-request-store",(0,s.createProviderClass)(n))}}]);
|
|
2
|
+
//# sourceMappingURL=load-request-store.a6effafd.js.map
|
package/dist/chunks/{load-request-store.b4cf045b.js.map → load-request-store.a6effafd.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/load-request-store.
|
|
1
|
+
{"version":3,"file":"chunks/load-request-store.a6effafd.js","mappings":"kPAGA,IAAIA,EAA6B,KAE1B,SAASC,EAAiBC,GAC/BF,EAAQE,CACV,CAEO,SAASC,IACd,MAAMD,EAAQF,EAEd,OADAA,EAAQ,KACDE,CACT,CAEO,SAASE,IACdJ,EAAQ,IACV,CAEAK,eAAeC,OACb,gCACAC,EAAAA,EAAAA,qBAAoBN,IAGtBI,eAAeC,OACb,gCACAC,EAAAA,EAAAA,qBAAoBJ,IAGtBE,eAAeC,OACb,iCACAC,EAAAA,EAAAA,qBAAoBH,G","sources":["webpack:///./src/data-providers/request-store.ts"],"sourcesContent":["import { createProviderClass } from \"@next-core/utils/general\";\nimport type { RequestStore } from \"../shared/interfaces\";\n\nlet store: RequestStore | null = null;\n\nexport function saveRequestStore(value: RequestStore): void {\n store = value;\n}\n\nexport function loadRequestStore(): RequestStore | null {\n const value = store;\n store = null;\n return value;\n}\n\nexport function clearRequestStore(): void {\n store = null;\n}\n\ncustomElements.define(\n \"ai-portal.save-request-store\",\n createProviderClass(saveRequestStore)\n);\n\ncustomElements.define(\n \"ai-portal.load-request-store\",\n createProviderClass(loadRequestStore)\n);\n\ncustomElements.define(\n \"ai-portal.clear-request-store\",\n createProviderClass(clearRequestStore)\n);\n"],"names":["store","saveRequestStore","value","loadRequestStore","clearRequestStore","customElements","define","createProviderClass"],"sourceRoot":""}
|