@arcgis/ai-components 5.2.0-next.113 → 5.2.0-next.115

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/dist/agent-utils/LLMAgent.js +78 -53
  2. package/dist/agent-utils/types.d.ts +16 -3
  3. package/dist/agents/tools/filter/setFeatureEffect/adapter.js +17 -17
  4. package/dist/agents/tools/query/getStatistics/adapter.js +5 -5
  5. package/dist/agents/tools/query/getTopFeatures/adapter.js +3 -3
  6. package/dist/agents/tools/query/queryFeatures/adapter.js +1 -1
  7. package/dist/cdn/{7KSFIRXB.js → 23CPLCYW.js} +1 -1
  8. package/dist/cdn/{DG27JEYG.js → 2NODROJN.js} +2 -2
  9. package/dist/cdn/{TWU3QXAS.js → 4PKMJMND.js} +1 -1
  10. package/dist/cdn/{6P44KOKX.js → 4WYNWR6R.js} +1 -1
  11. package/dist/cdn/{6OOZSZRJ.js → 5QXGQW2N.js} +1 -1
  12. package/dist/cdn/6KSMVYBS.js +2 -0
  13. package/dist/cdn/{JICNSK6Y.js → 6XZYQ74A.js} +1 -1
  14. package/dist/cdn/{33PB7ALY.js → 6YRLY5TX.js} +1 -1
  15. package/dist/cdn/{WSWB3B7B.js → 7ELUGB4X.js} +1 -1
  16. package/dist/cdn/{BBPD2AS7.js → BJNYJCS5.js} +1 -1
  17. package/dist/cdn/{VNLSYVPE.js → BKAXFQIS.js} +1 -1
  18. package/dist/cdn/{POZYDAU2.js → BN7CIVBD.js} +1 -1
  19. package/dist/cdn/{V6HOUZPZ.js → C7P6MHMZ.js} +1 -1
  20. package/dist/cdn/{SZRJTQ54.js → CA3RNGPN.js} +1 -1
  21. package/dist/cdn/{POL6HKCG.js → CESQ3SFP.js} +1 -1
  22. package/dist/cdn/{ENM3L4AC.js → CLTV27HJ.js} +1 -1
  23. package/dist/cdn/{F5NIRETW.js → CSTXLFCP.js} +1 -1
  24. package/dist/cdn/{5A355PGH.js → CVAVY7R2.js} +1 -1
  25. package/dist/cdn/{HMNBUGH2.js → CZIAU7PC.js} +1 -1
  26. package/dist/cdn/{HMIDFTEI.js → DEPD7PJL.js} +1 -1
  27. package/dist/cdn/EJ7QJLUE.js +2 -0
  28. package/dist/cdn/{AVZ5Y6BK.js → ES54NWOB.js} +1 -1
  29. package/dist/cdn/{EDXTPEEU.js → FYIZOGHC.js} +1 -1
  30. package/dist/cdn/{SITY6L4S.js → FZTNWDOU.js} +1 -1
  31. package/dist/cdn/{HHP5YLUI.js → H4N7VNL5.js} +1 -1
  32. package/dist/cdn/{QNXI3WOF.js → HAHL6K4X.js} +2 -2
  33. package/dist/cdn/{EVMIYZWD.js → HFHRMM6Q.js} +1 -1
  34. package/dist/cdn/{2MWUBKWI.js → HSILCMAR.js} +1 -1
  35. package/dist/cdn/IMRIVNHX.js +2 -0
  36. package/dist/cdn/{IH26MIYY.js → ITCZC2VY.js} +1 -1
  37. package/dist/cdn/{AHCXG7XF.js → JNOH4PD5.js} +1 -1
  38. package/dist/cdn/{LAVFUDUG.js → JTEY4E7E.js} +1 -1
  39. package/dist/cdn/{3UEKINYC.js → JTKVVKZK.js} +1 -1
  40. package/dist/cdn/{O4NVW75A.js → K5FWDMTV.js} +1 -1
  41. package/dist/cdn/KA3S22NQ.js +2 -0
  42. package/dist/cdn/{EYOWRGDP.js → KPJHQ424.js} +1 -1
  43. package/dist/cdn/{MXTXJKFE.js → KQGC2FCP.js} +1 -1
  44. package/dist/cdn/{DE26DAW5.js → LDIUJUI7.js} +1 -1
  45. package/dist/cdn/NR2O3AP2.js +2 -0
  46. package/dist/cdn/NWJQ7KTC.js +2 -0
  47. package/dist/cdn/{BL273EGZ.js → OT5ECP4V.js} +2 -0
  48. package/dist/cdn/{DWH23NJN.js → PGVLC374.js} +1 -1
  49. package/dist/cdn/{SXM4NUT5.js → PQRE67OM.js} +1 -1
  50. package/dist/cdn/QZL4SAYR.js +6 -0
  51. package/dist/cdn/{TO2NY7EA.js → RGOCE3QN.js} +1 -1
  52. package/dist/cdn/{EYY367WR.js → SLD4ZVT6.js} +1 -1
  53. package/dist/cdn/{H6P3WP5D.js → UT6JA4TK.js} +1 -1
  54. package/dist/cdn/{7EHOFQ2P.js → UZ6OAU3F.js} +2 -2
  55. package/dist/cdn/{33SFAZQG.js → VBEZDXBV.js} +1 -1
  56. package/dist/cdn/{RXF2NUOL.js → VF4BIBQT.js} +1 -1
  57. package/dist/cdn/VJRJ2HAM.js +3 -0
  58. package/dist/cdn/{UDRKUVZP.js → VYOIFJVE.js} +1 -1
  59. package/dist/cdn/{C7JPWFZE.js → XUYARLRP.js} +1 -1
  60. package/dist/cdn/ZA2WIUWH.js +2 -0
  61. package/dist/cdn/{TYATJUNF.js → ZCFYGCCV.js} +1 -1
  62. package/dist/cdn/ZGZX7GR5.js +2 -0
  63. package/dist/cdn/agent-utils/index.js +1 -1
  64. package/dist/cdn/assets/assistant/t9n/messages.ar.json +1 -1
  65. package/dist/cdn/assets/assistant/t9n/messages.bg.json +1 -1
  66. package/dist/cdn/assets/assistant/t9n/messages.bs.json +1 -1
  67. package/dist/cdn/assets/assistant/t9n/messages.ca.json +1 -1
  68. package/dist/cdn/assets/assistant/t9n/messages.cs.json +1 -1
  69. package/dist/cdn/assets/assistant/t9n/messages.da.json +1 -1
  70. package/dist/cdn/assets/assistant/t9n/messages.de.json +1 -1
  71. package/dist/cdn/assets/assistant/t9n/messages.el.json +1 -1
  72. package/dist/cdn/assets/assistant/t9n/messages.en.json +1 -1
  73. package/dist/cdn/assets/assistant/t9n/messages.es.json +1 -1
  74. package/dist/cdn/assets/assistant/t9n/messages.et.json +1 -1
  75. package/dist/cdn/assets/assistant/t9n/messages.fi.json +1 -1
  76. package/dist/cdn/assets/assistant/t9n/messages.fr.json +1 -1
  77. package/dist/cdn/assets/assistant/t9n/messages.he.json +1 -1
  78. package/dist/cdn/assets/assistant/t9n/messages.hr.json +1 -1
  79. package/dist/cdn/assets/assistant/t9n/messages.hu.json +1 -1
  80. package/dist/cdn/assets/assistant/t9n/messages.id.json +1 -1
  81. package/dist/cdn/assets/assistant/t9n/messages.it.json +1 -1
  82. package/dist/cdn/assets/assistant/t9n/messages.ja.json +1 -1
  83. package/dist/cdn/assets/assistant/t9n/messages.ko.json +1 -1
  84. package/dist/cdn/assets/assistant/t9n/messages.lt.json +1 -1
  85. package/dist/cdn/assets/assistant/t9n/messages.lv.json +1 -1
  86. package/dist/cdn/assets/assistant/t9n/messages.nl.json +1 -1
  87. package/dist/cdn/assets/assistant/t9n/messages.no.json +1 -1
  88. package/dist/cdn/assets/assistant/t9n/messages.pl.json +1 -1
  89. package/dist/cdn/assets/assistant/t9n/messages.pt-BR.json +1 -1
  90. package/dist/cdn/assets/assistant/t9n/messages.pt-PT.json +1 -1
  91. package/dist/cdn/assets/assistant/t9n/messages.ro.json +1 -1
  92. package/dist/cdn/assets/assistant/t9n/messages.ru.json +1 -1
  93. package/dist/cdn/assets/assistant/t9n/messages.sk.json +1 -1
  94. package/dist/cdn/assets/assistant/t9n/messages.sl.json +1 -1
  95. package/dist/cdn/assets/assistant/t9n/messages.sr.json +1 -1
  96. package/dist/cdn/assets/assistant/t9n/messages.sv.json +1 -1
  97. package/dist/cdn/assets/assistant/t9n/messages.th.json +1 -1
  98. package/dist/cdn/assets/assistant/t9n/messages.tr.json +1 -1
  99. package/dist/cdn/assets/assistant/t9n/messages.uk.json +1 -1
  100. package/dist/cdn/assets/assistant/t9n/messages.vi.json +1 -1
  101. package/dist/cdn/assets/assistant/t9n/messages.zh-CN.json +1 -1
  102. package/dist/cdn/assets/assistant/t9n/messages.zh-HK.json +1 -1
  103. package/dist/cdn/assets/assistant/t9n/messages.zh-TW.json +1 -1
  104. package/dist/cdn/assets/assistant-chat-entry/t9n/messages.en.json +1 -1
  105. package/dist/cdn/assets/assistant-interrupt/t9n/messages.ar.json +1 -1
  106. package/dist/cdn/assets/assistant-interrupt/t9n/messages.bg.json +1 -1
  107. package/dist/cdn/assets/assistant-interrupt/t9n/messages.bs.json +1 -1
  108. package/dist/cdn/assets/assistant-interrupt/t9n/messages.ca.json +1 -1
  109. package/dist/cdn/assets/assistant-interrupt/t9n/messages.cs.json +1 -1
  110. package/dist/cdn/assets/assistant-interrupt/t9n/messages.da.json +1 -1
  111. package/dist/cdn/assets/assistant-interrupt/t9n/messages.de.json +1 -1
  112. package/dist/cdn/assets/assistant-interrupt/t9n/messages.el.json +1 -1
  113. package/dist/cdn/assets/assistant-interrupt/t9n/messages.es.json +1 -1
  114. package/dist/cdn/assets/assistant-interrupt/t9n/messages.et.json +1 -1
  115. package/dist/cdn/assets/assistant-interrupt/t9n/messages.fi.json +1 -1
  116. package/dist/cdn/assets/assistant-interrupt/t9n/messages.fr.json +1 -1
  117. package/dist/cdn/assets/assistant-interrupt/t9n/messages.he.json +1 -1
  118. package/dist/cdn/assets/assistant-interrupt/t9n/messages.hr.json +1 -1
  119. package/dist/cdn/assets/assistant-interrupt/t9n/messages.hu.json +1 -1
  120. package/dist/cdn/assets/assistant-interrupt/t9n/messages.id.json +1 -1
  121. package/dist/cdn/assets/assistant-interrupt/t9n/messages.it.json +1 -1
  122. package/dist/cdn/assets/assistant-interrupt/t9n/messages.ja.json +1 -1
  123. package/dist/cdn/assets/assistant-interrupt/t9n/messages.ko.json +1 -1
  124. package/dist/cdn/assets/assistant-interrupt/t9n/messages.lt.json +1 -1
  125. package/dist/cdn/assets/assistant-interrupt/t9n/messages.lv.json +1 -1
  126. package/dist/cdn/assets/assistant-interrupt/t9n/messages.nl.json +1 -1
  127. package/dist/cdn/assets/assistant-interrupt/t9n/messages.no.json +1 -1
  128. package/dist/cdn/assets/assistant-interrupt/t9n/messages.pl.json +1 -1
  129. package/dist/cdn/assets/assistant-interrupt/t9n/messages.pt-BR.json +1 -1
  130. package/dist/cdn/assets/assistant-interrupt/t9n/messages.pt-PT.json +1 -1
  131. package/dist/cdn/assets/assistant-interrupt/t9n/messages.ro.json +1 -1
  132. package/dist/cdn/assets/assistant-interrupt/t9n/messages.ru.json +1 -1
  133. package/dist/cdn/assets/assistant-interrupt/t9n/messages.sk.json +1 -1
  134. package/dist/cdn/assets/assistant-interrupt/t9n/messages.sl.json +1 -1
  135. package/dist/cdn/assets/assistant-interrupt/t9n/messages.sr.json +1 -1
  136. package/dist/cdn/assets/assistant-interrupt/t9n/messages.sv.json +1 -1
  137. package/dist/cdn/assets/assistant-interrupt/t9n/messages.th.json +1 -1
  138. package/dist/cdn/assets/assistant-interrupt/t9n/messages.tr.json +1 -1
  139. package/dist/cdn/assets/assistant-interrupt/t9n/messages.uk.json +1 -1
  140. package/dist/cdn/assets/assistant-interrupt/t9n/messages.vi.json +1 -1
  141. package/dist/cdn/assets/assistant-interrupt/t9n/messages.zh-CN.json +1 -1
  142. package/dist/cdn/assets/assistant-interrupt/t9n/messages.zh-HK.json +1 -1
  143. package/dist/cdn/assets/assistant-interrupt/t9n/messages.zh-TW.json +1 -1
  144. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.ar.json +1 -0
  145. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.bg.json +1 -0
  146. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.bs.json +1 -0
  147. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.ca.json +1 -0
  148. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.cs.json +1 -0
  149. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.da.json +1 -0
  150. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.de.json +1 -0
  151. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.el.json +1 -0
  152. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.es.json +1 -0
  153. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.et.json +1 -0
  154. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.fi.json +1 -0
  155. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.fr.json +1 -0
  156. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.he.json +1 -0
  157. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.hr.json +1 -0
  158. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.hu.json +1 -0
  159. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.id.json +1 -0
  160. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.it.json +1 -0
  161. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.ja.json +1 -0
  162. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.ko.json +1 -0
  163. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.lt.json +1 -0
  164. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.lv.json +1 -0
  165. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.nl.json +1 -0
  166. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.no.json +1 -0
  167. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.pl.json +1 -0
  168. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.pt-BR.json +1 -0
  169. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.pt-PT.json +1 -0
  170. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.ro.json +1 -0
  171. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.ru.json +1 -0
  172. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.sk.json +1 -0
  173. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.sl.json +1 -0
  174. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.sr.json +1 -0
  175. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.sv.json +1 -0
  176. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.th.json +1 -0
  177. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.tr.json +1 -0
  178. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.uk.json +1 -0
  179. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.vi.json +1 -0
  180. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.zh-CN.json +1 -0
  181. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.zh-HK.json +1 -0
  182. package/dist/cdn/assets/assistant-interrupt-preview/t9n/messages.zh-TW.json +1 -0
  183. package/dist/cdn/assets/assistant-message/t9n/messages.ar.json +1 -0
  184. package/dist/cdn/assets/assistant-message/t9n/messages.bg.json +1 -0
  185. package/dist/cdn/assets/assistant-message/t9n/messages.bs.json +1 -0
  186. package/dist/cdn/assets/assistant-message/t9n/messages.ca.json +1 -0
  187. package/dist/cdn/assets/assistant-message/t9n/messages.cs.json +1 -0
  188. package/dist/cdn/assets/assistant-message/t9n/messages.da.json +1 -0
  189. package/dist/cdn/assets/assistant-message/t9n/messages.de.json +1 -0
  190. package/dist/cdn/assets/assistant-message/t9n/messages.el.json +1 -0
  191. package/dist/cdn/assets/assistant-message/t9n/messages.es.json +1 -0
  192. package/dist/cdn/assets/assistant-message/t9n/messages.et.json +1 -0
  193. package/dist/cdn/assets/assistant-message/t9n/messages.fi.json +1 -0
  194. package/dist/cdn/assets/assistant-message/t9n/messages.fr.json +1 -0
  195. package/dist/cdn/assets/assistant-message/t9n/messages.he.json +1 -0
  196. package/dist/cdn/assets/assistant-message/t9n/messages.hr.json +1 -0
  197. package/dist/cdn/assets/assistant-message/t9n/messages.hu.json +1 -0
  198. package/dist/cdn/assets/assistant-message/t9n/messages.id.json +1 -0
  199. package/dist/cdn/assets/assistant-message/t9n/messages.it.json +1 -0
  200. package/dist/cdn/assets/assistant-message/t9n/messages.ja.json +1 -0
  201. package/dist/cdn/assets/assistant-message/t9n/messages.ko.json +1 -0
  202. package/dist/cdn/assets/assistant-message/t9n/messages.lt.json +1 -0
  203. package/dist/cdn/assets/assistant-message/t9n/messages.lv.json +1 -0
  204. package/dist/cdn/assets/assistant-message/t9n/messages.nl.json +1 -0
  205. package/dist/cdn/assets/assistant-message/t9n/messages.no.json +1 -0
  206. package/dist/cdn/assets/assistant-message/t9n/messages.pl.json +1 -0
  207. package/dist/cdn/assets/assistant-message/t9n/messages.pt-BR.json +1 -0
  208. package/dist/cdn/assets/assistant-message/t9n/messages.pt-PT.json +1 -0
  209. package/dist/cdn/assets/assistant-message/t9n/messages.ro.json +1 -0
  210. package/dist/cdn/assets/assistant-message/t9n/messages.ru.json +1 -0
  211. package/dist/cdn/assets/assistant-message/t9n/messages.sk.json +1 -0
  212. package/dist/cdn/assets/assistant-message/t9n/messages.sl.json +1 -0
  213. package/dist/cdn/assets/assistant-message/t9n/messages.sr.json +1 -0
  214. package/dist/cdn/assets/assistant-message/t9n/messages.sv.json +1 -0
  215. package/dist/cdn/assets/assistant-message/t9n/messages.th.json +1 -0
  216. package/dist/cdn/assets/assistant-message/t9n/messages.tr.json +1 -0
  217. package/dist/cdn/assets/assistant-message/t9n/messages.uk.json +1 -0
  218. package/dist/cdn/assets/assistant-message/t9n/messages.vi.json +1 -0
  219. package/dist/cdn/assets/assistant-message/t9n/messages.zh-CN.json +1 -0
  220. package/dist/cdn/assets/assistant-message/t9n/messages.zh-HK.json +1 -0
  221. package/dist/cdn/assets/assistant-message/t9n/messages.zh-TW.json +1 -0
  222. package/dist/cdn/assets/assistant-message-loading/t9n/messages.ar.json +1 -0
  223. package/dist/cdn/assets/assistant-message-loading/t9n/messages.bg.json +1 -0
  224. package/dist/cdn/assets/assistant-message-loading/t9n/messages.bs.json +1 -0
  225. package/dist/cdn/assets/assistant-message-loading/t9n/messages.ca.json +1 -0
  226. package/dist/cdn/assets/assistant-message-loading/t9n/messages.cs.json +1 -0
  227. package/dist/cdn/assets/assistant-message-loading/t9n/messages.da.json +1 -0
  228. package/dist/cdn/assets/assistant-message-loading/t9n/messages.de.json +1 -0
  229. package/dist/cdn/assets/assistant-message-loading/t9n/messages.el.json +1 -0
  230. package/dist/cdn/assets/assistant-message-loading/t9n/messages.es.json +1 -0
  231. package/dist/cdn/assets/assistant-message-loading/t9n/messages.et.json +1 -0
  232. package/dist/cdn/assets/assistant-message-loading/t9n/messages.fi.json +1 -0
  233. package/dist/cdn/assets/assistant-message-loading/t9n/messages.fr.json +1 -0
  234. package/dist/cdn/assets/assistant-message-loading/t9n/messages.he.json +1 -0
  235. package/dist/cdn/assets/assistant-message-loading/t9n/messages.hr.json +1 -0
  236. package/dist/cdn/assets/assistant-message-loading/t9n/messages.hu.json +1 -0
  237. package/dist/cdn/assets/assistant-message-loading/t9n/messages.id.json +1 -0
  238. package/dist/cdn/assets/assistant-message-loading/t9n/messages.it.json +1 -0
  239. package/dist/cdn/assets/assistant-message-loading/t9n/messages.ja.json +1 -0
  240. package/dist/cdn/assets/assistant-message-loading/t9n/messages.ko.json +1 -0
  241. package/dist/cdn/assets/assistant-message-loading/t9n/messages.lt.json +1 -0
  242. package/dist/cdn/assets/assistant-message-loading/t9n/messages.lv.json +1 -0
  243. package/dist/cdn/assets/assistant-message-loading/t9n/messages.nl.json +1 -0
  244. package/dist/cdn/assets/assistant-message-loading/t9n/messages.no.json +1 -0
  245. package/dist/cdn/assets/assistant-message-loading/t9n/messages.pl.json +1 -0
  246. package/dist/cdn/assets/assistant-message-loading/t9n/messages.pt-BR.json +1 -0
  247. package/dist/cdn/assets/assistant-message-loading/t9n/messages.pt-PT.json +1 -0
  248. package/dist/cdn/assets/assistant-message-loading/t9n/messages.ro.json +1 -0
  249. package/dist/cdn/assets/assistant-message-loading/t9n/messages.ru.json +1 -0
  250. package/dist/cdn/assets/assistant-message-loading/t9n/messages.sk.json +1 -0
  251. package/dist/cdn/assets/assistant-message-loading/t9n/messages.sl.json +1 -0
  252. package/dist/cdn/assets/assistant-message-loading/t9n/messages.sr.json +1 -0
  253. package/dist/cdn/assets/assistant-message-loading/t9n/messages.sv.json +1 -0
  254. package/dist/cdn/assets/assistant-message-loading/t9n/messages.th.json +1 -0
  255. package/dist/cdn/assets/assistant-message-loading/t9n/messages.tr.json +1 -0
  256. package/dist/cdn/assets/assistant-message-loading/t9n/messages.uk.json +1 -0
  257. package/dist/cdn/assets/assistant-message-loading/t9n/messages.vi.json +1 -0
  258. package/dist/cdn/assets/assistant-message-loading/t9n/messages.zh-CN.json +1 -0
  259. package/dist/cdn/assets/assistant-message-loading/t9n/messages.zh-HK.json +1 -0
  260. package/dist/cdn/assets/assistant-message-loading/t9n/messages.zh-TW.json +1 -0
  261. package/dist/cdn/index.js +1 -1
  262. package/dist/chunks/SKILL.js +1 -1
  263. package/dist/chunks/SKILL2.js +1 -1
  264. package/dist/chunks/baseAgentState.js +7 -6
  265. package/dist/chunks/dataExplorationAgent.js +3 -3
  266. package/dist/chunks/intent_prompt.js +2 -0
  267. package/dist/chunks/orchestrator.js +9 -6
  268. package/dist/chunks/resolveGeometryFilter.js +149 -0
  269. package/dist/chunks/state.js +50 -39
  270. package/dist/components/arcgis-assistant/customElement.d.ts +23 -3
  271. package/dist/components/arcgis-assistant/customElement.js +213 -187
  272. package/dist/components/arcgis-assistant/types.d.ts +108 -0
  273. package/dist/components/arcgis-assistant-chat-entry/customElement.d.ts +15 -4
  274. package/dist/components/arcgis-assistant-chat-entry/customElement.js +344 -45
  275. package/dist/components/arcgis-assistant-chat-entry/index.js +3 -0
  276. package/dist/docs/api.json +1 -1
  277. package/dist/docs/docs.json +1 -1
  278. package/dist/docs/vscode.html-custom-data.json +1 -1
  279. package/dist/docs/web-types.json +1 -1
  280. package/dist/loader.js +2 -2
  281. package/dist/types/lumina.d.ts +2 -2
  282. package/dist/types/preact.d.ts +2 -2
  283. package/dist/types/react.d.ts +2 -2
  284. package/dist/types/stencil.d.ts +2 -2
  285. package/dist/utils/index.d.ts +20 -0
  286. package/package.json +5 -5
  287. package/dist/cdn/2O4DON37.js +0 -2
  288. package/dist/cdn/4AQBRGO2.js +0 -3
  289. package/dist/cdn/4IU63OWQ.js +0 -2
  290. package/dist/cdn/FS7GXTTQ.js +0 -6
  291. package/dist/cdn/JQYLMTDP.js +0 -2
  292. package/dist/cdn/OMF6ITSG.js +0 -2
  293. package/dist/cdn/RLEHNAIA.js +0 -2
  294. package/dist/cdn/SHI76XUV.js +0 -2
  295. package/dist/cdn/UHICISBZ.js +0 -2
  296. package/dist/cdn/ZFOG3KXV.js +0 -2
  297. package/dist/chunks/resolvePointGeometryFilter.js +0 -92
