@arcgis/ai-components 5.1.0-next.98 → 5.1.0

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 (446) hide show
  1. package/README.md +2 -2
  2. package/dist/agent-utils/BaseAgent.d.ts +90 -0
  3. package/dist/agent-utils/BaseAgent.js +87 -0
  4. package/dist/agent-utils/FunctionAgent.d.ts +64 -0
  5. package/dist/agent-utils/FunctionAgent.js +98 -0
  6. package/dist/agent-utils/LLMAgent.d.ts +65 -0
  7. package/dist/agent-utils/LLMAgent.js +140 -0
  8. package/dist/agent-utils/WorkflowAgent.d.ts +44 -0
  9. package/dist/agent-utils/WorkflowAgent.js +70 -0
  10. package/dist/agent-utils/index.d.ts +177 -0
  11. package/dist/agent-utils/index.js +167 -0
  12. package/dist/agent-utils/middlewares/humanInTheLoop.d.ts +152 -0
  13. package/dist/agent-utils/middlewares/humanInTheLoop.js +94 -0
  14. package/dist/agent-utils/middlewares/middleware.d.ts +25 -0
  15. package/dist/agent-utils/middlewares/middleware.js +44 -0
  16. package/dist/agent-utils/middlewares/trace.d.ts +27 -0
  17. package/dist/agent-utils/middlewares/trace.js +42 -0
  18. package/dist/agent-utils/middlewares/types.d.ts +123 -0
  19. package/dist/agent-utils/middlewares/types.js +2 -0
  20. package/dist/agent-utils/tools/FunctionTool.d.ts +127 -0
  21. package/dist/agent-utils/tools/FunctionTool.js +80 -0
  22. package/dist/agent-utils/types.d.ts +181 -0
  23. package/dist/agent-utils/workflows/BaseWorkflow.d.ts +87 -0
  24. package/dist/agent-utils/workflows/ConditionalWorkflow.d.ts +72 -0
  25. package/dist/agent-utils/workflows/ConditionalWorkflow.js +61 -0
  26. package/dist/agent-utils/workflows/LoopWorkflow.d.ts +58 -0
  27. package/dist/agent-utils/workflows/LoopWorkflow.js +56 -0
  28. package/dist/agent-utils/workflows/ParallelWorkflow.d.ts +68 -0
  29. package/dist/agent-utils/workflows/ParallelWorkflow.js +129 -0
  30. package/dist/agent-utils/workflows/RouterWorkflow.d.ts +63 -0
  31. package/dist/agent-utils/workflows/RouterWorkflow.js +75 -0
  32. package/dist/agent-utils/workflows/SequentialWorkflow.d.ts +56 -0
  33. package/dist/agent-utils/workflows/SequentialWorkflow.js +69 -0
  34. package/dist/agent-utils/workflows/SwitchWorkflow.d.ts +74 -0
  35. package/dist/agent-utils/workflows/SwitchWorkflow.js +84 -0
  36. package/dist/assets/embeddings.worker-k9_Ou679.js +1 -0
  37. package/dist/cdn/23JKEYWV.js +2 -0
  38. package/dist/cdn/2XP5E435.js +2 -0
  39. package/dist/cdn/3H7F4V6U.js +2 -0
  40. package/dist/cdn/3J5RM5OR.js +36 -0
  41. package/dist/cdn/46U2PGRW.js +65 -0
  42. package/dist/cdn/4ASZF5I2.js +181 -0
  43. package/dist/cdn/4BA4OUWC.js +134 -0
  44. package/dist/cdn/4EALV6QJ.js +2 -0
  45. package/dist/cdn/4Z4AESFZ.js +2 -0
  46. package/dist/cdn/{5PT7ZFXF.js → 5RQUSM3T.js} +23 -5
  47. package/dist/cdn/6FEB6XYK.js +2 -0
  48. package/dist/cdn/7CCULIWM.js +2 -0
  49. package/dist/cdn/7Q2WROGA.js +2 -0
  50. package/dist/cdn/7WSTR3WA.js +2 -0
  51. package/dist/cdn/7ZN4HYX2.js +2 -0
  52. package/dist/cdn/A6C7XUI4.js +2 -0
  53. package/dist/cdn/{SFREIREB.js → AJKWCXDA.js} +8 -2
  54. package/dist/cdn/AXOPGQGZ.js +2 -0
  55. package/dist/cdn/BAGQCT2N.js +2 -0
  56. package/dist/cdn/BBB2NVY5.js +3 -0
  57. package/dist/cdn/BGZV7RUS.js +2 -0
  58. package/dist/cdn/BUTKUPXN.js +34 -0
  59. package/dist/cdn/CU2TRUZQ.js +99 -0
  60. package/dist/cdn/D5PZVUO7.js +2 -0
  61. package/dist/cdn/DB2C7FK7.js +2 -0
  62. package/dist/cdn/DHGNGMNJ.js +2 -0
  63. package/dist/cdn/DKNDDDWM.js +2 -0
  64. package/dist/cdn/DTRZOJOT.js +2 -0
  65. package/dist/cdn/ESRKMM6P.js +2 -0
  66. package/dist/cdn/FDBWYCAB.js +22 -0
  67. package/dist/cdn/FYNHAVHL.js +2 -0
  68. package/dist/cdn/H3EEFM4A.js +179 -0
  69. package/dist/cdn/HIGLOYFN.js +9 -0
  70. package/dist/cdn/JNDONBTW.js +2 -0
  71. package/dist/cdn/JOLKZ6S5.js +2 -0
  72. package/dist/cdn/JQ5VH32K.js +2 -0
  73. package/dist/cdn/K6BGVUQ7.js +2 -0
  74. package/dist/cdn/KGYSBUFO.js +9 -0
  75. package/dist/cdn/L6GVMINQ.js +2 -0
  76. package/dist/cdn/LTPDBXQ7.js +6 -0
  77. package/dist/cdn/LUY7QCZ3.js +2 -0
  78. package/dist/cdn/LXJWWOGK.js +66 -0
  79. package/dist/cdn/M7C6Y752.js +2 -0
  80. package/dist/cdn/{3QC3BRZP.js → MEQ67UQH.js} +1 -1
  81. package/dist/cdn/MJM2MHJW.js +44 -0
  82. package/dist/cdn/MNCG7Q7C.js +3 -0
  83. package/dist/cdn/MNHNUIMV.js +2 -0
  84. package/dist/cdn/N2SKXRLK.js +71 -0
  85. package/dist/cdn/OBDCCGVH.js +2 -0
  86. package/dist/cdn/OFH2TDZM.js +2 -0
  87. package/dist/cdn/OP6ENMCN.js +180 -0
  88. package/dist/cdn/P5M2HNJ7.js +2 -0
  89. package/dist/cdn/PFW7KXCP.js +48 -0
  90. package/dist/cdn/PIUDMACH.js +56 -0
  91. package/dist/cdn/PKH5BECA.js +2 -0
  92. package/dist/cdn/PTKZXFXB.js +31 -0
  93. package/dist/cdn/{O62HTIOD.js → Q33HJXYV.js} +1 -1
  94. package/dist/cdn/QH6TSBNI.js +2 -0
  95. package/dist/cdn/QZXQIJSW.js +2 -0
  96. package/dist/cdn/SHCVYGIH.js +4 -0
  97. package/dist/cdn/SUFXLHTD.js +2 -0
  98. package/dist/cdn/{VHOF6SUZ.js → TIXCHLEN.js} +17 -1
  99. package/dist/cdn/TOYQ22PR.js +2 -0
  100. package/dist/cdn/UDXMJNRF.js +3 -0
  101. package/dist/cdn/UE3CP46P.js +2 -0
  102. package/dist/cdn/VDAF255D.js +22 -0
  103. package/dist/cdn/VPZHLYPA.js +2 -0
  104. package/dist/cdn/{7EXACS27.js → VWMJ7HIK.js} +10 -7
  105. package/dist/cdn/W2CWLWUT.js +14 -0
  106. package/dist/cdn/W6HO4D6J.js +18 -0
  107. package/dist/cdn/WNJM5TET.js +2 -0
  108. package/dist/cdn/XKIAXVPE.js +2 -0
  109. package/dist/cdn/XMJF5F4M.js +2 -0
  110. package/dist/cdn/Y5GGIKKC.js +2 -0
  111. package/dist/cdn/YURWID37.js +2 -0
  112. package/dist/cdn/agent-utils/index.js +2 -0
  113. package/dist/cdn/agent-utils/middlewares/humanInTheLoop.js +3 -0
  114. package/dist/cdn/agent-utils/middlewares/middleware.js +2 -0
  115. package/dist/cdn/agent-utils/middlewares/trace.js +2 -0
  116. package/dist/cdn/assets/assistant/t9n/messages.ar.json +1 -1
  117. package/dist/cdn/assets/assistant/t9n/messages.bg.json +1 -1
  118. package/dist/cdn/assets/assistant/t9n/messages.bs.json +1 -1
  119. package/dist/cdn/assets/assistant/t9n/messages.ca.json +1 -1
  120. package/dist/cdn/assets/assistant/t9n/messages.cs.json +1 -1
  121. package/dist/cdn/assets/assistant/t9n/messages.da.json +1 -1
  122. package/dist/cdn/assets/assistant/t9n/messages.de.json +1 -1
  123. package/dist/cdn/assets/assistant/t9n/messages.el.json +1 -1
  124. package/dist/cdn/assets/assistant/t9n/messages.es.json +1 -1
  125. package/dist/cdn/assets/assistant/t9n/messages.et.json +1 -1
  126. package/dist/cdn/assets/assistant/t9n/messages.fi.json +1 -1
  127. package/dist/cdn/assets/assistant/t9n/messages.fr.json +1 -1
  128. package/dist/cdn/assets/assistant/t9n/messages.he.json +1 -1
  129. package/dist/cdn/assets/assistant/t9n/messages.hr.json +1 -1
  130. package/dist/cdn/assets/assistant/t9n/messages.hu.json +1 -1
  131. package/dist/cdn/assets/assistant/t9n/messages.id.json +1 -1
  132. package/dist/cdn/assets/assistant/t9n/messages.it.json +1 -1
  133. package/dist/cdn/assets/assistant/t9n/messages.ja.json +1 -1
  134. package/dist/cdn/assets/assistant/t9n/messages.ko.json +1 -1
  135. package/dist/cdn/assets/assistant/t9n/messages.lt.json +1 -1
  136. package/dist/cdn/assets/assistant/t9n/messages.lv.json +1 -1
  137. package/dist/cdn/assets/assistant/t9n/messages.nl.json +1 -1
  138. package/dist/cdn/assets/assistant/t9n/messages.no.json +1 -1
  139. package/dist/cdn/assets/assistant/t9n/messages.pl.json +1 -1
  140. package/dist/cdn/assets/assistant/t9n/messages.pt-BR.json +1 -1
  141. package/dist/cdn/assets/assistant/t9n/messages.pt-PT.json +1 -1
  142. package/dist/cdn/assets/assistant/t9n/messages.ro.json +1 -1
  143. package/dist/cdn/assets/assistant/t9n/messages.ru.json +1 -1
  144. package/dist/cdn/assets/assistant/t9n/messages.sk.json +1 -1
  145. package/dist/cdn/assets/assistant/t9n/messages.sl.json +1 -1
  146. package/dist/cdn/assets/assistant/t9n/messages.sr.json +1 -1
  147. package/dist/cdn/assets/assistant/t9n/messages.sv.json +1 -1
  148. package/dist/cdn/assets/assistant/t9n/messages.th.json +1 -1
  149. package/dist/cdn/assets/assistant/t9n/messages.tr.json +1 -1
  150. package/dist/cdn/assets/assistant/t9n/messages.uk.json +1 -1
  151. package/dist/cdn/assets/assistant/t9n/messages.vi.json +1 -1
  152. package/dist/cdn/assets/assistant/t9n/messages.zh-CN.json +1 -1
  153. package/dist/cdn/assets/assistant/t9n/messages.zh-HK.json +1 -1
  154. package/dist/cdn/assets/assistant/t9n/messages.zh-TW.json +1 -1
  155. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.ar.json +1 -1
  156. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.bg.json +1 -1
  157. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.bs.json +1 -1
  158. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.ca.json +1 -1
  159. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.cs.json +1 -1
  160. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.da.json +1 -1
  161. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.de.json +1 -1
  162. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.el.json +1 -1
  163. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.es.json +1 -1
  164. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.et.json +1 -1
  165. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.fi.json +1 -1
  166. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.fr.json +1 -1
  167. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.he.json +1 -1
  168. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.hr.json +1 -1
  169. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.hu.json +1 -1
  170. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.id.json +1 -1
  171. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.it.json +1 -1
  172. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.ja.json +1 -1
  173. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.ko.json +1 -1
  174. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.lt.json +1 -1
  175. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.lv.json +1 -1
  176. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.nl.json +1 -1
  177. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.no.json +1 -1
  178. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.pl.json +1 -1
  179. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.pt-BR.json +1 -1
  180. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.pt-PT.json +1 -1
  181. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.ro.json +1 -1
  182. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.ru.json +1 -1
  183. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.sk.json +1 -1
  184. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.sl.json +1 -1
  185. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.sr.json +1 -1
  186. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.sv.json +1 -1
  187. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.th.json +1 -1
  188. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.tr.json +1 -1
  189. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.uk.json +1 -1
  190. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.vi.json +1 -1
  191. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.zh-CN.json +1 -1
  192. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.zh-HK.json +1 -1
  193. package/dist/cdn/assets/assistant-message-feedback/t9n/messages.zh-TW.json +1 -1
  194. package/dist/cdn/assets/assistant-message-footer/t9n/messages.ar.json +1 -1
  195. package/dist/cdn/assets/assistant-message-footer/t9n/messages.bg.json +1 -1
  196. package/dist/cdn/assets/assistant-message-footer/t9n/messages.bs.json +1 -1
  197. package/dist/cdn/assets/assistant-message-footer/t9n/messages.ca.json +1 -1
  198. package/dist/cdn/assets/assistant-message-footer/t9n/messages.cs.json +1 -1
  199. package/dist/cdn/assets/assistant-message-footer/t9n/messages.da.json +1 -1
  200. package/dist/cdn/assets/assistant-message-footer/t9n/messages.de.json +1 -1
  201. package/dist/cdn/assets/assistant-message-footer/t9n/messages.el.json +1 -1
  202. package/dist/cdn/assets/assistant-message-footer/t9n/messages.es.json +1 -1
  203. package/dist/cdn/assets/assistant-message-footer/t9n/messages.et.json +1 -1
  204. package/dist/cdn/assets/assistant-message-footer/t9n/messages.fi.json +1 -1
  205. package/dist/cdn/assets/assistant-message-footer/t9n/messages.fr.json +1 -1
  206. package/dist/cdn/assets/assistant-message-footer/t9n/messages.he.json +1 -1
  207. package/dist/cdn/assets/assistant-message-footer/t9n/messages.hr.json +1 -1
  208. package/dist/cdn/assets/assistant-message-footer/t9n/messages.hu.json +1 -1
  209. package/dist/cdn/assets/assistant-message-footer/t9n/messages.id.json +1 -1
  210. package/dist/cdn/assets/assistant-message-footer/t9n/messages.it.json +1 -1
  211. package/dist/cdn/assets/assistant-message-footer/t9n/messages.ja.json +1 -1
  212. package/dist/cdn/assets/assistant-message-footer/t9n/messages.ko.json +1 -1
  213. package/dist/cdn/assets/assistant-message-footer/t9n/messages.lt.json +1 -1
  214. package/dist/cdn/assets/assistant-message-footer/t9n/messages.lv.json +1 -1
  215. package/dist/cdn/assets/assistant-message-footer/t9n/messages.nl.json +1 -1
  216. package/dist/cdn/assets/assistant-message-footer/t9n/messages.no.json +1 -1
  217. package/dist/cdn/assets/assistant-message-footer/t9n/messages.pl.json +1 -1
  218. package/dist/cdn/assets/assistant-message-footer/t9n/messages.pt-BR.json +1 -1
  219. package/dist/cdn/assets/assistant-message-footer/t9n/messages.pt-PT.json +1 -1
  220. package/dist/cdn/assets/assistant-message-footer/t9n/messages.ro.json +1 -1
  221. package/dist/cdn/assets/assistant-message-footer/t9n/messages.ru.json +1 -1
  222. package/dist/cdn/assets/assistant-message-footer/t9n/messages.sk.json +1 -1
  223. package/dist/cdn/assets/assistant-message-footer/t9n/messages.sl.json +1 -1
  224. package/dist/cdn/assets/assistant-message-footer/t9n/messages.sr.json +1 -1
  225. package/dist/cdn/assets/assistant-message-footer/t9n/messages.sv.json +1 -1
  226. package/dist/cdn/assets/assistant-message-footer/t9n/messages.th.json +1 -1
  227. package/dist/cdn/assets/assistant-message-footer/t9n/messages.tr.json +1 -1
  228. package/dist/cdn/assets/assistant-message-footer/t9n/messages.uk.json +1 -1
  229. package/dist/cdn/assets/assistant-message-footer/t9n/messages.vi.json +1 -1
  230. package/dist/cdn/assets/assistant-message-footer/t9n/messages.zh-CN.json +1 -1
  231. package/dist/cdn/assets/assistant-message-footer/t9n/messages.zh-HK.json +1 -1
  232. package/dist/cdn/assets/assistant-message-footer/t9n/messages.zh-TW.json +1 -1
  233. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.ar.json +1 -1
  234. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.bg.json +1 -1
  235. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.bs.json +1 -1
  236. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.ca.json +1 -1
  237. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.cs.json +1 -1
  238. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.da.json +1 -1
  239. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.de.json +1 -1
  240. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.el.json +1 -1
  241. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.es.json +1 -1
  242. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.et.json +1 -1
  243. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.fi.json +1 -1
  244. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.fr.json +1 -1
  245. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.he.json +1 -1
  246. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.hr.json +1 -1
  247. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.hu.json +1 -1
  248. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.id.json +1 -1
  249. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.it.json +1 -1
  250. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.ja.json +1 -1
  251. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.ko.json +1 -1
  252. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.lt.json +1 -1
  253. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.lv.json +1 -1
  254. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.nl.json +1 -1
  255. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.no.json +1 -1
  256. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.pl.json +1 -1
  257. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.pt-BR.json +1 -1
  258. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.pt-PT.json +1 -1
  259. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.ro.json +1 -1
  260. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.ru.json +1 -1
  261. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.sk.json +1 -1
  262. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.sl.json +1 -1
  263. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.sr.json +1 -1
  264. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.sv.json +1 -1
  265. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.th.json +1 -1
  266. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.tr.json +1 -1
  267. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.uk.json +1 -1
  268. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.vi.json +1 -1
  269. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.zh-CN.json +1 -1
  270. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.zh-HK.json +1 -1
  271. package/dist/cdn/assets/assistant-message-read-aloud/t9n/messages.zh-TW.json +1 -1
  272. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.ar.json +1 -1
  273. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.bg.json +1 -1
  274. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.bs.json +1 -1
  275. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.ca.json +1 -1
  276. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.cs.json +1 -1
  277. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.da.json +1 -1
  278. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.de.json +1 -1
  279. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.el.json +1 -1
  280. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.es.json +1 -1
  281. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.et.json +1 -1
  282. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.fi.json +1 -1
  283. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.fr.json +1 -1
  284. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.he.json +1 -1
  285. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.hr.json +1 -1
  286. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.hu.json +1 -1
  287. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.id.json +1 -1
  288. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.it.json +1 -1
  289. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.ja.json +1 -1
  290. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.ko.json +1 -1
  291. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.lt.json +1 -1
  292. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.lv.json +1 -1
  293. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.nl.json +1 -1
  294. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.no.json +1 -1
  295. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.pl.json +1 -1
  296. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.pt-BR.json +1 -1
  297. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.pt-PT.json +1 -1
  298. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.ro.json +1 -1
  299. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.ru.json +1 -1
  300. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.sk.json +1 -1
  301. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.sl.json +1 -1
  302. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.sr.json +1 -1
  303. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.sv.json +1 -1
  304. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.th.json +1 -1
  305. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.tr.json +1 -1
  306. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.uk.json +1 -1
  307. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.vi.json +1 -1
  308. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.zh-CN.json +1 -1
  309. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.zh-HK.json +1 -1
  310. package/dist/cdn/assets/assistant-suggested-prompts/t9n/messages.zh-TW.json +1 -1
  311. package/dist/cdn/index.js +1 -1
  312. package/dist/cdn/main.css +1 -1
  313. package/dist/chunks/BaseWorkflow.js +107 -0
  314. package/dist/chunks/adapter.js +3130 -0
  315. package/dist/chunks/arcgisKnowledgeGraph.js +229 -0
  316. package/dist/chunks/arcgis_knowledge_current_lc_context.js +25 -0
  317. package/dist/chunks/arcgis_knowledge_current_map_context.js +37 -0
  318. package/dist/chunks/arcgis_knowledge_cypher_query_prompt.js +102 -0
  319. package/dist/chunks/arcgis_knowledge_lucene_generation_prompt.js +101 -0
  320. package/dist/chunks/arcgis_knowledge_summarize_result_prompt.js +137 -0
  321. package/dist/chunks/arcgis_knowledge_tool_prompt.js +34 -0
  322. package/dist/chunks/converterUtils.js +39 -32
  323. package/dist/chunks/dataExplorationGraph.js +324 -0
  324. package/dist/chunks/data_explore_filter_prompt.js +125 -0
  325. package/dist/chunks/data_explore_query_prompt.js +149 -0
  326. package/dist/chunks/embeddings.worker.js +25 -0
  327. package/dist/chunks/field_descriptions_prompt.js +112 -0
  328. package/dist/chunks/generateLayerDescriptions.js +453 -0
  329. package/dist/chunks/graph.js +86 -0
  330. package/dist/chunks/helpGraph.js +127 -0
  331. package/dist/chunks/help_prompt.js +74 -0
  332. package/dist/chunks/index.js +11 -0
  333. package/dist/chunks/intent_prompt.js +139 -0
  334. package/dist/chunks/layerStylingGraph.js +193 -0
  335. package/dist/chunks/layer_descriptions_prompt.js +59 -0
  336. package/dist/chunks/layer_styling_prompt.js +72 -0
  337. package/dist/chunks/navigationGraph.js +271 -0
  338. package/dist/chunks/navigation_intent_prompt.js +52 -0
  339. package/dist/chunks/navigation_tool_prompt.js +39 -0
  340. package/dist/chunks/orchestrator.js +569 -0
  341. package/dist/chunks/runtime.js +1 -1
  342. package/dist/chunks/slottableRequestUtils.js +3 -7
  343. package/dist/chunks/state.js +71 -0
  344. package/dist/chunks/summarize_query_response_prompt.js +80 -0
  345. package/dist/chunks/toolCallResponse.js +32 -0
  346. package/dist/chunks/utils.js +46 -28
  347. package/dist/chunks/utils2.js +41 -6
  348. package/dist/chunks/utils3.js +16 -0
  349. package/dist/components/arcgis-assistant/customElement.d.ts +82 -8
  350. package/dist/components/arcgis-assistant/customElement.js +393 -152
  351. package/dist/components/arcgis-assistant/index.js +2 -3
  352. package/dist/components/arcgis-assistant/types.d.ts +15 -2
  353. package/dist/components/arcgis-assistant-agent/customElement.d.ts +1 -1
  354. package/dist/components/arcgis-assistant-agent/customElement.js +6 -2
  355. package/dist/components/arcgis-assistant-chat/customElement.d.ts +8 -2
  356. package/dist/components/arcgis-assistant-chat/customElement.js +23 -18
  357. package/dist/components/arcgis-assistant-chat-entry/customElement.d.ts +4 -1
  358. package/dist/components/arcgis-assistant-chat-entry/customElement.js +25 -18
  359. package/dist/components/arcgis-assistant-data-exploration-agent/customElement.js +30 -8
  360. package/dist/components/arcgis-assistant-help-agent/customElement.js +33 -8
  361. package/dist/components/arcgis-assistant-interrupt/customElement.d.ts +4 -1
  362. package/dist/components/arcgis-assistant-interrupt/customElement.js +5 -5
  363. package/dist/components/arcgis-assistant-interrupt-preview/customElement.js +20 -0
  364. package/dist/components/arcgis-assistant-interrupt-preview/index.js +2 -0
  365. package/dist/components/arcgis-assistant-knowledge-agent/customElement.d.ts +158 -0
  366. package/dist/components/arcgis-assistant-knowledge-agent/customElement.js +74 -0
  367. package/dist/components/arcgis-assistant-knowledge-agent/index.d.ts +1 -0
  368. package/dist/components/arcgis-assistant-knowledge-agent/index.js +1 -0
  369. package/dist/components/arcgis-assistant-layer-styling-agent/customElement.js +31 -6
  370. package/dist/components/arcgis-assistant-message/customElement.d.ts +23 -0
  371. package/dist/components/arcgis-assistant-message/customElement.js +28 -26
  372. package/dist/components/arcgis-assistant-message/index.d.ts +1 -0
  373. package/dist/components/arcgis-assistant-message/index.js +2 -0
  374. package/dist/components/arcgis-assistant-message-block/customElement.d.ts +2 -2
  375. package/dist/components/arcgis-assistant-message-block/customElement.js +18 -11
  376. package/dist/components/arcgis-assistant-message-block/index.js +1 -0
  377. package/dist/components/arcgis-assistant-message-feedback/customElement.d.ts +4 -1
  378. package/dist/components/arcgis-assistant-message-footer/customElement.d.ts +4 -1
  379. package/dist/components/arcgis-assistant-message-loading/customElement.d.ts +8 -1
  380. package/dist/components/arcgis-assistant-message-loading/customElement.js +8 -8
  381. package/dist/components/arcgis-assistant-message-loading/index.js +1 -0
  382. package/dist/components/arcgis-assistant-message-log/customElement.d.ts +4 -1
  383. package/dist/components/arcgis-assistant-message-read-aloud/customElement.d.ts +4 -1
  384. package/dist/components/arcgis-assistant-message-read-aloud/customElement.js +23 -27
  385. package/dist/components/arcgis-assistant-message-text/customElement.d.ts +5 -1
  386. package/dist/components/arcgis-assistant-message-text/customElement.js +12 -12
  387. package/dist/components/arcgis-assistant-navigation-agent/customElement.js +31 -7
  388. package/dist/components/arcgis-assistant-speech-input/customElement.d.ts +6 -1
  389. package/dist/components/arcgis-assistant-suggested-prompts/customElement.d.ts +4 -1
  390. package/dist/components/arcgis-assistant-suggested-prompts/customElement.js +8 -8
  391. package/dist/components/arcgis-assistant-user-message/customElement.d.ts +4 -1
  392. package/dist/components/arcgis-assistant-user-message/customElement.js +10 -8
  393. package/dist/docs/api.json +1 -1
  394. package/dist/docs/docs.json +1 -1
  395. package/dist/docs/vscode.html-custom-data.json +1 -1
  396. package/dist/docs/web-types.json +1 -1
  397. package/dist/index.d.ts +8 -0
  398. package/dist/loader.js +8 -6
  399. package/dist/types/lumina.d.ts +16 -5
  400. package/dist/types/preact.d.ts +18 -5
  401. package/dist/types/react.d.ts +20 -5
  402. package/dist/types/stencil.d.ts +16 -5
  403. package/dist/utils/index.d.ts +246 -9
  404. package/dist/utils/index.js +113 -10
  405. package/package.json +28 -12
  406. package/dist/cdn/2YEKZADB.js +0 -2
  407. package/dist/cdn/457RLS3H.js +0 -2
  408. package/dist/cdn/4CPZZBYD.js +0 -2
  409. package/dist/cdn/54ATSQPS.js +0 -72
  410. package/dist/cdn/5JBT3YNY.js +0 -2
  411. package/dist/cdn/5JS65BCP.js +0 -29
  412. package/dist/cdn/7EHQLXMU.js +0 -2
  413. package/dist/cdn/AKOWC7YT.js +0 -18
  414. package/dist/cdn/ARCP5UZY.js +0 -2
  415. package/dist/cdn/B4DEC7PH.js +0 -2
  416. package/dist/cdn/D7WNBUVK.js +0 -106
  417. package/dist/cdn/DSEMD4M2.js +0 -4
  418. package/dist/cdn/ESTSYVJP.js +0 -54
  419. package/dist/cdn/EUNEQNYC.js +0 -2
  420. package/dist/cdn/G4SVCCJH.js +0 -2
  421. package/dist/cdn/I2KPFZDL.js +0 -2
  422. package/dist/cdn/KVH3PDVW.js +0 -2
  423. package/dist/cdn/LSGRWCAO.js +0 -5
  424. package/dist/cdn/LXFCO34K.js +0 -2
  425. package/dist/cdn/M73KKJSM.js +0 -2
  426. package/dist/cdn/PTGKT5P6.js +0 -3
  427. package/dist/cdn/Q5D5LJS5.js +0 -2
  428. package/dist/cdn/R5FWFRWW.js +0 -2
  429. package/dist/cdn/TRDKA5Y6.js +0 -2
  430. package/dist/cdn/UK6CP7BR.js +0 -2
  431. package/dist/cdn/WBRZZ4FB.js +0 -2
  432. package/dist/cdn/Y3AUHNRX.js +0 -2
  433. package/dist/cdn/YGW7TUNX.js +0 -2
  434. package/dist/cdn/YNJYG2RG.js +0 -2
  435. package/dist/cdn/YW52XJMM.js +0 -396
  436. package/dist/cdn/Z3DVGFEE.js +0 -2
  437. package/dist/cdn/Z4N6N4OZ.js +0 -271
  438. package/dist/cdn/ZLO73NU6.js +0 -2
  439. package/dist/cdn/ZPNJGIAF.js +0 -2
  440. /package/dist/cdn/{YVTKUITE.js → 53Z3R4OY.js} +0 -0
  441. /package/dist/cdn/{CFT5BBC6.js → 77GAVZIK.js} +0 -0
  442. /package/dist/cdn/{W5CHGOOR.js → G7XK3XOR.js} +0 -0
  443. /package/dist/cdn/{DMLSCJAM.js → HJGF7W5O.js} +0 -0
  444. /package/dist/cdn/{JDL3HFFX.js → MQ7QXIOW.js} +0 -0
  445. /package/dist/cdn/{MZJGADGH.js → NMWLJECU.js} +0 -0
  446. /package/dist/cdn/{24MYCR6F.js → URYKQKFE.js} +0 -0
