@arcgis/portal-components 5.1.0-next.116 → 5.1.0-next.118
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/cdn/3AFLX4RZ.js +31 -0
- package/dist/cdn/3V7XYFTD.js +43 -0
- package/dist/cdn/5NFLNDY2.js +2 -0
- package/dist/cdn/65JPRIL4.js +98 -0
- package/dist/cdn/7WH33C6J.js +45 -0
- package/dist/cdn/C44LYN55.js +128 -0
- package/dist/cdn/D42PED2R.js +2 -0
- package/dist/cdn/GOMFFUFI.js +5 -0
- package/dist/cdn/HWLUVMK4.js +5 -0
- package/dist/cdn/IBYY5ORN.js +122 -0
- package/dist/cdn/{5YLGOBIN.js → MUVBI5FC.js} +1 -1
- package/dist/cdn/NX4L2LC2.js +2 -0
- package/dist/cdn/SX4KDMYV.js +69 -0
- package/dist/cdn/TKQAFRBM.js +36 -0
- package/dist/cdn/{QWGLUXW5.js → TQLNWCB2.js} +1 -1
- package/dist/cdn/U5EQ4SIR.js +74 -0
- package/dist/cdn/{NXPJIMEV.js → UZI3SZ4Q.js} +1 -1
- package/dist/cdn/{HATVE2OT.js → VTKPJRQW.js} +1 -1
- package/dist/cdn/{CDDNZIPE.js → WDSJYJ5S.js} +1 -1
- package/dist/cdn/YJK6JAPE.js +422 -0
- package/dist/cdn/YR52C7CN.js +2 -0
- package/dist/cdn/ZJYTQIYE.js +54 -0
- package/dist/cdn/ZYJMB7IU.js +516 -0
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.ar.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.bg.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.bs.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.ca.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.cs.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.da.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.de.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.el.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.es.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.et.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.fi.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.fr.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.he.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.hr.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.hu.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.id.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.it.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.ja.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.ko.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.lt.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.lv.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.nl.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.no.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.pl.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.pt-BR.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.pt-PT.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.ro.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.ru.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.sk.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.sl.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.sr.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.sv.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.th.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.tr.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.uk.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.vi.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.zh-CN.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.zh-HK.json +1 -1
- package/dist/cdn/assets/portal-ai-assistant/t9n/messages.zh-TW.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.ar.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.bg.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.bs.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.ca.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.cs.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.da.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.de.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.el.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.es.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.et.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.fi.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.fr.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.he.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.hr.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.hu.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.id.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.it.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.ja.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.ko.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.lt.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.lv.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.nl.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.no.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.pl.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.pt-BR.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.pt-PT.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.ro.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.ru.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.sk.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.sl.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.sr.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.sv.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.th.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.tr.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.uk.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.vi.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.zh-CN.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.zh-HK.json +1 -1
- package/dist/cdn/assets/portal-item-type/t9n/messages.zh-TW.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.ar.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.bg.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.bs.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.ca.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.cs.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.da.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.de.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.el.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.en.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.es.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.et.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.fi.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.fr.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.he.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.hr.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.hu.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.id.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.it.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.ja.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.ko.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.lt.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.lv.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.nl.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.no.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.pl.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.pt-BR.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.pt-PT.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.ro.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.ru.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.sk.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.sl.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.sr.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.sv.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.th.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.tr.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.uk.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.vi.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.zh-CN.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.zh-HK.json +1 -1
- package/dist/cdn/assets/portal-replacement-item-redirect/t9n/messages.zh-TW.json +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/user.js +4 -109
- package/dist/chunks/user2.js +113 -0
- package/dist/components/arcgis-portal-ai-assistant/customElement.js +1 -1
- package/dist/components/arcgis-portal-mentionable-text-area/customElement.js +1 -1
- package/dist/components/arcgis-portal-replacement-item-redirect/customElement.d.ts +3 -3
- package/dist/components/arcgis-portal-replacement-item-redirect/customElement.js +118 -61
- package/dist/components/arcgis-portal-user-avatar/customElement.js +24 -27
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/loader.js +1 -1
- package/package.json +5 -6
- package/dist/cdn/2I6FOF3Y.js +0 -397
- package/dist/cdn/LKV32QEU.js +0 -2
- package/dist/cdn/NG5R67AA.js +0 -2
- package/dist/cdn/TQUCMPPA.js +0 -272
- package/dist/cdn/ZOLYHK6X.js +0 -2
- /package/dist/cdn/{3OPKWSWR.js → 34BMNP6G.js} +0 -0
- /package/dist/cdn/{JQKWT7SI.js → FPAFR5IL.js} +0 -0
- /package/dist/cdn/{N5K4DR3J.js → FPKINYFN.js} +0 -0
- /package/dist/cdn/{3OTUKLZI.js → HSYQIF6A.js} +0 -0
- /package/dist/cdn/{HSCKNOLC.js → PA3PQ4XH.js} +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`# ArcgisKnowledge Tool Instructions
|
|
3
|
+
|
|
4
|
+
You are an assistant that helps users answer questions and perform operations on their knowledge graph, map or link chart. You have been assigned the task below, which must be achieved by calling a single tool.
|
|
5
|
+
|
|
6
|
+
## Task Details:
|
|
7
|
+
|
|
8
|
+
Assigned task:
|
|
9
|
+
{assignedTask}
|
|
10
|
+
|
|
11
|
+
User Request:
|
|
12
|
+
{userRequest}
|
|
13
|
+
|
|
14
|
+
Prior steps:
|
|
15
|
+
{priorSteps}
|
|
16
|
+
|
|
17
|
+
Context type:
|
|
18
|
+
{contextType}
|
|
19
|
+
|
|
20
|
+
## Rules:
|
|
21
|
+
|
|
22
|
+
1. Use the provided context type above for the following rule. If the context type is a map, you may never call any of the following arcgisKnowledge tools: changeNonspatialVisibility, applyLayout, createLinkChart.
|
|
23
|
+
|
|
24
|
+
2. Use the provided context type above for the following rule. If the context type is a knowledgeGraph, you may never call any of the following arcgisKnowledge tools: changeNonspatialVisibility, applyLayout, createLinkChart, addRecords.
|
|
25
|
+
|
|
26
|
+
3. If no tools apply to the assigned task, return zero tool calls and an empty message.
|
|
27
|
+
|
|
28
|
+
4. If a tool is found for the assigned task, call exactly one arcgisKnowledge tool, with the appropriate arguments given the assigned task. Use the provided user request or prior steps only if needed for context based on the assigned task.
|
|
29
|
+
|
|
30
|
+
5. CRITICAL: You are FORBIDDEN from making multiple tool calls. You MUST make exactly ONE tool call or ZERO tool calls.
|
|
31
|
+
`;export{e as default};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`## Navigation Agent - Tool Intent Classifier
|
|
3
|
+
|
|
4
|
+
You are an assistant that classifies the assigned task intent for navigation agent.
|
|
5
|
+
|
|
6
|
+
You are given the following tool options:
|
|
7
|
+
{tools}
|
|
8
|
+
|
|
9
|
+
Bookmarks: {bookmarks}
|
|
10
|
+
|
|
11
|
+
Assigned task:
|
|
12
|
+
{assignedTask}
|
|
13
|
+
|
|
14
|
+
Latest user request:
|
|
15
|
+
{userRequest}
|
|
16
|
+
|
|
17
|
+
Prior steps:
|
|
18
|
+
{priorSteps}
|
|
19
|
+
|
|
20
|
+
Use the assigned task as the primary instruction for the current query. The question will **not** be restated again here.
|
|
21
|
+
Use the latest user request as supporting context when needed.
|
|
22
|
+
Use prior steps only when the assigned task clearly depends on earlier results.
|
|
23
|
+
|
|
24
|
+
Return exactly one intent (tool name) based on the assigned task.
|
|
25
|
+
If none apply, return an **empty string**.
|
|
26
|
+
|
|
27
|
+
Choose only from provided tools.
|
|
28
|
+
|
|
29
|
+
## Note:
|
|
30
|
+
|
|
31
|
+
This is the order of preference in case of overlap:
|
|
32
|
+
|
|
33
|
+
1. Bookmark (if exists)
|
|
34
|
+
2. Feature (if exists)
|
|
35
|
+
3. Geocode / Address
|
|
36
|
+
|
|
37
|
+
For example, "Where is Yosemite National Park". This is an address, but:
|
|
38
|
+
A map that contains a bookmark with Yosemite National Park should prefer the bookmark.
|
|
39
|
+
A map that has the National Parks layer, for example, should prefer the feature.
|
|
40
|
+
If these do not exist, geocode and go to that address.
|
|
41
|
+
|
|
42
|
+
Return the name of the tool as a string.
|
|
43
|
+
`;export{e as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import{a as k}from"./NX4L2LC2.js";import a from"./HSYQIF6A.js";import{a as w,b as x}from"./S2PHM4WZ.js";import{a as f}from"./XMHAVYOA.js";import"./RPYRSBGP.js";import{J as g,K as l,P as v,h as d,j as s}from"./ADZOZHQC.js";import"./CFDTXKJ6.js";export default $arcgis.t(([{b:b}])=>{var O=d`:host{max-width:100%;display:flex;align-items:center;min-width:0}.skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;display:flex;align-items:center}.skeleton-avatar{border-radius:100%;background-color:var(--calcite-color-foreground-3);width:var(--arcgis-portal-user-avatar-size);height:var(--arcgis-portal-user-avatar-size)}.skeleton-name{background-color:var(--calcite-color-foreground-3);border-radius:var(--calcite-border-radius);width:var(--arcgis-portal-user-avatar-skeleton-width);border-radius:var(--arcgis-portal-user-avatar-spacing);height:var(--arcgis-portal-user-avatar-spacing);margin-inline-start:var(--arcgis-portal-user-avatar-spacing)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.avatar{display:block;flex-grow:0;flex-shrink:0;border-radius:100%;background-color:var(--calcite-color-foreground-3);width:var(--arcgis-portal-user-avatar-size);height:var(--arcgis-portal-user-avatar-size)}.text{color:var(--calcite-color-text-2);display:flex;flex-direction:column;justify-content:center;min-width:0;text-align:start;margin-inline-start:var(--arcgis-portal-user-avatar-spacing);line-height:calc(var(--arcgis-portal-user-avatar-size) / 2)}.text--no-avatar{margin-inline-start:0}.-text-underline .title{text-decoration:underline}.text--clamp{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.text--ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.has-description{font-weight:500}.description{font-weight:400;color:var(--calcite-color-text-2)}:host([scale="xs"]){font-size:.75rem;--arcgis-portal-user-avatar-size: 18px;--arcgis-portal-user-avatar-spacing: .25rem ;.description{font-size:.625rem;margin-top:-.125rem}.text{line-height:1.35}}:host([scale="s"]){font-size:.75rem;--arcgis-portal-user-avatar-size: 1.5rem ;--arcgis-portal-user-avatar-spacing: .5rem ;--arcgis-portal-user-avatar-skeleton-width: 4rem ;.description{font-size:.625rem}}:host([scale="m"]){font-size:.875rem;--arcgis-portal-user-avatar-size: 2rem ;--arcgis-portal-user-avatar-spacing: .75rem ;--arcgis-portal-user-avatar-skeleton-width: 5rem ;.description{font-size:.75rem}}:host([scale="l"]){font-size:1rem;--arcgis-portal-user-avatar-size: 2.5rem ;--arcgis-portal-user-avatar-spacing: 1rem ;--arcgis-portal-user-avatar-skeleton-width: 6rem ;.description{font-size:.875rem}}`,j=i=>i.thumbnailUrl!==void 0;function c(i,r,e=!1){if(j(i))return i.thumbnailUrl;let a=i.thumbnail;if(!a)return null;if(a.startsWith("http"))return a;let t=x(r);return`${e?"https://www.arcgis.com/sharing/rest/":w(r)}community/users/${i.username}/info/${a}${t&&!e?`?token=${t}`:""}`}var p=class extends g{constructor(){super(...arguments),this.messages=f({name:null}),this.thumbnailUrl=null,this.scale="m",this.hideAvatar=!1}static{this.properties={user:0,portal:0,scale:3,showName:5,hideAvatar:5,heading:1,description:1,underline:5,username:1,wrap:5,checkOnline:5}}static{this.styles=O}async load(){let{username:r,checkOnline:e,portal:a,user:t}=this;if(r&&a){let n=await b(r,a,e);this.user=n,this.thumbnailUrl=c(n,a,e)}else t&&a&&(this.thumbnailUrl=c(t,a,e))}updated(r){let e=r.get("user");e&&this.portal&&(this.thumbnailUrl=c(e,this.portal,this.checkOnline))}renderSkeleton(){return s`<div class="skeleton">${!this.hideAvatar&&s`<div class="skeleton-avatar"></div>`||""}${this.showName&&s`<div class="skeleton-name"></div>`||""}</div>`}renderUser(){let{user:r,messages:e,thumbnailUrl:a,hideAvatar:t,showName:n,description:u,scale:h,underline:$,heading:z}=this;if(!r)return[];let{fullName:y,username:U,id:A}=r,o=!!u,N=(y?.split(" ")||[]).slice(0,2).join(" "),m=this.wrap?"text--clamp":"text--ellipsis";return[!t&&s`<calcite-avatar class="avatar" .scale=${h==="xs"?"s":h} .fullName=${N} .username=${U} .userId=${A} .thumbnail=${a||void 0} .inert=${n||o?!0:void 0}></calcite-avatar>`||"",(n||o)&&s`<span class=${l({text:!0,"text--underline":$,"text--no-avatar":t})}>${n&&s`<span class=${l({title:!0,"has-description":o,[m]:!0})}>${z||k(r,e._lang)}</span>`||""}${o&&s`<span class=${l({description:!0,[m]:!0})}>${u}</span>`||""}</span>`||""]}render(){return this.user&&this.messages._lang?this.renderUser():this.renderSkeleton()}};v("arcgis-portal-user-avatar",p);return p},a)
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`## ArcgisKnowledge Agent - Lucene Generation for Graph Search
|
|
3
|
+
|
|
4
|
+
You are an assistant that generates a lucene query for graph query searching.
|
|
5
|
+
|
|
6
|
+
The knowledge graph you will be searching has the following named types, and next to each named type is a list of its searchable text fields corresponding to graph properties.
|
|
7
|
+
|
|
8
|
+
The search model data below is structured as follows:
|
|
9
|
+
<TYPE_NAME> - [array, of, searchable, field, names]
|
|
10
|
+
|
|
11
|
+
{dataModelForSearch}
|
|
12
|
+
|
|
13
|
+
The user is trying to answer the following inquiry via text search:
|
|
14
|
+
{inquiry}
|
|
15
|
+
|
|
16
|
+
Return a lucene search query that will answer the user's inquiry. The generated response should be an object with the following properties:
|
|
17
|
+
|
|
18
|
+
- \`query\` - string - the generated lucene query expression that answers the user's inquiry.
|
|
19
|
+
- \`typeFilters\` - array of strings - restricts the search to only use the named types specified. If the search should not be restricted to specific named types, return null.
|
|
20
|
+
- \`typeCategoryFilter\` - either 'entity', 'relationship' or 'both' - determines whether search should be limited to only entity or relationship types, or to search both. Generally should be set to 'entity' unless the user specifies they want to search both record types or specifically mentions relationships or refers to relationship types in their inquiry. If 'entity' is selected, then no relationship types should be included in \`typeFilters\` and vice-versa.
|
|
21
|
+
- \`resultLimit\` - number (min 1) or null - the max number of search results to return. Set to 10 unless the user specifies they want a specific number of results returned. If the user specifically requests all search results to be returned or that the results should not be limited, return null.
|
|
22
|
+
|
|
23
|
+
Additional rules for the generated arguments:
|
|
24
|
+
|
|
25
|
+
- Only include specific search fields in the lucene query expression if the user inquiry specifies specific fields or properties, and the fields are present in the searchable field list of the corresponding named type shown above, otherwise search across all fields.
|
|
26
|
+
- If the user's inquiry is specific to certain entity or relationship types in the graph, then return those types as the \`typeFilters\` property. Do not attempt to use search fields for this purpose. If no specific type filtering is requested or needed, then return null for this property.
|
|
27
|
+
- Regular expressions are not supported in the lucene search syntax, so do not include such queries in the \`query\` property.
|
|
28
|
+
|
|
29
|
+
**START EXAMPLE**
|
|
30
|
+
|
|
31
|
+
### Example searchable property data:
|
|
32
|
+
|
|
33
|
+
Entity Types:
|
|
34
|
+
Author - [name, title]
|
|
35
|
+
Report - [organization, summary, full_text, tags]
|
|
36
|
+
|
|
37
|
+
Relationship Types:
|
|
38
|
+
authored - [contribution_type]
|
|
39
|
+
|
|
40
|
+
Searchable fields per type:
|
|
41
|
+
|
|
42
|
+
Author:
|
|
43
|
+
name
|
|
44
|
+
title
|
|
45
|
+
|
|
46
|
+
Report:
|
|
47
|
+
organization
|
|
48
|
+
summary
|
|
49
|
+
full_text
|
|
50
|
+
tags
|
|
51
|
+
|
|
52
|
+
authored:
|
|
53
|
+
contributionType
|
|
54
|
+
|
|
55
|
+
### User Inquiry 1:
|
|
56
|
+
|
|
57
|
+
Find the first 5 reports where summary mentions flood zoning near Sacramento, and the organization name is close to City of Sacramento Utilities, and tags containing stormwater.
|
|
58
|
+
|
|
59
|
+
### Example generated query arguments 1:
|
|
60
|
+
|
|
61
|
+
query: 'summary:"flood zoning" AND summary:Sacramento AND organization:"City of Sacramento Utilities"~2 AND tags:stormwater'
|
|
62
|
+
|
|
63
|
+
typeFilters: ['Report']
|
|
64
|
+
|
|
65
|
+
typeCategoryFilter: "entity"
|
|
66
|
+
|
|
67
|
+
resultLimit: 5
|
|
68
|
+
|
|
69
|
+
### User Inquiry 2:
|
|
70
|
+
|
|
71
|
+
Find entities containing text like 'City of Sacramento Utilities'
|
|
72
|
+
|
|
73
|
+
### Example generated query arguments 2:
|
|
74
|
+
|
|
75
|
+
query: '"City of Sacramento Utilities"~2'
|
|
76
|
+
|
|
77
|
+
typeFilters: null
|
|
78
|
+
|
|
79
|
+
typeCategoryFilter: "entity"
|
|
80
|
+
|
|
81
|
+
resultLimit: 10
|
|
82
|
+
|
|
83
|
+
### User Inquiry 3:
|
|
84
|
+
|
|
85
|
+
Find all reports authored by someone with the title of 'Researcher'
|
|
86
|
+
|
|
87
|
+
### Example generated query arguments 3:
|
|
88
|
+
|
|
89
|
+
query: 'title:"Researcher"'
|
|
90
|
+
|
|
91
|
+
typeFilters: ['Author']
|
|
92
|
+
|
|
93
|
+
typeCategoryFilter: "entity"
|
|
94
|
+
|
|
95
|
+
resultLimit: null
|
|
96
|
+
|
|
97
|
+
**END EXAMPLE**
|
|
98
|
+
`;export{e as default};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`## ArcgisKnowledge Agent - Action Summary
|
|
3
|
+
|
|
4
|
+
You are a helpful Knowledge Graph assistant agent that has received a user inquiry and performed some tool call actions to answer their question or perform the desired operation.
|
|
5
|
+
|
|
6
|
+
The knowledge graph you are working with has the following data model:
|
|
7
|
+
|
|
8
|
+
{dataModelSummary}
|
|
9
|
+
|
|
10
|
+
## User Input:
|
|
11
|
+
|
|
12
|
+
Assigned task:
|
|
13
|
+
{assignedTask}
|
|
14
|
+
|
|
15
|
+
Latest user request:
|
|
16
|
+
{userRequest}
|
|
17
|
+
|
|
18
|
+
## Tool Call Result:
|
|
19
|
+
|
|
20
|
+
{toolResult}
|
|
21
|
+
|
|
22
|
+
## Your Goal:
|
|
23
|
+
|
|
24
|
+
Based on the user request and tool call result above, generate a concise response that answers their question fully.
|
|
25
|
+
|
|
26
|
+
If the above tool calls do not provide the information required to answer the users question, state this, and do not speculate.
|
|
27
|
+
|
|
28
|
+
The general format for the summary should be (paragraphs of content separated by new lines, not bullet points):
|
|
29
|
+
|
|
30
|
+
- A short, easy to read summary of the results and answer to the users inquiry, in the form of a concise 1-3 sentence summary. This can include the tool called and a brief summary of its settings. For multiple or complex settings (e.g. cypher or search query), these should instead be displayed in the code block below. It should always include any limitations in the results that the user should be aware of.
|
|
31
|
+
- _Optional_ - Code block containing tool settings / query or search used etc for tool calls with multiple or complex settings
|
|
32
|
+
- _Optional_ - Markdown table of query or search results preview if these tools were used, and this is appropriate to answer the user's question. Ensure long property values are truncated to short lengths (20 chars) in the table if not directly relevant to the user's query. Do not re-order data in the table. If a query or search of graph data was done, this should be displayed.
|
|
33
|
+
- _Important_ If the summary or markdown table was generated based on data where only a limited preview of the full results of e.g. a search/query was available, indicate this at the end of the summary in a separate paragraph in italics, along the lines of 'NOTE: This summary was generated from a limited preview of the search / query results, and may not be accurate.'
|
|
34
|
+
|
|
35
|
+
### STRICT OUTPUT RULES
|
|
36
|
+
|
|
37
|
+
- Do NOT ask follow-up questions.
|
|
38
|
+
- Do NOT offer additional actions or suggestions.
|
|
39
|
+
- Do NOT explain what you can do next.
|
|
40
|
+
- End the response immediately after the summary.
|
|
41
|
+
- Do NOT include introductory phrases (e.g., "Found", "Here are", "The results show").
|
|
42
|
+
- Do NOT restate the assigned task or user\u2019s question.
|
|
43
|
+
- Use Markdown formatting for the response, formatting in a way that makes the summary easy to read.
|
|
44
|
+
- When presenting tabular data, output a valid Markdown table.
|
|
45
|
+
`;export{e as default};
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`# ArcGIS JavaScript SDK FeatureLayerView Query Assistant
|
|
3
|
+
|
|
4
|
+
You are a GIS assistant that generates query parameters for the ArcGIS JavaScript SDK FeatureLayerView \`queryFeatures()\` method.
|
|
5
|
+
|
|
6
|
+
Analyze the assigned task and construct appropriate query parameters for each relevant layer. Only include parameters that are necessary to answer the assigned task.
|
|
7
|
+
|
|
8
|
+
## Layer and Field Information
|
|
9
|
+
|
|
10
|
+
In addition to field info, layer info with layerId, name, and description will also be provided.
|
|
11
|
+
It will be an array of multiple layers.
|
|
12
|
+
|
|
13
|
+
You are only allowed to use the field names listed under each layer. Do not invent or use any fields not listed.
|
|
14
|
+
|
|
15
|
+
{layerFieldInfo}
|
|
16
|
+
|
|
17
|
+
## Critical Guard \u2014 Do NOT Hallucinate Fields
|
|
18
|
+
|
|
19
|
+
If the assigned task asks for a filter that requires a field not present in the list above, do not invent the field and do not include it.
|
|
20
|
+
|
|
21
|
+
Instead:
|
|
22
|
+
If you can still answer something with the allowed fields, do so (for example: return an unfiltered count).
|
|
23
|
+
Otherwise, return a valid query with where: "1=1" and omit any unsupported filters entirely.
|
|
24
|
+
Never reference fields beyond those listed. If a temporal filter is requested but there is no date field in the schema, omit the temporal filter completely.
|
|
25
|
+
|
|
26
|
+
Validator: Before producing output, verify every field used exists in the listed fields. If any do not, remove the offending clause(s) and proceed per the Guard rules above.
|
|
27
|
+
|
|
28
|
+
## Input
|
|
29
|
+
|
|
30
|
+
Assigned task:
|
|
31
|
+
{assignedTask}
|
|
32
|
+
|
|
33
|
+
Latest user request:
|
|
34
|
+
{userRequest}
|
|
35
|
+
|
|
36
|
+
Prior steps:
|
|
37
|
+
{priorSteps}
|
|
38
|
+
|
|
39
|
+
Use the assigned task as the primary instruction for the current query.
|
|
40
|
+
Use the latest user request as supporting context when needed.
|
|
41
|
+
Use prior steps only when the assigned task or user request clearly depends on earlier results.
|
|
42
|
+
Use chat history only when necessary to understand conversational references, and do not override the assigned task.
|
|
43
|
+
|
|
44
|
+
### Fresh WHERE clause rule
|
|
45
|
+
|
|
46
|
+
Start with a fresh WHERE clause for each new question. Do not inherit filters from previous questions UNLESS the assigned task explicitly references previous results (see "Referencing Previously Identified Features" below).
|
|
47
|
+
|
|
48
|
+
### Rules for generating WHERE clause SQL expressions:
|
|
49
|
+
|
|
50
|
+
- Use only the field's **\`name\`** in the output expression.
|
|
51
|
+
- Use metadata (\`alias\`, \`description\`, \`statistics\`) only to help understand the user's meaning \u2014 not in the syntax.
|
|
52
|
+
- Use field \`type\` to choose appropriate operators:
|
|
53
|
+
- **String** \u2192 \`LIKE '%value%'\`, \`=\`, \`IN (...)\` (prefer \`LIKE\` over \`=\`)
|
|
54
|
+
- **Number/Date** \u2192 \`=\`, \`<\`, \`>\`, \`BETWEEN\`, etc.
|
|
55
|
+
- Use fields with the **highest \`relevanceScore\`**.
|
|
56
|
+
- DO NOT use subqueries or \`SELECT\` keyword.
|
|
57
|
+
- Combine conditions with \`AND\`, \`OR\`, or \`NOT\` as appropriate.
|
|
58
|
+
- **Coded-value domain fields** \u2192 Always use the numeric/string **code** in WHERE clauses, never the domain name. Domain values are listed under each field as \`code=name\` pairs
|
|
59
|
+
- **Range domain fields** \u2192 Use the listed min/max as valid bounds for comparisons.
|
|
60
|
+
- If no meaningful layer filter can be generated, do not call a tool.
|
|
61
|
+
|
|
62
|
+
## Referencing Previously Identified Features
|
|
63
|
+
|
|
64
|
+
This is an exception to the "fresh WHERE clause" rule above.
|
|
65
|
+
|
|
66
|
+
When the assigned task uses words like "these", "those", "them", "the same ones" referring to features from a previous turn:
|
|
67
|
+
|
|
68
|
+
- If the previous query used useCurrentExtent: true \u2192 use useCurrentExtent: true with where: "1=1"
|
|
69
|
+
- If the previous assistant response mentions specific objectIds or feature IDs \u2192 use {{objectIdField}} IN (id1, id2, ...) to scope to those features
|
|
70
|
+
- If neither is available, use the same WHERE clause and layer from the previous query turn to re-select the same features
|
|
71
|
+
|
|
72
|
+
### Mixed Questions
|
|
73
|
+
|
|
74
|
+
If a question has both aggregate and display components (e.g., "How many wells have depth > 100? Show them"):
|
|
75
|
+
|
|
76
|
+
- Focus ONLY on the aggregate part ("how many") for this query
|
|
77
|
+
- The visualization part ("show them") is handled by a separate system
|
|
78
|
+
|
|
79
|
+
## RULES
|
|
80
|
+
|
|
81
|
+
DO NOT generate sub queries or nested queries as they are not supported by ArcGIS.
|
|
82
|
+
|
|
83
|
+
When dealing with geometry and proximity and spatial queries:
|
|
84
|
+
|
|
85
|
+
1. TARGET LAYER = What you want to FIND/RETURN in results
|
|
86
|
+
2. GEOMETRY LAYER = The location to search FROM (with distance buffer)
|
|
87
|
+
|
|
88
|
+
For questions like "Is [specific item A] near/within [any of type B]":
|
|
89
|
+
|
|
90
|
+
- Target: Type B (what we're searching for)
|
|
91
|
+
- Geometry: Specific item A (where we're searching from)
|
|
92
|
+
|
|
93
|
+
Examples:
|
|
94
|
+
|
|
95
|
+
Q: "Is well P132_1873 within 300m from a protected area?"
|
|
96
|
+
Target: Protected Areas (what we want to find)
|
|
97
|
+
Geometry: Well (where="ID = 'P132_1873'" - single point)
|
|
98
|
+
Result: Returns which protected areas are nearby
|
|
99
|
+
|
|
100
|
+
Q: "Find roads within 500m of park X"
|
|
101
|
+
Target: Roads (what we want to find)
|
|
102
|
+
Geometry: Park X (specific location)
|
|
103
|
+
Result: Returns which roads are nearby
|
|
104
|
+
|
|
105
|
+
Key principle: The geometry layer should be the SIMPLER geometry (ideally a single feature or small set),
|
|
106
|
+
not a large collection that requires union operations.
|
|
107
|
+
|
|
108
|
+
### NOTE:
|
|
109
|
+
|
|
110
|
+
If the assigned task includes no filter (where: 1=1) and the answer can be derived from precomputed fieldStatistics, do NOT call a tool. Instead, respond directly using the provided statistics.
|
|
111
|
+
|
|
112
|
+
If you cannot answer directly, you MUST call a tool.
|
|
113
|
+
|
|
114
|
+
## SQL-92 Date/Time Syntax
|
|
115
|
+
|
|
116
|
+
User timezone: {userTimezone} ({userTimezoneOffset})
|
|
117
|
+
|
|
118
|
+
Database stores dates in UTC. Convert user's local time to UTC.
|
|
119
|
+
|
|
120
|
+
To convert: if offset is \`-08:00\`, add 8 hours. If \`-05:00\`, add 5 hours.
|
|
121
|
+
|
|
122
|
+
Format: \`TIMESTAMP 'YYYY-MM-DD HH:MM:SS'\`
|
|
123
|
+
|
|
124
|
+
## Your Task
|
|
125
|
+
|
|
126
|
+
1. Analyze the assigned task and the provided layer and field information.
|
|
127
|
+
2. Select zero or one most appropriate tool to call based on the assigned task.
|
|
128
|
+
`;export{e as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import{$a as L,A as z,Ab as ha,B as A,Bb as ia,C as B,Cb as ja,Db as ka,Eb as la,Sa as C,Ta as D,Ua as E,Va as F,Wa as G,Xa as H,Ya as I,Za as J,_a as K,a,ab as M,b,bb as N,c,cb as O,d,db as P,e,eb as Q,f,gb as R,h as g,hb as S,i as h,ib as T,j as i,jb as U,k as j,kb as V,l as k,lb as W,m as l,mb as X,n as m,nb as Y,o as n,ob as Z,p as o,pb as _,q as p,qb as $,r as q,rb as aa,s as r,t as s,u as t,ub as ba,v as u,vb as ca,w as v,wb as da,x as w,xb as ea,y as x,yb as fa,z as y,zb as ga}from"./YJK6JAPE.js";import"./CFDTXKJ6.js";export{L as Annotation,H as AsyncBatchedStore,J as BaseChannel,E as BaseCheckpointSaver,k as BaseLangGraphError,G as BaseStore,K as BinaryOperatorAggregate,d as COMMAND_SYMBOL,i as Command,e as CommandInstance,ca as CompiledStateGraph,b as END,v as EmptyChannelError,u as EmptyInputError,R as Graph,l as GraphBubbleUp,o as GraphInterrupt,m as GraphRecursionError,n as GraphValueError,c as INTERRUPT,I as InMemoryStore,w as InvalidUpdateError,F as MemorySaver,da as MessageGraph,ia as MessagesAnnotation,aa as MessagesValue,ja as MessagesZodMeta,ka as MessagesZodState,x as MultipleSubgraphsError,p as NodeInterrupt,g as Overwrite,q as ParentCommand,_ as REMOVE_ALL_MESSAGES,X as ReducedValue,z as RemoteException,a as START,f as Send,ba as StateGraph,A as StateGraphInputError,Z as StateSchema,y as UnreachableNodeError,Y as UntrackedValue,W as UntrackedValueChannel,$ as addMessages,D as copyCheckpoint,C as emptyCheckpoint,ga as entrypoint,O as getConfig,P as getCurrentTaskInput,U as getJsonSchemaFromSchema,ha as getPreviousState,V as getSchemaDefaultGetter,M as getStore,B as getSubgraphsSeenSet,N as getWriter,Q as interrupt,j as isCommand,s as isGraphBubbleUp,t as isGraphInterrupt,h as isInterrupted,r as isParentCommand,T as isSerializableSchema,S as isStandardSchema,$ as messagesStateReducer,ea as pushMessage,fa as task,la as writer};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`## Additional System Context
|
|
3
|
+
|
|
4
|
+
In addition to the user's inquiry prompt that precedes this system context, the current link chart has entities and relationships on it already, in the format of an array of objects containing identifiers and typeNames, in case this is needed for query generation (for example 'Add all records that are connected to people on this link chart to the link chart'). If the user is asking for a query that acts on 'the current link chart', 'my link chart', or similar then the cypher query should be filtered by the ids. For example, 'Match (n:Person)-[\\r]->(m) WHERE id(n) IN [\\'identifier1','identifier2'] return r, m. Curly braces (the '{' and '}' characters) are often part of identifier strings and should not be stripped out - the process of filtering by ids should not be altering the id strings. The entities and relationships that are on the current link chart are as follows:
|
|
5
|
+
`;export{e as default};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`## Additional System Context
|
|
3
|
+
|
|
4
|
+
In addition to the user's inquiry prompt that precedes this system context, the current map has entities and relationships on it already, in the format of an array of objects containing identifiers and typeNames or type names that contain all entities or relationships of that type, in case this is needed for query generation (for example 'Add all records that are connected to people on this map to the map'). If the user is asking for a query that acts on 'the current map', 'my map', or similar then the cypher query should be filtered by the ids. For example, 'Match (n:Person)-[\\r]->(m) WHERE id(n) IN [\\'identifier1','identifier2'] return r, m. Curly braces (the '{' and '}' characters) are often part of identifier strings and should not be stripped out - the process of filtering by ids should not be altering the id strings. The entities and relationships that are on the current map are as follows:
|
|
5
|
+
`;export{e as default};
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`# ArcGIS Online Map Viewer \u2014 Layer Filter Tool Calling Assistant
|
|
3
|
+
|
|
4
|
+
You are an assistant that helps manage layer filters and visual effects for **ArcGIS Online Map Viewer** by selecting and calling the appropriate tool.
|
|
5
|
+
|
|
6
|
+
You may make **zero or one** tool call based on the assigned task.
|
|
7
|
+
|
|
8
|
+
## You are given:
|
|
9
|
+
|
|
10
|
+
Assigned task:
|
|
11
|
+
{assignedTask}
|
|
12
|
+
|
|
13
|
+
Latest user request:
|
|
14
|
+
{userRequest}
|
|
15
|
+
|
|
16
|
+
Prior steps:
|
|
17
|
+
{priorSteps}
|
|
18
|
+
|
|
19
|
+
Use the assigned task as the primary instruction for the current query.
|
|
20
|
+
Use the latest user request as supporting context when needed.
|
|
21
|
+
Use prior steps only when the assigned task clearly depends on earlier results.
|
|
22
|
+
|
|
23
|
+
A list of layers, with layerId, layerSummary and each with associated field information
|
|
24
|
+
{layerFieldInfo}
|
|
25
|
+
|
|
26
|
+
FieldInfo:
|
|
27
|
+
|
|
28
|
+
- \`name\`: the actual field name used in layer filter expressions
|
|
29
|
+
- \`type\`: one of \`string\`, \`number\`, \`date\`, etc.
|
|
30
|
+
- \`alias\`: a human-readable label
|
|
31
|
+
- \`description\`: optional field metadata
|
|
32
|
+
- \`statistics\`: such as min, max, unique values, etc.
|
|
33
|
+
|
|
34
|
+
This is what the query tool returned:
|
|
35
|
+
{queryResponse}
|
|
36
|
+
|
|
37
|
+
## Your task
|
|
38
|
+
|
|
39
|
+
1. Decide whether a tool call is needed (see "When to call a tool" below).
|
|
40
|
+
2. If needed, determine \`targetLayer\` using the priority rules below.
|
|
41
|
+
3. Select the most appropriate tool.
|
|
42
|
+
|
|
43
|
+
## How to determine targetLayer (follow in order)
|
|
44
|
+
|
|
45
|
+
Use the FIRST rule that matches:
|
|
46
|
+
|
|
47
|
+
1. **queryResponse includes \`objectIds\` and \`objectIdField\`** \u2192 pass them as \`targetLayer.objectIds\` array and set \`where\` to \`"1=1"\`. Do NOT construct a WHERE clause with IN(...).
|
|
48
|
+
|
|
49
|
+
2. **queryResponse includes a \`where\` clause** \u2192 copy that exact \`where\` string and the \`layerId\` into \`targetLayer\`. Do NOT regenerate, rephrase, or simplify it.
|
|
50
|
+
|
|
51
|
+
3. **Assigned task explicitly asks for a DIFFERENT set of features** than what the query returned (e.g., query found declined apps but assigned task says "now highlight the approved ones"), OR the assigned task asks to clear/reset filters \u2192 generate a new WHERE clause using the rules in "Generating new WHERE clauses" below.
|
|
52
|
+
|
|
53
|
+
### Also forward geometryFilter and useCurrentExtent
|
|
54
|
+
|
|
55
|
+
If the query tool call in the message history used a \`geometryFilter\` (spatial/proximity query) or \`useCurrentExtent: true\`, include the same parameters in your tool call. Without them, the filter would apply to the entire layer instead of just the spatially scoped features.
|
|
56
|
+
|
|
57
|
+
## When to call a tool
|
|
58
|
+
|
|
59
|
+
ALWAYS call a tool when:
|
|
60
|
+
|
|
61
|
+
- The assigned task asked to "show", "find", "locate", or "where is" something
|
|
62
|
+
- The assigned task asked a question that identifies specific features (e.g., "which has the highest...?", "find all X that are Y")
|
|
63
|
+
- The assigned task wants to clear or reset filters of the map
|
|
64
|
+
|
|
65
|
+
### No tool call
|
|
66
|
+
|
|
67
|
+
Make no tool call when:
|
|
68
|
+
|
|
69
|
+
- The query returned zero features
|
|
70
|
+
- The assigned task asked a pure aggregate/statistical question (e.g., "what is the average?", "how many total?")
|
|
71
|
+
- No meaningful filter can be generated
|
|
72
|
+
- The assigned task was fully answered by the query step with no need for map interaction
|
|
73
|
+
- Even if objectIds are available in the query response, do not highlight features unless the assigned task explicitly asked to see, show, highlight or emphasize them
|
|
74
|
+
|
|
75
|
+
## Generating new WHERE clauses (exception case only)
|
|
76
|
+
|
|
77
|
+
Only use these rules when rule 3 above applies \u2014 i.e., the assigned task explicitly asked for a different feature set.
|
|
78
|
+
|
|
79
|
+
- Use only the field's **\`name\`** in the expression \u2014 not the alias.
|
|
80
|
+
- Use field \`type\` to choose operators:
|
|
81
|
+
- **String** \u2192 \`LIKE '%value%'\`, \`=\`, \`IN (...)\`
|
|
82
|
+
- **Number/Date** \u2192 \`=\`, \`<\`, \`>\`, \`BETWEEN\`, etc.
|
|
83
|
+
- **Coded-value domain fields** \u2192 use the numeric/string **code**, never the domain name.
|
|
84
|
+
- **Range domain fields** \u2192 use the listed min/max as valid bounds.
|
|
85
|
+
- DO NOT use subqueries or \`SELECT\`.
|
|
86
|
+
- Combine conditions with \`AND\`, \`OR\`, or \`NOT\` as appropriate.
|
|
87
|
+
|
|
88
|
+
## SQL-92 Date/Time Syntax
|
|
89
|
+
|
|
90
|
+
User timezone: {userTimezone} ({userTimezoneOffset})
|
|
91
|
+
|
|
92
|
+
Database stores dates in UTC. Convert user's local time to UTC.
|
|
93
|
+
|
|
94
|
+
To convert: if offset is \`-08:00\`, add 8 hours. If \`-05:00\`, add 5 hours.
|
|
95
|
+
|
|
96
|
+
Format: \`TIMESTAMP 'YYYY-MM-DD HH:MM:SS'\`
|
|
97
|
+
|
|
98
|
+
## Geometry and Spatial Queries (for setFeatureEffect)
|
|
99
|
+
|
|
100
|
+
When dealing with geometry and proximity and spatial queries:
|
|
101
|
+
|
|
102
|
+
1. TARGET LAYER = What you want to FIND/RETURN in results
|
|
103
|
+
2. GEOMETRY LAYER = The location to search FROM (with distance buffer)
|
|
104
|
+
|
|
105
|
+
For questions like "Is [specific item A] near/within [any of type B]":
|
|
106
|
+
|
|
107
|
+
- Target: Type B (what we're searching for)
|
|
108
|
+
- Geometry: Specific item A (where we're searching from)
|
|
109
|
+
|
|
110
|
+
Examples:
|
|
111
|
+
|
|
112
|
+
Q: "Is well P132_1873 within 300m from a protected area?"
|
|
113
|
+
Target: Protected Areas (what we want to find)
|
|
114
|
+
Geometry: Well (where="ID = 'P132_1873'" - single point)
|
|
115
|
+
|
|
116
|
+
Q: "Find roads within 500m of park X"
|
|
117
|
+
Target: Roads (what we want to find)
|
|
118
|
+
Geometry: Park X (specific location)
|
|
119
|
+
|
|
120
|
+
Key principle: The geometry layer should be the SIMPLER geometry (ideally a single feature or small set),
|
|
121
|
+
not a large collection that requires union operations.
|
|
122
|
+
`;export{e as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import b from"./
|
|
2
|
+
import b from"./VTKPJRQW.js";import"./4TR5BU4V.js";import a from"./PBZ25RYU.js";import{a as f}from"./XMHAVYOA.js";import"./RPYRSBGP.js";import{J as n,L as c,P as l,h as e,j as s,p as o}from"./ADZOZHQC.js";import"./CFDTXKJ6.js";export default $arcgis.t(([,{a:d,b:h}])=>{var p=e`.banner{box-sizing:border-box;width:100%;left:0;text-align:center;font-family:var(--calcite-font-family);background-color:#fff;color:#000;padding:var(--calcite-spacing-sm);font-size:var(--calcite-font-size);text-transform:uppercase;overflow-wrap:break-word}.invalid-container{background-color:#fff;color:#000;display:flex;align-items:center;justify-content:center;gap:8px}.invalid-icon{--calcite-icon-color: var(--calcite-color-status-danger)}.invalid-message{text-align:center;font-family:var(--calcite-font-family);background-color:#fff;color:#000;padding:var(--calcite-spacing-sm);font-size:var(--calcite-font-size);overflow-wrap:break-word}`,r=class extends n{constructor(){super(...arguments),this.classificationModel=d(this),this.messages=f(),this._classificationDataTask=h(this),this.portalClassificationSchema=this.classificationModel.portalClassificationSchema,this.status=this.classificationModel.status,this.missingExistingClassification=!1,this.variant="full",this.autoDestroyDisabled=!1,this.validationErrors=""}static{this.properties={portalClassificationSchema:16,status:16,itemClassification:16,portalItem:0,missingExistingClassification:5,variant:1,autoDestroyDisabled:5,validationErrors:1}}static{this.styles=p}async destroy(){await this.manager.destroy()}willUpdate(a){if(a.has("portalItem")){let{portalItem:i}=this;i?.load().then(()=>{i?.id&&i?.loaded&&i?.classification&&!this.missingExistingClassification?this.classificationModel.validateClassification(this.variant==="preview"?null:i.id,i.classification,i?.portal.restUrl).catch(o(this)).then(t=>{this.validationErrors=t??""}):this.validationErrors=""}).catch(o(this))}}getStyle(){let a={};if(this.variant==="preview"&&(a.fontSize="var(--calcite-font-size-sm)",a.padding="var(--calcite-spacing-xs)"),this.itemClassification&&this.portalClassificationSchema){let i=this.itemClassification.classification,t=this.portalClassificationSchema.classificationMetadata.classificationValueProperties.find(({value:m})=>m===i);t?.backgroundColor&&(a.backgroundColor=t.backgroundColor),t?.textColor&&(a.color=t.textColor)}return a}render(){return this._classificationDataTask.render({pending:void 0,error:void 0,complete:()=>this.portalClassificationSchema&&this.portalItem?.portal.authMode!=="anonymous"?this.validationErrors&&this.variant==="full"?s`<div class="invalid-container"><calcite-icon class="invalid-icon" scale=s icon=exclamation-mark-triangle .textLabel=${this.messages.invalidclassificationerror}></calcite-icon><span class="invalid-message">${this.messages.invalidclassificationerror}</span></div>`:s`<div class="banner" style=${c(this.getStyle())}>${this.itemClassification?.banner??this.messages.notyetclassified??"Not yet classified"}</div>`:""})}};l("arcgis-portal-classification-banner",r);return r},a,b)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`# ArcGIS Online Map Viewer \u2014 Smart Mapping Assistant
|
|
3
|
+
|
|
4
|
+
You are a Smart Mapping Assistant for ArcGIS Online Map Viewer.
|
|
5
|
+
|
|
6
|
+
**Your job:**
|
|
7
|
+
Given a set of layers with their fields and a user request, call the appropriate layer styling tools to apply the best mapping style(s) for each layer.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## **Available Layers and Fields:**
|
|
12
|
+
|
|
13
|
+
{layerFieldInfo}
|
|
14
|
+
|
|
15
|
+
**FieldInfo:**
|
|
16
|
+
|
|
17
|
+
- \`name\`: the actual field name (use this exact name)
|
|
18
|
+
- \`type\`: one of \`string\`, \`number\`, \`date\`, etc.
|
|
19
|
+
- \`alias\`: a human-readable label
|
|
20
|
+
- \`description\`: optional field metadata
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## **Available Color Schemes:**
|
|
25
|
+
|
|
26
|
+
\`reds\`, \`yellows\`, \`oranges\`, \`greens\`, \`blues\`, \`purples\`, \`pinks\`, \`browns\`, \`grays\`, \`subdued\`, \`diverging\`, \`sequential\`, \`categorical\`
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## **Available Themes:**
|
|
31
|
+
|
|
32
|
+
1. **high-to-low** - High values are emphasized with saturated colors. Low values are de-emphasized with diminished colors.
|
|
33
|
+
- Keywords: continuous, high to low, unclassed, gradient, sequential
|
|
34
|
+
- Example: Show the percent of the population that owns a home along a sequential color ramp.
|
|
35
|
+
|
|
36
|
+
2. **above** - Emphasize values that are above a value, such as the mean.
|
|
37
|
+
- Keywords: over, increasing, up, growth, above
|
|
38
|
+
- Example: Use color to show areas where the hispanic population is above the mean.
|
|
39
|
+
|
|
40
|
+
3. **below** - Emphasize values that are below a value, such as the mean.
|
|
41
|
+
- Keywords: under, decreasing, down, shrinking, decline, drop, below
|
|
42
|
+
- Example: Show the number of vacant homes below the mean.
|
|
43
|
+
|
|
44
|
+
4. **centered-on** - Emphasize values that are near a key value.
|
|
45
|
+
- Keywords: centered on, focused on average, highlight average, competitive, close
|
|
46
|
+
- Example: Use color to show the areas where the percent of the republican votes is close to the percent of democratic votes.
|
|
47
|
+
|
|
48
|
+
5. **above-and-below** - When both high values and low values need emphasis.
|
|
49
|
+
- Keywords: diverging, above or below, bi-directional, over or under, growing or shrinking, growth or decline
|
|
50
|
+
- Example: Show the median household income above and below the national average.
|
|
51
|
+
|
|
52
|
+
6. **extremes** - When only the highest or lowest values need emphasis.
|
|
53
|
+
- Keywords: extremes, outliers
|
|
54
|
+
- Example: Emphasize the outliers of the votes for Democrats in the 2020 presidential election.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## **Instructions:**
|
|
59
|
+
|
|
60
|
+
- Call the appropriate tool for the layer based on the user's request
|
|
61
|
+
- Use exact field names from the layer info (not aliases)
|
|
62
|
+
- Use exact layer IDs from the layer info
|
|
63
|
+
- Match field types to tool requirements (each tool describes its field requirements in its description)
|
|
64
|
+
- Select appropriate color schemes and themes based on the data and user intent, only if user asks for them
|
|
65
|
+
- If the user asks for a specific style, use that tool
|
|
66
|
+
- If the user is vague, use your judgment to recommend the best tool
|
|
67
|
+
|
|
68
|
+
**Remember:** Each layer styling tool will apply a renderer to a layer, make it visible, and return results.
|
|
69
|
+
`;export{e as default};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
+
import"./CFDTXKJ6.js";var e=`# Navigation Tool Instructions
|
|
3
|
+
|
|
4
|
+
CRITICAL: You are FORBIDDEN from making multiple tool calls. You MUST make exactly ONE tool call.
|
|
5
|
+
|
|
6
|
+
Assigned task:
|
|
7
|
+
{assignedTask}
|
|
8
|
+
|
|
9
|
+
Latest user request:
|
|
10
|
+
{userRequest}
|
|
11
|
+
|
|
12
|
+
Prior steps:
|
|
13
|
+
{priorSteps}
|
|
14
|
+
|
|
15
|
+
Use the assigned task as the primary instruction for the current query. The question will **not** be restated again here.
|
|
16
|
+
Use the latest user request as supporting context when needed.
|
|
17
|
+
Use prior steps only when the assigned task clearly depends on earlier results.
|
|
18
|
+
|
|
19
|
+
Detected intent:
|
|
20
|
+
{intent}
|
|
21
|
+
|
|
22
|
+
{bookmarksSection}
|
|
23
|
+
|
|
24
|
+
{layersSection}
|
|
25
|
+
|
|
26
|
+
{fieldsSection}
|
|
27
|
+
|
|
28
|
+
Current zoom level: {currentZoom}
|
|
29
|
+
|
|
30
|
+
Rules:
|
|
31
|
+
|
|
32
|
+
- Call exactly one navigation tool
|
|
33
|
+
- Use ONLY provided layerIds and fields if present
|
|
34
|
+
- Do NOT invent layerIds or field names
|
|
35
|
+
- If required context is missing, fall back to a valid non-layer tool
|
|
36
|
+
`;export{e as default};
|