@@ -1,20 +1,20 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
2
  import { c as L } from "../../chunks/runtime.js";
3
- import { css as T, html as g } from "lit";
3
+ import { css as T, html as h } from "lit";
4
4
  import M from "@arcgis/core/core/Collection.js";
5
5
  import { whenOnce as R, watch as D, when as O } from "@arcgis/core/core/reactiveUtils.js";
6
6
  import U from "@arcgis/core/portal/Portal.js";
7
- import { LitElement as B, createEvent as d, nothing as _ } from "@arcgis/lumina";
7
+ import { LitElement as B, createEvent as m, nothing as v } from "@arcgis/lumina";
8
8
  import * as z from "@arcgis/toolkit/log";
9
9
  import { rethrowError as N } from "@arcgis/toolkit/log";
10
10
  import { createRef as w, ref as E } from "lit/directives/ref.js";
11
- import { u as F } from "../../chunks/useT9n.js";
12
- import { O as q } from "../../chunks/orchestrator.js";
11
+ import { u as q } from "../../chunks/useT9n.js";
12
+ import { O as F } from "../../chunks/orchestrator.js";
13
13
  import "@langchain/core/callbacks/dispatch/web";
14
14
  import "@langchain/core/prompts";
15
15
  import "@langchain/openai";
16
16
  import "@arcgis/core/request.js";