@@ -1,27 +1,170 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import { c as $ } from "../../chunks/runtime.js";
3
- import { css as k, html as a } from "lit";
4
- import S from "@arcgis/core/core/Collection.js";
5
- import { whenOnce as C, watch as L, when as I } from "@arcgis/core/core/reactiveUtils.js";
6
- import P from "@arcgis/core/portal/Portal.js";
7
- import { LitElement as R, createEvent as o, nothing as b } from "@arcgis/lumina";
8
- import { rethrowError as x } from "@arcgis/toolkit/log";
9
- import { createRef as f, ref as y } from "lit/directives/ref.js";
10
- import { u as M } from "../../chunks/useT9n.js";
11
- import { Orchestrator as O } from "@arcgis/ai-orchestrator";
12
- import A from "@arcgis/core/core/Accessor.js";
13
- import { property as u, subclass as q } from "@arcgis/core/core/accessorSupport/decorators.js";
14
- import { g as z } from "../../chunks/utils2.js";
15
- import { g as v, a as _ } from "../../chunks/slottableRequestUtils.js";
16
- const V = k`:host{display:block;width:var(--arcgis-internal-panel-width, 100%);height:var(--arcgis-internal-expand-max-height, 100%)}.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%}.suggested-prompts{display:block;padding:var(--calcite-spacing-md);max-width:100%;box-sizing:border-box}.error-notice{padding:var(--calcite-spacing-sm)}`;
17
- var N = Object.defineProperty, j = Object.getOwnPropertyDescriptor, h = (g, t, e, i) => {
18
- for (var s = i > 1 ? void 0 : i ? j(t, e) : t, r = g.length - 1, n; r >= 0; r--)
19
- (n = g[r]) && (s = (i ? n(t, e, s) : n(s)) || s);
20
- return i && s && N(t, e, s), s;
2
+ import { c as x } from "../../chunks/runtime.js";
3
+ import { css as A, html as c } from "lit";
4
+ import T from "@arcgis/core/core/Collection.js";
5
+ import { whenOnce as L, watch as R, when as D } from "@arcgis/core/core/reactiveUtils.js";
6
+ import O from "@arcgis/core/portal/Portal.js";
7
+ import { LitElement as M, createEvent as g, nothing as k } from "@arcgis/lumina";
8
+ import * as B from "@arcgis/toolkit/log";
9
+ import { rethrowError as z } from "@arcgis/toolkit/log";
10
+ import { createRef as y, ref as v } from "lit/directives/ref.js";
11
+ import { u as N } from "../../chunks/useT9n.js";
12
+ import { O as U } from "../../chunks/orchestrator.js";
13
+ import "@langchain/core/callbacks/dispatch/web";
14
+ import "@langchain/core/prompts";
15
+ import "@langchain/openai";
16
+ import V from "@arcgis/core/identity/IdentityManager.js";
17
+ import "@arcgis/toolkit/string";
18
+ import "@arcgis/core/config.js";
19
+ import "@langchain/core/messages";
20
+ import "@arcgis/core/layers/FeatureLayer.js";
21
+ import "../../chunks/generateLayerDescriptions.js";
22
+ import "@langchain/langgraph/web";
23
+ import j from "@arcgis/core/core/Accessor.js";
24
+ import { property as m, subclass as q } from "@arcgis/core/core/accessorSupport/decorators.js";
25
+ import { marked as E } from "marked";
26
+ import { g as H } from "../../chunks/utils3.js";
27
+ import { g as S } from "../../chunks/slottableRequestUtils.js";
28
+ const F = A`: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)}`;
29
+ function w(o) {
30
+ return o.trim() ? E.lexer(o).filter((t) => t.type !== "space").map((t) => E.parser([t])) : [];
31
+ }
32
+ class I {
33
+ constructor() {
34
+ this._stableParts = [], this._stableText = "", this._rawText = "";
35
+ }
36
+ // full streamed markdown so far
37
+ // Add one chunk and return all current segments.
38
+ push(t) {
39
+ return this._rawText += t, this._advanceStableBoundary(), this.getParts();
40
+ }
41
+ // Parse the remaining live tail. Call once at stream end.
42
+ finalize() {
43
+ const t = this._rawText.slice(this._stableText.length);
44
+ return t.trim() && (this._stableParts.push(...w(t)), this._stableText = this._rawText), this._stableParts;
45
+ }
46
+ // Get full output: stable segments + current live tail.
47
+ getParts() {
48
+ const t = this._trimIncompleteTail(this._rawText.slice(this._stableText.length)), s = t.trim() ? w(t) : [];
49
+ return [...this._stableParts, ...s];
50
+ }
51
+ reset() {
52
+ this._stableParts = [], this._stableText = "", this._rawText = "";
53
+ }
54
+ // Move parse-safe content from live tail into stable content.
55
+ _advanceStableBoundary() {
56
+ const t = this._rawText.slice(this._stableText.length), s = this._lastSafeBoundary(t);
57
+ if (s <= 0)
58
+ return;
59
+ const i = t.slice(0, s);
60
+ this._stableParts.push(...w(i)), this._stableText += i;
61
+ }
62
+ /**
63
+ * Find the last blank-line boundary that is outside code fences.
64
+ * Returns 0 if no safe boundary is available yet.
65
+ */
66
+ _lastSafeBoundary(t) {
67
+ const s = t.split(`
68
+ `);
69
+ let i = !1, e = 0, n = 0;
70
+ for (const r of s)
71
+ /^\s*(```|~~~)/u.test(r) && (i = !i), n += r.length + 1, r.trim() === "" && !i && (e = n);
72
+ return e < t.length ? e : 0;
73
+ }
74
+ /**
75
+ * Remove incomplete syntax at the end so we do not render partial markup.
76
+ * Handles:
77
+ * - open HTML tags without closing '>'
78
+ * - HTML elements missing closing tags
79
+ * - markdown links missing closing ')'
80
+ */
81
+ _trimIncompleteTail(t) {
82
+ const s = t.lastIndexOf("<");
83
+ if (s !== -1 && !t.includes(">", s))
84
+ return t.slice(0, s);
85
+ const i = this._earliestUnclosedTag(t);
86
+ if (i !== -1)
87
+ return t.slice(0, i);
88
+ const e = t.lastIndexOf("[");
89
+ if (e !== -1) {
90
+ const n = t.slice(e);
91
+ if (!/\[[^\]]*\]\([^)]*\)/u.test(n))
92
+ return t.slice(0, e);
93
+ }
94
+ return t;
95
+ }
96
+ /**
97
+ * Return the index of the earliest unclosed opening tag, or -1.
98
+ * Ignores void elements (img, br, input, etc.) and self-closing tags.
99
+ */
100
+ _earliestUnclosedTag(t) {
101
+ const s = /* @__PURE__ */ new Set([
102
+ "br",
103
+ "img",
104
+ "hr",
105
+ "input",
106
+ "meta",
107
+ "link",
108
+ "area",
109
+ "base",
110
+ "col",
111
+ "embed",
112
+ "source",
113
+ "track",
114
+ "wbr"
115
+ ]), i = /<(\/?)([a-zA-Z][\w-]*)\b[^>]*?(\/?)>/gu, e = [];
116
+ for (let n = i.exec(t); n; n = i.exec(t)) {
117
+ const [, r, a, l] = n, h = a.toLowerCase();
118
+ if (!(s.has(h) || l === "/"))
119
+ if (r === "/") {
120
+ for (let p = e.length - 1; p >= 0; p--)
121
+ if (e[p].name === h) {
122
+ e.splice(p);
123
+ break;
124
+ }
125
+ } else
126
+ e.push({ name: h, index: n.index });
127
+ }
128
+ return e.length ? e[0].index : -1;
129
+ }
130
+ }
131
+ function G(o) {
132
+ const t = new I();
133
+ return t.push(o), t.finalize();
134
+ }
135
+ const W = async (o) => await new Promise((t) => setTimeout(t, o));
136
+ async function* Y(o, { chunkSize: t = 15, delay: s = 50 } = {}) {
137
+ const i = new I();
138
+ for (let e = 0; e < o.length; e += t)
139
+ yield i.push(o.slice(e, e + t)), await W(s);
140
+ yield i.finalize();
141
+ }
142
+ var Z = Object.defineProperty, J = Object.getOwnPropertyDescriptor, u = (o, t, s, i) => {
143
+ for (var e = i > 1 ? void 0 : i ? J(t, s) : t, n = o.length - 1, r; n >= 0; n--)
144
+ (r = o[n]) && (e = (i ? r(t, s, e) : r(e)) || e);
145
+ return i && e && Z(t, s, e), e;
21
146
  };
22
- let l = class extends A {
23
- constructor(g) {
24
- super(g), this.view = null, this.loading = !1, this.processing = !1, this.processingStep = "";
147
+ const $ = (o) => !o || typeof o != "object" ? !1 : o.name === "AbortError";
148
+ async function* C(o, t, s, i, e = !1) {
149
+ if (e) {
150
+ if (i?.aborted) {
151
+ yield { type: "cancelled", log: s, runId: t };
152
+ return;
153
+ }
154
+ yield { type: "block-data", blockType: "text", data: { parts: G(o) }, runId: t };
155
+ return;
156
+ }
157
+ for await (const n of Y(o)) {
158
+ if (i?.aborted) {
159
+ yield { type: "cancelled", log: s, runId: t };
160
+ return;
161
+ }
162
+ yield { type: "block-data", blockType: "text", data: { parts: n }, runId: t };
163
+ }
164
+ }
165
+ let d = class extends j {
166
+ constructor(o) {
167
+ super(o), this.view = null, this.streamingDisabled = !1, this.loading = !1, this.processing = !1, this.processingStep = "";
25
168
  }
26
169
  async load() {
27
170
  this._set("loading", !0);
@@ -35,14 +178,14 @@ let l = class extends A {
35
178
  this.orchestrator?.dispose(), super.destroy();
36
179
  }
37
180
  async _initialize() {
38
- this.removeHandles(), await Promise.all([this.portal.load(), this.view?.when()]), this.view && await C(() => !this.view.updating), this._set(
181
+ this.removeHandles(), await Promise.all([this.portal.load(), this.view?.when()]), this.view && await L(() => !this.view.updating), this._set(
39
182
  "orchestrator",
40
- await O.init({
183
+ await U.init({
41
184
  agents: [...this.agents],
42
185
  view: this.view ?? void 0
43
186
  })
44
187
  ), this.addHandles([
45
- L(
188
+ R(
46
189
  () => [this.view, this.agents],
47
190
  () => {
48
191
  this._initialize();
@@ -53,64 +196,78 @@ let l = class extends A {
53
196
  clearChatHistory() {
54
197
  this.orchestrator?.newConversation();
55
198
  }
56
- async *ask(g, t) {
199
+ async *ask(o, t) {
57
200
  if (!this.orchestrator)
58
201
  throw new Error("Orchestrator not initialized yet.");
59
202
  this._set("processing", !0), this._set("processingStep", "");
60
- const e = [];
61
- let i;
203
+ const s = [];
204
+ let i, e = "pending";
62
205
  try {
63
- const s = this.orchestrator.ask(g);
64
- for await (const r of s) {
65
- const n = r.runId;
66
- if (t?.aborted) {
67
- yield { type: "cancelled", runId: n };
68
- break;
69
- }
70
- switch (r.type) {
206
+ const n = this.orchestrator.ask(o);
207
+ for await (const r of n)
208
+ switch (e = r.runId, r.type) {
71
209
  case "trace": {
72
- this._set("processingStep", r.data.text), e.push(r.data.text);
210
+ this._set("processingStep", r.data.text), s.push(r.data.text);
73
211
  break;
74
212
  }
75
213
  case "completed": {
76
- const c = r.result, p = !!c.content.length, m = !!i?.length;
77
- if (!p && !m) {
78
- yield { type: "completed", error: "Could not process the request.", log: e, runId: n };
214
+ this._set("processing", !1), this._set("processingStep", "");
215
+ const a = r.result, l = !!a.content.length, h = !!i?.length;
216
+ if (!l && !h) {
217
+ yield { type: "completed", error: "No response received.", log: s, runId: e };
79
218
  return;
80
219
  }
81
- const d = c.content;
82
- this._set("processingStep", ""), yield { type: "completed", response: d, blocks: i, log: e, runId: n };
220
+ const p = a.content;
221
+ if (yield { type: "block-start", blockType: "text", runId: e }, yield* C(p, e, s, t, this.streamingDisabled), yield { type: "block-end", blockType: "text", runId: e }, h)
222
+ for (const f of i) {
223
+ if (t?.aborted) {
224
+ yield { type: "cancelled", log: s, runId: e };
225
+ return;
226
+ }
227
+ const { type: b, data: _ } = f;
228
+ if (yield { type: "block-start", blockType: b, runId: e }, b === "text") {
229
+ const P = typeof _?.content == "string" ? _.content : "";
230
+ yield* C(P, e, s, t, this.streamingDisabled);
231
+ } else
232
+ yield { type: "block-data", blockType: b, data: _, runId: e };
233
+ yield { type: "block-end", blockType: b, runId: e };
234
+ }
235
+ yield { type: "completed", response: p, blocks: i, log: s, runId: e };
83
236
  return;
84
237
  }
85
238
  case "ux-suggestion": {
86
- const c = r.suggestion;
87
- i = i ? [...i, c] : [c];
239
+ const a = r.suggestion;
240
+ i = i ? [...i, a] : [a];
88
241
  break;
89
242
  }
90
243
  case "interrupt": {
91
- const { kind: c, message: p, metadata: m } = r.interrupt, d = Array.isArray(m) ? m.filter((E) => typeof E == "string") : [], w = (() => {
92
- switch (c) {
244
+ const { kind: a, message: l, metadata: h } = r.interrupt, p = Array.isArray(h) ? h.filter((b) => typeof b == "string") : [], f = (() => {
245
+ switch (a) {
93
246
  case "booleanChoice":
94
- return { type: "boolean-choice", message: p, options: d };
247
+ return { type: "boolean-choice", message: l, options: p };
95
248
  case "singleSelection":
96
- return { type: "single-select", message: p, options: d };
249
+ return { type: "single-select", message: l, options: p };
97
250
  case "multipleSelection":
98
- return { type: "multi-select", message: p, options: d };
251
+ return { type: "multi-select", message: l, options: p };
99
252
  case "textInput":
100
- return { type: "text-input", message: p };
253
+ return { type: "text-input", message: l };
101
254
  default:
102
- return { type: c, message: p, options: d };
255
+ return { type: a, message: l, options: p };
103
256
  }
104
257
  })();
105
- this._set("processingStep", "Waiting for user input..."), yield { type: "interrupt", payload: w, runId: n };
258
+ this._set("processingStep", "Waiting for user input..."), yield { type: "interrupt", payload: f, runId: e };
106
259
  break;
107
260
  }
108
261
  case "cancelled": {
109
- yield { type: "cancelled", runId: n };
262
+ yield { type: "cancelled", log: s, runId: e };
110
263
  return;
111
264
  }
112
265
  case "error": {
113
- yield { type: "completed", error: r.error.message, log: e, runId: n };
266
+ if (t?.aborted || $(r.error)) {
267
+ yield { type: "cancelled", log: s, runId: e };
268
+ return;
269
+ }
270
+ yield { type: "completed", error: r.error.message, log: s, runId: e };
114
271
  return;
115
272
  }
116
273
  default: {
@@ -118,105 +275,118 @@ let l = class extends A {
118
275
  break;
119
276
  }
120
277
  }
278
+ } catch (n) {
279
+ if (t?.aborted || $(n)) {
280
+ yield { type: "cancelled", log: s, runId: e };
281
+ return;
121
282
  }
122
- } catch (s) {
123
- console.warn("Error during message processing:", s), yield { type: "completed", error: "An error occurred during message processing.", log: e, runId: "error" };
283
+ console.warn("Error during message processing:", n), yield { type: "completed", error: "An error occurred during message processing.", log: s, runId: "error" };
124
284
  return;
125
285
  } finally {
126
286
  this._set("processing", !1);
127
287
  }
128
288
  }
289
+ cancel() {
290
+ this.orchestrator?.cancel();
291
+ }
129
292
  };
130
- h([
131
- u({ readOnly: !0 })
132
- ], l.prototype, "orchestrator", 2);
133
- h([
134
- u()
135
- ], l.prototype, "agents", 2);
136
- h([
137
- u()
138
- ], l.prototype, "portal", 2);
139
- h([
140
- u()
141
- ], l.prototype, "view", 2);
142
- h([
143
- u({ readOnly: !0 })
144
- ], l.prototype, "loading", 2);
145
- h([
146
- u({ readOnly: !0 })
147
- ], l.prototype, "processing", 2);
148
- h([
149
- u({ readOnly: !0 })
150
- ], l.prototype, "processingStep", 2);
151
- l = h([
293
+ u([
294
+ m({ readOnly: !0 })
295
+ ], d.prototype, "orchestrator", 2);
296
+ u([
297
+ m()
298
+ ], d.prototype, "agents", 2);
299
+ u([
300
+ m()
301
+ ], d.prototype, "portal", 2);
302
+ u([
303
+ m()
304
+ ], d.prototype, "view", 2);
305
+ u([
306
+ m()
307
+ ], d.prototype, "streamingDisabled", 2);
308
+ u([
309
+ m({ readOnly: !0 })
310
+ ], d.prototype, "loading", 2);
311
+ u([
312
+ m({ readOnly: !0 })
313
+ ], d.prototype, "processing", 2);
314
+ u([
315
+ m({ readOnly: !0 })
316
+ ], d.prototype, "processingStep", 2);
317
+ d = u([
152
318
  q("OrchestratorController")
153
- ], l);
154
- const B = "Embeddings resource 'embeddings-v01.json' not found in the webmap portal item.", H = "Embeddings not found for this web map.", D = "https://developers.arcgis.com/javascript/latest/agentic-apps/ai-webmap-setup/#embeddings";
155
- class F extends R {
319
+ ], d);
320
+ const K = "Embeddings resource 'embeddings-v01.json' not found in the webmap portal item.", Q = "Embeddings not found for this web map.", X = "https://developers.arcgis.com/javascript/latest/agentic-apps/ai-webmap-setup/#embeddings";
321
+ class tt extends M {
156
322
  constructor() {
157
- super(...arguments), this._messages = M({ blocking: !0 }), this.#t = f(), this.#n = f(), this.#e = f(), this.#s = null, this.#o = /* @__PURE__ */ new Map(), this.#r = P.getDefault(), this.#i = (t) => {
323
+ super(...arguments), this._messages = N({ blocking: !0 }), this.#t = y(), this.#l = y(), this.#s = y(), this.#e = null, this.#r = /* @__PURE__ */ new Map(), this.#i = O.getDefault(), this.#a = (t) => {
158
324
  t.stopPropagation(), this.cancelInterrupt();
159
- }, this.#a = (t) => {
325
+ }, this.#n = (t) => {
160
326
  t.stopPropagation();
161
- const e = t.detail;
162
- this.submitInterrupt(e);
163
- }, this.#l = (t) => {
164
- t.stopPropagation(), this.keepSuggestedPrompts || (this.suggestedPrompts = []);
165
- const e = t.detail;
166
- this._inputValue = "", this.arcgisSubmit.emit(e), this.submitMessage(e);
327
+ const s = t.detail;
328
+ this.submitInterrupt(s);
167
329
  }, this.#c = (t) => {
168
- if (t.stopPropagation(), this.arcgisCancel.emit(), this._interrupt) {
330
+ t.stopPropagation(), this.keepSuggestedPrompts || (this.suggestedPrompts = []);
331
+ const s = t.detail;
332
+ this._inputValue = "", this.arcgisSubmit.emit(s), this.submitMessage(s);
333
+ }, this.#h = (t) => {
334
+ if (this._canceling = !0, t.stopPropagation(), this.arcgisCancel.emit(), this._interrupt) {
169
335
  this.orchestrator?.cancelInterrupt(), this._interrupt = null;
170
336
  return;
171
337
  }
172
- this.#s?.abort();
173
- }, this.#h = (t) => {
338
+ this._orchestratorController?.cancel(), this.#e?.abort(), this.#e = null;
339
+ }, this.#p = (t) => {
174
340
  t.stopPropagation();
175
- const e = t.detail;
176
- this.arcgisFeedback.emit(e);
341
+ const s = t.detail;
342
+ this.arcgisFeedback.emit(s);
177
343
  }, this.#g = (t) => {
178
344
  t.stopPropagation();
179
- const e = t.detail;
180
- this._inputValue = e.prompt, this.arcgisPromptSelect.emit(e);
181
- }, this.#p = (t) => {
345
+ const s = t.detail;
346
+ this._inputValue = s.prompt, this.arcgisPromptSelect.emit(s);
347
+ }, this.#d = (t) => {
182
348
  this.arcgisSlottableRequest.emit(t.detail);
183
- }, this._orchestratorController = null, this._interrupt = null, this._error = null, this._inputValue = "", this.messages = new S([]), this.referenceElement = null, this.suggestedPrompts = [], this.feedbackEnabled = !1, this.keepSuggestedPrompts = !1, this.logEnabled = !1, this.copyEnabled = !1, this.voiceInputEnabled = !1, this.readAloudEnabled = !1, this.arcgisCancel = o(), this.arcgisError = o(), this.arcgisFeedback = o(), this.arcgisInterrupt = o(), this.arcgisInterruptCancel = o(), this.arcgisInterruptSubmit = o(), this.arcgisPromptSelect = o(), this.arcgisReady = o(), this.arcgisSubmit = o(), this.arcgisSlottableRequest = o({ bubbles: !1, composed: !1 });
349
+ }, this._orchestratorController = null, this._interrupt = null, this._interruptDetails = [], this._error = null, this._inputValue = "", this._isAnswering = !1, this._canceling = !1, this.messages = new T([]), this.referenceElement = null, this.suggestedPrompts = [], this.feedbackEnabled = !1, this.keepSuggestedPrompts = !1, this.streamingDisabled = !1, this.logEnabled = !1, this.copyEnabled = !1, this.voiceInputEnabled = !1, this.readAloudEnabled = !1, this.assistantAvatarEnabled = !1, this.arcgisCancel = g(), this.arcgisError = g(), this.arcgisFeedback = g(), this.arcgisInterrupt = g(), this.arcgisInterruptCancel = g(), this.arcgisInterruptSubmit = g(), this.arcgisPromptSelect = g(), this.arcgisReady = g(), this.arcgisSubmit = g(), this.arcgisSlottableRequest = g({ bubbles: !1, composed: !1 }), this.arcgisResponse = g();
184
350
  }
185
351
  static {
186
- this.properties = { _orchestratorController: 16, _interrupt: 16, _error: 16, _inputValue: 16, _user: 16, awaitingResponse: 32, awaitingResponseStep: 32, interrupt: 32, messages: 0, orchestrator: 32, entryMessage: 1, heading: 1, description: 1, referenceElement: 1, suggestedPrompts: 0, feedbackEnabled: 5, keepSuggestedPrompts: 5, logEnabled: 5, copyEnabled: 5, voiceInputEnabled: 5, readAloudEnabled: 5 };
352
+ 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, suggestedPrompts: 0, feedbackEnabled: 5, keepSuggestedPrompts: 5, streamingDisabled: 5, logEnabled: 5, copyEnabled: 5, voiceInputEnabled: 5, readAloudEnabled: 5, assistantAvatarEnabled: 5 };
187
353
  }
188
354
  static {
189
- this.styles = V;
355
+ this.styles = F;
190
356
  }
191
357
  #t;
192
- #n;
193
- #e;
358
+ #l;
194
359
  #s;
195
- #o;
360
+ #e;
196
361
  #r;
197
362
  #i;
198
363
  #a;
199
- #l;
364
+ #n;
200
365
  #c;
201
366
  #h;
202
- #g;
203
367
  #p;
204
- async #u() {
368
+ #g;
369
+ #d;
370
+ async #o() {
205
371
  try {
206
- const t = z(this.el, this.referenceElement);
372
+ const t = H(this.el, this.referenceElement);
207
373
  await t?.componentOnReady();
208
- const e = [...this.#o.values()];
209
- return e.length ? (this._orchestratorController = new l({
210
- agents: e,
211
- portal: this.#r,
374
+ const s = [...this.#r.values()];
375
+ return s.length ? (this._orchestratorController?.destroy(), this._orchestratorController = new d({
376
+ agents: s,
377
+ portal: this.#i,
378
+ streamingDisabled: this.streamingDisabled,
212
379
  view: t?.view
213
380
  }), await this._orchestratorController.load(), !0) : (this._error = "No agents found.", !1);
214
381
  } catch (t) {
215
- return this._error = t?.message ?? "Error initializing orchestrator.", x(this)(t), !1;
382
+ return this._error = t?.message ?? "Error initializing orchestrator.", z(this)(t), !1;
216
383
  }
217
384
  }
385
+ get _isSignedIn() {
386
+ return !!this.#i?.user || !!this._signedInUserId;
387
+ }
218
388
  get _user() {
219
- return this.#r?.user?.fullName || this.#r?.user?.username;
389
+ return this.#i?.user?.fullName || this.#i?.user?.username;
220
390
  }
221
391
  get awaitingResponse() {
222
392
  return this._orchestratorController?.processing ?? !1;
@@ -237,85 +407,156 @@ class F extends R {
237
407
  this.arcgisInterruptCancel.emit(), this.orchestrator?.cancelInterrupt(), this._interrupt = null;
238
408
  }
239
409
  register(t) {
240
- this.#o.set(t.agent.id, t);
410
+ this.#r.set(t.agent.id, t), this._orchestratorController && this.#o();
411
+ }
412
+ unregister(t) {
413
+ this.#r.delete(t), this._orchestratorController && this.#o();
241
414
  }
242
415
  async submitMessage(t) {
243
- const e = t.trim();
244
- if (!e || (this.messages.push({
416
+ const s = t.trim();
417
+ if (!s || (this.messages.push({
245
418
  id: Date.now().toString(),
246
419
  // TODO: Replace with a more robust ID generation method or get from orchestrator
247
420
  role: "user",
248
- content: e
421
+ content: s
249
422
  }), !this._orchestratorController))
250
423
  return;
251
- const i = this._orchestratorController.ask(e, this.#s?.signal);
252
- for await (const s of i) {
253
- const r = s.runId;
254
- switch (s.type) {
424
+ this.#e = new AbortController(), this._orchestratorController.streamingDisabled = this.streamingDisabled;
425
+ const i = this._orchestratorController.ask(s, this.#e?.signal);
426
+ for await (const e of i) {
427
+ const n = e.runId, r = this.messages.at(-1);
428
+ switch (e.type) {
429
+ case "block-start": {
430
+ this._isAnswering = !0;
431
+ const a = { type: e.blockType, isPending: !0 };
432
+ if (r?.role === "assistant" && r.id === n) {
433
+ const l = [...r.blocks ?? [], a];
434
+ this.messages.splice(-1, 1, { ...r, blocks: l });
435
+ } else
436
+ this.messages.push({
437
+ role: "assistant",
438
+ blocks: [a],
439
+ id: n,
440
+ isStreaming: !0,
441
+ interrupts: this._interruptDetails
442
+ }), this._interruptDetails = [];
443
+ break;
444
+ }
445
+ case "block-data": {
446
+ if (r?.role !== "assistant" || r?.id !== n)
447
+ break;
448
+ const a = [...r.blocks ?? []], l = a[a.length - 1], { blockType: h, data: p } = e;
449
+ if (l?.type !== h || !l.isPending)
450
+ break;
451
+ h === "text" ? a[a.length - 1] = {
452
+ ...l,
453
+ data: {
454
+ ...l.data,
455
+ parts: p?.parts
456
+ }
457
+ } : a[a.length - 1] = { ...l, data: { ...l.data, ...p ?? {} } }, this.messages.splice(-1, 1, { ...r, blocks: a });
458
+ break;
459
+ }
460
+ case "block-end": {
461
+ if (r?.role !== "assistant" || r?.id !== n)
462
+ break;
463
+ const a = [...r.blocks ?? []], l = a[a.length - 1];
464
+ if (l?.type !== e.blockType || !l.isPending)
465
+ break;
466
+ const h = l;
467
+ a[a.length - 1] = { ...h, data: { ...h.data }, isPending: !1 }, this.messages.splice(-1, 1, { ...r, blocks: a });
468
+ break;
469
+ }
255
470
  case "completed":
256
- this.messages.push({
471
+ e.error ? (this.messages.push({
257
472
  role: "assistant",
258
- content: s.response,
259
- blocks: s.blocks,
260
- log: s.log,
261
- error: s.error,
262
- id: r
263
- });
473
+ log: e.log,
474
+ error: e.error,
475
+ id: n,
476
+ interrupts: this._interruptDetails
477
+ }), this._interruptDetails = []) : r?.role === "assistant" && r.id === n && this.messages.splice(-1, 1, {
478
+ ...r,
479
+ content: e.response,
480
+ blocks: r.blocks?.map((a) => ({ ...a, data: { ...a.data }, isPending: !1 })) ?? [],
481
+ isStreaming: !1,
482
+ log: e.log
483
+ }), this._isAnswering = !1, this.#e = null, this._canceling = !1;
264
484
  break;
265
485
  case "interrupt":
266
- this._interrupt = { ...s.payload, id: r }, this.arcgisInterrupt.emit(this._interrupt);
486
+ this._interrupt = { ...e.payload, id: n }, this.arcgisInterrupt.emit(this._interrupt);
267
487
  break;
268
488
  case "cancelled":
269
- this.messages.push({
489
+ r?.role === "assistant" && r.id === n ? this.messages.splice(-1, 1, {
490
+ ...r,
491
+ blocks: r.blocks?.filter((a) => a.type === "text" || !a.isPending) ?? [],
492
+ isStreaming: !1,
493
+ log: e.log,
494
+ error: "(Stopped by user)"
495
+ // TODO: use strings from t9n
496
+ }) : (this.messages.push({
270
497
  role: "assistant",
271
- error: "Request cancelled.",
272
- id: r
273
- });
498
+ log: e.log,
499
+ error: "(Stopped by user)",
500
+ // TODO: use strings from t9n
501
+ id: n,
502
+ interrupts: this._interruptDetails
503
+ }), this._interruptDetails = []), this._isAnswering = !1, this.#e = null, this._canceling = !1;
274
504
  break;
275
505
  }
276
506
  }
277
507
  }
278
508
  submitInterrupt(t) {
279
- this.arcgisInterruptSubmit.emit(t), this.orchestrator?.resumeInterrupt(t), this._interrupt = null;
509
+ this.arcgisInterruptSubmit.emit(t), this._interrupt && (this._interruptDetails = [...this._interruptDetails, { interrupt: this._interrupt, response: t }]), this.orchestrator?.resumeInterrupt(t), this._interrupt = null;
280
510
  }
281
511
  load() {
282
512
  this.manager.onLifecycle(this._reset.bind(this));
283
513
  }
284
514
  loaded() {
285
515
  this.manager.onLifecycle(() => {
286
- 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);
287
- const t = I(() => !!this._interrupt && !!this.#e.value, () => {
288
- const e = this.#e.value;
289
- e.removeEventListener("arcgisSubmit", this.#a), e.removeEventListener("arcgisCancel", this.#i), e.addEventListener("arcgisSubmit", this.#a, { once: !0 }), e.addEventListener("arcgisCancel", this.#i, { once: !0 });
516
+ this.#t.value?.addEventListener("arcgisPromptSelect", this.#g), this.#t.value?.addEventListener("arcgisSubmit", this.#c), this.#t.value?.addEventListener("arcgisCancel", this.#h), this.#t.value?.addEventListener("arcgisFeedback", this.#p);
517
+ const t = D(() => !!this._interrupt && !!this.#s.value, () => {
518
+ const i = this.#s.value;
519
+ i.removeEventListener("arcgisSubmit", this.#n), i.removeEventListener("arcgisCancel", this.#a), i.addEventListener("arcgisSubmit", this.#n, { once: !0 }), i.addEventListener("arcgisCancel", this.#a, { once: !0 });
520
+ }), s = this.messages.on("after-add", (i) => {
521
+ const e = i.item;
522
+ e.role === "assistant" && (e.error || e.content) && this.arcgisResponse.emit(e);
290
523
  });
291
524
  return queueMicrotask(() => {
292
- this.#u().then((e) => {
293
- e ? this.arcgisReady.emit() : this._error && this.arcgisError.emit(new Error(this._error));
525
+ this.#o().then((i) => {
526
+ i ? this.arcgisReady.emit() : this._error && this.arcgisError.emit(new Error(this._error));
294
527
  });
295
528
  }), () => {
296
- t.remove(), this.#t.value?.removeEventListener("arcgisPromptSelect", this.#g), this.#e.value?.removeEventListener("arcgisSubmit", this.#a), this.#e.value?.removeEventListener("arcgisCancel", this.#i), 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;
529
+ t.remove(), s.remove(), this.#t.value?.removeEventListener("arcgisPromptSelect", this.#g), this.#s.value?.removeEventListener("arcgisSubmit", this.#n), this.#s.value?.removeEventListener("arcgisCancel", this.#a), this.#t.value?.removeEventListener("arcgisSubmit", this.#c), this.#t.value?.removeEventListener("arcgisCancel", this.#h), this.#t.value?.removeEventListener("arcgisFeedback", this.#p), this._orchestratorController?.destroy(), this._orchestratorController = null;
297
530
  };
298
531
  });
299
532
  }
300
533
  _reset() {
301
- this.#s?.abort(), this._interrupt = null, this.messages.removeAll(), this._error = null, this._inputValue = "";
534
+ this._orchestratorController?.cancel(), this.#e?.abort(), this._interrupt = null, this.messages.removeAll(), this._error = null, this._inputValue = "", this._signedInUserId = void 0;
302
535
  }
303
536
  _renderEntryMessage() {
304
- return this._interrupt ? a`<slot name=interrupt><arcgis-assistant-interrupt .type=${this._interrupt.type} .message=${this._interrupt.message} .options=${this._interrupt.options} ${y(this.#e)}></arcgis-assistant-interrupt></slot>` : this._error ? this._renderErrorNotice() : this.entryMessage ? this.messages.length > 0 ? null : a`<calcite-notice open kind=info closable icon width=full><div slot=message>${this.entryMessage}</div></calcite-notice>` : a`<slot name=entry-message></slot>`;
537
+ return this._isSignedIn ? this._error ? this._renderErrorNotice() : this.entryMessage ? this.messages.length > 0 ? null : c`<calcite-notice open kind=brand closable icon width=full><div slot=message>${this.entryMessage}</div></calcite-notice>` : c`<slot name=entry-message></slot>` : this._renderSignInNotice();
305
538
  }
306
- _renderErrorNotice() {
307
- return this._error ? a`<calcite-notice closable slot=entry-message open kind=danger icon width=full>${this._error === B ? a`<div slot=message>${H}</div><calcite-link slot=link .href=${D} target=_blank title="Learn about web map embeddings">Read more</calcite-link>` : a`<div slot=message>${this._error}</div>`}</calcite-notice>` : null;
539
+ _renderSignInNotice() {
540
+ const t = this.#i;
541
+ return c`<calcite-notice slot=entry-message open kind=brand icon width=full><div slot=message>You need to sign in to use the assistant chat.</div>${t ? c`<calcite-link slot=link @click=${async () => {
542
+ try {
543
+ const s = await V.getCredential(`${t.url}/sharing`);
544
+ this._signedInUserId = s.userId, this._error = null, this.requestUpdate(), await this.#o() ? this.arcgisReady.emit() : this._error && this.arcgisError.emit(new Error(this._error));
545
+ } catch (s) {
546
+ this._error = s?.message ?? "Error signing in.", this.arcgisError.emit(new Error(this._error)), B.log("error", this, "Error signing in:", { detail: { error: s } });
547
+ }
548
+ }} target=_blank title="Sign in to ArcGIS Online">Sign in</calcite-link>` : c`<div slot=link>No portal information available</div>`}</calcite-notice>`;
308
549
  }
309
- _renderSuggestedPrompts() {
310
- return this.suggestedPrompts?.length ? a`<div class="suggested-prompts-container"><arcgis-assistant-suggested-prompts class="suggested-prompts" .prompts=${this.suggestedPrompts}></arcgis-assistant-suggested-prompts></div>` : null;
550
+ _renderErrorNotice() {
551
+ return this._error ? c`<calcite-notice slot=entry-message open kind=brand icon width=full>${this._error === K ? c`<div slot=message>${Q}</div><calcite-link slot=link .href=${X} target=_blank title="Learn about web map embeddings">Read more</calcite-link>` : c`<div slot=message>${this._error}</div>`}</calcite-notice>` : null;
311
552
  }
312
553
  render() {
313
- return a`<calcite-panel .loading=${!this._orchestratorController && !this._error || this._orchestratorController?.loading} .heading=${this.heading ?? this._messages.assistantLabel} .description=${this.description} ${y(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}><slot name=message-starter slot=message-starter></slot><slot name=messages slot=messages>${this.messages.map((t) => t.role === "assistant" ? a`<arcgis-assistant-message .message=${t} .feedbackEnabled=${this.feedbackEnabled} .logEnabled=${this.logEnabled} .copyEnabled=${this.copyEnabled} .readAloudEnabled=${this.readAloudEnabled} @arcgisSlottableRequest=${this.#p}><slot name=${v(t.id) ?? b} slot=${v(t.id) ?? b}>${t?.error ? a`<calcite-notice class="error-notice" open icon kind=warning width=full><div slot=message>${t.error}</div></calcite-notice>` : a`<arcgis-assistant-message-text .content=${t?.content}></arcgis-assistant-message-text>`}</slot>${t.blocks?.map((e, i) => a`<slot name=${_(t.id, i) ?? b} slot=${_(t.id, i) ?? b}><arcgis-assistant-message-block .block=${e}></arcgis-assistant-message-block></slot>`)}</arcgis-assistant-message>` : a`<arcgis-assistant-user-message .message=${t} .user=${this._user}></arcgis-assistant-user-message>`)}</slot><slot name=message-loading slot=message-loading><arcgis-assistant-message-loading .loading=${this.awaitingResponse} .loadingMessage=${this.awaitingResponseStep}></arcgis-assistant-message-loading></slot></arcgis-assistant-chat></div>${this._renderSuggestedPrompts()}<div class="footer-container" slot=footer>${this._renderEntryMessage()}<slot name=chat-entry><arcgis-assistant-chat-entry .awaitingResponse=${this.awaitingResponse} .inputValue=${this._inputValue} .messages=${this.messages} .voiceInputEnabled=${this.voiceInputEnabled} ${y(this.#n)}><slot name=entry-actions-start slot=entry-actions-start></slot><slot name=entry-actions-end slot=entry-actions-end><calcite-button .iconStart=${this.awaitingResponse ? "circle-stop" : "send"} @click=${() => {
314
- this.#n.value?.submitMessage();
315
- }} round>${this.awaitingResponse ? this._messages.stopButtonLabel : this._messages.askButtonLabel}</calcite-button></slot></arcgis-assistant-chat-entry></slot><slot name=footer-content></slot></div></calcite-panel>`;
554
+ return c`<calcite-panel .loading=${!this._orchestratorController && !this._error || this._orchestratorController?.loading} .heading=${this.heading ?? this._messages.assistantLabel} .description=${this.description} ${v(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" ? c`<arcgis-assistant-message .message=${t} .feedbackEnabled=${this.feedbackEnabled} .logEnabled=${this.logEnabled} .copyEnabled=${this.copyEnabled} .readAloudEnabled=${this.readAloudEnabled} @arcgisSlottableRequest=${this.#d} .assistantAvatarEnabled=${this.assistantAvatarEnabled}>${t.blocks?.map((s, i) => c`<slot name=${S(t.id, i) ?? k} slot=${S(t.id, i) ?? k}><arcgis-assistant-message-block .block=${s}></arcgis-assistant-message-block></slot>`)}</arcgis-assistant-message>` : c`<arcgis-assistant-user-message .message=${t} .user=${this._user}></arcgis-assistant-user-message>`)}</slot>${this._interrupt ? c`<div slot=message-loading><div class="interrupt-waiting-message">waiting for user input...</div></div>` : c`<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 ? c`<slot name=interrupt><arcgis-assistant-interrupt slot=content-bottom .type=${this._interrupt.type} .message=${this._interrupt.message} .options=${this._interrupt.options} ${v(this.#s)}></arcgis-assistant-interrupt></slot>` : this.suggestedPrompts?.length ? c`<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} ${v(this.#l)}><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=${() => {
555
+ this.#l.value?.submitMessage();
556
+ }} 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>`;
316
557
  }
317
558
  }
318
- $("arcgis-assistant", F);
559
+ x("arcgis-assistant", tt);
319
560
  export {
320
- F as ArcgisAssistant
561
+ tt as ArcgisAssistant
321
562
  };