@fses/workbench-app 0.1.3 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (804) hide show
  1. package/WORKBENCH-CLOSURE.json +80 -0
  2. package/dist/{Workspace-CvJghuPy.js → Workspace-DMye5DU8.js} +11458 -11325
  3. package/dist/canvas/api/index.d.ts +7 -0
  4. package/dist/canvas/api/index.js +4 -0
  5. package/dist/canvasFacade-B0oy__da.js +1932 -0
  6. package/dist/cardFactory-CoDF-zsR.js +1392 -0
  7. package/dist/extensions/index.d.ts +2 -0
  8. package/dist/extensions/index.js +8 -0
  9. package/dist/fses-workbench-app.js +89 -86
  10. package/dist/index-DbH6tMQy.js +837 -0
  11. package/dist/internal/personal-workbench/lib/workbenchChatReplyBridge.d.ts +24 -0
  12. package/dist/runtime/index.js +1 -1
  13. package/dist/style.css +1 -1
  14. package/dist/{useWorkbenchRuntime-Pekhufen.js → useWorkbenchRuntime-XpOzwm56.js} +8752 -11980
  15. package/dist/workbenchCustomComponentRegistry-6GHzavdM.js +267 -0
  16. package/node_modules/@byteluck/agentic-protocol/LICENSE +9 -0
  17. package/node_modules/@byteluck/agentic-protocol/README.md +74 -0
  18. package/node_modules/@byteluck/agentic-protocol/dist/index.d.ts +1623 -0
  19. package/node_modules/@byteluck/agentic-protocol/dist/index.mjs +3380 -0
  20. package/node_modules/@byteluck/agentic-protocol/package.json +37 -0
  21. package/node_modules/@byteluck/workbench-skill-contracts/LICENSE +9 -0
  22. package/node_modules/@byteluck/workbench-skill-contracts/dist/index.d.ts +234 -0
  23. package/node_modules/@byteluck/workbench-skill-contracts/dist/index.mjs +394 -0
  24. package/node_modules/@byteluck/workbench-skill-contracts/package.json +37 -0
  25. package/node_modules/@fses/ai-chat/LICENSE +9 -0
  26. package/node_modules/@fses/ai-chat/README.md +320 -0
  27. package/node_modules/@fses/ai-chat/dist/chart-card/data.d.ts +12 -0
  28. package/node_modules/@fses/ai-chat/dist/chart-card/from-markdown.d.ts +11 -0
  29. package/node_modules/@fses/ai-chat/dist/chart-card/from-tool.d.ts +8 -0
  30. package/node_modules/@fses/ai-chat/dist/chart-card/options.d.ts +4 -0
  31. package/node_modules/@fses/ai-chat/dist/chart-card/trace.d.ts +19 -0
  32. package/node_modules/@fses/ai-chat/dist/chart-card/types.d.ts +133 -0
  33. package/node_modules/@fses/ai-chat/dist/components/CardRecommendationDeferredDraft.vue.d.ts +13 -0
  34. package/node_modules/@fses/ai-chat/dist/components/CardRecommendationDraft.vue.d.ts +18 -0
  35. package/node_modules/@fses/ai-chat/dist/components/ChartCardRenderer.vue.d.ts +11 -0
  36. package/node_modules/@fses/ai-chat/dist/components/ChatMessageItem.vue.d.ts +76 -0
  37. package/node_modules/@fses/ai-chat/dist/components/ChatMessageList.vue.d.ts +79 -0
  38. package/node_modules/@fses/ai-chat/dist/components/ChatSender.vue.d.ts +98 -0
  39. package/node_modules/@fses/ai-chat/dist/components/CollapsedToolActivity.vue.d.ts +9 -0
  40. package/node_modules/@fses/ai-chat/dist/components/ContextUsageRing.vue.d.ts +12 -0
  41. package/node_modules/@fses/ai-chat/dist/components/EChartsView.vue.d.ts +6 -0
  42. package/node_modules/@fses/ai-chat/dist/components/FsesAiChat.vue.d.ts +306 -0
  43. package/node_modules/@fses/ai-chat/dist/components/PlanDraftCard.vue.d.ts +19 -0
  44. package/node_modules/@fses/ai-chat/dist/components/ShellExecPanel.vue.d.ts +6 -0
  45. package/node_modules/@fses/ai-chat/dist/components/TaskTodoPlanBar.vue.d.ts +6 -0
  46. package/node_modules/@fses/ai-chat/dist/components/ThinkingShimmer.vue.d.ts +6 -0
  47. package/node_modules/@fses/ai-chat/dist/composables/context-usage.d.ts +11 -0
  48. package/node_modules/@fses/ai-chat/dist/composables/types.d.ts +465 -0
  49. package/node_modules/@fses/ai-chat/dist/composables/useChat.d.ts +2 -0
  50. package/node_modules/@fses/ai-chat/dist/composables/useSystemEChartsIcon.d.ts +11 -0
  51. package/node_modules/@fses/ai-chat/dist/fses-ai-chat.js +11408 -0
  52. package/node_modules/@fses/ai-chat/dist/fses-ai-chat.umd.cjs +25 -0
  53. package/node_modules/@fses/ai-chat/dist/index.d.ts +17 -0
  54. package/node_modules/@fses/ai-chat/dist/plugin.d.ts +8 -0
  55. package/node_modules/@fses/ai-chat/dist/style.css +1 -0
  56. package/node_modules/@fses/ai-chat/dist/utils/assistant-markdown.d.ts +11 -0
  57. package/node_modules/@fses/ai-chat/dist/utils/attachment-upload.d.ts +22 -0
  58. package/node_modules/@fses/ai-chat/dist/utils/card-recommendation-config-summary.d.ts +86 -0
  59. package/node_modules/@fses/ai-chat/dist/utils/card-recommendation-field-label.d.ts +24 -0
  60. package/node_modules/@fses/ai-chat/dist/utils/card-recommendation-source.d.ts +18 -0
  61. package/node_modules/@fses/ai-chat/dist/utils/card-recommendation-title-source.d.ts +12 -0
  62. package/node_modules/@fses/ai-chat/dist/utils/chart-card-visibility.d.ts +24 -0
  63. package/node_modules/@fses/ai-chat/dist/utils/derived-process-labels.d.ts +13 -0
  64. package/node_modules/@fses/ai-chat/dist/utils/echarts-recommendation-icon.d.ts +36 -0
  65. package/node_modules/@fses/ai-chat/dist/utils/group-messages.d.ts +30 -0
  66. package/node_modules/@fses/ai-chat/dist/utils/status-activity.d.ts +48 -0
  67. package/node_modules/@fses/ai-chat/dist/utils/system-echarts-template-icons.generated.d.ts +305 -0
  68. package/node_modules/@fses/ai-chat/dist/utils/system-echarts-template.d.ts +20 -0
  69. package/node_modules/@fses/ai-chat/dist/utils/task-todo-plan.d.ts +40 -0
  70. package/node_modules/@fses/ai-chat/dist/utils/workbench-echarts-theme.d.ts +35 -0
  71. package/node_modules/@fses/ai-chat/package.json +81 -0
  72. package/node_modules/@fses/workbench-card/LICENSE +9 -0
  73. package/node_modules/@fses/workbench-card/README.md +81 -0
  74. package/node_modules/@fses/workbench-card/dist/chart/index.d.ts +8 -0
  75. package/node_modules/@fses/workbench-card/dist/fses-workbench-card-echarts-protocol.js +2230 -0
  76. package/node_modules/@fses/workbench-card/dist/fses-workbench-card-renderers.js +33731 -0
  77. package/node_modules/@fses/workbench-card/dist/fses-workbench-card.js +21238 -0
  78. package/node_modules/@fses/workbench-card/dist/fses-workbench-card.umd.cjs +1 -0
  79. package/node_modules/@fses/workbench-card/dist/index.d.ts +11 -0
  80. package/node_modules/@fses/workbench-card/dist/registry/cardRegistry.d.ts +50 -0
  81. package/node_modules/@fses/workbench-card/dist/registry/compositeCardPatterns.d.ts +39 -0
  82. package/node_modules/@fses/workbench-card/dist/registry/echartsTemplateCategories.d.ts +20 -0
  83. package/node_modules/@fses/workbench-card/dist/registry/echartsTemplateRegistry.d.ts +1158 -0
  84. package/node_modules/@fses/workbench-card/dist/registry/echartsTemplateRegistry.generated.d.ts +1141 -0
  85. package/node_modules/@fses/workbench-card/dist/registry/echartsTemplateTypes.d.ts +76 -0
  86. package/node_modules/@fses/workbench-card/dist/registry/index.d.ts +10 -0
  87. package/node_modules/@fses/workbench-card/dist/renderers/WorkbenchBlockRenderer.vue.d.ts +55 -0
  88. package/node_modules/@fses/workbench-card/dist/renderers/chart/ChartRegistry.vue.d.ts +22 -0
  89. package/node_modules/@fses/workbench-card/dist/renderers/chart/EChartsProtocolRenderer.vue.d.ts +34 -0
  90. package/node_modules/@fses/workbench-card/dist/renderers/chart/chartRendererRegistry.d.ts +219 -0
  91. package/node_modules/@fses/workbench-card/dist/renderers/chart/chartResponsiveLayout.d.ts +47 -0
  92. package/node_modules/@fses/workbench-card/dist/renderers/chart/dynamicEchartOption.d.ts +30 -0
  93. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/adapter.d.ts +73 -0
  94. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/composite.converter.d.ts +11 -0
  95. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/configOnly.converter.d.ts +11 -0
  96. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/geo.converter.d.ts +10 -0
  97. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/graphic.converter.d.ts +10 -0
  98. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/layout.converter.d.ts +11 -0
  99. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/network.converter.d.ts +10 -0
  100. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/scene3D.converter.d.ts +11 -0
  101. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/series.converter.d.ts +10 -0
  102. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/table.converter.d.ts +10 -0
  103. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/timeline.converter.d.ts +11 -0
  104. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/transition.converter.d.ts +11 -0
  105. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/tree.converter.d.ts +10 -0
  106. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/converters/tuple.converter.d.ts +10 -0
  107. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/index.d.ts +9 -0
  108. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/merger.d.ts +16 -0
  109. package/node_modules/@fses/workbench-card/dist/renderers/chart/echarts-protocol/types.d.ts +447 -0
  110. package/node_modules/@fses/workbench-card/dist/renderers/chart/echartsRuntimeInteractions.d.ts +30 -0
  111. package/node_modules/@fses/workbench-card/dist/renderers/chart/echartsTitle.d.ts +13 -0
  112. package/node_modules/@fses/workbench-card/dist/renderers/chart/echartsTooltipPortal.d.ts +12 -0
  113. package/node_modules/@fses/workbench-card/dist/renderers/chart/types.d.ts +47 -0
  114. package/node_modules/@fses/workbench-card/dist/renderers/chart/useEchart.d.ts +29 -0
  115. package/node_modules/@fses/workbench-card/dist/renderers/chart/workbenchChartTheme.d.ts +36 -0
  116. package/node_modules/@fses/workbench-card/dist/renderers/custom-canvas/canvasLayoutBindings.d.ts +86 -0
  117. package/node_modules/@fses/workbench-card/dist/renderers/hostBridge.d.ts +61 -0
  118. package/node_modules/@fses/workbench-card/dist/renderers/index.d.ts +17 -0
  119. package/node_modules/@fses/workbench-card/dist/renderers/native/nativeBindings.d.ts +145 -0
  120. package/node_modules/@fses/workbench-card/dist/renderers/nested/nestedBlockBindings.d.ts +107 -0
  121. package/node_modules/@fses/workbench-card/dist/renderers/quickLinkDisplay.d.ts +24 -0
  122. package/node_modules/@fses/workbench-card/dist/renderers/reference-composite/referenceCompositeBindings.d.ts +171 -0
  123. package/node_modules/@fses/workbench-card/dist/renderers/reference-composite/referenceRiskAndStrategyBindings.d.ts +91 -0
  124. package/node_modules/@fses/workbench-card/dist/renderers/resizableTable.d.ts +51 -0
  125. package/node_modules/@fses/workbench-card/dist/renderers/style.css +1 -0
  126. package/node_modules/@fses/workbench-card/dist/renderers/tableDisplay.d.ts +25 -0
  127. package/node_modules/@fses/workbench-card/dist/renderers/useWorkbenchBlockRendererBindings.d.ts +580 -0
  128. package/node_modules/@fses/workbench-card/dist/shell/workbenchVisualShell.d.ts +48 -0
  129. package/node_modules/@fses/workbench-card/dist/style.css +1 -0
  130. package/node_modules/@fses/workbench-card/dist/types/block.d.ts +2002 -0
  131. package/node_modules/@fses/workbench-card/dist/types/canvas.d.ts +25 -0
  132. package/node_modules/@fses/workbench-card/dist/types/echartsProtocol.d.ts +445 -0
  133. package/node_modules/@fses/workbench-card/dist/types/index.d.ts +10 -0
  134. package/node_modules/@fses/workbench-card/dist/types/registry.d.ts +7 -0
  135. package/node_modules/@fses/workbench-card/dist/types/runtime.d.ts +34 -0
  136. package/node_modules/@fses/workbench-card/package.json +82 -0
  137. package/node_modules/@fses/workbench-card/src/chart/index.ts +8 -0
  138. package/node_modules/@fses/workbench-card/src/index.ts +13 -0
  139. package/node_modules/@fses/workbench-card/src/registry/cardRegistry.ts +476 -0
  140. package/node_modules/@fses/workbench-card/src/registry/compositeCardPatterns.ts +206 -0
  141. package/node_modules/@fses/workbench-card/src/registry/echartsTemplateCategories.ts +74 -0
  142. package/node_modules/@fses/workbench-card/src/registry/echartsTemplateRegistry.generated.ts +19951 -0
  143. package/node_modules/@fses/workbench-card/src/registry/echartsTemplateRegistry.ts +32 -0
  144. package/node_modules/@fses/workbench-card/src/registry/echartsTemplateTypes.ts +83 -0
  145. package/node_modules/@fses/workbench-card/src/registry/index.ts +10 -0
  146. package/node_modules/@fses/workbench-card/src/renderers/WorkbenchBlockRenderer.vue +2728 -0
  147. package/node_modules/@fses/workbench-card/src/renderers/chart/ChartRegistry.vue +221 -0
  148. package/node_modules/@fses/workbench-card/src/renderers/chart/EChartsProtocolRenderer.vue +304 -0
  149. package/node_modules/@fses/workbench-card/src/renderers/chart/chartRendererRegistry.ts +311 -0
  150. package/node_modules/@fses/workbench-card/src/renderers/chart/chartResponsiveLayout.ts +172 -0
  151. package/node_modules/@fses/workbench-card/src/renderers/chart/dynamicEchartOption.ts +127 -0
  152. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/adapter.ts +1349 -0
  153. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/composite.converter.ts +71 -0
  154. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/configOnly.converter.ts +45 -0
  155. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/geo.converter.ts +97 -0
  156. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/graphic.converter.ts +59 -0
  157. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/layout.converter.ts +53 -0
  158. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/network.converter.ts +82 -0
  159. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/scene3D.converter.ts +73 -0
  160. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/series.converter.ts +795 -0
  161. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/table.converter.ts +195 -0
  162. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/timeline.converter.ts +62 -0
  163. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/transition.converter.ts +58 -0
  164. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/tree.converter.ts +75 -0
  165. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/converters/tuple.converter.ts +112 -0
  166. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/index.ts +10 -0
  167. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/merger.ts +109 -0
  168. package/node_modules/@fses/workbench-card/src/renderers/chart/echarts-protocol/types.ts +515 -0
  169. package/node_modules/@fses/workbench-card/src/renderers/chart/echartsRuntimeInteractions.ts +450 -0
  170. package/node_modules/@fses/workbench-card/src/renderers/chart/echartsTitle.ts +94 -0
  171. package/node_modules/@fses/workbench-card/src/renderers/chart/echartsTooltipPortal.ts +140 -0
  172. package/node_modules/@fses/workbench-card/src/renderers/chart/types.ts +53 -0
  173. package/node_modules/@fses/workbench-card/src/renderers/chart/useEchart.ts +1820 -0
  174. package/node_modules/@fses/workbench-card/src/renderers/chart/workbenchChartTheme.ts +240 -0
  175. package/node_modules/@fses/workbench-card/src/renderers/custom-canvas/canvasLayoutBindings.ts +660 -0
  176. package/node_modules/@fses/workbench-card/src/renderers/hostBridge.ts +74 -0
  177. package/node_modules/@fses/workbench-card/src/renderers/index.ts +25 -0
  178. package/node_modules/@fses/workbench-card/src/renderers/native/nativeBindings.ts +1081 -0
  179. package/node_modules/@fses/workbench-card/src/renderers/nested/nestedBlockBindings.ts +1349 -0
  180. package/node_modules/@fses/workbench-card/src/renderers/quickLinkDisplay.ts +53 -0
  181. package/node_modules/@fses/workbench-card/src/renderers/reference-composite/referenceCompositeBindings.ts +3205 -0
  182. package/node_modules/@fses/workbench-card/src/renderers/reference-composite/referenceRiskAndStrategyBindings.ts +1004 -0
  183. package/node_modules/@fses/workbench-card/src/renderers/resizableTable.ts +136 -0
  184. package/node_modules/@fses/workbench-card/src/renderers/tableDisplay.ts +140 -0
  185. package/node_modules/@fses/workbench-card/src/renderers/useWorkbenchBlockRendererBindings.ts +3192 -0
  186. package/node_modules/@fses/workbench-card/src/shell/workbenchVisualShell.ts +228 -0
  187. package/node_modules/@fses/workbench-card/src/styles/workbench-card.css +343 -0
  188. package/node_modules/@fses/workbench-card/src/types/block.ts +2487 -0
  189. package/node_modules/@fses/workbench-card/src/types/canvas.ts +30 -0
  190. package/node_modules/@fses/workbench-card/src/types/echartsProtocol.ts +513 -0
  191. package/node_modules/@fses/workbench-card/src/types/index.ts +10 -0
  192. package/node_modules/@fses/workbench-card/src/types/registry.ts +17 -0
  193. package/node_modules/@fses/workbench-card/src/types/runtime.ts +31 -0
  194. package/node_modules/dompurify/LICENSE +568 -0
  195. package/node_modules/dompurify/README.md +523 -0
  196. package/node_modules/dompurify/dist/purify.cjs.d.ts +451 -0
  197. package/node_modules/dompurify/dist/purify.cjs.js +1472 -0
  198. package/node_modules/dompurify/dist/purify.cjs.js.map +1 -0
  199. package/node_modules/dompurify/dist/purify.es.d.mts +448 -0
  200. package/node_modules/dompurify/dist/purify.es.mjs +1470 -0
  201. package/node_modules/dompurify/dist/purify.es.mjs.map +1 -0
  202. package/node_modules/dompurify/dist/purify.js +1478 -0
  203. package/node_modules/dompurify/dist/purify.js.map +1 -0
  204. package/node_modules/dompurify/dist/purify.min.js +3 -0
  205. package/node_modules/dompurify/dist/purify.min.js.map +1 -0
  206. package/node_modules/dompurify/package.json +168 -0
  207. package/node_modules/zod/LICENSE +21 -0
  208. package/node_modules/zod/README.md +208 -0
  209. package/node_modules/zod/index.cjs +33 -0
  210. package/node_modules/zod/index.d.cts +4 -0
  211. package/node_modules/zod/index.d.ts +4 -0
  212. package/node_modules/zod/index.js +4 -0
  213. package/node_modules/zod/package.json +118 -0
  214. package/node_modules/zod/src/index.ts +4 -0
  215. package/node_modules/zod/src/v3/ZodError.ts +330 -0
  216. package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  217. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  218. package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  219. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  220. package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  221. package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  222. package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  223. package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  224. package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  225. package/node_modules/zod/src/v3/errors.ts +13 -0
  226. package/node_modules/zod/src/v3/external.ts +6 -0
  227. package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  228. package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  229. package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  230. package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  231. package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  232. package/node_modules/zod/src/v3/helpers/util.ts +224 -0
  233. package/node_modules/zod/src/v3/index.ts +4 -0
  234. package/node_modules/zod/src/v3/locales/en.ts +124 -0
  235. package/node_modules/zod/src/v3/standard-schema.ts +113 -0
  236. package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  237. package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  238. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  239. package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  240. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  241. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  242. package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  243. package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  244. package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  245. package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  246. package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  247. package/node_modules/zod/src/v3/tests/complex.test.ts +56 -0
  248. package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  249. package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  250. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  251. package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  252. package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  253. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  254. package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  255. package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  256. package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  257. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  258. package/node_modules/zod/src/v3/tests/function.test.ts +257 -0
  259. package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  260. package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  261. package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  262. package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  263. package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  264. package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  265. package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  266. package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  267. package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  268. package/node_modules/zod/src/v3/tests/nan.test.ts +21 -0
  269. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  270. package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  271. package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  272. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  273. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  274. package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  275. package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  276. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  277. package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  278. package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  279. package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  280. package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  281. package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  282. package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  283. package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  284. package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  285. package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  286. package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  287. package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  288. package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  289. package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  290. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  291. package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  292. package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  293. package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  294. package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  295. package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  296. package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  297. package/node_modules/zod/src/v3/types.ts +5136 -0
  298. package/node_modules/zod/src/v4/classic/checks.ts +30 -0
  299. package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  300. package/node_modules/zod/src/v4/classic/compat.ts +66 -0
  301. package/node_modules/zod/src/v4/classic/errors.ts +75 -0
  302. package/node_modules/zod/src/v4/classic/external.ts +50 -0
  303. package/node_modules/zod/src/v4/classic/index.ts +5 -0
  304. package/node_modules/zod/src/v4/classic/iso.ts +90 -0
  305. package/node_modules/zod/src/v4/classic/parse.ts +33 -0
  306. package/node_modules/zod/src/v4/classic/schemas.ts +2054 -0
  307. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  308. package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  309. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +210 -0
  310. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  311. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  312. package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  313. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  314. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +63 -0
  315. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +252 -0
  316. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  317. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  318. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +352 -0
  319. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  320. package/node_modules/zod/src/v4/classic/tests/date.test.ts +31 -0
  321. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +296 -0
  322. package/node_modules/zod/src/v4/classic/tests/default.test.ts +313 -0
  323. package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  324. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +619 -0
  325. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  326. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +527 -0
  327. package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  328. package/node_modules/zod/src/v4/classic/tests/file.test.ts +91 -0
  329. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +175 -0
  330. package/node_modules/zod/src/v4/classic/tests/function.test.ts +268 -0
  331. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  332. package/node_modules/zod/src/v4/classic/tests/index.test.ts +829 -0
  333. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +34 -0
  334. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +171 -0
  335. package/node_modules/zod/src/v4/classic/tests/json.test.ts +108 -0
  336. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  337. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +92 -0
  338. package/node_modules/zod/src/v4/classic/tests/map.test.ts +196 -0
  339. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  340. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  341. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +86 -0
  342. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  343. package/node_modules/zod/src/v4/classic/tests/number.test.ts +247 -0
  344. package/node_modules/zod/src/v4/classic/tests/object.test.ts +563 -0
  345. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +123 -0
  346. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +147 -0
  347. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +127 -0
  348. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +81 -0
  349. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +37 -0
  350. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +298 -0
  351. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  352. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  353. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  354. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  355. package/node_modules/zod/src/v4/classic/tests/record.test.ts +342 -0
  356. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +356 -0
  357. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +532 -0
  358. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +204 -0
  359. package/node_modules/zod/src/v4/classic/tests/set.test.ts +179 -0
  360. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +57 -0
  361. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +109 -0
  362. package/node_modules/zod/src/v4/classic/tests/string.test.ts +881 -0
  363. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +66 -0
  364. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +758 -0
  365. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +2314 -0
  366. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +250 -0
  367. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +163 -0
  368. package/node_modules/zod/src/v4/classic/tests/union.test.ts +94 -0
  369. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  370. package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  371. package/node_modules/zod/src/v4/core/api.ts +1594 -0
  372. package/node_modules/zod/src/v4/core/checks.ts +1283 -0
  373. package/node_modules/zod/src/v4/core/config.ts +15 -0
  374. package/node_modules/zod/src/v4/core/core.ts +134 -0
  375. package/node_modules/zod/src/v4/core/doc.ts +44 -0
  376. package/node_modules/zod/src/v4/core/errors.ts +424 -0
  377. package/node_modules/zod/src/v4/core/function.ts +176 -0
  378. package/node_modules/zod/src/v4/core/index.ts +15 -0
  379. package/node_modules/zod/src/v4/core/json-schema.ts +143 -0
  380. package/node_modules/zod/src/v4/core/parse.ts +94 -0
  381. package/node_modules/zod/src/v4/core/regexes.ts +135 -0
  382. package/node_modules/zod/src/v4/core/registries.ts +96 -0
  383. package/node_modules/zod/src/v4/core/schemas.ts +3842 -0
  384. package/node_modules/zod/src/v4/core/standard-schema.ts +64 -0
  385. package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  386. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  387. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  388. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  389. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  390. package/node_modules/zod/src/v4/core/to-json-schema.ts +977 -0
  391. package/node_modules/zod/src/v4/core/util.ts +775 -0
  392. package/node_modules/zod/src/v4/core/versions.ts +5 -0
  393. package/node_modules/zod/src/v4/core/zsf.ts +323 -0
  394. package/node_modules/zod/src/v4/index.ts +4 -0
  395. package/node_modules/zod/src/v4/locales/ar.ts +125 -0
  396. package/node_modules/zod/src/v4/locales/az.ts +121 -0
  397. package/node_modules/zod/src/v4/locales/be.ts +184 -0
  398. package/node_modules/zod/src/v4/locales/ca.ts +127 -0
  399. package/node_modules/zod/src/v4/locales/cs.ts +142 -0
  400. package/node_modules/zod/src/v4/locales/de.ts +124 -0
  401. package/node_modules/zod/src/v4/locales/en.ts +127 -0
  402. package/node_modules/zod/src/v4/locales/eo.ts +125 -0
  403. package/node_modules/zod/src/v4/locales/es.ts +125 -0
  404. package/node_modules/zod/src/v4/locales/fa.ts +134 -0
  405. package/node_modules/zod/src/v4/locales/fi.ts +131 -0
  406. package/node_modules/zod/src/v4/locales/fr-CA.ts +126 -0
  407. package/node_modules/zod/src/v4/locales/fr.ts +124 -0
  408. package/node_modules/zod/src/v4/locales/he.ts +125 -0
  409. package/node_modules/zod/src/v4/locales/hu.ts +126 -0
  410. package/node_modules/zod/src/v4/locales/id.ts +125 -0
  411. package/node_modules/zod/src/v4/locales/index.ts +39 -0
  412. package/node_modules/zod/src/v4/locales/it.ts +125 -0
  413. package/node_modules/zod/src/v4/locales/ja.ts +122 -0
  414. package/node_modules/zod/src/v4/locales/kh.ts +126 -0
  415. package/node_modules/zod/src/v4/locales/ko.ts +131 -0
  416. package/node_modules/zod/src/v4/locales/mk.ts +127 -0
  417. package/node_modules/zod/src/v4/locales/ms.ts +124 -0
  418. package/node_modules/zod/src/v4/locales/nl.ts +126 -0
  419. package/node_modules/zod/src/v4/locales/no.ts +124 -0
  420. package/node_modules/zod/src/v4/locales/ota.ts +125 -0
  421. package/node_modules/zod/src/v4/locales/pl.ts +126 -0
  422. package/node_modules/zod/src/v4/locales/ps.ts +133 -0
  423. package/node_modules/zod/src/v4/locales/pt.ts +123 -0
  424. package/node_modules/zod/src/v4/locales/ru.ts +184 -0
  425. package/node_modules/zod/src/v4/locales/sl.ts +126 -0
  426. package/node_modules/zod/src/v4/locales/sv.ts +127 -0
  427. package/node_modules/zod/src/v4/locales/ta.ts +125 -0
  428. package/node_modules/zod/src/v4/locales/th.ts +126 -0
  429. package/node_modules/zod/src/v4/locales/tr.ts +121 -0
  430. package/node_modules/zod/src/v4/locales/ua.ts +126 -0
  431. package/node_modules/zod/src/v4/locales/ur.ts +126 -0
  432. package/node_modules/zod/src/v4/locales/vi.ts +125 -0
  433. package/node_modules/zod/src/v4/locales/zh-CN.ts +123 -0
  434. package/node_modules/zod/src/v4/locales/zh-TW.ts +125 -0
  435. package/node_modules/zod/src/v4/mini/checks.ts +32 -0
  436. package/node_modules/zod/src/v4/mini/coerce.ts +22 -0
  437. package/node_modules/zod/src/v4/mini/external.ts +40 -0
  438. package/node_modules/zod/src/v4/mini/index.ts +3 -0
  439. package/node_modules/zod/src/v4/mini/iso.ts +62 -0
  440. package/node_modules/zod/src/v4/mini/parse.ts +1 -0
  441. package/node_modules/zod/src/v4/mini/schemas.ts +1579 -0
  442. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  443. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +51 -0
  444. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  445. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  446. package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  447. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +43 -0
  448. package/node_modules/zod/src/v4/mini/tests/index.test.ts +871 -0
  449. package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  450. package/node_modules/zod/src/v4/mini/tests/object.test.ts +185 -0
  451. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  452. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +275 -0
  453. package/node_modules/zod/src/v4/mini/tests/string.test.ts +299 -0
  454. package/node_modules/zod/src/v4-mini/index.ts +1 -0
  455. package/node_modules/zod/v3/ZodError.cjs +138 -0
  456. package/node_modules/zod/v3/ZodError.d.cts +164 -0
  457. package/node_modules/zod/v3/ZodError.d.ts +164 -0
  458. package/node_modules/zod/v3/ZodError.js +133 -0
  459. package/node_modules/zod/v3/errors.cjs +17 -0
  460. package/node_modules/zod/v3/errors.d.cts +5 -0
  461. package/node_modules/zod/v3/errors.d.ts +5 -0
  462. package/node_modules/zod/v3/errors.js +9 -0
  463. package/node_modules/zod/v3/external.cjs +22 -0
  464. package/node_modules/zod/v3/external.d.cts +6 -0
  465. package/node_modules/zod/v3/external.d.ts +6 -0
  466. package/node_modules/zod/v3/external.js +6 -0
  467. package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  468. package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  469. package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  470. package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  471. package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  472. package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  473. package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  474. package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  475. package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  476. package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  477. package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  478. package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  479. package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  480. package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  481. package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  482. package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  483. package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  484. package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  485. package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  486. package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  487. package/node_modules/zod/v3/helpers/util.cjs +137 -0
  488. package/node_modules/zod/v3/helpers/util.d.cts +85 -0
  489. package/node_modules/zod/v3/helpers/util.d.ts +85 -0
  490. package/node_modules/zod/v3/helpers/util.js +133 -0
  491. package/node_modules/zod/v3/index.cjs +33 -0
  492. package/node_modules/zod/v3/index.d.cts +4 -0
  493. package/node_modules/zod/v3/index.d.ts +4 -0
  494. package/node_modules/zod/v3/index.js +4 -0
  495. package/node_modules/zod/v3/locales/en.cjs +111 -0
  496. package/node_modules/zod/v3/locales/en.d.cts +3 -0
  497. package/node_modules/zod/v3/locales/en.d.ts +3 -0
  498. package/node_modules/zod/v3/locales/en.js +109 -0
  499. package/node_modules/zod/v3/standard-schema.cjs +2 -0
  500. package/node_modules/zod/v3/standard-schema.d.cts +102 -0
  501. package/node_modules/zod/v3/standard-schema.d.ts +102 -0
  502. package/node_modules/zod/v3/standard-schema.js +1 -0
  503. package/node_modules/zod/v3/types.cjs +3775 -0
  504. package/node_modules/zod/v3/types.d.cts +1031 -0
  505. package/node_modules/zod/v3/types.d.ts +1031 -0
  506. package/node_modules/zod/v3/types.js +3693 -0
  507. package/node_modules/zod/v4/classic/checks.cjs +32 -0
  508. package/node_modules/zod/v4/classic/checks.d.cts +1 -0
  509. package/node_modules/zod/v4/classic/checks.d.ts +1 -0
  510. package/node_modules/zod/v4/classic/checks.js +1 -0
  511. package/node_modules/zod/v4/classic/coerce.cjs +47 -0
  512. package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  513. package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  514. package/node_modules/zod/v4/classic/coerce.js +17 -0
  515. package/node_modules/zod/v4/classic/compat.cjs +57 -0
  516. package/node_modules/zod/v4/classic/compat.d.cts +46 -0
  517. package/node_modules/zod/v4/classic/compat.d.ts +46 -0
  518. package/node_modules/zod/v4/classic/compat.js +27 -0
  519. package/node_modules/zod/v4/classic/errors.cjs +67 -0
  520. package/node_modules/zod/v4/classic/errors.d.cts +30 -0
  521. package/node_modules/zod/v4/classic/errors.d.ts +30 -0
  522. package/node_modules/zod/v4/classic/errors.js +41 -0
  523. package/node_modules/zod/v4/classic/external.cjs +70 -0
  524. package/node_modules/zod/v4/classic/external.d.cts +13 -0
  525. package/node_modules/zod/v4/classic/external.d.ts +13 -0
  526. package/node_modules/zod/v4/classic/external.js +18 -0
  527. package/node_modules/zod/v4/classic/index.cjs +33 -0
  528. package/node_modules/zod/v4/classic/index.d.cts +4 -0
  529. package/node_modules/zod/v4/classic/index.d.ts +4 -0
  530. package/node_modules/zod/v4/classic/index.js +4 -0
  531. package/node_modules/zod/v4/classic/iso.cjs +60 -0
  532. package/node_modules/zod/v4/classic/iso.d.cts +22 -0
  533. package/node_modules/zod/v4/classic/iso.d.ts +22 -0
  534. package/node_modules/zod/v4/classic/iso.js +30 -0
  535. package/node_modules/zod/v4/classic/parse.cjs +32 -0
  536. package/node_modules/zod/v4/classic/parse.d.cts +23 -0
  537. package/node_modules/zod/v4/classic/parse.d.ts +23 -0
  538. package/node_modules/zod/v4/classic/parse.js +6 -0
  539. package/node_modules/zod/v4/classic/schemas.cjs +1109 -0
  540. package/node_modules/zod/v4/classic/schemas.d.cts +630 -0
  541. package/node_modules/zod/v4/classic/schemas.d.ts +630 -0
  542. package/node_modules/zod/v4/classic/schemas.js +1006 -0
  543. package/node_modules/zod/v4/core/api.cjs +1039 -0
  544. package/node_modules/zod/v4/core/api.d.cts +284 -0
  545. package/node_modules/zod/v4/core/api.d.ts +284 -0
  546. package/node_modules/zod/v4/core/api.js +906 -0
  547. package/node_modules/zod/v4/core/checks.cjs +591 -0
  548. package/node_modules/zod/v4/core/checks.d.cts +278 -0
  549. package/node_modules/zod/v4/core/checks.d.ts +278 -0
  550. package/node_modules/zod/v4/core/checks.js +565 -0
  551. package/node_modules/zod/v4/core/core.cjs +67 -0
  552. package/node_modules/zod/v4/core/core.d.cts +49 -0
  553. package/node_modules/zod/v4/core/core.d.ts +49 -0
  554. package/node_modules/zod/v4/core/core.js +61 -0
  555. package/node_modules/zod/v4/core/doc.cjs +39 -0
  556. package/node_modules/zod/v4/core/doc.d.cts +14 -0
  557. package/node_modules/zod/v4/core/doc.d.ts +14 -0
  558. package/node_modules/zod/v4/core/doc.js +35 -0
  559. package/node_modules/zod/v4/core/errors.cjs +226 -0
  560. package/node_modules/zod/v4/core/errors.d.cts +208 -0
  561. package/node_modules/zod/v4/core/errors.d.ts +208 -0
  562. package/node_modules/zod/v4/core/errors.js +195 -0
  563. package/node_modules/zod/v4/core/function.cjs +102 -0
  564. package/node_modules/zod/v4/core/function.d.cts +52 -0
  565. package/node_modules/zod/v4/core/function.d.ts +52 -0
  566. package/node_modules/zod/v4/core/function.js +75 -0
  567. package/node_modules/zod/v4/core/index.cjs +44 -0
  568. package/node_modules/zod/v4/core/index.d.cts +15 -0
  569. package/node_modules/zod/v4/core/index.d.ts +15 -0
  570. package/node_modules/zod/v4/core/index.js +15 -0
  571. package/node_modules/zod/v4/core/json-schema.cjs +2 -0
  572. package/node_modules/zod/v4/core/json-schema.d.cts +87 -0
  573. package/node_modules/zod/v4/core/json-schema.d.ts +87 -0
  574. package/node_modules/zod/v4/core/json-schema.js +1 -0
  575. package/node_modules/zod/v4/core/parse.cjs +87 -0
  576. package/node_modules/zod/v4/core/parse.d.cts +25 -0
  577. package/node_modules/zod/v4/core/parse.d.ts +25 -0
  578. package/node_modules/zod/v4/core/parse.js +57 -0
  579. package/node_modules/zod/v4/core/regexes.cjs +103 -0
  580. package/node_modules/zod/v4/core/regexes.d.cts +62 -0
  581. package/node_modules/zod/v4/core/regexes.d.ts +62 -0
  582. package/node_modules/zod/v4/core/regexes.js +95 -0
  583. package/node_modules/zod/v4/core/registries.cjs +56 -0
  584. package/node_modules/zod/v4/core/registries.d.cts +35 -0
  585. package/node_modules/zod/v4/core/registries.d.ts +35 -0
  586. package/node_modules/zod/v4/core/registries.js +51 -0
  587. package/node_modules/zod/v4/core/schemas.cjs +1748 -0
  588. package/node_modules/zod/v4/core/schemas.d.cts +1041 -0
  589. package/node_modules/zod/v4/core/schemas.d.ts +1041 -0
  590. package/node_modules/zod/v4/core/schemas.js +1717 -0
  591. package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  592. package/node_modules/zod/v4/core/standard-schema.d.cts +55 -0
  593. package/node_modules/zod/v4/core/standard-schema.d.ts +55 -0
  594. package/node_modules/zod/v4/core/standard-schema.js +1 -0
  595. package/node_modules/zod/v4/core/to-json-schema.cjs +854 -0
  596. package/node_modules/zod/v4/core/to-json-schema.d.cts +88 -0
  597. package/node_modules/zod/v4/core/to-json-schema.d.ts +88 -0
  598. package/node_modules/zod/v4/core/to-json-schema.js +849 -0
  599. package/node_modules/zod/v4/core/util.cjs +539 -0
  600. package/node_modules/zod/v4/core/util.d.cts +183 -0
  601. package/node_modules/zod/v4/core/util.d.ts +183 -0
  602. package/node_modules/zod/v4/core/util.js +493 -0
  603. package/node_modules/zod/v4/core/versions.cjs +8 -0
  604. package/node_modules/zod/v4/core/versions.d.cts +5 -0
  605. package/node_modules/zod/v4/core/versions.d.ts +5 -0
  606. package/node_modules/zod/v4/core/versions.js +5 -0
  607. package/node_modules/zod/v4/index.cjs +22 -0
  608. package/node_modules/zod/v4/index.d.cts +3 -0
  609. package/node_modules/zod/v4/index.d.ts +3 -0
  610. package/node_modules/zod/v4/index.js +3 -0
  611. package/node_modules/zod/v4/locales/ar.cjs +142 -0
  612. package/node_modules/zod/v4/locales/ar.d.cts +4 -0
  613. package/node_modules/zod/v4/locales/ar.d.ts +4 -0
  614. package/node_modules/zod/v4/locales/ar.js +116 -0
  615. package/node_modules/zod/v4/locales/az.cjs +141 -0
  616. package/node_modules/zod/v4/locales/az.d.cts +4 -0
  617. package/node_modules/zod/v4/locales/az.d.ts +4 -0
  618. package/node_modules/zod/v4/locales/az.js +115 -0
  619. package/node_modules/zod/v4/locales/be.cjs +190 -0
  620. package/node_modules/zod/v4/locales/be.d.cts +4 -0
  621. package/node_modules/zod/v4/locales/be.d.ts +4 -0
  622. package/node_modules/zod/v4/locales/be.js +164 -0
  623. package/node_modules/zod/v4/locales/ca.cjs +144 -0
  624. package/node_modules/zod/v4/locales/ca.d.cts +4 -0
  625. package/node_modules/zod/v4/locales/ca.d.ts +4 -0
  626. package/node_modules/zod/v4/locales/ca.js +118 -0
  627. package/node_modules/zod/v4/locales/cs.cjs +161 -0
  628. package/node_modules/zod/v4/locales/cs.d.cts +4 -0
  629. package/node_modules/zod/v4/locales/cs.d.ts +4 -0
  630. package/node_modules/zod/v4/locales/cs.js +135 -0
  631. package/node_modules/zod/v4/locales/de.cjs +142 -0
  632. package/node_modules/zod/v4/locales/de.d.cts +4 -0
  633. package/node_modules/zod/v4/locales/de.d.ts +4 -0
  634. package/node_modules/zod/v4/locales/de.js +116 -0
  635. package/node_modules/zod/v4/locales/en.cjs +145 -0
  636. package/node_modules/zod/v4/locales/en.d.cts +5 -0
  637. package/node_modules/zod/v4/locales/en.d.ts +5 -0
  638. package/node_modules/zod/v4/locales/en.js +117 -0
  639. package/node_modules/zod/v4/locales/eo.cjs +144 -0
  640. package/node_modules/zod/v4/locales/eo.d.cts +5 -0
  641. package/node_modules/zod/v4/locales/eo.d.ts +5 -0
  642. package/node_modules/zod/v4/locales/eo.js +116 -0
  643. package/node_modules/zod/v4/locales/es.cjs +143 -0
  644. package/node_modules/zod/v4/locales/es.d.cts +4 -0
  645. package/node_modules/zod/v4/locales/es.d.ts +4 -0
  646. package/node_modules/zod/v4/locales/es.js +117 -0
  647. package/node_modules/zod/v4/locales/fa.cjs +148 -0
  648. package/node_modules/zod/v4/locales/fa.d.cts +4 -0
  649. package/node_modules/zod/v4/locales/fa.d.ts +4 -0
  650. package/node_modules/zod/v4/locales/fa.js +122 -0
  651. package/node_modules/zod/v4/locales/fi.cjs +148 -0
  652. package/node_modules/zod/v4/locales/fi.d.cts +4 -0
  653. package/node_modules/zod/v4/locales/fi.d.ts +4 -0
  654. package/node_modules/zod/v4/locales/fi.js +122 -0
  655. package/node_modules/zod/v4/locales/fr-CA.cjs +143 -0
  656. package/node_modules/zod/v4/locales/fr-CA.d.cts +4 -0
  657. package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  658. package/node_modules/zod/v4/locales/fr-CA.js +117 -0
  659. package/node_modules/zod/v4/locales/fr.cjs +142 -0
  660. package/node_modules/zod/v4/locales/fr.d.cts +4 -0
  661. package/node_modules/zod/v4/locales/fr.d.ts +4 -0
  662. package/node_modules/zod/v4/locales/fr.js +116 -0
  663. package/node_modules/zod/v4/locales/he.cjs +143 -0
  664. package/node_modules/zod/v4/locales/he.d.cts +4 -0
  665. package/node_modules/zod/v4/locales/he.d.ts +4 -0
  666. package/node_modules/zod/v4/locales/he.js +117 -0
  667. package/node_modules/zod/v4/locales/hu.cjs +143 -0
  668. package/node_modules/zod/v4/locales/hu.d.cts +4 -0
  669. package/node_modules/zod/v4/locales/hu.d.ts +4 -0
  670. package/node_modules/zod/v4/locales/hu.js +117 -0
  671. package/node_modules/zod/v4/locales/id.cjs +142 -0
  672. package/node_modules/zod/v4/locales/id.d.cts +4 -0
  673. package/node_modules/zod/v4/locales/id.d.ts +4 -0
  674. package/node_modules/zod/v4/locales/id.js +116 -0
  675. package/node_modules/zod/v4/locales/index.cjs +84 -0
  676. package/node_modules/zod/v4/locales/index.d.cts +39 -0
  677. package/node_modules/zod/v4/locales/index.d.ts +39 -0
  678. package/node_modules/zod/v4/locales/index.js +39 -0
  679. package/node_modules/zod/v4/locales/it.cjs +143 -0
  680. package/node_modules/zod/v4/locales/it.d.cts +4 -0
  681. package/node_modules/zod/v4/locales/it.d.ts +4 -0
  682. package/node_modules/zod/v4/locales/it.js +117 -0
  683. package/node_modules/zod/v4/locales/ja.cjs +141 -0
  684. package/node_modules/zod/v4/locales/ja.d.cts +4 -0
  685. package/node_modules/zod/v4/locales/ja.d.ts +4 -0
  686. package/node_modules/zod/v4/locales/ja.js +115 -0
  687. package/node_modules/zod/v4/locales/kh.cjs +143 -0
  688. package/node_modules/zod/v4/locales/kh.d.cts +4 -0
  689. package/node_modules/zod/v4/locales/kh.d.ts +4 -0
  690. package/node_modules/zod/v4/locales/kh.js +117 -0
  691. package/node_modules/zod/v4/locales/ko.cjs +147 -0
  692. package/node_modules/zod/v4/locales/ko.d.cts +4 -0
  693. package/node_modules/zod/v4/locales/ko.d.ts +4 -0
  694. package/node_modules/zod/v4/locales/ko.js +121 -0
  695. package/node_modules/zod/v4/locales/mk.cjs +144 -0
  696. package/node_modules/zod/v4/locales/mk.d.cts +4 -0
  697. package/node_modules/zod/v4/locales/mk.d.ts +4 -0
  698. package/node_modules/zod/v4/locales/mk.js +118 -0
  699. package/node_modules/zod/v4/locales/ms.cjs +142 -0
  700. package/node_modules/zod/v4/locales/ms.d.cts +4 -0
  701. package/node_modules/zod/v4/locales/ms.d.ts +4 -0
  702. package/node_modules/zod/v4/locales/ms.js +116 -0
  703. package/node_modules/zod/v4/locales/nl.cjs +143 -0
  704. package/node_modules/zod/v4/locales/nl.d.cts +4 -0
  705. package/node_modules/zod/v4/locales/nl.d.ts +4 -0
  706. package/node_modules/zod/v4/locales/nl.js +117 -0
  707. package/node_modules/zod/v4/locales/no.cjs +142 -0
  708. package/node_modules/zod/v4/locales/no.d.cts +4 -0
  709. package/node_modules/zod/v4/locales/no.d.ts +4 -0
  710. package/node_modules/zod/v4/locales/no.js +116 -0
  711. package/node_modules/zod/v4/locales/ota.cjs +143 -0
  712. package/node_modules/zod/v4/locales/ota.d.cts +4 -0
  713. package/node_modules/zod/v4/locales/ota.d.ts +4 -0
  714. package/node_modules/zod/v4/locales/ota.js +117 -0
  715. package/node_modules/zod/v4/locales/pl.cjs +143 -0
  716. package/node_modules/zod/v4/locales/pl.d.cts +4 -0
  717. package/node_modules/zod/v4/locales/pl.d.ts +4 -0
  718. package/node_modules/zod/v4/locales/pl.js +117 -0
  719. package/node_modules/zod/v4/locales/ps.cjs +148 -0
  720. package/node_modules/zod/v4/locales/ps.d.cts +4 -0
  721. package/node_modules/zod/v4/locales/ps.d.ts +4 -0
  722. package/node_modules/zod/v4/locales/ps.js +122 -0
  723. package/node_modules/zod/v4/locales/pt.cjs +142 -0
  724. package/node_modules/zod/v4/locales/pt.d.cts +4 -0
  725. package/node_modules/zod/v4/locales/pt.d.ts +4 -0
  726. package/node_modules/zod/v4/locales/pt.js +116 -0
  727. package/node_modules/zod/v4/locales/ru.cjs +190 -0
  728. package/node_modules/zod/v4/locales/ru.d.cts +4 -0
  729. package/node_modules/zod/v4/locales/ru.d.ts +4 -0
  730. package/node_modules/zod/v4/locales/ru.js +164 -0
  731. package/node_modules/zod/v4/locales/sl.cjs +143 -0
  732. package/node_modules/zod/v4/locales/sl.d.cts +4 -0
  733. package/node_modules/zod/v4/locales/sl.d.ts +4 -0
  734. package/node_modules/zod/v4/locales/sl.js +117 -0
  735. package/node_modules/zod/v4/locales/sv.cjs +144 -0
  736. package/node_modules/zod/v4/locales/sv.d.cts +4 -0
  737. package/node_modules/zod/v4/locales/sv.d.ts +4 -0
  738. package/node_modules/zod/v4/locales/sv.js +118 -0
  739. package/node_modules/zod/v4/locales/ta.cjs +143 -0
  740. package/node_modules/zod/v4/locales/ta.d.cts +4 -0
  741. package/node_modules/zod/v4/locales/ta.d.ts +4 -0
  742. package/node_modules/zod/v4/locales/ta.js +117 -0
  743. package/node_modules/zod/v4/locales/th.cjs +143 -0
  744. package/node_modules/zod/v4/locales/th.d.cts +4 -0
  745. package/node_modules/zod/v4/locales/th.d.ts +4 -0
  746. package/node_modules/zod/v4/locales/th.js +117 -0
  747. package/node_modules/zod/v4/locales/tr.cjs +143 -0
  748. package/node_modules/zod/v4/locales/tr.d.cts +5 -0
  749. package/node_modules/zod/v4/locales/tr.d.ts +5 -0
  750. package/node_modules/zod/v4/locales/tr.js +115 -0
  751. package/node_modules/zod/v4/locales/ua.cjs +143 -0
  752. package/node_modules/zod/v4/locales/ua.d.cts +4 -0
  753. package/node_modules/zod/v4/locales/ua.d.ts +4 -0
  754. package/node_modules/zod/v4/locales/ua.js +117 -0
  755. package/node_modules/zod/v4/locales/ur.cjs +143 -0
  756. package/node_modules/zod/v4/locales/ur.d.cts +4 -0
  757. package/node_modules/zod/v4/locales/ur.d.ts +4 -0
  758. package/node_modules/zod/v4/locales/ur.js +117 -0
  759. package/node_modules/zod/v4/locales/vi.cjs +142 -0
  760. package/node_modules/zod/v4/locales/vi.d.cts +4 -0
  761. package/node_modules/zod/v4/locales/vi.d.ts +4 -0
  762. package/node_modules/zod/v4/locales/vi.js +116 -0
  763. package/node_modules/zod/v4/locales/zh-CN.cjs +142 -0
  764. package/node_modules/zod/v4/locales/zh-CN.d.cts +4 -0
  765. package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  766. package/node_modules/zod/v4/locales/zh-CN.js +116 -0
  767. package/node_modules/zod/v4/locales/zh-TW.cjs +143 -0
  768. package/node_modules/zod/v4/locales/zh-TW.d.cts +4 -0
  769. package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  770. package/node_modules/zod/v4/locales/zh-TW.js +117 -0
  771. package/node_modules/zod/v4/mini/checks.cjs +34 -0
  772. package/node_modules/zod/v4/mini/checks.d.cts +1 -0
  773. package/node_modules/zod/v4/mini/checks.d.ts +1 -0
  774. package/node_modules/zod/v4/mini/checks.js +1 -0
  775. package/node_modules/zod/v4/mini/coerce.cjs +47 -0
  776. package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  777. package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  778. package/node_modules/zod/v4/mini/coerce.js +17 -0
  779. package/node_modules/zod/v4/mini/external.cjs +62 -0
  780. package/node_modules/zod/v4/mini/external.d.cts +11 -0
  781. package/node_modules/zod/v4/mini/external.d.ts +11 -0
  782. package/node_modules/zod/v4/mini/external.js +13 -0
  783. package/node_modules/zod/v4/mini/index.cjs +32 -0
  784. package/node_modules/zod/v4/mini/index.d.cts +3 -0
  785. package/node_modules/zod/v4/mini/index.d.ts +3 -0
  786. package/node_modules/zod/v4/mini/index.js +3 -0
  787. package/node_modules/zod/v4/mini/iso.cjs +60 -0
  788. package/node_modules/zod/v4/mini/iso.d.cts +22 -0
  789. package/node_modules/zod/v4/mini/iso.d.ts +22 -0
  790. package/node_modules/zod/v4/mini/iso.js +30 -0
  791. package/node_modules/zod/v4/mini/parse.cjs +8 -0
  792. package/node_modules/zod/v4/mini/parse.d.cts +1 -0
  793. package/node_modules/zod/v4/mini/parse.d.ts +1 -0
  794. package/node_modules/zod/v4/mini/parse.js +1 -0
  795. package/node_modules/zod/v4/mini/schemas.cjs +839 -0
  796. package/node_modules/zod/v4/mini/schemas.d.cts +356 -0
  797. package/node_modules/zod/v4/mini/schemas.d.ts +356 -0
  798. package/node_modules/zod/v4/mini/schemas.js +732 -0
  799. package/node_modules/zod/v4-mini/index.cjs +17 -0
  800. package/node_modules/zod/v4-mini/index.d.cts +1 -0
  801. package/node_modules/zod/v4-mini/index.d.ts +1 -0
  802. package/node_modules/zod/v4-mini/index.js +1 -0
  803. package/package.json +100 -101
  804. package/dist/index-DXag5A9X.js +0 -1096
@@ -0,0 +1,25 @@
1
+ (function(Le,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("@ant-design/icons-vue"),require("ant-design-vue"),require("marked"),require("@opentiny/tiny-robot"),require("echarts"),require("@fses/workbench-card/chart")):typeof define=="function"&&define.amd?define(["exports","vue","@ant-design/icons-vue","ant-design-vue","marked","@opentiny/tiny-robot","echarts","@fses/workbench-card/chart"],n):(Le=typeof globalThis<"u"?globalThis:Le||self,n(Le.FsesAiChat={},Le.Vue,Le.AntDesignIconsVue,Le.AntDesignVue,Le.marked,Le.TinyRobot,Le.echarts,Le.FsesWorkbenchCard))})(this,function(Le,n,Ze,ua,co,Yr,dl,Jr){"use strict";function ul(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const c=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(r,o,c.get?c:{enumerable:!0,get:()=>e[o]})}}return r.default=e,Object.freeze(r)}const ml=ul(dl);/*! @license DOMPurify 3.4.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.1/LICENSE */const{entries:lo,setPrototypeOf:uo,isFrozen:fl,getPrototypeOf:pl,getOwnPropertyDescriptor:hl}=Object;let{freeze:jt,seal:an,create:ma}=Object,{apply:Zr,construct:Xr}=typeof Reflect<"u"&&Reflect;jt||(jt=function(r){return r}),an||(an=function(r){return r}),Zr||(Zr=function(r,o){for(var c=arguments.length,d=new Array(c>2?c-2:0),u=2;u<c;u++)d[u-2]=arguments[u];return r.apply(o,d)}),Xr||(Xr=function(r){for(var o=arguments.length,c=new Array(o>1?o-1:0),d=1;d<o;d++)c[d-1]=arguments[d];return new r(...c)});const Fa=Et(Array.prototype.forEach),gl=Et(Array.prototype.lastIndexOf),mo=Et(Array.prototype.pop),$a=Et(Array.prototype.push),yl=Et(Array.prototype.splice),Kt=Array.isArray,Va=Et(String.prototype.toLowerCase),es=Et(String.prototype.toString),fo=Et(String.prototype.match),fa=Et(String.prototype.replace),po=Et(String.prototype.indexOf),bl=Et(String.prototype.trim),kl=Et(Number.prototype.toString),_l=Et(Boolean.prototype.toString),ho=typeof BigInt>"u"?null:Et(BigInt.prototype.toString),go=typeof Symbol>"u"?null:Et(Symbol.prototype.toString),yt=Et(Object.prototype.hasOwnProperty),za=Et(Object.prototype.toString),zt=Et(RegExp.prototype.test),hr=Cl(TypeError);function Et(e){return function(r){r instanceof RegExp&&(r.lastIndex=0);for(var o=arguments.length,c=new Array(o>1?o-1:0),d=1;d<o;d++)c[d-1]=arguments[d];return Zr(e,r,c)}}function Cl(e){return function(){for(var r=arguments.length,o=new Array(r),c=0;c<r;c++)o[c]=arguments[c];return Xr(e,o)}}function Se(e,r){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Va;if(uo&&uo(e,null),!Kt(r))return e;let c=r.length;for(;c--;){let d=r[c];if(typeof d=="string"){const u=o(d);u!==d&&(fl(r)||(r[c]=u),d=u)}e[d]=!0}return e}function Sl(e){for(let r=0;r<e.length;r++)yt(e,r)||(e[r]=null);return e}function Jt(e){const r=ma(null);for(const[o,c]of lo(e))yt(e,o)&&(Kt(c)?r[o]=Sl(c):c&&typeof c=="object"&&c.constructor===Object?r[o]=Jt(c):r[o]=c);return r}function Al(e){switch(typeof e){case"string":return e;case"number":return kl(e);case"boolean":return _l(e);case"bigint":return ho?ho(e):"0";case"symbol":return go?go(e):"Symbol()";case"undefined":return za(e);case"function":case"object":{if(e===null)return za(e);const r=e,o=pa(r,"toString");if(typeof o=="function"){const c=o(r);return typeof c=="string"?c:za(c)}return za(e)}default:return za(e)}}function pa(e,r){for(;e!==null;){const c=hl(e,r);if(c){if(c.get)return Et(c.get);if(typeof c.value=="function")return Et(c.value)}e=pl(e)}function o(){return null}return o}function wl(e){try{return zt(e,""),!0}catch{return!1}}const yo=jt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),ts=jt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),ns=jt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Tl=jt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),as=jt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),El=jt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),bo=jt(["#text"]),ko=jt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),rs=jt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),_o=jt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),gr=jt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),xl=an(/\{\{[\w\W]*|[\w\W]*\}\}/gm),Bl=an(/<%[\w\W]*|[\w\W]*%>/gm),Il=an(/\$\{[\w\W]*/gm),Rl=an(/^data-[\-\w.\u00B7-\uFFFF]+$/),vl=an(/^aria-[\-\w]+$/),Co=an(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Dl=an(/^(?:\w+script|data):/i),Nl=an(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),So=an(/^html$/i),Ll=an(/^[a-z][.\w]*(-[.\w]+)+$/i);var Ao=Object.freeze({__proto__:null,ARIA_ATTR:vl,ATTR_WHITESPACE:Nl,CUSTOM_ELEMENT:Ll,DATA_ATTR:Rl,DOCTYPE_NAME:So,ERB_EXPR:Bl,IS_ALLOWED_URI:Co,IS_SCRIPT_OR_DATA:Dl,MUSTACHE_EXPR:xl,TMPLIT_EXPR:Il});const Ga={element:1,text:3,progressingInstruction:7,comment:8,document:9},Pl=function(){return typeof window>"u"?null:window},Ml=function(r,o){if(typeof r!="object"||typeof r.createPolicy!="function")return null;let c=null;const d="data-tt-policy-suffix";o&&o.hasAttribute(d)&&(c=o.getAttribute(d));const u="dompurify"+(c?"#"+c:"");try{return r.createPolicy(u,{createHTML(y){return y},createScriptURL(y){return y}})}catch{return console.warn("TrustedTypes policy "+u+" could not be created."),null}},wo=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function To(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Pl();const r=he=>To(he);if(r.version="3.4.1",r.removed=[],!e||!e.document||e.document.nodeType!==Ga.document||!e.Element)return r.isSupported=!1,r;let{document:o}=e;const c=o,d=c.currentScript,{DocumentFragment:u,HTMLTemplateElement:y,Node:_,Element:T,NodeFilter:B,NamedNodeMap:U=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:D,DOMParser:I,trustedTypes:x}=e,H=T.prototype,q=pa(H,"cloneNode"),j=pa(H,"remove"),Ne=pa(H,"nextSibling"),oe=pa(H,"childNodes"),ue=pa(H,"parentNode");if(typeof y=="function"){const he=o.createElement("template");he.content&&he.content.ownerDocument&&(o=he.content.ownerDocument)}let ce,ge="";const{implementation:de,createNodeIterator:te,createDocumentFragment:Pe,getElementsByTagName:ne}=o,{importNode:fe}=c;let ke=wo();r.isSupported=typeof lo=="function"&&typeof ue=="function"&&de&&de.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:it,ERB_EXPR:St,TMPLIT_EXPR:bt,DATA_ATTR:qe,ARIA_ATTR:ct,IS_SCRIPT_OR_DATA:Mt,ATTR_WHITESPACE:xt,CUSTOM_ELEMENT:rt}=Ao;let{IS_ALLOWED_URI:qt}=Ao,we=null;const dt=Se({},[...yo,...ts,...ns,...as,...bo]);let Fe=null;const ut=Se({},[...ko,...rs,..._o,...gr]);let Ie=Object.seal(ma(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),v=null,R=null;const $=Object.seal(ma(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let w=!0,Q=!0,ee=!1,M=!0,V=!1,K=!0,ie=!1,xe=!1,Ce=!1,Be=!1,Ae=!1,ot=!1,je=!0,Ke=!1;const pt="user-content-";let C=!0,z=!1,ae={},Y=null;const ye=Se({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Te=null;const Me=Se({},["audio","video","img","source","image","track"]);let tt=null;const Dt=Se({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ht="http://www.w3.org/1998/Math/MathML",f="http://www.w3.org/2000/svg",b="http://www.w3.org/1999/xhtml";let E=b,J=!1,_e=null;const Re=Se({},[ht,f,b],es);let nt=Se({},["mi","mo","mn","ms","mtext"]),Ot=Se({},["annotation-xml"]);const mt=Se({},["title","style","font","a","script"]);let Xe=null;const Bt=["application/xhtml+xml","text/html"],Zt="text/html";let et=null,Wt=null;const aa=o.createElement("form"),dn=function(k){return k instanceof RegExp||k instanceof Function},kn=function(){let k=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Wt&&Wt===k)return;(!k||typeof k!="object")&&(k={}),k=Jt(k),Xe=Bt.indexOf(k.PARSER_MEDIA_TYPE)===-1?Zt:k.PARSER_MEDIA_TYPE,et=Xe==="application/xhtml+xml"?es:Va,we=yt(k,"ALLOWED_TAGS")&&Kt(k.ALLOWED_TAGS)?Se({},k.ALLOWED_TAGS,et):dt,Fe=yt(k,"ALLOWED_ATTR")&&Kt(k.ALLOWED_ATTR)?Se({},k.ALLOWED_ATTR,et):ut,_e=yt(k,"ALLOWED_NAMESPACES")&&Kt(k.ALLOWED_NAMESPACES)?Se({},k.ALLOWED_NAMESPACES,es):Re,tt=yt(k,"ADD_URI_SAFE_ATTR")&&Kt(k.ADD_URI_SAFE_ATTR)?Se(Jt(Dt),k.ADD_URI_SAFE_ATTR,et):Dt,Te=yt(k,"ADD_DATA_URI_TAGS")&&Kt(k.ADD_DATA_URI_TAGS)?Se(Jt(Me),k.ADD_DATA_URI_TAGS,et):Me,Y=yt(k,"FORBID_CONTENTS")&&Kt(k.FORBID_CONTENTS)?Se({},k.FORBID_CONTENTS,et):ye,v=yt(k,"FORBID_TAGS")&&Kt(k.FORBID_TAGS)?Se({},k.FORBID_TAGS,et):Jt({}),R=yt(k,"FORBID_ATTR")&&Kt(k.FORBID_ATTR)?Se({},k.FORBID_ATTR,et):Jt({}),ae=yt(k,"USE_PROFILES")?k.USE_PROFILES&&typeof k.USE_PROFILES=="object"?Jt(k.USE_PROFILES):k.USE_PROFILES:!1,w=k.ALLOW_ARIA_ATTR!==!1,Q=k.ALLOW_DATA_ATTR!==!1,ee=k.ALLOW_UNKNOWN_PROTOCOLS||!1,M=k.ALLOW_SELF_CLOSE_IN_ATTR!==!1,V=k.SAFE_FOR_TEMPLATES||!1,K=k.SAFE_FOR_XML!==!1,ie=k.WHOLE_DOCUMENT||!1,Be=k.RETURN_DOM||!1,Ae=k.RETURN_DOM_FRAGMENT||!1,ot=k.RETURN_TRUSTED_TYPE||!1,Ce=k.FORCE_BODY||!1,je=k.SANITIZE_DOM!==!1,Ke=k.SANITIZE_NAMED_PROPS||!1,C=k.KEEP_CONTENT!==!1,z=k.IN_PLACE||!1,qt=wl(k.ALLOWED_URI_REGEXP)?k.ALLOWED_URI_REGEXP:Co,E=typeof k.NAMESPACE=="string"?k.NAMESPACE:b,nt=yt(k,"MATHML_TEXT_INTEGRATION_POINTS")&&k.MATHML_TEXT_INTEGRATION_POINTS&&typeof k.MATHML_TEXT_INTEGRATION_POINTS=="object"?Jt(k.MATHML_TEXT_INTEGRATION_POINTS):Se({},["mi","mo","mn","ms","mtext"]),Ot=yt(k,"HTML_INTEGRATION_POINTS")&&k.HTML_INTEGRATION_POINTS&&typeof k.HTML_INTEGRATION_POINTS=="object"?Jt(k.HTML_INTEGRATION_POINTS):Se({},["annotation-xml"]);const P=yt(k,"CUSTOM_ELEMENT_HANDLING")&&k.CUSTOM_ELEMENT_HANDLING&&typeof k.CUSTOM_ELEMENT_HANDLING=="object"?Jt(k.CUSTOM_ELEMENT_HANDLING):ma(null);if(Ie=ma(null),yt(P,"tagNameCheck")&&dn(P.tagNameCheck)&&(Ie.tagNameCheck=P.tagNameCheck),yt(P,"attributeNameCheck")&&dn(P.attributeNameCheck)&&(Ie.attributeNameCheck=P.attributeNameCheck),yt(P,"allowCustomizedBuiltInElements")&&typeof P.allowCustomizedBuiltInElements=="boolean"&&(Ie.allowCustomizedBuiltInElements=P.allowCustomizedBuiltInElements),V&&(Q=!1),Ae&&(Be=!0),ae&&(we=Se({},bo),Fe=ma(null),ae.html===!0&&(Se(we,yo),Se(Fe,ko)),ae.svg===!0&&(Se(we,ts),Se(Fe,rs),Se(Fe,gr)),ae.svgFilters===!0&&(Se(we,ns),Se(Fe,rs),Se(Fe,gr)),ae.mathMl===!0&&(Se(we,as),Se(Fe,_o),Se(Fe,gr))),$.tagCheck=null,$.attributeCheck=null,yt(k,"ADD_TAGS")&&(typeof k.ADD_TAGS=="function"?$.tagCheck=k.ADD_TAGS:Kt(k.ADD_TAGS)&&(we===dt&&(we=Jt(we)),Se(we,k.ADD_TAGS,et))),yt(k,"ADD_ATTR")&&(typeof k.ADD_ATTR=="function"?$.attributeCheck=k.ADD_ATTR:Kt(k.ADD_ATTR)&&(Fe===ut&&(Fe=Jt(Fe)),Se(Fe,k.ADD_ATTR,et))),yt(k,"ADD_URI_SAFE_ATTR")&&Kt(k.ADD_URI_SAFE_ATTR)&&Se(tt,k.ADD_URI_SAFE_ATTR,et),yt(k,"FORBID_CONTENTS")&&Kt(k.FORBID_CONTENTS)&&(Y===ye&&(Y=Jt(Y)),Se(Y,k.FORBID_CONTENTS,et)),yt(k,"ADD_FORBID_CONTENTS")&&Kt(k.ADD_FORBID_CONTENTS)&&(Y===ye&&(Y=Jt(Y)),Se(Y,k.ADD_FORBID_CONTENTS,et)),C&&(we["#text"]=!0),ie&&Se(we,["html","head","body"]),we.table&&(Se(we,["tbody"]),delete v.tbody),k.TRUSTED_TYPES_POLICY){if(typeof k.TRUSTED_TYPES_POLICY.createHTML!="function")throw hr('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof k.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw hr('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');ce=k.TRUSTED_TYPES_POLICY,ge=ce.createHTML("")}else ce===void 0&&(ce=Ml(x,d)),ce!==null&&typeof ge=="string"&&(ge=ce.createHTML(""));jt&&jt(k),Wt=k},Rn=Se({},[...ts,...ns,...Tl]),vn=Se({},[...as,...El]),_n=function(k){let P=ue(k);(!P||!P.tagName)&&(P={namespaceURI:E,tagName:"template"});const L=Va(k.tagName),me=Va(P.tagName);return _e[k.namespaceURI]?k.namespaceURI===f?P.namespaceURI===b?L==="svg":P.namespaceURI===ht?L==="svg"&&(me==="annotation-xml"||nt[me]):!!Rn[L]:k.namespaceURI===ht?P.namespaceURI===b?L==="math":P.namespaceURI===f?L==="math"&&Ot[me]:!!vn[L]:k.namespaceURI===b?P.namespaceURI===f&&!Ot[me]||P.namespaceURI===ht&&!nt[me]?!1:!vn[L]&&(mt[L]||!Rn[L]):!!(Xe==="application/xhtml+xml"&&_e[k.namespaceURI]):!1},Z=function(k){$a(r.removed,{element:k});try{ue(k).removeChild(k)}catch{j(k)}},le=function(k,P){try{$a(r.removed,{attribute:P.getAttributeNode(k),from:P})}catch{$a(r.removed,{attribute:null,from:P})}if(P.removeAttribute(k),k==="is")if(Be||Ae)try{Z(P)}catch{}else try{P.setAttribute(k,"")}catch{}},Oe=function(k){let P=null,L=null;if(Ce)k="<remove></remove>"+k;else{const Ee=fo(k,/^[\r\n\t ]+/);L=Ee&&Ee[0]}Xe==="application/xhtml+xml"&&E===b&&(k='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+k+"</body></html>");const me=ce?ce.createHTML(k):k;if(E===b)try{P=new I().parseFromString(me,Xe)}catch{}if(!P||!P.documentElement){P=de.createDocument(E,"template",null);try{P.documentElement.innerHTML=J?ge:me}catch{}}const be=P.body||P.documentElement;return k&&L&&be.insertBefore(o.createTextNode(L),be.childNodes[0]||null),E===b?ne.call(P,ie?"html":"body")[0]:ie?P.documentElement:be},ve=function(k){return te.call(k.ownerDocument||k,k,B.SHOW_ELEMENT|B.SHOW_COMMENT|B.SHOW_TEXT|B.SHOW_PROCESSING_INSTRUCTION|B.SHOW_CDATA_SECTION,null)},Ge=function(k){return k instanceof D&&(typeof k.nodeName!="string"||typeof k.textContent!="string"||typeof k.removeChild!="function"||!(k.attributes instanceof U)||typeof k.removeAttribute!="function"||typeof k.setAttribute!="function"||typeof k.namespaceURI!="string"||typeof k.insertBefore!="function"||typeof k.hasChildNodes!="function")},We=function(k){return typeof _=="function"&&k instanceof _};function Ye(he,k,P){Fa(he,L=>{L.call(r,k,P,Wt)})}const Ft=function(k){let P=null;if(Ye(ke.beforeSanitizeElements,k,null),Ge(k))return Z(k),!0;const L=et(k.nodeName);if(Ye(ke.uponSanitizeElement,k,{tagName:L,allowedTags:we}),K&&k.hasChildNodes()&&!We(k.firstElementChild)&&zt(/<[/\w!]/g,k.innerHTML)&&zt(/<[/\w!]/g,k.textContent)||K&&k.namespaceURI===b&&L==="style"&&We(k.firstElementChild)||k.nodeType===Ga.progressingInstruction||K&&k.nodeType===Ga.comment&&zt(/<[/\w]/g,k.data))return Z(k),!0;if(v[L]||!($.tagCheck instanceof Function&&$.tagCheck(L))&&!we[L]){if(!v[L]&&Nn(L)&&(Ie.tagNameCheck instanceof RegExp&&zt(Ie.tagNameCheck,L)||Ie.tagNameCheck instanceof Function&&Ie.tagNameCheck(L)))return!1;if(C&&!Y[L]){const me=ue(k)||k.parentNode,be=oe(k)||k.childNodes;if(be&&me){const Ee=be.length;for(let st=Ee-1;st>=0;--st){const $t=q(be[st],!0);me.insertBefore($t,Ne(k))}}}return Z(k),!0}return k instanceof T&&!_n(k)||(L==="noscript"||L==="noembed"||L==="noframes")&&zt(/<\/no(script|embed|frames)/i,k.innerHTML)?(Z(k),!0):(V&&k.nodeType===Ga.text&&(P=k.textContent,Fa([it,St,bt],me=>{P=fa(P,me," ")}),k.textContent!==P&&($a(r.removed,{element:k.cloneNode()}),k.textContent=P)),Ye(ke.afterSanitizeElements,k,null),!1)},en=function(k,P,L){if(R[P]||je&&(P==="id"||P==="name")&&(L in o||L in aa))return!1;if(!(Q&&!R[P]&&zt(qe,P))){if(!(w&&zt(ct,P))){if(!($.attributeCheck instanceof Function&&$.attributeCheck(P,k))){if(!Fe[P]||R[P]){if(!(Nn(k)&&(Ie.tagNameCheck instanceof RegExp&&zt(Ie.tagNameCheck,k)||Ie.tagNameCheck instanceof Function&&Ie.tagNameCheck(k))&&(Ie.attributeNameCheck instanceof RegExp&&zt(Ie.attributeNameCheck,P)||Ie.attributeNameCheck instanceof Function&&Ie.attributeNameCheck(P,k))||P==="is"&&Ie.allowCustomizedBuiltInElements&&(Ie.tagNameCheck instanceof RegExp&&zt(Ie.tagNameCheck,L)||Ie.tagNameCheck instanceof Function&&Ie.tagNameCheck(L))))return!1}else if(!tt[P]){if(!zt(qt,fa(L,xt,""))){if(!((P==="src"||P==="xlink:href"||P==="href")&&k!=="script"&&po(L,"data:")===0&&Te[k])){if(!(ee&&!zt(Mt,fa(L,xt,"")))){if(L)return!1}}}}}}}return!0},Dn=Se({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Nn=function(k){return!Dn[Va(k)]&&zt(rt,k)},At=function(k){Ye(ke.beforeSanitizeAttributes,k,null);const{attributes:P}=k;if(!P||Ge(k))return;const L={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Fe,forceKeepAttr:void 0};let me=P.length;for(;me--;){const be=P[me],{name:Ee,namespaceURI:st,value:$t}=be,It=et(Ee),Un=$t;let ft=Ee==="value"?Un:bl(Un);if(L.attrName=It,L.attrValue=ft,L.keepAttr=!0,L.forceKeepAttr=void 0,Ye(ke.uponSanitizeAttribute,k,L),ft=L.attrValue,Ke&&(It==="id"||It==="name")&&po(ft,pt)!==0&&(le(Ee,k),ft=pt+ft),K&&zt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,ft)){le(Ee,k);continue}if(It==="attributename"&&fo(ft,"href")){le(Ee,k);continue}if(L.forceKeepAttr)continue;if(!L.keepAttr){le(Ee,k);continue}if(!M&&zt(/\/>/i,ft)){le(Ee,k);continue}V&&Fa([it,St,bt],xa=>{ft=fa(ft,xa," ")});const Ea=et(k.nodeName);if(!en(Ea,It,ft)){le(Ee,k);continue}if(ce&&typeof x=="object"&&typeof x.getAttributeType=="function"&&!st)switch(x.getAttributeType(Ea,It)){case"TrustedHTML":{ft=ce.createHTML(ft);break}case"TrustedScriptURL":{ft=ce.createScriptURL(ft);break}}if(ft!==Un)try{st?k.setAttributeNS(st,Ee,ft):k.setAttribute(Ee,ft),Ge(k)?Z(k):mo(r.removed)}catch{le(Ee,k)}}Ye(ke.afterSanitizeAttributes,k,null)},pn=function(k){let P=null;const L=ve(k);for(Ye(ke.beforeSanitizeShadowDOM,k,null);P=L.nextNode();)Ye(ke.uponSanitizeShadowNode,P,null),Ft(P),At(P),P.content instanceof u&&pn(P.content);Ye(ke.afterSanitizeShadowDOM,k,null)};return r.sanitize=function(he){let k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},P=null,L=null,me=null,be=null;if(J=!he,J&&(he="<!-->"),typeof he!="string"&&!We(he)&&(he=Al(he),typeof he!="string"))throw hr("dirty is not a string, aborting");if(!r.isSupported)return he;if(xe||kn(k),r.removed=[],typeof he=="string"&&(z=!1),z){const $t=he.nodeName;if(typeof $t=="string"){const It=et($t);if(!we[It]||v[It])throw hr("root node is forbidden and cannot be sanitized in-place")}}else if(he instanceof _)P=Oe("<!---->"),L=P.ownerDocument.importNode(he,!0),L.nodeType===Ga.element&&L.nodeName==="BODY"||L.nodeName==="HTML"?P=L:P.appendChild(L);else{if(!Be&&!V&&!ie&&he.indexOf("<")===-1)return ce&&ot?ce.createHTML(he):he;if(P=Oe(he),!P)return Be?null:ot?ge:""}P&&Ce&&Z(P.firstChild);const Ee=ve(z?he:P);for(;me=Ee.nextNode();)Ft(me),At(me),me.content instanceof u&&pn(me.content);if(z)return he;if(Be){if(V){P.normalize();let $t=P.innerHTML;Fa([it,St,bt],It=>{$t=fa($t,It," ")}),P.innerHTML=$t}if(Ae)for(be=Pe.call(P.ownerDocument);P.firstChild;)be.appendChild(P.firstChild);else be=P;return(Fe.shadowroot||Fe.shadowrootmode)&&(be=fe.call(c,be,!0)),be}let st=ie?P.outerHTML:P.innerHTML;return ie&&we["!doctype"]&&P.ownerDocument&&P.ownerDocument.doctype&&P.ownerDocument.doctype.name&&zt(So,P.ownerDocument.doctype.name)&&(st="<!DOCTYPE "+P.ownerDocument.doctype.name+`>
2
+ `+st),V&&Fa([it,St,bt],$t=>{st=fa(st,$t," ")}),ce&&ot?ce.createHTML(st):st},r.setConfig=function(){let he=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};kn(he),xe=!0},r.clearConfig=function(){Wt=null,xe=!1},r.isValidAttribute=function(he,k,P){Wt||kn({});const L=et(he),me=et(k);return en(L,me,P)},r.addHook=function(he,k){typeof k=="function"&&$a(ke[he],k)},r.removeHook=function(he,k){if(k!==void 0){const P=gl(ke[he],k);return P===-1?void 0:yl(ke[he],P,1)[0]}return mo(ke[he])},r.removeHooks=function(he){ke[he]=[]},r.removeAllHooks=function(){ke=wo()},r}var Eo=To();function rn(e){return e.replace(/\*\*/g,"").replace(/`/g,"").trim()}function ss(e){return e.trim().replace(/^\|/,"").replace(/\|$/,"").split("|").map(r=>rn(r))}function os(e){return/^\s*\|.+\|\s*$/.test(e)}function Ol(e){if(!os(e))return!1;const r=ss(e);return r.length>0&&r.every(o=>/^:?-{3,}:?$/.test(o.trim()))}function Fl(e){const r=e.split(/\r?\n/),o=[];for(let c=0;c<r.length-1;){if(!os(r[c])||!Ol(r[c+1])){c+=1;continue}const d=ss(r[c]),u=[];let y=c+2;for(;y<r.length&&os(r[y]);y+=1){const _=ss(r[y]);_.length>=d.length&&u.push(_.slice(0,d.length))}d.length>=1&&u.length>0&&o.push({index:c,headers:d,rows:u}),c=Math.max(y,c+1)}return o}function $l(e,r){const c=e.split(/\r?\n/).slice(0,r).reverse().map(d=>{var u;return(u=d.match(/^\s{0,3}#{1,6}\s+(.+?)\s*$/))==null?void 0:u[1]}).find(Boolean);return rn(c??"图表卡片")}function xo(e){const r=rn(e).replace(/[↑↓↗↘]/g,"").trim();if(!r||/^[—-]+$/.test(r))return null;const o=r.match(/-?\d+(?:,\d{3})*(?:\.\d+)?|-?\d+(?:\.\d+)?/);if(!o)return null;let c=Number(o[0].replace(/,/g,""));return Number.isFinite(c)?(r.includes("亿")?c*=1e8:r.includes("万")&&(c*=1e4),c):null}function Vl(e){const r=rn(e).replace(/[↑↓↗↘]/g,"").replace(/\s+/g,"").trim();return!r||/^[—-]+$/.test(r)?!1:/^[+-]?(?:\d+(?:,\d{3})*|\d+)(?:\.\d+)?(?:%|万|亿|万元|亿元)?$/.test(r)}function zl(e){const r=rn(e).trim();return!r||/^[—-]+$/.test(r)}function Gl(e){return/环比|同比|占比|变化/.test(e)}function yr(e){const r=rn(e).toLowerCase().replace(/\s+/g,"");return/^(#|no\.?|number|rank|ranking|排名|排行|名次|序号|序)$/.test(r)}function Hl(e){return/环比|同比|占比|变化|增长率|增幅/.test(rn(e))}function br(e){return Gl(e)||Hl(e)}function is(e){const r=rn(e).replace(/[\s_-]+/g,"");return{compact:r,normalized:r.toLowerCase()}}function cs(e){const{compact:r,normalized:o}=is(e);return o==="id"||/(?:^|[\s_-])id$/i.test(rn(e))||/[A-Z0-9]ID$/.test(r)||/id$/.test(o)&&!/(paid|valid|invalid)$/.test(o)}function ql(e){const{normalized:r}=is(e);return cs(e)||/number$|no$|code$|date$|time$|日期|时间|编号|单号|订单号|流水号|编码/.test(r)}function Wl(e){const r=rn(e).toLowerCase().replace(/\s+/g,"");return/date|time|month|week|quarter|year|region|area|city|category|customer|channel|月份|日期|时间|周期|季度|年份|年度|区域|地区|城市|省份|门店|部门|品类|分类|类别|客户|渠道|平台|名称|姓名|类型|项目/.test(r)}function Ul(e){const{normalized:r}=is(e);return cs(e)||/number$|no$|code$|编号|单号|订单号|流水号|编码/.test(r)}function kr(e,r){const o=e.rows.map(c=>c[r]??"").filter(c=>!zl(c));return o.length>0&&o.every(Vl)}function Bo(e){var y;const r=e.headers.map((_,T)=>({header:_,index:T})).filter(({header:_})=>!yr(_)&&!br(_)),o=r.find(({header:_})=>cs(_));if(o)return o.index;const c=r.find(({header:_})=>Ul(_));if(c)return c.index;const d=r.find(({header:_})=>Wl(_));if(d)return d.index;const u=r.find(({index:_})=>!kr(e,_));return(u==null?void 0:u.index)??((y=r[0])==null?void 0:y.index)??0}function Io(e,r,o,c,d=""){const u=`${d}
3
+ ${r}
4
+ ${e}`;return/k\s*线图?|kline|蜡烛图|candlestick/i.test(u)?"candlestick":/桑基图|桑基|sankey/i.test(u)?"sankey":/热力图|heat\s*map|heatmap/i.test(u)?"heatmap":/雷达图|radar/i.test(u)?"radar":/气泡图|bubble/i.test(u)?"bubble":/散点图|scatter/i.test(u)?"scatter":/漏斗图|funnel/i.test(u)?"funnel":/仪表盘|仪表图|gauge/i.test(u)?"gauge":/箱线图|盒须图|boxplot|box\s*plot/i.test(u)?"boxplot":/树图|树状图|tree\b/i.test(u)?"tree":/矩形树图|treemap/i.test(u)?"treemap":/旭日图|sunburst/i.test(u)?"sunburst":/网络图|关系图|graph|network/i.test(u)?"graph":/地图|map\b/i.test(u)?"map":/环形图|环图|donut/i.test(u)&&c.length===1?"donut":/柱状图|柱形图|bar\s*chart|bar\b/i.test(u)?c.length>1?"grouped-bar":"bar":/折线图|line\s*chart|line\b/i.test(u)?"line":/占比|占比图|饼图/.test(u)&&c.length===1?"pie":/趋势|月份|日期|时间|年度|季度|周/.test(`${u}
5
+ ${o}`)?"line":c.length>1?"grouped-bar":"bar"}function Ro(e){return e.rows.length!==1?!1:e.headers.every(r=>!yr(r)&&!br(r))&&e.headers.every((r,o)=>kr(e,o))}function jl(e){if(Ro(e))return!0;const r=Bo(e);return e.headers.some((o,c)=>c===r||yr(o)||br(o)?!1:kr(e,c))}function Kl(e,r,o){var B,U;const c=$l(e,r.index);if(Ro(r)){const D=r.headers.map((I,x)=>({指标:rn(I),数值:xo(r.rows[0][x]??"")??0}));return{type:"chart-card",id:`derived-${vo(`${c}:${JSON.stringify(D)}`)}`,title:c,chart:{type:Io(e,c,"指标",["数值"],o.userQuestion),xField:"指标",yFields:["数值"],data:D},summary:"基于当前回复中的结果数据生成。",source:{label:"当前问数结果",value:"assistant-response"},permission:{label:"当前用户可见",level:"self",downloadable:!1},actions:["insert-left"],meta:{generatedBy:"agent",...(B=o.userQuestion)!=null&&B.trim()?{prompt:o.userQuestion.trim()}:{},version:1}}}const d=Bo(r),u=r.headers[d],y=r.headers.map((D,I)=>({header:D,index:I})).filter(({header:D,index:I})=>I===d||yr(D)||br(D)||ql(D)?!1:kr(r,I));if(y.length===0)return null;const _=y.map(D=>D.header),T=r.rows.map(D=>{const I={[u]:rn(D[d]??"")};for(const{header:x,index:H}of y)I[x]=xo(D[H]??"")??0;return I});return{type:"chart-card",id:`derived-${vo(`${c}:${JSON.stringify(T)}`)}`,title:c,chart:{type:Io(e,c,u,_,o.userQuestion),xField:u,yFields:_,data:T},summary:"基于当前回复中的结果数据生成。",source:{label:"当前问数结果",value:"assistant-response"},permission:{label:"当前用户可见",level:"self",downloadable:!1},actions:["insert-left"],meta:{generatedBy:"agent",...(U=o.userQuestion)!=null&&U.trim()?{prompt:o.userQuestion.trim()}:{},version:1}}}function vo(e){let r=0;for(let o=0;o<e.length;o+=1)r=(r<<5)-r+e.charCodeAt(o)|0;return Math.abs(r).toString(36)}function Do(e,r={}){return Fl(e).filter(jl).map(o=>Kl(e,o,r)).filter(o=>!!o)}const Ql={area:"area",bar:"bar",boxplot:"boxplot",bubble:"bubble",candlestick:"candlestick",donut:"donut",funnel:"funnel",gauge:"gauge",graph:"graph","grouped-bar":"grouped-bar","horizontal-bar":"horizontal-bar",heatmap:"heatmap",kline:"candlestick",line:"line",map:"map","mini-bar":"mini-bar",network:"network",pie:"pie",radar:"radar",sankey:"sankey",scatter:"scatter",sunburst:"sunburst",tree:"tree",treemap:"treemap"};function Qe(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function ls(e){let r=0;for(let o=0;o<e.length;o+=1)r=(r<<5)-r+e.charCodeAt(o)|0;return Math.abs(r).toString(36)}function _r(e){if(typeof e=="string")try{return JSON.parse(e)}catch{return e}return Qe(e)&&(e.type==="json"&&"value"in e||"value"in e&&Qe(e.value))?_r(e.value):e}function No(e){return typeof e!="string"?"bar":Ql[e]??"bar"}function Yl(e){const o=(Array.isArray(e)?e:[]).filter(c=>c==="view"||c==="download"||c==="insert-left"||c==="save-doc"||c==="save-kb"||c==="upgrade");return o.includes("insert-left")?o:[...o,"insert-left"]}function Lo(e){for(const r of e){if(!Qe(r))continue;const o={},c=He(r.unitCode||r.unit_code),d=He(r.unitLabel||r.unit_label||r.unit),u=He(r.valueFormat||r.value_format||r.format),y=He(r.displayValue||r.display_value),_=ds(r.decimalPlaces??r.decimal_places??r.scale);if(c&&(o.unitCode=c),d&&(o.unitLabel=d),u&&(o.valueFormat=u),y&&(o.displayValue=y),_!==null&&(o.decimalPlaces=Math.max(0,Math.min(8,Math.trunc(_)))),Object.keys(o).length>0)return o}}function Jl(e){const r=Qe(e.chart)?e.chart:{},o=Qe(e.dataBinding)?e.dataBinding:void 0,c=Qe(o==null?void 0:o.fieldMapping)?o.fieldMapping:void 0,d=typeof e.title=="string"&&e.title.trim()?e.title.trim():"",u=typeof r.xField=="string"&&r.xField.trim()?r.xField.trim():"",y=Array.isArray(r.yFields)?r.yFields.filter(B=>typeof B=="string"&&B.trim().length>0).map(B=>B.trim()):[],_=Array.isArray(r.data)?r.data.filter(Qe):[];if(!d||!u||y.length===0||_.length===0)return null;const T=Lo([r.valueSpec,r.displaySpec,e.displaySpec,o==null?void 0:o.displaySpec]);return{type:"chart-card",id:typeof e.id=="string"&&e.id.trim()?e.id.trim():`tool-${ls(`${d}:${JSON.stringify(_)}`)}`,title:d,...typeof e.period=="string"&&e.period.trim()?{period:e.period.trim()}:{},chart:{type:No(r.type),xField:u,yFields:y,data:_,...r.sort==="asc"||r.sort==="desc"||r.sort==="none"?{sort:r.sort}:{},...typeof r.limit=="number"&&Number.isFinite(r.limit)?{limit:r.limit}:{},...Array.isArray(r.hiddenSeries)?{hiddenSeries:r.hiddenSeries.filter(B=>typeof B=="string")}:{},...T?{valueSpec:T}:{}},...typeof e.summary=="string"&&e.summary.trim()?{summary:e.summary.trim()}:{},source:{label:Qe(e.source)&&typeof e.source.label=="string"&&e.source.label.trim()?e.source.label.trim():"当前问数结果",...Qe(e.source)&&typeof e.source.value=="string"?{value:e.source.value}:{}},...o?{dataBinding:{...typeof o.bindingKind=="string"&&o.bindingKind.trim()?{bindingKind:o.bindingKind.trim()}:{},...typeof o.source=="string"&&o.source.trim()?{source:o.source.trim()}:{},...typeof o.bindingId=="string"&&o.bindingId.trim()?{bindingId:o.bindingId.trim()}:{},...typeof o.refreshApi=="string"&&o.refreshApi.trim()?{refreshApi:o.refreshApi.trim()}:{},...typeof o.question=="string"&&o.question.trim()?{question:o.question.trim()}:{},...typeof o.validatedSql=="string"&&o.validatedSql.trim()?{validatedSql:o.validatedSql.trim()}:{},...typeof o.sqlDialect=="string"&&o.sqlDialect.trim()?{sqlDialect:o.sqlDialect.trim()}:{},...typeof o.contractHash=="string"&&o.contractHash.trim()?{contractHash:o.contractHash.trim()}:{},...typeof o.executeApi=="string"&&o.executeApi.trim()?{executeApi:o.executeApi.trim()}:{},...typeof o.metricCode=="string"&&o.metricCode.trim()?{metricCode:o.metricCode.trim()}:{},...typeof o.metricId=="string"&&o.metricId.trim()?{metricId:o.metricId.trim()}:{},...typeof o.metricName=="string"&&o.metricName.trim()?{metricName:o.metricName.trim()}:{},...typeof o.readbackApi=="string"&&o.readbackApi.trim()?{readbackApi:o.readbackApi.trim()}:{},...c?{fieldMapping:{...typeof c.xField=="string"?{xField:c.xField}:{},...Array.isArray(c.yFields)?{yFields:c.yFields.filter(B=>typeof B=="string")}:{}}}:{},...Qe(o.paramsSchema)?{paramsSchema:o.paramsSchema}:{},...Qe(o.permissionContext)?{permissionContext:o.permissionContext}:{}}}:{},permission:{label:Qe(e.permission)&&typeof e.permission.label=="string"&&e.permission.label.trim()?e.permission.label.trim():"当前用户可见",...Qe(e.permission)&&e.permission.level==="team"?{level:"team"}:{},...Qe(e.permission)&&e.permission.level==="org"?{level:"org"}:{},...Qe(e.permission)&&e.permission.level==="self"?{level:"self"}:{},...Qe(e.permission)&&typeof e.permission.downloadable=="boolean"?{downloadable:e.permission.downloadable}:{downloadable:!1}},actions:Yl(e.actions),meta:{generatedBy:"agent",version:Qe(e.meta)&&typeof e.meta.version=="number"&&Number.isFinite(e.meta.version)?e.meta.version:1,...Qe(e.meta)&&typeof e.meta.prompt=="string"?{prompt:e.meta.prompt}:{}}}}function Po(e){const r=typeof e.title=="string"&&e.title.trim()?e.title.trim():"",o=typeof e.xField=="string"&&e.xField.trim()?e.xField.trim():"",c=Array.isArray(e.yFields)?e.yFields.filter(y=>typeof y=="string"&&y.trim().length>0).map(y=>y.trim()):[],d=Array.isArray(e.data)?e.data.filter(Qe):[];if(!r||!o||c.length===0||d.length===0)return null;const u=Lo([e.displaySpec]);return{type:"chart-card",id:`tool-${ls(`${r}:${JSON.stringify(d)}`)}`,title:r,...typeof e.period=="string"&&e.period.trim()?{period:e.period.trim()}:{},chart:{type:No(e.chartType),xField:o,yFields:c,data:d,...u?{valueSpec:u}:{}},...typeof e.summary=="string"&&e.summary.trim()?{summary:e.summary.trim()}:{},source:{label:"当前问数结果",value:"generate_chart"},permission:{label:"当前用户可见",level:"self",downloadable:!1},actions:["insert-left"],meta:{generatedBy:"agent",version:1}}}function He(e){return typeof e=="string"&&e.trim()?e.trim():""}function ds(e){const r=typeof e=="number"?e:Number(e);return Number.isFinite(r)?r:null}function Zl(e,r){const o=He(e.primaryFormat||e.format||e.valueFormat);if(o==="currency"||o==="number"||o==="percent")return o;const c=r.toLowerCase();return/率|占比|percent|percentage|ratio|rate/.test(c)?"percent":"number"}function Xl(e){if(!Qe(e))return{label:"运行态权限已校验",level:"self"};const r=e.level==="team"||e.level==="org"||e.level==="self"?e.level:"self";return{label:He(e.label)||"运行态权限已校验",level:r}}function ed(e,r){const c={...Qe(e.displaySpec)?e.displaySpec:Qe(r.displaySpec)?r.displaySpec:{},...r,...e},d={},u=He(c.unitCode||c.unit_code||c.unit),y=He(c.unitLabel||c.unit_label||c.unitName||c.unit_name||c.unit),_=He(c.valueFormat||c.value_format||c.primaryFormat||c.format),T=He(c.displayValue||c.display_value),B=ds(c.decimalPlaces??c.decimal_places??c.scale);return u&&(d.unitCode=u),y&&(d.unitLabel=y),_&&(d.valueFormat=_),T&&(d.displayValue=T),B!==null&&(d.decimalPlaces=Math.max(0,Math.min(8,Math.trunc(B)))),Object.keys(d).length>0?d:void 0}function td(e){const r=_r(e);if(!Qe(r))return null;const o=Qe(r.source)?r.source:{},c=He(o.value),d=He(r.metricCode||r.metric_code),u=He(r.metricId||r.metric_id),y=He(r.metricName||r.metric_name||r.title)||d||u||"指标",_=ds(r.value??r.currentValue??r.primaryValue),T=!!(d||u||He(r.metricName||r.metric_name)||c==="execute_metric_api"||r.aggregation);if(_===null||!T)return null;const B=Qe(r.dataBinding)?r.dataBinding:{},U=Qe(B.permissionContext)?B.permissionContext:{...He(r.tenantId)?{tenantId:He(r.tenantId)}:{},...He(r.appId)?{appId:He(r.appId)}:{}},D=He(B.question),I=He(B.bindingId)||u||d,x=He(B.metricCode)||d,H=He(B.metricId)||u,q=ed(r,B),j=He(r.displayValue||r.display_value||B.displayValue||(q==null?void 0:q.displayValue));return{type:"metric-card",id:`metric-${ls(`${H||x||y}:${_}`)}`,title:y,metricName:y,...x?{metricCode:x}:{},...H?{metricId:H}:{},value:_,...j?{displayValue:j}:{},...q?{displaySpec:q}:{},format:Zl({...r,...q??{}},y),source:{label:He(o.label)||"百特搭指标执行引擎",...c?{value:c}:{value:"execute_metric_api"}},dataBinding:{...D?{question:D}:{},...I?{bindingId:I}:{},...He(B.contractHash||r.contractHash)?{contractHash:He(B.contractHash||r.contractHash)}:{},executeApi:He(B.executeApi)||"/apps/api/v1/sp/ai/metric/metrics/execute",...x?{metricCode:x}:{},...H?{metricId:H}:{},...q?{displaySpec:q}:{},...j?{displayValue:j}:{},...q!=null&&q.unitCode?{unitCode:q.unitCode}:{},...q!=null&&q.unitLabel?{unitLabel:q.unitLabel}:{},...q!=null&&q.valueFormat?{valueFormat:q.valueFormat}:{},...(q==null?void 0:q.decimalPlaces)!==void 0?{decimalPlaces:q.decimalPlaces}:{},readbackApi:He(B.readbackApi)||"/apps/api/v1/sp/ai/metric/metrics/userReadback",refreshApi:He(B.refreshApi)||"/apps/api/v1/sp/ai/metric/metrics/execute",...Array.isArray(B.queryFilters)?{queryFilters:B.queryFilters}:{},...Qe(B.paramsSchema)?{paramsSchema:B.paramsSchema}:{},...Object.keys(U).length>0?{permissionContext:U}:{}},permission:Xl(r.permission),meta:{generatedBy:"agent",version:Qe(r.meta)&&typeof r.meta.version=="number"&&Number.isFinite(r.meta.version)?r.meta.version:1,...Qe(r.meta)&&He(r.meta.prompt)?{prompt:He(r.meta.prompt)}:{}}}}function nd(e){const r=_r(e);return Qe(r)?r.type==="chart-card"?Jl(r):r.type==="chart-spec"||typeof r.title=="string"&&typeof r.chartType=="string"&&typeof r.xField=="string"&&Array.isArray(r.yFields)&&Array.isArray(r.data)?Po(r):null:null}const ad=[/需要确认口径/u,/存在多个可用口径/u,/请(?:回复|选择)序号/u,/(?:回复|选择)候选?序号/u,/业务行动/u,/业务动作/u,/load_data_action_candidates/u,/permissionDeniedCandidates/u,/未通过权限校验/u,/权限校验/u,/创建草稿/u,/不能继续创建草稿或执行/u,/可用业务行动/u,/执行.*行动/u,/还差\s*\d+\s*个(?:必填)?信息/u,/请回复[“"]?确认提交/u,/暂时不会提交/u,/草稿已准备/u];function Mo(e){return ad.some(r=>r.test(e))}function rd(e){return e.role==="assistant"&&e.conclusion===!0&&!Mo(e.content)}function sd(e){var r;return e.role==="assistant"&&e.conclusion===!0&&!e.loading&&!e.streaming&&!!((r=e.cards)!=null&&r.length)&&!Mo(e.content)}const od=128e3;function id(e,r={}){const o=r.contextWindow??od,c=e.reduce((_,T)=>_+us(T),0),d=Math.ceil(c/3.5),u=o>0?Math.round(d/o*100):0,y=Math.min(100,Math.max(0,u));return{estimatedTokens:d,contextWindow:o,percent:y,level:y>=90?"critical":y>=70?"warning":"normal"}}function us(e){return e==null?0:typeof e=="string"?e.length:typeof e=="number"||typeof e=="boolean"?String(e).length:Array.isArray(e)?e.reduce((r,o)=>r+us(o),0):typeof e=="object"?Object.entries(e).reduce((r,[o,c])=>r+o.length+us(c),0):0}let cd=0,Oo=0;function xn(){return`msg_${++cd}`}function Bn(){const e=new Date,r=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0");return`${r}:${o}`}function Fo(e){return e.role!=="status"&&!e.cardRecommendationDraft}function $o(e){if(typeof e!="string"||!e.trim())return NaN;const r=Date.parse(e);return Number.isFinite(r)?r:NaN}function ld(e,r){const o=$o(r.timestamp);if(!Number.isFinite(o)){e.push(r);return}const c=e.findIndex(d=>{const u=$o(d.timestamp);return Number.isFinite(u)&&u>o});if(c>=0){e.splice(c,0,r);return}e.push(r)}function Zn(e){if(typeof e!="string"||!e.startsWith("workbench-turn-"))return"";const r=["-reply","-conclusion-stream","-item-","-process-","-task-","-card-mutation-confirmation"];for(const o of r){const c=e.indexOf(o,15);if(c>15)return e.slice(15,c)}return""}function Cr(e){var o;const r=(o=e.cardRecommendationDraft)==null?void 0:o.sourceTurnId;return typeof r=="string"&&r.trim()?r.trim():""}function Sr(e){const r=e.cardRecommendationDraft,o=r==null?void 0:r.placementTurnId;return typeof o=="string"&&o.trim()?o.trim():""}function On(e){const r=e.workbenchTurnId;return typeof r=="string"&&r.trim()?r.trim():""}function Fn(e){return Sr(e)||Cr(e)||On(e)||Zn(e.id)}function Ha(e){return e==null?"":Array.isArray(e)?`[${e.map(Ha).join(",")}]`:Ue(e)?`{${Object.keys(e).sort().map(r=>`${JSON.stringify(r)}:${Ha(e[r])}`).join(",")}}`:JSON.stringify(e)??String(e)}function ha(e){return Ue(e)?e:{}}function dd(e){return typeof e=="string"&&e.trim()?e.trim():Ue(e)?X(e.key)||X(e.dataIndex)||X(e.data_index)||X(e.field)||X(e.name):""}function Vo(e){const r=ha(e.data);return(Array.isArray(e.rows)?e.rows:Array.isArray(r.rows)?r.rows:[]).filter(Ue)}function zo(e,r){const o=ha(e.data),c=Array.isArray(e.columns)?e.columns:Array.isArray(o.columns)?o.columns:[],d=[...new Set(r.flatMap(y=>Object.keys(y)))],u=c.map((y,_)=>{const T=dd(y);return T&&r.some(B=>Object.prototype.hasOwnProperty.call(B,T))?T:d[_]||T}).filter(Boolean);return[...new Set(u.length>0?u:d)]}function ms(e){if(!Ue(e))return"";const r=ha(e.metadata),o=X(e.resultId)||X(r.resultId)||X(e.id),c=X(e.sourceTurnId)||X(r.sourceTurnId);if(c&&(!o||o.startsWith(`${c}:`)))return`turn:${c}`;if(o)return`result:${o}`;if(c)return`turn:${c}`;const d=Vo(e),u=zo(e,d);if(d.length>0&&u.length>0)return`rows:${Ha({keys:u,rows:d.slice(0,5)})}`;const y=ha(e.data),_=Object.prototype.hasOwnProperty.call(e,"value")?e.value:y.value;return _===void 0?"":`value:${Ha(_)}`}function fs(e){return[e,...Array.isArray(e.viewAlternatives)?e.viewAlternatives.flatMap(r=>fs(r)):[]]}function ud(e){const r=e.recommendations.flatMap(fs).map(d=>ms(d.queryResult)).filter(Boolean),o=ms(e.queryResult),c=r.length>0?r:o?[o]:[];return[...new Set(c)].sort()}function md(e){return e.role==="assistant"&&!!e.queryResultTable&&!e.cardRecommendationDraft&&!e.content.trim()}function fd(e){return e.role==="status"&&e.loading===!0&&!e.cardRecommendationDraft&&/^思考中[.。…]*$/u.test(e.content.trim())}function pd(e){if(e.role!=="status"||!e.loading)return;const r=Date.now();typeof e.startTime!="number"&&(e.startTime=r),e.endTime=typeof e.endTime=="number"?e.endTime:r,e.loading=!1}function Go(e){var o;if(!((o=e.processInvocations)!=null&&o.length))return;const r=new Date().toISOString();for(const c of e.processInvocations)c.status==="running"&&(c.status="done",c.completedAt=c.completedAt||r)}function Ho(e){if(Go(e),e.role==="status"){pd(e);return}if(e.role!=="assistant"||!e.loading&&!e.streaming)return;const r=Date.now();typeof e.startTime!="number"&&(e.startTime=r),e.endTime=typeof e.endTime=="number"?e.endTime:r,e.loading=!1,e.streaming=!1}function hd(e,r){if(r.renderedInMarkdown)return;const o=Array.isArray(e.queryResultTables)?e.queryResultTables:e.queryResultTable?[e.queryResultTable]:[],c=JSON.stringify(r);if(o.some(u=>JSON.stringify(u)===c))return;const d=[...o,r];e.queryResultTable=d[0],d.length>1&&(e.queryResultTables=d)}function gd(e){return typeof e.totalCount=="number"?e.totalCount:typeof e.returnedCount=="number"?e.returnedCount:e.rows.length}function qo(e){return e.rows.length<=1&&gd(e)<=1&&e.columns.length<=1}function yd(e,r){return!!e.trim()&&qo(r)}function Ar(e){const r=Array.isArray(e.queryResultTables)?e.queryResultTables:e.queryResultTable?[e.queryResultTable]:[];if(r.length===0)return;const o=r.filter(c=>!yd(e.content,c));if(o.length!==r.length){if(o.length===0){e.queryResultTable=void 0,e.queryResultTables=void 0;return}e.queryResultTable=o[0],e.queryResultTables=o.length>1?o:void 0}}function Wo(e,r){if(!md(r)||!r.queryResultTable)return null;if(r.queryResultTable.renderedInMarkdown)return r;const o=Fn(r);if(!o)return null;const c=e.findIndex(d=>sn(d,o));return c<0?null:(qo(r.queryResultTable)||hd(e[c],r.queryResultTable),e[c])}function sn(e,r){if(e.role!=="assistant"||e.cardRecommendationDraft||!e.content.trim())return!1;const o=On(e);return o?o===r:Zn(e.id)!==r?!1:e.id.endsWith("-reply")||e.id.endsWith("-conclusion-stream")}function ps(e,r){return!!(r&&e.some(o=>sn(o,r)))}function Uo(e){let r=e.toLocaleLowerCase();for(;/\d,\d/u.test(r);)r=r.replace(/(\d),(\d)/gu,"$1$2");return r}function bd(e){if(!Ue(e))return[];const r=Ue(e.data)?e.data:{},o=[e.displayRows,r.displayRows,e.rows,r.rows];for(const c of o)if(Array.isArray(c))return c.filter(Ue);return[]}function kd(e){const r=e.cardRecommendationDraft;return r?[r.queryResult,...r.recommendations.map(o=>o.queryResult)].filter(Ue):[]}function _d(e){const r=new Set;for(const o of kd(e)){const c=Object.prototype.hasOwnProperty.call(o,"value")?o.value:void 0,d=bd(o),u=[c,...d.slice(0,5).flatMap(y=>Object.values(y))];for(const y of u){if(typeof y!="string"&&typeof y!="number")continue;const _=String(y).trim();_.length<2||r.add(Uo(_))}}return[...r].slice(0,8)}function jo(e,r){const o=_d(r);if(o.length===0)return"";const c=e.flatMap(d=>{const u=Fn(d);if(!u||!sn(d,u))return[];const y=Uo(d.content);return o.every(_=>y.includes(_))?[u]:[]});return new Set(c).size===1&&c[0]||""}function Xn(e,r){if(!r.cardRecommendationDraft)return Fn(r);const o=Cr(r),c=Sr(r);if(ps(e,o))return o;const d=jo(e,r);return d||(ps(e,c)?c:c||o||On(r)||Zn(r.id))}function Cd(e,r,o=[]){if(!e.cardRecommendationDraft||!r)return!1;const c=Cr(e),d=Sr(e);return c===r||c.startsWith(`${r}:`)?!0:c&&ps(o,c)?!1:d===r?!0:On(e)===r||Zn(e.id)===r}function Ko(e,r){if(!r.cardRecommendationDraft)return!1;const o=Xn(e,r);if(!o)return!1;const c=e.findIndex(d=>sn(d,o));return c<0?!1:(e.splice(c+1,0,r),!0)}function Sd(e,r){if(!r.thinkingProcess)return!1;const o=Fn(r);if(!o)return!1;const c=e.findIndex(d=>sn(d,o));return c<0?!1:(e.splice(c,0,r),!0)}function ga(e,r){const o=Fn(r);if(!o||!sn(r,o))return!1;const c=e.flatMap((T,B)=>T.cardRecommendationDraft&&Xn(e,T)===o?[B]:[]);if(c.length===0)return!1;const d=e.findIndex(T=>T.id===r.id),u=c.every((T,B)=>T===d+B+1);if(d<0||u)return!1;const y=c.map(T=>e[T]);for(let T=c.length-1;T>=0;T-=1)e.splice(c[T],1);const _=e.findIndex(T=>T.id===r.id);return e.splice(_+1,0,...y),!0}function Qo(e){let r=!1;for(let o=0;o<e.length;o+=1){let c=!1;for(const d of[...e])c=ga(e,d)||c;if(!c)return r;r=!0}return r}function hs(e){if(!e.cardRecommendationDraft)return"";const r=ud(e.cardRecommendationDraft);return r.length===1?r[0]:r.length>1?`multi:${r.join("|")}`:Cr(e)||Sr(e)||On(e)||Zn(e.id)}function ea(e,r){const o=hs(r);if(o)for(let c=e.length-1;c>=0;c-=1){const d=e[c];(d==null?void 0:d.id)!==r.id&&hs(d)===o&&e.splice(c,1)}}function gs(e){const r=e.cardRecommendationDraft;return r?r.recommendations.length>1||(r.totalRecommendationCount??0)>1||(r.eligibleCandidateCount??0)>1||(r.returnedCandidateCount??0)>1||(r.readyCandidateCount??0)>1||Array.isArray(r.chartFamilyCoverage)&&r.chartFamilyCoverage.length>0||!!(r.echartsCoverage&&Object.keys(r.echartsCoverage).length>0):!1}function Ad(e){const r=e.cardRecommendationDraft;return r?[r.queryResult,...r.recommendations.flatMap(fs).map(o=>o.queryResult)].filter(Ue).some(o=>{const c=ha(o.metadata);return!!(X(o.resultId)||X(c.resultId)||X(o.id)||X(o.sourceTurnId)||X(c.sourceTurnId))}):!1}function ya(e){const r=e.cardRecommendationDraft;return!r||e.workbenchInterleavedPlacement==="recommendation"?!1:r.recommendations.length<=1&&!gs(e)}function wd(e){return ya(e)&&!Ad(e)}function ys(e,r){const o=e.findIndex(c=>c.id===r.id);if(o<0)return"";for(let c=o-1;c>=0;c-=1){const d=e[c];if(!d||d.role!=="assistant"||d.cardRecommendationDraft||!d.content.trim())continue;const u=Fn(d);if(u&&sn(d,u))return u}return""}function Yo(e,r,o){if(!gs(r)||!ya(o))return!1;const c=Xn(e,r),d=Xn(e,o);if(c&&d&&c===d)return!0;const u=ys(e,r),y=ys(e,o);return!!(u&&y&&u===y)}function ba(e,r){if(gs(r))for(let o=e.length-1;o>=0;o-=1){const c=e[o];c&&c.id!==r.id&&Yo(e,r,c)&&e.splice(o,1)}}function Td(e){if(!ya(e))return"";const r=e.cardRecommendationDraft,o=r==null?void 0:r.recommendations[0];return Ha({prompt:(r==null?void 0:r.prompt)||"",title:(o==null?void 0:o.title)||"",capabilityId:(o==null?void 0:o.capabilityId)||"",queryResult:(o==null?void 0:o.queryResult)||(r==null?void 0:r.queryResult)||null})}function Ed(e){if(!ya(e))return null;const r=e.cardRecommendationDraft,o=r==null?void 0:r.recommendations[0],c=(o==null?void 0:o.queryResult)||(r==null?void 0:r.queryResult);return Ue(c)?c:null}function xd(e){const r=ha(e.data);return(Array.isArray(e.columns)?e.columns:Array.isArray(r.columns)?r.columns:[]).map(c=>typeof c=="string"?c.trim():Ue(c)?X(c.label)||X(c.title)||X(c.name)||X(c.key):"").filter(Boolean)}function Bd(e){var D,I;const r=Ed(e),o=e.cardRecommendationDraft,c=o==null?void 0:o.recommendations[0];if(!r)return(((D=c==null?void 0:c.title)==null?void 0:D.trim().length)||0)>0?1:0;const d=Vo(r),u=zo(r,d),_=xd(r).filter((x,H)=>{const q=u[H]||"";return x&&x!==q}).length,T=d.slice(0,5).reduce((x,H)=>x+u.filter(q=>H[q]!==null&&H[q]!==void 0&&String(H[q]).trim()!=="").length,0),B=ms(r)?4:0,U=(I=c==null?void 0:c.title)!=null&&I.trim()?2:0;return u.length*20+Math.min(d.length,20)*3+_*6+Math.min(T,30)+B+U}function Id(e,r,o){if(wd(r))return!0;if(!ya(r))return!1;const c=jo(e,r);return!!(c&&c===o)}function Rd(e){const r=new Map;for(let c=0;c<e.length;c+=1){const d=e[c];if(!d)continue;const u=ys(e,d);if(!u||!Id(e,d,u))continue;const y=Td(d),_=r.get(u)||[];_.push({index:c,message:d,signature:y,score:Bd(d)}),r.set(u,_)}const o=new Set;for(const c of r.values()){if(c.length<=1)continue;const d=c.reduce((u,y)=>y.score!==u.score?y.score>u.score?y:u:(y.signature!==u.signature,y.index>u.index?y:u));for(const u of c)u.index!==d.index&&o.add(u.index)}for(let c=e.length-1;c>=0;c-=1)o.has(c)&&e.splice(c,1)}function $n(e){for(const r of[...e])ba(e,r);Rd(e)}function qa(e,r){return ya(r)&&e.some(o=>Yo(e,o,r))}function vd(e){const r=[];for(const o of e)Wo(r,o)||r.push(o);return r}function Jo(){var e,r;if(typeof((e=globalThis.crypto)==null?void 0:e.randomUUID)=="function"){const o=globalThis.crypto.randomUUID();if(typeof o=="string"&&o.trim())return o}if(typeof((r=globalThis.crypto)==null?void 0:r.getRandomValues)=="function"){const o=new Uint32Array(4);return globalThis.crypto.getRandomValues(o),`conv_${Array.from(o,c=>c.toString(16).padStart(8,"0")).join("")}`}return Oo+=1,`conv_${Date.now().toString(36)}_${Oo.toString(36)}`}function bn(e){return typeof e=="function"?e():e}function Dd(e){return typeof e=="function"?e():e}function Zo(e){const r="data: ";if(!e.startsWith(r))return null;const o=e.slice(r.length).trim();if(!o)return null;try{return JSON.parse(o)}catch{return null}}function Ue(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function ka(e){if(Ue(e)&&e.type==="text"&&typeof e.value=="string"||Ue(e)&&e.type==="json"&&"value"in e)return ka(e.value);if(typeof e=="string")try{return JSON.parse(e)}catch{return e}return e}function X(e){return typeof e=="string"&&e.trim()?e.trim():""}function Nd(e){if(e===null)return null;if(typeof e=="string"||typeof e=="boolean")return e;if(typeof e=="number")return Number.isFinite(e)?e:void 0}function bs(e){if(!Ue(e))return null;const r=new Set,o=(Array.isArray(e.columns)?e.columns:[]).map(y=>{if(!Ue(y))return null;const _=X(y.key)||X(y.name);return!_||r.has(_)?null:(r.add(_),{key:_,label:X(y.label)||_})}).filter(y=>!!y);if(o.length===0)return null;const c=(Array.isArray(e.rows)?e.rows:[]).filter(Ue).map(y=>{const _={};for(const T of o){const B=Nd(y[T.key]);B!==void 0&&(_[T.key]=B)}return _}),d=typeof e.returnedCount=="number"&&Number.isFinite(e.returnedCount)?Math.max(0,Math.floor(e.returnedCount)):void 0,u=typeof e.totalCount=="number"&&Number.isFinite(e.totalCount)?Math.max(0,Math.floor(e.totalCount)):void 0;return{columns:o,rows:c,...e.renderedInMarkdown===!0?{renderedInMarkdown:!0}:{},...X(e.title)?{title:X(e.title)}:{},...d!==void 0?{returnedCount:d}:{},...u!==void 0?{totalCount:u}:{}}}function Xo(e){return Array.isArray(e)?e.map(r=>bs(r)).filter(r=>!!r):[]}function ei(e){return e instanceof Error&&e.message.trim()||Ue(e)&&typeof e.message=="string"&&e.message.trim()?e.message.trim():String(e||"请求失败")}function Ld(e){return Ue(e)&&typeof e.code=="number"&&"data"in e?e.data:e}async function ks(e){return Ld(await e.json())}function Pd(e){return Array.isArray(e)?e.flatMap(r=>{if(!Ue(r))return[];const o=X(r.threadId);return o?[{threadId:o,title:X(r.title)||void 0,chatMode:X(r.chatMode)||void 0,createdAt:X(r.createdAt)||void 0,updatedAt:X(r.updatedAt)||void 0}]:[]}):[]}function ti(e){const r=X(e).replace(/\s+/g," ");return r?r.length>20?`${r.slice(0,20)}...`:r:"新对话"}const Md="已加载语义上下文,已提取候选指标、维度、过滤条件和本体模型,用于后续 SQL 推理。",Od="已加载本体知识,相关术语、模型和字段已用于后续推理。",Fd=new Set(["load_semantic_context","get_query_context"]);function $d(e){return/加载语义上下文返回结果/.test(e)?/"queryContext"\s*:/.test(e)||/"matchedMetrics"\s*:/.test(e)||/"matchedDimensions"\s*:/.test(e)||/"matchedFilters"\s*:/.test(e)||/"matchedOntologyObjects"\s*:/.test(e)||/"ontologyAssets"\s*:/.test(e):!1}function Vd(e){return/加载本体知识返回结果/.test(e)?/"glossary"\s*:/.test(e)||/"models"\s*:/.test(e)||/"databaseObject"\s*:/.test(e)||/"objectType"\s*:/.test(e)||/"lineage"\s*:/.test(e)||/"businessRules"\s*:/.test(e):!1}function zd(e){return $d(e)?Md:Vd(e)?Od:e}function ni(e){if(!Ue(e))return null;const r=typeof e.index=="number"&&Number.isFinite(e.index)?e.index:void 0;return r?{index:r,label:X(e.label)||`候选 ${r}`,...X(e.description)?{description:X(e.description)}:{},...X(e.appId)?{appId:X(e.appId)}:{},...X(e.modelCode)?{modelCode:X(e.modelCode)}:{},...X(e.metricCode)?{metricCode:X(e.metricCode)}:{},...X(e.fieldCode)?{fieldCode:X(e.fieldCode)}:{},...X(e.source)?{source:X(e.source)}:{}}:null}function ai(e){if(!Ue(e))return null;const r=X(e.code)||X(e.name),o=X(e.name)||r;return!r||!o?null:{code:r,name:o,...X(e.displayValue)?{displayValue:X(e.displayValue)}:{},...typeof e.required=="boolean"?{required:e.required}:{},...X(e.source)?{source:X(e.source)}:{}}}function ri(e){if(!Ue(e))return null;const r=X(e.taskId),o=X(e.taskKind),c=X(e.title);if(!r||!o||!c)return null;const u=(Array.isArray(e.confirmationOptions)?e.confirmationOptions:[]).map(ni).filter(B=>!!B),y=ni(e.confirmedSelection),_=(Array.isArray(e.fields)?e.fields:[]).map(ai).filter(B=>!!B),T=(Array.isArray(e.missingFields)?e.missingFields:[]).map(ai).filter(B=>!!B);return{turnId:X(e.turnId),taskId:r,taskKind:o,taskKindLabel:X(e.taskKindLabel)||o,title:c,status:X(e.status)||"waiting_confirmation",statusLabel:X(e.statusLabel)||"等待确认",statusTone:["neutral","brand","warning","success","danger"].includes(X(e.statusTone))?X(e.statusTone):"neutral",fields:_,missingFields:T,canConfirm:e.canConfirm===!0,...X(e.confirmPhrase)?{confirmPhrase:X(e.confirmPhrase)}:{},...X(e.cancelPhrase)?{cancelPhrase:X(e.cancelPhrase)}:{},...u.length>0?{confirmationOptions:u}:{},...y?{confirmedSelection:y}:{},...X(e.lastErrorMessage)?{lastErrorMessage:X(e.lastErrorMessage)}:{},...X(e.resultSummary)?{resultSummary:X(e.resultSummary)}:{}}}function si(e){const r=ka(e);if(!Ue(r))return null;const o=Ue(r.queryContext)?r.queryContext:r,c=X(o.tenantId),d=X(o.appId),u=X(o.dialect);return c||d||u?{tenantId:c,appId:d,dialect:u}:null}function Gd(e){const r=ka(e);if(!Ue(r))return;const o=si(r),c=wr(r.matchedMetrics),d=wr(r.matchedDimensions),u=wr(r.matchedFilters),y=wr(r.matchedOntologyObjects??r.ontologyAssets);if(o||Array.isArray(r.matchedMetrics)||Array.isArray(r.matchedDimensions)||Array.isArray(r.matchedFilters)||Array.isArray(r.matchedOntologyObjects)||Array.isArray(r.ontologyAssets))return[`候选指标:${Tr(c,"未匹配到明确指标")}`,`候选维度:${Tr(d,"未匹配到明确维度")}`,...u.length?[`候选过滤条件:${Tr(u,"未匹配到明确过滤条件")}`]:[],...y.length?[`候选本体:${Tr(y,"未匹配到明确本体")}`]:[]].join(`
6
+ `)}function wr(e){if(!Array.isArray(e))return[];const r=[];for(const o of e){const c=Hd(o);c&&!r.includes(c)&&r.push(c)}return r}function Tr(e,r){if(e.length===0)return r;const o=e.slice(0,5);return`${o.join("、")}${e.length>o.length?` 等 ${e.length} 项`:""}`}function Hd(e){if(!Ue(e))return X(e);const r=Ue(e.asset)?e.asset:e;return X(r.name)||X(r.label)||X(r.title)||X(r.metricName)||X(r.dimensionName)||X(r.fieldName)||X(r.modelName)||X(r.modelCode)||X(r.code)||X(r.id)}function qd(e,r){return r?{tenantId:r.tenantId||e.tenantId,appId:r.appId||e.appId,dialect:r.dialect||e.dialect}:e}function Wd(e,r,o){const c=ka(e);if(!Ue(c))return null;const d=X(c.sql),u=X(c.tenantId)||r.tenantId,y=X(c.appId)||r.appId,_=X(c.sqlDialect)||X(c.dialect)||r.dialect||"sql";return!o.trim()||!d||!u||!y||!_?null:{question:o.trim(),validatedSql:d,sqlDialect:_,paramsSchema:{type:"object"},permissionContext:{tenantId:u,appId:y}}}function Ud(e){const r=ka(e);return!Ue(r)||r.success!==!0?null:Array.isArray(r.rows)&&r.rows.length>0?r.rows.filter(Ue).map(o=>({...o})):typeof r.rowCount=="number"&&r.rowCount>0?[]:null}const jd=new Set(["no color","none","null","n/a","unknown","无","无颜色","空","未填","未设置","缺失"]);function _s(e){return e==null?"":String(e).trim().toLowerCase().replace(/\s+/g," ")}function Cs(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e!="string")return null;const r=e.trim().replace(/,/g,"");if(!/^-?\d+(?:\.\d+)?$/.test(r))return null;const o=Number(r);return Number.isFinite(o)?o:null}function Ss(e){const r=_s(e);return r===""||jd.has(r)}function oi(e,r){const o=Cs(e),c=Cs(r);if(o!==null&&c!==null)return Math.abs(o-c)<1e-9?1:0;if(Ss(e)&&Ss(r))return 1;const d=_s(e),u=_s(r);return!d||!u?0:d===u?1:d.includes(u)||u.includes(d)?.75:0}function Kd(e){const r=new Set;for(const o of e)for(const c of Object.keys(o))r.add(c);return[...r]}function Qd(e,r,o,c){var T,B;if(e.length===0||o.length===0)return 0;const d=Math.min(e.length,o.length);let u=0;for(let U=0;U<d;U+=1)u+=oi((T=e[U])==null?void 0:T[r],(B=o[U])==null?void 0:B[c]);u/=d;const y=new Set;let _=0;for(const U of e){let D=-1,I=0;o.forEach((x,H)=>{if(y.has(H))return;const q=oi(U[r],x[c]);q>I&&(I=q,D=H)}),D!==-1&&y.add(D),_+=I}return Math.max(u,_/e.length)}function ii(e,r){const o=e.map(d=>d[r]).filter(d=>!Ss(d));return o.length===0?!1:o.filter(d=>Cs(d)!==null).length/o.length>=.8}function ci(e,r,o,c,d){let u,y=0;for(const _ of c){if(d.has(_))continue;const T=Qd(e,r,o,_);T>y&&(y=T,u=_)}return y>=.74?u:void 0}function li(e,r,o,c,d){const u=ii(e,r),y=c.filter(_=>!d.has(_)&&ii(o,_)===u);return y.length===1?y[0]:void 0}function Yd(e,r){const o={xField:e.chart.xField,yFields:[...e.chart.yFields]},c=Kd(r);if(c.length===0)return o;const d=new Set,u=e.chart.yFields.map(_=>{const T=ci(e.chart.data,_,r,c,d)||li(e.chart.data,_,r,c,d);return T?(d.add(T),T):_});return{xField:ci(e.chart.data,e.chart.xField,r,c,d)||li(e.chart.data,e.chart.xField,r,c,d)||e.chart.xField,yFields:u}}function di(e,r,o=[]){if(!r||e.dataBinding)return e;const c=Yd(e,o);return{...e,dataBinding:{...r,fieldMapping:{...r.fieldMapping,xField:c.xField,yFields:c.yFields},paramsSchema:r.paramsSchema||{type:"object"}}}}const Jd={load_semantic_context:"加载语义上下文",load_ontology:"加载本体知识",execute_query_dispatcher:"执行查询调度",get_query_context:"获取查询上下文",get_connection_config:"获取数据源配置",search_business_glossary:"搜索术语表",match_metrics:"匹配指标",match_dimensions:"匹配维度",validate_sql:"校验 SQL",explain_plan:"分析执行计划",execute_metric_api:"执行指标查询",execute_sql_api:"执行 SQL 查询",skill:"调用技能",task:"执行子任务"},Zd={perception:"感知分析",reasoning:"推理分析",visualization:"可视化",insights:"洞察分析"};function As(e){return Jd[e]||`调用 ${e}`}function Xd(e,r){return e.role==="status"&&e.loading===!0&&e.content===As(r)}function eu(e){return Zd[e]||e}function Er(e){return e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function tu(...e){const r={};for(const o of e)if(o){if(o instanceof Headers){o.forEach((c,d)=>{r[d]=c});continue}if(Array.isArray(o)){for(const[c,d]of o)r[c]=d;continue}Object.assign(r,o)}return r}function ui(e){const r=n.ref([]),o=n.ref(null),c=n.ref(!1),d=n.ref(!1),u=n.ref(!1),y=n.ref(!1),_=n.ref(null),T=n.ref(null),B=n.ref(null),U=n.ref(null);let D=!1;const I=()=>{var v;return((v=e.headers)==null?void 0:v.call(e))??{}},x=()=>typeof e.assistantPersona=="function"?e.assistantPersona():e.assistantPersona,H=()=>{const v=bn(e.activeConversationId);return typeof v=="string"?v.trim():""},q=n.computed(()=>r.value.find(v=>v.id===o.value)??null),j=n.ref([]),Ne=n.computed(()=>id(j.value.filter(Fo)));function oe(v,R){var ee;const $=v.trim();if(!$)return;const w=(R==null?void 0:R.persisted)!==!1,Q=(R==null?void 0:R.threadId)||(w?$:"");(ee=e.onConversationChange)==null||ee.call(e,$,{id:$,...Q?{threadId:Q}:{},...R!=null&&R.clientDraftId?{clientDraftId:R.clientDraftId}:{},persisted:w})}function ue(v,R){const $=R==null?void 0:R.trim(),w=$?r.value.find(V=>V.id===$)??null:q.value;if(!w)throw new Error("当前没有可追加消息的会话");const Q={...v,id:v.id||xn(),timestamp:v.timestamp||Bn()};Ar(Q);const ee=w.messages.findIndex(V=>V.id===Q.id);if(ee>=0){const V={...w.messages[ee],...Q,timestamp:Q.timestamp||w.messages[ee].timestamp};return w.messages[ee]=V,ea(w.messages,V),qa(w.messages,V)?(w.messages.splice(ee,1),V):(ba(w.messages,V),$n(w.messages),ga(w.messages,V),V)}const M=Wo(w.messages,Q);return M||(ea(w.messages,Q),Q.cardRecommendationDraft&&qa(w.messages,Q)?Q:(Q.cardRecommendationDraft&&ba(w.messages,Q),Ko(w.messages,Q)?($n(w.messages),q.value===w&&j.value!==w.messages&&(j.value=w.messages),Q):Sd(w.messages,Q)?(q.value===w&&j.value!==w.messages&&(j.value=w.messages),Q):(ld(w.messages,Q),ga(w.messages,Q),$n(w.messages),q.value===w&&j.value!==w.messages&&(j.value=w.messages),Q)))}function ce(v,R){const $=v.trim();if(!$)return!1;const w=r.value.find(ie=>ie.id===$)??null;if(!w)return!1;const Q=Array.from(new Set(R.map(ie=>ie.trim()).filter(Boolean)));if(Q.length===0)return!1;const ee=new Set;for(const ie of w.messages){if(ie.role!=="assistant"||ie.cardRecommendationDraft||!ie.content.trim())continue;const xe=On(ie)||Zn(ie.id);xe&&ee.add(xe)}let M=0,V=!1;for(const ie of w.messages){if(ie.role!=="assistant"||ie.cardRecommendationDraft||!ie.content.trim()||On(ie))continue;const Ce=Zn(ie.id);if(Ce){ie.workbenchTurnId=Ce,V=!0;continue}for(;M<Q.length&&ee.has(Q[M]);)M+=1;const Be=Q[M];if(!Be)break;ie.workbenchTurnId=Be,ee.add(Be),M+=1,V=!0}const K=Qo(w.messages);return V||K}function ge(v,R,$){var pt;const w=v.trim(),Q=R.trim();if(!w||!Q||$.length===0)return!1;const ee=r.value.find(C=>C.id===w)??null;if(!ee)return!1;const V=$.filter(C=>C.role==="assistant"&&!C.cardRecommendationDraft&&C.content.trim()).map(C=>C.content.trim()).join(`
7
+ `).replace(/\s+/gu," ").trim();let K=V?ee.messages.findIndex(C=>C.role==="assistant"&&!C.cardRecommendationDraft&&C.content.replace(/\s+/gu," ").trim()===V):-1;if(K<0&&(K=ee.messages.findIndex(C=>sn(C,Q))),K<0)return!1;const ie=ee.messages[K],xe=$.map(C=>{const z={...C,id:C.id||xn(),loading:!1,streaming:!1,timestamp:C.timestamp||ie.timestamp||Bn(),workbenchTurnId:Q};return Go(z),Ar(z),z});let Ce=-1;for(let C=K-1;C>=0;C-=1)if(((pt=ee.messages[C])==null?void 0:pt.role)==="user"){Ce=C;break}const Be=ee.messages.slice(K+1).findIndex(C=>C.role==="user"),Ae=Be>=0?K+Be+1:ee.messages.length,ot=ee.messages.flatMap((C,z)=>{const ae=sn(C,Q),Y=!!C.cardRecommendationDraft&&Cd(C,Q,ee.messages),ye=C.content.replace(/\s+/gu," ").trim(),Te=z>Ce&&z<Ae,Me=Te&&C.role==="status",tt=z>Ce&&z<Ae&&fd(C);Me&&!tt&&Ho(C);const Dt=z>Ce&&z<Ae&&C.role==="assistant"&&!C.cardRecommendationDraft&&!!ye&&V.includes(ye),ht=Te&&C.role==="assistant"&&!C.cardRecommendationDraft&&(C.loading===!0||C.streaming===!0);return ht&&Ho(C),ae||Y||tt||Dt||ht?[z]:[]});for(let C=ot.length-1;C>=0;C-=1)ee.messages.splice(ot[C],1);const je=Math.min(K,ee.messages.length);return ee.messages.splice(je,0,...xe),xe.some(C=>!!C.workbenchInterleavedPlacement)||Qo(ee.messages),q.value===ee&&j.value!==ee.messages&&(j.value=ee.messages),!0}n.watch(q,v=>{j.value=(v==null?void 0:v.messages)??[]},{immediate:!0}),n.watch(j,v=>{q.value&&q.value.messages!==v&&(q.value.messages=v)},{flush:"sync"});async function de(v,R){return fetch(`${e.apiBaseUrl}${v}`,{...R,headers:tu(R==null?void 0:R.headers,I())})}function te(v){var ee,M;const R=new URLSearchParams,$=(ee=bn(e.chatMode))==null?void 0:ee.trim(),w=(M=bn(e.workspaceId))==null?void 0:M.trim();$&&R.set("chatMode",$),w&&R.set("workspaceId",w);const Q=R.toString();return Q?`${v}?${Q}`:v}function Pe(){const v=I();return v["x-trace-id"]||v["X-Trace-Id"]||v["x-request-id"]||v["X-Request-Id"]||""}function ne(v){var R,$;if(v instanceof Error){(R=e.onError)==null||R.call(e,v);return}($=e.onError)==null||$.call(e,new Error(typeof v=="string"?v:"未知错误"))}function fe(v,R=null,$=[],w=""){var ee;if(!e.enableChartCards||!rd(v)||(ee=v.cards)!=null&&ee.length)return;const Q=Do(v.content,{userQuestion:w});Q.length>0&&(v.cards=Q.map(M=>di(M,R,$)))}function ke(v){return!!(!v||v.persisted===!1||v.historyLoaded||v.messages.length>0)}async function it(){if(!(D||d.value)){d.value=!0;try{const v=await de(te("/chat/conversations"));if(!v.ok)return;const R=await ks(v),w=Pd(R.conversations).map(ee=>({id:ee.threadId,threadId:ee.threadId,title:ti(ee.title),messages:[],persisted:!0,historyLoaded:!1,chatMode:ee.chatMode,createdAt:ee.createdAt,updatedAt:ee.updatedAt}));r.value=o.value?[...r.value,...w.filter(ee=>ee.id!==o.value)]:w,D=!0;const Q=H();Q&&r.value.some(M=>M.id===Q)&&await bt(Q,{silent:!0})}catch(v){ne(v)}finally{d.value=!1}}}async function St(v){var $;const R=r.value.find(w=>w.id===v);if(!(!R||R.persisted===!1||R.historyLoaded||R.messages.length>0))try{const w=await de(`/chat/${v}/history`);if(!w.ok)return;const ee=(await ks(w)).messages||[];R.messages=vd(ee.map(M=>{let V="";typeof M.content=="string"?V=M.content:Array.isArray(M.content)?M.role==="tool"?V=M.content.filter(Ae=>{var ot,je;return Ae.type==="tool-result"&&((ot=Ae.output)==null?void 0:ot.type)==="text"&&!((je=Ae.output.value)!=null&&je.includes("no output"))}).map(Ae=>`**${As(Ae.toolName)}返回结果:**
8
+
9
+ ${Ae.output.value}`).join(`
10
+
11
+ `):V=M.content.filter(Ae=>Ae.type==="text").map(Ae=>Ae.text||"").join(""):Array.isArray(M.parts)&&(V=M.parts.filter(Ae=>Ae.type==="text").map(Ae=>Ae.text||"").join(""));const K={id:X(M.id)||xn(),role:M.role==="user"?"user":"assistant",content:zd(V),timestamp:X(M.timestamp)||Bn()};M.conclusion===!0&&(K.conclusion=!0);const ie=X(M.workbenchTurnId);ie&&(K.workbenchTurnId=ie),e.enableChartCards&&M.conclusion===!0&&Array.isArray(M.cards)&&(K.cards=M.cards);const xe=ri(M.taskStateDraft);xe&&(K.taskStateDraft=xe);const Ce=bs(M.queryResultTable);Ce&&(K.queryResultTable=Ce);const Be=Xo(M.queryResultTables);return Be.length>0&&(K.queryResultTables=Be),Ar(K),fe(K),K}).filter(M=>{var V,K;return M.content.trim()!==""||!!((V=M.cards)!=null&&V.length)||!!M.taskStateDraft||!!M.queryResultTable||!!((K=M.queryResultTables)!=null&&K.length)})),R.historyLoaded=!0,o.value===v&&(j.value=R.messages),($=e.onHistoryLoaded)==null||$.call(e,v)}catch(w){ne(w)}}async function bt(v,R={}){const $=v.trim();if(!$)return;const w=r.value.find(V=>V.id===o.value)??null;if(o.value===$&&ke(w))return;const Q=o.value;o.value=$,!R.silent&&Q!==$&&oe($,r.value.find(V=>V.id===$)??null);const ee=r.value.find(V=>V.id===$)??null;!ke(ee)&&!R.silent&&(u.value=!0);try{await St($)}finally{u.value=!1}}async function qe(){var Q;ut();const v=new Date().toISOString(),R=(Q=bn(e.chatMode))==null?void 0:Q.trim(),$=Jo(),w={id:$,clientDraftId:$,title:"新对话",messages:[],persisted:!1,chatMode:R||void 0,createdAt:v,updatedAt:v};return r.value.unshift(w),o.value=w.id,oe(w.id,w),w.id}function ct(v,R){const $=R.trim();if(!$||v.threadId===$)return;const w=v.id;v.id=$,v.threadId=$,v.persisted=!0,(o.value===w||o.value===v.clientDraftId)&&(o.value=$,oe($,v));const Q=r.value.findIndex(ee=>ee!==v&&ee.id===$);Q>=0&&r.value.splice(Q,1)}async function Mt(v){const R=r.value.findIndex(Q=>Q.id===v);if(R===-1)return;const $=r.value[R],w=o.value===v;if(r.value.splice(R,1),r.value.length===0)await qe();else if(w){const Q=r.value[R]??r.value[R-1]??r.value[0];await bt(Q.id)}try{$.persisted!==!1&&await de(`/chat/${v}`,{method:"DELETE"})}catch{}}async function xt(){var Q;const v=[...r.value],R=Jo(),$=(Q=bn(e.chatMode))==null?void 0:Q.trim(),w={id:R,clientDraftId:R,title:"新对话",messages:[],persisted:!1,chatMode:$||void 0};ut(),r.value=[w],o.value=R,j.value=w.messages,oe(R,w),await Promise.all(v.map(async ee=>{try{ee.persisted!==!1&&await de(`/chat/${ee.id}`,{method:"DELETE"})}catch{}}))}async function rt(v,R){const $=r.value.find(Q=>Q.id===v);$&&($.title=R);const w=Pe();try{(await de(`/chat/${v}/title`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:R,...w?{trace_id:w}:{}})})).ok&&$&&($.persisted=!0)}catch{}}async function qt(){const v=q.value;if(!(!v||c.value||y.value)){y.value=!0;try{const R=await de(`/chat/${v.id}/compact`,{method:"POST"});if(!R.ok){ne(new Error(`压缩上下文失败: ${R.status}`));return}await ks(R)}catch(R){ne(R)}finally{y.value=!1}}}function we(v){return v.messages.filter(R=>R.role!=="status").map(R=>{var K,ie;const $=ri(R.taskStateDraft),w=bs(R.queryResultTable),Q=Xo(R.queryResultTables),ee=On(R),M={content:R.content,queryResultTable:w??void 0,queryResultTables:Q.length>0?Q:void 0};return Ar(M),{id:R.id,role:R.role==="user"?"user":"assistant",content:R.content,timestamp:R.timestamp,...R.conclusion===!0?{conclusion:!0}:{},...ee?{workbenchTurnId:ee}:{},...(K=R.cards)!=null&&K.length?{cards:R.cards}:{},...(ie=M.queryResultTables)!=null&&ie.length?{queryResultTables:M.queryResultTables}:M.queryResultTable?{queryResultTable:M.queryResultTable}:{},...$?{taskStateDraft:$}:{}}}).filter(R=>{var $,w;return(typeof R.content=="string"?R.content.trim()!=="":Array.isArray(R.content)&&R.content.length>0)||!!(($=R.cards)!=null&&$.length)||!!R.queryResultTable||!!((w=R.queryResultTables)!=null&&w.length)||!!R.taskStateDraft})}async function dt(v){var Q,ee;if(!v.threadId)return;const R=we(v);if(R.length===0)return;const $=(Q=bn(e.chatMode))==null?void 0:Q.trim(),w=(ee=bn(e.workspaceId))==null?void 0:ee.trim();try{const M=await de(`/chat/${v.threadId}/history`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:v.title,...$?{chatMode:$}:{},...w?{workspaceId:w}:{},messages:R})});if(!M.ok){ne(new Error(`保存会话历史失败: ${M.status}`));return}v.persisted=!0}catch(M){ne(M)}}function Fe(v){if(!v)return;const R=j.value.findIndex(V=>V.id===v.id);if(R<0)return;const $=j.value[R],w=Fn($),Q=w&&sn($,w)?j.value.filter(V=>V.id!==$.id&&!!V.cardRecommendationDraft&&Xn(j.value,V)===w):[];if(R>=j.value.length-1&&Q.length===0)return;const ee=new Set([$.id,...Q.map(V=>V.id)]),M=j.value.filter(V=>!ee.has(V.id));j.value.splice(0,j.value.length,...M,$,...Q)}function ut(){U.value&&(U.value.abort(),U.value=null)}async function Ie(v,R={}){var Rn,vn,_n;const $=q.value;if(!$){console.error("[useChat] No active conversation");return}const w=$,Q={id:xn(),role:"user",content:v,timestamp:Bn(),...(Rn=R.attachments)!=null&&Rn.length?{attachments:R.attachments}:{}};w.messages.push(Q),w.messages.filter(Z=>Z.role==="user").length===1&&(w.title=ti(v)),c.value=!0;const ee=new AbortController;U.value=ee;let M=null,V=null,K=null,ie=null,xe=null,Ce="",Be=null;const Ae=16,ot=25,je=Ae*3;let Ke={},pt=null,C=[];const z=new Map,ae=new Map;function Y(Z){_.value=(Z==null?void 0:Z.id)??null}function ye(){Te(),xe=setTimeout(()=>{ie||mt()},2e3)}function Te(){xe&&(clearTimeout(xe),xe=null)}function Me(){Be||!M||Ce.length===0||(Be=setTimeout(()=>{if(Be=null,M&&Ce.length>0){const Z=Ce.slice(0,Ae);Ce=Ce.slice(Ae),M.content+=Z,Ce.length>0&&Me()}},ot))}function tt(){Be&&(clearTimeout(Be),Be=null),M&&Ce.length>0&&(M.content+=Ce,Ce="")}function Dt(Z=!1){const le={id:xn(),role:"assistant",content:"",loading:!0,streaming:!0,conclusion:Z,timestamp:Bn()};return w.messages.push(le),Y(w.messages[w.messages.length-1]),w.messages[w.messages.length-1]}function ht(Z){const le={id:xn(),role:"status",content:Z,loading:!0,timestamp:Bn(),startTime:Date.now()};return w.messages.push(le),w.messages[w.messages.length-1]}function f(Z){if(!Z||!Z.loading)return;const le=Date.now(),Oe=typeof Z.startTime=="number"?le-Z.startTime:0;Z.content+=`完成${Oe>0?`,用时 ${Er(Oe)}`:""}`,Z.endTime=le,Z.loading=!1}function b(Z,le){const Oe={id:xn(),role:"status",content:Z,error:Z,detail:le,loading:!1,timestamp:Bn()};return w.messages.push(Oe),w.messages[w.messages.length-1]}const E=new Map;function J(Z){if(!Z.cardRecommendationDraft)return!1;const le=Xn(w.messages,Z);if(!le||w.messages.some(Ge=>sn(Ge,le)))return!1;const Oe=hs(Z)||Z.id,ve=E.get(Oe);return E.set(Oe,ve?{...ve,...Z,timestamp:Z.timestamp||ve.timestamp}:Z),!0}function _e(Z){const le=Fn(Z);if(!le||!sn(Z,le))return!1;const Oe=[...E.entries()].filter(([,Ge])=>Xn(w.messages,Ge)===le);if(Oe.length===0||w.messages.findIndex(Ge=>Ge.id===Z.id)<0)return!1;for(const[Ge]of Oe)E.delete(Ge);for(const[,Ge]of Oe){if(qa(w.messages,Ge))continue;ea(w.messages,Ge),ba(w.messages,Ge);const We=w.messages.findIndex(Ye=>Ye.id===Z.id);We<0||(w.messages.splice(We+1,0,Ge),$n(w.messages))}return!0}function Re(Z){if(Z.removeThinking&&Xe(),Z.markThinking)return mt(),ie||w.messages[w.messages.length-1];ie!=null&&ie.initialEventsPending&&Xe();const le={...Z,id:Z.id||xn(),timestamp:Z.timestamp||Bn()};if(J(le))return le;const Oe=w.messages.findIndex(We=>We.id===le.id);if(Oe>=0){w.messages[Oe]={...w.messages[Oe],...le,timestamp:le.timestamp||w.messages[Oe].timestamp};const We=w.messages[Oe];if(ea(w.messages,We),qa(w.messages,We)){const Ye=w.messages.findIndex(Ft=>Ft.id===We.id);return Ye>=0&&w.messages.splice(Ye,1),We}return ba(w.messages,We),$n(w.messages),_e(We),ga(w.messages,We),We}const ve=ie?w.messages.findIndex(We=>We.id===(ie==null?void 0:ie.id)):-1;if(le.cardRecommendationDraft){if(ea(w.messages,le),qa(w.messages,le))return le;if(ba(w.messages,le),Ko(w.messages,le))return $n(w.messages),le}if(ve>=0){ea(w.messages,le),w.messages.splice(ve,0,le);const We=w.messages[ve];return _e(We),ga(w.messages,We),$n(w.messages),We}ea(w.messages,le),w.messages.push(le);const Ge=w.messages[w.messages.length-1];return _e(Ge),ga(w.messages,Ge),$n(w.messages),Ge}function nt(Z){var Oe;const le=Z.errorText||Z.delta||"";if(!le)return{summary:"请求失败"};try{const ve=JSON.parse(le);return{summary:(ve==null?void 0:ve.errorText)||(ve==null?void 0:ve.message)||((Oe=ve==null?void 0:ve.error)==null?void 0:Oe.message)||"请求失败",detail:typeof ve=="string"?ve:JSON.stringify(ve,null,2)}}catch{return{summary:le,detail:le}}}function Ot(Z){if(!Z)return;const le=w.messages.findIndex(Oe=>Oe.id===Z.id);le!==-1&&w.messages.splice(le,1)}function mt(Z=!1){Xe();const le={id:xn(),role:"status",content:"思考中...",loading:!0,...Z?{initialEventsPending:!0}:{},timestamp:Bn()};w.messages.push(le),ie=w.messages[w.messages.length-1]}function Xe(){Ot(ie),ie=null}function Bt(){Ot(M),M=null,Y(null)}function Zt(){Ot(V),V=null,K=null}function et(){(K==null?void 0:K.kind)==="tool"&&f(V),V=null,K=null}function Wt(){w.messages.forEach(Z=>{Z.role==="status"&&Z.loading&&Z!==ie&&f(Z)})}function aa(Z){if(!Z)return!1;if(V&&(K==null?void 0:K.kind)==="tool"&&K.name===Z)return f(V),V=null,K=null,!0;const le=[...w.messages].reverse().find(Oe=>Xd(Oe,Z));return le?(f(le),(V==null?void 0:V.id)===le.id&&(V=null,K=null),!0):!1}function dn(){var Z;Xe(),M&&(M.content.trim()===""&&!((Z=M.cards)!=null&&Z.length)?Bt():(M.loading=!1,M.streaming=!1,fe(M,pt,C,v),M=null,Y(null))),et(),Wt()}mt(!0);async function kn(Z){var Ge,We,Ye,Ft,en,Dn,Nn;const le=Z.getReader(),Oe=new TextDecoder;let ve="";for(;;){const{done:At,value:pn}=await le.read();if(At)break;ve+=Oe.decode(pn,{stream:!0});const he=ve.split(`
12
+ `);ve=he.pop()||"";for(const k of he){const P=k.trim();if(!P)continue;const L=Zo(P);if(L)switch(ie!=null&&ie.initialEventsPending&&Xe(),L.type){case"start-step":tt(),Xe(),M=Dt(L.conclusion===!0||L.kind==="conclusion");break;case"text-delta":if(Xe(),Wt(),M){M.loading=!1,M.streaming=!0;const me=L.delta||"";me.length>je?(Ce+=me,Me()):M.content+=me}ye();break;case"text-end":Te(),ye();break;case"finish-step":{tt(),Te(),Wt(),M&&M.content.trim()===""&&!((Ge=M.cards)!=null&&Ge.length)?Bt():M&&(M.loading=!1,M.streaming=!1,fe(M,pt,C,v),M=null,Y(null)),ye();break}case"tool-input-start":{if(typeof L.toolCallId=="string"&&typeof L.toolName=="string"&&z.set(L.toolCallId,L.toolName),(K==null?void 0:K.kind)==="subagent")break;Xe(),M&&M.content.trim()===""&&!((We=M.cards)!=null&&We.length)&&Bt(),et();const me=As(L.toolName);V=ht(me),K={kind:"tool",name:L.toolName};break}case"tool-input-available":{const me=L.toolName||(typeof L.toolCallId=="string"?z.get(L.toolCallId):void 0)||(K==null?void 0:K.name);if(typeof L.toolCallId=="string"&&me&&z.set(L.toolCallId,me),me==="execute_sql_api"&&typeof L.toolCallId=="string"){const be=Wd(L.input,Ke,v);be&&ae.set(L.toolCallId,be)}break}case"tool-output-available":{const me=L.toolName||(typeof L.toolCallId=="string"?z.get(L.toolCallId):void 0)||(K==null?void 0:K.name);if(me&&Fd.has(me)){const be=Gd(L.output??L.delta??L.result);Ke=qd(Ke,si(L.output??L.delta??L.result)),be&&V&&(V.detail=be)}if(me==="execute_sql_api"&&typeof L.toolCallId=="string"){const be=Ud(L.output??L.delta??L.result);if(be){const Ee=ae.get(L.toolCallId);Ee&&(pt=Ee,C=be)}}if(e.enableChartCards&&(me==="generate_chart"||me==="execute_metric_api")){if(me==="execute_metric_api"){const Ee=td(L.output??L.delta??L.result);Ee&&(B.value=Ee)}const be=nd(L.output??L.delta??L.result);if(be){me==="generate_chart"&&(B.value=null);const Ee=di(be,pt,C);T.value=Ee}}if(!(me&&aa(me))){if(V&&(K==null?void 0:K.kind)==="tool"){if(K.name==="task")Zt();else if(V.startTime){const be=Date.now(),Ee=be-V.startTime;V.content+=`完成,用时 ${Er(Ee)}`,V.endTime=be,V.loading=!1,V=null,K=null}}}Wt(),mt();break}case"tool-output-error":{if(V&&(K==null?void 0:K.kind)==="tool"){if(K.name==="task")Zt();else if(V.startTime){const me=Date.now(),be=me-V.startTime;V.content+=`失败,用时 ${Er(be)}`,V.endTime=me;const Ee=L.output||L.delta||"";try{const st=JSON.parse(Ee);V.error=st.error||st.message||Ee,V.detail=st.detail||st.details||st.reason}catch{V.error=Ee||"未知错误"}V.loading=!1,V=null,K=null}}mt();break}case"data-oh:subagent.start":{if(Xe(),(K==null?void 0:K.kind)==="tool"&&K.name!=="task")break;Zt();const me=((Ye=L.data)==null?void 0:Ye.agentName)||"",be=`执行${eu(me)}`;V=ht(be),K={kind:"subagent",name:me,taskId:(Ft=L.data)==null?void 0:Ft.taskId},(en=L.data)!=null&&en.task&&(V.detail=L.data.task);break}case"data-oh:subagent.done":{const me=((Dn=L.data)==null?void 0:Dn.agentName)||"",be=(Nn=L.data)==null?void 0:Nn.taskId,Ee=(K==null?void 0:K.kind)==="subagent"&&(be&&K.taskId===be||me&&K.name===me||!be&&!me);if(V&&Ee)if(V.startTime){const st=Date.now(),$t=st-V.startTime;V.content+=`完成,用时 ${Er($t)}`,V.endTime=st,V.loading=!1,V=null,K=null}else Zt();Xe();break}case"error":{Te(),dn();const{summary:me,detail:be}=nt(L);b(me,be),ne(new Error(me));break}}}}if(ve.trim()){const At=Zo(ve.trim());At&&(ie!=null&&ie.initialEventsPending)&&Xe(),(At==null?void 0:At.type)==="text-delta"&&M&&(M.loading=!1,M.streaming=!0,M.content+=At.delta)}}if(e.transport){let Z=w.threadId||"";try{const le=Pe(),Oe=x(),ve=Dd(e.businessGroup),Ge=(vn=bn(e.chatMode))==null?void 0:vn.trim(),We=bn(e.workspaceId),Ye=bn(e.userId),Ft=await e.transport({appendMessage:Re,consumeAssistantStream:kn,moveMessageToEnd:Fe,assistantPersona:Oe,businessGroup:ve,chatMode:Ge||void 0,threadId:w.threadId,clientDraftId:w.clientDraftId,onThreadReady:en=>{ct(w,en),Z=w.threadId||en.trim()},...(_n=R.attachments)!=null&&_n.length?{attachments:R.attachments}:{},input:v,messages:w.messages.filter(Fo),...R.quickEntry?{quickEntry:R.quickEntry}:{},traceId:le||void 0,userId:Ye,workspaceId:We,signal:ee.signal});Ft&&typeof Ft=="object"&&Ft.threadId&&(ct(w,Ft.threadId),Z=w.threadId||Ft.threadId.trim())}catch(le){dn(),le.name!=="AbortError"&&(b(`请求异常: ${ei(le)}`),ne(le))}finally{Te(),dn(),(Z||w.threadId)&&await dt(w),c.value=!1,U.value=null,_.value=null}return}try{const Z=new Error("当前 ai-chat 未配置运行态 transport;根 POST /chat 已删除,请接入 /fde-core transport。");dn(),b(Z.message),ne(Z)}catch(Z){dn(),Z.name!=="AbortError"&&(b(`请求异常: ${ei(Z)}`),ne(Z))}finally{Te(),c.value=!1,U.value=null,_.value=null}}return qe(),e.autoLoadConversations!==!1&&it(),n.watch(()=>H(),async v=>{if(!v)return;const R=r.value.some($=>$.id===v);!R&&!D&&e.autoLoadConversations!==!1||R&&await bt(v,{silent:!0})}),{conversations:r,currentConversationId:o,messages:j,contextUsage:Ne,isLoading:c,isLoadingConversations:d,isSwitchingConversation:u,isCompacting:y,streamingMessageId:_,latestChartCard:T,latestMetricCard:B,assignWorkbenchTurnIds:ce,appendMessage:ue,replaceWorkbenchTurnAnswer:ge,sendMessage:Ie,abortStream:ut,compactContext:qt,createConversation:qe,loadConversations:it,deleteConversation:Mt,clearConversations:xt,renameConversation:rt,switchConversation:bt,loadHistory:St,moveMessageToEnd:Fe}}const mi=Symbol("FSES_AI_CHAT_CONFIG_KEY"),nu={install(e,r){e.provide(mi,r),e.component("FsesAiChat",$s)}};function au(){return n.inject(mi,null)}function fi(e){const r=_t(e);return ru(r)?ou(Wa(r.dataBinding),Wa(_t(r.queryResult).dataBinding),Wa(_t(_t(r.queryResult).metadata).dataBinding),Wa(_t(_t(r.blockPlan).data).dataBinding),Wa(_t(_t(r.blockPlan).meta).dataBinding),su(r.assetRefs),_a(_t(r.queryResult).sourceLabel),_a(r.sourceLabel)):""}function ru(e){const r=_t(e.queryResult),o=[_t(e.dataBinding),_t(r.dataBinding),_t(_t(r.metadata).dataBinding),_t(_t(e.blockPlan).data).dataBinding,_t(_t(e.blockPlan).meta).dataBinding].map(_t);return e.source==="metric"||r.source==="runtime_metric"||o.some(c=>c.source==="runtime_metric"||c.bindingKind==="runtime_metric")}function Wa(e){const r=_t(e);return _a(r.metricName)||_a(r.metric_name)}function su(e){if(!Array.isArray(e))return"";for(const r of e){const o=_t(r);if(o.type!=="metric"&&o.type!=="metric_detail")continue;const c=_a(o.label);if(c)return c}return""}function ou(...e){for(const r of e){const o=_a(r);if(o)return o}return""}function _t(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function _a(e){return typeof e=="string"&&e.trim()?e.trim():""}function iu(e){return e.role==="status"&&!!e.thinkingProcess}function cu(e){return e.role==="assistant"&&!!e.loading&&!e.content.trim()}function lu(e){return e.role==="assistant"&&(!!e.loading||!!e.streaming)}function du(e){var r,o;return e.role==="assistant"&&!e.loading&&!e.streaming&&!e.content.trim()&&!((r=e.attachments)!=null&&r.length)&&!((o=e.cards)!=null&&o.length)&&!e.planDraft&&!e.cardRecommendationDraft&&!e.registeredCardInsertDraft&&!e.memoryCaptureDraft&&!e.taskStateDraft}function pi(e,r={}){const o=[];let c=[],d=[],u=[],y=!1,_=!1;const T=r.hiddenStatusMessageIds??new Set;function B(x=!1){if(c.length===0)return;const H=c.filter(q=>!T.has(q.id));H.length>0&&o.push({type:"tool-activity",messages:H,...x?{turnActive:!0}:{}}),c=[]}function U(x){if(d.length===0||x.role!=="assistant")return x;const H=[...x.thinkingProcessMessages||[],...d];return d=[],{...x,thinkingProcessMessages:H}}function D(){var j,Ne;if(d.length===0)return;const x=d;d=[];const H=x.some(oe=>oe.loading);if(!H&&_)return;const q=H||y;!q&&!x.some(oe=>oe.content.trim())||o.push({type:"assistant",message:{id:`${((j=x[0])==null?void 0:j.id)||"thinking-process"}-assistant`,role:"assistant",content:"",loading:q,streaming:q,thinkingProcessMessages:x,timestamp:((Ne=x[0])==null?void 0:Ne.timestamp)||""}})}function I(){u.length!==0&&(u.forEach(x=>o.push({type:"assistant",message:U(x)})),u=[])}for(const x of e){if(iu(x)){d.push(x);continue}if(x.role==="status"){c.push(x);continue}if(du(x)){u.push(x);continue}B(lu(x)),I(),x.role==="user"?(o.push({type:"user",message:x}),y=!0,_=!1):cu(x)?o.push({type:"thinking",message:x}):(o.push({type:"assistant",message:U(x)}),_=!0)}return B(),I(),D(),o}function Ua(e){return e.replace(/(完成|失败),用时\s*\d+(?:\.\d+)?(?:ms|s|m|秒|毫秒)\s*$/u,"$1").trim()}function uu(e){return Ua(e).replace(/[。.!!\s]+$/gu,"").replace(/(?:中|完成|失败|已完成|进行中|\.\.\.|…)+$/gu,"").replace(/[。.!!\s]+$/gu,"").trim()}function mu(e){const r=Ua(e.content);return/^加载语义上下文(?:中|完成)?(?:\.{3}|…)?$/u.test(r)||/^已加载语义上下文/u.test(r)}function fu(e){const r=Ua(e.content);return/^执行\s*(?:SQL\s*)?查询(?:中|完成)?(?:\.{3}|…)?$/u.test(r)}function pu(e){if(!e.loading)return!1;const r=Ua(e.content);return/^我在(?:查找|检查)/u.test(r)||/^(?:已找到语义候选|语义候选已找到)/u.test(r)||/^(?:我会先确认|业务口径确认中|查询可执行性检查中)/u.test(r)}function hi(e){var _;const r=e.map(T=>({...T,content:Ua(T.content)})),o=r.some(T=>T.content.startsWith("匹配本体:")),c=r.some(T=>T.content.startsWith("执行查询:")),d=r.filter(T=>!(o&&mu(T)||c&&fu(T)&&!T.detail||c&&pu(T))),u=[],y=new Set;for(let T=d.length-1;T>=0;T-=1){const B=d[T],U=(_=B.processInvocations)!=null&&_.length?`process:${B.id}`:uu(B.content);U&&y.has(U)||(U&&y.add(U),u.unshift(B))}return u}function hu(e){return hi(e)}const gu=/^workbench-turn-(.+?)-item(?:-|$)/u,yu=/^#{1,3}\s+.+(?:todo|待办|计划).*/iu,bu=/^#{2,4}\s+(?:第?\s*\d+\s*[.、::))]?\s*)?(.+?)\s*$/u,ku=/^#{1,3}\s+(?:推荐下一步|下一步|补充说明|注意事项|说明|总结)\s*$/u;function gi(e){return e.role==="status"&&/^workbench-turn-.+?-item(?:-|$)/u.test(e.id)&&!e.thinkingProcess&&!e.markThinking&&e.content.trim().length>0}function _u(e){const r=e.id.match(gu);return r!=null&&r[1]?`workbench-turn-${r[1]}`:e.id}function Cu(e){const r=e.map(o=>o.startTime).filter(o=>typeof o=="number"&&Number.isFinite(o));return r.length>0?Math.min(...r):void 0}function Su(e){const r=e.map(o=>o.endTime).filter(o=>typeof o=="number"&&Number.isFinite(o));return r.length>0?Math.max(...r):void 0}function Au(e){return e.error?"error":e.loading?"running":"done"}function wu(e){return{id:e.id,title:e.content.trim(),status:Au(e),source:"workbench-status",...e.detail?{detail:e.detail}:{},...e.error?{error:e.error}:{},...typeof e.startTime=="number"?{startedAt:e.startTime}:{},...typeof e.endTime=="number"?{endedAt:e.endTime}:{}}}function yi(e){if(e.role!=="assistant")return!1;const r=e.content.trim();return r.length>0&&/(?:todo|待办|分步\s*Todo\s*计划)/iu.test(r)}function Tu(e){return e.replace(/^第?\s*\d+\s*[.、::))]?\s*/u,"").replace(/\s+$/u,"").trim()}function Eu(e){var _,T;if(!yi(e))return null;const r=e.content.split(/\r?\n/u),o=[];let c=!1,d=null,u=[];function y(){if(!d)return;const B=u.join(`
13
+ `).trim();o.push({...d,...B?{detail:B}:{}}),d=null,u=[]}for(const B of r){const U=B.trim();if(!c){c=yu.test(U);continue}if(ku.test(U)){y();break}const D=U.match(bu),I=((T=(_=U.match(/^(#+)\s+/u))==null?void 0:_[1])==null?void 0:T.length)??0;if(D&&I>=3){y();const x=Tu(D[1]||"");x&&(d={id:`${e.id}-todo-${o.length+1}`,title:x,status:"pending",source:"assistant-markdown"});continue}d&&B.trim().length>0&&u.push(B.trimEnd())}return y(),o.length===0?null:{id:`${e.id}-todo-plan`,title:"Todo 计划",mode:"todo",steps:o,active:!1,failed:!1,claimedStatusMessageIds:[]}}function xu(e){const r=pi(e).filter(o=>o.type==="tool-activity").map(o=>o.messages.filter(gi)).filter(o=>o.length>0);return r[r.length-1]??[]}function Bu(e){return[...e].reverse().find(yi)??null}function Iu(e){const r=xu(e);if(r.length===0){const _=Bu(e);return _?Eu(_):null}const c=hi(r).filter(gi).map(wu);if(c.length===0)return null;const d=c.some(_=>_.status==="error"),u=!d&&c.some(_=>_.status==="running");return{id:`${_u(r[0])}-todo-plan`,title:d?"执行失败":u?"执行进度":"已完成",mode:"activity",steps:c,active:u,failed:d,claimedStatusMessageIds:r.map(_=>_.id),startedAt:Cu(r),endedAt:u?void 0:Su(r)}}const bi=/📌\s*口径说明|口径说明\s*[::]/u;function ki(e){return e.trim().replace(/^#{1,6}\s*/u,"").replace(/^[-*+]\s+/u,"").replace(/^>\s*/u,"").replace(/^\*\*(.*?)\*\*$/u,"$1").replace(/^__(.*?)__$/u,"$1").replace(/^`(.*?)`$/u,"$1").trim()}function _i(e){const r=ki(e);return/^(?:生成的?\s*)?SQL(?:\s*语句|\s*详情)?\s*[::]?\s*$/iu.test(r)||/^生成的?\s*SQL\s*[::]?\s*$/iu.test(r)}function Ru(e){return/^#{1,6}\s+\S/u.test(e.trim())}function vu(e){const r=e.split(/\r?\n/u),o=[];let c=!1;for(let d=0;d<r.length;d+=1){const u=r[d],y=u.trim();if(c){Ru(u)&&!_i(u)&&(c=!1,o.push(u));continue}if(_i(u)){c=!0;continue}if(/^(?:生成的?\s*)?SQL(?:\s*语句)?\s*[::]\s*$/iu.test(ki(y))){c=!0;continue}if(/^```sql\s*$/iu.test(y)){for(;d+1<r.length&&!/^```\s*$/u.test(r[d+1].trim());)d+=1;d+1<r.length&&(d+=1);continue}o.push(u)}return o.join(`
14
+ `).replace(/\n{3,}/gu,`
15
+
16
+ `).trim()}function Du(e){return e.replace(/^\s*(?:[\u{1F300}-\u{1FAFF}\u{2600}-\u{27BF}]\uFE0F?)\s*(?:\r?\n)+/u,"").trim()}function Nu(e){return/^\|?(?:\s*:?-{3,}:?\s*\|)+\s*:?-{3,}:?\s*\|?\s*$/u.test(e.trim())}function Ci(e){const r=e.trim(),o=r.startsWith("|")?r.slice(1):r;return(o.endsWith("|")?o.slice(0,-1):o).split("|").map(d=>d.trim())}function Lu(e){return`|${e.join("|")}|`}function Pu(e){const r=e.split(/\r?\n/u);return r.map((o,c)=>{if(!Nu(o)||c===0)return o;const d=r[c-1];if(!/^\s*\|.*\|\s*$/u.test(d))return o;const u=Ci(d);if(u.length===0)return o;const y=Ci(o);if(y.length===u.length)return o;const _=[...y];if(_.length>u.length)_.length=u.length;else for(;_.length<u.length;)_.push("---");return Lu(_)}).join(`
17
+ `)}function Mu(e){const r=e.split(/\r?\n/u),o=[];let c=!1,d=[],u=[];for(const y of r){const _=y.trim(),T=/^\|.*\|$/.test(_),B=/^\|[\s:-]+\|$/.test(_);if(T||B)if(c||(c=!0,d=[]),T&&bi.test(_)){const D=_.split("|").map(I=>I.trim()).filter(Boolean).filter(I=>!bi.test(I)).join(",").trim();D&&u.push(D)}else d.push(y);else{if(c){o.push(...d);for(const U of u)o.push("","### 📌 口径说明","",U);u=[],d=[],c=!1}o.push(y)}}if(c){o.push(...d);for(const y of u)o.push("","### 📌 口径说明","",y)}return o.join(`
18
+ `).replace(/\n{3,}/gu,`
19
+
20
+ `).trim()}function Ou(e){return e.replace(/^((?:[✅📊📌🔎⚠💡🎯📝📋🔍📈📉]️?)\s+\S.+)$/gmu,"### $1")}function Fu(e){return Mu(Pu(Ou(Du(vu(e)))))}function $u(e,r){const o=ta(e);if(!r)return String(o);const c=typeof r.decimalPlaces=="number"&&Number.isFinite(r.decimalPlaces)?Math.max(0,Math.min(8,Math.trunc(r.decimalPlaces))):2,d=r.valueFormat==="percent"||r.unitCode==="percent"||r.unitLabel==="%",u=d&&Math.abs(o)<=1?o*100:o,y=new Intl.NumberFormat("en-US",{minimumFractionDigits:c,maximumFractionDigits:c}).format(u),_=r.unitLabel??(d?"%":"");return`${y}${_}`}function ta(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()!==""){const r=Number(e);return Number.isFinite(r)?r:0}return 0}function ws(e){const r=new Set(e.chart.hiddenSeries??[]);return e.chart.yFields.filter(o=>!r.has(o))}function Si(e,r){const o=ws(e)[0];return o?ta(r[o]):0}function Ai(e){const r=e.chart.data.map(c=>({...c})),o=e.chart.sort??"none";return o!=="none"&&r.sort((c,d)=>{const u=Si(e,c)-Si(e,d);return o==="asc"?u:-u}),typeof e.chart.limit=="number"&&e.chart.limit>0?r.slice(0,e.chart.limit):r}const wi=3;function Vu(e){const r=e.chart.valueSpec;if(r)return o=>$u(o,r)}function Qt(e){return ta(e)}function ja(e,r){const o=e.map(c=>({field:c,lower:c.toLowerCase()}));return r.map(c=>{var d;return(d=o.find(u=>u.lower===c.toLowerCase()))==null?void 0:d.field}).find(c=>!!c)}function Vn(e){return e.chart.yFields[0]||"value"}function Ts(e,r="target"){const o=Object.keys(e);return ja(o,[r,"to","target","去向","目标","下游","流向"])||r}function Ti(e){return[...new Set(e.filter(Boolean))].map(r=>({name:r}))}function Ei(e){var U,D;const r=Ai(e),o=ws(e),c=e.chart.xField;if(e.chart.type==="candlestick"||e.chart.type==="kline"){const I=ja(o,["open","开盘","开盘价"])||o[0],x=ja(o,["close","收盘","收盘价"])||o[1],H=ja(o,["low","最低","最低价"])||o[2],q=ja(o,["high","最高","最高价"])||o[3];return{tooltip:{trigger:"axis"},grid:{left:40,right:16,top:28,bottom:28,containLabel:!0},xAxis:{type:"category",data:r.map(j=>String(j[c]??"")),boundaryGap:!0},yAxis:{type:"value",scale:!0,splitLine:{lineStyle:{color:"#eef2f7"}}},series:[{type:"candlestick",data:r.map(j=>[Qt(j[I]),Qt(j[x]),Qt(j[H]),Qt(j[q])])}]}}if(e.chart.type==="sankey"){const I=Vn(e),x=r.map(H=>{const q=Ts(H);return{source:String(H[c]??""),target:String(H[q]??""),value:Qt(H[I])}}).filter(H=>H.source&&H.target);return{tooltip:{trigger:"item"},series:[{type:"sankey",data:Ti(x.flatMap(H=>[H.source,H.target])),links:x}]}}if(e.chart.type==="heatmap"){const I=Vn(e),x=r[0]?Ts(r[0]):"target",H=[...new Set(r.map(j=>String(j[x]??"")))],q=[...new Set(r.map(j=>String(j[c]??"")))];return{tooltip:{trigger:"item"},grid:{left:48,right:16,top:28,bottom:28,containLabel:!0},xAxis:{type:"category",data:q},yAxis:{type:"category",data:H},visualMap:{min:0,max:Math.max(...r.map(j=>Qt(j[I])),1),calculable:!0,orient:"horizontal",bottom:0},series:[{type:"heatmap",data:r.map(j=>[q.indexOf(String(j[c]??"")),H.indexOf(String(j[x]??"")),Qt(j[I])])}]}}if(e.chart.type==="radar"){const I=Vn(e);return{tooltip:{},radar:{indicator:r.map(x=>({name:String(x[c]??""),max:Math.max(...r.map(H=>Qt(H[I])),1)}))},series:[{type:"radar",data:[{value:r.map(x=>Qt(x[I])),name:I}]}]}}if(e.chart.type==="funnel"){const I=Vn(e);return{tooltip:{trigger:"item"},series:[{type:"funnel",data:r.map(x=>({name:String(x[c]??""),value:Qt(x[I])}))}]}}if(e.chart.type==="gauge"){const I=Vn(e);return{tooltip:{},series:[{type:"gauge",data:[{name:String(((U=r[0])==null?void 0:U[c])??I),value:Qt((D=r[0])==null?void 0:D[I])}]}]}}if(e.chart.type==="tree"||e.chart.type==="treemap"||e.chart.type==="sunburst"){const I=Vn(e);return{tooltip:{trigger:"item"},series:[{type:e.chart.type==="tree"?"tree":e.chart.type,data:r.map(x=>({name:String(x[c]??""),value:Qt(x[I])}))}]}}if(e.chart.type==="graph"||e.chart.type==="network"){const I=Vn(e),x=r.map(H=>{const q=Ts(H);return{source:String(H[c]??""),target:String(H[q]??""),value:Qt(H[I])}}).filter(H=>H.source&&H.target);return{tooltip:{},series:[{type:"graph",layout:"force",roam:!0,data:Ti(x.flatMap(H=>[H.source,H.target])),links:x}]}}if(e.chart.type==="map"){const I=Vn(e);return{tooltip:{trigger:"item"},visualMap:{min:0,max:Math.max(...r.map(x=>Qt(x[I])),1),calculable:!0},series:[{type:"map",map:"china",data:r.map(x=>({name:String(x[c]??""),value:Qt(x[I])}))}]}}if(e.chart.type==="pie"||e.chart.type==="donut"){const I=o[0];return{tooltip:{trigger:"item"},legend:{bottom:0},series:[{type:"pie",radius:e.chart.type==="donut"?["42%","68%"]:"68%",data:I?r.map(x=>({name:String(x[c]??""),value:ta(x[I])})):[]}]}}const d=e.chart.type==="mini-bar",u=e.chart.type==="horizontal-bar",y=e.chart.type==="area",_=e.chart.type==="line"||y?"line":e.chart.type==="scatter"||e.chart.type==="bubble"?"scatter":"bar",T=d?o.slice(0,1):o,B=Vu(e);return u?{tooltip:{trigger:"axis",...B?{valueFormatter:B}:{}},grid:{left:56,right:16,top:28,bottom:16,containLabel:!0},xAxis:{type:"value",splitLine:{lineStyle:{color:"#eef2f7"}},...B?{axisLabel:{formatter:B}}:{}},yAxis:{type:"category",data:r.map(I=>String(I[c]??"")),axisTick:{show:!1}},series:T.map(I=>({name:I,type:"bar",barMinHeight:wi,data:r.map(x=>ta(x[I]))}))}:{tooltip:d?{show:!1}:{trigger:"axis",...B?{valueFormatter:B}:{}},grid:d?{left:0,right:0,top:4,bottom:0,containLabel:!1}:{left:24,right:16,top:28,bottom:24,containLabel:!0},xAxis:{type:"category",show:!d,data:r.map(I=>String(I[c]??"")),axisTick:{show:!1}},yAxis:{type:"value",show:!d,splitLine:{lineStyle:{color:"#eef2f7"}},...!d&&B?{axisLabel:{formatter:B}}:{}},series:T.map(I=>({name:I,type:_,symbolSize:e.chart.type==="bubble"?12:void 0,barWidth:d?"72%":void 0,barMinHeight:_==="bar"?wi:void 0,data:r.map(x=>ta(x[I])),smooth:e.chart.type==="line"||y,areaStyle:y?{}:void 0,itemStyle:d?{borderRadius:[3,3,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"#c084fc"},{offset:1,color:"#60a5fa"}]}}:void 0}))}}const xi=["#1f4fd4","#17a34a","#d97706","#9333ea","#0f766e","#dc2626","#0891b2"],zu=new Set(["","#fff","#ffffff","white","transparent","rgb(255,255,255)","rgba(255,255,255,1)","rgba(255,255,255,0)"]),Gu=new Set(["#dbe4f0"]),Hu=new Set(["#475569"]),qu=new Set(["#eef2f7"]),Wu=new Set(["#333","#333333","#475569","#4b5563","#62799b","#172033","#26364d","#2d3748"]),Uu=12;function Ca(e){return!!(e&&typeof e=="object"&&!Array.isArray(e))}function Es(e){return Array.isArray(e)?e.map(r=>Es(r)):Ca(e)?Object.fromEntries(Object.entries(e).map(([r,o])=>[r,Es(o)])):e}function xr(e,r){return Ca(e)?e[r]:void 0}function zn(e,r){const o=e[r];if(Ca(o))return o;const c={};return e[r]=c,c}function ju(e){return Array.isArray(e)&&e.length===xi.length&&e.every((r,o)=>String(r).toLowerCase()===xi[o])}function Ku(e){return typeof e=="string"?e.trim().toLowerCase().replace(/\s+/g,""):""}function Ka(e,r){return e==null||e===""?!0:r.has(Ku(e))}function Qu(e,r){if(r.axisColor){const o=zn(e,"axisLine"),c=zn(o,"lineStyle");Ka(c.color,Gu)&&(c.color=r.axisColor)}if(r.axisLabelColor){const o=zn(e,"axisLabel");Ka(o.color,Hu)&&(o.color=r.axisLabelColor)}if(r.splitLineColor){const o=zn(e,"splitLine"),c=zn(o,"lineStyle");Ka(c.color,qu)&&(c.color=r.splitLineColor)}}function Br(e,r){(Array.isArray(e)?e:[e]).forEach(c=>{Ca(c)&&Qu(c,r)})}function Bi(e){return e?e.closest(".workbench-root, [data-workbench-style], [data-dash-theme]")||(typeof document<"u"?document.documentElement:null):null}function Yu(e){if(!e||typeof window>"u"||typeof window.getComputedStyle!="function")return null;const r=Bi(e),o=[e,r].filter((u,y,_)=>!!u&&_.indexOf(u)===y),c=u=>{for(const y of o){const _=window.getComputedStyle(y).getPropertyValue(u).trim();if(_)return _}return""},d=Array.from({length:Uu},(u,y)=>c(`--wb-chart-color-${y+1}`)).filter(Boolean);return d.length===0?null:{colors:d,axisColor:c("--wb-chart-axis")||void 0,axisLabelColor:c("--wb-chart-axis-label")||void 0,splitLineColor:c("--wb-chart-split-line")||void 0,legendTextColor:c("--wb-chart-legend-text")||void 0,tooltipBg:c("--wb-chart-tooltip-bg")||void 0,tooltipTextColor:c("--wb-chart-tooltip-text")||void 0,backgroundColor:c("--wb-chart-background")||c("--wb-card-bg")||void 0,textColor:c("--wb-chart-text")||c("--wb-text")||c("--wb-chart-legend-text")||void 0}}function Ju(e,r){if(!(r!=null&&r.colors.length))return e;const o=Es(e);if((o.color===void 0||ju(o.color))&&(o.color=r.colors),r.backgroundColor&&Ka(o.backgroundColor,zu)&&(o.backgroundColor=r.backgroundColor),r.textColor){const c=zn(o,"textStyle");Ka(c.color,Wu)&&(c.color=r.textColor)}if(r.legendTextColor&&o.legend!==!1){const d=(Array.isArray(o.legend)?o.legend:[o.legend??{}]).map(u=>{if(!Ca(u))return u;const y={...u},_={...Ca(y.textStyle)?y.textStyle:{}};return(_.color===void 0||_.color==="")&&(_.color=r.legendTextColor),y.textStyle=_,y});o.legend=Array.isArray(o.legend)?d:d[0]}if(r.tooltipBg||r.tooltipTextColor){const c=zn(o,"tooltip");if(r.tooltipBg&&(c.backgroundColor===void 0||c.backgroundColor==="")&&(c.backgroundColor=r.tooltipBg),r.tooltipTextColor){const d=zn(c,"textStyle");(d.color===void 0||d.color==="")&&(d.color=r.tooltipTextColor)}}return Br(xr(o,"xAxis"),r),Br(xr(o,"yAxis"),r),Br(xr(o,"radiusAxis"),r),Br(xr(o,"angleAxis"),r),o}const Zu={key:0,class:"echarts-view__placeholder","aria-hidden":"true"},Xu=n.defineComponent({__name:"EChartsView",props:{option:{},height:{}},setup(e){const r=e,o=n.ref(null);let c=null,d=null,u=null,y=null;const _=n.ref(!1),T=n.ref(!1),B=n.ref(!1),U=n.computed(()=>({height:`${r.height??88}px`}));function D(ue){return Ju(ue,Yu(o.value))}function I(ue,ce){if(!c)return;const ge=Jr.prepareWorkbenchEChartsRuntimeOption(D(ue));if(typeof ce=="boolean"){c.setOption(ge,ce),Jr.bindWorkbenchEChartsRuntimeInteractions(c,ge);return}c.setOption(ge),Jr.bindWorkbenchEChartsRuntimeInteractions(c,ge)}function x(){u==null||u.disconnect(),u=null}function H(){if(x(),!o.value||typeof MutationObserver>"u")return;const ue=Bi(o.value);ue&&(u=new MutationObserver(()=>{I(r.option,!0)}),u.observe(ue,{attributes:!0,attributeFilter:["data-workbench-style","data-dash-theme","style","class"]}))}function q(){n.nextTick(()=>{c==null||c.resize()})}function j(){c||!o.value||T.value||(T.value=!0,c=ml.init(o.value),B.value=!0,I(r.option),H(),typeof ResizeObserver<"u"&&o.value&&(d=new ResizeObserver(()=>{q()}),d.observe(o.value)),T.value=!1)}function Ne(){y==null||y.disconnect(),y=null}function oe(){if(Ne(),!!o.value){if(typeof IntersectionObserver>"u"){_.value=!0,j();return}y=new IntersectionObserver(ue=>{for(const ce of ue)ce.isIntersecting&&(_.value=!0,j(),Ne())},{root:null,rootMargin:"100px 0px 100px 0px",threshold:0}),o.value&&y.observe(o.value)}}return n.onMounted(()=>{oe()}),n.watch(()=>r.option,ue=>{I(ue,!0)},{deep:!0}),n.watch(()=>r.height,()=>{q()}),n.onUnmounted(()=>{Ne(),x(),d==null||d.disconnect(),d=null,c==null||c.dispose(),c=null}),(ue,ce)=>(n.openBlock(),n.createElementBlock("div",{class:"echarts-view",style:n.normalizeStyle(U.value)},[B.value?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("div",Zu,[...ce[0]||(ce[0]=[n.createElementVNode("span",{class:"echarts-view__spinner"},null,-1),n.createElementVNode("span",{class:"echarts-view__label"},"图表加载中",-1)])])),n.createElementVNode("div",{ref_key:"el",ref:o,class:"echarts-view__chart"},null,512)],4))}}),on=(e,r)=>{const o=e.__vccOpts||e;for(const[c,d]of r)o[c]=d;return o},Ii=on(Xu,[["__scopeId","data-v-a62de5ab"]]),em={class:"chart-card__header"},tm={class:"chart-card__heading"},nm={class:"chart-card__title"},am={key:0,class:"chart-card__version"},rm={key:0,class:"chart-card__period"},sm={key:1,class:"chart-card__summary"},om={class:"chart-card__meta"},im={class:"chart-card__meta-item"},cm={class:"chart-card__meta-item"},lm={key:0,class:"chart-card__meta-item chart-card__meta-item--prompt"},dm={key:2,class:"chart-card__actions"},um=["disabled","onClick"],Ri=on(n.defineComponent({__name:"ChartCardRenderer",props:{card:{},showInsertAction:{type:Boolean}},emits:["insertCard"],setup(e,{emit:r}){const o=e,c=r,d=n.ref(null),u={view:"查看",download:"下载","insert-left":"插入左侧","save-doc":"存文档库","save-kb":"存知识库",upgrade:"升级"},y=n.computed(()=>Ei(o.card)),_=n.computed(()=>o.card.chart.type==="mini-bar"?88:240),T=n.computed(()=>{var I;return(I=o.card.meta)==null?void 0:I.version}),B=n.computed(()=>(o.card.actions||[]).filter(I=>I!=="insert-left"||o.showInsertAction));function U(I){return I==="download"&&o.card.permission.downloadable===!1}function D(I){var x;if(!U(I)&&I==="insert-left"){const H=Math.ceil(((x=d.value)==null?void 0:x.getBoundingClientRect().height)||0);c("insertCard",{...o.card,meta:{...o.card.meta,...H>0?{workbenchAdaptiveHeightPx:H}:{}}})}}return(I,x)=>{var H;return n.openBlock(),n.createElementBlock("article",{ref_key:"cardRef",ref:d,class:"chart-card"},[n.createElementVNode("header",em,[n.createElementVNode("div",tm,[n.createElementVNode("h3",nm,n.toDisplayString(e.card.title),1),T.value?(n.openBlock(),n.createElementBlock("span",am,"v"+n.toDisplayString(T.value),1)):n.createCommentVNode("",!0)])]),e.card.period?(n.openBlock(),n.createElementBlock("div",rm,n.toDisplayString(e.card.period),1)):n.createCommentVNode("",!0),n.createVNode(Ii,{class:"chart-card__chart",option:y.value,height:_.value},null,8,["option","height"]),e.card.summary?(n.openBlock(),n.createElementBlock("p",sm,n.toDisplayString(e.card.summary),1)):n.createCommentVNode("",!0),n.createElementVNode("dl",om,[n.createElementVNode("div",im,[x[0]||(x[0]=n.createElementVNode("dt",null,"数据来源",-1)),n.createElementVNode("dd",null,n.toDisplayString(e.card.source.label),1)]),n.createElementVNode("div",cm,[x[1]||(x[1]=n.createElementVNode("dt",null,"权限",-1)),n.createElementVNode("dd",null,n.toDisplayString(e.card.permission.label),1)]),(H=e.card.meta)!=null&&H.prompt?(n.openBlock(),n.createElementBlock("div",lm,[x[2]||(x[2]=n.createElementVNode("dt",null,"需求",-1)),n.createElementVNode("dd",null,n.toDisplayString(e.card.meta.prompt),1)])):n.createCommentVNode("",!0)]),B.value.length?(n.openBlock(),n.createElementBlock("div",dm,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(B.value,q=>(n.openBlock(),n.createElementBlock("button",{key:q,type:"button",class:"chart-card__business-action",disabled:U(q),onClick:j=>D(q)},n.toDisplayString(u[q]),9,um))),128))])):n.createCommentVNode("",!0)],512)}}}),[["__scopeId","data-v-6ac5a2cd"]]),mm=/^\/?echarts-system-card-templates\/icons\/[a-z0-9-]+-[a-f0-9]{12}-[a-f0-9]{12}\.svg$/u;function fm(){const e=n.ref({}),r=n.ref({});function o(_){if(typeof _!="string")return"";const T=_.trim();return mm.test(T)?T.startsWith("/")?T.slice(1):T:""}function c(_){const T=o(_);T&&(e.value={...e.value,[T]:!0})}function d(_){const T=o(_);!T||e.value[T]||(r.value={...r.value,[T]:!0})}function u(_){const T=o(_);return!!(T&&r.value[T]&&!e.value[T])}function y(_){const T=o(_);return!!(T&&!e.value[T])}return{isLoaded:u,markFailed:c,markLoaded:d,resolvePath:o,shouldShow:y}}function Gn(e){const r=vi(e.key),o=r?hm(r,e.labels??{}):"",c=xs(e.explicitLabel,r);return o||c||r}function pm(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function vi(e){return typeof e=="string"&&e.trim()?e.trim():""}function xs(e,r){const o=vi(e);return!o||r&&o===r.trim()?"":o}function hm(e,r){return xs(r[e],e)}function gm(e){return pm(e)?Object.fromEntries(Object.entries(e).flatMap(([r,o])=>{const c=xs(o,r);return c?[[r,c]]:[]})):{}}const Hn=["runtime_metric","execute_metric_api","metric_execute"],qn=["semantic_sql","execute_sql","query_sql"];function Ir(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function cn(e){return Ir(e)?e:{}}function In(e){if(Ir(e))return e;if(typeof e!="string"||!e.trim())return{};try{const r=JSON.parse(e);return Ir(r)?r:{}}catch{return{}}}function fn(e){return typeof e=="string"&&e.trim()?e.trim():""}function ym(e){return Ir(e)?(fn(e.value)||fn(e.source)||fn(e.kind)||fn(e.type)).toLowerCase():fn(e).toLowerCase()}function Ht(e,r){const o=ym(e);return!!(o&&r.some(c=>o===c||o.includes(c)))}function Di(e){const r=cn(e),o=In(e==null?void 0:e.dataBinding),c=cn(o.queryResult),d=cn(c.data),u=cn(e==null?void 0:e.queryResult),y=cn(u.data),_=cn(r.blockPlan),T=cn(_.data),B=In(T.dataBinding),U=cn(_.meta),D=cn(U.queryResult),I=cn(D.data);return[r,o,c,In(c.dataBinding),d,In(d.dataBinding),u,In(u.dataBinding),y,In(y.dataBinding),T,B,cn(B.queryResult),U,In(U.dataBinding),D,In(D.dataBinding),I,In(I.dataBinding)]}function Ni(e){if(Ht(e.source,Hn)||Ht(e.bindingKind,Hn)||Ht(e.binding_kind,Hn)||Ht(e.serviceOperation,Hn)||Ht(e.service_operation,Hn)||Ht(e.taskKind,Hn)||Ht(e.task_kind,Hn)||Ht(e.value,Hn))return!0;const r=cn(e.paramsSchema);if(Array.isArray(r.metricFilterCandidates))return!0;const o=fn(e.executeApi),c=fn(e.refreshApi);return o.includes("/metric/metrics/execute")||c.includes("/metric/metrics/execute")}function bm(e){return!!(Ni(e)||fn(e.metricCode)||fn(e.metric_code)||fn(e.metricId)||fn(e.metric_id))}function km(e){return Ht(e.source,qn)||Ht(e.bindingKind,qn)||Ht(e.binding_kind,qn)||Ht(e.serviceOperation,qn)||Ht(e.service_operation,qn)||Ht(e.taskKind,qn)||Ht(e.task_kind,qn)||Ht(e.value,qn)}function Bs(e){if(!e)return!1;if(e.source==="metric")return!0;const r=Di(e);return e.source==="sql"?r.some(Ni):r.some(bm)}function _m(e){return!e||e.source==="metric"||Bs(e)?!1:e.source==="sql"?!0:Di(e).some(km)}const Cm="需要补充配置后才能预览";function Qa(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function ze(e){return Qa(e)?e:{}}function Ct(e){return typeof e=="string"?e.trim():""}function Sa(e,r){const o=Ct(e);return!o||o===r.trim()?"":o}function ln(e){const r=ze(e);return Object.fromEntries(Object.entries(r).flatMap(([o,c])=>{const d=Sa(c,o);return d?[[o,d]]:[]}))}function Li(e){return Array.isArray(e)?e.map(Rr).filter(Boolean):[]}function Is(e,r){if(!Array.isArray(e))return{};const o=Li(r);return Object.fromEntries(e.flatMap((c,d)=>{const u=(Qa(c)?Rr(c):o[d])||"",y=Qa(c)?Sa(c.label,u)||Sa(c.title,u)||Sa(c.displayName,u):Sa(c,u);return u&&y?[[u,y]]:[]}))}function Pi(e,r){if(!Array.isArray(e))return{};const o=e.find(Qa);if(!o)return{};const c=Li(r);return Object.fromEntries(Object.keys(o).flatMap((d,u)=>{const y=c[u]||"",_=Sa(d,y);return y&&_?[[y,_]]:[]}))}function Aa(e){const r=ze(e.data),o=Array.isArray(e.columns)?e.columns:r.columns;return{...Is(r.displayColumns,o),...Is(e.displayColumns,o),...Is(r.columnMetadata,o),...Pi(r.displayRows,o),...Pi(e.displayRows,o)}}function Rr(e){if(typeof e=="string")return e.trim();const r=ze(e);return Ct(r.key)||Ct(r.dataIndex)||Ct(r.field)||Ct(r.name)}function Mi(e,r,o,c){if(typeof e=="string")return Gn({key:e,labels:o});const d=ze(e);return Gn({key:r,explicitLabel:Ct(d.label)||Ct(d.title)||Ct(d.displayName),labels:o,role:d.role})}function wa(e){return Array.isArray(e)?Object.fromEntries(e.map((r,o)=>{const c=Rr(r);if(!c)return null;const d=Mi(r,c,{});return d&&d!==c?[c,d]:null}).filter(r=>!!r)):{}}function Oi(e){const r=new Set;return e.filter(o=>r.has(o.value)?!1:(r.add(o.value),!0))}function Rs(e){const r=ze(e==null?void 0:e.cardConfig),o=ze(e==null?void 0:e.selectedConfig),c=ze(o.values),d=ze(e==null?void 0:e.dataBinding),u=ze(e==null?void 0:e.queryResult),y=ze(u.data),_=ze(u.dataBinding),T=ze(d.queryResult),B=ze(T.data),U=ze(e==null?void 0:e.blockPlan),D=ze(U.data),I=ze(D.dataBinding),x=ze(U.meta),H=ze(x.queryResult);return{...wa(B.columns),...wa(T.columns),...wa(H.columns),...wa(D.columns),...wa(y.columns),...wa(u.columns),...ln(B.fieldLabels),...ln(T.fieldLabels),...ln(H.fieldLabels),...ln(I.fieldLabels),...ln(D.fieldLabels),...ln(y.fieldLabels),...ln(_.fieldLabels),...ln(u.fieldLabels),...ln(d.fieldLabels),...ln(o.fieldLabels),...ln(c.fieldLabels),...ln(r.fieldLabels),...Aa(B),...Aa(T),...Aa(H),...Aa(D),...Aa(y),...Aa(u)}}function Fi(e){const r=ze(e==null?void 0:e.cardConfig),o=ze(e==null?void 0:e.selectedConfig),c=ze(o.values),d=ze(e==null?void 0:e.dataBinding);return[ze(r.fieldMapping),ze(o.fieldMapping),ze(c.fieldMapping),ze(d.fieldMapping)].find(y=>Object.keys(y).length>0)??{}}function $i(e){if(!e)return[];const r=ze(e.queryResult),o=ze(r.data),c=Rs(e),u=(Array.isArray(r.columns)?r.columns:Array.isArray(o.columns)?o.columns:[]).map((T,B)=>{const U=Rr(T);if(!U)return null;const D=ze(T);return{value:U,label:Mi(T,U,c),type:Ct(D.type)||void 0,role:Ct(D.role)||void 0}}).filter(T=>!!T);if(u.length>0)return Oi(u);const _=(Array.isArray(r.rows)?r.rows:Array.isArray(o.rows)?o.rows:[]).find(Qa);return _?Oi(Object.keys(_).map((T,B)=>({value:T,label:Gn({key:T,labels:c})}))):[]}function Vi(e){return $i(e).length>0}function Ya(e,r){if(typeof e=="string")return Gn({key:e,labels:r});const o=ze(e),c=Ct(o.name)||Ct(o.key)||Ct(o.field);return c?Gn({key:c,explicitLabel:Ct(o.label)||Ct(o.displayName),labels:r}):""}function vs(e,r){if(!Array.isArray(e))return"";const o=e.map(c=>Ya(c,r)).filter(Boolean);return o.length<=2?o.join("、"):`${o.slice(0,2).join("、")}等 ${o.length} 项`}function Ja(e,r,o,c){c&&e.push({key:r,text:`${o}:${c}`})}function na(e){const r=ze(e==null?void 0:e.dataBinding);return Ct(r.filterSummary)}function zi(e){const r=ze(e.configRequirement),o=ze(e.diagnostics);return Ct(r.message)||Ct(e.previewReason)||Ct(e.diagnosticReason)||vs(o.reasonCodes,{})||Cm}function Gi(e){return e.nextAction==="execute_query"||e.nextAction==="disabled"||e.previewStatus==="requires_execution"||e.previewStatus==="empty"||e.previewStatus==="blocked"}function Sm(e){var r;return Gi(e)||!Bs(e)||!Vi(e)?!1:e.previewStatus==="requires_config"?((r=e.configRequirement)==null?void 0:r.kind)==="field_mapping":e.previewStatus==="ready"||!e.previewStatus}function Am(e,r){return r==="table"||e.dataShape==="rows"||e.dataShape==="table"||/\.table\b/u.test(e.capabilityId)||/\.list\b/u.test(e.capabilityId)||e.capabilityId.includes(".list")}function wm(e){return e.dataShape==="metricSummary"||/metric|指标|数值/u.test(e.capabilityId)}function Hi(e){var B;const{selectedItem:r,previewMode:o}=e,c=[],d=[];if(Gi(r))return{chips:c,actions:d,diagnostic:Ct(r.previewReason)||Ct(r.diagnosticReason)};if(r.previewStatus==="requires_config"&&((B=r.configRequirement)==null?void 0:B.kind)!=="field_mapping")return{chips:c,actions:d,diagnostic:zi(r)};const u=Rs(r),y=Fi(r);Am(r,o)||(wm(r)?Ja(c,"metric","指标",vs(y.yFields,u)||Ya(y.yField??y.valueField,u)):(Ja(c,"x","X",Ya(y.xField??y.labelField,u)),Ja(c,"y","Y",vs(y.yFields,u)||Ya(y.yField??y.valueField,u)),Ja(c,"group","分组",Ya(y.groupField,u))));const T=na(r);return Ja(c,"filter","筛选",T),{chips:c,actions:d,diagnostic:""}}const qi={bar:"bar",line:"line",pie:"pie",scatter:"scatter",geomap:"map",map:"map",candlestick:"candlestick",radar:"radar",boxplot:"boxplot",heatmap:"heatmap",graph:"network",lines:"lines",tree:"tree",treemap:"treemap",sunburst:"sunburst",parallel:"parallel",sankey:"sankey",funnel:"funnel",gauge:"gauge",pictorialbar:"pictorialBar",themeriver:"themeRiver",calendar:"calendar",custom:"graphic",gl3d:"scene3D"},Tm={waterfall:"waterfall",pareto:"pareto",stack:"stackedBar",stacked:"stackedBar",race:"ranking",ranking:"ranking",rank:"ranking",sort:"ranking",doughnut:"donut",donut:"donut",radial:"radialTree",gauge:"gauge",clock:"clockGauge",progress:"progress",globe:"globe3D",bar3d:"bar3D",scatter3d:"scatter3D",surface:"surface3D",line3d:"lines",lines3d:"lines",linesgl:"lines",graphgl:"network",geo3d:"map",map3d:"map",flamegraph:"treemap",gantt:"timeline"},Em={...qi,graph:"network"};function Wn(e){return typeof e=="string"&&e.trim().length>0?e.trim():""}function Ds(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function Wi(e){return Array.isArray(e)?e.flatMap(r=>{const o=Wn(r);return o?[o]:[]}):[]}function vr(e){const r=Wn(e);if(!r)return[];const o=[];let c="";const d=()=>{if(!c)return;const u=c.toLowerCase();o.push(u);const y=Im(u);y&&y!==u&&o.push(y),c=""};for(const u of r){if(xm(u)){d();continue}Bm(u)&&c&&d(),c+=u}return d(),o}function xm(e){return e==="."||e==="/"||e==="-"||e==="_"||e===":"||e===" "}function Bm(e){return e>="A"&&e<="Z"}function Im(e){let r=e.length;for(;r>0&&e.charCodeAt(r-1)>=48&&e.charCodeAt(r-1)<=57;)r-=1;return e.slice(0,r)}function Rm(e){const r=e.split(".");return r[0]==="card"&&r[1]==="echarts"&&r[2]||""}function vm(e){const r=e.split(".");return r[0]==="card"&&r[1]==="echarts"&&r[3]||""}function Ui(e){return!Ds(e.option)||!Array.isArray(e.option.series)?[]:e.option.series.filter(Ds)}function Dm(e){const r=[...Wi(e.seriesTypes),...Ui(e).flatMap(o=>{const c=Wn(o.type);return c?[c]:[]})];return new Set(r.map(o=>o.toLowerCase()))}function Nm(e){const r=[...vr(e.exampleId),...vr(e.templateType),...vr(vm(e.capabilityId)),...Wi(e.tags).flatMap(vr)];if(r.includes("ring")&&r.includes("gauge"))return"donutGauge";if(r.includes("clock")&&r.includes("gauge"))return"clockGauge";if(r.includes("rose")&&r.includes("type"))return"rosePie";if(r.includes("multiple")&&r.includes("pie"))return"multiPie";if(r.includes("calendar")&&r.includes("pie")||r.includes("calendar")&&r.includes("heatmap"))return"calendar";if(r.includes("map")&&r.includes("pie"))return"map";if(r.includes("line")&&r.includes("3d")||r.includes("lines")&&r.includes("gl"))return"lines";if(r.includes("graph")&&r.includes("gl"))return"network";if(r.includes("geo")&&r.includes("3d")||r.includes("map")&&r.includes("3d"))return"map";if(r.includes("error")&&r.includes("bar"))return"boxplot";for(const o of r){const c=Tm[o];if(c)return c}return r.includes("bar")&&r.includes("line")?"mixedBarLine":r.includes("3d")&&r.includes("bar")?"bar3D":r.includes("3d")&&r.includes("scatter")?"scatter3D":""}function Lm(e){const r=Ui(e),o=Dm(e);if(o.has("bar")&&o.has("line"))return"mixedBarLine";if(r.some(c=>Wn(c.type).toLowerCase()==="line"&&Ds(c.areaStyle)))return"area";if(r.some(c=>Wn(c.type).toLowerCase()==="pie"&&Array.isArray(c.radius)))return"donut";if(r.some(c=>Wn(c.type).toLowerCase()==="bar"&&Wn(c.stack)))return"stackedBar";for(const c of o){const d=Em[c];if(d&&d!=="bar")return d}return o.has("bar")?"bar":""}function Pm(e){const r=Wn(e.mainCategory||Rm(e.capabilityId)).toLowerCase(),o=qi[r]||"",c=Nm(e);if(c)return c;const d=Lm(e);return d&&(r==="bar"||r==="pie"||r==="custom"||!o)?d:o||d||"bar"}const Mm=new Set(["bar","line","pie","scatter","radar","funnel","heatmap","gauge","tree","treemap","sankey","graph","sunburst","parallel","pictorialBar","themeRiver","candlestick","boxplot"]);function Za(e){return typeof e=="string"&&e.trim().length>0?e.trim():""}function Om(e){return Array.isArray(e)?e.flatMap(r=>{const o=Za(r);return o?[o]:[]}):[]}function ji(e){if(!e)return null;const r=Za(e.mainCategory),o=Za(e.protocolType),c=Om(e.seriesTypes),d=c.map(y=>y.toLowerCase()),u=[Za(e.exampleId),Za(e.templateType)].join(" ").toLowerCase();return!r&&!o&&c.length===0||o==="scene3D"||o==="timeline"||r==="custom"||r==="gl3d"?null:r==="geoMap"||o==="geo"?"map":o==="network"?r==="sankey"||d.includes("sankey")?"sankey":"network":o==="tree"?["tree","treemap","sunburst"].includes(r)?r:"tree":r==="calendar"?"heatmap":r==="pictorialBar"?"pictorialBar":r==="themeRiver"?"themeRiver":d.includes("bar")&&d.includes("line")?"mixedBarLine":r==="pie"&&/(?:half[-_\s]?donut|semi[-_\s]?(?:donut|circle)|piehalfdonut)/iu.test(u)?"halfDonut":Mm.has(r)?r:null}const Fm={"card.echarts.bar.bar1":"/echarts-system-card-templates/icons/bar1-868ae2ea577a-4b5eb433decf.svg","card.echarts.bar.barAnimationDelay":"/echarts-system-card-templates/icons/bar-animation-delay-ef3572258fdf-324a9bd21b49.svg","card.echarts.bar.barBackground":"/echarts-system-card-templates/icons/bar-background-514ab16cd8d4-c92c0ccb86d4.svg","card.echarts.bar.barBreaksBrush":"/echarts-system-card-templates/icons/bar-breaks-brush-fc39371592aa-e3bd38bd523d.svg","card.echarts.bar.barBreaksSimple":"/echarts-system-card-templates/icons/bar-breaks-simple-1cd0134a76a9-059be18fb92a.svg","card.echarts.bar.barBrush":"/echarts-system-card-templates/icons/bar-brush-3db143b212fd-756a886cc8b5.svg","card.echarts.bar.barDataColor":"/echarts-system-card-templates/icons/bar-data-color-2ecb0f9d8bc7-6741bc4d7c9e.svg","card.echarts.bar.barDrilldown":"/echarts-system-card-templates/icons/bar-drilldown-ea02f6fc374f-2197964f9434.svg","card.echarts.bar.barGradient":"/echarts-system-card-templates/icons/bar-gradient-95c951868f26-e61ee7801434.svg","card.echarts.bar.barLabelRotation":"/echarts-system-card-templates/icons/bar-label-rotation-9221e2c4bba5-eb3c36872d05.svg","card.echarts.bar.barMultiDrilldown":"/echarts-system-card-templates/icons/bar-multi-drilldown-869c74e782f3-6215bbec7ac8.svg","card.echarts.bar.barNegative":"/echarts-system-card-templates/icons/bar-negative-760f8ebd2092-f5a4da535e5c.svg","card.echarts.bar.barNegative2":"/echarts-system-card-templates/icons/bar-negative2-f095a7ffece0-c95865a44d98.svg","card.echarts.bar.barPolarLabelRadial":"/echarts-system-card-templates/icons/bar-polar-label-radial-3ac627032a9f-5067ad460916.svg","card.echarts.bar.barPolarLabelTangential":"/echarts-system-card-templates/icons/bar-polar-label-tangential-371972119d45-62e6d764f9c8.svg","card.echarts.bar.barPolarRealEstate":"/echarts-system-card-templates/icons/bar-polar-real-estate-e6cd87b53072-ab41a88c0e60.svg","card.echarts.bar.barPolarStack":"/echarts-system-card-templates/icons/bar-polar-stack-f1da21cfca6f-a554fe63f111.svg","card.echarts.bar.barPolarStackRadial":"/echarts-system-card-templates/icons/bar-polar-stack-radial-979647bacb48-de54f97acd9d.svg","card.echarts.bar.barRace":"/echarts-system-card-templates/icons/bar-race-581194f86444-a54d9963d03a.svg","card.echarts.bar.barRaceCountry":"/echarts-system-card-templates/icons/bar-race-country-e7ecf4ca9483-126444c1436a.svg","card.echarts.bar.barRichText":"/echarts-system-card-templates/icons/bar-rich-text-f30feba4a375-1d50477de00e.svg","card.echarts.bar.barSimple":"/echarts-system-card-templates/icons/bar-simple-d1634ca3d005-1d9ba8fee970.svg","card.echarts.bar.barStack":"/echarts-system-card-templates/icons/bar-stack-d161ba04bf4d-e7a5fb22b338.svg","card.echarts.bar.barStackBorderRadius":"/echarts-system-card-templates/icons/bar-stack-borderradius-10d53ad18e33-756853e2b77a.svg","card.echarts.bar.barStackNormalization":"/echarts-system-card-templates/icons/bar-stack-normalization-ff83fb2fb7f1-b660b4dd9012.svg","card.echarts.bar.barStackNormalizationAndVariation":"/echarts-system-card-templates/icons/bar-stack-normalization-and-variation-60a15bd78b88-b660b4dd9012.svg","card.echarts.bar.barTickAlign":"/echarts-system-card-templates/icons/bar-tick-align-7dda661d4105-1d8151a1c780.svg","card.echarts.bar.barWaterfall":"/echarts-system-card-templates/icons/bar-waterfall-b7f6acf0dd6d-533ed6fac1c1.svg","card.echarts.bar.barWaterfall2":"/echarts-system-card-templates/icons/bar-waterfall2-8475d88862c1-c5f1e5a79061.svg","card.echarts.bar.barYCategory":"/echarts-system-card-templates/icons/bar-y-category-e5a42011beb9-c91000071987.svg","card.echarts.bar.barYCategoryStack":"/echarts-system-card-templates/icons/bar-y-category-stack-92f5de6d605c-6385e668c798.svg","card.echarts.bar.datasetEncode0":"/echarts-system-card-templates/icons/dataset-encode0-025f8403e071-0be39b09d4b7.svg","card.echarts.bar.datasetSeriesLayoutBy":"/echarts-system-card-templates/icons/dataset-series-layout-by-451f2638a715-258361ccfdd7.svg","card.echarts.bar.datasetSimple0":"/echarts-system-card-templates/icons/dataset-simple0-e29f09988354-93a572a25e20.svg","card.echarts.bar.datasetSimple1":"/echarts-system-card-templates/icons/dataset-simple1-6154241093ca-93a572a25e20.svg","card.echarts.bar.dataTransformSortBar":"/echarts-system-card-templates/icons/data-transform-sort-bar-8c764fdd3792-39eac0f483a9.svg","card.echarts.bar.docExampleAriaDecalNewspaper":"/echarts-system-card-templates/icons/doc-example-aria-decal-newspaper-9b41b84afc8f-a38e649306ec.svg","card.echarts.bar.docExampleAriaDecalSimple":"/echarts-system-card-templates/icons/doc-example-aria-decal-simple-3b72aa9ef40d-2d84e845964f.svg","card.echarts.bar.docExampleBarDataZoomFilterMode":"/echarts-system-card-templates/icons/doc-example-bar-datazoom-filtermode-997633fc8fe1-680687a8e39f.svg","card.echarts.bar.docExampleBarGridBarGap":"/echarts-system-card-templates/icons/doc-example-bargrid-bargap-31792daf1376-e821d276bf3b.svg","card.echarts.bar.docExampleCanvasVsSvg":"/echarts-system-card-templates/icons/doc-example-canvas-vs-svg-def42d9a2eef-e6a6128f9880.svg","card.echarts.bar.docExampleCanvasVsSvgEn":"/echarts-system-card-templates/icons/doc-example-canvas-vs-svg-en-cce729b24fda-e6a6128f9880.svg","card.echarts.bar.docExampleDatasetEncodeSimple0":"/echarts-system-card-templates/icons/doc-example-dataset-encode-simple0-eb5bca665886-c56936ebe8ae.svg","card.echarts.bar.docExampleDataTransformMultipleSortBar":"/echarts-system-card-templates/icons/doc-example-data-transform-multiple-sort-bar-794ba5b76298-39eac0f483a9.svg","card.echarts.bar.docExampleGettingStarted":"/echarts-system-card-templates/icons/doc-example-getting-started-0a038f6781b6-b0d5463e7c3e.svg","card.echarts.bar.docExamplePictorialBarPosition":"/echarts-system-card-templates/icons/doc-example-pictorialbar-position-a627bcf618bc-17cddda2166a.svg","card.echarts.bar.docExamplePictorialBarSymbolSize":"/echarts-system-card-templates/icons/doc-example-pictorialbar-symbolsize-03d48c6612f0-a4ef999ae547.svg","card.echarts.bar.docExamplePolarEndAngle":"/echarts-system-card-templates/icons/doc-example-polar-end-angle-9d2f3c518f48-f9ff947a881b.svg","card.echarts.bar.docExampleTutorialAsync":"/echarts-system-card-templates/icons/doc-example-tutorial-async-3783e444ccd6-39eac0f483a9.svg","card.echarts.bar.docExampleTutorialLoading":"/echarts-system-card-templates/icons/doc-example-tutorial-loading-e49a537ba945-39eac0f483a9.svg","card.echarts.bar.docExampleValueAnimationSimple":"/echarts-system-card-templates/icons/doc-example-value-animation-simple-e36e10c4bf74-38bba0671c4c.svg","card.echarts.bar.dynamicData":"/echarts-system-card-templates/icons/dynamic-data-3a92aef4e1bc-68e990f80b3c.svg","card.echarts.bar.mixLineBar":"/echarts-system-card-templates/icons/mix-line-bar-3560263980f6-9217c143ef1c.svg","card.echarts.bar.mixTimelineFinance":"/echarts-system-card-templates/icons/mix-timeline-finance-ab32474d2c52-165ab31a1cf6.svg","card.echarts.bar.mixZoomOnValue":"/echarts-system-card-templates/icons/mix-zoom-on-value-7488ff4f4696-680687a8e39f.svg","card.echarts.bar.multipleYAxis":"/echarts-system-card-templates/icons/multiple-y-axis-f7b92b0b6890-6ee8ca4318cb.svg","card.echarts.bar.polarEndAngle":"/echarts-system-card-templates/icons/polar-endangle-b54fb886db15-06611c1a258c.svg","card.echarts.bar.polarRoundCap":"/echarts-system-card-templates/icons/polar-roundcap-aedf5d390911-a1715e7d15fd.svg","card.echarts.bar.watermark":"/echarts-system-card-templates/icons/watermark-50c40638b3c6-ecee7c43f8a3.svg","card.echarts.boxplot.boxplotLightVelocity":"/echarts-system-card-templates/icons/boxplot-light-velocity-dcbaab453cff-97fa8253dda0.svg","card.echarts.boxplot.boxplotLightVelocity2":"/echarts-system-card-templates/icons/boxplot-light-velocity2-3e1daf9bce5a-eefabdf90521.svg","card.echarts.boxplot.boxplotMulti":"/echarts-system-card-templates/icons/boxplot-multi-c8fe3b7b63f7-e48008751ca5.svg","card.echarts.boxplot.dataTransformAggregate":"/echarts-system-card-templates/icons/data-transform-aggregate-62b2102fd9df-21c1d9c4805f.svg","card.echarts.calendar.calendarHorizontal":"/echarts-system-card-templates/icons/calendar-horizontal-6b41070ee63d-eff3281125c0.svg","card.echarts.calendar.calendarLunar":"/echarts-system-card-templates/icons/calendar-lunar-983267b2bffa-7baba259915e.svg","card.echarts.calendar.calendarSimple":"/echarts-system-card-templates/icons/calendar-simple-8eb5da8796ce-eff3281125c0.svg","card.echarts.calendar.customCalendarIcon":"/echarts-system-card-templates/icons/custom-calendar-icon-f69bedc815de-7e4a9a97a383.svg","card.echarts.candlestick.candlestickBrush":"/echarts-system-card-templates/icons/candlestick-brush-3698e62323c6-f7e252b9930d.svg","card.echarts.candlestick.candlestickLarge":"/echarts-system-card-templates/icons/candlestick-large-81c9b8ad4399-81aa7770e5b3.svg","card.echarts.candlestick.candlestickSh":"/echarts-system-card-templates/icons/candlestick-sh-a62159566d28-99eb96317225.svg","card.echarts.candlestick.candlestickSimple":"/echarts-system-card-templates/icons/candlestick-simple-22c1c3ac084a-a7d1cfbbad6c.svg","card.echarts.candlestick.candlestickTouch":"/echarts-system-card-templates/icons/candlestick-touch-d0df15bc6e7c-d81399499b78.svg","card.echarts.candlestick.customOhlc":"/echarts-system-card-templates/icons/custom-ohlc-d088d867adcc-cce1fc7997a9.svg","card.echarts.custom.barHistogram":"/echarts-system-card-templates/icons/bar-histogram-8f4ee0853776-8ec4624a8245.svg","card.echarts.custom.customBarTrend":"/echarts-system-card-templates/icons/custom-bar-trend-c02be4d7236a-c59fff22b7f7.svg","card.echarts.custom.customCartesianPolygon":"/echarts-system-card-templates/icons/custom-cartesian-polygon-aac96a6cc9cf-60892e0e0fb8.svg","card.echarts.custom.customErrorBar":"/echarts-system-card-templates/icons/custom-error-bar-0e7ae2bb0a11-9a7cc138c1ce.svg","card.echarts.custom.customErrorScatter":"/echarts-system-card-templates/icons/custom-error-scatter-c9394d4ebc7b-173617682a63.svg","card.echarts.custom.customGanttFlight":"/echarts-system-card-templates/icons/custom-gantt-flight-f23175de93c1-2d08b5638edb.svg","card.echarts.custom.customGauge":"/echarts-system-card-templates/icons/custom-gauge-56d2e938d4eb-d974231b4990.svg","card.echarts.custom.customPolarHeatmap":"/echarts-system-card-templates/icons/custom-polar-heatmap-3e0f8ae1cfba-b0f326aeadba.svg","card.echarts.custom.customProfile":"/echarts-system-card-templates/icons/custom-profile-d3df2d4327e5-2574883c80e8.svg","card.echarts.custom.customProfit":"/echarts-system-card-templates/icons/custom-profit-2f427fdca098-aebd95b3f1cb.svg","card.echarts.custom.customSpiralRace":"/echarts-system-card-templates/icons/custom-spiral-race-bd8e3066098a-72a3a32ee4b2.svg","card.echarts.custom.cyclePlot":"/echarts-system-card-templates/icons/cycle-plot-91fc292cc127-0d40a11d5c00.svg","card.echarts.custom.docExampleBarMediaTimeline":"/echarts-system-card-templates/icons/doc-example-bar-media-timeline-8e9a77a1ecef-0d5333b5d0d7.svg","card.echarts.custom.docExampleCustomTransitionSimple":"/echarts-system-card-templates/icons/doc-example-custom-transition-simple-59465d0c2dba-0e2716a66496.svg","card.echarts.custom.docExampleGridOuterBounds":"/echarts-system-card-templates/icons/doc-example-grid-outerbounds-5c556123ab9a-bab6f4681c3d.svg","card.echarts.custom.docExampleMixTimelineAll":"/echarts-system-card-templates/icons/doc-example-mix-timeline-all-a55e7b5b2f85-872a6904edf6.svg","card.echarts.custom.docExamplePieMedia":"/echarts-system-card-templates/icons/doc-example-pie-media-f8a3822e7465-7fb29ebd1915.svg","card.echarts.custom.docExampleRadar":"/echarts-system-card-templates/icons/doc-example-radar-5edde5645889-32d4f9c7a7f3.svg","card.echarts.custom.docExampleTimelineDynamicSeries":"/echarts-system-card-templates/icons/doc-example-timeline-dynamic-series-0575d1768998-89fbdf6652af.svg","card.echarts.custom.windBarb":"/echarts-system-card-templates/icons/wind-barb-b6eab67479db-f3f61f9a8179.svg","card.echarts.funnel.funnel":"/echarts-system-card-templates/icons/funnel-56cdf48f369a-ebfe1028ee90.svg","card.echarts.funnel.funnelAlign":"/echarts-system-card-templates/icons/funnel-align-0438eddb6809-fa94a0e0eee5.svg","card.echarts.funnel.funnelCustomize":"/echarts-system-card-templates/icons/funnel-customize-47dd0559e8a6-b5587826e926.svg","card.echarts.funnel.funnelMutiple":"/echarts-system-card-templates/icons/funnel-mutiple-3064f1cbb966-ea95c58c23ae.svg","card.echarts.gauge.gauge":"/echarts-system-card-templates/icons/gauge-f79a2330c22a-8728bf7f07b7.svg","card.echarts.gauge.gaugeCar":"/echarts-system-card-templates/icons/gauge-car-ebe34e1397dd-177d1c03dc06.svg","card.echarts.gauge.gaugeGrade":"/echarts-system-card-templates/icons/gauge-grade-f74185c2b891-fb5f770089ce.svg","card.echarts.gauge.gaugeMultiTitle":"/echarts-system-card-templates/icons/gauge-multi-title-88c7cd8d3e18-9661fb1baa34.svg","card.echarts.gauge.gaugeProgress":"/echarts-system-card-templates/icons/gauge-progress-bf937301db67-a585dc642198.svg","card.echarts.gauge.gaugeRing":"/echarts-system-card-templates/icons/gauge-ring-20179e7beb63-102eef28795f.svg","card.echarts.gauge.gaugeSimple":"/echarts-system-card-templates/icons/gauge-simple-769235e417b5-fc35f564940f.svg","card.echarts.gauge.gaugeSpeed":"/echarts-system-card-templates/icons/gauge-speed-801c8bdf86cd-5dc2058a71fa.svg","card.echarts.gauge.gaugeStage":"/echarts-system-card-templates/icons/gauge-stage-44d1469e9791-72fae61e0552.svg","card.echarts.gauge.gaugeTemperature":"/echarts-system-card-templates/icons/gauge-temperature-74a30746f90b-67ad27f60039.svg","card.echarts.graph.calendarGraph":"/echarts-system-card-templates/icons/calendar-graph-ed647505f583-076e6438923a.svg","card.echarts.graph.chordLineStyleColor":"/echarts-system-card-templates/icons/chord-linestyle-color-598e72686136-4d7358a08e20.svg","card.echarts.graph.chordMinAngle":"/echarts-system-card-templates/icons/chord-minangle-4461ce582ac0-2493e1d4e88e.svg","card.echarts.graph.chordSimple":"/echarts-system-card-templates/icons/chord-simple-93e6d6d9ed4f-31e236b24a87.svg","card.echarts.graph.chordStyle":"/echarts-system-card-templates/icons/chord-style-87a099f45573-153bbe352e51.svg","card.echarts.graph.docExampleGraphRoamIndicator":"/echarts-system-card-templates/icons/doc-example-graph-roam-indicator-809bc967b5a8-c4cb69a8e964.svg","card.echarts.graph.graph":"/echarts-system-card-templates/icons/graph-b9208d0121c9-0cd3d6369a15.svg","card.echarts.graph.graphCircularLayout":"/echarts-system-card-templates/icons/graph-circular-layout-237dd170dfac-0cd3d6369a15.svg","card.echarts.graph.graphForce":"/echarts-system-card-templates/icons/graph-force-12c2e6a90595-b35077bf8ce1.svg","card.echarts.graph.graphForceDynamic":"/echarts-system-card-templates/icons/graph-force-dynamic-a39dfc4ad2ca-101dee7a9bc7.svg","card.echarts.graph.graphGrid":"/echarts-system-card-templates/icons/graph-grid-54ad26482e9b-17e42aebd1c5.svg","card.echarts.graph.graphLabelOverlap":"/echarts-system-card-templates/icons/graph-label-overlap-0573c066b1b7-0cd3d6369a15.svg","card.echarts.graph.graphLifeExpectancy":"/echarts-system-card-templates/icons/graph-life-expectancy-c7bd0c0e6cef-6a85f2dc4599.svg","card.echarts.graph.graphNpm":"/echarts-system-card-templates/icons/graph-npm-e9be97da809d-6ed5acaf8420.svg","card.echarts.graph.graphSimple":"/echarts-system-card-templates/icons/graph-simple-a9ee26d9fa1e-41de101d26a7.svg","card.echarts.graph.graphWebkitDep":"/echarts-system-card-templates/icons/graph-webkit-dep-ced31dc031b4-7a969bcd21f2.svg","card.echarts.heatmap.calendarHeatmap":"/echarts-system-card-templates/icons/calendar-heatmap-e032fb7d182c-cb31a44e898c.svg","card.echarts.heatmap.calendarVertical":"/echarts-system-card-templates/icons/calendar-vertical-622a0fe9aa47-ec2faddc6051.svg","card.echarts.heatmap.heatmapCartesian":"/echarts-system-card-templates/icons/heatmap-cartesian-85245f57f42c-a07baf6d031a.svg","card.echarts.line.areaBasic":"/echarts-system-card-templates/icons/area-basic-5aacd4c079c7-56a601f9f9a8.svg","card.echarts.line.areaPieces":"/echarts-system-card-templates/icons/area-pieces-51da79f9d5de-6f5475a4f458.svg","card.echarts.line.areaRainfall":"/echarts-system-card-templates/icons/area-rainfall-bd1d0fe206f0-50f7d3a318b7.svg","card.echarts.line.areaStack":"/echarts-system-card-templates/icons/area-stack-97e7c2a74919-142d670ee462.svg","card.echarts.line.areaStackGradient":"/echarts-system-card-templates/icons/area-stack-gradient-66ffa1a257a5-645c11714c7a.svg","card.echarts.line.areaTimeAxis":"/echarts-system-card-templates/icons/area-time-axis-6212e1e814bc-614a99bb70c2.svg","card.echarts.line.bumpChart":"/echarts-system-card-templates/icons/bump-chart-52cb6b3af834-b60e9912591b.svg","card.echarts.line.confidenceBand":"/echarts-system-card-templates/icons/confidence-band-695bcb1e3a4d-aac2c061b6d5.svg","card.echarts.line.datasetLink":"/echarts-system-card-templates/icons/dataset-link-3de38117a657-0bec30273e44.svg","card.echarts.line.dataTransformFilter":"/echarts-system-card-templates/icons/data-transform-filter-a642766fab9a-8a1ddc0e3ae6.svg","card.echarts.line.docExampleAxisLabelAlignMinMax":"/echarts-system-card-templates/icons/doc-example-axis-label-align-min-max-866ecf633706-bdd2a78d4994.svg","card.echarts.line.docExampleCandlestickAxisPointer":"/echarts-system-card-templates/icons/doc-example-candlestick-axispointer-4d33c2180e8c-02fc0e864b91.svg","card.echarts.line.docExampleLineStackTiled":"/echarts-system-card-templates/icons/doc-example-line-stack-tiled-03388dab84aa-fcca27f88595.svg","card.echarts.line.docExampleTutorialDynamicData":"/echarts-system-card-templates/icons/doc-example-tutorial-dynamic-data-44e28550df09-9f15bd21d75a.svg","card.echarts.line.dynamicData2":"/echarts-system-card-templates/icons/dynamic-data2-047c82d06185-55f07922cb4a.svg","card.echarts.line.gridMultiple":"/echarts-system-card-templates/icons/grid-multiple-238c706a6b1d-390084d0f836.svg","card.echarts.line.intradayBreaks1":"/echarts-system-card-templates/icons/intraday-breaks-1-23aab9364de1-94bd9aac7ac4.svg","card.echarts.line.intradayBreaks2":"/echarts-system-card-templates/icons/intraday-breaks-2-08225100095a-aa73de9f0b0d.svg","card.echarts.line.lineDraggable":"/echarts-system-card-templates/icons/line-draggable-b3d2ee64f12c-6e7e77ec60da.svg","card.echarts.line.lineEasing":"/echarts-system-card-templates/icons/line-easing-6cfd3c8358d5-3ab1be625e2a.svg","card.echarts.line.lineFisheyeLens":"/echarts-system-card-templates/icons/line-fisheye-lens-5fcbc2882bc5-ac2d70c497eb.svg","card.echarts.line.lineFunction":"/echarts-system-card-templates/icons/line-function-59e587bc6836-bf97dc4a9def.svg","card.echarts.line.lineGradient":"/echarts-system-card-templates/icons/line-gradient-9888ba9b9db5-cb131603de5f.svg","card.echarts.line.lineGraphic":"/echarts-system-card-templates/icons/line-graphic-6779e2ac489c-c59c46b9d053.svg","card.echarts.line.lineLog":"/echarts-system-card-templates/icons/line-log-4fac8966273a-ba4e66709ce2.svg","card.echarts.line.lineMarker":"/echarts-system-card-templates/icons/line-marker-ce764c364123-9ece81920e09.svg","card.echarts.line.lineMarkline":"/echarts-system-card-templates/icons/line-markline-d66a11bbb768-326756d4cde3.svg","card.echarts.line.linePen":"/echarts-system-card-templates/icons/line-pen-e1fec43174a5-0934a4c1c23d.svg","card.echarts.line.linePolar":"/echarts-system-card-templates/icons/line-polar-4da5fcbfe7de-7de5f8daf918.svg","card.echarts.line.linePolar2":"/echarts-system-card-templates/icons/line-polar2-28b23efd48de-a093ccd9a8d7.svg","card.echarts.line.lineRace":"/echarts-system-card-templates/icons/line-race-bb9fce1a9cd0-5229a3cd8a90.svg","card.echarts.line.lineSections":"/echarts-system-card-templates/icons/line-sections-669fc2ece632-b8ded7d0aa9b.svg","card.echarts.line.lineSimple":"/echarts-system-card-templates/icons/line-simple-6351c56a72e4-22eadf0b8215.svg","card.echarts.line.lineSmooth":"/echarts-system-card-templates/icons/line-smooth-66faa5c74d19-2b26b9b162e8.svg","card.echarts.line.lineStack":"/echarts-system-card-templates/icons/line-stack-7a32b45ee4f3-14566fa26f99.svg","card.echarts.line.lineStep":"/echarts-system-card-templates/icons/line-step-cf036bcdc274-aaf47117b9b8.svg","card.echarts.line.lineStyle":"/echarts-system-card-templates/icons/line-style-3d86a69872c3-e45f01690903.svg","card.echarts.line.lineTooltipTouch":"/echarts-system-card-templates/icons/line-tooltip-touch-25e757eabac5-1509068d94de.svg","card.echarts.line.lineYCategory":"/echarts-system-card-templates/icons/line-y-category-4e85a4016c47-64b62892105c.svg","card.echarts.line.multipleXAxis":"/echarts-system-card-templates/icons/multiple-x-axis-418984c2532f-b076d1303cf4.svg","card.echarts.parallel.docExampleParallelAll":"/echarts-system-card-templates/icons/doc-example-parallel-all-9caa17aea7f5-96b4f4d95672.svg","card.echarts.parallel.parallelAqi":"/echarts-system-card-templates/icons/parallel-aqi-d8c3b598e95e-09702cd1546d.svg","card.echarts.parallel.parallelSimple":"/echarts-system-card-templates/icons/parallel-simple-99ab2e88573a-47a37fd5d288.svg","card.echarts.pictorialBar.docExamplePictorialBarClip":"/echarts-system-card-templates/icons/doc-example-pictorialbar-clip-0bb29d6be972-0280d77d438d.svg","card.echarts.pictorialBar.docExamplePictorialBarGraphicType":"/echarts-system-card-templates/icons/doc-example-pictorialbar-graphictype-0ca7e6c0b3d9-c2f29e0b5949.svg","card.echarts.pictorialBar.docExamplePictorialBarPatternSize":"/echarts-system-card-templates/icons/doc-example-pictorialbar-patternsize-a99364965738-d3e08e05eb27.svg","card.echarts.pictorialBar.docExamplePictorialBarRepeat":"/echarts-system-card-templates/icons/doc-example-pictorialbar-repeat-93cc787188da-1e0555b59ff1.svg","card.echarts.pictorialBar.docExamplePictorialBarRepeatDirection":"/echarts-system-card-templates/icons/doc-example-pictorialbar-repeatdirection-972df1840609-3a8ca4b1a5cd.svg","card.echarts.pictorialBar.docExamplePictorialBarRepeatLayout":"/echarts-system-card-templates/icons/doc-example-pictorialbar-repeatlayout-b55a1cd67f45-7cdc92834ed8.svg","card.echarts.pictorialBar.docExamplePictorialBarSymbolBoundingDataArray":"/echarts-system-card-templates/icons/doc-example-pictorialbar-symbolboundingdataarray-cf25a66cae95-f983572ca127.svg","card.echarts.pictorialBar.pictorialbarBarTransition":"/echarts-system-card-templates/icons/pictorialbar-bar-transition-08affa01d5e8-f61154475e2c.svg","card.echarts.pictorialBar.pictorialbarBodyFill":"/echarts-system-card-templates/icons/pictorialbar-body-fill-f61100d36e45-fa460b7a892b.svg","card.echarts.pictorialBar.pictorialbarDotted":"/echarts-system-card-templates/icons/pictorialbar-dotted-abeef716ccbb-350a1956680e.svg","card.echarts.pictorialBar.pictorialbarForest":"/echarts-system-card-templates/icons/pictorialbar-forest-7b9c0bbfba93-3fce8ef8a485.svg","card.echarts.pictorialBar.pictorialbarHill":"/echarts-system-card-templates/icons/pictorialbar-hill-3ee2887ee99e-8700c15900ff.svg","card.echarts.pictorialBar.pictorialbarSpirit":"/echarts-system-card-templates/icons/pictorialbar-spirit-37e9943c5c24-6c37b9fda7d7.svg","card.echarts.pictorialBar.pictorialbarVehicle":"/echarts-system-card-templates/icons/pictorialbar-vehicle-d171a4fcf7d6-c5dd4e325e6d.svg","card.echarts.pictorialBar.pictorialbarVelocity":"/echarts-system-card-templates/icons/pictorialbar-velocity-a1e251f18f5d-e57b369b0c07.svg","card.echarts.pie.calendarPie":"/echarts-system-card-templates/icons/calendar-pie-64f4e2547f81-35615c656ecf.svg","card.echarts.pie.datasetDefault":"/echarts-system-card-templates/icons/dataset-default-cdfef5f7c606-66cf56dd435a.svg","card.echarts.pie.dataTransformMultiplePie":"/echarts-system-card-templates/icons/data-transform-multiple-pie-9d7fb84f8afc-e1255492cce7.svg","card.echarts.pie.docExampleAriaPie":"/echarts-system-card-templates/icons/doc-example-aria-pie-f4efb070a3c2-e7587660d60b.svg","card.echarts.pie.docExamplePieHighlight":"/echarts-system-card-templates/icons/doc-example-pie-highlight-71e048469a00-be898cf11bee.svg","card.echarts.pie.docExamplePieLabelBleedMargin":"/echarts-system-card-templates/icons/doc-example-pie-label-bleedmargin-18ab3d08ed85-9fab537f67ca.svg","card.echarts.pie.docExamplePieLabelDistanceToLabelLine":"/echarts-system-card-templates/icons/doc-example-pie-label-distancetolabelline-4ae5ea76b47a-9fab537f67ca.svg","card.echarts.pie.docExamplePieLabelMargin":"/echarts-system-card-templates/icons/doc-example-pie-label-margin-9ed10a599e3e-9fab537f67ca.svg","card.echarts.pie.docExampleTutorialStylingStep0":"/echarts-system-card-templates/icons/doc-example-tutorial-styling-step0-27b61bcb842b-9c93f8a9b69c.svg","card.echarts.pie.docExampleTutorialStylingStep1":"/echarts-system-card-templates/icons/doc-example-tutorial-styling-step1-4d50713093d1-d769feea48d6.svg","card.echarts.pie.docExampleTutorialStylingStep2":"/echarts-system-card-templates/icons/doc-example-tutorial-styling-step2-a491064d586e-cfc2eca1d2f4.svg","card.echarts.pie.docExampleTutorialStylingStep3":"/echarts-system-card-templates/icons/doc-example-tutorial-styling-step3-23355d3f2c83-cfc2eca1d2f4.svg","card.echarts.pie.docExampleTutorialStylingStep4":"/echarts-system-card-templates/icons/doc-example-tutorial-styling-step4-40be75d6c320-2df4f68ea047.svg","card.echarts.pie.docExampleTutorialStylingStep5":"/echarts-system-card-templates/icons/doc-example-tutorial-styling-step5-94ee5a53a9c4-d3fd79c42ccd.svg","card.echarts.pie.pieAlignTo":"/echarts-system-card-templates/icons/pie-alignto-9dffb51a85a7-6b3f3096b6da.svg","card.echarts.pie.pieBorderRadius":"/echarts-system-card-templates/icons/pie-borderradius-73447434e7e6-3f4b3cebe9a3.svg","card.echarts.pie.pieCustom":"/echarts-system-card-templates/icons/pie-custom-e5cffba349c4-d3fd79c42ccd.svg","card.echarts.pie.pieDoughnut":"/echarts-system-card-templates/icons/pie-doughnut-b0e7e62f20ca-57516d850039.svg","card.echarts.pie.pieHalfDonut":"/echarts-system-card-templates/icons/pie-half-donut-22bc856d3feb-b1a79285f5be.svg","card.echarts.pie.pieLabelLineAdjust":"/echarts-system-card-templates/icons/pie-labelline-adjust-bb37e02da411-12b593dda807.svg","card.echarts.pie.pieLegend":"/echarts-system-card-templates/icons/pie-legend-c8562a34b2a9-2ea78ed66fba.svg","card.echarts.pie.pieNest":"/echarts-system-card-templates/icons/pie-nest-9f6d0a94b04e-52e354f6dff3.svg","card.echarts.pie.piePadAngle":"/echarts-system-card-templates/icons/pie-padangle-f35dc0601f23-d01a0862eb6a.svg","card.echarts.pie.piePattern":"/echarts-system-card-templates/icons/pie-pattern-414c8a253fc6-18e4d9cad817.svg","card.echarts.pie.pieRichText":"/echarts-system-card-templates/icons/pie-rich-text-ba0a1124a2e5-f916b6f1a94f.svg","card.echarts.pie.pieRoseType":"/echarts-system-card-templates/icons/pie-rosetype-e1e53ab5adc2-85b855e99301.svg","card.echarts.pie.pieSimple":"/echarts-system-card-templates/icons/pie-simple-c69cd07b556c-6a83edbf7488.svg","card.echarts.radar.radar":"/echarts-system-card-templates/icons/radar-63aa573a3c0d-15c8bcd70a4a.svg","card.echarts.radar.radar2":"/echarts-system-card-templates/icons/radar2-6c97ca4984c9-05e708f7454a.svg","card.echarts.radar.radarAqi":"/echarts-system-card-templates/icons/radar-aqi-d8ac0ae04e48-f21506ab85ac.svg","card.echarts.radar.radarCustom":"/echarts-system-card-templates/icons/radar-custom-13f72432b6e6-ef78cd9c1916.svg","card.echarts.radar.radarMultiple":"/echarts-system-card-templates/icons/radar-multiple-87c4cc7814c8-78c7b60aaf8b.svg","card.echarts.sankey.sankeyEnergy":"/echarts-system-card-templates/icons/sankey-energy-e8ef57c8bfa0-42b2449fec20.svg","card.echarts.sankey.sankeyLevels":"/echarts-system-card-templates/icons/sankey-levels-22b485a94dee-2d9e39b89072.svg","card.echarts.sankey.sankeyNodeAlignLeft":"/echarts-system-card-templates/icons/sankey-nodealign-left-f48699e67f21-e779d5921fc4.svg","card.echarts.sankey.sankeyNodeAlignRight":"/echarts-system-card-templates/icons/sankey-nodealign-right-aa3cda7fa63f-f5327000abde.svg","card.echarts.sankey.sankeySimple":"/echarts-system-card-templates/icons/sankey-simple-117e5bf7f245-b9c18ab740e9.svg","card.echarts.sankey.sankeyVertical":"/echarts-system-card-templates/icons/sankey-vertical-0770ceaabd39-6388708dd51b.svg","card.echarts.scatter.bubbleGradient":"/echarts-system-card-templates/icons/bubble-gradient-4d6e064cf562-132f8683139b.svg","card.echarts.scatter.calendarCharts":"/echarts-system-card-templates/icons/calendar-charts-5c0f4d6d4e97-a27b05c4521c.svg","card.echarts.scatter.datasetEncode1":"/echarts-system-card-templates/icons/dataset-encode1-e0669c1e155c-c9b1f944624a.svg","card.echarts.scatter.docExampleAxisPointerHandleImage":"/echarts-system-card-templates/icons/doc-example-axispointer-handle-image-017ef44e8186-32275847833d.svg","card.echarts.scatter.docExampleLabelPosition":"/echarts-system-card-templates/icons/doc-example-label-position-95846546ad80-d7000640d468.svg","card.echarts.scatter.docExampleScatterDataZoomAll":"/echarts-system-card-templates/icons/doc-example-scatter-datazoom-all-632675a66818-acb1e5355c5b.svg","card.echarts.scatter.docExampleScatterJitterAvoidOverlap":"/echarts-system-card-templates/icons/doc-example-scatter-jitter-avoidoverlap-4893d085db39-ec118f4c5218.svg","card.echarts.scatter.docExampleScatterTutorialDataZoom1":"/echarts-system-card-templates/icons/doc-example-scatter-tutorial-datazoom-1-299dcd1ba96b-af058322d528.svg","card.echarts.scatter.docExampleScatterTutorialDataZoom2":"/echarts-system-card-templates/icons/doc-example-scatter-tutorial-datazoom-2-ad61d05ff356-af058322d528.svg","card.echarts.scatter.docExampleScatterTutorialDataZoom3":"/echarts-system-card-templates/icons/doc-example-scatter-tutorial-datazoom-3-4a7850a7f877-af058322d528.svg","card.echarts.scatter.docExampleScatterVisualMapCategories":"/echarts-system-card-templates/icons/doc-example-scatter-visualmap-categories-2be29d46d6a8-4b511baae205.svg","card.echarts.scatter.docExampleTextBlockFragment":"/echarts-system-card-templates/icons/doc-example-text-block-fragment-b5ed0c71c3cf-c8cbc759a67f.svg","card.echarts.scatter.docExampleTextFregmentAlign":"/echarts-system-card-templates/icons/doc-example-text-fregment-align-7a2201dc0613-c8cbc759a67f.svg","card.echarts.scatter.docExampleTextOptions":"/echarts-system-card-templates/icons/doc-example-text-options-594e0841e383-c8cbc759a67f.svg","card.echarts.scatter.docExampleTitleBlock":"/echarts-system-card-templates/icons/doc-example-title-block-91b88da49c7c-056906513060.svg","card.echarts.scatter.scatterAggregateBar":"/echarts-system-card-templates/icons/scatter-aggregate-bar-4266df754765-41483e5dd559.svg","card.echarts.scatter.scatterAnscombeQuartet":"/echarts-system-card-templates/icons/scatter-anscombe-quartet-ccb98d3d5aca-deb21f6dd659.svg","card.echarts.scatter.scatterAqiColor":"/echarts-system-card-templates/icons/scatter-aqi-color-9fce84b9a3af-1d6b94e850e1.svg","card.echarts.scatter.scatterClustering":"/echarts-system-card-templates/icons/scatter-clustering-d4de98a1cc21-d3355fa54a75.svg","card.echarts.scatter.scatterClusteringProcess":"/echarts-system-card-templates/icons/scatter-clustering-process-cce55edb6cd0-ab8b0bb0dcaf.svg","card.echarts.scatter.scatterExponentialRegression":"/echarts-system-card-templates/icons/scatter-exponential-regression-6cd0519cf305-7a12773b1878.svg","card.echarts.scatter.scatterJitter":"/echarts-system-card-templates/icons/scatter-jitter-fd7212867127-cec0039f46f7.svg","card.echarts.scatter.scatterLabelAlignRight":"/echarts-system-card-templates/icons/scatter-label-align-right-936f96eeed9a-137e67749045.svg","card.echarts.scatter.scatterLabelAlignTop":"/echarts-system-card-templates/icons/scatter-label-align-top-80f40249e9a5-137e67749045.svg","card.echarts.scatter.scatterLarge":"/echarts-system-card-templates/icons/scatter-large-f13e5a558b80-633db4374c85.svg","card.echarts.scatter.scatterLifeExpectancyTimeline":"/echarts-system-card-templates/icons/scatter-life-expectancy-timeline-38c84de2a338-c3ca055e3295.svg","card.echarts.scatter.scatterLinearRegression":"/echarts-system-card-templates/icons/scatter-linear-regression-418157c20096-0a5620c2c5b5.svg","card.echarts.scatter.scatterLogarithmicRegression":"/echarts-system-card-templates/icons/scatter-logarithmic-regression-e40024904cea-495761d9e004.svg","card.echarts.scatter.scatterMatrix":"/echarts-system-card-templates/icons/scatter-matrix-3cf9a1e25986-e18eb9a2b301.svg","card.echarts.scatter.scatterNebula":"/echarts-system-card-templates/icons/scatter-nebula-54538a2bb35b-ebda6dc9b44b.svg","card.echarts.scatter.scatterNutrients":"/echarts-system-card-templates/icons/scatter-nutrients-900d75def5fe-7c08b667a74b.svg","card.echarts.scatter.scatterNutrientsMatrix":"/echarts-system-card-templates/icons/scatter-nutrients-matrix-fb30e10d3f77-c001323cd931.svg","card.echarts.scatter.scatterPainterChoice":"/echarts-system-card-templates/icons/scatter-painter-choice-a299540b846d-2f42ffbb3561.svg","card.echarts.scatter.scatterPolarPunchCard":"/echarts-system-card-templates/icons/scatter-polar-punchcard-5cedb731cdbd-37badce1b3e4.svg","card.echarts.scatter.scatterPolynomialRegression":"/echarts-system-card-templates/icons/scatter-polynomial-regression-a7362d629afa-6a6377267665.svg","card.echarts.scatter.scatterPunchCard":"/echarts-system-card-templates/icons/scatter-punchcard-b4b75f756289-0c580a729b5e.svg","card.echarts.scatter.scatterSimple":"/echarts-system-card-templates/icons/scatter-simple-730c45d64a79-94b76dc9cdc2.svg","card.echarts.scatter.scatterSingleAxis":"/echarts-system-card-templates/icons/scatter-single-axis-d1a886e8e081-ccf805765735.svg","card.echarts.scatter.scatterStreamVisual":"/echarts-system-card-templates/icons/scatter-stream-visual-b779ed401439-161584743a50.svg","card.echarts.scatter.scatterSymbolMorph":"/echarts-system-card-templates/icons/scatter-symbol-morph-f83a4fb3ecca-150aba2e694f.svg","card.echarts.scatter.scatterWeight":"/echarts-system-card-templates/icons/scatter-weight-32567a4c6153-ea59f738381e.svg","card.echarts.sunburst.docExampleSunburstColor":"/echarts-system-card-templates/icons/doc-example-sunburst-color-b3550c63d10d-fc2821e31dd3.svg","card.echarts.sunburst.docExampleSunburstHighlightAncestor":"/echarts-system-card-templates/icons/doc-example-sunburst-highlight-ancestor-5ff2f7cc34bb-84db689a4541.svg","card.echarts.sunburst.docExampleSunburstHighlightDescendant":"/echarts-system-card-templates/icons/doc-example-sunburst-highlight-descendant-0b3c7fc78d67-84db689a4541.svg","card.echarts.sunburst.docExampleSunburstLabelAlign":"/echarts-system-card-templates/icons/doc-example-sunburst-label-align-2fe466ce2819-0a336d7017b9.svg","card.echarts.sunburst.docExampleSunburstSimple":"/echarts-system-card-templates/icons/doc-example-sunburst-simple-d669f7fa4052-e1ae4e40409f.svg","card.echarts.sunburst.sunburstBook":"/echarts-system-card-templates/icons/sunburst-book-13d454ca0ba8-6d5d35a7ca98.svg","card.echarts.sunburst.sunburstBorderRadius":"/echarts-system-card-templates/icons/sunburst-borderradius-05872f28e698-f70f918c81c7.svg","card.echarts.sunburst.sunburstDrink":"/echarts-system-card-templates/icons/sunburst-drink-024aae412894-4b9114d48ded.svg","card.echarts.sunburst.sunburstLabelRotate":"/echarts-system-card-templates/icons/sunburst-label-rotate-9a418acf8223-f4ab7aab0d0e.svg","card.echarts.sunburst.sunburstMonochrome":"/echarts-system-card-templates/icons/sunburst-monochrome-8a1d625d1056-6936d51f0795.svg","card.echarts.sunburst.sunburstSimple":"/echarts-system-card-templates/icons/sunburst-simple-f5ae17d2930f-0fa35abb57b3.svg","card.echarts.sunburst.sunburstVisualMap":"/echarts-system-card-templates/icons/sunburst-visualmap-c1cdf191d0c8-9c1a84a1a57f.svg","card.echarts.themeRiver.themeriverBasic":"/echarts-system-card-templates/icons/themeriver-basic-5d76d13a1037-83f0993d9c23.svg","card.echarts.themeRiver.themeriverLastfm":"/echarts-system-card-templates/icons/themeriver-lastfm-0af46ce50ff6-e39f6ae7cecf.svg","card.echarts.tree.treeBasic":"/echarts-system-card-templates/icons/tree-basic-dec0e1bafef6-43173e9bd582.svg","card.echarts.tree.treeLegend":"/echarts-system-card-templates/icons/tree-legend-d48c715c25aa-ddf4d22bb414.svg","card.echarts.tree.treeOrientBottomTop":"/echarts-system-card-templates/icons/tree-orient-bottom-top-3aa298f47af9-513b9aaba6f9.svg","card.echarts.tree.treeOrientRightLeft":"/echarts-system-card-templates/icons/tree-orient-right-left-8cac282014ee-5c5af3e81510.svg","card.echarts.tree.treePolyline":"/echarts-system-card-templates/icons/tree-polyline-4b3f9affe9b9-1fede4e3c770.svg","card.echarts.tree.treeRadial":"/echarts-system-card-templates/icons/tree-radial-8df4eae5dafc-8fbe607708a0.svg","card.echarts.tree.treeVertical":"/echarts-system-card-templates/icons/tree-vertical-0d00ed2886ba-607adef00a9c.svg","card.echarts.treemap.docExampleTreemapBorderColor":"/echarts-system-card-templates/icons/doc-example-treemap-bordercolor-9405aa73bed5-93cc4932d94b.svg","card.echarts.treemap.treemapDisk":"/echarts-system-card-templates/icons/treemap-disk-ba094f8ff276-93cc4932d94b.svg","card.echarts.treemap.treemapDrillDown":"/echarts-system-card-templates/icons/treemap-drill-down-930c387311df-8dda96eb56d6.svg","card.echarts.treemap.treemapObama":"/echarts-system-card-templates/icons/treemap-obama-4618c3b583d1-bff1259981ef.svg","card.echarts.treemap.treemapShowParent":"/echarts-system-card-templates/icons/treemap-show-parent-b2082233158a-2e16b0ed92d3.svg","card.echarts.treemap.treemapSimple":"/echarts-system-card-templates/icons/treemap-simple-20aeea102d4d-d719917a092c.svg","card.echarts.treemap.treemapSunburstTransition":"/echarts-system-card-templates/icons/treemap-sunburst-transition-603cd25614e5-12b4359c6317.svg","card.echarts.treemap.treemapVisual":"/echarts-system-card-templates/icons/treemap-visual-93adbbb1a22e-bf15910c7d06.svg"};function $m(e){return Fm[e]??""}const Vm={class:"card-recommendation"},zm={class:"card-recommendation__header"},Gm={class:"card-recommendation__heading"},Hm={key:0,class:"card-recommendation__stats"},qm={class:"card-recommendation__message"},Wm={key:0,class:"card-recommendation__loop-notice"},Um={key:1,class:"card-recommendation__list"},jm=["onFocusout"],Km={class:"card-recommendation__preview-header"},Qm={class:"card-recommendation__title-wrap"},Ym=["value","onInput","onBlur","onKeydown"],Jm={key:1,class:"card-recommendation__title"},Zm=["onClick"],Xm={class:"card-recommendation__actions"},ef=["aria-expanded","onClick"],tf={class:"card-recommendation__switch-text"},nf=["disabled","onClick"],af={key:0,class:"card-recommendation__insert-spinner","aria-hidden":"true"},rf={key:0,class:"card-recommendation__switch-panel"},sf={class:"card-recommendation__switch-panel-head"},of={class:"card-recommendation__switch-panel-meta"},cf={class:"card-recommendation__view-options card-recommendation__switch-options"},lf=["disabled","aria-hidden","tabindex","onClick"],df=["src","onLoad","onError"],uf={key:2,class:"card-recommendation__view-option-icon-loading","aria-hidden":"true"},mf={class:"card-recommendation__view-option-title"},ff={key:3,class:"card-recommendation__view-option-status"},pf={key:0,class:"card-recommendation__switch-pagination"},hf=["disabled","onPointerdown","onMousedown","onClick"],gf=["disabled","onPointerdown","onMousedown","onClick"],yf=["data-chart-type","data-capability-id"],bf={class:"card-recommendation__chart-preview-toolbar","aria-label":"图表预览缩放"},kf=["disabled","onClick"],_f=["onClick"],Cf=["disabled","onClick"],Sf={key:2,class:"card-recommendation__preview-table"},Af={key:0,class:"card-recommendation__pagination"},wf={key:0,class:"card-recommendation__page-status"},Tf=["disabled","onClick"],Ef=["onClick"],xf=["disabled","onClick"],Bf={key:2,class:"card-recommendation__empty"},If={key:0,class:"card-recommendation__fallback-actions"},Rf=["disabled","onClick"],Ns=4,vf=5,Xa=12,Ki=2,Df=3,Nf=120,Lf=420,Pf=8,Mf=80,Of=320,Qi="62%",Yi=12,Ff="card.table.",Dr="card.table.list",Ls=3,Ps=7,$f=10,Ji=12,Vf=44,zf=28,Gf=6,Hf=16,Zi=on(n.defineComponent({__name:"CardRecommendationDraft",props:{draft:{}},emits:["choose","configure"],setup(e,{expose:r,emit:o}){const c=e,d=o,u=n.ref({}),y=n.ref({}),_=n.ref({}),T=n.ref({}),B=n.ref({}),U=n.ref({}),D=n.ref({}),I=n.ref({}),x=n.ref({}),H=n.ref({}),q=fm(),j=[120,160,220,320,420],Ne={metricSummary:"指标卡",singleSeries:"趋势图",multiSeries:"对比图",pieSlices:"结构图",rows:"明细表",table:"明细表"},oe={ready:"可插入",requires_execution:"需刷新",requires_config:"需配置",empty:"空结果",blocked:"不可插入"},ue=/^ECharts 图表 \d+$/u,ce=new Set(["bar","line","pie","scatter","radar","funnel","heatmap","gauge","tree","treemap","sankey","graph","sunburst","parallel","pictorialBar","themeRiver","candlestick","boxplot"]),ge={area:"line",bar:"bar",boxplot:"boxplot",bubble:"scatter",candlestick:"candlestick",customEcharts:null,donut:"donut",drilldownTree:"tree",funnel:"funnel",gantt:null,gauge:"gauge",heatmap:"heatmap",line:"line",map:"map",mixedBarLine:"mixedBarLine",network:"network",pareto:"pareto",pie:"pie",radar:"radar",sankey:"sankey",scatter:"scatter",stackedBar:"bar",tree:"tree",waterfall:"waterfall"},de={...ge,area:"area",donut:"donut",mixedBarLine:"mixedBarLine",stackedBar:"stackedBar"},te=[{key:"table",label:"清单表",icon:"table"},{key:"bar",label:"柱图",icon:"bar"},{key:"pie",label:"饼图",icon:"pie"},{key:"line",label:"线图",icon:"line"},{key:"scatter",label:"散点图",icon:"scatter"},{key:"heatmap",label:"热力图",icon:"heatmap"},{key:"gauge",label:"仪表盘",icon:"gauge"},{key:"metric",label:"指标看板",icon:"metric"},{key:"ranking",label:"排行榜",icon:"ranking"},{key:"map",label:"色彩地图",icon:"map"},{key:"funnel",label:"漏斗图",icon:"funnel"},{key:"radar",label:"雷达图",icon:"radar"},{key:"sankey",label:"桑基图",icon:"sankey"},{key:"tree",label:"树图",icon:"tree"},{key:"treemap",label:"矩形树图",icon:"treemap"},{key:"sunburst",label:"旭日图",icon:"sunburst"},{key:"network",label:"网络图",icon:"network"},{key:"lines",label:"路径图",icon:"lines"},{key:"candlestick",label:"K线图",icon:"candlestick"},{key:"boxplot",label:"盒须图",icon:"boxplot"},{key:"parallel",label:"平行坐标",icon:"parallel"},{key:"pictorialBar",label:"象形柱图",icon:"pictorialBar"},{key:"themeRiver",label:"主题河流",icon:"themeRiver"},{key:"calendar",label:"日历坐标",icon:"calendar"},{key:"tuple",label:"二维数据",icon:"scatter"},{key:"scene3D",label:"3D",icon:"scene3D"},{key:"timeline",label:"时间轴",icon:"timeline"},{key:"transition",label:"动态图",icon:"transition"},{key:"graphic",label:"图形",icon:"graphic"},{key:"layout",label:"布局",icon:"layout"},{key:"composite",label:"组合图",icon:"composite"},{key:"configOnly",label:"模板图",icon:"metric"},{key:"progress",label:"进度条",icon:"progress"}],Pe=new Set(["","datatable","table","tablelist","list"]);function ne(t){return t.dataShape&&Ne[t.dataShape]?Ne[t.dataShape]:t.capabilityId.includes(".line")?"趋势图":t.capabilityId.includes(".bar")?"排行图":t.capabilityId.includes(".pie")?"结构图":t.capabilityId.includes(".table")?"明细表":t.capabilityId.includes(".metric")?"指标卡":"卡片"}function fe(t){const a=fi(t);if(a)return a;const s=at(tn(t).title);if(s&&s!==t.capabilityId)return s;const i=at(t.title);return i&&i!==t.capabilityId?i:""}function ke(t){const a=at(t.title),s=fe(t);if(s)return s;const i=ne(t);return t.capabilityId.startsWith("card.echarts.")&&a&&a!==t.capabilityId?a:i}function it(t){return t.nextAction==="configure"||t.previewStatus==="requires_config"?!1:!!t.blockPlan&&(!t.previewStatus||t.previewStatus==="ready")}function St(t,a){return we(t)==="chart"&&Ye(a)?pr(t,a)||no(a)&&it(a):pr(t,a)||it(a)}function bt(t){return!!t.blockPlan&&(!t.previewStatus||t.previewStatus==="ready")}function qe(t){return Array.isArray(t.viewAlternatives)?t.viewAlternatives.filter(a=>!!(a!=null&&a.capabilityId&&a.title)):[]}function ct(t,a="chart"){return[a,t.recommendationId||t.capabilityId,t.capabilityId,t.dataShape||"",t.protocolKind||"",h(t.visualIntent),h(t.blockPlan)].join("|")}function Mt(t){return t.capabilityId.startsWith("card.echarts.")||t.capabilityId.startsWith("card.chart.")||!!Ra(t)||!!Rc(t)||["metricSummary","singleSeries","multiSeries","pieSlices","scatterPoints","funnelStages"].includes(t.dataShape||"")||["series","network","tree","geo"].includes(G(t.protocolKind).toLowerCase())}function xt(t){const a=m(t),s=u.value[a];return s?s===ct(t,"chart")||s===ct(t,"table")?t:qe(t).find(i=>ct(i,"chart")===s||ct(i,"table")===s)??t:v(t)??J(t)??t}function rt(t){return hy.value.get(m(t))??xt(t)}function qt(t){const a=u.value[m(t)];return a!=null&&a.startsWith("table|")?"table":a!=null&&a.startsWith("chart|")?"chart":v(t)?"table":Mt(xt(t))?"chart":"table"}function we(t){return gy.value.get(m(t))??qt(t)}function dt(t){return(Ae(t)??ut(t)).options.length}function Fe(t){var a;return((a=Ae(t))==null?void 0:a.options.length)??ut(t).options.length}function ut(t){const a=[t,...qe(t)],s=Ie(a,t),i=s.map((g,S)=>({...te[0],key:`table:${ct(g,"table")}:${S}`,label:Te(g,t),item:g,previewMode:"table",disabled:!1,statusLabel:Ia(g)})),l=Y(t),p=l.map((g,S)=>({key:`template:${g.capabilityId}:${S}`,label:Wt(g,S),icon:aa(g),iconPath:dn(g),item:g,previewMode:"chart",disabled:!1,statusLabel:oe.ready}));return{options:[...i,...p],chartCount:l.length,tableCount:s.filter(g=>!ye(g,t)).length}}function Ie(t,a){const s=new Set,i=t.filter(g=>un(g)>0).filter(g=>Je(g)||ye(g,a)),l=i.some(g=>!ye(g,a)&&R(g)),p=i.filter(g=>!(l&&ye(g,a))).filter(g=>{const S=ct(g,"table");return s.has(S)?!1:(s.add(S),!0)});return V($(w(p)))}function v(t){return Ie([t,...qe(t)],t).find(a=>!ye(a,t)&&R(a))}function R(t){return t.capabilityId===Dr}function $(t){const a=t.filter(xe);if(a.length<=1)return t;const s=Ce(a);let i=!1;return t.flatMap(l=>xe(l)?i?[]:(i=!0,[s]):[l])}function w(t){const a=new Map;for(const i of t){const l=Q(i);l&&a.set(l,[...a.get(l)??[],i])}if(![...a.values()].some(i=>i.length>1&&i.some(R)))return t;const s=new Map;for(const i of a.values()){if(i.length<=1||!i.some(R))continue;const l=M(i);let p=!1;for(const g of i)g===l&&!p?(s.set(g,l),p=!0):s.set(g,null)}return t.flatMap(i=>{if(!s.has(i))return[i];const l=s.get(i);return l?[l]:[]})}function Q(t){const a=ee(t);if(a)return a;const s=wn(t),i=vt(t);return s.length===0||i.length===0?"":[h(s),String(un(t)),h(i)].join("|")}function ee(t){const a=ca(t),s=uc(a).map(nn).filter(Boolean),i=or(a);if(s.length===0||i.length===0)return"";const l=N(a.data);return["raw-table",h(s),String(a.rowCount??l.rowCount??i.length),h(i)].join("|")}function M(t){return t.find(R)??t.find(xe)??t[0]}function V(t){if(t.length!==2)return t;const a=t.find(K),s=t.find(i=>!K(i)&&xe(i));return!a||!s||!ie(s)?t:[s]}function K(t){return t.dataShape==="metricSummary"||t.capabilityId.startsWith("card.metric.")}function ie(t){return un(t)>1&&wn(t).length>1}function xe(t){const a=Be(t).toLowerCase();return t.capabilityId.startsWith(Ff)?Pe.has(a):!!(a&&Pe.has(a))}function Ce(t){return t.find(a=>a.capabilityId===Dr)??t[0]}function Be(t){const a=tn(t),s=N(a.renderer),i=N(t.cardConfig),l=N(i.renderer);return G(a.rendererKey)||G(s.rendererKey)||G(i.rendererKey)||G(l.rendererKey)}function Ae(t){return yy.value.get(m(t))}function ot(t){var a;return((a=Ae(t))==null?void 0:a.options)??ut(t).options}function je(t){const a=m(t),s=Ke(t),i=B.value[a]||1;return Math.min(Math.max(i,1),s)}function Ke(t){return Math.max(1,Math.ceil(ot(t).length/Xa))}function pt(t){const s=(je(t)-1)*Xa;return ot(t).slice(s,s+Xa)}function C(t){const a=pt(t);return Ke(t)<=1||a.length>=Xa?a:[...a,...Array.from({length:Xa-a.length},(s,i)=>({key:`placeholder:${m(t)}:${je(t)}:${i}`,label:"",icon:"bar",disabled:!0,previewMode:"chart",placeholder:!0}))]}function z(t,a){const s=m(t),i=Math.min(Math.max(je(t)+a,1),Ke(t));B.value={...B.value,[s]:i},ae(t)}function ae(t){const a=m(t);_.value={..._.value,[a]:!0},window.setTimeout(()=>{if(!_.value[a])return;const s={..._.value};delete s[a],_.value=s},0)}function Y(t){const a=new Set,s=[t,...qe(t)].filter(l=>Ye(l)).filter(l=>!oo(l)).filter(l=>sl(t,l));return et(t,s).filter(l=>{const p=Ft(t,l);return a.has(p)?!1:(a.add(p),!0)})}function ye(t,a){return t===a&&(t.capabilityId.startsWith("card.echarts.")||t.capabilityId.startsWith("card.chart."))}function Te(t,a){if(t.capabilityId===Dr&&a&&(a.capabilityId.startsWith("card.echarts.")||a.capabilityId.startsWith("card.chart."))||t.capabilityId.startsWith("card.echarts.")||t.capabilityId.startsWith("card.chart."))return te[0].label;const s=tn(t);return[at(t.title),at(s.title)].find(i=>i&&i!==t.capabilityId&&!Ge(i))||te[0].label}function Me(t){return[t,...qe(t)].some(a=>Ye(a)&&!oo(a))}const tt={bar:0,line:1,pie:2,scatter:3,gauge:4,metric:4,ranking:5,heatmap:6,radar:7,funnel:8,mixedBarLine:8,treemap:9,tree:10,sunburst:11,sankey:12,network:13,graph:13,map:14,candlestick:15,boxplot:16,parallel:17,pictorialBar:18,themeRiver:19},Dt=[{family:"line",pattern:/(\u6298\u7ebf\u56fe|\u7ebf\u56fe|line\s*chart|line\b)/iu},{family:"bar",pattern:/(\u67f1\u72b6\u56fe|\u67f1\u5f62\u56fe|\u6761\u5f62\u56fe|bar\s*chart|bar\b)/iu},{family:"pie",pattern:/(\u997c\u56fe|\u997c\u72b6\u56fe|pie\s*chart|pie\b)/iu},{family:"scatter",pattern:/(\u6563\u70b9\u56fe|scatter\s*chart|scatter\b)/iu},{family:"funnel",pattern:/(\u6f0f\u6597\u56fe|funnel\s*chart|funnel\b)/iu},{family:"radar",pattern:/(\u96f7\u8fbe\u56fe|radar\s*chart|radar\b)/iu},{family:"heatmap",pattern:/(\u70ed\u529b\u56fe|heat\s*map|heatmap\b)/iu},{family:"gauge",pattern:/(\u4eea\u8868\u76d8|gauge\s*chart|gauge\b)/iu}],ht=["#4C78FC","#35B8A6","#F4B84A","#F47C7C","#8B6FE8","#4DA3C7","#6FBF73","#E66FB3"];function f(t){const a=Yn(t)||Ma(t);return a?a==="network"?"network":a==="ranking"?"ranking":a==="mixedBarLine"?"mixedBarLine":gn(a):""}function b(){const t=N(c.draft.queryResult),a=N(t.data);return[c.draft.prompt,c.draft.message,t.question,a.question].map(at).filter(Boolean).join(`
21
+ `)}function E(){var a;const t=b();return t&&((a=Dt.find(s=>s.pattern.test(t)))==null?void 0:a.family)||""}function J(t){const a=E();return a?[t,...qe(t)].find(s=>Mt(s)&&f(s)===a)??null:null}function _e(t){const a=f(t);return tt[a]??100}function Re(t){const a=tn(t);return[t.capabilityId,t.title,t.reason,a.title].filter(Boolean).join(" ").replace(/([a-z0-9])([A-Z])/gu,"$1 $2").toLowerCase()}function nt(t){return/(^|[.\-_\s])bump(?:chart)?($|[.\-_\s])/iu.test(Re(t))}function Ot(t){const a=vt(t);if(a.length===0)return Us(Xt(t));const s=va(t),i=qr(a,s),l=Wr(s,i);return!!(i&&l.length>=1)}function mt(t){return Cb(t)?nt(t)?Ot(t):!0:!1}function Xe(t){const a=Re(t);let s=0;return/(^|[._\-\s])(first|primary|default|basic|base|simple|main|recommended|common)($|[._\-\s])/u.test(a)&&(s+=12),/[\u57fa\u7840\u9ed8\u8ba4\u9996\u9009\u4f18\u5148\u5e38\u7528\u5339\u914d]/u.test(a)&&(s+=12),/(^|[._\-\s])(second|duplicate|another|copy|variant|alternative|alt)($|[._\-\s])/u.test(a)&&(s-=12),/(\u53e6|\u7b2c\u4e8c|\u5907\u9009|\u91cd\u590d)/u.test(a)&&(s-=12),s}function Bt(t,a){const s=La(t,a),i=vt(s),l=va(s),p=qr(i,l),g=Wr(l,p),S=f(a);let O=Xe(a);return i.length>0&&(O+=20),l.length>0&&(O+=10),p&&(O+=20),g.length>0&&(O+=15),["bar","line","ranking","gauge","funnel"].includes(S)&&p&&g.length>=1&&(O+=20),S==="pie"&&p&&g.length>=1&&(O+=i.length<=12?18:12),S==="scatter"&&p&&g.length>=1&&(O+=16),S==="heatmap"&&(O+=p&&g.length>=2?18:4),["network","graph","sankey"].includes(S)&&rl(s)&&(O+=18),["tree","treemap","sunburst"].includes(S)&&g.length>=1&&(O+=10),O}function Zt(t,a){return a.fitScore-t.fitScore||t.commonRank-a.commonRank||t.index-a.index}function et(t,a){const s=a.map((g,S)=>({candidate:g,index:S,type:f(g),fitScore:Bt(t,g),commonRank:_e(g)})).sort(Zt),i=new Map,l=[];for(const g of s){const S=i.get(g.type)||[];S.length===0&&l.push(g.type),S.push(g),i.set(g.type,S)}const p=[];for(;l.length>0;)for(let g=0;g<l.length;){const S=l[g],O=i.get(S),F=O==null?void 0:O.shift();F&&p.push(F),!O||O.length===0?(i.delete(S),l.splice(g,1)):g+=1}return p.map(g=>g.candidate)}function Wt(t,a){return ve(t)||`图表 ${a+1}`}function aa(t){const a=Oe(t);if(a)return a;const s=Ra(t);return Pm({capabilityId:t.capabilityId,dataShape:t.dataShape,protocolKind:t.protocolKind,mainCategory:s==null?void 0:s.mainCategory,protocolType:s==null?void 0:s.protocolType,seriesTypes:[...Lr(s==null?void 0:s.seriesTypes),...Bc(t)],tags:s==null?void 0:s.tags,exampleId:s==null?void 0:s.exampleId,templateType:s==null?void 0:s.templateType,option:cr(t)})}function dn(t){var a;return q.resolvePath((a=Ra(t))==null?void 0:a.iconPath)}function kn(t){t.iconPath&&q.markFailed(t.iconPath)}function Rn(t){t.iconPath&&q.markLoaded(t.iconPath)}function vn(t){return!!(t.iconPath&&q.shouldShow(t.iconPath))}function _n(t){return!!(t.iconPath&&q.isLoaded(t.iconPath))}function Z(t){return!_n(t)}function le(t){return!!(t.iconPath&&q.shouldShow(t.iconPath)&&!q.isLoaded(t.iconPath))}function Oe(t){const a=Dc(t.capabilityId);if(!a)return;if(Object.prototype.hasOwnProperty.call(de,a))return de[a];const s=G(t.protocolKind);return Object.prototype.hasOwnProperty.call(de,s)?de[s]:null}function ve(t){const a=tn(t),s=N(a.meta);return[at(s.registryTitle),at(t.title),at(a.title)].find(l=>l&&l!==t.capabilityId&&!ue.test(l)&&!Ge(l))||""}function Ge(t){return/^doc-example\//iu.test(t)||/^example\//iu.test(t)}function We(t){return Ge(G(t.title))||Ge(G(tn(t).title))}function Ye(t){return(t.capabilityId.startsWith("card.echarts.")||t.capabilityId.startsWith("card.chart."))&&!We(t)&&!!ve(t)}function Ft(t,a){const s=La(t,a),i=Yn(a)||Ma(a)||"";return[a.capabilityId.startsWith("card.chart.")||/^card\.echarts\.[^.]+\.[^.]*basic[^.]*$/iu.test(a.capabilityId)?`chart-type:${i||a.capabilityId}`:a.capabilityId,ve(a).trim(),i,Ec(a),h(Kn(s)),h(va(s))].join("|")}function en(t){const a=Ae(t)??ut(t);return a.options.length<=1?!1:qe(t).length>0?!0:a.chartCount>1}function Dn(t){return qe(t).length>0&&Fe(t)>1}function Nn(t,a){if(a.disabled||!a.item)return;const s=m(t);u.value={...u.value,[s]:ct(a.item,a.previewMode)},y.value={...y.value,[s]:!1},T.value={...T.value,[s]:1}}function At(t){const a=H.value[m(t)];return Number.isInteger(a)?Math.min(Math.max(a,0),j.length-1):pn(t)}function pn(t){return Zc(t)?Df:Ki}function he(t){const a=Ee(t);if(!a)return j[At(t)]??j[Ki];const s=At(t)-pn(t);return be(a+s*Mf)}function k(t,a){const s=At(t)+a;return s>=0&&s<j.length}function P(t,a){const s=m(t),i=Math.min(Math.max(At(t)+a,0),j.length-1);H.value={...H.value,[s]:i}}function L(t){H.value={...H.value,[m(t)]:pn(t)}}function me(t){return typeof t=="number"&&Number.isFinite(t)&&t>0?t:void 0}function be(t){return Math.min(Lf,Math.max(Nf,Math.round(t)))}function Ee(t){const a=rt(t),s=N(tn(a).layout),i=me(s.h)??me(s.minH);if(!i)return;const l=i*Pf,p=Zc(t)?Of:0;return be(Math.max(l,p))}function st(t,a){const s=a.item;if(!s)return!1;const i=u.value[m(t)],l=ct(s,a.previewMode);return i?i===l:we(t)===a.previewMode&&ct(rt(t),a.previewMode)===l}function $t(t){const a=It(t);if(a==="inserting")return"插入中";if(a==="success")return"已插入";const s=rt(t),i=il(t);return i.insertReadyChart?"+ 插入":s.nextAction==="configure"||s.previewStatus==="requires_config"?Ba(s):i.canChoose?"+ 插入":Ba(s)}function It(t){return x.value[ct(rt(t),we(t))]||""}function Un(t){const a=m(t);y.value={...y.value,[a]:!y.value[a]}}function ft(t){return!!y.value[m(t)]}function Ea(t,a){const s=a.currentTarget instanceof HTMLElement?a.currentTarget:null,i=a.relatedTarget instanceof Node?a.relatedTarget:null;if(s&&i&&s.contains(i))return;const l=m(t);if(!i&&_.value[l]){const p={..._.value};delete p[l],_.value=p;return}y.value[l]&&(y.value={...y.value,[l]:!1})}function xa(t){var a;return at(t.diagnosticReason)||at(t.previewReason)||ra((a=t.diagnostics)==null?void 0:a.reasonCodes)}function Ba(t){return t.nextAction==="configure"||t.previewStatus==="requires_config"?Ia(t):t.nextAction==="execute_query"||t.previewStatus==="requires_execution"||t.previewStatus==="blocked"||t.previewStatus==="empty"?"重新问数":"使用"}function Ia(t){const a=t.previewStatus||"ready";return oe[a]||"可插入"}function ra(t){return Array.isArray(t)?t.filter(a=>typeof a=="string"&&a.trim().length>0).map(a=>a.trim()).slice(0,3).join("、"):""}function N(t){return re(t)?t:{}}function G(t){return typeof t=="string"&&t.trim().length>0?t.trim():""}function Lr(t){return Array.isArray(t)?t.flatMap(a=>{const s=G(a);return s?[s]:[]}):[]}function at(t){const a=G(t);return!a||/^[?\s]+$/u.test(a)||/\?{2,}/u.test(a)||/\uFFFD/u.test(a)?"":a}function Cn(t){const a=N(t.cardConfig),s=N(t.selectedConfig),i=N(s.values),l=N(t.dataBinding),p=N(t.queryResult),g=N(p.data),S=N(p.dataBinding),O=N(l.queryResult),F=N(O.data),W=tn(t),pe=N(W.data),Ve=N(pe.dataBinding),gt=N(W.meta),Ut=N(gt.queryResult);return Ln(nr(O.columns),nr(Ut.columns),nr(p.columns),sa(O),sa(Ut),sa(p),kt(F.fieldLabels),kt(O.fieldLabels),kt(Ut.fieldLabels),kt(N(O.metadata).fieldLabels),kt(N(Ut.metadata).fieldLabels),kt(Ve.fieldLabels),kt(pe.fieldLabels),kt(g.fieldLabels),kt(S.fieldLabels),kt(p.fieldLabels),kt(N(p.metadata).fieldLabels),kt(l.fieldLabels),kt(s.fieldLabels),kt(i.fieldLabels),kt(a.fieldLabels))}function kt(t){const a=N(t);return Object.fromEntries(Object.entries(a).flatMap(([s,i])=>{const l=wt(i,s);return l?[[s,l]]:[]}))}function Ln(...t){const a={};for(const s of t)for(const[i,l]of Object.entries(s))a[i]=Vs(i,a[i],l);return a}function Vs(t,a,s){const i=wt(s,t);return i?!a||er(i)&&!er(a)||Pr(a)&&er(i)&&!Pr(i)?i:a:a||""}function er(t){return/[\u3400-\u9fff\uf900-\ufaff]/u.test(t)}function Pr(t){return/[A-Za-z]/u.test(t)}function Mr(t){return Array.isArray(t)?t.map(a=>nn(a)).filter(Boolean):[]}function jn(t,a){if(!Array.isArray(t))return{};const s=Mr(a),i=t.flatMap((p,g)=>{const S=(re(p)?nn(p):s[g])||"",O=re(p)?wt(p.label,S)||wt(p.title,S)||wt(p.displayName,S):wt(p,S);return S&&O?[[S,O]]:[]}),l=i.reduce((p,[,g])=>(p.set(g,(p.get(g)??0)+1),p),new Map);return Object.fromEntries(i.filter(([,p])=>l.get(p)===1))}function tr(t,a){if(!Array.isArray(t))return{};const s=t.find(re);if(!s)return{};const i=Mr(a);return Object.fromEntries(Object.keys(s).flatMap((l,p)=>{const g=i[p]||"",S=wt(l,g);return g&&S?[[g,S]]:[]}))}function sa(t){const a=N(t.data),s=N(t.metadata),i=Array.isArray(t.columns)?t.columns:a.columns;return Ln(jn(a.displayColumns,i),jn(t.displayColumns,i),jn(s.displayColumns,i),jn(a.columnMetadata,i),jn(s.columnMetadata,i),tr(a.displayRows,i),tr(t.displayRows,i),tr(s.displayRows,i))}function nr(t){return Array.isArray(t)?Object.fromEntries(t.flatMap(a=>{if(!re(a))return[];const s=nn(a),i=wt(a.label,s)||wt(a.title,s)||wt(a.displayName,s)||wt(a.nameCn,s)||wt(a.name_cn,s);return s&&i?[[s,i]]:[]})):{}}function Kn(t){const a=N(t.cardConfig),s=N(t.selectedConfig),i=N(s.values),l=N(t.dataBinding);return[N(a.fieldMapping),N(s.fieldMapping),N(i.fieldMapping),N(l.fieldMapping)].find(g=>Object.keys(g).length>0)??{}}function Sn(t,a){const s=G(t);return s?Gn({key:s,labels:a}):""}function wt(t,a){const s=at(t);if(!s)return"";const i=a.trim();return s===i?"":s}function m(t){var i,l;if(t.recommendationId)return t.recommendationId;const a=ra((i=t.visualIntent)==null?void 0:i.dimensionFields)||"none",s=ra((l=t.visualIntent)==null?void 0:l.measureFields)||"none";return`${t.capabilityId}:${a}:${s}`}function h(t){return Array.isArray(t)?`[${t.map(a=>h(a)).join(",")}]`:re(t)?`{${Object.keys(t).sort().map(a=>`${a}:${h(t[a])}`).join("|")}}`:typeof t=="string"?t.trim():typeof t=="number"||typeof t=="boolean"?String(t):""}function A(t){var i,l,p,g,S,O;if(Ye(t)){const F=Kn(t),W=Object.keys(F).length>0?h(F):"",pe=Yn(t)||Ma(t)||"";return["chart",t.capabilityId.startsWith("card.chart.")||/^card\.echarts\.[^.]+\.basic$/u.test(t.capabilityId)?`chart-type:${pe||t.capabilityId}`:t.capabilityId,t.dataShape||"",W||h((i=t.visualIntent)==null?void 0:i.dimensionFields),W?"":h((l=t.visualIntent)==null?void 0:l.measureFields),W?"":h((p=t.visualIntent)==null?void 0:p.filterFields),pe,Ec(t),na(t)].join("|")}const a=Kn(t),s=Object.keys(a).length>0?h(a):"";return[ne(t),t.dataShape||"",s||h((g=t.visualIntent)==null?void 0:g.dimensionFields),s?"":h((S=t.visualIntent)==null?void 0:S.measureFields),s?"":h((O=t.visualIntent)==null?void 0:O.filterFields),na(t)].join("|")}function se(t){const{viewAlternatives:a,...s}=t;return s}function De(t){return un(t)>0&&Je(t)}function Je(t){return!t.capabilityId.startsWith("card.echarts.")&&!t.capabilityId.startsWith("card.chart.")}function $e(t){if(!De(t))return"";const a=fe(t)||at(t.title);return a?[a,na(t),h(Kn(t)),h(wn(t)),String(un(t)),h(vt(t))].join("|"):""}function Tt(t){return!xe(t)||un(t)<=0?"":[Be(t).toLowerCase()||"datatable",na(t),h(Kn(t)),h(wn(t)),String(un(t)),h(vt(t))].join("|")}function Rt(t){return un(t)<=0?[]:[ee(t),Q(t),oa(t)].filter((a,s,i)=>!!a&&i.indexOf(a)===s)}function Pn(t){const a=new Set;for(const s of t)if(Me(s)){for(const i of Rt(s))a.add(i);for(const i of Ie([s,...qe(s)],s))for(const l of Rt(i))a.add(l)}return a}function An(t){const a=Pn(t);if(a.size===0)return t;const s=new Set,i=[];for(const l of t){if(Me(l)){i.push(l);continue}const g=Rt(l).filter(S=>a.has(S));if(g.length>0){g.forEach(S=>s.add(S));continue}i.push(l)}return s.size===0?t:i}function oa(t){return un(t)<=0||wn(t).length<=0?"":[na(t),h(wn(t)),String(un(t)),h(vt(t))].join("|")}function ar(t){return ia(t)||Ye(t)}function ia(t){return De(t)&&!K(t)}function Or(t){const a=new Map,s=new Set;for(const p of t){if(!ar(p))continue;const g=oa(p);g&&!a.has(g)&&a.set(g,p),g&&Ye(p)&&s.add(g)}const i=new Map,l=new Set;for(const p of t){if(!ar(p))continue;const g=oa(p);if(!g||!s.has(g))continue;const S=g?a.get(g):void 0;if(!S||S===p)continue;const O=i.get(S)??[];O.push(se(p),...qe(p).map(se)),i.set(S,O),l.add(p)}return t.flatMap(p=>{if(l.has(p))return[];const g=i.get(p);return!g||g.length===0?[p]:[{...p,viewAlternatives:[...Array.isArray(p.viewAlternatives)?p.viewAlternatives:[],...g]}]})}function my(t){const a=[],s=new Map;for(const i of t){const l=$e(i),p=l?s.get(l):void 0;if(!l||p===void 0){l&&s.set(l,a.length),a.push(i);continue}const g=a[p],S=K(g)&&xe(i)&&ie(i);a[p]=S?{...i,viewAlternatives:[se(g),...qe(g).map(se),...Array.isArray(i.viewAlternatives)?i.viewAlternatives:[]]}:{...g,viewAlternatives:[...Array.isArray(g.viewAlternatives)?g.viewAlternatives:[],se(i)]}}return a}function fy(t){const a=[],s=new Map;for(const i of t){const l=Tt(i),p=l?s.get(l):void 0;if(!l||p===void 0){l&&s.set(l,a.length),a.push(i);continue}const g=a[p];a[p]={...g,viewAlternatives:[...Array.isArray(g.viewAlternatives)?g.viewAlternatives:[],se(i),...qe(i).map(se)]}}return a}function py(t){if(!xe(t))return t;const a=qe(t),s=a.find(i=>i.capabilityId===Dr&&xe(i));return s?{...s,viewAlternatives:[se(t),...a.filter(i=>i!==s).map(se)]}:t}const Gt=n.computed(()=>{const t=new Set,s=An(fy(my(Or(c.draft.recommendations))).map(py)).filter(i=>{const l=A(i);return t.has(l)?!1:(t.add(l),!0)});return s.some(bt)?s:s.slice(0,1)}),hy=n.computed(()=>{const t=new Map;for(const a of Gt.value)t.set(m(a),xt(a));return t}),gy=n.computed(()=>{const t=new Map;for(const a of Gt.value)t.set(m(a),qt(a));return t}),yy=n.computed(()=>{const t=new Map;for(const a of Gt.value)t.set(m(a),ut(a));return t}),nc=n.computed(()=>{const t=new Map;for(const a of Gt.value){const s=m(a);t.set(s,we(a)==="chart"?Qc(a):null)}return t}),by=n.computed(()=>{const t=new Map;for(const a of Gt.value){const s=nc.value.get(m(a));s&&t.set(m(a),Yc(s))}return t}),ky=n.computed(()=>{const t=new Map;for(const a of Gt.value)t.set(m(a),ol(a,xt(a)));return t}),_y=n.computed(()=>{const t=new Map;for(const a of Gt.value)t.set(m(a),ll(a));return t}),Cy=n.computed(()=>{const t=new Map;for(const a of Gt.value)t.set(m(a),kc(xt(a)));return t}),ac=n.computed(()=>Gt.value.length);function Sy(t){return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):void 0}const Ay=n.computed(()=>Ey()?xy():Sy(c.draft.totalRecommendationCount)??(Ty()?By():wy())),rc=n.computed(()=>{const t=Ay.value;return t<=0?"":`共 ${t} 个`}),sc=n.computed(()=>ac.value<=0?"":c.draft.exhausted===!0?"已展示完全部推荐。":"");function re(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;const a=Object.getPrototypeOf(t);return a===Object.prototype||a===null}function wy(){return Gt.value.reduce((t,a)=>t+oc(a),0)}function Ty(){return Gt.value.length===1&&Gt.value.some(Dn)}function Ey(){return Gt.value.length===1&&Gt.value.some(t=>en(t)&&dt(t)>0)}function xy(){return Gt.value.reduce((t,a)=>t+dt(a),0)}function By(){return Gt.value.reduce((t,a)=>t+oc(a),0)}function oc(t){return Dn(t)?ot(t).length:1}function Fr(t){return re(t)?sr(t).length>0:!1}function rr(t){return Array.isArray(t)?t.filter(a=>re(a)):[]}function zs(t){const a=N(t.data),s=N(t.metadata);return[rr(t.displayRows),rr(a.displayRows),rr(s.displayRows)].find(i=>i.length>0)||[]}function Iy(t){const a=/^(合计|总计|汇总|小计|total|subtotal)$/iu;return t.some(s=>Object.values(s).some(i=>a.test(Gs(Yt(i)))))}function Ry(t,a){return t.length===0||a.length===0?!1:Iy(t)}function sr(t){const a=zs(t),s=or(t);return Ry(a,s)?s:a.length>0?a:s}function or(t){const a=rr(t.rows),s=N(t.data),i=rr(s.rows),l=new Set(a.map(p=>h(p)));return[...a,...i.filter(p=>!l.has(h(p)))]}function ic(t){if(!Fr(t))return!1;const a=sr(t);return a.length===0?!1:(Array.isArray(t.columns)?t.columns:Array.isArray(N(t.data).columns)?N(t.data).columns:[]).map(nn).filter(l=>l&&a.some(p=>Object.prototype.hasOwnProperty.call(p,l))).length>1||Object.keys(a[0]??{}).length>1}function $r(t){if(!re(t))return!1;const a=N(t.dataBinding);return a.bindingKind==="runtime_metric"?G(a.serviceOperation)==="metric_execute"&&re(a.serviceParams):!!((G(a.validatedSql)||G(a.sql)||G(a.originalSql)||G(a.translatedSql))&&re(a.permissionContext))}function vy(t,a){const s=sr(t),i=sr(a);return s.length>0&&s.length===i.length&&h(s)===h(i)}function cc(t){const a=N(t.data),s=N(t.metadata);return[t.resultId,t.result_id,t.id,a.resultId,a.result_id,a.id,s.resultId,s.result_id,s.id].map(G).filter(Boolean)}function lc(t){const a=N(t.data),s=N(t.metadata);return G(t.sourceTurnId)||G(t.source_turn_id)||G(a.sourceTurnId)||G(a.source_turn_id)||G(s.sourceTurnId)||G(s.source_turn_id)}function Dy(t,a){const s=cc(t),i=cc(a);if(s.length>0&&i.length>0)return s.some(g=>i.includes(g))?!0:dc(t,a);const l=lc(t),p=lc(a);return l&&p?l===p:dc(t,a)}function dc(t,a){const s=or(t),i=or(a);return s.length>0&&i.length>0&&h(s)===h(i)}function uc(t){const a=N(t.data);return Array.isArray(t.columns)?t.columns:Array.isArray(a.columns)?a.columns:[]}function Ny(t){const a=N(t.data),s=N(t.metadata);return[t.displayColumns,a.displayColumns,s.displayColumns].find(i=>Array.isArray(i))??[]}function mc(t){const a=N(t.data),s=N(t.metadata);return Ln(sa(t),kt(a.fieldLabels),kt(s.fieldLabels),kt(t.fieldLabels))}function Ly(t,a){const s=Object.keys(t[0]??{});if(s.length===0)return!1;const i=uc(a).map(nn).filter(Boolean);if(i.length>0)return i.some(p=>t.some(g=>Object.prototype.hasOwnProperty.call(g,p)))?!0:s.length===i.length;const l=[...new Set(or(a).flatMap(p=>Object.keys(p)))];return l.length===0||l.some(p=>t.some(g=>Object.prototype.hasOwnProperty.call(g,p)))?!0:s.length===l.length}function fc(t,a){if(!a||!Dy(t,a))return t;const s=zs(a),i=N(t.data),l=Ny(a),p=Ln(mc(a),mc(t)),g=s.length>0&&Ly(s,t);return!g&&l.length===0&&Object.keys(p).length===0?t:{...t,...l.length>0?{displayColumns:l}:{},...g?{displayRows:s}:{},...Object.keys(p).length>0?{fieldLabels:p}:{},data:{...i,...l.length>0?{displayColumns:l}:{},...g?{displayRows:s}:{},...Object.keys(p).length>0?{fieldLabels:p}:{}}}}function pc(t,a){if($r(t)||!a||!$r(a))return t;const s=t,i=a;if(!vy(s,i))return t;const l=N(s.data),p=N(i.data);return{...s,dataBinding:i.dataBinding,data:{...l,...p.dataBinding?{dataBinding:p.dataBinding}:{}}}}function ca(t){const a=re(c.draft.queryResult)&&(Fr(c.draft.queryResult)||$r(c.draft.queryResult))?c.draft.queryResult:null,s=N(tn(t).meta),i=re(s.queryResult)?s.queryResult:null,l=re(t.queryResult)?t.queryResult:i,p=l?pc(fc(l,a),a):t.queryResult;return ic(p)?p:a||(re(t.queryResult)?t.queryResult:i??{})}function tn(t){return N(t.blockPlan)}function Xt(t){return N(tn(t).data)}function Py(t){const a=ca(t),s=N(a.data),i=sr(a);if(i.length>0)return i;const l=Object.prototype.hasOwnProperty.call(a,"value")?a.value:Object.prototype.hasOwnProperty.call(s,"value")?s.value:void 0;return l===void 0?[]:[{[(Array.isArray(a.columns)?a.columns:Array.isArray(s.columns)?s.columns:[]).map(nn).find(Boolean)||"value"]:l}]}function My(t){const a=Xt(t),s=Array.isArray(a.columns)?a.columns.map((l,p)=>G(l)||`column_${p+1}`):[];return(Array.isArray(a.rows)?a.rows:[]).flatMap((l,p)=>{if(!re(l))return[];const g=Array.isArray(l.cells)?l.cells:[];if(g.length===0)return[];const S=Object.fromEntries(g.map((O,F)=>[s[F]||`column_${F+1}`,O]));return[Object.keys(S).length>0?S:{[`row_${p+1}`]:""}]})}function vt(t){const a=Py(t);return a.length>0?a:My(t)}function nn(t){return typeof t=="string"?t.trim():re(t)?G(t.key)||G(t.dataIndex)||G(t.field)||G(t.name):""}function hc(t){return typeof t=="string"?at(t):re(t)?at(t.label)||at(t.title)||at(t.displayName)||at(t.nameCn)||at(t.name_cn):""}function Oy(t,a){const s=Object.keys(a[0]??{});if(t.length===0||s.length===0)return[];const i=t.flatMap((l,p)=>{const g=nn(l),S=g&&a.some(F=>Object.prototype.hasOwnProperty.call(F,g))?g:s[p]||"";if(!S||!a.some(F=>Object.prototype.hasOwnProperty.call(F,S)))return[];const O=wt(hc(l),S);return O?[{field:S,label:O,...re(l)&&typeof l.role=="string"&&l.role.trim()?{role:l.role.trim()}:{},...re(l)&&typeof l.type=="string"&&l.type.trim()?{type:l.type.trim()}:{}}]:[]});return i.length===t.length?i:[]}function Fy(t,a){return t.map(s=>{if(!re(s))return s;const i=nn(s),l=i?wt(a[i],i):"";return l?{...s,label:l}:s})}function ir(t,a,s){const i=nn(t);if(!i)return"";if(a.some(p=>Object.prototype.hasOwnProperty.call(p,i)))return i;const l=Object.keys(a[0]??{})[s]||"";return l&&a.some(p=>Object.prototype.hasOwnProperty.call(p,l))?l:i}function gc(t,a,s,i){const l=nn(t);if(!l)return"";const p=i||l,g=re(t)?at(t.label)||at(t.title)||at(t.displayName):void 0,S=wt(g,p)||void 0;return re(t)&&t.role,Gn({key:p,explicitLabel:S,labels:a})}function $y(t){const a=t.trim().toLowerCase();return a==="唯一标识符"||a==="唯一标识"||a==="identifier"||a==="unique identifier"||a==="id"}function Vy(t){return re(t)?at(t.label)||at(t.title)||at(t.displayName):""}function zy(t,a,s){const i=t.flatMap((p,g)=>{const S=ir(p,a,g);if(!S)return[];const O=s[S]||wt(Vy(p),S);return O&&$y(O)?[{key:S,label:O}]:[]}),l=i.reduce((p,g)=>(p[g.label]=(p[g.label]||0)+1,p),{});return new Set(i.filter(p=>l[p.label]>1).map(p=>p.key))}function Gy(t,a){return a.size===0?t:Object.fromEntries(Object.entries(t).filter(([s])=>!a.has(s)))}function yc(t){return t.trim().replace(/[^a-z0-9]+/giu,"").toLowerCase()}function Hy(t){const a=yc(t);return a==="metricname"?"指标名称":a==="value"||a==="metricvalue"?"指标值":""}function qy(t){const a=new Set(t.map(yc));return a.has("metricname")&&(a.has("value")||a.has("metricvalue"))}function Wy(t,a){if(!qy(a))return t;const s={...t};for(const i of a)if(!s[i]){const l=Hy(i);l&&(s[i]=l)}return s}function Vr(t,a){return t.some(s=>{const i=nn(s);return!!i&&a.some(l=>Object.prototype.hasOwnProperty.call(l,i))})}function Uy(t,a,s){const i=t.map((l,p)=>ir(l,a,p)).filter(Boolean);return i.length>0&&i.every(l=>!!(s[l]&&s[l]!==l))}function jy(t,a){const s=Xt(t);if(t.dataShape!=="metricSummary"&&s.shape!=="metricSummary"||!Object.prototype.hasOwnProperty.call(s,"primaryValue"))return"";const i=a[0];if(!i)return"";const l=s.primaryValue,p=Object.keys(i).filter(g=>a.some(S=>Object.is(S[g],l)||String(S[g])===String(l)));return p.length===1?p[0]:""}function Ky(t,a,s){if(a.length!==1||Vr(a,s))return null;const i=jy(t,s);if(!i)return null;const l=a[0],p=Xt(t),g=wt(hc(l),i)||wt(p.primaryLabel,i);return[{field:i,...g?{label:g}:{},...re(l)&&typeof l.role=="string"&&l.role.trim()?{role:l.role.trim()}:{},...re(l)&&typeof l.type=="string"&&l.type.trim()?{type:l.type.trim()}:{}}]}function Qy(t,a,s,i,l=[]){const p=Oy(l,i);if(p.length>0)return p;if(l.length>0&&Vr(l,i))return l;if(!Vr(a,i)&&Vr(s,i))return s;const g=Ky(t,a,i);return g||(a.length>0?a:s)}function wn(t){const a=ca(t),s=N(a.data),i=vt(t),l=zs(a).length>0,p=Ln(sa(a),kt(s.fieldLabels),kt(a.fieldLabels)),g=l?Ln(p,Cn(t)):Ln(Cn(t),p),S=Array.isArray(a.columns)?a.columns:[],O=Array.isArray(s.columns)?s.columns:[],F=Xt(t),W=Array.isArray(F.displayColumns)?F.displayColumns:[],pe=Uy(S,i,g)?[]:W,Ve=Fy(Qy(t,S,O,i,pe),g),gt=zy(Ve,i,g),Ut=Ve.map((lt,Vt)=>ir(lt,i,Vt)).filter(Boolean),En=Wy(Gy(g,gt),Ut),la=Ve.map((lt,Vt)=>{const Pt=ir(lt,i,Vt),Oa=gt.has(Pt)?Sn(Pt,En)||Pt:gc(lt,En,Vt,Pt);return{key:Pt,label:Oa}}).filter(lt=>lt.key&&lt.label);if(la.length>0)return la;const Mn=Xt(t).columns,Lt=Array.isArray(Mn)?Mn.map((lt,Vt)=>{const Pt=nn(lt)||`column_${Vt+1}`;return{key:Pt,label:gc(lt,En)||Pt}}):[];return Lt.length>0?Lt:Object.keys(i[0]??{}).map(lt=>({key:lt,label:Sn(lt,g)||lt}))}function Gs(t){let a=t.trim();const s=[/^\*\*([\s\S]+)\*\*$/u,/^__([\s\S]+)__$/u,/^\*([\s\S]+)\*$/u,/^_([\s\S]+)_$/u,/^`([\s\S]+)`$/u];for(const i of s){const l=a.match(i);if(l){a=l[1].trim();break}}return a.replace(/\*\*([^*]+)\*\*/gu,"$1").replace(/__([^_]+)__/gu,"$1").replace(/`([^`]+)`/gu,"$1")}function Yt(t){if(t==null||t==="")return"-";if(Array.isArray(t))return t.map(s=>Yt(s).trim()).filter(s=>s&&s!=="-").join(",")||"-";if(typeof t=="number"||typeof t=="boolean")return String(t);if(typeof t=="string"){const a=t.trim();if(a.startsWith("[")&&a.endsWith("]"))try{const s=JSON.parse(a);if(Array.isArray(s))return Yt(s)}catch{return Gs(a)}return Gs(a)}return JSON.stringify(t)}function un(t){const a=vt(t).length;return Math.max(Jy(t)??0,a)}function Yy(t){const a=typeof t=="number"?t:typeof t=="string"&&t.trim()?Number(t.trim()):Number.NaN;if(!(!Number.isFinite(a)||a<0))return Math.floor(a)}function Jy(t){const a=ca(t),s=N(a.data),i=N(a.metadata),l=N(s.metadata),p=N(a.dataBinding),g=N(p.queryResult),S=[a.rowCount,a.totalCount,a.total_count,a.total,s.rowCount,s.totalCount,s.total_count,s.total,i.rowCount,i.totalCount,i.total_count,i.total,l.rowCount,l.totalCount,l.total_count,l.total,g.rowCount,g.totalCount,g.total_count,g.total];for(const O of S){const F=Yy(O);if(F!==void 0)return F}}function Qn(t){return T.value[m(t)]||1}function Hs(t){return Math.max(1,Math.ceil(vt(t).length/Ns))}function bc(t,a){const s=Math.max(1,Math.floor(a)),i=Math.min(vf,s),l=Math.min(Math.max(1,Math.floor(t)),s),p=Math.floor(i/2);let g=l-p,S=g+i-1;return g<1&&(g=1,S=i),S>s&&(S=s,g=Math.max(1,S-i+1)),Array.from({length:S-g+1},(O,F)=>g+F)}function kc(t){const a=un(t),s=Hs(t);return{columns:wn(t),totalCount:a,pageCount:s,pages:bc(1,s)}}function qs(t){const a=rt(t);return Cy.value.get(m(t))??kc(a)}function _c(t){return qs(t).columns}function Cc(t){return qs(t).totalCount}function zr(t){return qs(t).pageCount}function Zy(t){const a=zr(t);return`${Math.min(Qn(t),a)} / ${a} 页`}function Xy(t){const a=Qn(t),s=zr(t);return bc(a,s)}function eb(t){const a=rt(t),i=(Math.min(Qn(t),Hs(a))-1)*Ns;return vt(a).slice(i,i+Ns)}function Ws(t,a){const s=rt(t),i=Math.min(Math.max(1,a),Hs(s));T.value={...T.value,[m(t)]:i}}function Sc(t){const a=rt(t),s=I.value[m(t)];return s||fe(t)||fe(a)||ke(a)}function tb(t){const a=m(t);return U.value[a]?G(D.value[a]):G(I.value[a])}function nb(t){return!!U.value[m(t)]}function ab(t){const a=m(t);D.value={...D.value,[a]:Sc(t)},U.value={...U.value,[a]:!0}}function rb(t,a){const s=a.target instanceof HTMLInputElement?a.target:null;s&&(D.value={...D.value,[m(t)]:s.value})}function Ac(t){const a=m(t),s=G(D.value[a]);I.value=s?{...I.value,[a]:s}:Object.fromEntries(Object.entries(I.value).filter(([i])=>i!==a)),U.value={...U.value,[a]:!1}}function Nt(t){return Array.isArray(t)?t.map(a=>Nt(a)):re(t)?Object.fromEntries(Object.entries(t).map(([a,s])=>[a,Nt(s)])):t}function wc(t){return N(t.protocolConfig)}function Tc(t){return N(t.protocolData)}function sb(t,a){const s=N(a.categories),i=Array.isArray(s.xAxis)?s.xAxis:[];if(i.length!==0){if(Array.isArray(t.xAxis)){t.xAxis=t.xAxis.map((l,p)=>p===0&&re(l)?{...l,data:Nt(i)}:l);return}t.xAxis=re(t.xAxis)?{...t.xAxis,data:Nt(i)}:{type:"category",data:Nt(i)}}}function ob(t,a){if(!Array.isArray(a.datasets))return;const s=a.datasets.filter(re).map(i=>({...G(i.id)?{id:G(i.id)}:{},...Array.isArray(i.dimensions)&&i.dimensions.length>0?{dimensions:Nt(i.dimensions)}:{},...Array.isArray(i.source)?{source:Nt(i.source)}:{}})).filter(i=>Object.keys(i).length>0);s.length!==0&&(t.dataset=s.length===1?s[0]:s)}function ib(t,a){const s=Array.isArray(a.series)?a.series.filter(re).filter(g=>Array.isArray(g.data)):[];if(s.length===0)return;const i=Array.isArray(t.series)?t.series.filter(re):[],l=s.map((g,S)=>{const O=i[S]||i.find(F=>G(F.type)===G(g.typeHint))||i.find(F=>G(F.type)===G(g.type))||i[0]||{};return{...O,type:G(g.typeHint)||G(g.type)||G(O.type)||"line",...G(g.name)?{name:G(g.name)}:G(O.name)?{name:G(O.name)}:{},data:Nt(Array.isArray(g.data)?g.data:[])}});t.series=l;const p=l.map(g=>G(g.name)).filter(Boolean);p.length>0&&(t.legend=Da(t.legend,p))}function Gr(t){if(t.shape!=="protocolRender"||G(t.rendererType)!=="echarts")return{};const a=wc(t),s=N(a.optionPatch);if(!hn(s))return{};const i=Nt(s),l=Tc(t);return sb(i,l),ob(i,l),ib(i,l),i}function cb(t){return hn(Gr(Xt(t)))}function Us(t){const a=Tc(t);return Array.isArray(a.series)||Array.isArray(a.datasets)||hn(N(a.categories))}function Ec(t){const a=Xt(t);if(a.shape!=="protocolRender")return"";const s=wc(a);return h({shape:a.shape,rendererType:a.rendererType,chartId:G(s.chartId),optionPatch:N(s.optionPatch)})}function cr(t){const a=Xt(t),s=Gr(a);return hn(s)?s:Hr(t,N(a.option))}function xc(t){const a=cr(t);return mn(a)}function Bc(t){return xc(t).flatMap(a=>{const s=G(a.type);return s?[s]:[]})}function Ic(t){return xc(t).some(a=>G(a.type)==="pie"&&Array.isArray(a.radius)&&a.radius.length>=2)}function Rc(t){const a=cr(t),s=new Set(Bc(t).map(i=>i.toLowerCase()));if(s.has("pie")&&Ic(t))return"donut";if(re(a.geo))return"map";if(re(a.calendar)||Array.isArray(a.calendar))return"heatmap";if(s.has("graph"))return"network";if(s.has("themeriver"))return"themeRiver";if(s.has("pictorialbar"))return"pictorialBar";if(s.has("bar")&&s.has("line"))return"mixedBarLine";for(const i of["sankey","tree","treemap","sunburst","radar","funnel","heatmap","gauge","candlestick","boxplot","parallel","pie","scatter","line","bar"])if(s.has(i))return i;return null}function Hr(t,a){if(Object.keys(a).length===0)return a;const s=Cn(t),i=Array.isArray(a.series)?a.series.map(p=>lb(p,s)):a.series,l=Array.isArray(i)?i.filter(re).map(p=>G(p.name)).filter(Boolean):[];return{...a,...i?{series:i}:{},...a.legend!==void 0||l.length>1?{legend:db(a.legend,s,l)}:{},...a.xAxis!==void 0?{xAxis:js(a.xAxis,s)}:{},...a.yAxis!==void 0?{yAxis:js(a.yAxis,s)}:{}}}function lb(t,a){if(!re(t))return t;const s=G(t.name);return s?{...t,name:Sn(s,a)}:t}function db(t,a,s){const i=l=>Array.isArray(l)?l.map(p=>typeof p=="string"?Sn(p,a):p):s.length>1?s:l;return Array.isArray(t)?t.map(l=>re(l)?{...l,data:i(l.data)}:l):re(t)?{...t,data:i(t.data)}:s.length>1?{data:s}:t}function js(t,a){if(Array.isArray(t))return t.map(i=>js(i,a));if(!re(t))return t;const s=G(t.name);return s?{...t,name:Sn(s,a)}:t}function ub(t){const a=Array.isArray(t)?t[0]:t,s=N(a).data;return Array.isArray(s)?s:[]}function mb(t){return Array.isArray(t)?t.flatMap(a=>{if(typeof a=="number"&&Number.isFinite(a))return[a];if(Array.isArray(a)){const s=a.find(i=>typeof i=="number"&&Number.isFinite(i));return typeof s=="number"?[s]:[]}return re(a)&&typeof a.value=="number"&&Number.isFinite(a.value)?[a.value]:[]}):[]}function Ks(t,a={}){const s=a.previewType||Ma(t);if(!s)return null;if(a.useMaterializedOption!==!1){const F=cr(t),pe=(Array.isArray(F.series)?F.series.filter(re):[])[0];if(pe){const Ve=mb(pe.data),gt=ub(F.xAxis).map(Ut=>Yt(Ut));if(Ve.length>0)return{title:G(pe.name)||ke(t),type:G(pe.type)||s,points:Ve.map((Ut,En)=>({label:gt[En]||`项 ${En+1}`,value:Ut}))}}}const i=vt(t),l=wn(t).map(F=>F.key),p=l.find(F=>i.some(W=>typeof W[F]=="number"&&Number.isFinite(W[F]))),g=l.find(F=>F!==p)||l[0];if(!g||i.length===0)return null;if(p)return{title:Sn(p,Cn(t)),type:s,points:i.flatMap((F,W)=>{const pe=F[p];return typeof pe=="number"&&Number.isFinite(pe)?[{label:Yt(F[g])||`项 ${W+1}`,value:pe}]:[]})};const S=new Map;for(const F of i){const W=Yt(F[g]);!W||W==="-"||S.set(W,(S.get(W)||0)+1)}const O=Array.from(S.entries()).map(([F,W])=>({label:F,value:W}));return O.length>0?{title:"记录数",type:s,points:O}:null}function hn(t){return Object.keys(t).length>0}function gn(t){return t==="line"||t==="pie"||t==="scatter"?t:t==="donut"||t==="halfDonut"?"pie":t==="network"?"graph":["graph","sankey","tree","treemap","sunburst","radar","funnel","heatmap","gauge","candlestick","boxplot","parallel","pictorialBar","themeRiver"].includes(t)?t:"bar"}function lr(t){return t==="halfDonut"}function vc(){return{radius:["42%","76%"],center:["50%",Qi],startAngle:180,endAngle:360}}function fb(t){return["50%",Qi]}function pb(t){return t==="mixedBarLine"?["bar","line"]:[gn(t)]}function hb(t){const a=t.split(".");return a[0]==="card"&&a[1]==="echarts"&&a[2]||""}function Dc(t){const a=t.split(".");return a[0]==="card"&&a[1]==="chart"&&a[2]||""}function Ra(t){const a=tn(t),s=N(a.meta),i=N(s.echartsTemplate),l=$m(t.capabilityId);return hn(i)&&l&&!i.iconPath?{...i,iconPath:l}:hn(i)?i:l?{iconPath:l}:null}function gb(t){const a=Dc(t.capabilityId);if(!a)return;if(Object.prototype.hasOwnProperty.call(ge,a))return ge[a];const s=G(t.protocolKind);return Object.prototype.hasOwnProperty.call(ge,s)?ge[s]:null}function Yn(t){const a=G(t.protocolKind).toLowerCase(),s=hb(t.capabilityId),i=gb(t);if(i!==void 0)return i;const l=ji(Ra(t));if(l==="halfDonut")return l;if(yb(t))return"halfDonut";if(l==="pie"&&Ic(t))return"donut";if(l)return l;const p=Rc(t);return p||(s?ji({mainCategory:s,protocolType:a}):a==="network"?s==="sankey"?"sankey":"network":a==="tree"?"tree":a==="geo"?"map":ce.has(s)?s:null)}function yb(t){const a=Ra(t),s=[t.capabilityId,G(a==null?void 0:a.exampleId),G(a==null?void 0:a.templateType),G(a==null?void 0:a.iconPath)].join(" ").toLowerCase();return/(?:half[-_\s]?donut|semi[-_\s]?(?:donut|circle)|piehalfdonut)/iu.test(s)}function Tn(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&t.trim()){const a=Number(t);return Number.isFinite(a)?a:null}return null}function va(t){const a=ca(t),s=N(a.data),i=vt(t),p=(Array.isArray(a.columns)?a.columns:Array.isArray(s.columns)?s.columns:[]).map((F,W)=>ir(F,i,W)).filter(Boolean);if(p.length>0)return p;const g=Xt(t).columns,S=Array.isArray(g)?g.map(F=>G(F)).filter(Boolean):[];if(S.length>0)return S;const O=vt(t)[0];return O?Object.keys(O):[]}function qr(t,a){return a.find(s=>t.some(i=>Tn(i[s])!==null))||""}function Wr(t,a){return t.filter(s=>s&&s!==a)}function Nc(t,a){const s=t.trim().toLowerCase();return s?a.some(i=>{const l=i.toLowerCase();return/[\u4e00-\u9fff]/u.test(l)?s.includes(l):new RegExp(`(^|[._\\-\\s])${l}($|[._\\-\\s])`,"iu").test(s)}):!1}function Lc(t,a){var l;const s=Cn(t),i=(l=wn(t).find(p=>p.key===a))==null?void 0:l.label;return[a,s[a],i].filter(Boolean).join(" ")}function Pc(t,a){const s=["source","from","src","origin","start","来源","起点","源"],i=["target","to","dst","destination","end","目标","终点","去向"],l=a.find(g=>Nc(Lc(t,g),s)),p=a.find(g=>g!==l&&Nc(Lc(t,g),i));return l&&p?{sourceKey:l,targetKey:p}:null}function bb(t,a,s,i){const l=Pc(t,s);if(!l)return null;const{sourceKey:p,targetKey:g}=l,S=new Set,O=a.flatMap(F=>{const W=Yt(F[p]),pe=Yt(F[g]);return!W||W==="-"||!pe||pe==="-"?[]:(S.add(W),S.add(pe),[{source:W,target:pe,value:Tn(F[i])??1}])});return O.length===0?null:{nodes:Array.from(S).map(F=>({name:F})),links:O}}function Mc(t,a,s=!0){var O,F;const i=vt(t),l=va(t),p=qr(i,l),g=Wr(l,p),S=Ks(t,{useMaterializedOption:s,previewType:a});if(a==="graph"||a==="sankey"){const W=bb(t,i,g,p);return W?a==="graph"?{tooltip:{trigger:"item"},series:[{type:"graph",layout:"force",roam:!0,label:{show:!0},data:W.nodes,links:W.links,force:{repulsion:120}}]}:{tooltip:{trigger:"item"},series:[{type:"sankey",data:W.nodes,links:W.links}]}:null}if(!S||S.points.length===0)return null;if(a==="radar"){if(S.points.length<Ls)return null;const W=Math.max(1,...S.points.map(pe=>pe.value));return{radar:{indicator:S.points.map(pe=>({name:pe.label,max:Math.max(W,pe.value)}))},series:[{type:"radar",name:S.title,data:[{name:S.title,value:S.points.map(pe=>pe.value)}]}]}}if(a==="funnel")return{tooltip:{trigger:"item"},series:[{type:"funnel",name:S.title,data:S.points.map(W=>({name:W.label,value:W.value}))}]};if(a==="heatmap")return{tooltip:{position:"top"},xAxis:{type:"category",data:S.points.map(W=>W.label)},yAxis:{type:"category",data:[S.title]},visualMap:{min:0,max:Math.max(1,...S.points.map(W=>W.value)),calculable:!0,orient:"horizontal"},series:[{type:"heatmap",data:S.points.map((W,pe)=>[pe,0,W.value])}]};if(a==="gauge")return{series:[{type:"gauge",data:[{name:((O=S.points[0])==null?void 0:O.label)||S.title,value:((F=S.points[0])==null?void 0:F.value)??0}]}]};if(a==="tree"||a==="treemap"||a==="sunburst"){const W=[{name:S.title,children:S.points.map(pe=>({name:pe.label,value:pe.value}))}];return{tooltip:{trigger:"item"},series:[{type:a,data:W,...a==="tree"?{label:{position:"left"}}:{}}]}}return null}function Oc(t){const a=t.map(g=>Math.max(0,g.value)),s=a[0]??0,i=a.slice(1).reduce((g,S)=>g+S,0);if(!(a.length>1&&s>0&&i<=s)){let g=0;return{helper:a.map((S,O)=>{const F=O===0?0:g;return g+=a[O]??0,F}),values:a}}let p=s;return{helper:a.map((g,S)=>S===0?0:(p=Math.max(0,p-g),p)),values:a}}function Fc(t){if(t.length<2)return!1;const a=t[0]??0,s=t.slice(1).reduce((i,l)=>i+Math.max(0,l),0);return a>0&&s>0&&s<=a}function kb(t){return Fc(t.map(a=>a.value))}function $c(t){return t.seriesValues.length===1&&Fc(t.seriesValues[0]||[])}function _b(t){const a=Ra(t),s=cr(t),i=[t.capabilityId,t.dataShape,G(t.protocolKind),G(a==null?void 0:a.exampleId),G(a==null?void 0:a.templateType),G(a==null?void 0:a.iconPath),...Lr(a==null?void 0:a.tags)].join(" ").toLowerCase();return/waterfall|bar[-_\s]?waterfall|\u7011\u5e03/iu.test(i)||ur(mn(s))}function Cb(t){if(!_b(t)||vt(t).length===0)return!0;const a=Js(t);return!!(a&&$c(a))}function Sb(t){const a=Oc(t.points);return{grid:{left:40,right:16,top:24,bottom:34},tooltip:{trigger:"axis"},xAxis:{type:"category",data:t.points.map(s=>s.label)},yAxis:{type:"value"},series:[{type:"bar",stack:"waterfall",silent:!0,tooltip:{show:!1},itemStyle:{color:"transparent",borderColor:"transparent"},emphasis:{itemStyle:{color:"transparent",borderColor:"transparent"}},data:a.helper},{type:"bar",stack:"waterfall",name:t.title,data:a.values}]}}function Ab(t){const a=[...t.points].sort((p,g)=>g.value-p.value),s=a.reduce((p,g)=>p+Math.max(0,g.value),0);let i=0;const l=a.map(p=>(i+=Math.max(0,p.value),s>0?Number((i/s*100).toFixed(2)):0));return{grid:{left:40,right:42,top:24,bottom:34},tooltip:{trigger:"axis"},legend:{data:[t.title,"累计占比"]},xAxis:{type:"category",data:a.map(p=>p.label)},yAxis:[{type:"value"},{type:"value",min:0,max:100,axisLabel:{formatter:"{value}%"}}],series:[{type:"bar",name:t.title,data:a.map(p=>p.value)},{type:"line",name:"累计占比",yAxisIndex:1,smooth:!0,data:l}]}}function wb(t){const a=gn(t.type);if(t.type==="waterfall")return Sb(t);if(t.type==="pareto")return Ab(t);if(t.type==="mixedBarLine"){const l=t.points.map(S=>S.label),p=t.points.map(S=>S.value),g={grid:{left:40,right:16,top:24,bottom:34},tooltip:{trigger:"axis"},legend:{data:[t.title,`${t.title} trend`]},xAxis:{type:"category",data:l},yAxis:{type:"value"},series:[{type:"bar",name:t.title,data:p},{type:"line",name:`${t.title} trend`,data:p}]};return yn(g,l),g}if(["graph","sankey","tree","treemap","radar","funnel","heatmap","gauge"].includes(a))return{};if(a==="pie")return{tooltip:{trigger:"item"},series:[{type:"pie",name:t.title,...t.type==="donut"?{radius:["38%","68%"]}:{},...lr(t.type)?vc():{},data:t.points.map(l=>({name:l.label,value:l.value}))}]};if(a==="scatter"){const l=t.points.map(g=>g.label),p={grid:{left:40,right:16,top:24,bottom:34},tooltip:{trigger:"item"},xAxis:{type:"category",data:l},yAxis:{type:"value"},series:[{type:"scatter",name:t.title,data:t.points.map(g=>g.value)}]};return yn(p,l),p}if(a==="themeRiver"){const l=t.points.map(p=>p.label);return{tooltip:{trigger:"axis"},legend:{data:[t.title]},singleAxis:{type:"category",data:l,boundaryGap:["5%","5%"]},series:[{type:"themeRiver",name:t.title,data:t.points.map(p=>[p.label,p.value,t.title])}]}}const s=t.points.map(l=>l.label),i={grid:{left:40,right:16,top:24,bottom:34},tooltip:{trigger:"axis"},xAxis:{type:"category",data:s},yAxis:{type:"value"},series:[{type:a,name:t.title,data:t.points.map(l=>l.value)}]};return yn(i,s),i}function Vc(t,a){const s=Ub(t,a);if(s)return Pa(s,a);const i=Mc(t,gn(a),!1);if(i)return Pa(i,a);const l=Ks(t,{useMaterializedOption:!1,previewType:a});if(!l||l.points.length===0||a==="waterfall"&&!kb(l.points))return null;const p=wb(l);return hn(p)?Pa(p,a):null}function Tb(t){const a=Xt(t),s=Gr(a);if(hn(s))return Hr(t,s);const i=Hr(t,N(a.option));return hn(i)?i:null}function Qs(t,a){return a.map(s=>G(t[s])).find(Boolean)||""}function Ys(t,a){var i;const s=(i=t.visualIntent)==null?void 0:i[a];return Array.isArray(s)&&s.map(l=>G(l)).find(Boolean)||""}function Eb(t,a){return t||a}function xb(t,a,s,i,l){return[...Array.isArray(t.yFields)?t.yFields.map(S=>G(S)).filter(Boolean):[],Qs(t,["yField","measureField","valueField"])].filter((S,O,F)=>S&&F.indexOf(S)===O).find(S=>a.some(O=>Tn(O[S])!==null))||s.find(S=>S!==i&&S!==l&&a.some(O=>Tn(O[S])!==null))||""}function Bb(t,a){const s=new Set(t.map(i=>Yt(i[a])).filter(i=>i&&i!=="-"));return s.size>=2&&s.size<t.length}function Ib(t,a,s,i){return a.find(l=>l!==s&&l!==i&&t.some(p=>Tn(p[l])===null)&&Bb(t,l))||""}function Rb(t){if(t instanceof Date)return!0;const a=Yt(t).trim();return!a||a==="-"?!1:/^(?:\d{4}[-/年])?(?:0?[1-9]|1[0-2])月$/u.test(a)||/^\d{4}[-/]?(?:0?[1-9]|1[0-2])$/u.test(a)||/^\d{4}[-/]?Q[1-4]$/iu.test(a)||/^\d{4}[-/年]\d{1,2}[-/月]\d{1,2}/u.test(a)}function zc(t,a){const s=t.map(i=>i[a]).filter(i=>{const l=Yt(i).trim();return!!(l&&l!=="-")});return s.length>0&&s.every(Rb)}function vb(t,a,s){if(a.length===0||s.length<3)return null;const i=Kn(t),l=Qs(i,["seriesField","groupField","colorField"])||Ys(t,"seriesFields");let p=Ys(t,"dimensionFields")||Qs(i,["xField","labelField","categoryField","dimensionField"])||s.find(Lt=>Lt!==l&&a.some(lt=>Tn(lt[Lt])===null))||"";const g=Ys(t,"measureFields"),S=g&&a.some(Lt=>Tn(Lt[g])!==null)?g:xb(i,a,s,p,l);let O=l||Ib(a,s,p,S);if(p&&O&&zc(a,p)&&!zc(a,O)&&([p,O]=[O,p]),!p||!S||p===O)return null;const F=[],W=[],pe=new Set,Ve=new Set,gt=new Map;if(a.forEach((Lt,lt)=>{const Vt=Yt(Lt[p]),Pt=Yt(Lt[O]),Oa=Tn(Lt[S]);if(!Pt||Pt==="-"||Oa===null)return;const da=Vt&&Vt!=="-"?Vt:`项 ${lt+1}`;pe.has(da)||(pe.add(da),F.push(da)),Ve.has(Pt)||(Ve.add(Pt),W.push(Pt));const io=gt.get(Pt)??new Map;io.set(da,(io.get(da)??0)+Oa),gt.set(Pt,io)}),F.length===0||W.length<2)return null;const Ut=Cn(t),En=Sn(S,Ut)||S,la=W.map(Lt=>Eb(Lt,En)),Mn=W.map(Lt=>{const lt=gt.get(Lt)??new Map;return F.map(Vt=>lt.get(Vt)??0)});return{labels:F,measureLabels:la,seriesValues:Mn,points:F.map((Lt,lt)=>{var Vt;return{label:Lt,value:((Vt=Mn[0])==null?void 0:Vt[lt])??0}}),title:la[0]||ke(t)}}function Js(t){const a=vt(t),s=va(t),i=vb(t,a,s);if(i)return i;const l=s.filter(W=>a.some(pe=>Tn(pe[W])!==null)),p=s.find(W=>!l.includes(W))||s[0];if(!p||a.length===0)return null;const g=a.map((W,pe)=>{const Ve=Yt(W[p]);return Ve&&Ve!=="-"?Ve:`项 ${pe+1}`}),S=Cn(t);if(l.length>0){const W=l.map(Ve=>Sn(Ve,S)||Ve),pe=l.map(Ve=>a.map(gt=>Tn(gt[Ve])??0));return{labels:g,measureLabels:W,seriesValues:pe,points:g.map((Ve,gt)=>{var Ut;return{label:Ve,value:((Ut=pe[0])==null?void 0:Ut[gt])??0}}),title:W[0]||ke(t)}}const O=new Map;for(const W of g)!W||W==="-"||O.set(W,(O.get(W)||0)+1);const F=Array.from(O.entries()).map(([W,pe])=>({label:W,value:pe}));return F.length===0?null:{labels:F.map(W=>W.label),measureLabels:["记录数"],seriesValues:[F.map(W=>W.value)],points:F,title:"记录数"}}function Db(t){return Array.isArray(t)?N(t.find(re)):N(t)}function Ur(t){const a=Db(t);return G(a.type)==="category"||Array.isArray(a.data)}function Nb(t,a){const s=i=>re(i)?{...i,type:G(i.type)||"category",data:a}:{type:"category",data:a};return Array.isArray(t)?t.length===0?[{type:"category",data:a}]:t.map((i,l)=>l===0?s(i):i):s(t)}function Gc(t){const a=G(t).replace(/\s+/g,"");return a==="#{value}"||a==="#value"||a.startsWith("#{")}function Lb(t){const a=N(t.axisLabel),s=typeof t.max=="number"?t.max:Number(t.max);return Gc(a.formatter)||t.inverse===!0&&Number(t.min)===1&&Number(t.interval)===1&&Number.isFinite(s)&&s<=20}function Zs(t){const a={...t,type:G(t.type)||"value"};if(!Lb(t))return a;delete a.inverse,delete a.min,delete a.max,delete a.interval;const s=N(t.axisLabel);if(Gc(s.formatter)){const i={...s};delete i.formatter,a.axisLabel=i}return a}function Pb(t){return Array.isArray(t)?t.length===0?[{type:"value"}]:t.map((a,s)=>s===0&&re(a)?Zs(a):a):re(t)?Zs(t):{type:"value"}}function jr(t,a){const s=Ur(t.yAxis)&&!Ur(t.xAxis)?"yAxis":"xAxis",i=s==="xAxis"?"yAxis":"xAxis";t[s]=Nb(t[s],a),t[i]=Pb(t[i])}function Mb(t){const a=re(t.polar)||Array.isArray(t.polar);return mn(t).some(s=>G(s.type)==="bar"&&(G(s.coordinateSystem)==="polar"||a))}function Ob(t,a){const s=i=>{const l=re(i)?{...i,type:G(i.type)||"category",data:a}:{type:"category",data:a};return l.axisLabel={...N(l.axisLabel),hideOverlap:!0,margin:8},l};return Array.isArray(t)?t.length===0?[s(void 0)]:t.map((i,l)=>l===0?s(i):i):s(t)}function Fb(t){const a=s=>{const i=re(s)?Zs(s):{type:"value"};return delete i.min,delete i.max,delete i.interval,i};return Array.isArray(t)?t.length===0?[a(void 0)]:t.map((s,i)=>i===0?a(s):s):a(t)}function $b(t,a){const s=Ur(t.radiusAxis)&&!Ur(t.angleAxis)?"radiusAxis":"angleAxis",i=s==="angleAxis"?"radiusAxis":"angleAxis";t[s]=Ob(t[s],a),t[i]=Fb(t[i]),delete t.xAxis,delete t.yAxis}function Vb(t){const a=s=>({...re(s)?{...s}:{},center:["50%","43%"],radius:[24,"56%"]});return Array.isArray(t)?t.length===0?[a(void 0)]:t.map((s,i)=>i===0?a(s):s):a(t)}function zb(t){const a={...N(t)};return delete a.bottom,{...a,type:"scroll",orient:"horizontal",left:"center",top:a.top??0,pageButtonPosition:"end",itemGap:12}}function Gb(t){const a=s=>{if(!re(s))return s;const i={...s};delete i.startValue,delete i.endValue;const l={...i,start:0,end:100};return G(l.type)==="slider"?{...l,bottom:12,height:22}:l};return Array.isArray(t)?t.map(a):a(t)}function Hb(t){if(!(Array.isArray(t.dataZoom)?t.dataZoom:[t.dataZoom]).some(p=>re(p)&&G(p.type)==="slider"))return;const i=re(t.grid)?t.grid:{},l=typeof i.bottom=="number"?i.bottom:Number(i.bottom);t.grid={...i,bottom:Number.isFinite(l)?Math.max(l,92):92}}function qb(t){if(typeof t=="string"&&t.trim().endsWith("%"))return t;const a=typeof t=="number"?t:Number(t);return Number.isFinite(a)?Math.min(a,Yi):Yi}function Kr(t){if(![t.yAxis,t.xAxis].flatMap(i=>Array.isArray(i)?i:[i]).some(i=>re(i)&&(i.type===void 0||G(i.type)==="value")))return;const s=i=>({...i,left:qb(i.left),containLabel:i.containLabel??!0});if(Array.isArray(t.grid)){t.grid=t.grid.map(i=>re(i)?s(i):i);return}t.grid=s(re(t.grid)?t.grid:{})}function Da(t,a){return Array.isArray(t)?t.map(s=>re(s)?{...s,data:a}:s):re(t)?{...t,data:a}:{data:a}}function yn(t,a=[]){delete t.dataset,delete t.title,t.dataZoom!==void 0?t.dataZoom=Gb(t.dataZoom):a.length>20&&(t.dataZoom=[{type:"slider",start:0,end:100,bottom:12,height:22},{type:"inside",start:0,end:100}]),Kr(t),Hb(t)}function Jn(t,a){const s=mn(t),i=s.filter(l=>G(l.type)===a);return i.length>0?i:s}function Na(t,a){return t.seriesValues[a]||t.seriesValues[0]||t.points.map(s=>s.value)}function Wb(t){return t.capabilityId.toLowerCase().includes("stackedbar")}function Ub(t,a){const s=Js(t);if(!s||s.seriesValues.length<=1)return null;const i=gn(a);if(!["bar","line","scatter","pictorialBar"].includes(i)&&a!=="mixedBarLine")return null;const l=s.measureLabels.map((g,S)=>{const O=a==="mixedBarLine"?S===0?"bar":"line":i;return{type:O,name:g||s.title,...O==="bar"&&Wb(t)?{stack:"total"}:{},data:Na(s,S)}}),p={grid:{left:40,right:16,top:24,bottom:34},tooltip:{trigger:"axis"},legend:{data:s.measureLabels},xAxis:{type:"category",data:s.labels},yAxis:{type:"value"},series:l};return yn(p,s.labels),p}function Qr(t){const a=typeof t=="string"?t.trim().toLowerCase().replace(/\s+/g,""):"";return a==="transparent"||a==="rgba(0,0,0,0)"||a==="rgba(255,255,255,0)"}function dr(t){const a=N(t.itemStyle),s=N(N(t.emphasis).itemStyle);return G(t.type)==="bar"&&!!G(t.stack)&&(Qr(a.color)||Qr(a.borderColor)||Qr(s.color)||Qr(s.borderColor))}function ur(t){return t.some(dr)&&t.some(a=>G(a.type)==="bar"&&!dr(a))}function Xs(t){return{...t,name:"",silent:t.silent??!0,tooltip:{...N(t.tooltip),show:!1}}}function jb(t){const a=mn(t);if(!ur(a)){const l={...t};return Kr(l),l}const s=Array.isArray(t.series)?t.series.map(l=>re(l)&&dr(l)?Xs(l):l):re(t.series)&&dr(t.series)?Xs(t.series):t.series,i={...t,series:s};return Kr(i),i}function Kb(t,a){const s=Nt(t),i=Jn(s,"bar"),l=Math.max(1,a.measureLabels.length),p=i[0]||{type:"bar",coordinateSystem:"polar"};return s.series=Array.from({length:l},(g,S)=>{const F={...i[S]||p,type:"bar",coordinateSystem:"polar",name:a.measureLabels[S]||a.title,data:Na(a,S)};return delete F.encode,delete F.datasetIndex,F}),s.polar=Vb(s.polar),$b(s,a.labels),s.legend=zb(Da(s.legend,a.measureLabels)),yn(s,a.labels),s}function Qb(t,a,s){const i=Nt(t),l=Jn(i,a),p=Math.max(1,s.measureLabels.length),g=l[0]||{type:a};if(a==="bar"&&ur(l)){const S=Oc(s.points);let O=0;i.series=l.map(F=>{const W={...F,type:a};if(dr(F))Object.assign(W,Xs(F),{type:a,data:S.helper});else{const pe=O;O+=1,W.name=s.measureLabels[pe]||s.title,W.data=pe===0?S.values:Na(s,pe)}return delete W.encode,delete W.datasetIndex,W})}else i.series=Array.from({length:p},(S,O)=>{const W={...l[O]||g,type:a,name:s.measureLabels[O]||s.title,data:Na(s,O)};return delete W.encode,delete W.datasetIndex,W});return jr(i,s.labels),(i.legend!==void 0||p>1)&&(i.legend=Da(i.legend,s.measureLabels)),yn(i,s.labels),i}function Yb(t,a){const s=Nt(t),i=mn(s),l=a.measureLabels.length<=1?["bar","line"]:a.measureLabels.map((S,O)=>O===0?"bar":"line"),p=i[0]||{type:"bar"},g=l.map((S,O)=>{const F=i[O]||i.find(gt=>G(gt.type)===S)||p,W=Math.min(O,a.seriesValues.length-1),pe=a.measureLabels[W]||a.title,Ve={...F,type:S,name:S==="line"&&l.length===2&&a.measureLabels.length<=1?`${pe} trend`:pe,data:Na(a,W)};return delete Ve.encode,delete Ve.datasetIndex,Ve});return s.series=g,jr(s,a.labels),s.legend=Da(s.legend,g.map(S=>G(S.name)).filter(Boolean)),yn(s,a.labels),s}function Jb(t,a,s){const i=Nt(t),p=Jn(i,"pie")[0]||{type:"pie"},g=Xb(a),S={...p,type:"pie",name:a.title,data:g.map(W=>({name:W.label,value:W.value}))};s!=="donut"&&Array.isArray(S.radius)&&delete S.radius,s==="donut"&&S.radius===void 0&&(S.radius=["38%","68%"]),delete S.coordinateSystem,delete S.calendarIndex,p.coordinateSystem!==void 0&&delete S.center;const O=Hc(S)?qc(S):Wc(S,s);i.series=[O];const F=g.map(W=>W.label);return i.legend=Da(i.legend,F),i.legend=Uc(i.legend,F,lr(s)&&ro(F)),delete i.xAxis,delete i.yAxis,delete i.calendar,delete i.dataset,delete i.dataZoom,i}function Zb(t){return/^项\s+\d+$/u.test(t)}function Xb(t){const a=t.points.filter(s=>!Zb(s.label));return a.length>0?a:t.points}function Hc(t){const a=t.roseType;return G(t.type)==="pie"&&a!==void 0&&a!==!1&&String(a).trim().toLowerCase()!=="false"}function qc(t){const a=Array.isArray(t.data)?t.data:[],s=ek(a),i=a.length>=Ps;return{...t,radius:t.radius??(i?["18%","58%"]:s?["26%","58%"]:["16%","58%"]),center:t.center??(i?["50%","43%"]:["50%","48%"]),avoidLabelOverlap:!0,minAngle:2,label:{...N(t.label),show:!i,position:"outside",overflow:"truncate",width:i?80:s?72:88},labelLine:{...N(t.labelLine),show:!i,smooth:!0,length:i?6:s?8:10,length2:i?4:s?6:8,maxSurfaceAngle:80},labelLayout:{...N(t.labelLayout),hideOverlap:!0},itemStyle:{...N(t.itemStyle),borderRadius:6,borderColor:"#fff",borderWidth:2}}}function Wc(t,a,s=!1){const i=Array.isArray(t.data)?t.data:[],l=s||i.length>=Ps,p=lr(a),g=a==="donut"||p,S=p?vc():{};return{...t,...S,...p&&l?{left:0,right:0,top:0,bottom:Vf}:{},radius:g?t.radius??(p?S.radius:l?["38%","62%"]:["36%","64%"]):t.radius,center:p?fb(t.center):t.center??(l?["50%","44%"]:["50%","48%"]),avoidLabelOverlap:!0,minAngle:2,label:{...N(t.label),show:!l,position:"outside",overflow:"truncate",width:l?80:88},labelLine:{...N(t.labelLine),show:!l,smooth:!0,length:l?6:8,length2:l?4:6,maxSurfaceAngle:80},labelLayout:{...N(t.labelLayout),hideOverlap:!0}}}function ek(t){const a=t.map(l=>re(l)&&typeof l.value=="number"?l.value:Number.NaN).filter(l=>Number.isFinite(l)&&l>0).sort((l,p)=>p-l),s=a[0]??0,i=a[1]??0;return s>0&&i>0&&s/i>=4}function Uc(t,a=[],s=!1){const i={...N(t)};return delete i.top,delete i.bottom,delete i.right,{...i,show:i.show!==!1,...a.length>0?{data:a}:{},...s?{formatter:tk}:{},type:"scroll",orient:"horizontal",left:"center",bottom:0,...s?{height:zf,width:"92%",itemGap:8}:{itemGap:12},textStyle:{...N(i.textStyle),...s?{width:88,overflow:"truncate"}:{}},pageButtonPosition:"end"}}function tk(t){return t.length>Ji?`${t.slice(0,Ji)}...`:t}function eo(t,a){if(t.length===0)return 0;const s=(t.length-1)*a,i=Math.floor(s),l=Math.ceil(s);if(i===l)return t[i]??0;const p=s-i;return(t[i]??0)*(1-p)+(t[l]??0)*p}function nk(t,a){const s=[...Na(a,0)].sort((g,S)=>g-S);if(s.length<2)return null;const i=[[s[0],eo(s,.25),eo(s,.5),eo(s,.75),s[s.length-1]]],l=Nt(t),p=Jn(l,"boxplot");return l.series=[{...p[0]||{},type:"boxplot",name:a.title,data:i}],jr(l,[a.title]),yn(l),l}function ak(t,a){if(a.seriesValues.length<4)return null;const s=a.labels.map((p,g)=>a.seriesValues.slice(0,4).map(S=>S[g]??0)),i=Nt(t),l=Jn(i,"candlestick");return i.series=[{...l[0]||{},type:"candlestick",name:a.title,data:s}],jr(i,a.labels),yn(i),i}function rk(t,a){if(a.seriesValues.length<2)return null;const s=Nt(t);s.parallelAxis=a.measureLabels.map((l,p)=>({dim:p,name:l}));const i=Jn(s,"parallel");return s.series=[{...i[0]||{},type:"parallel",name:a.title,data:a.labels.map((l,p)=>a.seriesValues.map(g=>g[p]??0))}],yn(s),s}function sk(t,a){const s=Nt(t),i=Jn(s,"themeRiver");return s.series=[{...i[0]||{},type:"themeRiver",name:a.title,data:a.labels.flatMap((l,p)=>a.measureLabels.map((g,S)=>{var O;return[l,((O=a.seriesValues[S])==null?void 0:O[p])??0,g]}))}],s.legend=Da(s.legend,a.measureLabels),yn(s),s}function ok(t,a,s){const i=Jn(t,s),l=mn(a);return{...Nt(t),...a,series:l.map((p,g)=>({...i[g]||i[0]||{},...p}))}}function ik(t,a,s){const i=Js(t);if(!i||a==="waterfall"&&!$c(i))return null;if(a==="mixedBarLine")return Yb(s,i);const l=gn(a);if(l==="pie")return Jb(s,i,a);if(l==="bar"&&Mb(s))return Kb(s,i);if(["bar","line","scatter","pictorialBar"].includes(l))return Qb(s,l,i);if(l==="candlestick")return ak(s,i);if(l==="boxplot")return nk(s,i);if(l==="parallel")return rk(s,i);if(l==="themeRiver")return sk(s,i);const p=Mc(t,l,!1);return p?ok(s,p,l):null}function jc(t,a){const s=Tb(t);if(s){const l=ik(t,a,s);if(l&&fr(t,l))return Pa(l,a)}const i=Vc(t,a);return i&&fr(t,i)?i:null}function ck(t,a){return gn(a)==="pie"&&vt(t).length>0}function Kc(t,a=!1,s={}){const i=a?Yn(t):Ma(t);if(!i||i==="map"||!mt(t))return null;if(s.preferCurrentRows)return jc(t,i);const l=Xt(t),p=Gr(l);if(hn(p))return fr(t,p)?Pa(p,i):null;if(ck(t,i)){const S=jc(t,i);if(S)return S}const g=Hr(t,N(l.option));return hn(g)&&fr(t,g)?Pa(g,i):Vc(t,i)}function La(t,a){const s=ca(t);return a===t||!Fr(s)||!to(t,a)?a:{...a,queryResult:s}}function to(t,a){if(a!==t)return vt(t).length>0;if(no(a))return!1;const s=Xt(a);return s.shape==="protocolRender"&&!Us(s)&&vt(a).length>0}function no(t){return cb(t)&&Us(Xt(t))}function Qc(t,a=rt(t),s=!1){return Kc(La(t,a),s,{preferCurrentRows:to(t,a)})}function mr(t){return nc.value.get(m(t))??null}function Yc(t){const a={...t};return delete a.title,{...a,animation:!1,animationDuration:0,animationDurationUpdate:0}}function Jc(t){const a=mr(t);return a?by.value.get(m(t))??Yc(a):{}}function mn(t){return Array.isArray(t.series)?t.series.filter(re):re(t.series)?[t.series]:[]}function Zc(t){const a=mr(t);return a?lk(rt(t),a):!1}function lk(t,a){const s=[t.capabilityId,t.title,t.dataShape,G(t.protocolKind)].join(" ").toLowerCase();return/rose|rosetype|nightingale|南丁格尔|玫瑰/iu.test(s)?!0:mn(a).some(i=>{const l=G(i.type);return l==="pie"?dk(i):l==="radar"?Xc([i]).some(p=>p>4):!1})}function dk(t){if(t.roseType!==void 0&&G(t.roseType)!=="false")return!0;const a=Array.isArray(t.data)?t.data:[];return a.length>5?!0:a.some(s=>(re(s)?G(s.name):"").length>=7)}function uk(t){return(Array.isArray(t.radar)?t.radar:[t.radar]).flatMap(s=>{const i=N(s).indicator;return Array.isArray(i)?[i.length]:[]})}function Xc(t){return t.flatMap(a=>G(a.type)!=="radar"?[]:(Array.isArray(a.data)?a.data:[]).flatMap(i=>{const l=N(i).value;return Array.isArray(l)?[l.length]:[]}))}function mk(t,a){const s=uk(t).filter(l=>l>=Ls);if(s.length===0)return!1;const i=new Set(Xc(a).filter(l=>l>=Ls));return s.some(l=>i.has(l))}function el(t){return Array.isArray(t.color)?t.color.filter(a=>typeof a=="string"&&a.trim().length>0):[]}function ao(t){return Array.isArray(t.data)?t.data.map(tl).filter(Boolean):[]}function ro(t){return t.length>=Ps||t.some(a=>a.length>=$f)}function fk(t,a){const s=ao(t),i=ro(s);return Hc(t)?i?{...qc(t),center:["50%","43%"],label:{...N(t.label),show:!1,position:"outside",overflow:"truncate",width:80},labelLine:{...N(t.labelLine),show:!1,smooth:!0,length:6,length2:4,maxSurfaceAngle:80}}:{...t,labelLayout:{...N(t.labelLayout),hideOverlap:!0}}:i?Wc(t,a,!0):{...t,labelLayout:{...N(t.labelLayout),hideOverlap:!0}}}function pk(t,a){const s=mn(t);if(!s.some(F=>re(F)&&G(F.type)==="pie"))return t;const l=Array.from(new Set(s.flatMap(F=>G(F.type)==="pie"?ao(F):[]))),p=s.some(F=>G(F.type)==="pie"&&ro(ao(F))),g=el(t).length>0?el(t):ht,S=F=>!re(F)||G(F.type)!=="pie"||!Array.isArray(F.data)?F:{...fk(F,a),data:F.data.map((pe,Ve)=>{if(!re(pe))return pe;const gt=N(pe.itemStyle);return{...pe,itemStyle:{...gt,color:G(gt.color)||g[Ve%g.length]}}})},O=Array.isArray(t.series)?t.series.map(S):S(t.series);return{...t,color:g,...p?{legend:Uc(t.legend,l,lr(a))}:{},series:O}}function tl(t){return re(t)?G(t.name):""}function so(t){return Array.isArray(t.data)?t.data.map(tl).filter(Boolean):[]}function nl(t){return t.length>=Gf||t.some(a=>a.length>=Hf)}function al(t){const a=so(t),s=nl(a),i=N(t.label),l=N(t.labelLine);return{...t,...s?{left:"12%",width:"76%",top:24,bottom:40}:{},label:{...i,...s?{show:!1}:{},overflow:"truncate",width:i.width??(s?96:120)},labelLine:{...l,...s?{show:!1}:{}},labelLayout:{...N(t.labelLayout),hideOverlap:!0}}}function hk(t,a,s){const i={...N(t)};delete i.top,delete i.left,delete i.right;const l=N(i.textStyle);return{...i,...a.length>0?{data:a}:{},type:"scroll",orient:"horizontal",left:"center",bottom:0,pageButtonPosition:"end",itemGap:12,textStyle:{...l,overflow:"truncate",width:l.width??(s?120:160)}}}function gk(t){const s=mn(t).filter(g=>G(g.type)==="funnel");if(s.length===0)return t;const i=Array.from(new Set(s.flatMap(so))),l=s.some(g=>nl(so(g))),p=Array.isArray(t.series)?t.series.map(g=>re(g)&&G(g.type)==="funnel"?al(g):g):re(t.series)&&G(t.series.type)==="funnel"?al(t.series):t.series;return{...t,tooltip:re(t.tooltip)?t.tooltip:{trigger:"item"},legend:hk(t.legend,i,l),series:p}}function Pa(t,a){const s=gn(a);if(ur(mn(t)))return jb(t);if(s==="pie")return pk(t,a);if(s==="funnel")return gk(t);const i={...t};return Kr(i),i}function yk(t){return G(t.type)!=="custom"?!0:typeof t.renderItem=="function"}function fr(t,a){const s=Yn(t);if(!s||s==="map")return!1;const i=mn(a);if(i.length===0||!i.every(yk)||gn(s)==="radar"&&!mk(a,i)||lr(s)&&!i.some(bk)||s==="waterfall"&&!ur(i))return!1;const l=new Set(i.map(p=>G(p.type)||gn(s)));return pb(s).every(p=>l.has(p))}function bk(t){return G(t.type)!=="pie"?!1:typeof t.startAngle=="number"&&typeof t.endAngle=="number"&&Math.abs(t.endAngle-t.startAngle)<=180&&Array.isArray(t.radius)}function oo(t){return t.previewStatus==="blocked"||t.previewStatus==="empty"||t.previewStatus==="requires_execution"||t.nextAction==="execute_query"}function kk(t){const a=gn(Yn(t)||"");return a==="graph"||a==="sankey"}function rl(t){const a=vt(t),s=va(t),i=qr(a,s);return!!Pc(t,Wr(s,i))}function sl(t,a){if(oo(a))return!1;const s=La(t,a);if(!mt(s)||kk(a)&&!rl(s))return!1;const i=Kc(s,!0,{preferCurrentRows:to(t,a)});return!!(i&&fr(a,i))}function pr(t,a){return Ye(a)&&sl(t,a)}function _k(t,a){return pr(t,a)?oe.ready:Ia(a)}function ol(t,a){const s=pr(t,a),i=we(t)==="chart"&&Ye(a)?s||no(a)&&it(a):s||it(a),l=s?"":xa(a);return{canChoose:i,insertReadyChart:s,previewStatusLabel:s?oe.ready:Ia(a),diagnosticReason:Ck(l)?"":l}}function Ck(t){return/^已使用.+生成预览/u.test(t.trim())}function il(t){const a=rt(t);return ky.value.get(m(t))??ol(t,a)}function Ma(t){return Yn(t)}function Sk(t){return we(t)==="chart"&&!!mr(t)}function cl(t){const a=re(c.draft.queryResult)&&(Fr(c.draft.queryResult)||$r(c.draft.queryResult))?c.draft.queryResult:null,s=re(t.queryResult)?fc(t.queryResult,a):t.queryResult,i=re(s)?pc(s,a):s,l=re(i)?i:a,p=tn(t),g=N(p.data),S=N(p.meta),O=N(S.queryResult),F=N(g.dataBinding),W=N(t.dataBinding),pe=N(l==null?void 0:l.dataBinding),Ve=Object.keys(F).length>0?F:Object.keys(W).length>0?W:pe,gt=re(t.blockPlan)&&Object.keys(Ve).length>0?{...p,data:{...g,dataBinding:Ve},meta:{...S,queryResult:{...O,...l??{},dataBinding:Ve}}}:t.blockPlan;return{...t,...gt?{blockPlan:gt}:{},...ic(i)?{queryResult:i}:a?{queryResult:a}:{},...c.draft.conversationId?{conversationId:c.draft.conversationId}:{},...t.sourceTurnId||c.draft.sourceTurnId?{sourceTurnId:t.sourceTurnId||c.draft.sourceTurnId}:{}}}function Ak(t,a){const s=tb(t);if(!s)return a;const i=re(a.blockPlan)?{...a.blockPlan,title:s}:a.blockPlan;return{...a,title:s,...i?{blockPlan:i}:{}}}function ll(t){const a=xt(t);return Hi({selectedItem:a,previewMode:qt(t),tableColumns:wn(a),rowCount:un(a)||void 0})}function wk(t){return _y.value.get(m(t))??ll(t)}r({recommendationConfigSummary:wk});function Tk(t,a,s=mr(t)){if(!pr(t,a))return a;const i=La(t,a),l=s??Qc(t,a,!0);if(!l)return a;const p=tn(i),g=N(p.renderer),S=N(p.data),{slices:O,innerRadius:F,protocolConfig:W,protocolData:pe,protocolType:Ve,rendererType:gt,optionPatch:Ut,...En}=S,la=N(p.meta),Mn=ca(i),Lt=N(Mn.dataBinding),lt=N(i.dataBinding),Vt=N(S.dataBinding),Pt=Object.keys(Vt).length>0?Vt:Object.keys(lt).length>0?lt:Lt,Oa=G(p.id)||`preview-${i.capabilityId.replace(/[^a-z0-9]+/giu,"-")}`,da=fe(t)||ke(t)||ke(i);return{...i,previewStatus:"ready",nextAction:"insert",diagnosticStatus:"ready",blockPlan:{...p,id:Oa,title:da,blockType:G(p.blockType)||"display",subType:G(p.subType)||"chart",renderer:{...g,engine:"echarts",rendererKey:"echartsProtocol"},data:{...En,shape:"echartsOption",option:Nt(l),renderContract:"materializedPreview",...Object.keys(Pt).length>0?{dataBinding:Pt}:{}},meta:{...la,capabilityId:i.capabilityId,rendererKey:"echartsProtocol",dataShape:"echartsOption",renderContract:"materializedPreview",registryTitle:i.title,...Object.keys(Mn).length>0?{queryResult:Mn}:{}}}}}function Ek(t){return il(t).canChoose}function xk(t){var i;const a=rt(t),s=La(t,a);return Yn(a)||((i=Ks(s))==null?void 0:i.type)||Ma(a)||void 0}function Bk(t){return rt(t).capabilityId}function Ik(t){const a=rt(t);if(!St(t,a))return;const s=ct(a,we(t));x.value={...x.value,[s]:"inserting"};const i=mr(t),l=Tk(t,a,i&&Jc(t));d("choose",cl(Ak(t,l)),{done:p=>{x.value=p?{...x.value,[s]:"success"}:Object.fromEntries(Object.entries(x.value).filter(([g])=>g!==s))}})}function Rk(t){t.item&&d("choose",cl(t.item))}return(t,a)=>{var s;return n.openBlock(),n.createElementBlock("section",Vm,[n.createElementVNode("header",zm,[n.createElementVNode("div",Gm,[a[0]||(a[0]=n.createElementVNode("span",null,"推荐卡片",-1)),rc.value?(n.openBlock(),n.createElementBlock("span",Hm,n.toDisplayString(rc.value),1)):n.createCommentVNode("",!0)])]),n.createElementVNode("p",qm,n.toDisplayString(c.draft.message),1),sc.value?(n.openBlock(),n.createElementBlock("p",Wm,n.toDisplayString(sc.value),1)):n.createCommentVNode("",!0),ac.value>0?(n.openBlock(),n.createElementBlock("div",Um,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Gt.value,i=>(n.openBlock(),n.createElementBlock("article",{key:m(i),class:n.normalizeClass(["card-recommendation__item card-recommendation__preview-card",{"card-recommendation__preview-card--inserting":It(i)==="inserting","card-recommendation__preview-card--inserted":It(i)==="success","card-recommendation__preview-card--switch-open":ft(i)}]),onFocusout:l=>Ea(i,l)},[n.createElementVNode("header",Km,[n.createElementVNode("div",Qm,[nb(i)?(n.openBlock(),n.createElementBlock("input",{key:0,class:"card-recommendation__title-input",value:D.value[m(i)],"aria-label":"编辑卡片标题",onInput:l=>rb(i,l),onBlur:l=>Ac(i),onKeydown:n.withKeys(n.withModifiers(l=>Ac(i),["prevent"]),["enter"])},null,40,Ym)):(n.openBlock(),n.createElementBlock("div",Jm,n.toDisplayString(Sc(i)),1)),n.createElementVNode("button",{type:"button",class:"card-recommendation__edit-title","aria-label":"编辑卡片标题",onClick:l=>ab(i)},[n.createVNode(n.unref(Ze.EditOutlined),{class:"card-recommendation__edit-icon","aria-hidden":"true"})],8,Zm)]),n.createElementVNode("div",Xm,[en(i)?(n.openBlock(),n.createElementBlock("button",{key:0,type:"button",class:"card-recommendation__chart-switch","aria-label":"图表切换","aria-expanded":ft(i),onClick:l=>Un(i)},[a[1]||(a[1]=n.createElementVNode("span",{class:"card-recommendation__switch-icon","aria-hidden":"true"},null,-1)),n.createElementVNode("span",tf,n.toDisplayString(dt(i)),1),a[2]||(a[2]=n.createElementVNode("span",{class:"card-recommendation__switch-arrow","aria-hidden":"true"},null,-1))],8,ef)):n.createCommentVNode("",!0),n.createElementVNode("button",{type:"button",class:n.normalizeClass(["card-recommendation__choose card-recommendation__insert",{"card-recommendation__insert--loading":It(i)==="inserting"}]),disabled:!Ek(i)||!!It(i),onClick:l=>Ik(i)},[It(i)==="inserting"?(n.openBlock(),n.createElementBlock("span",af)):n.createCommentVNode("",!0),n.createTextVNode(" "+n.toDisplayString($t(i)),1)],10,nf)])]),ft(i)?(n.openBlock(),n.createElementBlock("div",rf,[n.createElementVNode("div",sf,[a[3]||(a[3]=n.createElementVNode("div",{class:"card-recommendation__switch-panel-title"},"图表切换",-1)),n.createElementVNode("div",of,"可选 "+n.toDisplayString(dt(i)),1)]),n.createElementVNode("div",cf,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(C(i),l=>(n.openBlock(),n.createElementBlock("button",{key:l.key,type:"button",class:n.normalizeClass(["card-recommendation__view-option",{"card-recommendation__view-option--active":st(i,l),"card-recommendation__view-option--disabled":l.disabled,"card-recommendation__view-option--icon-loading":le(l),"card-recommendation__view-option--placeholder":l.placeholder}]),disabled:l.disabled||l.placeholder,"aria-hidden":l.placeholder?"true":void 0,tabindex:l.placeholder?-1:void 0,onClick:p=>Nn(i,l)},[vn(l)?(n.openBlock(),n.createElementBlock("img",{key:0,class:n.normalizeClass(["card-recommendation__view-option-image",{"card-recommendation__view-option-image--loading":!_n(l),"card-recommendation__view-option-image--loaded":_n(l)}]),src:l.iconPath,alt:"",loading:"lazy","aria-hidden":"true",onLoad:p=>Rn(l),onError:p=>kn(l)},null,42,df)):n.createCommentVNode("",!0),Z(l)?(n.openBlock(),n.createElementBlock("span",{key:1,class:n.normalizeClass(["card-recommendation__view-option-icon",`card-recommendation__view-option-icon--${l.icon}`]),"aria-hidden":"true"},null,2)):n.createCommentVNode("",!0),le(l)?(n.openBlock(),n.createElementBlock("span",uf)):n.createCommentVNode("",!0),n.createElementVNode("span",mf,n.toDisplayString(l.label),1),l.item?(n.openBlock(),n.createElementBlock("span",ff,n.toDisplayString(l.statusLabel||_k(i,l.item)),1)):n.createCommentVNode("",!0)],10,lf))),128))]),Ke(i)>1?(n.openBlock(),n.createElementBlock("div",pf,[n.createElementVNode("button",{type:"button",class:"card-recommendation__switch-page",disabled:je(i)<=1,onPointerdown:l=>ae(i),onMousedown:l=>ae(i),onClick:l=>z(i,-1)}," 上一页 ",40,hf),n.createElementVNode("span",null,n.toDisplayString(je(i))+" / "+n.toDisplayString(Ke(i)),1),n.createElementVNode("button",{type:"button",class:"card-recommendation__switch-page",disabled:je(i)>=Ke(i),onPointerdown:l=>ae(i),onMousedown:l=>ae(i),onClick:l=>z(i,1)}," 下一页 ",40,gf)])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0),Sk(i)?(n.openBlock(),n.createElementBlock("div",{key:1,class:"card-recommendation__chart-preview","data-chart-type":xk(i),"data-capability-id":Bk(i)},[n.createElementVNode("div",bf,[n.createElementVNode("button",{type:"button",class:"card-recommendation__chart-zoom","data-testid":"card-recommendation-chart-zoom-out","aria-label":"缩小图表预览",title:"缩小图表预览",disabled:!k(i,-1),onClick:l=>P(i,-1)}," - ",8,kf),n.createElementVNode("button",{type:"button",class:"card-recommendation__chart-zoom","data-testid":"card-recommendation-chart-zoom-reset","aria-label":"重置图表预览大小",title:"重置图表预览大小",onClick:l=>L(i)}," 1x ",8,_f),n.createElementVNode("button",{type:"button",class:"card-recommendation__chart-zoom","data-testid":"card-recommendation-chart-zoom-in","aria-label":"放大图表预览",title:"放大图表预览",disabled:!k(i,1),onClick:l=>P(i,1)}," + ",8,Cf)]),n.createVNode(Ii,{class:"card-recommendation__echarts-preview",option:Jc(i),height:he(i)},null,8,["option","height"])],8,yf)):(n.openBlock(),n.createElementBlock("div",Sf,[n.createElementVNode("table",null,[n.createElementVNode("thead",null,[n.createElementVNode("tr",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(_c(i),l=>(n.openBlock(),n.createElementBlock("th",{key:l.key},n.toDisplayString(l.label),1))),128))])]),n.createElementVNode("tbody",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(eb(i),(l,p)=>(n.openBlock(),n.createElementBlock("tr",{key:p},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(_c(i),g=>(n.openBlock(),n.createElementBlock("td",{key:g.key},n.toDisplayString(Yt(l[g.key])),1))),128))]))),128))])]),Cc(i)>0?(n.openBlock(),n.createElementBlock("div",Af,[n.createElementVNode("span",null,"共 "+n.toDisplayString(Cc(i))+" 条",1),zr(i)>1?(n.openBlock(),n.createElementBlock("span",wf,n.toDisplayString(Zy(i)),1)):n.createCommentVNode("",!0),n.createElementVNode("button",{type:"button",class:"card-recommendation__page-button card-recommendation__page-arrow",disabled:Qn(i)<=1,onClick:l=>Ws(i,Qn(i)-1)}," ‹ ",8,Tf),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Xy(i),l=>(n.openBlock(),n.createElementBlock("button",{key:l,type:"button",class:n.normalizeClass(["card-recommendation__page-button",{"card-recommendation__page-current":Qn(i)===l}]),onClick:p=>Ws(i,l)},n.toDisplayString(l),11,Ef))),128)),n.createElementVNode("button",{type:"button",class:"card-recommendation__page-button card-recommendation__page-arrow",disabled:Qn(i)>=zr(i),onClick:l=>Ws(i,Qn(i)+1)}," › ",8,xf)])):n.createCommentVNode("",!0)]))],42,jm))),128))])):(n.openBlock(),n.createElementBlock("div",Bf,[(s=c.draft.fallbackActions)!=null&&s.length?(n.openBlock(),n.createElementBlock("div",If,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(c.draft.fallbackActions,i=>(n.openBlock(),n.createElementBlock("button",{key:i.action,type:"button",class:"card-recommendation__fallback-action",disabled:!i.item,onClick:l=>Rk(i)},n.toDisplayString(i.label),9,Rf))),128))])):n.createCommentVNode("",!0)]))])}}}),[["__scopeId","data-v-3963486a"]]),qf={key:1,class:"card-recommendation-deferred","aria-live":"polite"},Wf=["disabled"],Uf={key:0,class:"card-recommendation-deferred__spinner","aria-hidden":"true"},jf=on(n.defineComponent({__name:"CardRecommendationDeferredDraft",props:{draft:{},defer:{type:Boolean}},emits:["choose","configure"],setup(e,{emit:r}){const o=e,c=r,d=n.ref(!o.defer),u=n.ref(!1);let y=null;function _(){y&&(clearTimeout(y),y=null)}function T(){d.value||u.value||(u.value=!0,n.nextTick(()=>{y=setTimeout(()=>{d.value=!0,u.value=!1,y=null},0)}))}return n.watch(()=>o.defer,B=>{_(),d.value=!B,u.value=!1}),n.onBeforeUnmount(_),(B,U)=>d.value?(n.openBlock(),n.createBlock(Zi,{key:0,draft:e.draft,onChoose:U[0]||(U[0]=(D,I)=>c("choose",D,I)),onConfigure:U[1]||(U[1]=D=>c("configure",D))},null,8,["draft"])):(n.openBlock(),n.createElementBlock("section",qf,[U[2]||(U[2]=n.createElementVNode("div",{class:"card-recommendation-deferred__main"},[n.createElementVNode("div",{class:"card-recommendation-deferred__title"},"推荐卡片已保留"),n.createElementVNode("div",{class:"card-recommendation-deferred__meta"},"加载后查看可用候选")],-1)),n.createElementVNode("button",{type:"button",class:"card-recommendation-deferred__load",disabled:u.value,onClick:T},[u.value?(n.openBlock(),n.createElementBlock("span",Uf)):n.createCommentVNode("",!0),n.createTextVNode(" "+n.toDisplayString(u.value?"加载中":"加载推荐卡片"),1)],8,Wf)]))}}),[["__scopeId","data-v-2342782b"]]),Ms="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAI4ElEQVR4AeydDXKcOBBG2b1YPCeLfTLnZkljD2WM+RFSd0stvRSEAaRW8z7eejNbtfl/4hcEIHBIAEEO0XADAtOEILwFEDghgCAncLgFAQThHYDACQFDQU5W5RYEghBAkCBB0WYdAghShzurBiGAIEGCos06BBCkDndWDUIgpiBB4NJmfAIIEj9DnsCQAIIYwqV0fAIIEj9DnsCQAIIYwqV0fAIIssmQUwisCSDImgafIbAhgCAbIJxCYE0AQdY0+AyBDQEE2QDhFAJrAgiypmH7meoBCSBIwNBo2Y8AgvixZqWABBAkYGi07EcAQfxYs1JAAggSMLSfLXPFigCCWJGlbhcEEKSLGHkIKwIIYkWWul0QQJAuYuQhrAggiBXZXuoO/hwIcvECvH/++iuHZX+9mMLtjgggyEGYIsSL7H/l9ovs6+23XEeSNZGOPyPITrgiwCzF+86t5RKSLCQ6PyLIJuAEOZYZSLKQ6PiIIKtwb8ixzEKShUTGMcIUBHmmlCHHc+aEJAuJDo8IIqEWyCGzPzYk+cDQ328I8pnp2R/IP0dc/44k14zCjRheEPnpofmVLZKEU+C84eEFOceTdRdJsrCpTlIrhiDT9EuN5lchJPliEfoTgkzTm1GCSGIE1rPs8II8Ho8/Anze5aC+IYk6Ut+Cwwsy4xZJHnJEEoHA9p0Agjx5IMkTBIdvBH4K8u32WCdIMlbeKU+LIBtKSLIBMvgpguy8AEiyA2XQSwhyEDySHIAZ7DKCnASOJCdwBrnlKkhEpkgSMTW9nhEkgSWSJEDqdAiCJAaLJImgOhuGIDcCRZIbsDoZiiA3g0SSm8CCD+9FENcYkMQVd9XFECQTP5Jkggs2DUEKAkOSAnhBpiJIYVBIUgiw8ekIohAQkihAbLQEglwGkzYASdI4RRuFIIqJIYkizEZKIYhyEEiiDLRyOQQxCABJDKBWKokgRuCRxAisc1kEMQR+KUnZ2vwvhcr4Jc1GkCRM+YOQJJ9dCzMRxCEFJHGAbLQEghiB3ZZFki2RGOcI4pgTkjjCVloKQZRAppbxkiS1H8adE0CQcz4md5HEBKtJUQQxwXpdFEmuGbUwAkEqpoAkFeEnLo0giaCshiGJFVmdugiiw7GoSjBJip412mQEaSQxJGkkiE0bCLIBUvMUSWrS318bQfa5VLuKJNXQ7y6MILtY6l5Ekrr816sjyJpGQ5/HlKShAJ6tIMgTRIsHJKmfCoLUz+C0AyQ5xWN+E0HMEZcvgCTlDHMrIEguOed5SOIM/LkcgjxBRDggSUFKmVMRJBNcrWlI4kseQXx5q6yGJCoYk4ogSBKm9gYhiU8mCOLD2WQVJDHB+q0ognzDEe8ESWwzSxHEtgOqFxNAkmKEhwUQ5BBNrBtIYpMXgthwrVLVQZKXKg9WcVEEqQjfYmlrSSx6brkmgrScTmZvhpK8vL+/v2a2FXJaZUFCMgvRtKEkv0IAUGoSQZRAtljGSJL5p8gwfxZBkBbfbMWejCRR7LDtUgjSdj4q3RlIwk8QlWQo0gwBA0maeTbLRvr9CWJJLWDt57dPw/yTXysiBNEi2XCdpxy/G26x2dYQpNlodBpDjjKOCFLGr+nZVnLIn2eG+Y+FCNL0K57fnJUc0tGb7MNsCJIRdetTDOVo/dHV+0MQdaR1CxrL8TbSv17NSSLITKGT3ViOaTQ55tcCQWYKHezWcgiih+zDbQjSQeQecshPjz8doLr9CAhyG5nphNvFkeM2slsTEOQWrrYGI4d9Hghiz9hkBeQwwfqjKIL8QNL+BeTwywhB/FirrIQcKhiTiyBIMqr6A8vkSOpfvqx6DPlt1REdBDki09h15KgTCILU4X5rVeS4hUt1MIKo4tQvhhz6TO9URJA7tJzHIocz8J3lEGQHSguXQsnRAjCjHhDECGxJWeQooac7F0F0eRZXQ45ihKoFEEQVZ1kx5CjjZzEbQSyoZtREjgxoDlMQxAHy1RLIcUyo9h0EqZwAclQO4GJ5BLkAZHkbOSzp6tRGEB2Ot6sgx21kVSYgSAXsyFEBeuaSCJIJLncacuSSU5+XVBBBkjDpDEIOHY6eVRDEiTZyOIFWXgZBlIHulUOOPSoxriGIcU7IYQzYuDyCGAJGDkO4TqXzBHFqLvIyyBE5va/eEeSLhdon5FBDWb0QgihHgBzKQCuXQxDFAJBDEWYjpRBEKQjkUALZWJnmBGmMT1I7yJGEKeQgBCmMDTkKATY+HUEKAkKOAnhBpiJIZlDIkQku2DQEyQgMOTKgBZ0ykiAqESGHCsYwRRDkRlTIcQNWJ0MRJDFI5EgE1dkwBEkIFDkSIHU6BEEugkWOC0Cd30aQk4DT5Tgpcn6LvxPwnE/1uwhyEAFyHIAZ7DKC7ASOHDtQBr2EIJvgkWMDZPBTBFm9AMixgsHHDwII8oFhmpqV49kfhzoEEES4I4dAYNslMLwgIseLkPktu9XGV7lWZB3qDi+IMJ4FkYPJhhwmWP2KIsg0/TLCjRxGYD3LIogN7RBy2Dx6X1URZJrelCNFDmWgNcsNL4i8zX8kAC1JpNxjricl2XogMLwgc4jyVr/KsVQSKYMcwrGrDUGeccrbXSKJTEeOJ8quDgiyilPe8hxJZBpyrDDOH7vZEWQTpbztdySR4cixQdjVKYLsxClvfYokMgw5dvB1dQlBDuKUt/9IkvlbKrmNHAfourqMICdxigWvsv8nQ+ZvuOZdTj+2WRK5zNY7AQRJSFiUmEWZd8RI4GU7xLc6gvjyZrVgBBAkWGC060sAQXx5s1owAggSLDDa9SWAIL68Wa1lAju9IcgOFC5BYCGAIAsJjhDYIYAgO1C4BIGFAIIsJDhCYIcAguxA4RIEFgJagiz1OEKgKwII0lWcPIw2AQTRJkq9rgggSFdx8jDaBBBEmyj1uiIQQJCuePMwwQggSLDAaNeXAIL48ma1YAQQJFhgtOtLAEF8ebNaMAJjCxIsLNr1J4Ag/sxZMRABBAkUFq36E0AQf+asGIgAggQKi1b9CSCIEXPK9kHgHwAAAP//0HYL0gAAAAZJREFUAwBGB62vUJIG1wAAAABJRU5ErkJggg==",Kf=new Set(["处理过程","执行过程","执行工具","确认业务口径","检索相关数据候选","核对业务证据","确认查询范围","检索语义资产","读取模型信息","准备执行查询","读取指标信息","检索知识库","准备推荐卡片","规划工作台任务","操作工作台卡片","执行 SQL 查询","读取文件"]);function Qf(e){const r=e.trim();return r?Kf.has(r):!0}const Yf={key:0,class:"collapsed-activity codex-turn-process"},Jf=["aria-expanded","aria-controls"],Zf={class:"collapsed-activity__label"},Xf=["id"],ep={key:0,class:"codex-process-item codex-process-item--commentary","data-testid":"process-preamble"},tp={class:"codex-process-item__preamble collapsed-activity__item"},np={class:"collapsed-activity__item-text"},ap=["aria-expanded","aria-controls","onClick"],rp={class:"codex-turn-process__group-summary"},sp=["id"],op=["aria-expanded","aria-controls","onClick"],ip={class:"collapsed-activity__invocation-title collapsed-activity__invocation-title-text"},cp={key:1,class:"codex-process-item__action-row a2 codex-process-item__action-row--static collapsed-activity__invocation-toggle","data-testid":"tool-action-row"},lp={class:"collapsed-activity__invocation-main codex-process-item__action-text"},dp={class:"collapsed-activity__invocation-title collapsed-activity__invocation-title-text"},up=["id"],mp={key:0,class:"codex-process-item__detail-block"},fp={key:1,class:"codex-process-item__detail-block"},pp={class:"is-error"},hp={key:2,class:"codex-process-item__detail-block"},gp={class:"collapsed-activity__error-text"},yp={key:0,class:"collapsed-activity__live-status","data-testid":"collapsed-activity-live-status",role:"status","aria-live":"polite"},bp=on(n.defineComponent({__name:"CollapsedToolActivity",props:{messages:{},turnActive:{type:Boolean,default:!1}},setup(e){const r=e,o=n.reactive({expanded:!1}),c=n.ref(Date.now()),d=n.ref(null),u=n.ref(null),y=n.ref(null),_=n.ref(null),T=n.ref(!1),B=n.ref(!1),U=n.ref({}),D=n.ref({}),I=n.ref({});let x=null;const H=n.computed(()=>hu(r.messages)),q=n.computed(()=>r.turnActive),j=n.computed(()=>{var f;return((f=r.messages[0])==null?void 0:f.id)||""}),Ne=n.computed(()=>j.value?`collapsed-activity-panel-${ke(j.value)}`:""),oe=n.computed(()=>o.expanded&&Ne.value?Ne.value:void 0),ue=n.computed(()=>H.value.length>0||r.turnActive),ce=n.computed(()=>dt(H.value)),ge=n.computed(()=>ce.value.map(f=>{if(!f.commentary)return f;const b=I.value[f.commentary.id];return!b||b===f.commentary.text?f:{...f,commentary:{...f.commentary,text:b}}})),de=n.computed(()=>H.value[H.value.length-1]),te=n.computed(()=>{var f,b;return q.value?(b=(f=de.value)==null?void 0:f.processInvocations)!=null&&b.length?"处理中":"思考中":""}),Pe=n.computed(()=>{const f=ct();if(f.length===0)return"0s";const b=qt(f),E=we(f);return b!==null&&E!==null?qe(E-b):"0s"}),ne=n.computed(()=>{const f=q.value?"处理中":"已处理";return Pe.value?`${f} ${Pe.value}`:f});function fe(){r.messages.length>0&&d.value===null&&(d.value=Date.now())}function ke(f){return f.replace(/[^a-zA-Z0-9_-]/g,"-")}function it(){T.value=!1,B.value=!1,U.value={},D.value={},I.value={},d.value=null,u.value=null,y.value=null,_.value=null,c.value=Date.now(),q.value?(B.value=!0,o.expanded=!0,u.value=null,fe()):o.expanded=!1,St(ce.value)}function St(f){const b={...I.value};let E=!1;for(const J of f){const _e=J.commentary;!(_e!=null&&_e.text)||b[_e.id]||(b[_e.id]=_e.text,E=!0)}E&&(I.value=b)}n.watch(()=>r.messages,()=>{if(fe(),rt(r.messages),c.value=Date.now(),q.value){u.value=null;return}r.messages.length>0&&u.value===null&&(u.value=Date.now())},{deep:!0,immediate:!0}),n.watch(j,(f,b)=>{if(f===b)return;const E=q.value&&(d.value!==null||y.value!==null),J=d.value,_e=y.value,Re=_.value;it(),E&&(d.value=J??d.value,y.value=_e??y.value,_.value=Re??_.value)}),n.watch(ce,f=>{St(f)},{immediate:!0}),n.watch(q,f=>{if(f?(B.value=!0,T.value||(o.expanded=!0)):T.value||(o.expanded=!1),fe(),rt(r.messages),f){c.value=Date.now(),u.value=null,x||(x=setInterval(()=>{c.value=Date.now()},1e3));return}x&&(clearInterval(x),x=null),r.messages.length>0&&u.value===null&&(u.value=Date.now())},{immediate:!0}),n.watch(()=>r.messages.map(f=>f.id).join("|"),()=>{q.value||T.value||(o.expanded=B.value?!1:o.expanded)}),n.onBeforeUnmount(()=>{x&&(clearInterval(x),x=null)});function bt(){T.value=!0,o.expanded=!o.expanded}function qe(f){const b=Math.max(0,Math.floor(f/1e3)),E=Math.floor(b/60),J=b%60;return E>0?`${E}m ${J}s`:`${J}s`}function ct(){return H.value.length>0?H.value:r.messages}function Mt(f){return f.map(b=>b.startTime).filter(b=>typeof b=="number"&&Number.isFinite(b))}function xt(f){const b=Mt(f);return b.length>0?{source:"server",value:Math.min(...b)}:d.value===null?null:{source:"fallback",value:d.value}}function rt(f=r.messages){const b=xt(f);if(b!==null){if(y.value===null){y.value=b.value,_.value=b.source;return}b.source==="server"&&_.value==="server"&&b.value<y.value&&(y.value=b.value)}}function qt(f){var b;return y.value??((b=xt(f))==null?void 0:b.value)??null}function we(f){if(q.value)return c.value;const b=f.map(E=>E.endTime).filter(E=>typeof E=="number"&&Number.isFinite(E));return b.length>0?Math.max(...b):u.value}function dt(f){var Re;const b=[];let E=[],J=null;function _e(){J&&(b.push(J),J=null)}for(const nt of f){const Ot=Fe(nt);Ot&&(_e(),E.push({id:nt.id,text:Ot}));const mt=R(nt);if(mt.length===0)continue;const Xe=E.filter(Zt=>!Ie(Zt.text,mt));if(J&&Xe.length===0){J.items.push(...mt),E=[];continue}_e();const Bt=v(Xe);J={id:(Bt==null?void 0:Bt.id)??((Re=mt[0])==null?void 0:Re.id)??nt.id,...Bt?{commentary:Bt}:{},items:[...mt]},E=[]}_e();for(const nt of E)b.push({id:nt.id,commentary:nt,items:[]});return b}function Fe(f){var E;const b=f.content.trim();return!b||Qf(b)&&!ut(f,b)?"":f.processPreamble===!0?b:f.processPreamble===!1||(E=f.processInvocations)!=null&&E.length?"":b}function ut(f,b){var E;return b==="执行 SQL 查询"&&!((E=f.processInvocations)!=null&&E.length)}function Ie(f,b){const E=f.trim();return!E||b.length===0?!1:b.some(J=>{const _e=J.actionLabel.trim(),Re=_e.replace(/^正在执行\s+/u,"").replace(/^执行失败\s+/u,"").trim();return E===_e||E===Re})}function v(f){const[b]=f;if(b)return{...b,text:f.map(E=>E.text).filter(Boolean).join(`
22
+
23
+ `)}}function R(f){return(f.processInvocations??[]).map(b=>$(f,b))}function $(f,b){const E=w(b),J=E==="readFile"?Dt(b):void 0,_e=b.title||b.name||(b.kind==="skill"?"Skill":"执行工具"),Re=r.turnActive?b.status:V(b.status);return{actionLabel:ee({...b,status:Re},E,_e,J),displayKind:E,error:b.error,id:b.id,inputSummary:b.inputSummary,kind:b.kind,parentMessageId:f.id,resultSummary:b.resultSummary,status:Re,titleLabel:b.title.trim()||b.name.trim()||(b.kind==="skill"?"Skill":"执行工具"),viewStatus:M(Re)}}function w(f){return f.kind==="skill"?"skill":Q(f)?"readFile":"tool"}function Q(f){const b=`${f.name} ${f.title}`.toLowerCase();return b.includes("read_file")||b.includes("read file")||b.includes("读取文件")||b.includes("read attachment")||b.includes("read workspace")}function ee(f,b,E,J){return b==="readFile"?J?`Read ${J}`:E:f.status==="running"?`正在执行 ${E}`:f.status==="error"?`执行失败 ${E}`:E}function M(f){return f==="error"?"failed":f==="done"?"completed":"running"}function V(f){return f==="running"?"done":f}function K(f){const b=f.items.filter(J=>J.viewStatus==="failed");if(b.length>0)return`${b.length} 项失败:${ie(b)}`;const E=f.items.filter(J=>J.viewStatus==="running");return E.length>0?E.length===1?ie(E):`${E.length} 项执行中:${ie(E)}`:f.items.length===1?ie(f.items):`已完成 ${f.items.length} 项:${ie(f.items)}`}function ie(f){const b=f.slice(0,3).map(J=>J.actionLabel),E=f.length>b.length?` 等 ${f.length} 项`:"";return`${b.join("、")}${E}`}function xe(f){return f.items.length>0}function Ce(f){if(!xe(f))return!1;const b=U.value[f.id];return b!==void 0?b:Be()}function Be(){return!0}function Ae(f){U.value={...U.value,[f.id]:!Ce(f)}}function ot(f){return`collapsed-activity-tools-${ke(f.id)}`}function je(f){return Ce(f)?void 0:ot(f)}function Ke(f){return f.viewStatus==="failed"?"失败":f.viewStatus==="running"?"执行中":"已完成"}function pt(f){return`${f.parentMessageId}:${f.id}`}function C(f){return!!(f!=null&&f.trim())}function z(f){return f.viewStatus==="failed"&&C(f.error)?f.error:void 0}function ae(f){return z(f)?void 0:C(f.resultSummary)?f.resultSummary:void 0}function Y(f){return C(f.inputSummary)||!!z(f)||!!ae(f)}function ye(f){return D.value[pt(f)]??!0}function Te(f){const b=pt(f);D.value={...D.value,[b]:!ye(f)}}function Me(f){return`collapsed-activity-tool-${ke(pt(f))}`}function tt(f){return ye(f)?void 0:Me(f)}function Dt(f){const b=ht(f.inputSummary);return b||ht(f.resultSummary)}function ht(f){if(!f)return;const b=f.match(/(?:path|file|filePath|file_path)\s*[:=]\s*["']?([^"',\n}]+)/iu),E=((b==null?void 0:b[1])||"").trim();if(!E)return;const J=E.split(/[\\/]+/).filter(Boolean);return J[J.length-1]||E}return(f,b)=>ue.value?(n.openBlock(),n.createElementBlock("div",Yf,[n.createElementVNode("button",{type:"button",class:"collapsed-activity__summary codex-turn-process__toggle","aria-expanded":o.expanded,"aria-controls":oe.value,onClick:bt},[n.createElementVNode("span",Zf,n.toDisplayString(ne.value),1),n.createElementVNode("span",{class:n.normalizeClass(["collapsed-activity__arrow",{"is-open":o.expanded}]),"aria-hidden":"true"},[...b[0]||(b[0]=[n.createElementVNode("img",{src:Ms,alt:""},null,-1)])],2)],8,Jf),o.expanded?(n.openBlock(),n.createElementBlock("div",{key:0,id:Ne.value,class:"collapsed-activity__items codex-turn-process__body"},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(ge.value,E=>(n.openBlock(),n.createElementBlock("div",{key:E.id,class:"collapsed-activity__task"},[E.commentary?(n.openBlock(),n.createElementBlock("article",ep,[n.createElementVNode("div",tp,[n.createElementVNode("span",np,n.toDisplayString(E.commentary.text),1)])])):n.createCommentVNode("",!0),xe(E)?(n.openBlock(),n.createElementBlock("button",{key:1,type:"button",class:"codex-turn-process__group-toggle collapsed-activity__invocation-group-toggle","data-testid":"process-group-tools-toggle","aria-expanded":!Ce(E),"aria-controls":je(E),onClick:J=>Ae(E)},[n.createElementVNode("span",rp,n.toDisplayString(K(E)),1),n.createElementVNode("span",{class:n.normalizeClass(["collapsed-activity__invocation-group-arrow",{"is-open":!Ce(E)}]),"aria-hidden":"true"},[...b[1]||(b[1]=[n.createElementVNode("img",{src:Ms,alt:""},null,-1)])],2)],8,ap)):n.createCommentVNode("",!0),E.items.length>0&&!Ce(E)?(n.openBlock(),n.createElementBlock("div",{key:2,id:ot(E),class:"collapsed-activity__invocations codex-turn-process__tools"},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(E.items,J=>(n.openBlock(),n.createElementBlock("article",{key:J.id,class:n.normalizeClass(["codex-process-item collapsed-activity__invocation",[`codex-process-item--${J.viewStatus}`,`is-${J.status}`]])},[Y(J)?(n.openBlock(),n.createElementBlock("button",{key:0,type:"button",class:"codex-process-item__action-row a2 collapsed-activity__invocation-toggle","data-testid":"tool-action-row","aria-expanded":!ye(J),"aria-controls":tt(J),onClick:_e=>Te(J)},[n.createElementVNode("span",{class:n.normalizeClass(["collapsed-activity__invocation-main codex-process-item__action-text",{"is-open":!ye(J)}])},[n.createElementVNode("span",ip,n.toDisplayString(J.titleLabel),1),n.createElementVNode("span",{class:n.normalizeClass(["codex-process-item__status-hint",`is-${J.viewStatus}`]),style:{"margin-left":"8px"}},n.toDisplayString(Ke(J)),3),b[2]||(b[2]=n.createElementVNode("img",{class:"tool-arrow-toggle",src:Ms,alt:""},null,-1))],2),n.createElementVNode("span",{class:n.normalizeClass(["collapsed-activity__invocation-arrow",{"is-open":!ye(J)}]),"aria-hidden":"true"},null,2)],8,op)):(n.openBlock(),n.createElementBlock("div",cp,[n.createElementVNode("span",lp,[n.createElementVNode("span",dp,n.toDisplayString(J.titleLabel),1)]),n.createElementVNode("span",{class:n.normalizeClass(["codex-process-item__status-hint",`is-${J.viewStatus}`])},n.toDisplayString(Ke(J)),3)])),Y(J)&&!ye(J)?(n.openBlock(),n.createElementBlock("div",{key:2,id:Me(J),class:"collapsed-activity__invocation-detail codex-process-item__details"},[C(J.inputSummary)?(n.openBlock(),n.createElementBlock("section",mp,[b[3]||(b[3]=n.createElementVNode("h4",null,"输入",-1)),n.createElementVNode("pre",null,n.toDisplayString(J.inputSummary),1)])):n.createCommentVNode("",!0),z(J)?(n.openBlock(),n.createElementBlock("section",fp,[b[4]||(b[4]=n.createElementVNode("h4",{class:"is-error"},"错误",-1)),n.createElementVNode("pre",pp,n.toDisplayString(z(J)),1)])):ae(J)?(n.openBlock(),n.createElementBlock("section",hp,[b[5]||(b[5]=n.createElementVNode("h4",null,"输出",-1)),n.createElementVNode("pre",null,n.toDisplayString(ae(J)),1)])):n.createCommentVNode("",!0)],8,up)):n.createCommentVNode("",!0)],2))),128))],8,sp)):n.createCommentVNode("",!0)]))),128)),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(H.value.filter(E=>E.error),E=>(n.openBlock(),n.createElementBlock("div",{key:`error-${E.id}`,class:"collapsed-activity__error"},[n.createElementVNode("span",gp,n.toDisplayString(E.error),1)]))),128)),te.value?(n.openBlock(),n.createElementBlock("div",yp,n.toDisplayString(te.value),1)):n.createCommentVNode("",!0)],8,Xf)):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)}}),[["__scopeId","data-v-8ed6feac"]]),kp={class:"plan-draft"},_p={class:"plan-draft__blocks"},Cp={class:"plan-draft__block-title"},Sp={class:"plan-draft__block-meta"},Ap={key:0,class:"plan-draft__block-warn",title:"AI 不确定此识别结果"},wp={key:0,class:"plan-draft__auto-note"},Tp={key:1,class:"plan-draft__modify"},Ep={class:"plan-draft__modify-actions"},xp={key:2,class:"plan-draft__actions"},Bp=on(n.defineComponent({__name:"PlanDraftCard",props:{draft:{},autoInsert:{type:Boolean,default:!1}},emits:["confirm","cancel","modify","autoInsertChange"],setup(e,{emit:r}){const o=e,c=r,d=n.ref(!1),u=n.ref("");function y(){c("confirm",o.draft.planId)}function _(){c("cancel")}function T(){d.value=!0,u.value=""}function B(){u.value.trim()&&(c("modify",o.draft.planId,u.value.trim()),d.value=!1)}function U(D){const I={"card.metric.numeric":"数值卡片","card.metric.combo":"组合卡片","card.metric.alert":"预警卡片","card.metric.targetAchievement":"目标达成卡","card.chart.line":"折线图","card.chart.bar":"柱状图","card.chart.pie":"饼图","card.chart.donut":"环形图","card.chart.radar":"雷达图","card.chart.area":"面积图","card.chart.scatter":"散点图","card.table.list":"表格卡片","card.analysis.reportSummary":"报告摘要卡","card.dashboard.executiveCockpit":"经营驾驶舱","card.utility.calendar":"日历卡"};return I[D]?I[D]:D.replace("card.","").replace("."," / ")}return(D,I)=>(n.openBlock(),n.createElementBlock("div",kp,[I[5]||(I[5]=n.createElementVNode("div",{class:"plan-draft__header"},"工作台方案确认",-1)),n.createElementVNode("div",_p,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(e.draft.blocks,x=>(n.openBlock(),n.createElementBlock("div",{key:x.blockId,class:"plan-draft__block"},[n.createElementVNode("span",Cp,n.toDisplayString(x.title),1),n.createElementVNode("span",Sp,n.toDisplayString(U(x.capabilityId))+" · "+n.toDisplayString(x.layout.w)+"×"+n.toDisplayString(x.layout.h),1),x.confidence<.7?(n.openBlock(),n.createElementBlock("span",Ap,"?")):n.createCommentVNode("",!0)]))),128))]),o.autoInsert?(n.openBlock(),n.createElementBlock("div",wp," 识别完成后将自动应用到画布 ")):n.createCommentVNode("",!0),!o.autoInsert&&d.value?(n.openBlock(),n.createElementBlock("div",Tp,[n.withDirectives(n.createElementVNode("textarea",{"onUpdate:modelValue":I[0]||(I[0]=x=>u.value=x),class:"plan-draft__modify-input",rows:"2",placeholder:'请输入修改意见,如"把折线图换成面积图"'},null,512),[[n.vModelText,u.value]]),n.createElementVNode("div",Ep,[n.createElementVNode("button",{type:"button",class:"plan-draft__btn plan-draft__btn--primary",onClick:B}," 提交修改 "),n.createElementVNode("button",{type:"button",class:"plan-draft__btn",onClick:I[1]||(I[1]=x=>d.value=!1)},"取消")])])):o.autoInsert?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("div",xp,[n.createElementVNode("button",{type:"button",class:"plan-draft__btn plan-draft__btn--primary",onClick:y},[n.createVNode(n.unref(Ze.CheckOutlined)),I[2]||(I[2]=n.createTextVNode(" 插入工作区 ",-1))]),n.createElementVNode("button",{type:"button",class:"plan-draft__btn",onClick:T},[n.createVNode(n.unref(Ze.EditOutlined)),I[3]||(I[3]=n.createTextVNode(" 修改 ",-1))]),n.createElementVNode("button",{type:"button",class:"plan-draft__btn plan-draft__btn--danger",onClick:_},[n.createVNode(n.unref(Ze.CloseOutlined)),I[4]||(I[4]=n.createTextVNode(" 取消 ",-1))])]))]))}}),[["__scopeId","data-v-dcacd78e"]]),Ip={key:0,class:"chat-msg__error"},Rp={class:"chat-msg__error-text"},vp=["innerHTML"],Dp={key:0,class:"chat-msg__query-result-header"},Np={key:0,class:"chat-msg__query-result-title"},Lp={key:1,class:"chat-msg__query-result-count"},Pp={class:"chat-msg__query-result-scroll"},Mp={key:3,class:"chat-msg__follow-up-actions"},Op=["disabled","onClick"],Fp={key:5,class:"chat-msg__cards"},$p={key:6,class:"chat-msg__task-choice"},Vp={class:"chat-msg__task-choice-title"},zp={class:"chat-msg__task-choice-actions"},Gp=["data-choice-index","disabled","onClick"],Hp={class:"chat-msg__task-choice-index"},qp={class:"chat-msg__task-choice-label"},Wp=["disabled"],Up={key:7,class:"chat-msg__plan-draft"},jp={key:8,class:"chat-msg__card-recommendation"},Kp={key:9,class:"chat-msg__task-panel"},Qp={class:"chat-msg__task-header"},Yp={class:"chat-msg__task-heading"},Jp={class:"chat-msg__task-kicker"},Zp={class:"chat-msg__task-title"},Xp={key:0,class:"chat-msg__task-section"},eh={class:"chat-msg__task-fields"},th={class:"chat-msg__task-field-label"},nh={class:"chat-msg__task-field-value"},ah={key:1,class:"chat-msg__task-section"},rh={class:"chat-msg__task-missing-list"},sh={key:2,class:"chat-msg__task-alert chat-msg__task-alert--error"},oh={key:3,class:"chat-msg__task-alert chat-msg__task-alert--summary"},ih={key:4,class:"chat-msg__task-actions"},ch=["disabled"],lh=["disabled"],dh={key:10,class:"chat-msg__memory-capture"},uh={class:"chat-msg__memory-title"},mh={class:"chat-msg__memory-content"},fh={class:"chat-msg__memory-actions"},ph=["disabled"],hh={key:11,class:"chat-msg__detail"},gh={class:"detail-header"},yh={class:"detail-content__inner"},bh=80,Xi=on(n.defineComponent({__name:"ChatMessageItem",props:{message:{type:Object,required:!0},messages:{type:Array,default:()=>[]},autoInsertComposePlan:{type:Boolean,default:!1},taskStateActionsDisabled:{type:Boolean,default:!1}},emits:["autoInsertComposePlanChange","cancelPlan","cancelTaskState","chooseCardRecommendation","configureCardRecommendation","confirmPlan","confirmTaskState","insertCard","memoryCaptureDismiss","memoryCaptureSave","modifyPlan","sendFollowUp"],setup(e,{expose:r,emit:o}){const c=e,d=o,u=n.reactive({collapsed:!0}),y=n.ref({}),_=[],T=[{label:"下载",type:"download"}],B=[{type:"image",matcher:C=>typeof C!="string"?C.type.startsWith("image/"):/^data:image\//i.test(C)||/^(png|jpe?g|gif|webp|bmp|svg)(?:[;,?]|$)/i.test(C)||/\.(png|jpe?g|gif|webp|bmp|svg)(?:[?#].*)?$/i.test(C)}],U=[...B,{type:"pdf",matcher:C=>typeof C!="string"?C.type==="application/pdf":/\.pdf(?:[?#].*)?$/i.test(C)||/^data:application\/pdf[;,]/i.test(C)}],D=n.computed(()=>c.message.attachments||[]),I=n.computed(()=>D.value.map((C,z)=>{const ae=C.type==="image"?"image":v(C.mimeType,C.name,C.url),Y={id:`${c.message.id}-${z}-${C.name}`,name:C.name,url:C.url||C.name,fileType:ae,status:"success"};return C.rawFile?{...Y,rawFile:C.rawFile}:{...Y,size:C.size||1}})),x=n.computed(()=>c.message.role==="assistant"?"card":D.value.every(C=>C.type==="image")?"picture":"card"),H=n.computed(()=>{var C;return(((C=c.message.cards)==null?void 0:C.length)||0)>1}),q=n.computed(()=>sd(c.message)),j=n.computed(()=>(c.message.cards||[]).map(C=>Q(C))),Ne=n.computed(()=>c.message.queryResultTable),oe=n.computed(()=>{const C=Array.isArray(c.message.queryResultTables)?c.message.queryResultTables:[];return(C.length>0?C:Ne.value?[Ne.value]:[]).filter(ae=>!ae.renderedInMarkdown)}),ue=n.computed(()=>!!(c.message.role==="assistant"&&!c.message.loading&&!c.message.cardRecommendationDraft&&oe.value.some(C=>C.columns.length>0&&C.rows.length>0)));function ce(C){const z=C.returnedCount??C.rows.length,ae=C.totalCount;return typeof ae=="number"&&ae>z?`已返回 ${z} / ${ae} 条`:`共 ${z} 条`}const ge=n.computed(()=>{var C;return((C=c.message.taskStateDraft)==null?void 0:C.fields.filter(z=>!!z.displayValue))||[]}),de=n.computed(()=>{var C,z;return((z=(C=c.message.taskStateDraft)==null?void 0:C.confirmationOptions)==null?void 0:z.filter(ae=>Number.isFinite(ae.index)))||[]}),te=n.computed(()=>{var z,ae;const C=(ae=(z=c.message.taskStateDraft)==null?void 0:z.title)==null?void 0:ae.trim();return C&&!/^确认/u.test(C)?C:"候选项"}),Pe=n.computed(()=>c.message.role==="assistant"&&!c.message.loading?qt(c.message.content):[]),ne=n.computed(()=>{const C=c.message.taskStateDraft;return!!(C!=null&&C.canConfirm&&de.value.length>0)}),fe=n.computed(()=>ne.value?void 0:c.message.taskStateDraft),ke=n.computed(()=>{const C=c.message.taskStateDraft;return!!(C!=null&&C.canConfirm&&C.confirmPhrase&&de.value.length===0)}),it=n.computed(()=>ne.value),St=n.computed(()=>c.message.thinkingProcessMessages||[]),bt=n.computed(()=>{const C=c.message.taskStateDraft;return!!(C!=null&&C.canConfirm&&C.cancelPhrase)}),qe=n.computed(()=>c.message.memoryCaptureDraft?y.value[c.message.id]||c.message.memoryCaptureDraft.status:void 0),ct=n.computed(()=>c.message.memoryCaptureDraft?qe.value==="candidate_created"?"已保存候选":qe.value==="saving"?"保存中":c.message.memoryCaptureDraft.confirmLabel:"");n.watch(()=>c.message.loading,C=>{u.collapsed=!C},{immediate:!0});function Mt(){u.collapsed=!u.collapsed}function xt(){const C=c.message.memoryCaptureDraft;C&&(y.value={...y.value,[c.message.id]:"dismissed"},d("memoryCaptureDismiss",C.turnId,C.itemId))}function rt(){const C=c.message.memoryCaptureDraft;C&&(y.value={...y.value,[c.message.id]:"saving"},d("memoryCaptureSave",C.turnId,C.itemId))}function qt(C){const z=[],ae=Te=>{const Me=Te.trim().replace(/[。;;,,]\s*$/u,"");!Me||Me.length>80||z.includes(Me)||z.push(Me)};let Y=0;for(;z.length<3;){const Te=C.indexOf("继续说",Y);if(Te<0)break;const Me=C.slice(Te+3).search(/[「“"]/u);if(Me<0)break;const tt=Te+3+Me,Dt=C[tt],ht=Dt==="「"?"」":Dt==="“"?"”":Dt,f=C.indexOf(ht,tt+1);if(f<0)break;ae(C.slice(tt+1,f)),Y=f+1}const ye=C.match(/(?:你可以继续这样问|可以继续问|还可以继续问|后续可以):?\s*\n([\s\S]*)/u);if(ye&&z.length<3)for(const Te of ye[1].split(`
24
+ `)){const Me=Te.match(/^\s*[-*]\s+(.+?)\s*$/u);if(!Me){if(z.length>0)break;continue}if(ae(Me[1]),z.length>=3)break}return z}function we(C){!C.trim()||c.taskStateActionsDisabled||d("sendFollowUp",C)}function dt(){const C=c.message.taskStateDraft;c.taskStateActionsDisabled||!(C!=null&&C.canConfirm)||!C.confirmPhrase||!C.cancelPhrase||d("confirmTaskState",C.turnId,C.taskId,C.confirmPhrase)}function Fe(C){const z=c.message.taskStateDraft;c.taskStateActionsDisabled||z!=null&&z.canConfirm&&d("confirmTaskState",z.turnId,z.taskId,String(C))}function ut(){const C=c.message.taskStateDraft;c.taskStateActionsDisabled||!(C!=null&&C.canConfirm)||!C.confirmPhrase||!C.cancelPhrase||d("cancelTaskState",C.turnId,C.taskId,C.cancelPhrase)}function Ie(C){y.value={...y.value,[c.message.id]:C}}r({setMemoryCaptureStatus:Ie});function v(C,z,ae){return C.includes("pdf")||/\.pdf(?:[?#].*)?$/i.test(z)||/^data:application\/pdf[;,]/i.test(ae||"")?"pdf":(C.includes("markdown")||/\.md(?:[?#].*)?$/i.test(z),"other")}function R(C,z){if(!z.url)return;C.preventDefault();const ae=document.createElement("a");ae.href=z.url,ae.download=z.name||"download",ae.rel="noopener noreferrer",document.body.appendChild(ae),ae.click(),document.body.removeChild(ae)}function $(C){return/^(?:选|选择|序号|第)?[1-9]\d*(?:个|项|号)?$/u.test(C.replace(/\s+/g,""))}function w(){const C=c.messages.findIndex(ae=>ae.id===c.message.id),z=C>=0?c.messages.slice(0,C):c.messages;for(const ae of[...z].reverse()){if(ae.role!=="user")continue;const Y=ae.content.trim();if(Y&&!$(Y))return Y}return""}function Q(C){var ye,Te,Me,tt;const z=(Te=(ye=C.meta)==null?void 0:ye.prompt)==null?void 0:Te.trim();if(z&&!$(z))return C;const ae=(tt=(Me=C.dataBinding)==null?void 0:Me.question)==null?void 0:tt.trim(),Y=ae&&!$(ae)?ae:w();return Y?{...C,dataBinding:{...C.dataBinding,question:Y},meta:{...C.meta,prompt:Y}}:C}function ee(C,z){const ae=C[z];if(ae==null)return"";if(typeof ae=="string")return ae;if(typeof ae=="number"||typeof ae=="boolean"||typeof ae=="bigint")return String(ae);try{return JSON.stringify(ae)}catch{return String(ae)}}function M(C,z,ae){var Te;const Y=(Te=C.columns[0])==null?void 0:Te.key,ye=Y?ee(z,Y):"";return`${ae}-${ye}`}const V=new co.Marked({gfm:!0,breaks:!0}),K=n.ref("");let ie=null;const xe=[/No available provider for this query/giu];function Ce(C){const z=xe.reduce((ae,Y)=>ae.replace(Y,""),C);return Eo.sanitize(V.parse(Fu(z)))}function Be(){ie&&(clearTimeout(ie),ie=null)}function Ae(){Be(),K.value=c.message.content?Ce(c.message.content):""}function ot(){ie||(ie=setTimeout(()=>{ie=null,K.value=c.message.content?Ce(c.message.content):""},bh))}const je=n.ref(!1);let Ke=null;function pt(){Ke&&(clearTimeout(Ke),Ke=null)}return n.watch(()=>[c.message.content,c.message.loading,c.message.streaming],(C,z)=>{if(c.message.role==="status")return;if(c.message.streaming){!K.value&&c.message.content&&(K.value=Ce(c.message.content)),ot();return}Ae(),(z==null?void 0:z[2])&&!c.message.streaming&&c.message.content&&n.nextTick(()=>{je.value=!0,pt(),Ke=setTimeout(()=>{je.value=!1,Ke=null},1200)})},{immediate:!0}),n.onBeforeUnmount(()=>{Be(),pt()}),(C,z)=>{var ae;return n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["chat-msg",[`chat-msg--${e.message.role}`,{"chat-msg--workbench-interleaved-result":e.message.workbenchInterleavedPlacement==="result"||e.message.workbenchInterleavedPlacement==="separator-result","chat-msg--workbench-interleaved-recommendation":e.message.workbenchInterleavedPlacement==="recommendation","chat-msg--workbench-interleaved-separator":e.message.workbenchInterleavedPlacement==="separator-result"||e.message.workbenchInterleavedPlacement==="separator-tail"}]])},[e.message.error&&e.message.role==="status"?(n.openBlock(),n.createElementBlock("div",Ip,[z[6]||(z[6]=n.createElementVNode("div",{class:"chat-msg__error-title"},"请求失败",-1)),n.createElementVNode("div",Rp,n.toDisplayString(e.message.error),1)])):n.createCommentVNode("",!0),e.message.role==="assistant"&&St.value.length>0?(n.openBlock(),n.createBlock(bp,{key:1,class:"chat-msg__thinking-process",messages:St.value,"turn-active":e.message.loading||e.message.streaming},null,8,["messages","turn-active"])):n.createCommentVNode("",!0),!e.message.loading&&e.message.content&&K.value?(n.openBlock(),n.createElementBlock("div",{key:2,class:n.normalizeClass(["chat-msg__text",{"chat-msg__text--reveal":je.value}]),innerHTML:K.value},null,10,vp)):n.createCommentVNode("",!0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(ue.value?oe.value:[],(Y,ye)=>(n.openBlock(),n.createElementBlock("section",{key:`${e.message.id}-query-result-table-${ye}`,class:"chat-msg__query-result-table"},[Y.title||ce(Y)?(n.openBlock(),n.createElementBlock("header",Dp,[Y.title?(n.openBlock(),n.createElementBlock("div",Np,n.toDisplayString(Y.title),1)):n.createCommentVNode("",!0),ce(Y)?(n.openBlock(),n.createElementBlock("div",Lp,n.toDisplayString(ce(Y)),1)):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0),n.createElementVNode("div",Pp,[n.createElementVNode("table",null,[n.createElementVNode("thead",null,[n.createElementVNode("tr",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Y.columns,Te=>(n.openBlock(),n.createElementBlock("th",{key:Te.key},n.toDisplayString(Te.label),1))),128))])]),n.createElementVNode("tbody",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Y.rows,(Te,Me)=>(n.openBlock(),n.createElementBlock("tr",{key:M(Y,Te,Me)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Y.columns,tt=>(n.openBlock(),n.createElementBlock("td",{key:tt.key},n.toDisplayString(ee(Te,tt.key)),1))),128))]))),128))])])])]))),128)),Pe.value.length>0?(n.openBlock(),n.createElementBlock("div",Mp,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Pe.value,Y=>(n.openBlock(),n.createElementBlock("button",{key:Y,type:"button",class:"chat-msg__follow-up-action",disabled:e.taskStateActionsDisabled,onClick:ye=>we(Y)},n.toDisplayString(Y),9,Op))),128))])):n.createCommentVNode("",!0),!e.message.loading&&I.value.length>0?(n.openBlock(),n.createElementBlock("div",{key:4,class:n.normalizeClass(["chat-msg__attachments",`chat-msg__attachments--${e.message.role}`])},[n.createVNode(n.unref(Yr.TrAttachments),{items:I.value,actions:e.message.role==="assistant"?T:_,"file-matchers":e.message.role==="assistant"?U:B,variant:x.value,disabled:"",wrap:"",onDownload:R},null,8,["items","actions","file-matchers","variant"])],2)):n.createCommentVNode("",!0),q.value?(n.openBlock(),n.createElementBlock("div",Fp,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(j.value,Y=>(n.openBlock(),n.createBlock(Ri,{key:Y.id,card:Y,"show-insert-action":H.value,onInsertCard:ye=>d("insertCard",ye)},null,8,["card","show-insert-action","onInsertCard"]))),128))])):n.createCommentVNode("",!0),e.message.role==="assistant"&&!e.message.loading&&ne.value?(n.openBlock(),n.createElementBlock("div",$p,[n.createElementVNode("div",Vp,n.toDisplayString(te.value),1),n.createElementVNode("div",zp,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(de.value,Y=>(n.openBlock(),n.createElementBlock("button",{key:Y.index,type:"button",class:"chat-msg__task-choice-action","data-choice-index":Y.index,disabled:e.taskStateActionsDisabled,onClick:ye=>Fe(Y.index)},[n.createElementVNode("span",Hp,n.toDisplayString(Y.index),1),n.createElementVNode("span",qp,n.toDisplayString(Y.label),1)],8,Gp))),128)),bt.value?(n.openBlock(),n.createElementBlock("button",{key:0,type:"button",class:"chat-msg__task-choice-cancel",disabled:e.taskStateActionsDisabled,onClick:ut},n.toDisplayString((ae=e.message.taskStateDraft)==null?void 0:ae.cancelPhrase),9,Wp)):n.createCommentVNode("",!0)])])):n.createCommentVNode("",!0),e.message.role==="assistant"&&!e.message.loading&&e.message.planDraft?(n.openBlock(),n.createElementBlock("div",Up,[n.createVNode(Bp,{draft:e.message.planDraft,"auto-insert":e.autoInsertComposePlan,onConfirm:z[0]||(z[0]=Y=>d("confirmPlan",Y)),onCancel:z[1]||(z[1]=Y=>d("cancelPlan")),onModify:z[2]||(z[2]=(Y,ye)=>d("modifyPlan",Y,ye)),onAutoInsertChange:z[3]||(z[3]=Y=>d("autoInsertComposePlanChange",Y))},null,8,["draft","auto-insert"])])):n.createCommentVNode("",!0),e.message.role==="assistant"&&!e.message.loading&&e.message.cardRecommendationDraft&&!q.value?(n.openBlock(),n.createElementBlock("div",jp,[n.createVNode(jf,{draft:e.message.cardRecommendationDraft,defer:e.message.deferCardRecommendationRender,onChoose:z[4]||(z[4]=(Y,ye)=>d("chooseCardRecommendation",Y,ye)),onConfigure:z[5]||(z[5]=Y=>d("configureCardRecommendation",Y))},null,8,["draft","defer"])])):n.createCommentVNode("",!0),e.message.role==="assistant"&&!e.message.loading&&fe.value?(n.openBlock(),n.createElementBlock("section",Kp,[n.createElementVNode("header",Qp,[n.createElementVNode("div",Yp,[n.createElementVNode("div",Jp,n.toDisplayString(fe.value.taskKindLabel),1),n.createElementVNode("div",Zp,n.toDisplayString(fe.value.title),1)]),it.value?(n.openBlock(),n.createElementBlock("span",{key:0,class:n.normalizeClass(["chat-msg__task-status",`chat-msg__task-status--${fe.value.statusTone}`])},n.toDisplayString(fe.value.statusLabel),3)):n.createCommentVNode("",!0)]),ge.value.length>0?(n.openBlock(),n.createElementBlock("div",Xp,[z[7]||(z[7]=n.createElementVNode("div",{class:"chat-msg__task-section-title"},"已收集字段",-1)),n.createElementVNode("dl",eh,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(ge.value,Y=>(n.openBlock(),n.createElementBlock(n.Fragment,{key:Y.code},[n.createElementVNode("dt",th,n.toDisplayString(Y.name),1),n.createElementVNode("dd",nh,n.toDisplayString(Y.displayValue),1)],64))),128))])])):n.createCommentVNode("",!0),fe.value.missingFields.length>0?(n.openBlock(),n.createElementBlock("div",ah,[z[8]||(z[8]=n.createElementVNode("div",{class:"chat-msg__task-section-title"},"待补充字段",-1)),n.createElementVNode("div",rh,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(fe.value.missingFields,Y=>(n.openBlock(),n.createElementBlock("span",{key:Y.code,class:"chat-msg__task-missing"},n.toDisplayString(Y.name),1))),128))])])):n.createCommentVNode("",!0),fe.value.lastErrorMessage?(n.openBlock(),n.createElementBlock("div",sh,n.toDisplayString(fe.value.lastErrorMessage),1)):n.createCommentVNode("",!0),fe.value.resultSummary?(n.openBlock(),n.createElementBlock("div",oh,n.toDisplayString(fe.value.resultSummary),1)):n.createCommentVNode("",!0),bt.value?(n.openBlock(),n.createElementBlock("div",ih,[n.createElementVNode("button",{type:"button",class:"chat-msg__task-action chat-msg__task-action--cancel",disabled:e.taskStateActionsDisabled,onClick:ut},n.toDisplayString(fe.value.cancelPhrase),9,ch),ke.value?(n.openBlock(),n.createElementBlock("button",{key:0,type:"button",class:"chat-msg__task-action chat-msg__task-action--confirm",disabled:e.taskStateActionsDisabled,onClick:dt},n.toDisplayString(fe.value.confirmPhrase),9,lh)):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0),e.message.role==="assistant"&&!e.message.loading&&e.message.memoryCaptureDraft&&qe.value!=="dismissed"?(n.openBlock(),n.createElementBlock("div",dh,[n.createElementVNode("div",uh,n.toDisplayString(e.message.memoryCaptureDraft.title),1),n.createElementVNode("div",mh,n.toDisplayString(e.message.memoryCaptureDraft.content),1),n.createElementVNode("div",fh,[qe.value==="draft"?(n.openBlock(),n.createElementBlock("button",{key:0,type:"button",class:"chat-msg__memory-action chat-msg__memory-action--secondary",onClick:xt},n.toDisplayString(e.message.memoryCaptureDraft.dismissLabel),1)):n.createCommentVNode("",!0),n.createElementVNode("button",{type:"button",class:"chat-msg__memory-action chat-msg__memory-action--primary",disabled:qe.value!=="draft",onClick:rt},n.toDisplayString(ct.value),9,ph)])])):n.createCommentVNode("",!0),e.message.role==="status"&&e.message.detail?(n.openBlock(),n.createElementBlock("div",hh,[n.createElementVNode("div",gh,[n.createElementVNode("span",{class:"detail-toggle",onClick:Mt},[n.createElementVNode("span",{class:n.normalizeClass(["detail-arrow",{"is-open":!u.collapsed}])},"▶",2),n.createTextVNode(" "+n.toDisplayString(u.collapsed?"展开详情":"收起详情"),1)])]),n.createElementVNode("div",{class:n.normalizeClass(["detail-content",{"is-collapsed":u.collapsed}])},[n.createElementVNode("div",yh,n.toDisplayString(e.message.detail),1)],2)])):n.createCommentVNode("",!0)],2)}}}),[["__scopeId","data-v-e06e0d6e"]]),kh={key:2,class:"chat-message-list__events-pending","data-testid":"events-pending-thinking",role:"status","aria-live":"polite"},_h=on(n.defineComponent({__name:"ChatMessageList",props:{messages:{type:Array,required:!0},hiddenStatusMessageIds:{type:Array,default:()=>[]},autoInsertComposePlan:{type:Boolean,default:!1},taskStateActionsDisabled:{type:Boolean,default:!1}},emits:["insertCard","chooseCardRecommendation","configureCardRecommendation","confirmPlan","cancelPlan","confirmTaskState","cancelTaskState","memoryCaptureDismiss","memoryCaptureSave","modifyPlan","sendFollowUp","autoInsertComposePlanChange","scrollPositionChange"],setup(e,{expose:r,emit:o}){const c=e,d=o,u=n.ref(null),y=new Map,_=n.ref(0);let T=null;const B=n.computed(()=>new Set(c.hiddenStatusMessageIds)),U=n.computed(()=>pi(c.messages,{hiddenStatusMessageIds:B.value})),D=n.computed(()=>c.messages.map(de=>[de.id,de.role,de.loading?"loading":"idle",de.streaming?de.content.length:""].join(":")).join("|")),I=n.computed(()=>{var te;const de=U.value.find(H);return((te=de==null?void 0:de.messages[0])==null?void 0:te.id)||""});function x(de){var te;switch(de.type){case"user":case"assistant":case"thinking":return`${de.type}-${de.message.id}`;case"tool-activity":return`tool-${((te=de.messages[0])==null?void 0:te.id)??"empty"}`}}function H(de){var te;return de.type==="tool-activity"&&de.messages.length===1&&!!((te=de.messages[0])!=null&&te.initialEventsPending)}function q(){T&&(clearInterval(T),T=null),_.value=0,T=setInterval(()=>{_.value+=1},1e3)}function j(){T&&(clearInterval(T),T=null),_.value=0}function Ne(){d("scrollPositionChange",!!(u.value&&u.value.scrollTop>0))}function oe(){Ne()}function ue(){const de=u.value;de&&(de.scrollTop=de.scrollHeight),Ne()}function ce(de,te){if(te&&typeof te=="object"){y.set(de,te);return}y.delete(de)}function ge(de,te){var Pe,ne;(ne=(Pe=y.get(de))==null?void 0:Pe.setMemoryCaptureStatus)==null||ne.call(Pe,te)}return r({setMemoryCaptureStatus:ge}),n.watch(D,()=>{n.nextTick(ue)}),n.watch(I,de=>{if(de){q();return}j()},{immediate:!0}),n.onMounted(ue),n.onBeforeUnmount(j),(de,te)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"scrollRef",ref:u,class:"chat-message-list",onScroll:oe},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(U.value,Pe=>(n.openBlock(),n.createElementBlock(n.Fragment,{key:x(Pe)},[Pe.type==="user"?(n.openBlock(),n.createBlock(Xi,{key:0,ref_for:!0,ref:ne=>ce(Pe.message.id,ne),message:Pe.message,messages:e.messages,"auto-insert-compose-plan":e.autoInsertComposePlan,"task-state-actions-disabled":e.taskStateActionsDisabled,onInsertCard:te[0]||(te[0]=ne=>d("insertCard",ne)),onChooseCardRecommendation:te[1]||(te[1]=(ne,fe)=>d("chooseCardRecommendation",ne,fe)),onConfigureCardRecommendation:te[2]||(te[2]=ne=>d("configureCardRecommendation",ne)),onConfirmPlan:te[3]||(te[3]=ne=>d("confirmPlan",ne)),onCancelPlan:te[4]||(te[4]=ne=>d("cancelPlan")),onConfirmTaskState:te[5]||(te[5]=(ne,fe,ke)=>d("confirmTaskState",ne,fe,ke)),onCancelTaskState:te[6]||(te[6]=(ne,fe,ke)=>d("cancelTaskState",ne,fe,ke)),onMemoryCaptureDismiss:te[7]||(te[7]=(ne,fe)=>d("memoryCaptureDismiss",ne,fe)),onMemoryCaptureSave:te[8]||(te[8]=(ne,fe)=>d("memoryCaptureSave",ne,fe)),onModifyPlan:te[9]||(te[9]=(ne,fe)=>d("modifyPlan",ne,fe)),onSendFollowUp:te[10]||(te[10]=ne=>d("sendFollowUp",ne)),onAutoInsertComposePlanChange:te[11]||(te[11]=ne=>d("autoInsertComposePlanChange",ne))},null,8,["message","messages","auto-insert-compose-plan","task-state-actions-disabled"])):Pe.type==="assistant"?(n.openBlock(),n.createBlock(Xi,{key:1,ref_for:!0,ref:ne=>ce(Pe.message.id,ne),message:Pe.message,messages:e.messages,"task-state-actions-disabled":e.taskStateActionsDisabled,onInsertCard:te[12]||(te[12]=ne=>d("insertCard",ne)),onChooseCardRecommendation:te[13]||(te[13]=(ne,fe)=>d("chooseCardRecommendation",ne,fe)),onConfigureCardRecommendation:te[14]||(te[14]=ne=>d("configureCardRecommendation",ne)),onConfirmPlan:te[15]||(te[15]=ne=>d("confirmPlan",ne)),onCancelPlan:te[16]||(te[16]=ne=>d("cancelPlan")),onConfirmTaskState:te[17]||(te[17]=(ne,fe,ke)=>d("confirmTaskState",ne,fe,ke)),onCancelTaskState:te[18]||(te[18]=(ne,fe,ke)=>d("cancelTaskState",ne,fe,ke)),onMemoryCaptureDismiss:te[19]||(te[19]=(ne,fe)=>d("memoryCaptureDismiss",ne,fe)),onMemoryCaptureSave:te[20]||(te[20]=(ne,fe)=>d("memoryCaptureSave",ne,fe)),onModifyPlan:te[21]||(te[21]=(ne,fe)=>d("modifyPlan",ne,fe)),onSendFollowUp:te[22]||(te[22]=ne=>d("sendFollowUp",ne)),onAutoInsertComposePlanChange:te[23]||(te[23]=ne=>d("autoInsertComposePlanChange",ne))},null,8,["message","messages","task-state-actions-disabled"])):H(Pe)?(n.openBlock(),n.createElementBlock("div",kh," 思考中 "+n.toDisplayString(_.value)+"s ",1)):n.createCommentVNode("",!0)],64))),128))],544))}}),[["__scopeId","data-v-8ff74045"]]),Ch={class:"chat-sender"},Sh=["placeholder","disabled","onKeydown"],Ah={key:0,class:"chat-sender__attachments"},wh={key:1,class:"chat-sender__image-error"},Th={key:2,class:"chat-sender__attachment-preparing"},Eh=["accept"],xh={class:"chat-sender__toolbar"},Bh={class:"chat-sender__right"},Ih={class:"chat-sender__utilities"},Rh=["disabled","aria-expanded"],vh=["aria-label"],Dh={class:"chat-sender__utilities chat-sender__utilities--right"},Nh=["disabled"],Lh=["onKeydown"],Ph={class:"chat-sender__business-list"},Mh={key:0,class:"chat-sender__business-state"},Oh={key:1,class:"chat-sender__business-state chat-sender__business-state--error"},Fh=["aria-selected","aria-label","onClick"],$h={class:"chat-sender__business-copy"},Vh=["aria-label","onMouseenter","onFocus"],zh={class:"chat-sender__business-name"},Gh=["aria-label","onMouseenter","onFocus"],Hh={class:"chat-sender__business-desc"},qh={key:3,class:"chat-sender__business-state"},Nr=74,ec=100,Wh=360,Ta=20,tc=360,Os=16,Fs=6,Uh=10*1024*1024,jh=on(n.defineComponent({__name:"ChatSender",props:{businessGroupError:{default:""},businessGroupLoading:{type:Boolean,default:!1},businessGroups:{default:()=>[]},selectedBusinessGroup:{default:null},loading:{type:Boolean},placeholder:{},routeImagesAsAttachments:{type:Boolean,default:!1}},emits:["attachment","attachments","businessGroupClear","businessGroupSelect","businessGroupOpen","cancel","submit","image"],setup(e,{expose:r,emit:o}){const c=e,d=o,u=n.ref(""),y=n.ref([]),_=n.ref(null),T=n.ref(!1),B=n.ref(""),U=n.ref(null),D=n.ref(null),I=n.ref(null),x=n.ref({}),H=n.ref(null),q=n.ref(null),j=n.ref([]),Ne=n.ref(null),oe=n.ref(null),ue=n.ref(!1),ce=n.ref(0),ge=n.computed(()=>ce.value>0),de=n.ref(0),te=new Set;let Pe=0;const ne=["image/png","image/jpeg","image/webp"],fe=[],ke=[{type:"image",matcher:f=>typeof f!="string"?f.type.startsWith("image/"):/^data:image\//i.test(f)||/^(png|jpe?g|gif|webp|bmp|svg)(?:[;,?]|$)/i.test(f)||/\.(png|jpe?g|gif|webp|bmp|svg)(?:[?#].*)?$/i.test(f)}];function it(){const f=q.value;if(!f)return;if(!u.value){f.style.height=`${Nr}px`,f.style.overflowY="hidden";return}f.style.height=`${Nr}px`,f.style.overflowY="hidden";const b=f.getBoundingClientRect(),E=b.bottom>ec?Math.max(Nr,b.bottom-ec):f.scrollHeight,J=Math.max(Nr,Math.min(f.scrollHeight,E));f.style.height=`${J}px`,f.style.overflowY=f.scrollHeight>J?"auto":"hidden"}function St(f){u.value=f,n.nextTick(()=>{var b;it(),(b=q.value)==null||b.setSelectionRange(u.value.length,u.value.length)})}const bt=n.computed(()=>j.value.map(f=>{const{file:b}=f,E=f.type==="image";return{id:f.id,name:b.name,url:f.previewUrl||b.name,fileType:E?"image":"file",rawFile:b,status:"success"}})),qe=n.computed(()=>{var f;return j.value.length===1&&((f=j.value[0])==null?void 0:f.type)==="image"?"picture":"card"}),ct=n.computed(()=>{const f=B.value.trim().toLowerCase();return f?c.businessGroups.filter(b=>[b.businessGroupName,b.businessGroupCode,b.businessGroupDescription].some(E=>E==null?void 0:E.toLowerCase().includes(f))):c.businessGroups});function Mt(f){return f.businessGroupDescription||f.groupType||f.businessGroupCode}function xt(f){const b=Mt(f);return b&&b!==f.businessGroupName?`${f.businessGroupName}
25
+ ${b}`:f.businessGroupName}function rt(){const f=oe.value;f&&(f.value="",f.click())}function qt(){T.value=!0,d("businessGroupOpen"),n.nextTick(()=>{var f;R(),(f=I.value)==null||f.focus()})}function we(){T.value=!1,B.value="",w()}function dt(f){d("businessGroupSelect",f),we()}function Fe(){d("businessGroupClear"),we()}function ut(f){var E,J;const b=f.relatedTarget;b instanceof Node&&((E=U.value)!=null&&E.contains(b))||b instanceof Node&&((J=D.value)!=null&&J.contains(b))||we()}function Ie(f){var E,J;if(!T.value)return;const b=f.target;b instanceof Node&&((E=U.value)!=null&&E.contains(b))||b instanceof Node&&((J=D.value)!=null&&J.contains(b))||we()}function v(){we()}function R(){const f=U.value;if(!f||typeof window>"u"){x.value={};return}const b=window.innerWidth||document.documentElement.clientWidth,E=window.innerHeight||document.documentElement.clientHeight,J=Math.max(0,b-Ta*2),_e=Math.min(Wh,J),Re=f.getBoundingClientRect(),nt=Math.max(Ta,b-Ta-_e),Ot=Math.min(Math.max(Ta,Re.left),nt),mt=Math.max(160,Re.top-Ta*2),Xe=Math.min(420,mt),Bt=Math.max(Ta,E-Re.top+8);x.value={position:"fixed",left:`${Math.round(Ot)}px`,width:`${Math.round(_e)}px`,maxHeight:`${Math.round(Xe)}px`,bottom:`${Math.round(Bt)}px`}}function $(f,b){const E=f.currentTarget;if(!(E instanceof HTMLElement)||!b)return;const J=E.firstElementChild instanceof HTMLElement?E.firstElementChild:E;if(J.scrollWidth<=J.clientWidth){w();return}const _e=E.getBoundingClientRect(),Re=typeof window>"u"?tc:window.innerWidth||document.documentElement.clientWidth,nt=Math.min(tc,Math.max(160,Re-Os*2)),Ot=_e.left+_e.width/2,mt=nt/2,Xe=Os+mt,Bt=Math.max(Xe,Re-Os-mt),Zt=Math.min(Math.max(Xe,Ot),Bt),et=_e.top>Fs+36;H.value={text:b,style:{left:`${Math.round(Zt)}px`,top:`${Math.round(et?_e.top-Fs:_e.bottom+Fs)}px`,transform:et?"translate(-50%, -100%)":"translateX(-50%)",maxWidth:`${Math.round(nt)}px`}}}function w(){H.value=null}function Q(f){return ne.includes(f.type)}function ee(){return Pe+=1,`pending-attachment-${Pe}`}function M(f){const b=URL.createObjectURL(f);return te.add(b),b}function V(f){f!=null&&f.startsWith("blob:")&&(URL.revokeObjectURL(f),te.delete(f))}function K(f,b){j.value=[...j.value,{file:f,fileName:f.name,mimeType:f.type||"application/octet-stream",previewUrl:b==="image"?M(f):void 0,size:f.size,type:b,id:ee()}]}function ie(f){return new Promise(b=>{const E=new FileReader;E.onload=()=>{const J=E.result;j.value=[...j.value,{base64:J.split(",")[1],file:f,fileName:f.name,mimeType:f.type,previewUrl:M(f),size:f.size,type:"image",id:ee()}],b()},E.onerror=()=>{Ne.value=`无法读取图片:${f.name}`,b()},E.onabort=()=>{Ne.value=`已取消读取图片:${f.name}`,b()},E.readAsDataURL(f)})}async function xe(f){if(f.length!==0){Ne.value=null,ce.value+=1;try{for(const b of f){if(!Q(b)){K(b,b.type.startsWith("image/")?"image":"file");continue}if(c.routeImagesAsAttachments){K(b,"image");continue}if(b.size>Uh){Ne.value=`图片不能超过 10MB:${b.name}`;continue}await ie(b)}}finally{ce.value=Math.max(0,ce.value-1)}}}function Ce(f){const b=f.target;xe(Array.from(b.files??[]))}function Be(f){const b=f.target;xe(Array.from(b.files??[]))}function Ae(f){var _e,Re;const E=Array.from(((_e=f.clipboardData)==null?void 0:_e.items)??[]).find(nt=>nt.kind==="file"&&nt.type.startsWith("image/")),J=(E==null?void 0:E.getAsFile())??Array.from(((Re=f.clipboardData)==null?void 0:Re.files)??[]).find(nt=>nt.type.startsWith("image/"));J&&(f.preventDefault(),xe([J]))}function ot(f){const b=j.value.find(E=>E.id===f.id);b&&(V(b.previewUrl),j.value=j.value.filter(E=>E.id!==b.id),Ne.value=null)}function je(){j.value.forEach(f=>{V(f.previewUrl)}),j.value=[],te.forEach(f=>URL.revokeObjectURL(f)),te.clear()}function Ke(f){var b;return Array.from(((b=f.dataTransfer)==null?void 0:b.types)??[]).includes("Files")}function pt(f){Ke(f)&&(f.preventDefault(),de.value+=1,ue.value=!0)}function C(f){Ke(f)&&f.preventDefault()}function z(f){Ke(f)&&(de.value=Math.max(0,de.value-1),de.value===0&&(ue.value=!1))}function ae(f){var b;Ke(f)&&(f.preventDefault(),de.value=0,ue.value=!1,xe(Array.from(((b=f.dataTransfer)==null?void 0:b.files)??[])))}function Y(){if(ge.value)return;if(Ne.value=null,j.value.length>0){const b=u.value.trim();d("attachments",{attachments:j.value.map(({id:E,...J})=>J),text:b}),j.value=[],u.value="",n.nextTick(it);return}const f=u.value.trim();f&&(y.value=[...y.value,f],_.value=null,d("submit",f),u.value="",n.nextTick(it))}function ye(f){u.value=f,n.nextTick(it)}function Te(){var f;(f=q.value)==null||f.focus()}function Me(f){if(y.value.length===0||_.value===null&&u.value.trim())return;f.preventDefault();const b=_.value===null?y.value.length-1:Math.max(0,_.value-1);_.value=b,St(y.value[b])}function tt(f){if(_.value===null)return;f.preventDefault();const b=_.value+1;if(b>=y.value.length){_.value=null,St("");return}_.value=b,St(y.value[b])}function Dt(f){f.isComposing||(f.preventDefault(),Y())}r({focusComposer:Te,handleAttachmentSelected:Ce,handleImageSelected:Be,setText:ye}),n.watch(u,(f,b)=>{_.value!==null&&f!==y.value[_.value]&&f!==b&&(_.value=null),n.nextTick(it)}),n.watch(T,f=>{f?n.nextTick(R):w()});function ht(){it(),T.value&&R(),w()}return typeof window<"u"&&(window.addEventListener("resize",ht),document.addEventListener("pointerdown",Ie,!0),n.onBeforeUnmount(()=>{window.removeEventListener("resize",ht),document.removeEventListener("pointerdown",Ie,!0)})),n.onBeforeUnmount(()=>{de.value=0,ue.value=!1,je()}),(f,b)=>(n.openBlock(),n.createElementBlock("div",Ch,[n.createElementVNode("div",{class:n.normalizeClass(["chat-sender__surface",{"chat-sender__surface--dragging":ue.value}]),onDragenter:pt,onDragover:C,onDragleave:z,onDrop:ae},[n.withDirectives(n.createElementVNode("textarea",{ref_key:"textareaRef",ref:q,"onUpdate:modelValue":b[0]||(b[0]=E=>u.value=E),class:"chat-sender__input",rows:"2",placeholder:e.placeholder,disabled:e.loading,onKeydown:[n.withKeys(n.withModifiers(Dt,["exact"]),["enter"]),n.withKeys(Me,["up"]),n.withKeys(tt,["down"])],onPaste:Ae},null,40,Sh),[[n.vModelText,u.value]]),bt.value.length?(n.openBlock(),n.createElementBlock("div",Ah,[n.createVNode(n.unref(Yr.TrAttachments),{items:bt.value,actions:fe,"file-matchers":ke,variant:qe.value,wrap:"",onRemove:ot},null,8,["items","variant"]),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(j.value.filter(E=>E.type==="file"),E=>(n.openBlock(),n.createElementBlock("div",{key:E.id,class:"chat-sender__attachment-name"},n.toDisplayString(E.file.name),1))),128))])):n.createCommentVNode("",!0),Ne.value?(n.openBlock(),n.createElementBlock("div",wh,n.toDisplayString(Ne.value),1)):n.createCommentVNode("",!0),ge.value?(n.openBlock(),n.createElementBlock("div",Th,"正在准备图片附件…")):n.createCommentVNode("",!0),n.createElementVNode("input",{ref_key:"attachmentInputRef",ref:oe,class:"chat-sender__attachment-input",type:"file",multiple:"","aria-hidden":"true",tabindex:"-1",onChange:Ce},null,544),n.createElementVNode("input",{class:"chat-sender__image-input",type:"file",accept:ne.join(","),multiple:"","aria-hidden":"true",tabindex:"-1",onChange:Be},null,40,Eh),n.createElementVNode("div",xh,[n.createElementVNode("div",Bh,[n.createElementVNode("div",Ih,[n.createElementVNode("button",{type:"button",class:"chat-sender__icon-btn",title:"上传附件","aria-label":"上传附件","data-testid":"chat-attachment-trigger",onClick:rt},[n.createVNode(n.unref(Ze.PlusOutlined))]),n.createElementVNode("div",{ref_key:"businessGroupRef",ref:U,class:"chat-sender__business-group",onFocusout:ut},[n.createElementVNode("button",{type:"button",class:n.normalizeClass(["chat-sender__business-trigger",{"chat-sender__business-trigger--active":!!e.selectedBusinessGroup}]),disabled:e.loading,"aria-haspopup":"listbox","aria-expanded":T.value,onClick:qt},[b[4]||(b[4]=n.createElementVNode("span",{class:"chat-sender__business-label"},"业务分组",-1)),e.selectedBusinessGroup?(n.openBlock(),n.createElementBlock("span",{key:0,class:"chat-sender__business-tag","aria-label":e.selectedBusinessGroup.businessGroupName},[n.createElementVNode("span",{class:"chat-sender__business-tag-text",onMouseenter:b[1]||(b[1]=E=>$(E,e.selectedBusinessGroup.businessGroupName)),onMouseleave:w},n.toDisplayString(e.selectedBusinessGroup.businessGroupName),33),n.createElementVNode("button",{type:"button",class:"chat-sender__business-clear",title:"清除业务分组","aria-label":"清除业务分组",onClick:n.withModifiers(Fe,["stop"])},[n.createVNode(n.unref(Ze.CloseOutlined))])],8,vh)):n.createCommentVNode("",!0)],10,Rh)],544)]),n.createElementVNode("div",Dh,[n.renderSlot(f.$slots,"history",{},void 0,!0),e.loading?(n.openBlock(),n.createElementBlock("button",{key:0,"data-testid":"chat-cancel",type:"button",class:"chat-sender__stop chat-sender__stop--running",title:"停止生成","aria-label":"停止生成",onClick:b[2]||(b[2]=E=>d("cancel"))},[...b[5]||(b[5]=[n.createElementVNode("span",{class:"chat-sender__stop-ring","aria-hidden":"true"},null,-1),n.createElementVNode("span",{class:"chat-sender__stop-core","aria-hidden":"true"},null,-1)])])):(n.openBlock(),n.createElementBlock("button",{key:1,type:"button",class:"chat-sender__send",title:"发送","aria-label":"发送",disabled:!u.value.trim()&&j.value.length===0||e.loading||ge.value,onClick:Y},[n.createVNode(n.unref(Ze.SendOutlined))],8,Nh))])])])],34),(n.openBlock(),n.createBlock(n.Teleport,{to:"body"},[T.value?(n.openBlock(),n.createElementBlock("div",{key:0,ref_key:"businessGroupPopoverRef",ref:D,class:"chat-sender__business-popover",style:n.normalizeStyle(x.value),role:"listbox","aria-label":"业务分组",onKeydown:n.withKeys(n.withModifiers(v,["stop","prevent"]),["escape"])},[n.withDirectives(n.createElementVNode("input",{ref_key:"businessGroupSearchRef",ref:I,"onUpdate:modelValue":b[3]||(b[3]=E=>B.value=E),class:"chat-sender__business-search",placeholder:"搜索业务分组"},null,512),[[n.vModelText,B.value]]),n.createElementVNode("div",Ph,[e.businessGroupLoading?(n.openBlock(),n.createElementBlock("div",Mh,[n.createVNode(n.unref(Ze.LoadingOutlined)),b[6]||(b[6]=n.createElementVNode("span",null,"加载中",-1))])):e.businessGroupError?(n.openBlock(),n.createElementBlock("div",Oh,n.toDisplayString(e.businessGroupError),1)):(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:2},n.renderList(ct.value,E=>{var J,_e;return n.openBlock(),n.createElementBlock("button",{key:E.businessGroupCode,type:"button",class:n.normalizeClass(["chat-sender__business-option",{"chat-sender__business-option--active":E.businessGroupCode===((J=e.selectedBusinessGroup)==null?void 0:J.businessGroupCode)}]),role:"option","aria-selected":E.businessGroupCode===((_e=e.selectedBusinessGroup)==null?void 0:_e.businessGroupCode),"aria-label":xt(E),onClick:Re=>dt(E)},[b[7]||(b[7]=n.createElementVNode("span",{class:"chat-sender__business-radio","aria-hidden":"true"},null,-1)),n.createElementVNode("span",$h,[n.createElementVNode("span",{class:"chat-sender__business-name-trigger",tabindex:"0","aria-label":E.businessGroupName,onMouseenter:Re=>$(Re,E.businessGroupName),onMouseleave:w,onFocus:Re=>$(Re,E.businessGroupName),onBlur:w},[n.createElementVNode("span",zh,n.toDisplayString(E.businessGroupName),1)],40,Vh),n.createElementVNode("span",{class:"chat-sender__business-desc-trigger",tabindex:"0","aria-label":Mt(E),onMouseenter:Re=>$(Re,Mt(E)),onMouseleave:w,onFocus:Re=>$(Re,Mt(E)),onBlur:w},[n.createElementVNode("span",Hh,n.toDisplayString(Mt(E)),1)],40,Gh)])],10,Fh)}),128)),!e.businessGroupLoading&&ct.value.length===0?(n.openBlock(),n.createElementBlock("div",qh," 暂无匹配分组 ")):n.createCommentVNode("",!0)])],44,Lh)):n.createCommentVNode("",!0)])),(n.openBlock(),n.createBlock(n.Teleport,{to:"body"},[H.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"chat-sender__business-floating-tooltip",style:n.normalizeStyle(H.value.style),role:"tooltip"},n.toDisplayString(H.value.text),5)):n.createCommentVNode("",!0)]))]))}}),[["__scopeId","data-v-f87694d2"]]),Kh=["title","disabled"],Qh={class:"ring",viewBox:"0 0 36 36"},Yh=["stroke-dashoffset"],Jh=on(n.defineComponent({__name:"ContextUsageRing",props:{disabled:{type:Boolean},loading:{type:Boolean},usage:{}},emits:["compact"],setup(e,{emit:r}){const o=e,c=r,d=n.computed(()=>{const _=o.usage.estimatedTokens.toLocaleString(),T=o.usage.contextWindow.toLocaleString();return o.loading?"正在压缩上下文":o.disabled?"当前对话处理中,完成后可压缩上下文":`上下文占用约 ${o.usage.percent}%(估算 ${_} / ${T} tokens),点击压缩当前对话`}),u=2*Math.PI*14,y=n.computed(()=>u*(1-o.usage.percent/100));return(_,T)=>(n.openBlock(),n.createElementBlock("button",{type:"button",class:n.normalizeClass(["context-usage",[e.usage.level,{loading:e.loading}]]),title:d.value,disabled:e.loading||e.disabled,"aria-label":"压缩上下文","data-testid":"context-usage-control",onClick:T[0]||(T[0]=B=>c("compact"))},[(n.openBlock(),n.createElementBlock("svg",Qh,[T[1]||(T[1]=n.createElementVNode("circle",{class:"ring-track",cx:"18",cy:"18",r:"14",fill:"none","stroke-width":"3"},null,-1)),n.createElementVNode("circle",{class:"ring-fill",cx:"18",cy:"18",r:"14",fill:"none","stroke-width":"3","stroke-dasharray":u,"stroke-dashoffset":y.value,"stroke-linecap":"round"},null,8,Yh)]))],10,Kh))}}),[["__scopeId","data-v-580a86d9"]]),Zh=["aria-expanded"],Xh={class:"task-todo-plan__summary-text"},eg={key:0,class:"task-todo-plan__current"},tg={key:0,class:"task-todo-plan__body","data-testid":"task-todo-plan-body"},ng={class:"task-todo-plan__step-main"},ag={class:"task-todo-plan__step-title"},rg={key:0,class:"task-todo-plan__step-detail"},sg={key:1,class:"task-todo-plan__step-error"},og=on(n.defineComponent({__name:"TaskTodoPlanBar",props:{plan:{}},setup(e){const r=e,o=n.ref(!1),c=n.ref(!1),d=n.ref(Date.now());let u=null;const y=n.computed(()=>{var oe;return((oe=r.plan)==null?void 0:oe.steps.length)??0}),_=n.computed(()=>{var oe;return((oe=r.plan)==null?void 0:oe.steps.filter(ue=>ue.status==="done"||ue.status==="error").length)??0}),T=n.computed(()=>{var oe;return((oe=r.plan)==null?void 0:oe.steps.find(ue=>ue.status==="error"))??null}),B=n.computed(()=>{var oe;return[...((oe=r.plan)==null?void 0:oe.steps)??[]].reverse().find(ue=>ue.status==="running")??null});function U(oe){const ue=Math.max(0,Math.floor(oe/1e3)),ce=Math.floor(ue/60),ge=ue%60;return ce>0?`${ce}m ${ge}s`:`${ge}s`}function D(){if(!r.plan||typeof r.plan.startedAt!="number")return null;const oe=r.plan.active?d.value:r.plan.endedAt;return typeof oe!="number"?null:Math.max(0,oe-r.plan.startedAt)}const I=n.computed(()=>{var ue;const oe=D();return oe===null?"":(ue=r.plan)!=null&&ue.active?`已处理 ${U(oe)}`:`用时 ${U(oe)}`}),x=n.computed(()=>{var ue;if(!r.plan||y.value===0)return"";if(r.plan.mode==="todo")return`Todo 计划 · ${y.value} 项`;if(r.plan.failed){const ce=((ue=T.value)==null?void 0:ue.title)||"执行步骤";return`执行失败 · ${_.value}/${y.value} · 失败于:${ce}`}if(r.plan.active){const ce=I.value?` · ${I.value}`:"";return`执行进度 · ${_.value}/${y.value}${ce}`}const oe=I.value?` · ${I.value}`:"";return`已完成 ${_.value}/${y.value}${oe}`}),H=n.computed(()=>{var oe,ue,ce;return((oe=r.plan)==null?void 0:oe.mode)==="todo"?Ze.ClockCircleOutlined:(ue=r.plan)!=null&&ue.failed?Ze.CloseCircleOutlined:(ce=r.plan)!=null&&ce.active?Ze.LoadingOutlined:Ze.CheckCircleOutlined});function q(oe){return oe.status==="error"?Ze.CloseCircleOutlined:oe.status==="running"?Ze.LoadingOutlined:oe.status==="pending"?Ze.ClockCircleOutlined:Ze.CheckCircleOutlined}function j(){if(!r.plan){o.value=!1,c.value=!1;return}if(r.plan.failed){o.value=!0;return}if(r.plan.mode==="todo"){o.value=!0;return}c.value||(o.value=r.plan.active)}function Ne(){c.value=!0,o.value=!o.value}return n.watch(()=>{var oe;return(oe=r.plan)==null?void 0:oe.id},()=>{c.value=!1,j()},{immediate:!0}),n.watch(()=>{var oe,ue;return[(oe=r.plan)==null?void 0:oe.active,(ue=r.plan)==null?void 0:ue.failed]},([,oe],ue)=>{const ce=ue==null?void 0:ue[1];oe&&!ce&&(c.value=!1),j()},{immediate:!0}),n.watch(()=>{var oe;return(oe=r.plan)==null?void 0:oe.active},oe=>{if(oe){d.value=Date.now(),u||(u=setInterval(()=>{d.value=Date.now()},1e3));return}u&&(clearInterval(u),u=null)},{immediate:!0}),n.onBeforeUnmount(()=>{u&&(clearInterval(u),u=null)}),(oe,ue)=>e.plan&&y.value>0?(n.openBlock(),n.createElementBlock("section",{key:0,class:n.normalizeClass(["task-todo-plan",{"task-todo-plan--active":e.plan.active,"task-todo-plan--failed":e.plan.failed}]),"data-testid":"task-todo-plan","aria-label":"多步骤任务 Todo 计划"},[n.createElementVNode("button",{type:"button",class:"task-todo-plan__summary","aria-expanded":o.value,"data-testid":"task-todo-plan-summary",onClick:Ne},[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(H.value),{class:"task-todo-plan__summary-icon","aria-hidden":"true"})),n.createElementVNode("span",Xh,n.toDisplayString(x.value),1),B.value&&e.plan.active?(n.openBlock(),n.createElementBlock("span",eg,n.toDisplayString(B.value.title),1)):n.createCommentVNode("",!0),n.createVNode(n.unref(Ze.DownOutlined),{class:n.normalizeClass(["task-todo-plan__arrow",{"is-open":o.value}]),"aria-hidden":"true"},null,8,["class"])],8,Zh),o.value?(n.openBlock(),n.createElementBlock("div",tg,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(e.plan.steps,ce=>(n.openBlock(),n.createElementBlock("div",{key:ce.id,class:n.normalizeClass(["task-todo-plan__step",`task-todo-plan__step--${ce.status}`]),"data-testid":"task-todo-plan-step"},[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(q(ce)),{class:"task-todo-plan__step-icon","aria-hidden":"true"})),n.createElementVNode("div",ng,[n.createElementVNode("div",ag,n.toDisplayString(ce.title),1),ce.detail?(n.openBlock(),n.createElementBlock("div",rg,n.toDisplayString(ce.detail),1)):n.createCommentVNode("",!0),ce.error?(n.openBlock(),n.createElementBlock("div",sg,n.toDisplayString(ce.error),1)):n.createCommentVNode("",!0)])],2))),128))])):n.createCommentVNode("",!0)],2)):n.createCommentVNode("",!0)}}),[["__scopeId","data-v-2e609adf"]]),ig={class:"runtime-chat"},cg={class:"runtime-chat__main"},lg={key:0,class:"runtime-chat__topbar-leading"},dg={class:"runtime-chat__topbar-actions"},ug=["disabled"],mg={class:"runtime-chat__body"},fg={key:1,class:"chat-switching-skeleton",role:"status","aria-live":"polite"},pg=["innerHTML"],hg={key:3,class:"chat-panel chat-history-panel","aria-label":"历史对话"},gg={key:0,class:"chat-panel__header-extra"},yg={class:"chat-history-panel__body"},bg={key:0,class:"chat-history-panel__loading","data-testid":"chat-history-loading"},kg={key:1,class:"chat-history-group"},_g=["data-testid"],Cg=["data-testid","onClick"],Sg={class:"chat-history-item__content"},Ag=["data-testid"],wg={class:"chat-history-item__title"},Tg=["data-testid"],Eg=["title","data-testid"],xg={class:"chat-history-item__actions"},Bg=["aria-expanded","data-testid","onClick"],Ig=["data-testid","onClick"],Rg=["data-testid","onClick"],vg={key:2,class:"chat-history-group"},Dg=["data-testid"],Ng=["data-testid","onClick"],Lg={class:"chat-history-item__content"},Pg=["data-testid"],Mg={class:"chat-history-item__title"},Og=["data-testid"],Fg=["title","data-testid"],$g={class:"chat-history-item__actions"},Vg=["aria-expanded","data-testid","onClick"],zg=["data-testid","onClick"],Gg=["data-testid","onClick"],Hg={key:3,class:"chat-history-panel__empty"},qg={key:4,class:"chat-panel chat-settings-panel","aria-label":"工作台设置"},Wg={key:0,class:"chat-panel__header-extra"},Ug={class:"chat-settings-panel__actions"},jg=["disabled"],Kg={key:0,class:"chat-settings-panel__persona","data-testid":"chat-settings-persona"},Qg={class:"chat-settings-panel__persona-options",role:"tablist","aria-label":"人格设定"},Yg=["aria-selected","onClick"],Jg={class:"chat-settings-panel__body"},Zg={key:1,class:"runtime-chat__composer"},Xg={class:"rename-modal"},ey={class:"rename-modal__actions"},ty={class:"delete-modal",role:"dialog","aria-modal":"true","aria-labelledby":"delete-conversation-title"},ny={class:"delete-modal__desc"},ay={class:"delete-modal__actions"},ry=["disabled"],sy=["disabled"],oy={class:"clear-modal",role:"dialog","aria-modal":"true","aria-labelledby":"clear-conversations-title"},iy={class:"clear-modal__desc"},cy={class:"clear-modal__actions"},ly=["disabled"],dy=["disabled"],uy=16,$s=on(n.defineComponent({inheritAttrs:!1,__name:"FsesAiChat",props:{apiBaseUrl:{},activeConversationId:{default:""},assistantPersona:{},autoLoadConversations:{type:Boolean,default:!0},businessGroupError:{default:""},businessGroupLoading:{type:Boolean,default:!1},businessGroups:{default:()=>[]},selectedBusinessGroup:{default:null},enableChartCards:{type:Boolean,default:!1},enableChatHistory:{type:Boolean,default:!1},headers:{},onError:{},placeholder:{default:"开始百特搭的探索吧"},transport:{},userId:{},welcomeText:{default:"这里是您的超级个人工作台"},workspaceId:{},autoInsertComposePlan:{type:Boolean},canvasConfigActive:{type:Boolean,default:!1},taskStateActionsDisabled:{type:Boolean,default:!1},showDefaultWorkbenchActions:{type:Boolean,default:!0},defaultWorkbenchSwitchLabel:{default:"切换默认工作台"},showPersonaSettings:{type:Boolean,default:!0},assistantPersonaKey:{default:"warm"},routeImagesAsAttachments:{type:Boolean,default:!1},showTaskTodoPlan:{type:Boolean,default:!1},chatMode:{}},emits:["confirm-compose-plan","auto-insert-compose-plan-change","cancel-compose-plan","choose-card-recommendation","configure-card-recommendation","image-upload","auto-arrange","attachment-upload","insertCard","insertMetricCard","modify-compose-plan","memory-capture-dismiss","memory-capture-save","confirm-task-state","cancel-task-state","settings-save","settings-open","settings-close","switch-default-workbench","restore-default-workbench","new-conversation","history-loaded","assistant-persona-change","active-conversation-change","business-group-clear","business-group-open","business-group-select","updateCard"],setup(e,{expose:r,emit:o}){var wt;const c=e,d=o,u=au(),y=((wt=n.getCurrentInstance())==null?void 0:wt.vnode.props)??{},_=n.useSlots(),T=n.computed(()=>!!_["topbar-leading"]),B=n.computed(()=>!!_["utility-header-extra"]),U=Object.prototype.hasOwnProperty.call(y,"enableChartCards")||Object.prototype.hasOwnProperty.call(y,"enable-chart-cards"),D=ui({apiBaseUrl:c.apiBaseUrl||(u==null?void 0:u.apiBaseUrl)||"",headers:c.headers||(u==null?void 0:u.headers),assistantPersona:()=>c.assistantPersona,businessGroup:()=>c.selectedBusinessGroup||void 0,autoLoadConversations:c.autoLoadConversations,activeConversationId:()=>c.activeConversationId,chatMode:()=>c.chatMode,onConversationChange:(m,h)=>d("active-conversation-change",m,h),onHistoryLoaded:m=>d("history-loaded",m),onError:c.onError||(u==null?void 0:u.onError),enableChartCards:U?c.enableChartCards:(u==null?void 0:u.enableChartCards)??!1,transport:c.transport,workspaceId:()=>c.workspaceId,userId:()=>c.userId}),I=D.messages,x=D.isLoading,H=D.isLoadingConversations,q=D.isSwitchingConversation,j=n.ref(null),Ne=n.ref(null),oe=n.ref(""),ue=n.computed(()=>D.conversations.value.map(m=>({id:m.id,title:m.title,createdAt:m.createdAt,updatedAt:m.updatedAt}))),ce=n.computed(()=>D.currentConversationId.value||""),ge=n.ref("chat"),de=n.ref(!1),te=n.ref(null),Pe=n.ref(!1),ne=n.computed(()=>c.canvasConfigActive||de.value),fe=n.computed(()=>Ee(I.value)),ke=n.computed(()=>!c.showTaskTodoPlan||ge.value!=="chat"?null:Iu(fe.value)),it=n.computed(()=>{var m;return((m=ke.value)==null?void 0:m.claimedStatusMessageIds)??[]}),St=[{id:"warm",label:"热情"},{id:"professional",label:"专业"},{id:"reserved",label:"内敛"}],bt=new WeakMap;function qe(m){Pe.value=!!(m&&m.scrollTop>0)}function ct(m){qe(m.currentTarget)}function Mt(m){Pe.value=m}function xt(){if(ge.value!=="chat"){Pe.value=!1;return}fe.value.length===0&&qe(te.value)}n.watch([ge,()=>fe.value.length],()=>n.nextTick(xt));const rt=new co.Marked({gfm:!0,breaks:!0}),qt=n.computed(()=>we(c.welcomeText));function we(m){return m.trim()?Eo.sanitize(rt.parse(m)):""}function dt(m,h,A,se,De,Je={}){return{id:m,entryId:m,label:h,source:A,actionPayload:{action:De,capabilityId:se,quickEntryId:m,source:A,...Je}}}({...dt("workbench.quick.ask_data","问数分析","welcome_recommendation","semantic_sql.query","semantic_sql_query",{queryIntent:"问数分析"})},{...dt("workbench.quick.store_sales","门店销售分析","welcome_recommendation","semantic_sql.query","semantic_sql_query",{queryIntent:"门店销售分析"})}),{...dt("workbench.quick.business_analysis","经营分析","welcome_recommendation","semantic_sql.query","semantic_sql_query",{queryIntent:"经营分析"})},{...dt("workbench.quick.channel_sales","渠道销售分析","welcome_recommendation","semantic_sql.query","semantic_sql_query",{queryIntent:"渠道销售分析"})},dt("workbench.quick.metric_catalog","查看可见指标","welcome_suggested_prompt","runtime_metric.query","list_catalog"),dt("workbench.quick.create_user","创建用户信息","welcome_suggested_prompt","data_action.execute","execute_data_action",{dataActionIntent:{operation:"create",displayName:"用户信息"}}),dt("workbench.quick.insert_radar","插入雷达图","welcome_suggested_prompt","workbench_card.compose","compose_workbench_card",{cardIntent:{kind:"radar"}}),dt("workbench.quick.sales_order_top5","销售订单里金额最高的 5 单是哪几单?","welcome_suggested_prompt","semantic_sql.query","semantic_sql_query",{queryIntent:"销售订单里金额最高的 5 单是哪几单?"}),n.watch(x,(m,h)=>{m||!h||n.nextTick(()=>{var A;(A=j.value)==null||A.focusComposer()})});const Fe=n.ref(!1),ut=n.ref(""),Ie=n.ref(""),v=n.ref(""),R=n.ref(!1),$=n.ref(!1),w=n.ref(0),Q=n.ref(!1),ee=n.ref(!1),M=n.ref(""),V=n.computed(()=>{const m=D.conversations.value.find(h=>h.id===M.value);return(m==null?void 0:m.title)||""}),K=n.computed(()=>V.value?`确认删除会话“${V.value}”?`:"确认删除这个会话?"),ie=n.computed(()=>R.value?w.value:D.conversations.value.length),xe=n.computed(()=>{const m=new Date;return ue.value.filter(h=>{if(!h.updatedAt)return!0;const A=new Date(h.updatedAt);return A.getFullYear()===m.getFullYear()&&A.getMonth()===m.getMonth()&&A.getDate()===m.getDate()})}),Ce=n.computed(()=>{const m=new Date;return ue.value.filter(h=>{if(!h.updatedAt)return!1;const A=new Date(h.updatedAt);return!(A.getFullYear()===m.getFullYear()&&A.getMonth()===m.getMonth()&&A.getDate()===m.getDate())})});function Be(m){if(!m)return"";const h=new Date(m);if(!Number.isFinite(h.getTime()))return"";const A=new Date,se=Ke(h);if(ot(h,A))return se;const De=`${je(h.getMonth()+1)}-${je(h.getDate())}`;return h.getFullYear()===A.getFullYear()?`${De} ${se}`:`${h.getFullYear()}-${De} ${se}`}function Ae(m){if(!m)return"";const h=new Date(m);return Number.isFinite(h.getTime())?[`${h.getFullYear()}-${je(h.getMonth()+1)}-${je(h.getDate())}`,Ke(h)].join(" "):""}function ot(m,h){return m.getFullYear()===h.getFullYear()&&m.getMonth()===h.getMonth()&&m.getDate()===h.getDate()}function je(m){return String(m).padStart(2,"0")}function Ke(m){return`${je(m.getHours())}:${je(m.getMinutes())}`}function pt(){D.createConversation(),d("new-conversation"),ge.value="chat"}async function C(){await D.createConversation(),d("new-conversation")}async function z(m){v.value="",await D.switchConversation(m),ge.value="chat"}async function ae(m){Y(m)}function Y(m){const h=D.conversations.value.find(A=>A.id===m);h&&(v.value="",M.value=h.id,Q.value=!0)}function ye(){ee.value||(Q.value=!1,M.value="")}async function Te(){if(!(ee.value||!M.value)){ee.value=!0;try{await D.deleteConversation(M.value),Q.value=!1,M.value=""}finally{ee.value=!1}}}function Me(m){const h=D.conversations.value.find(A=>A.id===m);h&&(v.value="",Ie.value=h.id,ut.value=h.title,Fe.value=!0)}function tt(m){v.value=v.value===m?"":m}function Dt(m){return m.length>uy}function ht(m){ge.value=m,D.loadConversations()}function f(){ge.value="chat"}function b(){f()}function E(){ht("history")}function J(){ge.value="settings"}function _e(){J()}function Re(){ge.value="settings",d("settings-open")}function nt(){ge.value="chat",d("settings-close")}function Ot(){de.value||(de.value=!0,d("settings-save",m=>{de.value=!1,m&&ua.message.success("工作台设置已保存")}))}function mt(){const m=ut.value.trim();m&&Ie.value&&D.renameConversation(Ie.value,m),Fe.value=!1}function Xe(){w.value=D.conversations.value.length,R.value=!0}function Bt(){$.value||(R.value=!1)}async function Zt(){if(!$.value){$.value=!0,R.value=!1;try{await D.clearConversations()}finally{$.value=!1,w.value=0}}}function et(m){Wt(m)}async function Wt(m){const h=m.trim();h&&(ge.value="chat",await D.sendMessage(h))}function aa(m){return/^(取消|算了|不用了|停止|放弃)$/u.test(m.trim())}function dn(m){const h=m.trim().replace(/\s+/gu,"");if(!/^(?:选|选择|序号|第)?[1-9]\d*(?:个|项|号)?$/u.test(h))return;const A=Number(h.replace(/\D/gu,""));return Number.isFinite(A)?A:void 0}function kn(m,h){if(!m||!h.trim())return;const A=aa(h),se=dn(h);D.messages.value=D.messages.value.map(De=>{var Tt;const Je=De.taskStateDraft;if(!Je||Je.taskId!==m||!Je.canConfirm)return De;const $e=se!==void 0?(Tt=Je.confirmationOptions)==null?void 0:Tt.find(Rt=>Rt.index===se):void 0;return{...De,taskStateDraft:{...Je,title:`${Je.title}已确认`,status:A?"cancelled":"confirmed",statusLabel:"已确认",statusTone:A?"neutral":"success",canConfirm:!1,confirmPhrase:void 0,cancelPhrase:void 0,resultSummary:A?"已取消本次问数确认。":$e?`已选择口径 ${$e.index}:${$e.label}`:"已确认,正在继续执行问数。"}}})}function Rn(m,h,A){kn(h,A),d("confirm-task-state",{turnId:m,taskId:h,phrase:A})}function vn(m,h,A){kn(h,A),d("cancel-task-state",{turnId:m,taskId:h,phrase:A})}function _n(m,h){d("choose-card-recommendation",m,h)}function Z(m){d("configure-card-recommendation",m)}function le(m){return/(不要|别|无需|不用|先不).{0,8}(插入|插卡|添加|加到|放到)/.test(m)}function Oe(m){const h=m.trim();return!h||le(h)?!1:/(插入|插卡|添加|加到|放到).{0,12}(左侧|工作台|画布|页面|卡片)/.test(h)||/(左侧|工作台|画布|页面).{0,12}(插入|插卡|添加|加上|放上)/.test(h)}function ve(m){const h=m.trim();return!h||le(h)||!/(用|按|改成|改为|换成|调整为|调整成|设为|设置为|变成|方式|占比|比例|分布|展示|显示|呈现)/.test(h)?null:/(环形图|环图)/.test(h)?"donut":/饼图|饼状图|圆饼图/.test(h)?"pie":/折线图|折状图/.test(h)?"line":/面积图/.test(h)?"area":/柱状图|柱形图/.test(h)?"bar":/漏斗图/.test(h)?"funnel":null}function Ge(m,h){const A=m.replace(/\s+/g,""),se=h.find(De=>A.includes(De.replace(/\s+/g,"")));return se?[se]:h}function We(m,h){const A=ve(h);if(!A)return null;const se=Ge(h,m.chart.yFields),De=A==="pie"||A==="donut";return{...m,chart:{...m.chart,type:A,yFields:De?se.slice(0,1):se}}}function Ye(m){var ar;const h=m.replace(/\s+/g," ").replace(/[??。.!!、]+$/g,"").trim();if(!h||/^(?:选|选择|序号|第)?[1-9]\d*(?:个|项|号)?$/u.test(h.replace(/\s+/g,"")))return"";const A=/^(?:请|帮我|麻烦|能不能|可以|我想|能否|请问|我想了解|我想知道|麻烦你?|能麻烦)\s*/u,se=/(?:给我|给我看看|帮我查|帮我分析|帮我看看|查一下|看一下|分析一下?|展示一下?|显示一下?|告诉我|说一下|列举一下?|统计一下?|对比一下?|比较一下?|算一下?)\s*/gu,De=/(?:是多少|有多少|怎么样|的情况|的情况如何|如何|呢|吗|吧|的数据|的数据吗|是什么|是什么情况|有哪些|有哪些变化|趋势如何)$/u,Je=/(?:最近的?|最近\d+[天月年周个]*|今年|去年|上个月|本月|本季度|上季度|当月|上半年|下半年|第[一二三四]季度|\d{4}年(?:第[一二三四]季度)?)/gu;let $e=h.replace(A,"").replace(se,"").replace(De,"").replace(Je,"").replace(/^[的的和与及,,]\s*|\s*[的的和与及,,]$/g,"").trim();if($e||($e=h),$e.length<=20)return $e;const Tt=$e.match(/(?:各|全部)?([一-鿿]{0,3}(?:区域|地区|部门|产品线?|品类|渠道|门店|客户|业务线?|分公司|团队|大区|中心))/u),Rt=((ar=Tt==null?void 0:Tt[1])==null?void 0:ar.slice(0,4))||"",Pn=[/[一-鿿A-Za-z0-9]*(?:毛利率|净利率|利润率|增长率|同比增长|环比增长|占比)/u,/[一-鿿A-Za-z0-9]*(?:销售额|利润|营收|成本|费用|收入|支出)/u,/[一-鿿A-Za-z0-9]*(?:量|数|价|率|额|比)/u];let An="";for(const ia of Pn){const Or=$e.match(ia);if(Or){An=Or[0];break}}if(An){const ia=`${Rt}${An}`;if(ia.length>0&&ia.length<=20)return ia;if(An.length<=20)return An}const oa=$e.match(/[一-鿿A-Za-z0-9]+(?:额|率|量|数|占比|增长|排名|TOP\d*)/u);return oa&&oa[0].length<=20?oa[0]:`${$e.slice(0,19)}…`}function Ft(m){return/^(?:选|选择|序号|第)?[1-9]\d*(?:个|项|号)?$/u.test(m.replace(/\s+/g,""))}function en(m){const h=m.replace(/\s+/g,"");return/用户已对上一轮问数澄清作出选择|上一轮问数澄清.*继续查询|基于该选择继续查询/u.test(h)}function Dn(m){const h=m.replace(/\s+/g,"");return Ft(m)?!0:/^(?:选|选择|已选|我选|就选|用|使用|确认|确定|继续)(?:第?[1-9]\d*(?:个|项|号)?|[\u4e00-\u9fa5A-Za-z0-9_-]{1,24})$/u.test(h)||/^按(?:第?[1-9]\d*(?:个|项|号)?|[\u4e00-\u9fa5A-Za-z0-9_-]{1,6})$/u.test(h)}function Nn(m){const h=m.replace(/\s+/g,"");return h?/^(?:请|帮我)?(?:(?:把|将)?(?:(?:查询|问数|统计|汇总)?结果|(?:上次|上回|上轮|上一轮|上一条|刚才|刚刚|这个|这次|当前|上面|上述)(?:的)?(?:查询|问数|数据|统计|汇总)?(?:结果|数据|指标|当前值|值))?)?(?:推荐|生成|创建|预览|展示|做|做成)?(?:几张|多个|多张|多维度|按维度)?(?:图表)?(?:卡片|卡|图表)(?:候选|推荐|预览)?$/u.test(h)&&/(?:推荐|候选|预览|几张|多个|多张|多维度|按维度)/u.test(h):!1}function At(m){const h=m.trim();return!!h&&!Ft(h)&&!en(h)&&!Dn(h)&&!Nn(h)}function pn(){for(const m of[...I.value].reverse()){if(m.role!=="user")continue;const h=m.content.trim();if(At(h))return h}return""}function he(m){var se,De,Je,$e;const h=(De=(se=m.dataBinding)==null?void 0:se.question)==null?void 0:De.trim();if(h&&At(h))return h;const A=($e=(Je=m.meta)==null?void 0:Je.prompt)==null?void 0:$e.trim();return A&&At(A)?A:pn()}function k(m){var Tt,Rt,Pn,An;const h=he(m),A=Ye(h);if(!h||!A)return m;const se=(Rt=(Tt=m.meta)==null?void 0:Tt.prompt)==null?void 0:Rt.trim(),De=(An=(Pn=m.dataBinding)==null?void 0:Pn.question)==null?void 0:An.trim(),Je=!!(se&&!At(se)),$e=!!(De&&!At(De));return{...m,title:A,dataBinding:{...m.dataBinding,question:h},...Je||$e?{meta:{...m.meta,prompt:h}}:{}}}function P(m){const h=fi(m),A=Array.isArray(m.viewAlternatives)?m.viewAlternatives.map($e=>P($e)):void 0,se=!!A&&A.some(($e,Tt)=>{var Rt;return $e!==((Rt=m.viewAlternatives)==null?void 0:Rt[Tt])});if(!h)return se?{...m,...A?{viewAlternatives:A}:{}}:m;const De=m.blockPlan&&typeof m.blockPlan=="object"?{...m.blockPlan}:m.blockPlan;let Je=!1;return De&&typeof De=="object"&&"title"in De&&(typeof De.title=="string"?De.title.trim():"")!==h&&(De.title=h,Je=!0),!Je&&!se?m:{...m,...De?{blockPlan:De}:{},...A?{viewAlternatives:A}:{}}}function L(m){const h=m.cardRecommendationDraft;if(!h)return m;const A=bt.get(m);if((A==null?void 0:A.draft)===h)return A.normalized;const se=h.recommendations.map($e=>P($e)),Je=se.some(($e,Tt)=>$e!==h.recommendations[Tt])?{...m,cardRecommendationDraft:{...h,recommendations:se}}:m;return bt.set(m,{draft:h,normalized:Je}),Je}function me(m){const h=m.cardRecommendationDraft;return String(m.workbenchTurnId||(h==null?void 0:h.placementTurnId)||(h==null?void 0:h.sourceTurnId)||"").trim()}function be(m){const h=new Set(m.filter(A=>{var se;return(((se=A.cards)==null?void 0:se.length)||0)>0}).map(me).filter(Boolean));return h.size===0?m:m.filter(A=>{var se;return!A.cardRecommendationDraft||(((se=A.cards)==null?void 0:se.length)||0)>0||!h.has(me(A))})}function Ee(m){return be(m).map(h=>L(h))}function st(){var m;if(D.latestChartCard.value)return D.latestChartCard.value;for(const h of[...I.value].reverse()){const A=(m=h.cards)==null?void 0:m[h.cards.length-1];if(A)return A}return null}function $t(){return D.latestMetricCard.value}function It(m){var A,se;const h=((se=(A=m.dataBinding)==null?void 0:A.question)==null?void 0:se.trim())||pn();return h?{...m,dataBinding:{...m.dataBinding,question:h}}:m}function Un(m){var Je,$e,Tt,Rt;if((Je=m.meta)!=null&&Je.workbenchAdaptiveHeightPx)return m;const h=((($e=m.meta)==null?void 0:$e.prompt)||((Tt=m.dataBinding)==null?void 0:Tt.question)||"").length,A=((Rt=m.summary)==null?void 0:Rt.length)||0,se=m.chart.type==="mini-bar"?210:390,De=Math.ceil(h/28)*20+Math.ceil(A/32)*22;return{...m,meta:{...m.meta,workbenchAdaptiveHeightPx:Math.max(se,se+De)}}}async function ft(m){const h=st(),A=h?We(h,m):null;if(A){d("insertCard",Un(A));return}if(Oe(m)){const se=$t();if(se){d("insertMetricCard",It(se));return}if(h){d("insertCard",Un(k(h)));return}}await D.sendMessage(m)}function Ea(){x.value||D.isCompacting.value||D.compactContext()}function xa(m){const h=m==null?void 0:m.match(/^data:([^;,]+)[;,]/);return h==null?void 0:h[1]}function Ba(m){var Tt,Rt,Pn;const h=((Tt=m.fileName)==null?void 0:Tt.trim())||(m.type==="file"?"附件":"图片"),A=m.type!=="file",se=((Rt=m.text)==null?void 0:Rt.trim())||(A?`上传图片:${h}`:`上传附件:${h}`),De=new Date().toISOString(),Je={id:`image-user-${Date.now()}-${Math.random().toString(16).slice(2,8)}`,role:"user",content:se,timestamp:De};Je.attachments=[{type:A?"image":"file",url:m.downloadUrl||m.imageUrl,downloadUrl:m.downloadUrl,fileId:m.fileId,name:h,mimeType:m.mimeType||xa(m.imageUrl)||(A?"image/*":"application/octet-stream"),rawFile:m.file,size:(Pn=m.file)==null?void 0:Pn.size}];const $e={id:`${A?"image":"attachment"}-status-${Date.now()}-${Math.random().toString(16).slice(2,8)}`,role:"status",content:m.statusContent||(A?"正在识别图片...":"附件已上传"),loading:m.statusLoading??A,timestamp:De,startTime:Date.now()};return D.messages.value.push(Je,$e),$e.id}function Ia(m,h){const A=D.messages.value.find(se=>se.id===m);A&&(A.content=h.content,A.loading=h.loading??!1,A.error=h.error,A.detail=h.detail)}function ra(m,h){const A="fileName"in m&&m.fileName?m.fileName:m.file.name;return{type:h,url:m.previewUrl||m.downloadUrl,downloadUrl:m.downloadUrl,fileId:m.fileId,name:A,mimeType:m.mimeType||(h==="image"?"image/*":"application/octet-stream"),rawFile:m.file,size:m.file.size}}async function N(m,h){ge.value="chat",await D.sendMessage(m,{attachments:[h]})}function G(m){const h=m.text.trim();return h||(m.attachments.every(A=>A.type==="image")?"分析图片":"分析附件")}async function Lr(m){if(m.attachments.length!==0){if(c.transport){ge.value="chat",await D.sendMessage(G(m),{attachments:m.attachments.map(h=>ra(h,h.type))});return}for(const h of m.attachments){if(h.type==="image"&&!c.routeImagesAsAttachments){await at({base64:h.base64||"",file:h.file,fileName:h.fileName,mimeType:h.mimeType,previewUrl:h.previewUrl,text:m.text});continue}await Cn({...h,text:m.text})}}}async function at(m){var A;if(c.transport){const se=m.fileName||m.file.name;await N(((A=m.text)==null?void 0:A.trim())||"分析图片",ra({...m,fileName:se},"image"));return}const h=Ba({fileName:m.file.name,file:m.file,imageUrl:m.previewUrl,mimeType:m.mimeType,text:m.text,statusContent:"图片已添加,正在识别图片...",statusLoading:!0});d("image-upload",{...m,fileName:m.fileName||m.file.name,messageId:h})}async function Cn(m){var A;if(c.transport){await N(((A=m.text)==null?void 0:A.trim())||(m.type==="image"?"分析图片":"分析附件"),ra(m,m.type));return}const h=Ba({fileName:m.fileName,file:m.file,imageUrl:m.previewUrl,mimeType:m.mimeType,text:m.text,statusContent:"附件已添加",statusLoading:!1,type:m.type});d("attachment-upload",{...m,fileName:m.fileName,messageId:h})}function kt(m){d("confirm-compose-plan",m)}function Ln(){const m=D.messages.value.findIndex(h=>h.planDraft);m!==-1&&D.messages.value.splice(m,1),d("cancel-compose-plan")}function Vs(m,h){d("modify-compose-plan",{planId:m,prompt:h})}function er(m){D.messages.value.push({id:`plan-${m.planId}`,role:"assistant",content:"已生成编排方案,请确认后生成卡片。",planDraft:m,timestamp:new Date().toISOString()})}function Pr(m){D.messages.value.push({id:`card-rec-${m.recommendationId}`,role:"assistant",content:"",cardRecommendationDraft:m,timestamp:new Date().toISOString()})}function Mr(m){oe.value=m,ge.value="chat",n.nextTick(()=>{var h;(h=j.value)==null||h.setText(oe.value)})}function jn(){ge.value="chat",n.nextTick(()=>{var m;(m=j.value)==null||m.focusComposer()})}function tr(m,h){return D.appendMessage(m,h)}function sa(m,h){return D.assignWorkbenchTurnIds(m,h)}function nr(m,h,A){return D.replaceWorkbenchTurnAnswer(m,h,A)}function Kn(m){d("insertCard",k(m)),jn()}function Sn(m,h){var A,se;(se=(A=Ne.value)==null?void 0:A.setMemoryCaptureStatus)==null||se.call(A,m,h)}return r({conversations:ue,activeId:ce,startNewConversation:C,switchConversation:z,deleteConversation:ae,openDeleteConversationDialog:Y,openRenameConversationDialog:Me,openClearConversationDialog:Xe,pushImageUploadMessage:Ba,updateImageUploadMessage:Ia,pushPlanDraft:er,pushCardRecommendationDraft:Pr,assignWorkbenchTurnIds:sa,appendMessage:tr,replaceWorkbenchTurnAnswer:nr,sendText:Wt,setInputText:Mr,focusComposer:jn,openChatPanelFromHost:b,openHistoryPanel:E,openSettingsPanelFromHost:_e,setMemoryCaptureStatus:Sn,moveMessageToEnd:D.moveMessageToEnd}),(m,h)=>(n.openBlock(),n.createBlock(n.unref(Yr.TrThemeProvider),null,{default:n.withCtx(()=>[n.createElementVNode("div",ig,[n.createElementVNode("div",cg,[ge.value==="chat"?(n.openBlock(),n.createElementBlock("div",{key:0,class:n.normalizeClass(["runtime-chat__topbar",{"runtime-chat__topbar--shadow":Pe.value}]),"aria-label":"对话工具"},[T.value?(n.openBlock(),n.createElementBlock("div",lg,[n.renderSlot(m.$slots,"topbar-leading",{},void 0,!0)])):n.createCommentVNode("",!0),n.createElementVNode("div",dg,[n.createVNode(n.unref(ua.Tooltip),{title:"新建会话",placement:"bottom","overlay-class-name":"runtime-chat__topbar-tooltip"},{default:n.withCtx(()=>[n.createElementVNode("button",{type:"button",class:"runtime-chat__topbar-action","aria-label":"新建会话","data-testid":"chat-action-new",disabled:n.unref(I).length===0,onClick:pt},[n.createVNode(n.unref(Ze.MessageOutlined))],8,ug)]),_:1}),e.enableChatHistory?(n.openBlock(),n.createBlock(n.unref(ua.Tooltip),{key:0,title:"历史对话",placement:"bottom","overlay-class-name":"runtime-chat__topbar-tooltip"},{default:n.withCtx(()=>[n.createElementVNode("button",{type:"button",class:"runtime-chat__topbar-action","aria-label":"历史对话","data-testid":"chat-action-history",onClick:h[0]||(h[0]=A=>ht("history"))},[n.createVNode(n.unref(Ze.ClockCircleOutlined))])]),_:1})):n.createCommentVNode("",!0),n.createVNode(n.unref(ua.Tooltip),{title:"配置",placement:"bottom","overlay-class-name":"runtime-chat__topbar-tooltip"},{default:n.withCtx(()=>[n.createElementVNode("button",{type:"button",class:n.normalizeClass(["runtime-chat__topbar-action",{"runtime-chat__topbar-action--active":e.canvasConfigActive}]),"aria-label":"配置","data-testid":"chat-action-settings",onClick:J},[n.createVNode(n.unref(Ze.SettingOutlined))],2)]),_:1})])],2)):n.createCommentVNode("",!0),n.createElementVNode("div",mg,[ge.value==="chat"&&fe.value.length>0?(n.openBlock(),n.createBlock(_h,{key:0,ref_key:"messageListRef",ref:Ne,messages:fe.value,"hidden-status-message-ids":it.value,"auto-insert-compose-plan":!!c.autoInsertComposePlan,"task-state-actions-disabled":c.taskStateActionsDisabled||n.unref(x),onInsertCard:Kn,onChooseCardRecommendation:_n,onConfigureCardRecommendation:Z,onConfirmPlan:kt,onCancelPlan:Ln,onConfirmTaskState:Rn,onCancelTaskState:vn,onMemoryCaptureDismiss:h[1]||(h[1]=(A,se)=>d("memory-capture-dismiss",{turnId:A,itemId:se})),onMemoryCaptureSave:h[2]||(h[2]=(A,se)=>d("memory-capture-save",{turnId:A,itemId:se})),onModifyPlan:Vs,onSendFollowUp:et,onAutoInsertComposePlanChange:h[3]||(h[3]=A=>d("auto-insert-compose-plan-change",A)),onScrollPositionChange:Mt},null,8,["messages","hidden-status-message-ids","auto-insert-compose-plan","task-state-actions-disabled"])):ge.value==="chat"&&n.unref(q)?(n.openBlock(),n.createElementBlock("section",fg,[...h[15]||(h[15]=[n.createElementVNode("div",{class:"chat-switching-skeleton__spinner","aria-hidden":"true"},null,-1),n.createElementVNode("div",{class:"chat-switching-skeleton__text"},"正在加载会话…",-1),n.createElementVNode("div",{class:"chat-switching-skeleton__messages"},[n.createElementVNode("div",{class:"chat-switching-skeleton__message chat-switching-skeleton__message--assistant"}),n.createElementVNode("div",{class:"chat-switching-skeleton__message chat-switching-skeleton__message--user"}),n.createElementVNode("div",{class:"chat-switching-skeleton__message chat-switching-skeleton__message--assistant"})],-1)])])):ge.value==="chat"?(n.openBlock(),n.createElementBlock("section",{key:2,ref_key:"welcomeWorkspaceRef",ref:te,class:"chat-workspace","aria-label":"AI 助手介绍",onScroll:ct},[n.createElementVNode("div",{class:"ai-chat-prologue",innerHTML:qt.value},null,8,pg)],544)):ge.value==="history"?(n.openBlock(),n.createElementBlock("section",hg,[n.createElementVNode("header",{class:n.normalizeClass(["chat-panel__header",{"chat-panel__header--with-extra":B.value}])},[n.createElementVNode("button",{type:"button",class:"chat-panel__nav","aria-label":"返回",onClick:f},[n.createVNode(n.unref(Ze.LeftOutlined))]),h[16]||(h[16]=n.createElementVNode("h2",{class:"chat-panel__title"},"历史",-1)),B.value?(n.openBlock(),n.createElementBlock("div",gg,[n.renderSlot(m.$slots,"utility-header-extra",{},void 0,!0)])):n.createCommentVNode("",!0),n.createElementVNode("button",{type:"button",class:"chat-panel__nav","aria-label":"关闭",onClick:f},[n.createVNode(n.unref(Ze.CloseOutlined))])],2),n.createElementVNode("div",yg,[n.unref(H)?(n.openBlock(),n.createElementBlock("div",bg,[...h[17]||(h[17]=[n.createElementVNode("span",{class:"chat-history-panel__spinner","aria-hidden":"true"},null,-1),n.createElementVNode("span",null,"正在加载历史对话",-1)])])):(n.openBlock(),n.createElementBlock("section",kg,[h[18]||(h[18]=n.createElementVNode("h3",{class:"chat-history-group__title"},"今天",-1)),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(xe.value,A=>(n.openBlock(),n.createElementBlock("div",{key:A.id,class:n.normalizeClass(["chat-history-item",{"chat-history-item--active":A.id===ce.value,"chat-history-item--menu-open":v.value===A.id}]),"data-testid":`chat-history-item-row-${A.id}`},[n.createElementVNode("button",{type:"button",class:"chat-history-item__select","data-testid":`chat-history-item-${A.id}`,onClick:se=>z(A.id)},[n.createVNode(n.unref(Ze.CommentOutlined),{class:"chat-history-item__icon"}),n.createElementVNode("span",Sg,[Dt(A.title)?(n.openBlock(),n.createBlock(n.unref(ua.Tooltip),{key:0,title:A.title,placement:"topRight","overlay-class-name":"runtime-chat__history-title-tooltip"},{default:n.withCtx(()=>[n.createElementVNode("span",{class:"chat-history-item__title-tooltip-trigger","data-testid":`chat-history-title-tooltip-${A.id}`},[n.createElementVNode("span",wg,n.toDisplayString(A.title),1)],8,Ag)]),_:2},1032,["title"])):(n.openBlock(),n.createElementBlock("span",{key:1,class:"chat-history-item__title","data-testid":`chat-history-title-${A.id}`},n.toDisplayString(A.title),9,Tg)),Be(A.updatedAt)?(n.openBlock(),n.createElementBlock("span",{key:2,class:"chat-history-item__time",title:Ae(A.updatedAt),"data-testid":`chat-history-updated-at-${A.id}`},n.toDisplayString(Be(A.updatedAt)),9,Eg)):n.createCommentVNode("",!0)])],8,Cg),n.createElementVNode("div",xg,[n.createElementVNode("button",{type:"button",class:"chat-history-item__more",title:"更多操作","aria-expanded":v.value===A.id,"data-testid":`chat-history-more-${A.id}`,onClick:n.withModifiers(se=>tt(A.id),["stop"])},[n.createVNode(n.unref(Ze.EllipsisOutlined))],8,Bg),v.value===A.id?(n.openBlock(),n.createElementBlock("div",{key:0,class:"chat-history-item__menu",onClick:h[4]||(h[4]=n.withModifiers(()=>{},["stop"]))},[n.createElementVNode("button",{type:"button",class:"chat-history-item__menu-action","data-testid":`chat-history-rename-${A.id}`,onClick:se=>Me(A.id)}," 重命名 ",8,Ig),n.createElementVNode("button",{type:"button",class:"chat-history-item__menu-action chat-history-item__menu-action--danger","data-testid":`chat-history-delete-${A.id}`,onClick:se=>Y(A.id)}," 删除 ",8,Rg)])):n.createCommentVNode("",!0)])],10,_g))),128))])),n.unref(H)?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("section",vg,[h[19]||(h[19]=n.createElementVNode("h3",{class:"chat-history-group__title"},"过去 30 天",-1)),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Ce.value,A=>(n.openBlock(),n.createElementBlock("div",{key:A.id,class:n.normalizeClass(["chat-history-item",{"chat-history-item--active":A.id===ce.value,"chat-history-item--menu-open":v.value===A.id}]),"data-testid":`chat-history-item-row-${A.id}`},[n.createElementVNode("button",{type:"button",class:"chat-history-item__select","data-testid":`chat-history-item-${A.id}`,onClick:se=>z(A.id)},[n.createVNode(n.unref(Ze.CommentOutlined),{class:"chat-history-item__icon"}),n.createElementVNode("span",Lg,[Dt(A.title)?(n.openBlock(),n.createBlock(n.unref(ua.Tooltip),{key:0,title:A.title,placement:"topRight","overlay-class-name":"runtime-chat__history-title-tooltip"},{default:n.withCtx(()=>[n.createElementVNode("span",{class:"chat-history-item__title-tooltip-trigger","data-testid":`chat-history-title-tooltip-${A.id}`},[n.createElementVNode("span",Mg,n.toDisplayString(A.title),1)],8,Pg)]),_:2},1032,["title"])):(n.openBlock(),n.createElementBlock("span",{key:1,class:"chat-history-item__title","data-testid":`chat-history-title-${A.id}`},n.toDisplayString(A.title),9,Og)),Be(A.updatedAt)?(n.openBlock(),n.createElementBlock("span",{key:2,class:"chat-history-item__time",title:Ae(A.updatedAt),"data-testid":`chat-history-updated-at-${A.id}`},n.toDisplayString(Be(A.updatedAt)),9,Fg)):n.createCommentVNode("",!0)])],8,Ng),n.createElementVNode("div",$g,[n.createElementVNode("button",{type:"button",class:"chat-history-item__more",title:"更多操作","aria-expanded":v.value===A.id,"data-testid":`chat-history-more-${A.id}`,onClick:n.withModifiers(se=>tt(A.id),["stop"])},[n.createVNode(n.unref(Ze.EllipsisOutlined))],8,Vg),v.value===A.id?(n.openBlock(),n.createElementBlock("div",{key:0,class:"chat-history-item__menu",onClick:h[5]||(h[5]=n.withModifiers(()=>{},["stop"]))},[n.createElementVNode("button",{type:"button",class:"chat-history-item__menu-action","data-testid":`chat-history-rename-${A.id}`,onClick:se=>Me(A.id)}," 重命名 ",8,zg),n.createElementVNode("button",{type:"button",class:"chat-history-item__menu-action chat-history-item__menu-action--danger","data-testid":`chat-history-delete-${A.id}`,onClick:se=>Y(A.id)}," 删除 ",8,Gg)])):n.createCommentVNode("",!0)])],10,Dg))),128))])),!n.unref(H)&&ue.value.length===0?(n.openBlock(),n.createElementBlock("div",Hg," 暂无历史对话 ")):n.createCommentVNode("",!0)])])):(n.openBlock(),n.createElementBlock("section",qg,[n.createElementVNode("header",{class:n.normalizeClass(["chat-panel__header",{"chat-panel__header--with-extra":B.value}])},[n.createElementVNode("button",{type:"button",class:"chat-panel__nav","aria-label":"返回",onClick:nt},[n.createVNode(n.unref(Ze.LeftOutlined))]),h[20]||(h[20]=n.createElementVNode("h2",{class:"chat-panel__title"},"工作台设置",-1)),B.value?(n.openBlock(),n.createElementBlock("div",Wg,[n.renderSlot(m.$slots,"utility-header-extra",{},void 0,!0)])):n.createCommentVNode("",!0),n.createElementVNode("button",{type:"button",class:"chat-panel__nav","aria-label":"关闭",onClick:nt},[n.createVNode(n.unref(Ze.CloseOutlined))])],2),n.createElementVNode("div",Ug,[e.showDefaultWorkbenchActions?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("button",{type:"button",class:"chat-settings-panel__secondary","data-testid":"chat-settings-switch-default",onClick:h[6]||(h[6]=A=>d("switch-default-workbench"))},n.toDisplayString(e.defaultWorkbenchSwitchLabel),1),n.createElementVNode("button",{type:"button",class:"chat-settings-panel__secondary","data-testid":"chat-settings-restore-default",onClick:h[7]||(h[7]=A=>d("restore-default-workbench"))}," 恢复默认工作台 ")],64)):n.createCommentVNode("",!0),ne.value?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("button",{key:1,type:"button",class:"chat-settings-panel__secondary chat-settings-panel__secondary--wide","data-testid":"chat-settings-edit-workbench",onClick:Re}," 编辑工作台 ")),ne.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:2},[n.createElementVNode("button",{type:"button",class:"chat-settings-panel__secondary","data-testid":"chat-settings-auto-arrange",onClick:h[8]||(h[8]=A=>d("auto-arrange"))},[n.createVNode(n.unref(Ze.DragOutlined)),h[21]||(h[21]=n.createTextVNode(" 自动排列 ",-1))]),n.createElementVNode("button",{type:"button",class:"chat-settings-panel__primary","data-testid":"chat-settings-save",disabled:de.value,onClick:Ot},[de.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[h[22]||(h[22]=n.createElementVNode("span",null,"保存中",-1)),h[23]||(h[23]=n.createElementVNode("span",{class:"chat-saving-dots","aria-hidden":"true"},[n.createElementVNode("span",{class:"chat-saving-dots__dot"},"."),n.createElementVNode("span",{class:"chat-saving-dots__dot"},"."),n.createElementVNode("span",{class:"chat-saving-dots__dot"},".")],-1))],64)):(n.openBlock(),n.createElementBlock(n.Fragment,{key:1},[n.createTextVNode("保存")],64))],8,jg)],64)):n.createCommentVNode("",!0)]),e.showPersonaSettings?(n.openBlock(),n.createElementBlock("div",Kg,[h[24]||(h[24]=n.createElementVNode("div",{class:"chat-settings-panel__persona-title"},"人格设定",-1)),n.createElementVNode("div",Qg,[(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(St,A=>n.createElementVNode("button",{key:A.id,type:"button",class:n.normalizeClass(["chat-settings-panel__persona-option",{"chat-settings-panel__persona-option--active":e.assistantPersonaKey===A.id}]),"aria-selected":e.assistantPersonaKey===A.id,onClick:se=>d("assistant-persona-change",A.id)},n.toDisplayString(A.label),11,Yg)),64))])])):n.createCommentVNode("",!0),n.createElementVNode("div",Jg,[n.renderSlot(m.$slots,"settings",{},void 0,!0)])]))]),ge.value==="chat"?(n.openBlock(),n.createElementBlock("div",Zg,[ke.value?(n.openBlock(),n.createBlock(og,{key:0,plan:ke.value},null,8,["plan"])):n.createCommentVNode("",!0),n.createVNode(jh,{ref_key:"senderRef",ref:j,"business-group-error":c.businessGroupError,"business-group-loading":c.businessGroupLoading,"business-groups":c.businessGroups,loading:n.unref(x),placeholder:e.placeholder,"route-images-as-attachments":c.routeImagesAsAttachments,"selected-business-group":c.selectedBusinessGroup,onBusinessGroupClear:h[9]||(h[9]=A=>d("business-group-clear")),onBusinessGroupOpen:h[10]||(h[10]=A=>d("business-group-open")),onBusinessGroupSelect:h[11]||(h[11]=A=>d("business-group-select",A)),onSubmit:ft,onCancel:n.unref(D).abortStream,onImage:at,onAttachment:Cn,onAttachments:Lr},{history:n.withCtx(()=>[n.createVNode(Jh,{usage:n.unref(D).contextUsage.value,loading:n.unref(D).isCompacting.value,disabled:n.unref(x),onCompact:Ea},null,8,["usage","loading","disabled"])]),_:1},8,["business-group-error","business-group-loading","business-groups","loading","placeholder","route-images-as-attachments","selected-business-group","onCancel"])])):n.createCommentVNode("",!0)])]),(n.openBlock(),n.createBlock(n.Teleport,{to:"body"},[Fe.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"rename-overlay",onClick:h[14]||(h[14]=n.withModifiers(A=>Fe.value=!1,["self"]))},[n.createElementVNode("div",Xg,[h[25]||(h[25]=n.createElementVNode("div",{class:"rename-modal__title"},"重命名会话",-1)),n.withDirectives(n.createElementVNode("input",{"onUpdate:modelValue":h[12]||(h[12]=A=>ut.value=A),class:"rename-modal__input",placeholder:"请输入新名称",onKeydown:n.withKeys(mt,["enter"])},null,544),[[n.vModelText,ut.value]]),n.createElementVNode("div",ey,[n.createElementVNode("button",{class:"rename-modal__btn rename-modal__btn--cancel",onClick:h[13]||(h[13]=A=>Fe.value=!1)}," 取消 "),n.createElementVNode("button",{class:"rename-modal__btn rename-modal__btn--confirm",onClick:mt}," 确认 ")])])])):n.createCommentVNode("",!0)])),(n.openBlock(),n.createBlock(n.Teleport,{to:"body"},[Q.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"delete-overlay",onClick:n.withModifiers(ye,["self"])},[n.createElementVNode("div",ty,[h[26]||(h[26]=n.createElementVNode("div",{id:"delete-conversation-title",class:"delete-modal__title"},"删除会话",-1)),n.createElementVNode("p",ny,n.toDisplayString(K.value),1),n.createElementVNode("div",ay,[n.createElementVNode("button",{class:"delete-modal__btn delete-modal__btn--cancel",disabled:ee.value,"data-testid":"delete-conversation-cancel",onClick:ye}," 取消 ",8,ry),n.createElementVNode("button",{class:"delete-modal__btn delete-modal__btn--danger",disabled:ee.value,"data-testid":"delete-conversation-confirm",onClick:Te},n.toDisplayString(ee.value?"删除中...":"确认删除"),9,sy)])])])):n.createCommentVNode("",!0)])),(n.openBlock(),n.createBlock(n.Teleport,{to:"body"},[R.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"clear-overlay",onClick:n.withModifiers(Bt,["self"])},[n.createElementVNode("div",oy,[h[27]||(h[27]=n.createElementVNode("div",{id:"clear-conversations-title",class:"clear-modal__title"}," 清空全部会话 ",-1)),n.createElementVNode("p",iy," 将删除 "+n.toDisplayString(ie.value)+" 条会话记录,清空后会回到一个新的空对话。 ",1),n.createElementVNode("div",cy,[n.createElementVNode("button",{class:"clear-modal__btn clear-modal__btn--cancel",disabled:$.value,onClick:Bt}," 取消 ",8,ly),n.createElementVNode("button",{class:"clear-modal__btn clear-modal__btn--danger",disabled:$.value,"data-testid":"clear-conversations-confirm",onClick:Zt},n.toDisplayString($.value?"清空中...":"确认清空"),9,dy)])])])):n.createCommentVNode("",!0)]))]),_:3}))}}),[["__scopeId","data-v-9ae83f5b"]]);Le.CardRecommendationDraftView=Zi,Le.ChartCardRenderer=Ri,Le.FsesAiChat=$s,Le.FsesAiChatPlugin=nu,Le.buildRecommendationConfigSummary=Hi,Le.canShowRecommendationFieldConfig=Sm,Le.createChartOption=Ei,Le.default=$s,Le.deriveChartCardsFromMarkdown=Do,Le.getDisplayRows=Ai,Le.getVisibleYFields=ws,Le.hasRecommendationFieldOptions=Vi,Le.isMetricServiceRecommendation=Bs,Le.isSqlQuestionRecommendation=_m,Le.normalizeCardRecommendationFieldLabels=gm,Le.normalizeNumber=ta,Le.recommendationConfigDiagnostic=zi,Le.recommendationFieldLabels=Rs,Le.recommendationFieldMapping=Fi,Le.recommendationFieldOptions=$i,Le.recommendationFilterSummary=na,Le.resolveCardRecommendationFieldLabel=Gn,Le.useChat=ui,Object.defineProperties(Le,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});