17
- import S from "@arcgis/core/identity/IdentityManager.js";
17
+ import $ from "@arcgis/core/identity/IdentityManager.js";
18
18
  import "@arcgis/toolkit/string";
19
19
  import "@arcgis/core/config.js";
20
20
  import "@langchain/core/messages";
@@ -22,15 +22,15 @@ import "@arcgis/core/layers/FeatureLayer.js";
22
22
  import "../../chunks/generateLayerDescriptions.js";
23
23
  import "@langchain/langgraph/web";
24
24
  import H from "@arcgis/core/core/Accessor.js";
25
- import { property as b, subclass as V } from "@arcgis/core/core/accessorSupport/decorators.js";
26
- import { marked as I } from "marked";
25
+ import { property as _, subclass as V } from "@arcgis/core/core/accessorSupport/decorators.js";
26
+ import { marked as S } from "marked";
27
27
  import { g as j } from "../../chunks/utils3.js";
28
- import { g as $ } from "../../chunks/slottableRequestUtils.js";
28
+ import { g as I } from "../../chunks/slottableRequestUtils.js";
29
29
  const W = T`:host{display:block;width:var(--arcgis-internal-panel-width, 100%);height:var(--arcgis-internal-expand-max-height, 100%);--calcite-panel-content-bottom-space: 0}.footer-container{display:flex;flex-direction:column;flex:1 1 0;gap:var(--calcite-spacing-md)}.content-container{display:flex;flex-direction:column;flex:1 1 0;min-height:0;position:relative;overflow:auto}.suggested-prompts-container{display:flex;justify-content:center;width:100%;background:var(--calcite-panel-background-color, var(--calcite-color-background))}.suggested-prompts{display:block;padding:var(--calcite-spacing-md);max-width:100%;box-sizing:border-box}.error-notice{padding:var(--calcite-spacing-sm)}.interrupt-waiting-message{font-style:italic;color:var(--calcite-color-text-2)}`;
