@arcgis/ai-components 5.2.0-next.105 → 5.2.0-next.106
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-utils/LLMAgent.js +41 -40
- package/dist/agent-utils/middlewares/trace.js +5 -5
- package/dist/agents/runtime/skill/createSkillAgent.d.ts +31 -0
- package/dist/agents/runtime/skill/createSkillAgent.js +262 -0
- package/dist/agents/runtime/skill/loadAgentSkills.d.ts +16 -0
- package/dist/agents/runtime/skill/types.d.ts +28 -0
- package/dist/agents/runtime/skill/types.js +2 -0
- package/dist/agents/tools/filter/setFeatureEffect/adapter.js +20 -19
- package/dist/agents/tools/query/getStatistics/adapter.js +4 -3
- package/dist/agents/tools/query/getTopFeatures/adapter.js +4 -3
- package/dist/agents/tools/query/queryFeatures/adapter.js +4 -3
- package/dist/agents/tools/shared/resolveToolArtifact.d.ts +22 -0
- package/dist/agents/tools/shared/resolveToolArtifact.js +20 -0
- package/dist/agents/tools/shared/types.d.ts +22 -0
- package/dist/agents/tools/shared/types.js +6 -0
- package/dist/cdn/23C34FEU.js +2 -0
- package/dist/cdn/{NZSOJ726.js → 2AMUOR7X.js} +1 -1
- package/dist/cdn/2OHRNRNT.js +2 -0
- package/dist/cdn/2OUIRKTV.js +2 -0
- package/dist/cdn/2S6L3P4Q.js +2 -0
- package/dist/cdn/3IOP64NG.js +2 -0
- package/dist/cdn/3OH35VXS.js +2 -0
- package/dist/cdn/{5K5ZY267.js → 3SD47V7G.js} +1 -1
- package/dist/cdn/{7VAQUCBU.js → 3VCPN2KW.js} +1 -1
- package/dist/cdn/{LLUGJKAQ.js → 3XDT7MWI.js} +1 -1
- package/dist/cdn/{Y7XD7ZRD.js → 4ALF2CJY.js} +1 -1
- package/dist/cdn/{HAEFC2SJ.js → 5LMYUEK7.js} +1 -1
- package/dist/cdn/{655YIKL3.js → 6GODC6RU.js} +2 -2
- package/dist/cdn/{7VUSIGEM.js → 6RAWG2KQ.js} +1 -1
- package/dist/cdn/{DKZYPPJV.js → 6YZGKVYB.js} +1 -1
- package/dist/cdn/{VLLZ2FFU.js → 725MBCQF.js} +1 -1
- package/dist/cdn/74CVYM72.js +19 -0
- package/dist/cdn/{CP5BVGJU.js → 7EOS4SGJ.js} +1 -1
- package/dist/cdn/{5WYRJMBW.js → 7QIX4PZR.js} +1 -1
- package/dist/cdn/7UF3WRLO.js +72 -0
- package/dist/cdn/A7BKHIMA.js +2 -0
- package/dist/cdn/AFSBL4ZP.js +2 -0
- package/dist/cdn/{FG647IP6.js → AGQ5ADFU.js} +1 -1
- package/dist/cdn/{5ZFUGNRN.js → BQYF37UD.js} +1 -1
- package/dist/cdn/{4RDNI22D.js → BTTBKTFM.js} +4 -4
- package/dist/cdn/BVSK2GWP.js +2 -0
- package/dist/cdn/CFAC4FN3.js +2 -0
- package/dist/cdn/{HDACNIZF.js → D5EKX26R.js} +1 -1
- package/dist/cdn/EGN5BCHV.js +2 -0
- package/dist/cdn/{BXQ4I5HB.js → EJJFG5DE.js} +2 -2
- package/dist/cdn/{ZDV4K4WG.js → EOD5PNOL.js} +1 -1
- package/dist/cdn/{OE3GW5LE.js → ES6D4UD6.js} +1 -1
- package/dist/cdn/{K2R6XVK3.js → HB72YIII.js} +1 -1
- package/dist/cdn/{G2EGT3CF.js → HHBNLCJP.js} +1 -1
- package/dist/cdn/HLN5675C.js +2 -0
- package/dist/cdn/IFFOSSNB.js +2 -0
- package/dist/cdn/IO7DYFL2.js +2 -0
- package/dist/cdn/{IBZ2NEAO.js → IRSJXHRN.js} +1 -1
- package/dist/cdn/JD2TB7H4.js +2 -0
- package/dist/cdn/{ANRQWYU2.js → JKKU4K4C.js} +1 -1
- package/dist/cdn/{FUF3NAU7.js → JMNHFKGL.js} +1 -1
- package/dist/cdn/{22KHSDJI.js → JWZD3D5E.js} +1 -1
- package/dist/cdn/{HKOGIZDQ.js → KJLLN4P4.js} +18 -18
- package/dist/cdn/KZ73TZOB.js +2 -0
- package/dist/cdn/LEO3USHH.js +2 -0
- package/dist/cdn/LNIMGXB4.js +2 -0
- package/dist/cdn/MG2W2ZF3.js +2 -0
- package/dist/cdn/{NYJYRCGA.js → MSXMHRI7.js} +1 -1
- package/dist/cdn/MXAZE2VM.js +179 -0
- package/dist/cdn/{EWLXNGKH.js → OL7QBAGS.js} +15 -15
- package/dist/cdn/OMF6ITSG.js +2 -0
- package/dist/cdn/{Z5W4V7RC.js → OOGADOKQ.js} +1 -1
- package/dist/cdn/{KITIP6J2.js → OZ2CM3J2.js} +1 -1
- package/dist/cdn/PK5KI2XF.js +2 -0
- package/dist/cdn/PWFUEBTT.js +2 -0
- package/dist/cdn/{YEZ3AMNX.js → RLB6TK6B.js} +1 -1
- package/dist/cdn/{WKTQVBFJ.js → RN6WMVZX.js} +1 -1
- package/dist/cdn/RSJSRETN.js +2 -0
- package/dist/cdn/RSR66KB4.js +2 -0
- package/dist/cdn/{7SRLZQVC.js → RZIXMISL.js} +1 -1
- package/dist/cdn/{VOKXKU7M.js → S4LELUBK.js} +9 -9
- package/dist/cdn/{AI6DYOKR.js → S627D4K7.js} +1 -1
- package/dist/cdn/SL4Y7IRG.js +2 -0
- package/dist/cdn/STUBN3L5.js +2 -0
- package/dist/cdn/T2OYKP3V.js +2 -0
- package/dist/cdn/{C4JT4S5E.js → TBYDZN4H.js} +1 -1
- package/dist/cdn/{HHFNQR6Z.js → TEI6WXW7.js} +1 -1
- package/dist/cdn/{WGO5SER7.js → TFRWUAB6.js} +1 -1
- package/dist/cdn/U3ETGDT7.js +2 -0
- package/dist/cdn/{KWD2ECTM.js → UAG6GDUG.js} +1 -1
- package/dist/cdn/UHICISBZ.js +2 -0
- package/dist/cdn/{NNXISHCA.js → VMZZR7MY.js} +2 -2
- package/dist/cdn/WW4BEFDF.js +2 -0
- package/dist/cdn/XGCQS3N4.js +2 -0
- package/dist/cdn/{R2PQVY4O.js → XKH37FLY.js} +1 -1
- package/dist/cdn/XQ3NBBQ3.js +2 -0
- package/dist/cdn/{7BCQMK6D.js → XTCLJEID.js} +1 -1
- package/dist/cdn/{J6SZIQJA.js → Y7LGFSHO.js} +1 -1
- package/dist/cdn/ZFOG3KXV.js +2 -0
- package/dist/cdn/ZZZB3GES.js +14 -0
- package/dist/cdn/agent-utils/index.js +1 -1
- package/dist/cdn/agent-utils/middlewares/humanInTheLoop.js +1 -1
- package/dist/cdn/agent-utils/middlewares/middleware.js +1 -1
- package/dist/cdn/agent-utils/middlewares/trace.js +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/SKILL.js +5 -0
- package/dist/chunks/SKILL2.js +5 -0
- package/dist/chunks/SKILL3.js +22 -0
- package/dist/chunks/SKILL4.js +5 -0
- package/dist/chunks/adapter.js +137 -140
- package/dist/chunks/aiFactory.js +94 -0
- package/dist/chunks/arcgisKnowledgeGraph.js +14 -13
- package/dist/chunks/baseAgentState.js +2 -2
- package/dist/chunks/dataExplorationAgent.js +30 -0
- package/dist/chunks/generateLayerDescriptions.js +181 -268
- package/dist/chunks/helpAgent.js +37 -0
- package/dist/chunks/layerStylingGraph.js +91 -76
- package/dist/chunks/navigationAgent.js +40 -0
- package/dist/chunks/orchestrator.js +13 -12
- package/dist/chunks/requireAgentServices.js +11 -0
- package/dist/chunks/resolvePointGeometryFilter.js +11 -11
- package/dist/components/arcgis-assistant-data-exploration-agent/customElement.js +17 -6
- package/dist/components/arcgis-assistant-help-agent/customElement.js +3 -1
- package/dist/components/arcgis-assistant-knowledge-agent/customElement.js +1 -0
- package/dist/components/arcgis-assistant-layer-styling-agent/customElement.js +1 -0
- package/dist/components/arcgis-assistant-navigation-agent/customElement.js +18 -7
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/orchestrator/models/types.d.ts +1 -0
- package/dist/orchestrator/providers/arcgis/aiFactory.d.ts +15 -0
- package/dist/orchestrator/registry/agentRegistry.d.ts +33 -0
- package/dist/orchestrator/types/types.d.ts +17 -0
- package/dist/utils/index.d.ts +13 -3
- package/dist/utils/index.js +706 -82
- package/package.json +9 -5
- package/dist/cdn/2EY3BQQX.js +0 -2
- package/dist/cdn/2NDBI2VA.js +0 -156
- package/dist/cdn/4OGR5QKS.js +0 -2
- package/dist/cdn/5X7EG7D2.js +0 -2
- package/dist/cdn/6FCU2KJP.js +0 -2
- package/dist/cdn/7BJ4JKLG.js +0 -2
- package/dist/cdn/7HS5KX3J.js +0 -2
- package/dist/cdn/7UUYJTKT.js +0 -2
- package/dist/cdn/7V6OSTFC.js +0 -2
- package/dist/cdn/7VYYQ7BT.js +0 -2
- package/dist/cdn/ACJTJLZN.js +0 -2
- package/dist/cdn/AKD5UOVX.js +0 -2
- package/dist/cdn/C7LGDNB3.js +0 -14
- package/dist/cdn/CGJINV7H.js +0 -2
- package/dist/cdn/CJMUJXPL.js +0 -2
- package/dist/cdn/D2SS763Z.js +0 -2
- package/dist/cdn/FJO4KNOZ.js +0 -2
- package/dist/cdn/G3SF6U2U.js +0 -2
- package/dist/cdn/G6CR7JVM.js +0 -22
- package/dist/cdn/GL7BPKBN.js +0 -2
- package/dist/cdn/JO5ETMPS.js +0 -2
- package/dist/cdn/PUHRBGKB.js +0 -2
- package/dist/cdn/Q57QWN5W.js +0 -2
- package/dist/cdn/QUKNPVAF.js +0 -2
- package/dist/cdn/RBE55SWR.js +0 -2
- package/dist/cdn/SWH6ZHD4.js +0 -18
- package/dist/cdn/SZ2QSSB3.js +0 -2
- package/dist/cdn/T4RIGOXB.js +0 -2
- package/dist/cdn/W4JQDITQ.js +0 -36
- package/dist/cdn/XX6GHMNR.js +0 -2
- package/dist/cdn/YLVJA4ZE.js +0 -2
- package/dist/cdn/ZOEMBHRF.js +0 -2
- package/dist/cdn/ZRVZMPFN.js +0 -2
- package/dist/chunks/dataExplorationGraph.js +0 -254
- package/dist/chunks/helpGraph.js +0 -133
- package/dist/chunks/navigationGraph.js +0 -290
- package/dist/chunks/toolCallResponse.js +0 -33
package/dist/chunks/adapter.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
import H from "@arcgis/core/identity/IdentityManager.js";
|
|
3
3
|
import P from "@arcgis/core/portal/Portal.js";
|
|
4
4
|
import J from "@arcgis/core/request.js";
|
|
5
|
-
import { Annotation as
|
|
5
|
+
import { Annotation as y, messagesStateReducer as ee } from "@langchain/langgraph/web";
|
|
6
6
|
import "@arcgis/toolkit/string";
|
|
7
|
-
import {
|
|
7
|
+
import { j as le } from "./generateLayerDescriptions.js";
|
|
8
8
|
import "@langchain/core/messages";
|
|
9
9
|
import "@langchain/core/callbacks/dispatch/web";
|
|
10
10
|
import "@langchain/core/callbacks/base";
|
|
@@ -13,13 +13,13 @@ import "@arcgis/core/config.js";
|
|
|
13
13
|
import * as ce from "@arcgis/core/core/reactiveUtils.js";
|
|
14
14
|
import "@arcgis/core/layers/FeatureLayer.js";
|
|
15
15
|
import "@langchain/core/prompts";
|
|
16
|
-
import {
|
|
16
|
+
import { d as pe, a as G } from "./baseAgentState.js";
|
|
17
17
|
import { ToolNode as de } from "@langchain/langgraph/prebuilt";
|
|
18
18
|
import { s as T, a as S } from "./index.js";
|
|
19
19
|
import { clearFiltersTool as ue } from "../agents/tools/filter/clearFilters/adapter.js";
|
|
20
20
|
import { resetMapTool as he } from "../agents/tools/filter/resetMap/adapter.js";
|
|
21
|
-
import { setFeatureEffectTool as
|
|
22
|
-
import { getAttributeTool as
|
|
21
|
+
import { setFeatureEffectTool as me } from "../agents/tools/filter/setFeatureEffect/adapter.js";
|
|
22
|
+
import { getAttributeTool as ye } from "../agents/tools/query/getAttribute/adapter.js";
|
|
23
23
|
import { getStatisticsTool as ge } from "../agents/tools/query/getStatistics/adapter.js";
|
|
24
24
|
import { getTopFeaturesTool as fe } from "../agents/tools/query/getTopFeatures/adapter.js";
|
|
25
25
|
import { queryFeaturesTool as we } from "../agents/tools/query/queryFeatures/adapter.js";
|
|
@@ -38,8 +38,8 @@ import { getSchemesByTag as Ee } from "@arcgis/core/smartMapping/symbology/heatm
|
|
|
38
38
|
import { createRenderer as ze } from "@arcgis/core/smartMapping/renderers/predominance.js";
|
|
39
39
|
import { getSchemesByTag as ke } from "@arcgis/core/smartMapping/symbology/predominance.js";
|
|
40
40
|
import { createRenderer as Ae } from "@arcgis/core/smartMapping/renderers/relationship.js";
|
|
41
|
-
import { getSchemesByTag as
|
|
42
|
-
import { createAgeRenderer as
|
|
41
|
+
import { getSchemesByTag as Ne } from "@arcgis/core/smartMapping/symbology/relationship.js";
|
|
42
|
+
import { createAgeRenderer as qe, createContinuousRenderer as Me } from "@arcgis/core/smartMapping/renderers/size.js";
|
|
43
43
|
import { createRenderer as De } from "@arcgis/core/smartMapping/renderers/type.js";
|
|
44
44
|
import { getSchemesByTag as Le } from "@arcgis/core/smartMapping/symbology/type.js";
|
|
45
45
|
import Ge from "@arcgis/core/WebLinkChart.js";
|
|
@@ -47,20 +47,20 @@ import re from "@arcgis/core/rest/knowledgeGraph/GraphQueryStreaming.js";
|
|
|
47
47
|
import { fetchKnowledgeGraph as Y, executeQueryStreaming as je, executeSearchStreaming as Fe } from "@arcgis/core/rest/knowledgeGraphService.js";
|
|
48
48
|
import _e from "@arcgis/core/rest/knowledgeGraph/GraphSearchStreaming.js";
|
|
49
49
|
import { getBindParametersFromCypherQuery as Qe } from "@arcgis/core/applications/KnowledgeStudio/generalSharedKgUtils.js";
|
|
50
|
-
const k = (e, t) => t ?? e, va =
|
|
50
|
+
const k = (e, t) => t ?? e, va = y.Root({
|
|
51
51
|
...pe(),
|
|
52
52
|
// internal to the navigation agent
|
|
53
|
-
intent:
|
|
53
|
+
intent: y({
|
|
54
54
|
reducer: k
|
|
55
55
|
}),
|
|
56
|
-
vectorSearchLayerResults:
|
|
56
|
+
vectorSearchLayerResults: y({
|
|
57
57
|
reducer: k,
|
|
58
58
|
default: () => []
|
|
59
59
|
}),
|
|
60
|
-
vectorSearchFieldResults:
|
|
60
|
+
vectorSearchFieldResults: y({
|
|
61
61
|
reducer: k
|
|
62
62
|
}),
|
|
63
|
-
navigationInternalState:
|
|
63
|
+
navigationInternalState: y({
|
|
64
64
|
reducer: k,
|
|
65
65
|
default: () => ({
|
|
66
66
|
toolCallMessage: void 0
|
|
@@ -73,13 +73,17 @@ const k = (e, t) => t ?? e, va = m.Root({
|
|
|
73
73
|
"../agents/arcgisKnowledge/prompts/arcgis_knowledge_lucene_generation_prompt.md": () => import("./arcgis_knowledge_lucene_generation_prompt.js").then((e) => e.default),
|
|
74
74
|
"../agents/arcgisKnowledge/prompts/arcgis_knowledge_summarize_result_prompt.md": () => import("./arcgis_knowledge_summarize_result_prompt.js").then((e) => e.default),
|
|
75
75
|
"../agents/arcgisKnowledge/prompts/arcgis_knowledge_tool_prompt.md": () => import("./arcgis_knowledge_tool_prompt.js").then((e) => e.default),
|
|
76
|
-
"../agents/dataExploration/
|
|
77
|
-
"../agents/dataExploration/
|
|
78
|
-
"../agents/
|
|
79
|
-
"../agents/
|
|
76
|
+
"../agents/dataExploration/skills/filter/SKILL.md": () => import("./SKILL2.js").then((e) => e.default),
|
|
77
|
+
"../agents/dataExploration/skills/query/SKILL.md": () => import("./SKILL.js").then((e) => e.default),
|
|
78
|
+
"../agents/dataExplorationGraph/prompts/data_explore_filter_prompt.md": () => import("./data_explore_filter_prompt.js").then((e) => e.default),
|
|
79
|
+
"../agents/dataExplorationGraph/prompts/data_explore_query_prompt.md": () => import("./data_explore_query_prompt.js").then((e) => e.default),
|
|
80
|
+
"../agents/dataExplorationGraph/prompts/summarize_query_response_prompt.md": () => import("./summarize_query_response_prompt.js").then((e) => e.default),
|
|
81
|
+
"../agents/help/skills/help/SKILL.md": () => import("./SKILL3.js").then((e) => e.default),
|
|
82
|
+
"../agents/helpGraph/prompts/help_prompt.md": () => import("./help_prompt.js").then((e) => e.default),
|
|
80
83
|
"../agents/layerStyling/prompts/layer_styling_prompt.md": () => import("./layer_styling_prompt.js").then((e) => e.default),
|
|
81
|
-
"../agents/navigation/
|
|
82
|
-
"../agents/
|
|
84
|
+
"../agents/navigation/skills/navigation/SKILL.md": () => import("./SKILL4.js").then((e) => e.default),
|
|
85
|
+
"../agents/navigationGraph/prompts/navigation_intent_prompt.md": () => import("./navigation_intent_prompt.js").then((e) => e.default),
|
|
86
|
+
"../agents/navigationGraph/prompts/navigation_tool_prompt.md": () => import("./navigation_tool_prompt.js").then((e) => e.default)
|
|
83
87
|
});
|
|
84
88
|
async function L(e) {
|
|
85
89
|
const t = Object.entries(Z).find(([r]) => r.endsWith(`/${e}.md`));
|
|
@@ -93,24 +97,18 @@ ${Object.keys(Z).join(`
|
|
|
93
97
|
const Ie = (e, t = 300) => {
|
|
94
98
|
const r = e.replace(/\s+/gu, " ").replace(/[*_`#>\-]/gu, "").trim();
|
|
95
99
|
return r.length > t ? `${r.slice(0, t)}...` : r;
|
|
96
|
-
}, Ra = (
|
|
97
|
-
const o = a?.configurable?.services;
|
|
98
|
-
for (const i of e)
|
|
99
|
-
if (!o?.[i])
|
|
100
|
-
throw new Error(`${t} requires services.${i} to be available.`);
|
|
101
|
-
return r;
|
|
102
|
-
}, xa = m.Root({
|
|
100
|
+
}, Ra = y.Root({
|
|
103
101
|
...G(),
|
|
104
|
-
vectorSearchLayerIds:
|
|
105
|
-
vectorSearchFieldResults:
|
|
106
|
-
layerFieldInfo:
|
|
107
|
-
queryResponse:
|
|
108
|
-
dataExplorationMessages:
|
|
102
|
+
vectorSearchLayerIds: y(),
|
|
103
|
+
vectorSearchFieldResults: y(),
|
|
104
|
+
layerFieldInfo: y(),
|
|
105
|
+
queryResponse: y(),
|
|
106
|
+
dataExplorationMessages: y({
|
|
109
107
|
reducer: ee,
|
|
110
108
|
default: () => []
|
|
111
109
|
})
|
|
112
|
-
}), Oe = [
|
|
113
|
-
async function
|
|
110
|
+
}), Oe = [ye, ge, fe, we], xa = [me, he, ue], Ke = new de(Oe, { handleToolErrors: !1 });
|
|
111
|
+
async function Ca(e, t) {
|
|
114
112
|
const { messages: r } = await Ke.invoke({ messages: e.dataExplorationMessages }, t), a = [], o = [];
|
|
115
113
|
for (const i of r) {
|
|
116
114
|
const s = i.content;
|
|
@@ -231,7 +229,7 @@ const Je = c.object({
|
|
|
231
229
|
fields: c.array(c.string()).describe("The fields to use for the chart renderer (multiple numeric fields)"),
|
|
232
230
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
233
231
|
includeSize: c.boolean().optional().describe("Whether to vary the chart size (chart-size)")
|
|
234
|
-
}),
|
|
232
|
+
}), $a = g(He, {
|
|
235
233
|
name: "chart",
|
|
236
234
|
description: `Label: Charts
|
|
237
235
|
Description: Show the values of two or more categories as a proportion of the total using a pie chart.
|
|
@@ -314,7 +312,7 @@ const rr = c.object({
|
|
|
314
312
|
fields: c.array(c.string()).describe("The field(s) to use for the color-age renderer (temporal/date data)"),
|
|
315
313
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
316
314
|
theme: c.enum(["above-and-below", "above", "below", "centered-on", "extremes", "high-to-low"]).optional().describe("Optional theme for the color ramp")
|
|
317
|
-
}),
|
|
315
|
+
}), Pa = g(er, {
|
|
318
316
|
name: "color-age",
|
|
319
317
|
description: `Label: Age (color)
|
|
320
318
|
Description: Use colors along a continuous color ramp to represent the age of features. Age reflects the length of time from a start date to an end date.
|
|
@@ -393,7 +391,7 @@ const ir = c.object({
|
|
|
393
391
|
fields: c.array(c.string()).describe("The field(s) to use for the color renderer"),
|
|
394
392
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
395
393
|
theme: c.enum(["above-and-below", "above", "below", "centered-on", "extremes", "high-to-low"]).optional().describe("Optional theme for the color ramp")
|
|
396
|
-
}),
|
|
394
|
+
}), Ea = g(nr, {
|
|
397
395
|
name: "color",
|
|
398
396
|
description: `Label: Counts and Amounts (color)
|
|
399
397
|
Description: Vary color along a continuous color ramp to represent numeric or ranked data.
|
|
@@ -471,7 +469,7 @@ const dr = c.object({
|
|
|
471
469
|
fields: c.array(c.string()).describe("The fields to use for the color-size univariate renderer"),
|
|
472
470
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
473
471
|
theme: c.enum(["above-and-below", "above", "below", "centered-on", "extremes", "high-to-low"]).optional().describe("Optional theme for the color and size ramps")
|
|
474
|
-
}),
|
|
472
|
+
}), za = g(pr, {
|
|
475
473
|
name: "color-size-univariate",
|
|
476
474
|
description: `Label: Color and Size (univariate)
|
|
477
475
|
Description: Vary symbol size and color based on the values of two numeric attributes.
|
|
@@ -503,7 +501,7 @@ function ur(e) {
|
|
|
503
501
|
async function hr(e) {
|
|
504
502
|
return await Ce(e);
|
|
505
503
|
}
|
|
506
|
-
async function
|
|
504
|
+
async function mr({
|
|
507
505
|
arcgisMap: e,
|
|
508
506
|
arcgisMapView: t,
|
|
509
507
|
layerId: r,
|
|
@@ -527,13 +525,13 @@ async function yr({
|
|
|
527
525
|
return `Error applying dot density renderer: ${l instanceof Error ? l.message : String(l)}`;
|
|
528
526
|
}
|
|
529
527
|
}
|
|
530
|
-
async function
|
|
528
|
+
async function yr({
|
|
531
529
|
layerId: e,
|
|
532
530
|
fields: t,
|
|
533
531
|
colorSchemes: r
|
|
534
532
|
}, a) {
|
|
535
533
|
const { mapView: o } = v(a);
|
|
536
|
-
return await S({ type: "show-legend", data: { layerIds: [e] } }, a), await
|
|
534
|
+
return await S({ type: "show-legend", data: { layerIds: [e] } }, a), await mr({
|
|
537
535
|
arcgisMap: o.map,
|
|
538
536
|
arcgisMapView: o,
|
|
539
537
|
layerId: e,
|
|
@@ -545,7 +543,7 @@ const gr = c.object({
|
|
|
545
543
|
layerId: c.string().describe("The id of the layer to apply the dot density renderer to"),
|
|
546
544
|
fields: c.array(c.string()).describe("The field(s) to use for the dot density renderer (population or count data)"),
|
|
547
545
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use")
|
|
548
|
-
}),
|
|
546
|
+
}), ka = g(yr, {
|
|
549
547
|
name: "dot-density",
|
|
550
548
|
description: `Dot Density
|
|
551
549
|
Use dot density to visualize the distribution of one attribute or compare the density of multiple attributes. This is only valid for polygon layers.
|
|
@@ -620,7 +618,7 @@ const Sr = c.object({
|
|
|
620
618
|
layerId: c.string().describe("The id of the layer to apply the heatmap renderer to"),
|
|
621
619
|
fields: c.array(c.string()).describe("The field(s) to use for the heatmap renderer (typically point density)"),
|
|
622
620
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use")
|
|
623
|
-
}),
|
|
621
|
+
}), Aa = g(Tr, {
|
|
624
622
|
name: "heatmap",
|
|
625
623
|
description: `Label: Heat Map
|
|
626
624
|
Description: Show areas of high density with colors that appear to glow hotter. This is only valid for point layers.
|
|
@@ -718,7 +716,7 @@ function Pr(e) {
|
|
|
718
716
|
}, n = {
|
|
719
717
|
field: t[1]
|
|
720
718
|
};
|
|
721
|
-
return o && (i =
|
|
719
|
+
return o && (i = Ne({
|
|
722
720
|
geometryType: r.geometryType,
|
|
723
721
|
includedTags: o
|
|
724
722
|
})[0]), {
|
|
@@ -776,7 +774,7 @@ const Ar = c.object({
|
|
|
776
774
|
layerId: c.string().describe("The id of the layer to apply the relationship renderer to"),
|
|
777
775
|
fields: c.array(c.string()).describe("The two fields to use for the relationship renderer (bivariate visualization)"),
|
|
778
776
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use")
|
|
779
|
-
}),
|
|
777
|
+
}), qa = g(kr, {
|
|
780
778
|
name: "relationship",
|
|
781
779
|
description: `Label: Relationship
|
|
782
780
|
Description: Overlays two color ramps to represent the relationship between two numeric attributes.
|
|
@@ -785,7 +783,7 @@ const Ar = c.object({
|
|
|
785
783
|
Fields: This style requires two number fields.`,
|
|
786
784
|
schema: Ar
|
|
787
785
|
});
|
|
788
|
-
function
|
|
786
|
+
function Nr(e) {
|
|
789
787
|
const { fields: t, layer: r, view: a, theme: o } = e, i = t[0];
|
|
790
788
|
return {
|
|
791
789
|
layer: r,
|
|
@@ -797,8 +795,8 @@ function qr(e) {
|
|
|
797
795
|
outlineOptimizationEnabled: !0
|
|
798
796
|
};
|
|
799
797
|
}
|
|
800
|
-
async function
|
|
801
|
-
return await
|
|
798
|
+
async function qr(e) {
|
|
799
|
+
return await qe(e);
|
|
802
800
|
}
|
|
803
801
|
async function Mr({
|
|
804
802
|
arcgisMap: e,
|
|
@@ -820,7 +818,7 @@ async function Mr({
|
|
|
820
818
|
theme: i
|
|
821
819
|
};
|
|
822
820
|
try {
|
|
823
|
-
const p =
|
|
821
|
+
const p = Nr(l), d = await qr(p);
|
|
824
822
|
return n.renderer = d.renderer, n.visible = !0, `Size-age renderer applied to layer: ${n.title ?? n.id} using fields ${a.join(", ")}`;
|
|
825
823
|
} catch (p) {
|
|
826
824
|
return `Error applying size-age renderer: ${p instanceof Error ? p.message : String(p)}`;
|
|
@@ -847,7 +845,7 @@ const Lr = c.object({
|
|
|
847
845
|
fields: c.array(c.string()).describe("The field(s) to use for the size-age renderer (temporal data with size)"),
|
|
848
846
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
849
847
|
theme: c.enum(["above-and-below", "above", "below", "centered-on", "extremes", "high-to-low"]).optional().describe("Optional theme for the size ramp")
|
|
850
|
-
}),
|
|
848
|
+
}), Ma = g(Dr, {
|
|
851
849
|
name: "size-age",
|
|
852
850
|
description: `Label: Age (size)
|
|
853
851
|
Description: Vary symbol sizes along a continuous ramp to represent the age of features. Age reflects the length of time from a start date to an end date.
|
|
@@ -920,7 +918,7 @@ const Qr = c.object({
|
|
|
920
918
|
fields: c.array(c.string()).describe("The field(s) to use for the size renderer (numeric data)"),
|
|
921
919
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
922
920
|
theme: c.enum(["above-and-below", "above", "below", "centered-on", "extremes", "high-to-low"]).optional().describe("Optional theme for the size ramp")
|
|
923
|
-
}),
|
|
921
|
+
}), Da = g(_r, {
|
|
924
922
|
name: "size",
|
|
925
923
|
description: `Label: Counts and Amounts (size)
|
|
926
924
|
Description: Vary symbol sizes along a continuous ramp to represent numeric or ranked data.
|
|
@@ -1002,7 +1000,7 @@ const Br = c.object({
|
|
|
1002
1000
|
fields: c.array(c.string()).describe("The field(s) to use for the type renderer (categorical data)"),
|
|
1003
1001
|
colorSchemes: c.array(c.string()).optional().describe("Optional color scheme tags to use"),
|
|
1004
1002
|
theme: c.enum(["above-and-below", "above", "below", "centered-on", "extremes", "high-to-low"]).optional().describe("Optional theme for the color scheme")
|
|
1005
|
-
}),
|
|
1003
|
+
}), La = g(Vr, {
|
|
1006
1004
|
name: "type",
|
|
1007
1005
|
description: `Label: Types (unique symbols)
|
|
1008
1006
|
Description: Represent features as categories with different symbol colors or shapes. Examples include type of tree, road class, or province name.
|
|
@@ -1010,31 +1008,31 @@ Keywords: categorical, category, type, unique, discrete, point of interest, regi
|
|
|
1010
1008
|
Example: Color each feature based on the region it belongs to
|
|
1011
1009
|
Fields: This style requires a single field which may be a string, number, or date type. It is usually a string.`,
|
|
1012
1010
|
schema: Br
|
|
1013
|
-
}),
|
|
1011
|
+
}), Ga = y.Root({
|
|
1014
1012
|
...G(),
|
|
1015
|
-
vectorSearchLayerIds:
|
|
1016
|
-
vectorSearchFieldResults:
|
|
1017
|
-
layerFieldInfo:
|
|
1018
|
-
selectedLayerId:
|
|
1019
|
-
}),
|
|
1013
|
+
vectorSearchLayerIds: y(),
|
|
1014
|
+
vectorSearchFieldResults: y(),
|
|
1015
|
+
layerFieldInfo: y(),
|
|
1016
|
+
selectedLayerId: y()
|
|
1017
|
+
}), ja = y.Root({
|
|
1020
1018
|
...G(),
|
|
1021
1019
|
// internal to the help agent
|
|
1022
|
-
helpInternalState:
|
|
1020
|
+
helpInternalState: y({
|
|
1023
1021
|
reducer: k,
|
|
1024
1022
|
default: () => ({
|
|
1025
1023
|
toolCallMessage: void 0
|
|
1026
1024
|
})
|
|
1027
1025
|
})
|
|
1028
|
-
}),
|
|
1026
|
+
}), Fa = y.Root({
|
|
1029
1027
|
...G(),
|
|
1030
|
-
intent:
|
|
1028
|
+
intent: y({
|
|
1031
1029
|
reducer: (e, t) => t
|
|
1032
1030
|
}),
|
|
1033
|
-
arcgisKnowledgeMessages:
|
|
1031
|
+
arcgisKnowledgeMessages: y({
|
|
1034
1032
|
reducer: ee,
|
|
1035
1033
|
default: () => []
|
|
1036
1034
|
}),
|
|
1037
|
-
arcgisKnowledgeToolResult:
|
|
1035
|
+
arcgisKnowledgeToolResult: y({
|
|
1038
1036
|
reducer: (e, t) => t,
|
|
1039
1037
|
default: () => null
|
|
1040
1038
|
})
|
|
@@ -1050,7 +1048,7 @@ function x(e) {
|
|
|
1050
1048
|
async function j(e) {
|
|
1051
1049
|
!x(e) || !e.map.diagramNodesExtent || await e.goTo(e.map.diagramNodesExtent);
|
|
1052
1050
|
}
|
|
1053
|
-
function
|
|
1051
|
+
function N(e) {
|
|
1054
1052
|
const r = e?.configurable?.context;
|
|
1055
1053
|
if (!r || typeof r != "object")
|
|
1056
1054
|
throw new Error("ArcgisKnowledgeAgent context missing");
|
|
@@ -1061,14 +1059,14 @@ function q(e) {
|
|
|
1061
1059
|
view: a
|
|
1062
1060
|
};
|
|
1063
1061
|
}
|
|
1064
|
-
function
|
|
1062
|
+
function _a(e) {
|
|
1065
1063
|
const r = e?.configurable?.context;
|
|
1066
1064
|
if (te(e) === "knowledgeGraph")
|
|
1067
1065
|
return "knowledgeGraph";
|
|
1068
1066
|
const o = r.view;
|
|
1069
1067
|
return x(o) ? "linkChart" : (B(o), "map");
|
|
1070
1068
|
}
|
|
1071
|
-
async function
|
|
1069
|
+
async function q(e) {
|
|
1072
1070
|
const r = e?.configurable?.context;
|
|
1073
1071
|
if (te(e) === "knowledgeGraph")
|
|
1074
1072
|
return r;
|
|
@@ -1287,7 +1285,7 @@ async function U(e, t, r, a, o) {
|
|
|
1287
1285
|
{ text: `Periodically requesting status of job from ArcGIS AI Services${"...".substring(0, f)}` },
|
|
1288
1286
|
a
|
|
1289
1287
|
), f = f % 3 + 1;
|
|
1290
|
-
const
|
|
1288
|
+
const m = await J(`${r}/chat`, {
|
|
1291
1289
|
method: "post",
|
|
1292
1290
|
body: JSON.stringify({
|
|
1293
1291
|
conversationId: n.data.conversationId,
|
|
@@ -1300,21 +1298,21 @@ async function U(e, t, r, a, o) {
|
|
|
1300
1298
|
},
|
|
1301
1299
|
signal: s
|
|
1302
1300
|
});
|
|
1303
|
-
if (
|
|
1304
|
-
throw new Error(`Graph query service polling returned an error: ${
|
|
1305
|
-
cause:
|
|
1301
|
+
if (m.httpStatus !== 200)
|
|
1302
|
+
throw new Error(`Graph query service polling returned an error: ${m.httpStatus}`, {
|
|
1303
|
+
cause: m.data
|
|
1306
1304
|
});
|
|
1307
|
-
if (
|
|
1308
|
-
if (
|
|
1309
|
-
throw new Error(`Unexpected response from graph query service polling. Message: ${
|
|
1310
|
-
cause:
|
|
1305
|
+
if (m.data.context?.kind) {
|
|
1306
|
+
if (m.data.context.kind !== "GraphQueryGenerationResponse")
|
|
1307
|
+
throw new Error(`Unexpected response from graph query service polling. Message: ${m.data.message}`, {
|
|
1308
|
+
cause: m.data
|
|
1311
1309
|
});
|
|
1312
|
-
u =
|
|
1313
|
-
} else if (!
|
|
1310
|
+
u = m.data.context.graphQuery, h = m.data.message || "", l = !0;
|
|
1311
|
+
} else if (!m.data.hasMore)
|
|
1314
1312
|
l = !0;
|
|
1315
1313
|
else if (Date.now() - p > 6e4)
|
|
1316
1314
|
throw new Error("Graph query service polling timed out after 1 minute.");
|
|
1317
|
-
d =
|
|
1315
|
+
d = m.data.sequenceNumber;
|
|
1318
1316
|
}
|
|
1319
1317
|
return { graphQuery: u, explanation: h };
|
|
1320
1318
|
}
|
|
@@ -1416,7 +1414,7 @@ const it = async ({
|
|
|
1416
1414
|
const h = await je(e, t, o);
|
|
1417
1415
|
n = h.resultHeader;
|
|
1418
1416
|
const f = h.resultRowsStream.getReader();
|
|
1419
|
-
let
|
|
1417
|
+
let m = 0;
|
|
1420
1418
|
const w = Date.now(), b = !1;
|
|
1421
1419
|
for (; ; ) {
|
|
1422
1420
|
const { done: R, value: z } = await f.read();
|
|
@@ -1425,7 +1423,7 @@ const it = async ({
|
|
|
1425
1423
|
if (!b && s && Date.now() - w > s)
|
|
1426
1424
|
return p.abort(), { type: "timeout" };
|
|
1427
1425
|
for (const se of z) {
|
|
1428
|
-
if (
|
|
1426
|
+
if (m++, i && m > i)
|
|
1429
1427
|
return p.abort(), { type: "success", rowLimitReached: !0, resultHeader: n, processedResult: l };
|
|
1430
1428
|
l = a(l, se);
|
|
1431
1429
|
}
|
|
@@ -1467,7 +1465,7 @@ async function oe({
|
|
|
1467
1465
|
},
|
|
1468
1466
|
p
|
|
1469
1467
|
);
|
|
1470
|
-
const f = await st(h.graphQuery, t),
|
|
1468
|
+
const f = await st(h.graphQuery, t), m = await it({
|
|
1471
1469
|
kg: r,
|
|
1472
1470
|
queryParams: new re({
|
|
1473
1471
|
openCypherQuery: h.graphQuery,
|
|
@@ -1478,17 +1476,17 @@ async function oe({
|
|
|
1478
1476
|
requestOptions: s,
|
|
1479
1477
|
queryRowLimit: n,
|
|
1480
1478
|
queryTimeoutMs: l
|
|
1481
|
-
}), w =
|
|
1482
|
-
if (
|
|
1479
|
+
}), w = m.type === "aborted" ? "Query execution was aborted." : m.type === "timeout" ? "Query execution timed out." : m.type === "error" ? `Query failed with error: ${m.errorMessage}` : "";
|
|
1480
|
+
if (m.type === "success")
|
|
1483
1481
|
return {
|
|
1484
1482
|
type: "success",
|
|
1485
1483
|
graphQuery: h.graphQuery,
|
|
1486
1484
|
explanation: h.explanation,
|
|
1487
|
-
rowLimitReached:
|
|
1488
|
-
resultHeader:
|
|
1489
|
-
processedResult:
|
|
1485
|
+
rowLimitReached: m.rowLimitReached,
|
|
1486
|
+
resultHeader: m.resultHeader,
|
|
1487
|
+
processedResult: m.processedResult
|
|
1490
1488
|
};
|
|
1491
|
-
if (
|
|
1489
|
+
if (m.type === "aborted")
|
|
1492
1490
|
return {
|
|
1493
1491
|
type: "aborted",
|
|
1494
1492
|
errorMessage: w,
|
|
@@ -1496,7 +1494,7 @@ async function oe({
|
|
|
1496
1494
|
explanation: h.explanation
|
|
1497
1495
|
};
|
|
1498
1496
|
if (u >= $)
|
|
1499
|
-
return
|
|
1497
|
+
return m.type === "timeout" ? {
|
|
1500
1498
|
type: "timeout",
|
|
1501
1499
|
errorMessage: w,
|
|
1502
1500
|
graphQuery: h.graphQuery,
|
|
@@ -1504,7 +1502,7 @@ async function oe({
|
|
|
1504
1502
|
} : {
|
|
1505
1503
|
type: "execution-error",
|
|
1506
1504
|
errorMessage: w,
|
|
1507
|
-
error:
|
|
1505
|
+
error: m.error,
|
|
1508
1506
|
graphQuery: h.graphQuery,
|
|
1509
1507
|
explanation: h.explanation
|
|
1510
1508
|
};
|
|
@@ -1558,11 +1556,11 @@ const st = async (e, t) => {
|
|
|
1558
1556
|
}),
|
|
1559
1557
|
i
|
|
1560
1558
|
)).resultRowsStream.getReader();
|
|
1561
|
-
let
|
|
1562
|
-
for (; !
|
|
1559
|
+
let m = !1;
|
|
1560
|
+
for (; !m; ) {
|
|
1563
1561
|
const { done: w, value: b } = await f.read();
|
|
1564
1562
|
if (w) {
|
|
1565
|
-
|
|
1563
|
+
m = !0;
|
|
1566
1564
|
break;
|
|
1567
1565
|
}
|
|
1568
1566
|
for (const R of b)
|
|
@@ -1632,8 +1630,8 @@ async function ct(e, t, r, a, o, i) {
|
|
|
1632
1630
|
graphQueryServiceUrl: a,
|
|
1633
1631
|
targetStructure: /* @__PURE__ */ new Map(),
|
|
1634
1632
|
targetStructureReducer: (h, f) => {
|
|
1635
|
-
for (const
|
|
1636
|
-
et(
|
|
1633
|
+
for (const m of f)
|
|
1634
|
+
et(m, h);
|
|
1637
1635
|
return h;
|
|
1638
1636
|
},
|
|
1639
1637
|
requestOptions: {
|
|
@@ -1661,7 +1659,7 @@ const M = "addRecords", pt = c.object({
|
|
|
1661
1659
|
"The user's inquiry and context required in order to generate a cypher query that will be used to add records to the link chart."
|
|
1662
1660
|
)
|
|
1663
1661
|
}), dt = async ({ prompt: e }, t) => {
|
|
1664
|
-
const { knowledgeGraph: r } = await
|
|
1662
|
+
const { knowledgeGraph: r } = await q(t), a = N(t), { view: o } = a, s = P.getDefault().helperServices, {
|
|
1665
1663
|
enhancedPrompt: n,
|
|
1666
1664
|
bindParameters: l,
|
|
1667
1665
|
allNamedTypesFullyDynamic: p
|
|
@@ -1712,7 +1710,7 @@ Number of records added: ${h.length}`,
|
|
|
1712
1710
|
error: d
|
|
1713
1711
|
};
|
|
1714
1712
|
}
|
|
1715
|
-
},
|
|
1713
|
+
}, Qa = g(dt, {
|
|
1716
1714
|
name: M,
|
|
1717
1715
|
description: `Adds records (entities or relationships) to the current link chart visualization from an inquiry into the knowledge graph data. The inquiry will retrieve data from the graph database that will serve as the basis for the records to be added to the link chart. The user should have explicitly requested to add records to the current link chart from their prompt. "add to new link chart" is not a valid prompt for this tool.
|
|
1718
1716
|
|
|
@@ -1744,8 +1742,8 @@ const _ = "applyLayout", ht = c.object({
|
|
|
1744
1742
|
]).describe(
|
|
1745
1743
|
"The layout mode to apply to the link chart. The value must be one of the following: organic-standard, organic-community, basic-grid, hierarchical-bottom-to-top, radial-root-centric, tree-left-to-right, geographic-organic-standard, chronological-mono-timeline, chronological-multi-timeline"
|
|
1746
1744
|
)
|
|
1747
|
-
}),
|
|
1748
|
-
const { view: r } =
|
|
1745
|
+
}), mt = async ({ layout: e }, t) => {
|
|
1746
|
+
const { view: r } = N(t);
|
|
1749
1747
|
if (x(r)) {
|
|
1750
1748
|
const { appliedLayout: a } = await ut(e, r);
|
|
1751
1749
|
return {
|
|
@@ -1763,20 +1761,20 @@ const _ = "applyLayout", ht = c.object({
|
|
|
1763
1761
|
errorMessage: "The applyLayout tool can only be used with a LinkChartView.",
|
|
1764
1762
|
error: new Error()
|
|
1765
1763
|
};
|
|
1766
|
-
},
|
|
1764
|
+
}, Ia = g(mt, {
|
|
1767
1765
|
name: _,
|
|
1768
1766
|
description: "Apply a diagram layout to the link chart",
|
|
1769
1767
|
schema: ht
|
|
1770
1768
|
});
|
|
1771
|
-
async function
|
|
1769
|
+
async function yt(e, t) {
|
|
1772
1770
|
return t.map?.changeNonspatialDataDisplay(e), await j(t), { appliedNonspatialDataDisplayMode: e };
|
|
1773
1771
|
}
|
|
1774
1772
|
const Q = "changeNonspatialVisibility", gt = c.object({
|
|
1775
1773
|
setting: c.enum(["hidden", "visible"]).describe("The setting of nonspatial visibility")
|
|
1776
1774
|
}), ft = async ({ setting: e }, t) => {
|
|
1777
|
-
const { view: r } =
|
|
1775
|
+
const { view: r } = N(t);
|
|
1778
1776
|
if (x(r)) {
|
|
1779
|
-
const { appliedNonspatialDataDisplayMode: a } = await
|
|
1777
|
+
const { appliedNonspatialDataDisplayMode: a } = await yt(e, r);
|
|
1780
1778
|
return {
|
|
1781
1779
|
toolName: Q,
|
|
1782
1780
|
status: "success",
|
|
@@ -1792,7 +1790,7 @@ const Q = "changeNonspatialVisibility", gt = c.object({
|
|
|
1792
1790
|
errorMessage: "The changeNonspatialVisibility tool can only be used with a LinkChartView.",
|
|
1793
1791
|
error: new Error()
|
|
1794
1792
|
};
|
|
1795
|
-
},
|
|
1793
|
+
}, Oa = g(ft, {
|
|
1796
1794
|
name: Q,
|
|
1797
1795
|
description: "Change whether or not nonspatial data is visible in the link chart. The value must be either 'hidden' or 'visible'.",
|
|
1798
1796
|
schema: gt
|
|
@@ -1854,7 +1852,7 @@ const D = "createLinkChart", bt = c.object({
|
|
|
1854
1852
|
"The user's inquiry and context required in order to generate a cypher query that will be used to create a link chart visualization. Only include information relevant to generating a cypher query. Do not suggest entity types, relationship types or properties. Do not include limits or formatting instructions for the query results unless specifically requested by the user. The prompt should be focused on the data the user wants to see in the link chart, not how to generate it."
|
|
1855
1853
|
)
|
|
1856
1854
|
}), Tt = async ({ prompt: e }, t) => {
|
|
1857
|
-
const { knowledgeGraph: r } = await
|
|
1855
|
+
const { knowledgeGraph: r } = await q(t), { view: a } = N(t);
|
|
1858
1856
|
if (x(a)) {
|
|
1859
1857
|
const i = P.getDefault().helperServices, s = await wt(
|
|
1860
1858
|
`${e}
|
|
@@ -1892,7 +1890,7 @@ Explanation: ${l}`,
|
|
|
1892
1890
|
errorMessage: "The createLinkChart tool can only be used with a LinkChartView.",
|
|
1893
1891
|
error: new Error()
|
|
1894
1892
|
};
|
|
1895
|
-
},
|
|
1893
|
+
}, Ka = g(Tt, {
|
|
1896
1894
|
name: D,
|
|
1897
1895
|
description: "Creates a new link chart visualization from an inquiry into the knowledge graph data. The inquiry will retrieve data from the graph database that will serve as the basis for the new link chart. The user should have explicitly requested the creation of a new link chart from their prompt using language like 'create new link chart' or 'add to new link chart'.",
|
|
1898
1896
|
schema: bt
|
|
@@ -1901,10 +1899,10 @@ Explanation: ${l}`,
|
|
|
1901
1899
|
"The user's inquiry into the knowledge graph, from which a cypher query will be generated and executed to answer the inquiry. Only include entity types, relationship types or properties if they are provided in the user prompt or prior steps. Do not suggest entity types, relationship types or properties. Do not include limits, information on what to return, instructions on how to write the query, or formatting instructions for the query results unless specifically requested by the user."
|
|
1902
1900
|
)
|
|
1903
1901
|
}), vt = async ({ prompt: e }, t) => {
|
|
1904
|
-
const { knowledgeGraph: r } = await
|
|
1902
|
+
const { knowledgeGraph: r } = await q(t), o = P.getDefault().helperServices;
|
|
1905
1903
|
let i = e, s = null, n = null;
|
|
1906
1904
|
try {
|
|
1907
|
-
({ view: n } =
|
|
1905
|
+
({ view: n } = N(t));
|
|
1908
1906
|
} catch {
|
|
1909
1907
|
}
|
|
1910
1908
|
n && ({ enhancedPrompt: i, bindParameters: s } = await ie({
|
|
@@ -1942,7 +1940,7 @@ Explanation: ${l}`,
|
|
|
1942
1940
|
R,
|
|
1943
1941
|
(z) => ae(z)
|
|
1944
1942
|
);
|
|
1945
|
-
const
|
|
1943
|
+
const m = 50, w = u.slice(0, m).map((b) => JSON.stringify(b));
|
|
1946
1944
|
return {
|
|
1947
1945
|
toolName: I,
|
|
1948
1946
|
status: "success",
|
|
@@ -1957,7 +1955,7 @@ ${w.length} result(s) found.
|
|
|
1957
1955
|
|
|
1958
1956
|
Column Headers: ${f.join(", ")}
|
|
1959
1957
|
|
|
1960
|
-
${w.length >
|
|
1958
|
+
${w.length > m ? `Showing top ${m} results:
|
|
1961
1959
|
|
|
1962
1960
|
` : `Results:
|
|
1963
1961
|
|
|
@@ -1975,14 +1973,14 @@ ${w.length > y ? `Showing top ${y} results:
|
|
|
1975
1973
|
queryResults: u
|
|
1976
1974
|
}
|
|
1977
1975
|
};
|
|
1978
|
-
},
|
|
1976
|
+
}, Va = g(vt, {
|
|
1979
1977
|
name: I,
|
|
1980
1978
|
description: "Allows users to explore the data in their knowledge graph via cypher query. Generates and executes a cypher query based on the user's inquiry into the knowledge graph, and displays the results in the chat pane without modifying the user's link chart if any. Use this tool when the user is asking an exploratory question about their data as a whole that can be answered via cypher query, for example 'What are the top 5 suppliers by total parts cost?' or 'How many employees do we have in each department?'.",
|
|
1981
1979
|
schema: St
|
|
1982
1980
|
}), O = "generateCypher", Rt = c.object({
|
|
1983
1981
|
prompt: c.string().describe("The user's inquiry into the knowledge graph that needs to be translated into a cypher query.")
|
|
1984
1982
|
}), xt = async ({ prompt: e }, t) => {
|
|
1985
|
-
const { knowledgeGraph: r } = await
|
|
1983
|
+
const { knowledgeGraph: r } = await q(t), o = P.getDefault().helperServices;
|
|
1986
1984
|
try {
|
|
1987
1985
|
const { graphQuery: i, explanation: s } = await Zr(
|
|
1988
1986
|
e,
|
|
@@ -2011,7 +2009,7 @@ Explanation: ${s}`,
|
|
|
2011
2009
|
error: i
|
|
2012
2010
|
};
|
|
2013
2011
|
}
|
|
2014
|
-
},
|
|
2012
|
+
}, Ba = g(xt, {
|
|
2015
2013
|
name: O,
|
|
2016
2014
|
description: "Generates an Open Cypher query based on the user's prompt which represents an inquiry into the data of the knowledge service and its graph database, attempting to filter based on certain conditions and traverse specified relationships. The generated query should be syntactically correct and optimized for performance.",
|
|
2017
2015
|
schema: Rt
|
|
@@ -2062,7 +2060,7 @@ const K = "searchGraphData", Pt = c.object({
|
|
|
2062
2060
|
"The user's inquiry into the knowledge graph, from which a lucene search query will be generated and executed against the graph to return relevant results."
|
|
2063
2061
|
)
|
|
2064
2062
|
}), Et = async ({ prompt: e }, t) => {
|
|
2065
|
-
const { knowledgeGraph: r } = await
|
|
2063
|
+
const { knowledgeGraph: r } = await q(t);
|
|
2066
2064
|
await T({ text: "Generating search query for the user inquiry" }, t);
|
|
2067
2065
|
const a = await $t(e, r, t);
|
|
2068
2066
|
await T({ text: "Executing graph search with generated search query" }, t);
|
|
@@ -2110,7 +2108,7 @@ const K = "searchGraphData", Pt = c.object({
|
|
|
2110
2108
|
searchResults: o.results
|
|
2111
2109
|
}
|
|
2112
2110
|
};
|
|
2113
|
-
},
|
|
2111
|
+
}, Wa = g(Et, {
|
|
2114
2112
|
name: K,
|
|
2115
2113
|
description: `
|
|
2116
2114
|
Search the knowledge graph using one or more search texts, using lucene search syntax, against indexed string properties defined on their entities and relationships. Use this tool when the user asks a question about their knowledge graph data as a whole, that could be answered via lucene text search of properties stored on graph elements, e.g requiring fuzzy matching. Otherwise if the inquiry is looking for connected records (e.g. paths), data aggregations, etc explore the data via the queryGraphData tool.
|
|
@@ -2125,36 +2123,35 @@ const K = "searchGraphData", Pt = c.object({
|
|
|
2125
2123
|
schema: Pt
|
|
2126
2124
|
});
|
|
2127
2125
|
export {
|
|
2128
|
-
|
|
2129
|
-
xa as D,
|
|
2126
|
+
Ra as D,
|
|
2130
2127
|
W as G,
|
|
2131
|
-
|
|
2132
|
-
|
|
2128
|
+
ja as H,
|
|
2129
|
+
Ga as L,
|
|
2133
2130
|
va as N,
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2131
|
+
Ia as a,
|
|
2132
|
+
Ka as b,
|
|
2133
|
+
Oa as c,
|
|
2134
|
+
Qa as d,
|
|
2135
|
+
L as e,
|
|
2136
|
+
_a as f,
|
|
2137
|
+
Ba as g,
|
|
2138
|
+
q as h,
|
|
2139
|
+
Fa as i,
|
|
2140
|
+
$a as j,
|
|
2141
|
+
Pa as k,
|
|
2142
|
+
Ea as l,
|
|
2143
|
+
za as m,
|
|
2144
|
+
ka as n,
|
|
2145
|
+
Aa as o,
|
|
2146
|
+
Na as p,
|
|
2147
|
+
Va as q,
|
|
2148
|
+
qa as r,
|
|
2149
|
+
Wa as s,
|
|
2153
2150
|
Ie as t,
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2151
|
+
Ma as u,
|
|
2152
|
+
Da as v,
|
|
2153
|
+
La as w,
|
|
2154
|
+
xa as x,
|
|
2155
|
+
Oe as y,
|
|
2156
|
+
Ca as z
|
|
2160
2157
|
};
|