30
- function k(o) {
31
- return o.trim() ? I.lexer(o).filter((t) => t.type !== "space").map((t) => I.parser([t])) : [];
30
+ function k(l) {
31
+ return l.trim() ? S.lexer(l).filter((t) => t.type !== "space").map((t) => S.parser([t])) : [];
32
32
  }
33
- class P {
33
+ class C {
34
34
  constructor() {
35
35
  this._stableParts = [], this._stableText = "", this._rawText = "";
36
36
  }
@@ -67,10 +67,10 @@ class P {
67
67
  _lastSafeBoundary(t) {
68
68
  const e = t.split(`
69
69
  `);
70
- let s = !1, r = 0, i = 0;
71
- for (const l of e)
72
- /^\s*(```|~~~)/u.test(l) && (s = !s), i += l.length + 1, l.trim() === "" && !s && (r = i);
73
- return r < t.length ? r : 0;
70
+ let s = !1, i = 0, r = 0;
71
+ for (const d of e)
72
+ /^\s*(```|~~~)/u.test(d) && (s = !s), r += d.length + 1, d.trim() === "" && !s && (i = r);
73
+ return i < t.length ? i : 0;
74
74
  }
75
75
  /**
76
76
  * Remove incomplete syntax at the end so we do not render partial markup.
@@ -86,11 +86,11 @@ class P {
86
86
  const s = this._earliestUnclosedTag(t);
87
87
  if (s !== -1)
88
88
  return t.slice(0, s);
89
- const r = t.lastIndexOf("[");
90
- if (r !== -1) {
91
- const i = t.slice(r);
92
- if (!/\[[^\]]*\]\([^)]*\)/u.test(i))
93
- return t.slice(0, r);
89
+ const i = t.lastIndexOf("[");
90
+ if (i !== -1) {
91
+ const r = t.slice(i);
92
+ if (!/\[[^\]]*\]\([^)]*\)/u.test(r))
93
+ return t.slice(0, i);
94
94
  }
95
95
  return t;
96
96
  }
@@ -113,59 +113,59 @@ class P {
113
113
  "source",
114
114
  "track",
115
115
  "wbr"
116
- ]), s = /<(\/?)([a-zA-Z][\w-]*)\b[^>]*?(\/?)>/gu, r = [];
117
- for (let i = s.exec(t); i; i = s.exec(t)) {
118
- const [, l, a, n] = i, c = a.toLowerCase();
119
- if (!(e.has(c) || n === "/"))
120
- if (l === "/") {
121
- for (let h = r.length - 1; h >= 0; h--)
122
- if (r[h].name === c) {
123
- r.splice(h);
116
+ ]), s = /<(\/?)([a-zA-Z][\w-]*)\b[^>]*?(\/?)>/gu, i = [];
117
+ for (let r = s.exec(t); r; r = s.exec(t)) {
118
+ const [, d, p, o] = r, c = p.toLowerCase();
119
+ if (!(e.has(c) || o === "/"))
120
+ if (d === "/") {
121
+ for (let a = i.length - 1; a >= 0; a--)
122
+ if (i[a].name === c) {
123
+ i.splice(a);
124
124
  break;
125
125
  }
126
126
  } else
127
- r.push({ name: c, index: i.index });
127
+ i.push({ name: c, index: r.index });
128
128
  }
129
- return r.length ? r[0].index : -1;
129
+ return i.length ? i[0].index : -1;
130
130
  }
131
131
  }
132
- function G(o) {
133
- const t = new P();
134
- return t.push(o), t.finalize();
132
+ function G(l) {
133
+ const t = new C();
134
+ return t.push(l), t.finalize();
135
135
  }
136
- const Z = async (o) => await new Promise((t) => setTimeout(t, o));
137
- async function* J(o, { chunkSize: t = 15, delay: e = 50 } = {}) {
138
- const s = new P();
139
- for (let r = 0; r < o.length; r += t)
140
- yield s.push(o.slice(r, r + t)), await Z(e);
136
+ const Z = async (l) => await new Promise((t) => setTimeout(t, l));
137
+ async function* J(l, { chunkSize: t = 15, delay: e = 50 } = {}) {
138
+ const s = new C();
139
+ for (let i = 0; i < l.length; i += t)
140
+ yield s.push(l.slice(i, i + t)), await Z(e);
141
141
  yield s.finalize();
142
142
  }
143
- var K = Object.defineProperty, Q = Object.getOwnPropertyDescriptor, m = (o, t, e, s) => {
144
- for (var r = s > 1 ? void 0 : s ? Q(t, e) : t, i = o.length - 1, l; i >= 0; i--)
145
- (l = o[i]) && (r = (s ? l(t, e, r) : l(r)) || r);
146
- return s && r && K(t, e, r), r;
143
+ var K = Object.defineProperty, Q = Object.getOwnPropertyDescriptor, f = (l, t, e, s) => {
144
+ for (var i = s > 1 ? void 0 : s ? Q(t, e) : t, r = l.length - 1, d; r >= 0; r--)
145
+ (d = l[r]) && (i = (s ? d(t, e, i) : d(i)) || i);
146
+ return s && i && K(t, e, i), i;
147
147
  };
148
- const A = (o) => !o || typeof o != "object" ? !1 : o.name === "AbortError";
149
- async function* C(o, t, e, s, r = !1) {
150
- if (r) {
148
+ const A = (l) => !l || typeof l != "object" ? !1 : l.name === "AbortError";
149
+ async function* P(l, t, e, s, i = !1) {
150
+ if (i) {
151
151
  if (s?.aborted) {
152
152
  yield { type: "cancelled", log: e, runId: t };
153
153
  return;
154
154
  }
155
- yield { type: "block-data", blockType: "text", data: { parts: G(o) }, runId: t };
155
+ yield { type: "block-data", blockType: "text", data: { parts: G(l) }, runId: t };
156
156
  return;
157
157
  }
158
- for await (const i of J(o)) {
158
+ for await (const r of J(l)) {
159
159
  if (s?.aborted) {
160
160
  yield { type: "cancelled", log: e, runId: t };
161
161
  return;
162
162
  }
163
- yield { type: "block-data", blockType: "text", data: { parts: i }, runId: t };
163
+ yield { type: "block-data", blockType: "text", data: { parts: r }, runId: t };
164
164
  }
165
165
  }
166
- let p = class extends H {
167
- constructor(o) {
168
- super(o), this.view = null, this.streamingDisabled = !1, this.runtimeEventsEnabled = !1, this.loading = !1, this.processing = !1, this.processingStep = "";
166
+ let b = class extends H {
167
+ constructor(l) {
168
+ super(l), this.view = null, this.streamingDisabled = !1, this.runtimeEventsEnabled = !1, this.loading = !1, this.processing = !1, this.processingStep = "";
169
169
  }
170
170
  async load() {
171
171
  this._set("loading", !0);
@@ -181,7 +181,7 @@ let p = class extends H {
181
181
  async _initialize() {
182
182
  this.removeHandles(), await Promise.all([this.portal.load(), this.view?.when()]), this.view && await R(() => !this.view.updating), this._set(
183
183
  "orchestrator",
184
- await q.init({
184
+ await F.init({
185
185
  agents: [...this.agents],
186
186
  runtimeEventsEnabled: this.runtimeEventsEnabled,
187
187
  view: this.view ?? void 0
@@ -198,95 +198,95 @@ let p = class extends H {
198
198
  clearChatHistory() {
199
199
  this.orchestrator?.newConversation();
200
200
  }
201
- async *ask(o, t, e) {
201
+ async *ask(l, t, e) {
202
202
  if (!this.orchestrator)
203
203
  throw new Error("Orchestrator not initialized yet.");
204
204
  this._set("processing", !0), this._set("processingStep", "");
205
205
  const s = [];
206
- let r, i = "pending";
206
+ let i, r = "pending";
207
207
  try {
208
- const l = this.orchestrator.ask(o, t);
209
- for await (const a of l)
210
- switch (i = a.runId, a.type) {
208
+ const d = this.orchestrator.ask(l, t);
209
+ for await (const p of d)
210
+ switch (r = p.runId, p.type) {
211
211
  case "runtime": {
212
- yield { type: "runtime", event: a, runId: i };
212
+ yield { type: "runtime", event: p, runId: r };
213
213
  break;
214
214
  }
215
215
  case "trace": {
216
- this._set("processingStep", a.data.text), s.push(a.data.text);
216
+ this._set("processingStep", p.data.text), s.push(p.data.text);
217
217
  break;
218
218
  }
219
219
  case "completed": {
220
220
  this._set("processing", !1), this._set("processingStep", "");
221
- const n = a.result, c = !!n.content.length, h = !!r?.length;
222
- if (!c && !h) {
223
- yield { type: "completed", error: "No response received.", log: s, runId: i };
221
+ const o = p.result, c = !!o.content.length, a = !!i?.length;
222
+ if (!c && !a) {
223
+ yield { type: "completed", error: "No response received.", log: s, runId: r };
224
224
  return;
225
225
  }
226
- const u = n.content;
227
- if (yield { type: "block-start", blockType: "text", runId: i }, yield* C(u, i, s, e, this.streamingDisabled), yield { type: "block-end", blockType: "text", runId: i }, h)
228
- for (const y of r) {
226
+ const n = o.content;
227
+ if (yield { type: "block-start", blockType: "text", runId: r }, yield* P(n, r, s, e, this.streamingDisabled), yield { type: "block-end", blockType: "text", runId: r }, a)
228
+ for (const g of i) {
229
229
  if (e?.aborted) {
230
- yield { type: "cancelled", log: s, runId: i };
230
+ yield { type: "cancelled", log: s, runId: r };
231
231
  return;
232
232
  }
233
- const { type: f, data: v } = y;
234
- if (yield { type: "block-start", blockType: f, runId: i }, f === "text") {
235
- const x = typeof v?.content == "string" ? v.content : "";
236
- yield* C(x, i, s, e, this.streamingDisabled);
233
+ const { type: u, data: y } = g;
234
+ if (yield { type: "block-start", blockType: u, runId: r }, u === "text") {
235
+ const x = typeof y?.content == "string" ? y.content : "";
236
+ yield* P(x, r, s, e, this.streamingDisabled);
237
237
  } else
238
- yield { type: "block-data", blockType: f, data: v, runId: i };
239
- yield { type: "block-end", blockType: f, runId: i };
238
+ yield { type: "block-data", blockType: u, data: y, runId: r };
239
+ yield { type: "block-end", blockType: u, runId: r };
240
240
  }
241
- yield { type: "completed", response: u, blocks: r, log: s, runId: i };
241
+ yield { type: "completed", response: n, blocks: i, log: s, runId: r };
242
242
  return;
243
243
  }
244
244
  case "ux-suggestion": {
245
- const n = a.suggestion;
246
- r = r ? [...r, n] : [n];
245
+ const o = p.suggestion;
246
+ i = i ? [...i, o] : [o];
247
247
  break;
248
248
  }
249
249
  case "interrupt": {
250
- const { kind: n, message: c, metadata: h } = a.interrupt, u = Array.isArray(h) ? h.filter((f) => typeof f == "string") : [], y = (() => {
251
- switch (n) {
250
+ const { kind: o, message: c, metadata: a } = p.interrupt, n = Array.isArray(a) ? a.filter((u) => typeof u == "string") : [], g = (() => {
251
+ switch (o) {
252
252
  case "booleanChoice":
253
- return { type: "boolean-choice", message: c, options: u };
253
+ return { type: "boolean-choice", message: c, options: n };
254
254
  case "singleSelection":
255
- return { type: "single-select", message: c, options: u };
255
+ return { type: "single-select", message: c, options: n };
256
256
  case "multipleSelection":
257
- return { type: "multi-select", message: c, options: u };
257
+ return { type: "multi-select", message: c, options: n };
258
258
  case "textInput":
259
259
  return { type: "text-input", message: c };
260
260
  default:
261
- return { type: n, message: c, options: u };
261
+ return { type: o, message: c, options: n };
262
262
  }
263
263
  })();
264
- this._set("processingStep", "Waiting for user input..."), yield { type: "interrupt", payload: y, runId: i };
264
+ this._set("processingStep", "Waiting for user input..."), yield { type: "interrupt", payload: g, runId: r };
265
265
  break;
266
266
  }
267
267
  case "cancelled": {
268
- yield { type: "cancelled", log: s, runId: i };
268
+ yield { type: "cancelled", log: s, runId: r };
269
269
  return;
270
270
  }
271
271
  case "error": {
272
- if (e?.aborted || A(a.error)) {
273
- yield { type: "cancelled", log: s, runId: i };
272
+ if (e?.aborted || A(p.error)) {
273
+ yield { type: "cancelled", log: s, runId: r };
274
274
  return;
275
275
  }
276
- yield { type: "completed", error: a.error.message, log: s, runId: i };
276
+ yield { type: "completed", error: p.error.message, log: s, runId: r };
277
277
  return;
278
278
  }
279
279
  default: {
280
- console.warn("Unknown event type:", a);
280
+ console.warn("Unknown event type:", p);
281
281
  break;
282
282
  }
283
283
  }
284
- } catch (l) {
285
- if (e?.aborted || A(l)) {
286
- yield { type: "cancelled", log: s, runId: i };
284
+ } catch (d) {
285
+ if (e?.aborted || A(d)) {
286
+ yield { type: "cancelled", log: s, runId: r };
287
287
  return;
288
288
  }
289
- console.warn("Error during message processing:", l), yield { type: "completed", error: "An error occurred during message processing.", log: s, runId: "error" };
289
+ console.warn("Error during message processing:", d), yield { type: "completed", error: "An error occurred during message processing.", log: s, runId: "error" };
290
290
  return;
291
291
  } finally {
292
292
  this._set("processing", !1);
@@ -296,49 +296,58 @@ let p = class extends H {
296
296
  this.orchestrator?.cancel();
297
297
  }
298
298
  };
299
- m([
300
- b({ readOnly: !0 })
301
- ], p.prototype, "orchestrator", 2);
302
- m([
303
- b()
304
- ], p.prototype, "agents", 2);
305
- m([
306
- b()
307
- ], p.prototype, "portal", 2);
308
- m([
309
- b()
310
- ], p.prototype, "view", 2);
311
- m([
312
- b()
313
- ], p.prototype, "streamingDisabled", 2);
314
- m([
315
- b()
316
- ], p.prototype, "runtimeEventsEnabled", 2);
317
- m([
318
- b({ readOnly: !0 })
319
- ], p.prototype, "loading", 2);
320
- m([
321
- b({ readOnly: !0 })
322
- ], p.prototype, "processing", 2);
323
- m([
324
- b({ readOnly: !0 })
325
- ], p.prototype, "processingStep", 2);
326
- p = m([
299
+ f([
300
+ _({ readOnly: !0 })
301
+ ], b.prototype, "orchestrator", 2);
302
+ f([
303
+ _()
304
+ ], b.prototype, "agents", 2);
305
+ f([
306
+ _()
307
+ ], b.prototype, "portal", 2);
308
+ f([
309
+ _()
310
+ ], b.prototype, "view", 2);
311
+ f([
312
+ _()
313
+ ], b.prototype, "streamingDisabled", 2);
314
+ f([
315
+ _()
316
+ ], b.prototype, "runtimeEventsEnabled", 2);
317
+ f([
318
+ _({ readOnly: !0 })
319
+ ], b.prototype, "loading", 2);
320
+ f([
321
+ _({ readOnly: !0 })
322
+ ], b.prototype, "processing", 2);
323
+ f([
324
+ _({ readOnly: !0 })
325
+ ], b.prototype, "processingStep", 2);
326
+ b = f([
327
327
  V("OrchestratorController")
328
- ], p);
328
+ ], b);
329
329
  const X = "Embeddings resource 'embeddings-v01.json' not found in the webmap portal item.", Y = "Embeddings not found for this web map.", tt = "https://developers.arcgis.com/javascript/latest/agentic-apps/ai-webmap-setup/#embeddings";
330
330
  class et extends B {
331
331
  constructor() {
332
- super(...arguments), this._messages = F({ blocking: !0 }), this.#t = w(), this.#o = w(), this.#i = w(), this.#e = null, this.#r = /* @__PURE__ */ new Map(), this.#s = U.getDefault(), this.#a = (t) => {
332
+ super(...arguments), this._messages = q({ blocking: !0 }), this.#t = w(), this.#o = w(), this.#i = w(), this.#e = null, this.#r = /* @__PURE__ */ new Map(), this.#s = U.getDefault(), this.#a = (t) => {
333
333
  t.stopPropagation(), this.cancelInterrupt();
334
334
  }, this.#n = (t) => {
335
335
  t.stopPropagation();
336
336
  const e = t.detail;
337
337
  this.submitInterrupt(e);
338
338
  }, this.#l = (t) => {
339
- t.stopPropagation(), this.keepSuggestedPrompts || (this.suggestedPrompts = []);
340
- const e = t.detail;
341
- this._inputValue = "", this.arcgisSubmit.emit(e), this.submitMessage(e);
339
+ if (t.stopPropagation(), t.defaultPrevented)
340
+ return;
341
+ const e = t.detail, s = typeof e == "string" ? e : e.prompt, i = typeof e == "string" ? void 0 : { displayText: e.displayText, parts: e.parts };
342
+ if (!this.#b(s, i?.parts ?? [])) {
343
+ t.preventDefault();
344
+ return;
345
+ }
346
+ if (this.arcgisSubmit.emit(e).defaultPrevented) {
347
+ t.preventDefault();
348
+ return;
349
+ }
350
+ this.keepSuggestedPrompts || (this.suggestedPrompts = []), this._inputValue = "", this.submitMessage(s, i);
342
351
  }, this.#c = (t) => {
343
352
  if (this._canceling = !0, t.stopPropagation(), this.arcgisCancel.emit(), this._interrupt) {
344
353
  this.orchestrator?.cancelInterrupt(), this._interrupt = null;
@@ -349,16 +358,16 @@ class et extends B {
349
358
  t.stopPropagation();
350
359
  const e = t.detail;
351
360
  this.arcgisFeedback.emit(e);
352
- }, this.#g = (t) => {
361
+ }, this.#d = (t) => {
353
362
  t.stopPropagation();
354
363
  const e = t.detail;
355
364
  this._inputValue = e.prompt, this.arcgisPromptSelect.emit(e);
356
365
  }, this.#u = (t) => {
357
366
  this.arcgisSlottableRequest.emit(t.detail);
358
- }, this._orchestratorController = null, this._interrupt = null, this._interruptDetails = [], this._error = null, this._inputValue = "", this._isAnswering = !1, this._canceling = !1, this.messages = new M([]), this.referenceElement = null, this.suggestedPrompts = [], this.feedbackEnabled = !1, this.keepSuggestedPrompts = !1, this.streamingDisabled = !1, this.runtimeEventsEnabled = !1, this.logEnabled = !1, this.copyEnabled = !1, this.voiceInputEnabled = !1, this.readAloudEnabled = !1, this.assistantAvatarEnabled = !1, this.userAvatarEnabled = !1, this.arcgisCancel = d(), this.arcgisError = d(), this.arcgisFeedback = d(), this.arcgisInterrupt = d(), this.arcgisInterruptCancel = d(), this.arcgisInterruptSubmit = d(), this.arcgisPromptSelect = d(), this.arcgisReady = d(), this.arcgisResponse = d(), this.arcgisRuntime = d({ bubbles: !1, composed: !1 }), this.arcgisSlottableRequest = d({ bubbles: !1, composed: !1 }), this.arcgisSubmit = d();
367
+ }, this._orchestratorController = null, this._interrupt = null, this._interruptDetails = [], this._error = null, this._submissionError = null, this._inputValue = "", this._isAnswering = !1, this._canceling = !1, this.messages = new M([]), this.referenceElement = null, this.suggestedPrompts = [], this.feedbackEnabled = !1, this.keepSuggestedPrompts = !1, this.streamingDisabled = !1, this.runtimeEventsEnabled = !1, this.logEnabled = !1, this.copyEnabled = !1, this.voiceInputEnabled = !1, this.readAloudEnabled = !1, this.assistantAvatarEnabled = !1, this.userAvatarEnabled = !1, this.arcgisCancel = m(), this.arcgisError = m(), this.arcgisFeedback = m(), this.arcgisInterrupt = m(), this.arcgisInterruptCancel = m(), this.arcgisInterruptSubmit = m(), this.arcgisPromptSelect = m(), this.arcgisReady = m(), this.arcgisResponse = m(), this.arcgisRuntime = m({ bubbles: !1, composed: !1 }), this.arcgisSlottableRequest = m({ bubbles: !1, composed: !1 }), this.arcgisSubmit = m({ cancelable: !0 });
359
368
  }
360
369
  static {
361
- this.properties = { _orchestratorController: 16, _interrupt: 16, _interruptDetails: 16, _error: 16, _inputValue: 16, _isAnswering: 16, _signedInUserId: 16, _canceling: 16, _isSignedIn: 16, _user: 16, awaitingResponse: 32, awaitingResponseStep: 32, interrupt: 32, messages: 0, orchestrator: 32, entryMessage: 1, heading: 1, description: 1, referenceElement: 1, alwaysUseAgentId: 1, allowedAgentIds: 0, suggestedPrompts: 0, feedbackEnabled: 5, keepSuggestedPrompts: 5, streamingDisabled: 5, runtimeEventsEnabled: 5, logEnabled: 5, copyEnabled: 5, voiceInputEnabled: 5, readAloudEnabled: 5, assistantAvatarEnabled: 5, userAvatarEnabled: 5 };
370
+ this.properties = { _orchestratorController: 16, _interrupt: 16, _interruptDetails: 16, _error: 16, _submissionError: 16, _inputValue: 16, _isAnswering: 16, _signedInUserId: 16, _canceling: 16, _isSignedIn: 16, _user: 16, awaitingResponse: 32, awaitingResponseStep: 32, interrupt: 32, messages: 0, orchestrator: 32, entryMessage: 1, heading: 1, description: 1, referenceElement: 1, alwaysUseAgentId: 1, allowedAgentIds: 0, commandProvider: 0, entityProviders: 0, suggestedPrompts: 0, feedbackEnabled: 5, keepSuggestedPrompts: 5, streamingDisabled: 5, runtimeEventsEnabled: 5, logEnabled: 5, copyEnabled: 5, voiceInputEnabled: 5, readAloudEnabled: 5, assistantAvatarEnabled: 5, userAvatarEnabled: 5 };
362
371
  }
363
372
  static {
364
373
  this.styles = W;
@@ -374,7 +383,7 @@ class et extends B {
374
383
  #l;
375
384
  #c;
376
385
  #h;
377
- #g;
386
+ #d;
378
387
  #u;
379
388
  get _isSignedIn() {
380
389
  return !!this.#s?.user || !!this._signedInUserId;
@@ -401,99 +410,103 @@ class et extends B {
401
410
  this._reset(), this._orchestratorController?.clearChatHistory();
402
411
  }
403
412
  register(t) {
404
- this.#r.set(t.agent.id, t), this._orchestratorController && this.#d();
413
+ this.#r.set(t.agent.id, t), this._orchestratorController && this.#g();
405
414
  }
406
415
  submitInterrupt(t) {
407
416
  this.arcgisInterruptSubmit.emit(t), this._interrupt && (this._interruptDetails = [...this._interruptDetails, { interrupt: this._interrupt, response: t }]), this.orchestrator?.resumeInterrupt(t), this._interrupt = null;
408
417
  }
409
- async submitMessage(t) {
410
- const e = t.trim();
411
- if (!e || (this.messages.push({
418
+ async submitMessage(t, e) {
419
+ const s = t.trim(), i = e?.parts ?? [];
420
+ if (!s && !i.length || !this.#b(s, i) || (this.messages.push({
412
421
  id: Date.now().toString(),
413
422
  // TODO: Replace with a more robust ID generation method or get from orchestrator
414
423
  role: "user",
415
- content: e
424
+ content: e?.displayText?.trim() || s || i.map((o) => this.#f(o)).join(" "),
425
+ parts: i
416
426
  }), !this._orchestratorController))
417
427
  return;
418
428
  this.#e = new AbortController(), this._orchestratorController.streamingDisabled = this.streamingDisabled;
419
- const s = this.alwaysUseAgentId ? { routing: "direct", agentId: this.alwaysUseAgentId } : { routing: "auto", agentIds: this.allowedAgentIds }, r = this._orchestratorController.ask(e, s, this.#e?.signal);
420
- for await (const i of r) {
421
- const l = i.runId, a = this.messages.at(-1);
422
- switch (i.type) {
429
+ const r = this.#m(i), d = {
430
+ ...e?.parts ? { inputParts: e.parts } : {},
431
+ ...r ? { routing: "direct", agentId: r } : { routing: "auto", agentIds: this.allowedAgentIds }
432
+ }, p = this._orchestratorController.ask(s, d, this.#e?.signal);
433
+ for await (const o of p) {
434
+ const c = o.runId, a = this.messages.at(-1);
435
+ switch (o.type) {
423
436
  case "runtime":
424
- this.arcgisRuntime.emit(i.event);
437
+ this.arcgisRuntime.emit(o.event);
425
438
  break;
426
439
  case "block-start": {
427
440
  this._isAnswering = !0;
428
- const n = { type: i.blockType, isPending: !0 };
429
- if (a?.role === "assistant" && a.id === l) {
430
- const c = [...a.blocks ?? [], n];
431
- this.messages.splice(-1, 1, { ...a, blocks: c });
441
+ const n = { type: o.blockType, isPending: !0 };
442
+ if (a?.role === "assistant" && a.id === c) {
443
+ const g = [...a.blocks ?? [], n];
444
+ this.messages.splice(-1, 1, { ...a, blocks: g });
432
445
  } else
433
446
  this.messages.push({
434
447
  role: "assistant",
435
448
  blocks: [n],
436
- id: l,
449
+ id: c,
437
450
  isStreaming: !0,
438
451
  interrupts: this._interruptDetails
439
452
  }), this._interruptDetails = [];
440
453
  break;
441
454
  }
442
455
  case "block-data": {
443
- if (a?.role !== "assistant" || a?.id !== l)
456
+ if (a?.role !== "assistant" || a?.id !== c)
444
457
  break;
445
- const n = [...a.blocks ?? []], c = n[n.length - 1], { blockType: h, data: u } = i;
446
- if (c?.type !== h || !c.isPending)
458
+ const n = [...a.blocks ?? []], g = n[n.length - 1], { blockType: u, data: y } = o;
459
+ if (g?.type !== u || !g.isPending)
447
460
  break;
448
- h === "text" ? n[n.length - 1] = {
449
- ...c,
461
+ u === "text" ? n[n.length - 1] = {
462
+ ...g,
450
463
  data: {
451
- ...c.data,
452
- parts: u?.parts
464
+ ...g.data,
465
+ parts: y?.parts
453
466
  }
454
- } : n[n.length - 1] = { ...c, data: { ...c.data, ...u ?? {} } }, this.messages.splice(-1, 1, { ...a, blocks: n });
467
+ } : n[n.length - 1] = { ...g, data: { ...g.data, ...y ?? {} } }, this.messages.splice(-1, 1, { ...a, blocks: n });
455
468
  break;
456
469
  }
457
470
  case "block-end": {
458
- if (a?.role !== "assistant" || a?.id !== l)
471
+ if (a?.role !== "assistant" || a?.id !== c)
459
472
  break;
460
- const n = [...a.blocks ?? []], c = n[n.length - 1];
461
- if (c?.type !== i.blockType || !c.isPending)
473
+ const n = [...a.blocks ?? []], g = n[n.length - 1];
474
+ if (g?.type !== o.blockType || !g.isPending)
462
475
  break;
463
- const h = c;
464
- n[n.length - 1] = { ...h, data: { ...h.data }, isPending: !1 }, this.messages.splice(-1, 1, { ...a, blocks: n });
476
+ const u = g;
477
+ n[n.length - 1] = { ...u, data: { ...u.data }, isPending: !1 }, this.messages.splice(-1, 1, { ...a, blocks: n });
465
478
  break;
466
479
  }
467
480
  case "completed":
468
- i.error ? (this.messages.push({
481
+ o.error ? (this.messages.push({
469
482
  role: "assistant",
470
- log: i.log,
471
- error: i.error,
472
- id: l,
483
+ log: o.log,
484
+ error: o.error,
485
+ id: c,
473
486
  interrupts: this._interruptDetails
474
- }), this._interruptDetails = []) : a?.role === "assistant" && a.id === l && this.messages.splice(-1, 1, {
487
+ }), this._interruptDetails = []) : a?.role === "assistant" && a.id === c && this.messages.splice(-1, 1, {
475
488
  ...a,
476
- content: i.response,
489
+ content: o.response,
477
490
  blocks: a.blocks?.map((n) => ({ ...n, data: { ...n.data }, isPending: !1 })) ?? [],
478
491
  isStreaming: !1,
479
- log: i.log
492
+ log: o.log
480
493
  }), this._isAnswering = !1, this.#e = null, this._canceling = !1;
481
494
  break;
482
495
  case "interrupt":
483
- this._interrupt = { ...i.payload, id: l }, this.arcgisInterrupt.emit(this._interrupt);
496
+ this._interrupt = { ...o.payload, id: c }, this.arcgisInterrupt.emit(this._interrupt);
484
497
  break;
485
498
  case "cancelled":
486
- a?.role === "assistant" && a.id === l ? this.messages.splice(-1, 1, {
499
+ a?.role === "assistant" && a.id === c ? this.messages.splice(-1, 1, {
487
500
  ...a,
488
501
  blocks: a.blocks?.filter((n) => n.type === "text" || !n.isPending) ?? [],
489
502
  isStreaming: !1,
490
- log: i.log,
503
+ log: o.log,
491
504
  error: `(${this._messages.stoppedByUserLabel})`
492
505
  }) : (this.messages.push({
493
506
  role: "assistant",
494
- log: i.log,
507
+ log: o.log,
495
508
  error: `(${this._messages.stoppedByUserLabel})`,
496
- id: l,
509
+ id: c,
497
510
  interrupts: this._interruptDetails
498
511
  }), this._interruptDetails = []), this._isAnswering = !1, this.#e = null, this._canceling = !1;
499
512
  break;
@@ -501,50 +514,63 @@ class et extends B {
501
514
  }
502
515
  }
503
516
  unregister(t) {
504
- this.#r.delete(t), this._orchestratorController && this.#d();
517
+ this.#r.delete(t), this._orchestratorController && this.#g();
505
518
  }
506
519
  load() {
507
520
  this.manager.onLifecycle(this._reset.bind(this));
508
521
  }
509
522
  loaded() {
510
523
  this.manager.onLifecycle(() => {
511
- this.#t.value?.addEventListener("arcgisPromptSelect", this.#g), this.#t.value?.addEventListener("arcgisSubmit", this.#l), this.#t.value?.addEventListener("arcgisCancel", this.#c), this.#t.value?.addEventListener("arcgisFeedback", this.#h);
524
+ this.#t.value?.addEventListener("arcgisPromptSelect", this.#d), this.#t.value?.addEventListener("arcgisSubmit", this.#l), this.#t.value?.addEventListener("arcgisCancel", this.#c), this.#t.value?.addEventListener("arcgisFeedback", this.#h);
512
525
  const t = O(() => !!this._interrupt && !!this.#i.value, () => {
513
526
  const s = this.#i.value;
514
527
  s.removeEventListener("arcgisSubmit", this.#n), s.removeEventListener("arcgisCancel", this.#a), s.addEventListener("arcgisSubmit", this.#n, { once: !0 }), s.addEventListener("arcgisCancel", this.#a, { once: !0 });
515
528
  }), e = this.messages.on("after-add", (s) => {
516
- const r = s.item;
517
- r.role === "assistant" && (r.error || r.content) && this.arcgisResponse.emit(r);
529
+ const i = s.item;
530
+ i.role === "assistant" && (i.error || i.content) && this.arcgisResponse.emit(i);
518
531
  });
519
532
  return queueMicrotask(() => {
520
533
  this.#p();
521
534
  }), () => {
522
- t.remove(), e.remove(), this.#t.value?.removeEventListener("arcgisPromptSelect", this.#g), this.#i.value?.removeEventListener("arcgisSubmit", this.#n), this.#i.value?.removeEventListener("arcgisCancel", this.#a), this.#t.value?.removeEventListener("arcgisSubmit", this.#l), this.#t.value?.removeEventListener("arcgisCancel", this.#c), this.#t.value?.removeEventListener("arcgisFeedback", this.#h), this._orchestratorController?.destroy(), this._orchestratorController = null;
535
+ t.remove(), e.remove(), this.#t.value?.removeEventListener("arcgisPromptSelect", this.#d), this.#i.value?.removeEventListener("arcgisSubmit", this.#n), this.#i.value?.removeEventListener("arcgisCancel", this.#a), this.#t.value?.removeEventListener("arcgisSubmit", this.#l), this.#t.value?.removeEventListener("arcgisCancel", this.#c), this.#t.value?.removeEventListener("arcgisFeedback", this.#h), this._orchestratorController?.destroy(), this._orchestratorController = null;
523
536
  };
524
537
  });
525
538
  }
526
539
  willUpdate(t) {
527
540
  this.hasUpdated && t.has("runtimeEventsEnabled") && this._orchestratorController && (this._orchestratorController.destroy(), this._orchestratorController = null, this.#p());
528
541
  }
529
- async #m() {
530
- await S.checkSignInStatus(this.#s.url);
542
+ #f(t) {
543
+ return t.kind === "command" ? `/${t.id}` : `${t.trigger}${t.id}`;
544
+ }
545
+ #m(t) {
546
+ for (const e of t)
547
+ if (e.kind === "command" && e.agentId)
548
+ return e.agentId;
549
+ return this.alwaysUseAgentId;
550
+ }
551
+ #b(t, e) {
552
+ const s = e.filter((i) => i.kind === "command").length > 1;
553
+ return this._submissionError = s ? this._messages.multipleCommands : !t.trim() && e.length > 0 && !this.#m(e) ? this._messages.partsOnlyRequiresAgent : null, this._submissionError ? (this.arcgisError.emit(new Error(this._submissionError)), !1) : !0;
554
+ }
555
+ async #_() {
556
+ await $.checkSignInStatus(this.#s.url);
531
557
  const t = await this.#s.load();
532
558
  if (!t.helperServices?.aiAssistantServices?.url)
533
559
  throw new Error(this._messages.serviceUrlNotAvailableMessage);
534
560
  let s = !1;
535
- const r = await t.fetchSettings();
536
- if (r.aiConfig ? s = r.aiConfig.aiForOrg?.enabled === !0 && r.aiConfig.aiForOrg?.aiCapabilities?.aiAgents?.enabled === !0 : s = r.aiAssistantsEnabled === !0, !s)
561
+ const i = await t.fetchSettings();
562
+ if (i.aiConfig ? s = i.aiConfig.aiForOrg?.enabled === !0 && i.aiConfig.aiForOrg?.aiCapabilities?.aiAgents?.enabled === !0 : s = i.aiAssistantsEnabled === !0, !s)
537
563
  throw new Error(this._messages.aiAssistantsNotEnabledMessage);
538
564
  if (!t.isPortal && !(t?.user?.privileges?.includes("portal:user:useAIAssistants") === !0))
539
565
  throw new Error(this._messages.userPrivilegesNotSufficientMessage);
540
566
  }
541
- async #d() {
567
+ async #g() {
542
568
  try {
543
569
  this._error = null;
544
570
  const t = j(this.el, this.referenceElement);
545
571
  await t?.componentOnReady();
546
572
  const e = [...this.#r.values()];
547
- return e.length ? (await this.#m(), this._orchestratorController?.destroy(), this._orchestratorController = new p({
573
+ return e.length ? (await this.#_(), this._orchestratorController?.destroy(), this._orchestratorController = new b({
548
574
  agents: e,
549
575
  portal: this.#s,
550
576
  runtimeEventsEnabled: this.runtimeEventsEnabled,
@@ -556,30 +582,30 @@ class et extends B {
556
582
  }
557
583
  }
558
584
  async #p() {
559
- await this.#d() ? this.arcgisReady.emit() : this._error && this.arcgisError.emit(new Error(this._error));
585
+ await this.#g() ? this.arcgisReady.emit() : this._error && this.arcgisError.emit(new Error(this._error));
560
586
  }
561
587
  _reset() {
562
- this._orchestratorController?.cancel(), this.#e?.abort(), this._interrupt = null, this.messages.removeAll(), this._error = null, this._inputValue = "", this._signedInUserId = void 0;
588
+ this._orchestratorController?.cancel(), this.#e?.abort(), this._interrupt = null, this.messages.removeAll(), this._error = null, this._submissionError = null, this._inputValue = "", this._signedInUserId = void 0;
563
589
  }
564
590
  _renderEntryMessage() {
565
- return this._isSignedIn ? this._error ? this._renderErrorNotice() : this.entryMessage ? this.messages.length > 0 ? null : g`<calcite-notice open kind=brand closable icon width=full><div slot=message>${this.entryMessage}</div></calcite-notice>` : g`<slot name=entry-message></slot>` : this._renderSignInNotice();
591
+ return this._isSignedIn ? this._error ? this._renderErrorNotice() : this.entryMessage ? this.messages.length > 0 ? null : h`<calcite-notice open kind=brand closable icon width=full><div slot=message>${this.entryMessage}</div></calcite-notice>` : h`<slot name=entry-message></slot>` : this._renderSignInNotice();
566
592
  }
567
593
  _renderSignInNotice() {
568
594
  const t = this.#s;
569
- return g`<calcite-notice slot=entry-message open kind=brand icon width=full><div slot=message>${this._messages.signInRequiredMessage}</div>${t ? g`<calcite-link slot=link @click=${async () => {
595
+ return h`<calcite-notice slot=entry-message open kind=brand icon width=full><div slot=message>${this._messages.signInRequiredMessage}</div>${t ? h`<calcite-link slot=link @click=${async () => {
570
596
  try {
571
- const e = await S.getCredential(`${t.url}/sharing`);
597
+ const e = await $.getCredential(`${t.url}/sharing`);
572
598
  this._signedInUserId = e.userId, this._error = null, this.requestUpdate(), await this.#p();
573
599
  } catch (e) {
574
600
  this._error = e?.message ?? this._messages.signInErrorMessage, this.arcgisError.emit(new Error(this._error)), z.log("error", this, "Error signing in:", { detail: { error: e } });
575
601
  }
576
- }} target=_blank title=${this._messages.signInToArcGISOnlineLabel ?? _}>${this._messages.signInLabel}</calcite-link>` : g`<div slot=link>${this._messages.noPortalInformationMessage}</div>`}</calcite-notice>`;
602
+ }} target=_blank title=${this._messages.signInToArcGISOnlineLabel ?? v}>${this._messages.signInLabel}</calcite-link>` : h`<div slot=link>${this._messages.noPortalInformationMessage}</div>`}</calcite-notice>`;
577
603
  }
578
604
  _renderErrorNotice() {
579
- return this._error ? g`<calcite-notice slot=entry-message open kind=brand icon width=full>${this._error === X ? g`<div slot=message>${Y}</div><calcite-link slot=link .href=${tt} target=_blank title=${this._messages.learnAboutWebMapEmbeddingsLabel ?? _}>${this._messages.readMoreLabel}</calcite-link>` : g`<div slot=message>${this._error}</div>`}</calcite-notice>` : null;
605
+ return this._error ? h`<calcite-notice slot=entry-message open kind=brand icon width=full>${this._error === X ? h`<div slot=message>${Y}</div><calcite-link slot=link .href=${tt} target=_blank title=${this._messages.learnAboutWebMapEmbeddingsLabel ?? v}>${this._messages.readMoreLabel}</calcite-link>` : h`<div slot=message>${this._error}</div>`}</calcite-notice>` : null;
580
606
  }
581
607
  render() {
582
- return g`<calcite-panel .loading=${!this._orchestratorController && !this._error || this._orchestratorController?.loading} .heading=${this.heading ?? this._messages.assistantLabel} .description=${this.description} ${E(this.#t)}><slot name=header-actions-start slot=header-actions-start></slot><slot name=header-actions-end slot=header-actions-end></slot><div class="content-container"><arcgis-assistant-chat .loading=${this.awaitingResponse} .messages=${this.messages} .interrupt=${this._interrupt}><slot name=message-starter slot=message-starter></slot><slot name=messages slot=messages>${this.messages.map((t) => t.role === "assistant" ? g`<arcgis-assistant-message .message=${t} .feedbackEnabled=${this.feedbackEnabled} .logEnabled=${this.logEnabled} .copyEnabled=${this.copyEnabled} .readAloudEnabled=${this.readAloudEnabled} @arcgisSlottableRequest=${this.#u} .assistantAvatarEnabled=${this.assistantAvatarEnabled}>${t.blocks?.map((e, s) => g`<slot name=${$(t.id, s) ?? _} slot=${$(t.id, s) ?? _}><arcgis-assistant-message-block .block=${e}></arcgis-assistant-message-block></slot>`)}</arcgis-assistant-message>` : g`<arcgis-assistant-user-message .message=${t} .user=${this._user} .userAvatarEnabled=${this.userAvatarEnabled}></arcgis-assistant-user-message>`)}</slot>${this._interrupt ? g`<div slot=message-loading><div class="interrupt-waiting-message">${this._messages.waitingForUserInputMessage}</div></div>` : g`<slot name=message-loading slot=message-loading><arcgis-assistant-message-loading .loading=${this.awaitingResponse} .loadingMessage=${this.awaitingResponseStep} .assistantAvatarEnabled=${this.assistantAvatarEnabled} .interrupts=${this._interruptDetails}></arcgis-assistant-message-loading></slot>`}</arcgis-assistant-chat></div>${this._interrupt ? g`<slot name=interrupt><arcgis-assistant-interrupt slot=content-bottom .type=${this._interrupt.type} .message=${this._interrupt.message} .options=${this._interrupt.options} ${E(this.#i)}></arcgis-assistant-interrupt></slot>` : this.suggestedPrompts?.length ? g`<div class="suggested-prompts-container" slot=content-bottom><arcgis-assistant-suggested-prompts class="suggested-prompts" .prompts=${this.suggestedPrompts}></arcgis-assistant-suggested-prompts></div>` : null}<div class="footer-container" slot=footer>${this._renderEntryMessage()}<slot name=chat-entry><arcgis-assistant-chat-entry .awaitingResponse=${this.awaitingResponse || this._isAnswering} .inputValue=${this._inputValue} .messages=${this.messages} .voiceInputEnabled=${this.voiceInputEnabled} .disabled=${this._canceling || !this._isSignedIn || !!this._interrupt || !!this._error} ${E(this.#o)}><slot name=entry-actions-start slot=entry-actions-start></slot><slot name=entry-actions-end slot=entry-actions-end><calcite-button .iconStart=${this.awaitingResponse || this._isAnswering ? "circle-stop" : "send"} @click=${() => {
608
+ return h`<calcite-panel .loading=${!this._orchestratorController && !this._error || this._orchestratorController?.loading} .heading=${this.heading ?? this._messages.assistantLabel} .description=${this.description} ${E(this.#t)}><slot name=header-actions-start slot=header-actions-start></slot><slot name=header-actions-end slot=header-actions-end></slot><div class="content-container"><arcgis-assistant-chat .loading=${this.awaitingResponse} .messages=${this.messages} .interrupt=${this._interrupt}><slot name=message-starter slot=message-starter></slot><slot name=messages slot=messages>${this.messages.map((t) => t.role === "assistant" ? h`<arcgis-assistant-message .message=${t} .feedbackEnabled=${this.feedbackEnabled} .logEnabled=${this.logEnabled} .copyEnabled=${this.copyEnabled} .readAloudEnabled=${this.readAloudEnabled} @arcgisSlottableRequest=${this.#u} .assistantAvatarEnabled=${this.assistantAvatarEnabled}>${t.blocks?.map((e, s) => h`<slot name=${I(t.id, s) ?? v} slot=${I(t.id, s) ?? v}><arcgis-assistant-message-block .block=${e}></arcgis-assistant-message-block></slot>`)}</arcgis-assistant-message>` : h`<arcgis-assistant-user-message .message=${t} .user=${this._user} .userAvatarEnabled=${this.userAvatarEnabled}></arcgis-assistant-user-message>`)}</slot>${this._interrupt ? h`<div slot=message-loading><div class="interrupt-waiting-message">${this._messages.waitingForUserInputMessage}</div></div>` : h`<slot name=message-loading slot=message-loading><arcgis-assistant-message-loading .loading=${this.awaitingResponse} .loadingMessage=${this.awaitingResponseStep} .assistantAvatarEnabled=${this.assistantAvatarEnabled} .interrupts=${this._interruptDetails}></arcgis-assistant-message-loading></slot>`}</arcgis-assistant-chat></div>${this._interrupt ? h`<slot name=interrupt><arcgis-assistant-interrupt slot=content-bottom .type=${this._interrupt.type} .message=${this._interrupt.message} .options=${this._interrupt.options} ${E(this.#i)}></arcgis-assistant-interrupt></slot>` : this.suggestedPrompts?.length ? h`<div class="suggested-prompts-container" slot=content-bottom><arcgis-assistant-suggested-prompts class="suggested-prompts" .prompts=${this.suggestedPrompts}></arcgis-assistant-suggested-prompts></div>` : null}<div class="footer-container" slot=footer>${this._renderEntryMessage()}${this._submissionError ? h`<div role=alert>${this._submissionError}</div>` : null}<slot name=chat-entry><arcgis-assistant-chat-entry .awaitingResponse=${this.awaitingResponse || this._isAnswering} .commandProvider=${this.commandProvider} .entityProviders=${this.entityProviders} .inputValue=${this._inputValue} .messages=${this.messages} .voiceInputEnabled=${this.voiceInputEnabled} .disabled=${this._canceling || !this._isSignedIn || !!this._interrupt || !!this._error} ${E(this.#o)}><slot name=entry-actions-start slot=entry-actions-start></slot><slot name=entry-actions-end slot=entry-actions-end><calcite-button .iconStart=${this.awaitingResponse || this._isAnswering ? "circle-stop" : "send"} @click=${() => {
583
609
  this.#o.value?.submitMessage();
584
610
  }} round>${this.awaitingResponse || this._isAnswering ? this._messages.stopButtonLabel : this._messages.askButtonLabel}</calcite-button></slot></arcgis-assistant-chat-entry></slot><slot name=footer-content></slot></div></calcite-panel>`;
585
611
  }