@esri/solutions-components 5.1.0-next.15 → 5.1.0-next.150

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 (1463) hide show
  1. package/dist/cdn/{ANX2J4ID.js → 232XXYVJ.js} +1 -1
  2. package/dist/cdn/{AJY7XD7A.js → 23SGJQLW.js} +1 -1
  3. package/dist/cdn/2B4SGB3I.js +2 -0
  4. package/dist/cdn/2BIUOM64.js +2 -0
  5. package/dist/cdn/{CEP54NLT.js → 2C4DK6YC.js} +1 -1
  6. package/dist/cdn/{NDUAEC62.js → 2I5LGZNX.js} +1 -1
  7. package/dist/cdn/2IGILR4T.js +2 -0
  8. package/dist/cdn/3A2YSBVB.js +2 -0
  9. package/dist/cdn/3JZVI5AM.js +7 -0
  10. package/dist/cdn/3KYQE6O5.js +2 -0
  11. package/dist/cdn/{KHHT54BU.js → 3OLSNMWN.js} +1 -1
  12. package/dist/cdn/{DZLVEIWW.js → 3ZYEIYTY.js} +1 -1
  13. package/dist/cdn/42GXADY4.js +2 -0
  14. package/dist/cdn/{36HEIJAI.js → 4AFANEZZ.js} +1 -1
  15. package/dist/cdn/{JLYGSQEC.js → 4ASIXXDP.js} +1 -1
  16. package/dist/cdn/4DAGSZIC.js +2 -0
  17. package/dist/cdn/4FRYNYQ6.js +2 -0
  18. package/dist/cdn/{YMOLIY64.js → 4MAZNAHZ.js} +1 -1
  19. package/dist/cdn/4RJURJQ5.js +2 -0
  20. package/dist/cdn/{LDHJGX5G.js → 4RU3GWUU.js} +1 -1
  21. package/dist/cdn/4SBOBTOR.js +2 -0
  22. package/dist/cdn/{7GPGKDLH.js → 4V4CR63B.js} +1 -1
  23. package/dist/cdn/{T537IZUH.js → 4Z6UJJJR.js} +1 -1
  24. package/dist/cdn/{TUGKPWRB.js → 5GHZQ66V.js} +1 -1
  25. package/dist/cdn/{26K4UTAF.js → 5IIGQVJO.js} +1 -1
  26. package/dist/cdn/{C44FH5Z2.js → 5MPDXVRM.js} +1 -1
  27. package/dist/cdn/{4HFHJOS3.js → 5O53T3SW.js} +1 -1
  28. package/dist/cdn/5O7LFBHI.js +18 -0
  29. package/dist/cdn/{T745GPG3.js → 5XDPNTYE.js} +1 -1
  30. package/dist/cdn/6AUKNSKW.js +2 -0
  31. package/dist/cdn/6BIHAEOS.js +2 -0
  32. package/dist/cdn/{LD2NUKM3.js → 6IBUETLU.js} +1 -1
  33. package/dist/cdn/6K3C5JX2.js +2 -0
  34. package/dist/cdn/{X4LKJTY5.js → 6Q52JBZW.js} +1 -1
  35. package/dist/cdn/6VCG2ITQ.js +2 -0
  36. package/dist/cdn/{7ZMHT4SH.js → 6ZN2VAXG.js} +1 -1
  37. package/dist/cdn/757HAEJS.js +2 -0
  38. package/dist/cdn/{NZS3YVIT.js → 7CAFUU5D.js} +1 -1
  39. package/dist/cdn/7CGCLEYB.js +2 -0
  40. package/dist/cdn/{FV7G3BY6.js → 7Q5BT35O.js} +1 -1
  41. package/dist/cdn/{FTMEQQF5.js → 7V57GR4X.js} +1 -1
  42. package/dist/cdn/7VD3Y4IF.js +2 -0
  43. package/dist/cdn/7WIFBTQF.js +57 -0
  44. package/dist/cdn/7WYPODAB.js +2 -0
  45. package/dist/cdn/{JDVVMD4S.js → 7ZKKR7QO.js} +1 -1
  46. package/dist/cdn/AE5HNAOV.js +4 -0
  47. package/dist/cdn/{45M33Q5G.js → AJZDBHB6.js} +1 -1
  48. package/dist/cdn/AL7O7ZB2.js +3 -0
  49. package/dist/cdn/{H3LJVYII.js → ANVT6ANQ.js} +1 -1
  50. package/dist/cdn/{XPIAEAK5.js → AOJP5RQ6.js} +1 -1
  51. package/dist/cdn/AOWNMC3W.js +2 -0
  52. package/dist/cdn/{N2ROUAUM.js → APL6U736.js} +1 -1
  53. package/dist/cdn/AYSQIO6L.js +2 -0
  54. package/dist/cdn/{ELD2UQO4.js → B3BR2NG5.js} +1 -1
  55. package/dist/cdn/{6UXP2Q63.js → BBECVTV3.js} +1 -1
  56. package/dist/cdn/BG4LNU44.js +2 -0
  57. package/dist/cdn/BH42V5CR.js +2 -0
  58. package/dist/cdn/BJAEUZFB.js +2 -0
  59. package/dist/cdn/{7DVOR4SY.js → BOSEAFVW.js} +1 -1
  60. package/dist/cdn/{E7W2OZL3.js → BROZWKD5.js} +1 -1
  61. package/dist/cdn/{6XELM7OM.js → BSBNPUTI.js} +1 -1
  62. package/dist/cdn/BZLMMSFW.js +2 -0
  63. package/dist/cdn/{P2YLMWCT.js → C5AR5K23.js} +1 -1
  64. package/dist/cdn/{MWVSVTGT.js → CUOHPTI7.js} +1 -1
  65. package/dist/cdn/CVHXDPJO.js +2 -0
  66. package/dist/cdn/{EYBEUSBG.js → CWXZSWUA.js} +1 -1
  67. package/dist/cdn/DD2Y5NOB.js +2 -0
  68. package/dist/cdn/{QQSP7HQH.js → DDJSF2M3.js} +1 -1
  69. package/dist/cdn/DIMSALHW.js +2 -0
  70. package/dist/cdn/DMM5WA5Q.js +4 -0
  71. package/dist/cdn/DO7NLLUV.js +2 -0
  72. package/dist/cdn/DQQTSOMQ.js +2 -0
  73. package/dist/cdn/{FFDZB5TW.js → DUXRJBCP.js} +1 -1
  74. package/dist/cdn/{SXD7ZWLW.js → DVWIWECZ.js} +1 -1
  75. package/dist/cdn/DXQQQNOF.js +2 -0
  76. package/dist/cdn/{JALU4653.js → E4ZB3BPD.js} +1 -1
  77. package/dist/cdn/E5X2RW5Y.js +109 -0
  78. package/dist/cdn/{T3JHAFWW.js → EIF4KZBD.js} +1 -1
  79. package/dist/cdn/{AM5URNYD.js → EUPJV6QI.js} +1 -1
  80. package/dist/cdn/{NOIG2A4U.js → EVZXWT6K.js} +1 -1
  81. package/dist/cdn/{D4QQZVLI.js → F2V6IA23.js} +1 -1
  82. package/dist/cdn/FFF5HUPM.js +4 -0
  83. package/dist/cdn/FWLPMS4Q.js +2 -0
  84. package/dist/cdn/G3C6IL5Y.js +2 -0
  85. package/dist/cdn/GCEPKR7I.js +2 -0
  86. package/dist/cdn/{VIWNXKUP.js → GDDMG3Q4.js} +1 -1
  87. package/dist/cdn/{3FMOO3PJ.js → GF4QELNV.js} +1 -1
  88. package/dist/cdn/GG4IIHQE.js +2 -0
  89. package/dist/cdn/GRQLB7ZG.js +2 -0
  90. package/dist/cdn/{3XVYTVMS.js → HEI6GMZN.js} +1 -1
  91. package/dist/cdn/{BPAYAR53.js → HJW2JW4G.js} +1 -1
  92. package/dist/cdn/HQLA2AI4.js +2 -0
  93. package/dist/cdn/HYQVSB6C.js +2 -0
  94. package/dist/cdn/{DLBZRD4H.js → I2NTSKBD.js} +1 -1
  95. package/dist/cdn/I46CXTVR.js +2 -0
  96. package/dist/cdn/IEC46RE7.js +2 -0
  97. package/dist/cdn/IFONVCBL.js +2 -0
  98. package/dist/cdn/{KU62OLRE.js → IHG7KTNC.js} +1 -1
  99. package/dist/cdn/{S423P2GA.js → ISFTCFSJ.js} +1 -1
  100. package/dist/cdn/{NWTG35WX.js → ITSA4WXG.js} +1 -1
  101. package/dist/cdn/IV7RVOFY.js +56 -0
  102. package/dist/cdn/{NLTK53B2.js → JCQQIAIE.js} +1 -1
  103. package/dist/cdn/JDCZUOU6.js +33 -0
  104. package/dist/cdn/{K7XOFXRK.js → JGMNZLH4.js} +1 -1
  105. package/dist/cdn/JJV3TD42.js +2 -0
  106. package/dist/cdn/JMBANG5V.js +2 -0
  107. package/dist/cdn/{ZDQANIMG.js → JMYENPUQ.js} +1 -1
  108. package/dist/cdn/{XVRRQMOP.js → JNE3LBQU.js} +1 -1
  109. package/dist/cdn/{RNTJMF4O.js → JOAEH3CI.js} +1 -1
  110. package/dist/cdn/{XC7LLCVS.js → JXTZNXTZ.js} +1 -1
  111. package/dist/cdn/{QMD2WK5F.js → JYUZPAPI.js} +1 -1
  112. package/dist/cdn/{I3D5WRYZ.js → KCTWFRCW.js} +1 -1
  113. package/dist/cdn/KETYOYXQ.js +2 -0
  114. package/dist/cdn/KH5WPLZK.js +2 -0
  115. package/dist/cdn/{LPJHRY3Y.js → KP3AJBAI.js} +1 -1
  116. package/dist/cdn/KZSBETIP.js +2 -0
  117. package/dist/cdn/L5YT5FRJ.js +2 -0
  118. package/dist/cdn/{NM3YBQUM.js → LHG6NOEP.js} +1 -1
  119. package/dist/cdn/{LPBP7CBN.js → LP2JYX4X.js} +1 -1
  120. package/dist/cdn/LTLR4VF3.js +2 -0
  121. package/dist/cdn/LWT3JEQ6.js +99 -0
  122. package/dist/cdn/LZDMYPQ2.js +75 -0
  123. package/dist/cdn/{OC2DD3AB.js → M3NML7ZV.js} +1 -1
  124. package/dist/cdn/{5UQRM2YJ.js → MDNGEZ2V.js} +1 -1
  125. package/dist/cdn/{3AQ7U2PF.js → MGEDATQ7.js} +1 -1
  126. package/dist/cdn/MURYADCX.js +2 -0
  127. package/dist/cdn/MZ73EAAV.js +29 -0
  128. package/dist/cdn/MZXUUA7G.js +16 -0
  129. package/dist/cdn/{B3R52L7H.js → N22MFQSQ.js} +1 -1
  130. package/dist/cdn/{BDXIKPLU.js → N7BXCDA3.js} +1 -1
  131. package/dist/cdn/NKX2EIDR.js +2 -0
  132. package/dist/cdn/NM2PQIH6.js +2 -0
  133. package/dist/cdn/NQH7ZZWD.js +2 -0
  134. package/dist/cdn/NV2DLQDN.js +2 -0
  135. package/dist/cdn/NVEAYDYI.js +2 -0
  136. package/dist/cdn/{UF67SSGX.js → NYQQSL25.js} +1 -1
  137. package/dist/cdn/OANAQ6HY.js +2 -0
  138. package/dist/cdn/{AA7X6GKH.js → ONARC6AZ.js} +1 -1
  139. package/dist/cdn/OQOCOC5R.js +2 -0
  140. package/dist/cdn/P2NKBGLG.js +2 -0
  141. package/dist/cdn/P6VUY7UX.js +2 -0
  142. package/dist/cdn/PNESECPO.js +2 -0
  143. package/dist/cdn/PP7EF7UU.js +2 -0
  144. package/dist/cdn/{57DOBXD6.js → PPRV6EZZ.js} +1 -1
  145. package/dist/cdn/PRXFYNIG.js +19 -0
  146. package/dist/cdn/Q2DJUFVO.js +2 -0
  147. package/dist/cdn/Q35DDH7J.js +431 -0
  148. package/dist/cdn/QC4MO5BO.js +2 -0
  149. package/dist/cdn/QDKHYQJB.js +2 -0
  150. package/dist/cdn/{IKN5RLJ4.js → QEPO225M.js} +1 -1
  151. package/dist/cdn/{EYXOOK3V.js → QF2IXVAT.js} +1 -1
  152. package/dist/cdn/{PJ5ORVU5.js → QJICQ4W3.js} +1 -1
  153. package/dist/cdn/{7JEVFHRJ.js → QLOWHDGX.js} +1 -1
  154. package/dist/cdn/QNRKGTZT.js +121 -0
  155. package/dist/cdn/{USM62FP5.js → QU25YPPX.js} +19 -19
  156. package/dist/cdn/{QHYG6C3L.js → R3C2X4CM.js} +1 -1
  157. package/dist/cdn/{DKB6JTUF.js → RKZXRHZK.js} +1 -1
  158. package/dist/cdn/RMEDO4JC.js +2 -0
  159. package/dist/cdn/RMO244NW.js +2 -0
  160. package/dist/cdn/RRD4QUQS.js +2 -0
  161. package/dist/cdn/{CZKXDUOH.js → RXM4BHPK.js} +1 -1
  162. package/dist/cdn/RY6KZ77P.js +2 -0
  163. package/dist/cdn/RYBSWXQQ.js +2 -0
  164. package/dist/cdn/RYETW3AF.js +6 -0
  165. package/dist/cdn/{FZ7WJ3YG.js → SHEPQVUX.js} +1 -1
  166. package/dist/cdn/SHGAD5MK.js +2 -0
  167. package/dist/cdn/{NH5526ON.js → SNBTGG5B.js} +1 -1
  168. package/dist/cdn/{LNLCO244.js → SNE4DYFB.js} +1 -1
  169. package/dist/cdn/{P4FX4W2X.js → SO27FVOH.js} +1 -1
  170. package/dist/cdn/SQ3AHKIW.js +2 -0
  171. package/dist/cdn/{UK4O67GV.js → SSZBIVTK.js} +1 -1
  172. package/dist/cdn/SWM5KEF6.js +2 -0
  173. package/dist/cdn/SYQ5E5TV.js +2 -0
  174. package/dist/cdn/{SIUUQBL4.js → SZRVESYE.js} +1 -1
  175. package/dist/cdn/TDH6R4JP.js +2 -0
  176. package/dist/cdn/{ZYRNI524.js → TJDAE43J.js} +1 -1
  177. package/dist/cdn/TKOGOWYQ.js +90 -0
  178. package/dist/cdn/{ATVUAP2X.js → TWJSFINX.js} +1 -1
  179. package/dist/cdn/U56TK45K.js +113 -0
  180. package/dist/cdn/{2H7KJUZG.js → U6JZYJ4D.js} +1 -1
  181. package/dist/cdn/UBEU6ULP.js +2 -0
  182. package/dist/cdn/UCQJWFUW.js +2 -0
  183. package/dist/cdn/UNBTFJYB.js +2 -0
  184. package/dist/cdn/{5EBHORLK.js → UNJV2PKC.js} +1 -1
  185. package/dist/cdn/{TP5EQUBD.js → UQDRAXO2.js} +1 -1
  186. package/dist/cdn/{K5JYHCQ7.js → UQN2JCKP.js} +1 -1
  187. package/dist/cdn/{DIDOZ4J6.js → UUHDVB24.js} +5 -5
  188. package/dist/cdn/UWSHU7MG.js +2 -0
  189. package/dist/cdn/V3MSUKLX.js +115 -0
  190. package/dist/cdn/{UDGR2GC5.js → V52O7WYV.js} +1 -1
  191. package/dist/cdn/{TVCG3ZCH.js → VTI5LEQY.js} +1 -1
  192. package/dist/cdn/W7I22AW3.js +2 -0
  193. package/dist/cdn/WC37HMOI.js +2 -0
  194. package/dist/cdn/{5KD4GK7Y.js → WDRZR4N3.js} +1 -1
  195. package/dist/cdn/WFHPQFNH.js +2 -0
  196. package/dist/cdn/{MFJF6OXL.js → WI67R264.js} +1 -1
  197. package/dist/cdn/WUEJANIZ.js +2 -0
  198. package/dist/cdn/WUKFT5AY.js +4 -0
  199. package/dist/cdn/WW6SEFWM.js +2 -0
  200. package/dist/cdn/WXL7GVUU.js +2 -0
  201. package/dist/cdn/{7DHQVMKX.js → WZCJ2VDD.js} +1 -1
  202. package/dist/cdn/{XXQKFENH.js → X26QOEYN.js} +1 -1
  203. package/dist/cdn/{LCWLPXAF.js → X6JL6SAH.js} +1 -1
  204. package/dist/cdn/XBFG3KX6.js +13 -0
  205. package/dist/cdn/{6G7RA3PN.js → XDF5MAGN.js} +1 -1
  206. package/dist/cdn/{JMU5KKZH.js → XDZPQACK.js} +1 -1
  207. package/dist/cdn/XEF5G3BC.js +2 -0
  208. package/dist/cdn/XM3SRZWV.js +2 -0
  209. package/dist/cdn/XO54BFTC.js +50 -0
  210. package/dist/cdn/Y37QLEAM.js +2 -0
  211. package/dist/cdn/{FXHBHZKG.js → Y7F2QFO6.js} +1 -1
  212. package/dist/cdn/{27G6RESZ.js → YCJJWOTP.js} +1 -1
  213. package/dist/cdn/YFJZN5K5.js +2 -0
  214. package/dist/cdn/YJBXJNUR.js +2 -0
  215. package/dist/cdn/{3IHLJADI.js → YKB6256M.js} +1 -1
  216. package/dist/cdn/{TZL2746B.js → YKM2YRZP.js} +1 -1
  217. package/dist/cdn/{E57JPXDR.js → YM2IDMZO.js} +1 -1
  218. package/dist/cdn/{JUUVYK2H.js → YQHYMLC7.js} +1 -1
  219. package/dist/cdn/YTU2BYBP.js +2 -0
  220. package/dist/cdn/YWALGZAG.js +2 -0
  221. package/dist/cdn/{VXMIT5WR.js → YWXDNRE2.js} +1 -1
  222. package/dist/cdn/{XTUL7OCR.js → YXHO47AZ.js} +1 -1
  223. package/dist/cdn/Z23BVIGQ.js +2 -0
  224. package/dist/cdn/ZCPVOS4Q.js +2 -0
  225. package/dist/cdn/ZNH7LRND.js +2 -0
  226. package/dist/cdn/{U6ALIHIC.js → ZNWZWFMH.js} +1 -1
  227. package/dist/cdn/{4NALIU6Y.js → ZTRQVOAR.js} +1 -1
  228. package/dist/cdn/{VRE7NUZ2.js → ZWKTEPK3.js} +1 -1
  229. package/dist/cdn/{G2ME4BAQ.js → ZX3UHK6P.js} +1 -1
  230. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ar.json +1 -1
  231. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.bg.json +1 -1
  232. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.bs.json +1 -1
  233. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ca.json +1 -1
  234. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.cs.json +1 -1
  235. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.da.json +1 -1
  236. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.de.json +1 -1
  237. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.el.json +1 -1
  238. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.en.json +1 -1
  239. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.es.json +1 -1
  240. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.et.json +1 -1
  241. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.fi.json +1 -1
  242. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.fr.json +1 -1
  243. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.he.json +1 -1
  244. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.hr.json +1 -1
  245. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.hu.json +1 -1
  246. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.id.json +1 -1
  247. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.it.json +1 -1
  248. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ja.json +1 -1
  249. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.json +1 -1
  250. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ko.json +1 -1
  251. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.lt.json +1 -1
  252. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.lv.json +1 -1
  253. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.nl.json +1 -1
  254. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.no.json +1 -1
  255. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.pl.json +1 -1
  256. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.pt-BR.json +1 -1
  257. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.pt-PT.json +1 -1
  258. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ro.json +1 -1
  259. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ru.json +1 -1
  260. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sk.json +1 -1
  261. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sl.json +1 -1
  262. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sr.json +1 -1
  263. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sv.json +1 -1
  264. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.th.json +1 -1
  265. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.tr.json +1 -1
  266. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.uk.json +1 -1
  267. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.vi.json +1 -1
  268. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.zh-CN.json +1 -1
  269. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.zh-HK.json +1 -1
  270. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.zh-TW.json +1 -1
  271. package/dist/cdn/assets/buffer-tools/t9n/messages.ar.json +1 -1
  272. package/dist/cdn/assets/buffer-tools/t9n/messages.bg.json +1 -1
  273. package/dist/cdn/assets/buffer-tools/t9n/messages.bs.json +1 -1
  274. package/dist/cdn/assets/buffer-tools/t9n/messages.ca.json +1 -1
  275. package/dist/cdn/assets/buffer-tools/t9n/messages.cs.json +1 -1
  276. package/dist/cdn/assets/buffer-tools/t9n/messages.da.json +1 -1
  277. package/dist/cdn/assets/buffer-tools/t9n/messages.de.json +1 -1
  278. package/dist/cdn/assets/buffer-tools/t9n/messages.el.json +1 -1
  279. package/dist/cdn/assets/buffer-tools/t9n/messages.en.json +1 -1
  280. package/dist/cdn/assets/buffer-tools/t9n/messages.es.json +1 -1
  281. package/dist/cdn/assets/buffer-tools/t9n/messages.et.json +1 -1
  282. package/dist/cdn/assets/buffer-tools/t9n/messages.fi.json +1 -1
  283. package/dist/cdn/assets/buffer-tools/t9n/messages.fr.json +1 -1
  284. package/dist/cdn/assets/buffer-tools/t9n/messages.he.json +1 -1
  285. package/dist/cdn/assets/buffer-tools/t9n/messages.hr.json +1 -1
  286. package/dist/cdn/assets/buffer-tools/t9n/messages.hu.json +1 -1
  287. package/dist/cdn/assets/buffer-tools/t9n/messages.id.json +1 -1
  288. package/dist/cdn/assets/buffer-tools/t9n/messages.it.json +1 -1
  289. package/dist/cdn/assets/buffer-tools/t9n/messages.ja.json +1 -1
  290. package/dist/cdn/assets/buffer-tools/t9n/messages.json +1 -1
  291. package/dist/cdn/assets/buffer-tools/t9n/messages.ko.json +1 -1
  292. package/dist/cdn/assets/buffer-tools/t9n/messages.lt.json +1 -1
  293. package/dist/cdn/assets/buffer-tools/t9n/messages.lv.json +1 -1
  294. package/dist/cdn/assets/buffer-tools/t9n/messages.nl.json +1 -1
  295. package/dist/cdn/assets/buffer-tools/t9n/messages.no.json +1 -1
  296. package/dist/cdn/assets/buffer-tools/t9n/messages.pl.json +1 -1
  297. package/dist/cdn/assets/buffer-tools/t9n/messages.pt-BR.json +1 -1
  298. package/dist/cdn/assets/buffer-tools/t9n/messages.pt-PT.json +1 -1
  299. package/dist/cdn/assets/buffer-tools/t9n/messages.ro.json +1 -1
  300. package/dist/cdn/assets/buffer-tools/t9n/messages.ru.json +1 -1
  301. package/dist/cdn/assets/buffer-tools/t9n/messages.sk.json +1 -1
  302. package/dist/cdn/assets/buffer-tools/t9n/messages.sl.json +1 -1
  303. package/dist/cdn/assets/buffer-tools/t9n/messages.sr.json +1 -1
  304. package/dist/cdn/assets/buffer-tools/t9n/messages.sv.json +1 -1
  305. package/dist/cdn/assets/buffer-tools/t9n/messages.th.json +1 -1
  306. package/dist/cdn/assets/buffer-tools/t9n/messages.tr.json +1 -1
  307. package/dist/cdn/assets/buffer-tools/t9n/messages.uk.json +1 -1
  308. package/dist/cdn/assets/buffer-tools/t9n/messages.vi.json +1 -1
  309. package/dist/cdn/assets/buffer-tools/t9n/messages.zh-CN.json +1 -1
  310. package/dist/cdn/assets/buffer-tools/t9n/messages.zh-HK.json +1 -1
  311. package/dist/cdn/assets/buffer-tools/t9n/messages.zh-TW.json +1 -1
  312. package/dist/cdn/assets/card-manager/t9n/messages.ar.json +1 -1
  313. package/dist/cdn/assets/card-manager/t9n/messages.bg.json +1 -1
  314. package/dist/cdn/assets/card-manager/t9n/messages.bs.json +1 -1
  315. package/dist/cdn/assets/card-manager/t9n/messages.ca.json +1 -1
  316. package/dist/cdn/assets/card-manager/t9n/messages.cs.json +1 -1
  317. package/dist/cdn/assets/card-manager/t9n/messages.da.json +1 -1
  318. package/dist/cdn/assets/card-manager/t9n/messages.de.json +1 -1
  319. package/dist/cdn/assets/card-manager/t9n/messages.el.json +1 -1
  320. package/dist/cdn/assets/card-manager/t9n/messages.en.json +1 -1
  321. package/dist/cdn/assets/card-manager/t9n/messages.es.json +1 -1
  322. package/dist/cdn/assets/card-manager/t9n/messages.et.json +1 -1
  323. package/dist/cdn/assets/card-manager/t9n/messages.fi.json +1 -1
  324. package/dist/cdn/assets/card-manager/t9n/messages.fr.json +1 -1
  325. package/dist/cdn/assets/card-manager/t9n/messages.he.json +1 -1
  326. package/dist/cdn/assets/card-manager/t9n/messages.hr.json +1 -1
  327. package/dist/cdn/assets/card-manager/t9n/messages.hu.json +1 -1
  328. package/dist/cdn/assets/card-manager/t9n/messages.id.json +1 -1
  329. package/dist/cdn/assets/card-manager/t9n/messages.it.json +1 -1
  330. package/dist/cdn/assets/card-manager/t9n/messages.ja.json +1 -1
  331. package/dist/cdn/assets/card-manager/t9n/messages.json +1 -1
  332. package/dist/cdn/assets/card-manager/t9n/messages.ko.json +1 -1
  333. package/dist/cdn/assets/card-manager/t9n/messages.lt.json +1 -1
  334. package/dist/cdn/assets/card-manager/t9n/messages.lv.json +1 -1
  335. package/dist/cdn/assets/card-manager/t9n/messages.nl.json +1 -1
  336. package/dist/cdn/assets/card-manager/t9n/messages.no.json +1 -1
  337. package/dist/cdn/assets/card-manager/t9n/messages.pl.json +1 -1
  338. package/dist/cdn/assets/card-manager/t9n/messages.pt-BR.json +1 -1
  339. package/dist/cdn/assets/card-manager/t9n/messages.pt-PT.json +1 -1
  340. package/dist/cdn/assets/card-manager/t9n/messages.ro.json +1 -1
  341. package/dist/cdn/assets/card-manager/t9n/messages.ru.json +1 -1
  342. package/dist/cdn/assets/card-manager/t9n/messages.sk.json +1 -1
  343. package/dist/cdn/assets/card-manager/t9n/messages.sl.json +1 -1
  344. package/dist/cdn/assets/card-manager/t9n/messages.sr.json +1 -1
  345. package/dist/cdn/assets/card-manager/t9n/messages.sv.json +1 -1
  346. package/dist/cdn/assets/card-manager/t9n/messages.th.json +1 -1
  347. package/dist/cdn/assets/card-manager/t9n/messages.tr.json +1 -1
  348. package/dist/cdn/assets/card-manager/t9n/messages.uk.json +1 -1
  349. package/dist/cdn/assets/card-manager/t9n/messages.vi.json +1 -1
  350. package/dist/cdn/assets/card-manager/t9n/messages.zh-CN.json +1 -1
  351. package/dist/cdn/assets/card-manager/t9n/messages.zh-HK.json +1 -1
  352. package/dist/cdn/assets/card-manager/t9n/messages.zh-TW.json +1 -1
  353. package/dist/cdn/assets/consent-manager/t9n/messages.de.json +1 -1
  354. package/dist/cdn/assets/create-feature/t9n/messages.ar.json +1 -1
  355. package/dist/cdn/assets/create-feature/t9n/messages.bg.json +1 -1
  356. package/dist/cdn/assets/create-feature/t9n/messages.bs.json +1 -1
  357. package/dist/cdn/assets/create-feature/t9n/messages.ca.json +1 -1
  358. package/dist/cdn/assets/create-feature/t9n/messages.cs.json +1 -1
  359. package/dist/cdn/assets/create-feature/t9n/messages.da.json +1 -1
  360. package/dist/cdn/assets/create-feature/t9n/messages.de.json +1 -1
  361. package/dist/cdn/assets/create-feature/t9n/messages.el.json +1 -1
  362. package/dist/cdn/assets/create-feature/t9n/messages.en.json +1 -1
  363. package/dist/cdn/assets/create-feature/t9n/messages.es.json +1 -1
  364. package/dist/cdn/assets/create-feature/t9n/messages.et.json +1 -1
  365. package/dist/cdn/assets/create-feature/t9n/messages.fi.json +1 -1
  366. package/dist/cdn/assets/create-feature/t9n/messages.fr.json +1 -1
  367. package/dist/cdn/assets/create-feature/t9n/messages.he.json +1 -1
  368. package/dist/cdn/assets/create-feature/t9n/messages.hr.json +1 -1
  369. package/dist/cdn/assets/create-feature/t9n/messages.hu.json +1 -1
  370. package/dist/cdn/assets/create-feature/t9n/messages.id.json +1 -1
  371. package/dist/cdn/assets/create-feature/t9n/messages.it.json +1 -1
  372. package/dist/cdn/assets/create-feature/t9n/messages.ja.json +1 -1
  373. package/dist/cdn/assets/create-feature/t9n/messages.json +1 -1
  374. package/dist/cdn/assets/create-feature/t9n/messages.ko.json +1 -1
  375. package/dist/cdn/assets/create-feature/t9n/messages.lt.json +1 -1
  376. package/dist/cdn/assets/create-feature/t9n/messages.lv.json +1 -1
  377. package/dist/cdn/assets/create-feature/t9n/messages.nl.json +1 -1
  378. package/dist/cdn/assets/create-feature/t9n/messages.no.json +1 -1
  379. package/dist/cdn/assets/create-feature/t9n/messages.pl.json +1 -1
  380. package/dist/cdn/assets/create-feature/t9n/messages.pt-BR.json +1 -1
  381. package/dist/cdn/assets/create-feature/t9n/messages.pt-PT.json +1 -1
  382. package/dist/cdn/assets/create-feature/t9n/messages.ro.json +1 -1
  383. package/dist/cdn/assets/create-feature/t9n/messages.ru.json +1 -1
  384. package/dist/cdn/assets/create-feature/t9n/messages.sk.json +1 -1
  385. package/dist/cdn/assets/create-feature/t9n/messages.sl.json +1 -1
  386. package/dist/cdn/assets/create-feature/t9n/messages.sr.json +1 -1
  387. package/dist/cdn/assets/create-feature/t9n/messages.sv.json +1 -1
  388. package/dist/cdn/assets/create-feature/t9n/messages.th.json +1 -1
  389. package/dist/cdn/assets/create-feature/t9n/messages.tr.json +1 -1
  390. package/dist/cdn/assets/create-feature/t9n/messages.uk.json +1 -1
  391. package/dist/cdn/assets/create-feature/t9n/messages.vi.json +1 -1
  392. package/dist/cdn/assets/create-feature/t9n/messages.zh-CN.json +1 -1
  393. package/dist/cdn/assets/create-feature/t9n/messages.zh-HK.json +1 -1
  394. package/dist/cdn/assets/create-feature/t9n/messages.zh-TW.json +1 -1
  395. package/dist/cdn/assets/create-related-feature/t9n/messages.ar.json +1 -1
  396. package/dist/cdn/assets/create-related-feature/t9n/messages.bg.json +1 -1
  397. package/dist/cdn/assets/create-related-feature/t9n/messages.bs.json +1 -1
  398. package/dist/cdn/assets/create-related-feature/t9n/messages.ca.json +1 -1
  399. package/dist/cdn/assets/create-related-feature/t9n/messages.cs.json +1 -1
  400. package/dist/cdn/assets/create-related-feature/t9n/messages.da.json +1 -1
  401. package/dist/cdn/assets/create-related-feature/t9n/messages.de.json +1 -1
  402. package/dist/cdn/assets/create-related-feature/t9n/messages.el.json +1 -1
  403. package/dist/cdn/assets/create-related-feature/t9n/messages.en.json +1 -1
  404. package/dist/cdn/assets/create-related-feature/t9n/messages.es.json +1 -1
  405. package/dist/cdn/assets/create-related-feature/t9n/messages.et.json +1 -1
  406. package/dist/cdn/assets/create-related-feature/t9n/messages.fi.json +1 -1
  407. package/dist/cdn/assets/create-related-feature/t9n/messages.fr.json +1 -1
  408. package/dist/cdn/assets/create-related-feature/t9n/messages.he.json +1 -1
  409. package/dist/cdn/assets/create-related-feature/t9n/messages.hr.json +1 -1
  410. package/dist/cdn/assets/create-related-feature/t9n/messages.hu.json +1 -1
  411. package/dist/cdn/assets/create-related-feature/t9n/messages.id.json +1 -1
  412. package/dist/cdn/assets/create-related-feature/t9n/messages.it.json +1 -1
  413. package/dist/cdn/assets/create-related-feature/t9n/messages.ja.json +1 -1
  414. package/dist/cdn/assets/create-related-feature/t9n/messages.json +1 -1
  415. package/dist/cdn/assets/create-related-feature/t9n/messages.ko.json +1 -1
  416. package/dist/cdn/assets/create-related-feature/t9n/messages.lt.json +1 -1
  417. package/dist/cdn/assets/create-related-feature/t9n/messages.lv.json +1 -1
  418. package/dist/cdn/assets/create-related-feature/t9n/messages.nl.json +1 -1
  419. package/dist/cdn/assets/create-related-feature/t9n/messages.no.json +1 -1
  420. package/dist/cdn/assets/create-related-feature/t9n/messages.pl.json +1 -1
  421. package/dist/cdn/assets/create-related-feature/t9n/messages.pt-BR.json +1 -1
  422. package/dist/cdn/assets/create-related-feature/t9n/messages.pt-PT.json +1 -1
  423. package/dist/cdn/assets/create-related-feature/t9n/messages.ro.json +1 -1
  424. package/dist/cdn/assets/create-related-feature/t9n/messages.ru.json +1 -1
  425. package/dist/cdn/assets/create-related-feature/t9n/messages.sk.json +1 -1
  426. package/dist/cdn/assets/create-related-feature/t9n/messages.sl.json +1 -1
  427. package/dist/cdn/assets/create-related-feature/t9n/messages.sr.json +1 -1
  428. package/dist/cdn/assets/create-related-feature/t9n/messages.sv.json +1 -1
  429. package/dist/cdn/assets/create-related-feature/t9n/messages.th.json +1 -1
  430. package/dist/cdn/assets/create-related-feature/t9n/messages.tr.json +1 -1
  431. package/dist/cdn/assets/create-related-feature/t9n/messages.uk.json +1 -1
  432. package/dist/cdn/assets/create-related-feature/t9n/messages.vi.json +1 -1
  433. package/dist/cdn/assets/create-related-feature/t9n/messages.zh-CN.json +1 -1
  434. package/dist/cdn/assets/create-related-feature/t9n/messages.zh-HK.json +1 -1
  435. package/dist/cdn/assets/create-related-feature/t9n/messages.zh-TW.json +1 -1
  436. package/dist/cdn/assets/crowdsource-manager/t9n/messages.ar.json +1 -1
  437. package/dist/cdn/assets/crowdsource-manager/t9n/messages.bg.json +1 -1
  438. package/dist/cdn/assets/crowdsource-manager/t9n/messages.bs.json +1 -1
  439. package/dist/cdn/assets/crowdsource-manager/t9n/messages.ca.json +1 -1
  440. package/dist/cdn/assets/crowdsource-manager/t9n/messages.cs.json +1 -1
  441. package/dist/cdn/assets/crowdsource-manager/t9n/messages.da.json +1 -1
  442. package/dist/cdn/assets/crowdsource-manager/t9n/messages.de.json +1 -1
  443. package/dist/cdn/assets/crowdsource-manager/t9n/messages.el.json +1 -1
  444. package/dist/cdn/assets/crowdsource-manager/t9n/messages.en.json +1 -1
  445. package/dist/cdn/assets/crowdsource-manager/t9n/messages.es.json +1 -1
  446. package/dist/cdn/assets/crowdsource-manager/t9n/messages.et.json +1 -1
  447. package/dist/cdn/assets/crowdsource-manager/t9n/messages.fi.json +1 -1
  448. package/dist/cdn/assets/crowdsource-manager/t9n/messages.fr.json +1 -1
  449. package/dist/cdn/assets/crowdsource-manager/t9n/messages.he.json +1 -1
  450. package/dist/cdn/assets/crowdsource-manager/t9n/messages.hr.json +1 -1
  451. package/dist/cdn/assets/crowdsource-manager/t9n/messages.hu.json +1 -1
  452. package/dist/cdn/assets/crowdsource-manager/t9n/messages.id.json +1 -1
  453. package/dist/cdn/assets/crowdsource-manager/t9n/messages.it.json +1 -1
  454. package/dist/cdn/assets/crowdsource-manager/t9n/messages.ja.json +1 -1
  455. package/dist/cdn/assets/crowdsource-manager/t9n/messages.json +1 -1
  456. package/dist/cdn/assets/crowdsource-manager/t9n/messages.ko.json +1 -1
  457. package/dist/cdn/assets/crowdsource-manager/t9n/messages.lt.json +1 -1
  458. package/dist/cdn/assets/crowdsource-manager/t9n/messages.lv.json +1 -1
  459. package/dist/cdn/assets/crowdsource-manager/t9n/messages.nl.json +1 -1
  460. package/dist/cdn/assets/crowdsource-manager/t9n/messages.no.json +1 -1
  461. package/dist/cdn/assets/crowdsource-manager/t9n/messages.pl.json +1 -1
  462. package/dist/cdn/assets/crowdsource-manager/t9n/messages.pt-BR.json +1 -1
  463. package/dist/cdn/assets/crowdsource-manager/t9n/messages.pt-PT.json +1 -1
  464. package/dist/cdn/assets/crowdsource-manager/t9n/messages.ro.json +1 -1
  465. package/dist/cdn/assets/crowdsource-manager/t9n/messages.ru.json +1 -1
  466. package/dist/cdn/assets/crowdsource-manager/t9n/messages.sk.json +1 -1
  467. package/dist/cdn/assets/crowdsource-manager/t9n/messages.sl.json +1 -1
  468. package/dist/cdn/assets/crowdsource-manager/t9n/messages.sr.json +1 -1
  469. package/dist/cdn/assets/crowdsource-manager/t9n/messages.sv.json +1 -1
  470. package/dist/cdn/assets/crowdsource-manager/t9n/messages.th.json +1 -1
  471. package/dist/cdn/assets/crowdsource-manager/t9n/messages.tr.json +1 -1
  472. package/dist/cdn/assets/crowdsource-manager/t9n/messages.uk.json +1 -1
  473. package/dist/cdn/assets/crowdsource-manager/t9n/messages.vi.json +1 -1
  474. package/dist/cdn/assets/crowdsource-manager/t9n/messages.zh-CN.json +1 -1
  475. package/dist/cdn/assets/crowdsource-manager/t9n/messages.zh-HK.json +1 -1
  476. package/dist/cdn/assets/crowdsource-manager/t9n/messages.zh-TW.json +1 -1
  477. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.ar.json +1 -1
  478. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.bg.json +1 -1
  479. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.bs.json +1 -1
  480. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.ca.json +1 -1
  481. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.cs.json +1 -1
  482. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.da.json +1 -1
  483. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.de.json +1 -1
  484. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.el.json +1 -1
  485. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.en.json +1 -1
  486. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.es.json +1 -1
  487. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.et.json +1 -1
  488. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.fi.json +1 -1
  489. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.fr.json +1 -1
  490. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.he.json +1 -1
  491. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.hr.json +1 -1
  492. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.hu.json +1 -1
  493. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.id.json +1 -1
  494. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.it.json +1 -1
  495. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.ja.json +1 -1
  496. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.json +1 -1
  497. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.ko.json +1 -1
  498. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.lt.json +1 -1
  499. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.lv.json +1 -1
  500. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.nl.json +1 -1
  501. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.no.json +1 -1
  502. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.pl.json +1 -1
  503. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.pt-BR.json +1 -1
  504. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.pt-PT.json +1 -1
  505. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.ro.json +1 -1
  506. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.ru.json +1 -1
  507. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.sk.json +1 -1
  508. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.sl.json +1 -1
  509. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.sr.json +1 -1
  510. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.sv.json +1 -1
  511. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.th.json +1 -1
  512. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.tr.json +1 -1
  513. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.uk.json +1 -1
  514. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.vi.json +1 -1
  515. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.zh-CN.json +1 -1
  516. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.zh-HK.json +1 -1
  517. package/dist/cdn/assets/crowdsource-reporter/t9n/messages.zh-TW.json +1 -1
  518. package/dist/cdn/assets/edit-card/t9n/messages.ar.json +1 -1
  519. package/dist/cdn/assets/edit-card/t9n/messages.bg.json +1 -1
  520. package/dist/cdn/assets/edit-card/t9n/messages.bs.json +1 -1
  521. package/dist/cdn/assets/edit-card/t9n/messages.ca.json +1 -1
  522. package/dist/cdn/assets/edit-card/t9n/messages.cs.json +1 -1
  523. package/dist/cdn/assets/edit-card/t9n/messages.da.json +1 -1
  524. package/dist/cdn/assets/edit-card/t9n/messages.de.json +1 -1
  525. package/dist/cdn/assets/edit-card/t9n/messages.el.json +1 -1
  526. package/dist/cdn/assets/edit-card/t9n/messages.en.json +1 -1
  527. package/dist/cdn/assets/edit-card/t9n/messages.es.json +1 -1
  528. package/dist/cdn/assets/edit-card/t9n/messages.et.json +1 -1
  529. package/dist/cdn/assets/edit-card/t9n/messages.fi.json +1 -1
  530. package/dist/cdn/assets/edit-card/t9n/messages.fr.json +1 -1
  531. package/dist/cdn/assets/edit-card/t9n/messages.he.json +1 -1
  532. package/dist/cdn/assets/edit-card/t9n/messages.hr.json +1 -1
  533. package/dist/cdn/assets/edit-card/t9n/messages.hu.json +1 -1
  534. package/dist/cdn/assets/edit-card/t9n/messages.id.json +1 -1
  535. package/dist/cdn/assets/edit-card/t9n/messages.it.json +1 -1
  536. package/dist/cdn/assets/edit-card/t9n/messages.ja.json +1 -1
  537. package/dist/cdn/assets/edit-card/t9n/messages.json +1 -1
  538. package/dist/cdn/assets/edit-card/t9n/messages.ko.json +1 -1
  539. package/dist/cdn/assets/edit-card/t9n/messages.lt.json +1 -1
  540. package/dist/cdn/assets/edit-card/t9n/messages.lv.json +1 -1
  541. package/dist/cdn/assets/edit-card/t9n/messages.nl.json +1 -1
  542. package/dist/cdn/assets/edit-card/t9n/messages.no.json +1 -1
  543. package/dist/cdn/assets/edit-card/t9n/messages.pl.json +1 -1
  544. package/dist/cdn/assets/edit-card/t9n/messages.pt-BR.json +1 -1
  545. package/dist/cdn/assets/edit-card/t9n/messages.pt-PT.json +1 -1
  546. package/dist/cdn/assets/edit-card/t9n/messages.ro.json +1 -1
  547. package/dist/cdn/assets/edit-card/t9n/messages.ru.json +1 -1
  548. package/dist/cdn/assets/edit-card/t9n/messages.sk.json +1 -1
  549. package/dist/cdn/assets/edit-card/t9n/messages.sl.json +1 -1
  550. package/dist/cdn/assets/edit-card/t9n/messages.sr.json +1 -1
  551. package/dist/cdn/assets/edit-card/t9n/messages.sv.json +1 -1
  552. package/dist/cdn/assets/edit-card/t9n/messages.th.json +1 -1
  553. package/dist/cdn/assets/edit-card/t9n/messages.tr.json +1 -1
  554. package/dist/cdn/assets/edit-card/t9n/messages.uk.json +1 -1
  555. package/dist/cdn/assets/edit-card/t9n/messages.vi.json +1 -1
  556. package/dist/cdn/assets/edit-card/t9n/messages.zh-CN.json +1 -1
  557. package/dist/cdn/assets/edit-card/t9n/messages.zh-HK.json +1 -1
  558. package/dist/cdn/assets/edit-card/t9n/messages.zh-TW.json +1 -1
  559. package/dist/cdn/assets/field-selection/t9n/messages.no.json +1 -1
  560. package/dist/cdn/assets/info-card/t9n/messages.ar.json +1 -1
  561. package/dist/cdn/assets/info-card/t9n/messages.bg.json +1 -1
  562. package/dist/cdn/assets/info-card/t9n/messages.bs.json +1 -1
  563. package/dist/cdn/assets/info-card/t9n/messages.ca.json +1 -1
  564. package/dist/cdn/assets/info-card/t9n/messages.cs.json +1 -1
  565. package/dist/cdn/assets/info-card/t9n/messages.da.json +1 -1
  566. package/dist/cdn/assets/info-card/t9n/messages.de.json +1 -1
  567. package/dist/cdn/assets/info-card/t9n/messages.el.json +1 -1
  568. package/dist/cdn/assets/info-card/t9n/messages.en.json +1 -1
  569. package/dist/cdn/assets/info-card/t9n/messages.es.json +1 -1
  570. package/dist/cdn/assets/info-card/t9n/messages.et.json +1 -1
  571. package/dist/cdn/assets/info-card/t9n/messages.fi.json +1 -1
  572. package/dist/cdn/assets/info-card/t9n/messages.fr.json +1 -1
  573. package/dist/cdn/assets/info-card/t9n/messages.he.json +1 -1
  574. package/dist/cdn/assets/info-card/t9n/messages.hr.json +1 -1
  575. package/dist/cdn/assets/info-card/t9n/messages.hu.json +1 -1
  576. package/dist/cdn/assets/info-card/t9n/messages.id.json +1 -1
  577. package/dist/cdn/assets/info-card/t9n/messages.it.json +1 -1
  578. package/dist/cdn/assets/info-card/t9n/messages.ja.json +1 -1
  579. package/dist/cdn/assets/info-card/t9n/messages.json +1 -1
  580. package/dist/cdn/assets/info-card/t9n/messages.ko.json +1 -1
  581. package/dist/cdn/assets/info-card/t9n/messages.lt.json +1 -1
  582. package/dist/cdn/assets/info-card/t9n/messages.lv.json +1 -1
  583. package/dist/cdn/assets/info-card/t9n/messages.nl.json +1 -1
  584. package/dist/cdn/assets/info-card/t9n/messages.no.json +1 -1
  585. package/dist/cdn/assets/info-card/t9n/messages.pl.json +1 -1
  586. package/dist/cdn/assets/info-card/t9n/messages.pt-BR.json +1 -1
  587. package/dist/cdn/assets/info-card/t9n/messages.pt-PT.json +1 -1
  588. package/dist/cdn/assets/info-card/t9n/messages.ro.json +1 -1
  589. package/dist/cdn/assets/info-card/t9n/messages.ru.json +1 -1
  590. package/dist/cdn/assets/info-card/t9n/messages.sk.json +1 -1
  591. package/dist/cdn/assets/info-card/t9n/messages.sl.json +1 -1
  592. package/dist/cdn/assets/info-card/t9n/messages.sr.json +1 -1
  593. package/dist/cdn/assets/info-card/t9n/messages.sv.json +1 -1
  594. package/dist/cdn/assets/info-card/t9n/messages.th.json +1 -1
  595. package/dist/cdn/assets/info-card/t9n/messages.tr.json +1 -1
  596. package/dist/cdn/assets/info-card/t9n/messages.uk.json +1 -1
  597. package/dist/cdn/assets/info-card/t9n/messages.vi.json +1 -1
  598. package/dist/cdn/assets/info-card/t9n/messages.zh-CN.json +1 -1
  599. package/dist/cdn/assets/info-card/t9n/messages.zh-HK.json +1 -1
  600. package/dist/cdn/assets/info-card/t9n/messages.zh-TW.json +1 -1
  601. package/dist/cdn/assets/layer-table/t9n/messages.ar.json +1 -1
  602. package/dist/cdn/assets/layer-table/t9n/messages.bg.json +1 -1
  603. package/dist/cdn/assets/layer-table/t9n/messages.bs.json +1 -1
  604. package/dist/cdn/assets/layer-table/t9n/messages.ca.json +1 -1
  605. package/dist/cdn/assets/layer-table/t9n/messages.cs.json +1 -1
  606. package/dist/cdn/assets/layer-table/t9n/messages.da.json +1 -1
  607. package/dist/cdn/assets/layer-table/t9n/messages.de.json +1 -1
  608. package/dist/cdn/assets/layer-table/t9n/messages.el.json +1 -1
  609. package/dist/cdn/assets/layer-table/t9n/messages.en.json +1 -1
  610. package/dist/cdn/assets/layer-table/t9n/messages.es.json +1 -1
  611. package/dist/cdn/assets/layer-table/t9n/messages.et.json +1 -1
  612. package/dist/cdn/assets/layer-table/t9n/messages.fi.json +1 -1
  613. package/dist/cdn/assets/layer-table/t9n/messages.fr.json +1 -1
  614. package/dist/cdn/assets/layer-table/t9n/messages.he.json +1 -1
  615. package/dist/cdn/assets/layer-table/t9n/messages.hr.json +1 -1
  616. package/dist/cdn/assets/layer-table/t9n/messages.hu.json +1 -1
  617. package/dist/cdn/assets/layer-table/t9n/messages.id.json +1 -1
  618. package/dist/cdn/assets/layer-table/t9n/messages.it.json +1 -1
  619. package/dist/cdn/assets/layer-table/t9n/messages.ja.json +1 -1
  620. package/dist/cdn/assets/layer-table/t9n/messages.json +1 -1
  621. package/dist/cdn/assets/layer-table/t9n/messages.ko.json +1 -1
  622. package/dist/cdn/assets/layer-table/t9n/messages.lt.json +1 -1
  623. package/dist/cdn/assets/layer-table/t9n/messages.lv.json +1 -1
  624. package/dist/cdn/assets/layer-table/t9n/messages.nl.json +1 -1
  625. package/dist/cdn/assets/layer-table/t9n/messages.no.json +1 -1
  626. package/dist/cdn/assets/layer-table/t9n/messages.pl.json +1 -1
  627. package/dist/cdn/assets/layer-table/t9n/messages.pt-BR.json +1 -1
  628. package/dist/cdn/assets/layer-table/t9n/messages.pt-PT.json +1 -1
  629. package/dist/cdn/assets/layer-table/t9n/messages.ro.json +1 -1
  630. package/dist/cdn/assets/layer-table/t9n/messages.ru.json +1 -1
  631. package/dist/cdn/assets/layer-table/t9n/messages.sk.json +1 -1
  632. package/dist/cdn/assets/layer-table/t9n/messages.sl.json +1 -1
  633. package/dist/cdn/assets/layer-table/t9n/messages.sr.json +1 -1
  634. package/dist/cdn/assets/layer-table/t9n/messages.sv.json +1 -1
  635. package/dist/cdn/assets/layer-table/t9n/messages.th.json +1 -1
  636. package/dist/cdn/assets/layer-table/t9n/messages.tr.json +1 -1
  637. package/dist/cdn/assets/layer-table/t9n/messages.uk.json +1 -1
  638. package/dist/cdn/assets/layer-table/t9n/messages.vi.json +1 -1
  639. package/dist/cdn/assets/layer-table/t9n/messages.zh-CN.json +1 -1
  640. package/dist/cdn/assets/layer-table/t9n/messages.zh-HK.json +1 -1
  641. package/dist/cdn/assets/layer-table/t9n/messages.zh-TW.json +1 -1
  642. package/dist/cdn/assets/map-card/t9n/messages.ar.json +1 -1
  643. package/dist/cdn/assets/map-card/t9n/messages.bg.json +1 -1
  644. package/dist/cdn/assets/map-card/t9n/messages.bs.json +1 -1
  645. package/dist/cdn/assets/map-card/t9n/messages.ca.json +1 -1
  646. package/dist/cdn/assets/map-card/t9n/messages.cs.json +1 -1
  647. package/dist/cdn/assets/map-card/t9n/messages.da.json +1 -1
  648. package/dist/cdn/assets/map-card/t9n/messages.de.json +1 -1
  649. package/dist/cdn/assets/map-card/t9n/messages.el.json +1 -1
  650. package/dist/cdn/assets/map-card/t9n/messages.en.json +1 -1
  651. package/dist/cdn/assets/map-card/t9n/messages.es.json +1 -1
  652. package/dist/cdn/assets/map-card/t9n/messages.et.json +1 -1
  653. package/dist/cdn/assets/map-card/t9n/messages.fi.json +1 -1
  654. package/dist/cdn/assets/map-card/t9n/messages.fr.json +1 -1
  655. package/dist/cdn/assets/map-card/t9n/messages.he.json +1 -1
  656. package/dist/cdn/assets/map-card/t9n/messages.hr.json +1 -1
  657. package/dist/cdn/assets/map-card/t9n/messages.hu.json +1 -1
  658. package/dist/cdn/assets/map-card/t9n/messages.id.json +1 -1
  659. package/dist/cdn/assets/map-card/t9n/messages.it.json +1 -1
  660. package/dist/cdn/assets/map-card/t9n/messages.ja.json +1 -1
  661. package/dist/cdn/assets/map-card/t9n/messages.json +1 -1
  662. package/dist/cdn/assets/map-card/t9n/messages.ko.json +1 -1
  663. package/dist/cdn/assets/map-card/t9n/messages.lt.json +1 -1
  664. package/dist/cdn/assets/map-card/t9n/messages.lv.json +1 -1
  665. package/dist/cdn/assets/map-card/t9n/messages.nl.json +1 -1
  666. package/dist/cdn/assets/map-card/t9n/messages.no.json +1 -1
  667. package/dist/cdn/assets/map-card/t9n/messages.pl.json +1 -1
  668. package/dist/cdn/assets/map-card/t9n/messages.pt-BR.json +1 -1
  669. package/dist/cdn/assets/map-card/t9n/messages.pt-PT.json +1 -1
  670. package/dist/cdn/assets/map-card/t9n/messages.ro.json +1 -1
  671. package/dist/cdn/assets/map-card/t9n/messages.ru.json +1 -1
  672. package/dist/cdn/assets/map-card/t9n/messages.sk.json +1 -1
  673. package/dist/cdn/assets/map-card/t9n/messages.sl.json +1 -1
  674. package/dist/cdn/assets/map-card/t9n/messages.sr.json +1 -1
  675. package/dist/cdn/assets/map-card/t9n/messages.sv.json +1 -1
  676. package/dist/cdn/assets/map-card/t9n/messages.th.json +1 -1
  677. package/dist/cdn/assets/map-card/t9n/messages.tr.json +1 -1
  678. package/dist/cdn/assets/map-card/t9n/messages.uk.json +1 -1
  679. package/dist/cdn/assets/map-card/t9n/messages.vi.json +1 -1
  680. package/dist/cdn/assets/map-card/t9n/messages.zh-CN.json +1 -1
  681. package/dist/cdn/assets/map-card/t9n/messages.zh-HK.json +1 -1
  682. package/dist/cdn/assets/map-card/t9n/messages.zh-TW.json +1 -1
  683. package/dist/cdn/assets/map-picker/t9n/messages.ar.json +1 -1
  684. package/dist/cdn/assets/map-picker/t9n/messages.bg.json +1 -1
  685. package/dist/cdn/assets/map-picker/t9n/messages.bs.json +1 -1
  686. package/dist/cdn/assets/map-picker/t9n/messages.ca.json +1 -1
  687. package/dist/cdn/assets/map-picker/t9n/messages.cs.json +1 -1
  688. package/dist/cdn/assets/map-picker/t9n/messages.da.json +1 -1
  689. package/dist/cdn/assets/map-picker/t9n/messages.de.json +1 -1
  690. package/dist/cdn/assets/map-picker/t9n/messages.el.json +1 -1
  691. package/dist/cdn/assets/map-picker/t9n/messages.en.json +1 -1
  692. package/dist/cdn/assets/map-picker/t9n/messages.es.json +1 -1
  693. package/dist/cdn/assets/map-picker/t9n/messages.et.json +1 -1
  694. package/dist/cdn/assets/map-picker/t9n/messages.fi.json +1 -1
  695. package/dist/cdn/assets/map-picker/t9n/messages.fr.json +1 -1
  696. package/dist/cdn/assets/map-picker/t9n/messages.he.json +1 -1
  697. package/dist/cdn/assets/map-picker/t9n/messages.hr.json +1 -1
  698. package/dist/cdn/assets/map-picker/t9n/messages.hu.json +1 -1
  699. package/dist/cdn/assets/map-picker/t9n/messages.id.json +1 -1
  700. package/dist/cdn/assets/map-picker/t9n/messages.it.json +1 -1
  701. package/dist/cdn/assets/map-picker/t9n/messages.ja.json +1 -1
  702. package/dist/cdn/assets/map-picker/t9n/messages.json +1 -1
  703. package/dist/cdn/assets/map-picker/t9n/messages.ko.json +1 -1
  704. package/dist/cdn/assets/map-picker/t9n/messages.lt.json +1 -1
  705. package/dist/cdn/assets/map-picker/t9n/messages.lv.json +1 -1
  706. package/dist/cdn/assets/map-picker/t9n/messages.nl.json +1 -1
  707. package/dist/cdn/assets/map-picker/t9n/messages.no.json +1 -1
  708. package/dist/cdn/assets/map-picker/t9n/messages.pl.json +1 -1
  709. package/dist/cdn/assets/map-picker/t9n/messages.pt-BR.json +1 -1
  710. package/dist/cdn/assets/map-picker/t9n/messages.pt-PT.json +1 -1
  711. package/dist/cdn/assets/map-picker/t9n/messages.ro.json +1 -1
  712. package/dist/cdn/assets/map-picker/t9n/messages.ru.json +1 -1
  713. package/dist/cdn/assets/map-picker/t9n/messages.sk.json +1 -1
  714. package/dist/cdn/assets/map-picker/t9n/messages.sl.json +1 -1
  715. package/dist/cdn/assets/map-picker/t9n/messages.sr.json +1 -1
  716. package/dist/cdn/assets/map-picker/t9n/messages.sv.json +1 -1
  717. package/dist/cdn/assets/map-picker/t9n/messages.th.json +1 -1
  718. package/dist/cdn/assets/map-picker/t9n/messages.tr.json +1 -1
  719. package/dist/cdn/assets/map-picker/t9n/messages.uk.json +1 -1
  720. package/dist/cdn/assets/map-picker/t9n/messages.vi.json +1 -1
  721. package/dist/cdn/assets/map-picker/t9n/messages.zh-CN.json +1 -1
  722. package/dist/cdn/assets/map-picker/t9n/messages.zh-HK.json +1 -1
  723. package/dist/cdn/assets/map-picker/t9n/messages.zh-TW.json +1 -1
  724. package/dist/cdn/assets/solution-builder-assistant/images/conduct-field-inspections.png +0 -0
  725. package/dist/cdn/assets/solution-builder-assistant/images/locate-points-of-interest.png +0 -0
  726. package/dist/cdn/assets/solution-builder-assistant/images/manage-spatial-data.png +0 -0
  727. package/dist/cdn/assets/solution-builder-assistant/images/solutions-builder-draft-thumbnail.png +0 -0
  728. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ar.json +1 -0
  729. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.bg.json +1 -0
  730. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.bs.json +1 -0
  731. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ca.json +1 -0
  732. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.cs.json +1 -0
  733. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.da.json +1 -0
  734. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.de.json +1 -0
  735. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.el.json +1 -0
  736. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.en.json +1 -0
  737. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.es.json +1 -0
  738. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.et.json +1 -0
  739. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.fi.json +1 -0
  740. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.fr.json +1 -0
  741. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.he.json +1 -0
  742. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.hr.json +1 -0
  743. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.hu.json +1 -0
  744. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.id.json +1 -0
  745. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.it.json +1 -0
  746. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ja.json +1 -0
  747. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.json +1 -0
  748. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ko.json +1 -0
  749. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.lt.json +1 -0
  750. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.lv.json +1 -0
  751. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.nl.json +1 -0
  752. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.no.json +1 -0
  753. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pl.json +1 -0
  754. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pt-BR.json +1 -0
  755. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pt-PT.json +1 -0
  756. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ro.json +1 -0
  757. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ru.json +1 -0
  758. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sk.json +1 -0
  759. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sl.json +1 -0
  760. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sr.json +1 -0
  761. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sv.json +1 -0
  762. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.th.json +1 -0
  763. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.tr.json +1 -0
  764. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.uk.json +1 -0
  765. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.vi.json +1 -0
  766. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-CN.json +1 -0
  767. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-HK.json +1 -0
  768. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-TW.json +1 -0
  769. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ar.json +1 -1
  770. package/dist/cdn/assets/solution-configure-titles/t9n/messages.bg.json +1 -1
  771. package/dist/cdn/assets/solution-configure-titles/t9n/messages.bs.json +1 -1
  772. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ca.json +1 -1
  773. package/dist/cdn/assets/solution-configure-titles/t9n/messages.cs.json +1 -1
  774. package/dist/cdn/assets/solution-configure-titles/t9n/messages.da.json +1 -1
  775. package/dist/cdn/assets/solution-configure-titles/t9n/messages.de.json +1 -1
  776. package/dist/cdn/assets/solution-configure-titles/t9n/messages.el.json +1 -1
  777. package/dist/cdn/assets/solution-configure-titles/t9n/messages.en.json +1 -1
  778. package/dist/cdn/assets/solution-configure-titles/t9n/messages.es.json +1 -1
  779. package/dist/cdn/assets/solution-configure-titles/t9n/messages.et.json +1 -1
  780. package/dist/cdn/assets/solution-configure-titles/t9n/messages.fi.json +1 -1
  781. package/dist/cdn/assets/solution-configure-titles/t9n/messages.fr.json +1 -1
  782. package/dist/cdn/assets/solution-configure-titles/t9n/messages.he.json +1 -1
  783. package/dist/cdn/assets/solution-configure-titles/t9n/messages.hr.json +1 -1
  784. package/dist/cdn/assets/solution-configure-titles/t9n/messages.hu.json +1 -1
  785. package/dist/cdn/assets/solution-configure-titles/t9n/messages.id.json +1 -1
  786. package/dist/cdn/assets/solution-configure-titles/t9n/messages.it.json +1 -1
  787. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ja.json +1 -1
  788. package/dist/cdn/assets/solution-configure-titles/t9n/messages.json +1 -1
  789. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ko.json +1 -1
  790. package/dist/cdn/assets/solution-configure-titles/t9n/messages.lt.json +1 -1
  791. package/dist/cdn/assets/solution-configure-titles/t9n/messages.lv.json +1 -1
  792. package/dist/cdn/assets/solution-configure-titles/t9n/messages.nl.json +1 -1
  793. package/dist/cdn/assets/solution-configure-titles/t9n/messages.no.json +1 -1
  794. package/dist/cdn/assets/solution-configure-titles/t9n/messages.pl.json +1 -1
  795. package/dist/cdn/assets/solution-configure-titles/t9n/messages.pt-BR.json +1 -1
  796. package/dist/cdn/assets/solution-configure-titles/t9n/messages.pt-PT.json +1 -1
  797. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ro.json +1 -1
  798. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ru.json +1 -1
  799. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sk.json +1 -1
  800. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sl.json +1 -1
  801. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sr.json +1 -1
  802. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sv.json +1 -1
  803. package/dist/cdn/assets/solution-configure-titles/t9n/messages.th.json +1 -1
  804. package/dist/cdn/assets/solution-configure-titles/t9n/messages.tr.json +1 -1
  805. package/dist/cdn/assets/solution-configure-titles/t9n/messages.uk.json +1 -1
  806. package/dist/cdn/assets/solution-configure-titles/t9n/messages.vi.json +1 -1
  807. package/dist/cdn/assets/solution-configure-titles/t9n/messages.zh-CN.json +1 -1
  808. package/dist/cdn/assets/solution-configure-titles/t9n/messages.zh-HK.json +1 -1
  809. package/dist/cdn/assets/solution-configure-titles/t9n/messages.zh-TW.json +1 -1
  810. package/dist/cdn/assets/solution-deployed-card/t9n/messages.ar.json +1 -1
  811. package/dist/cdn/assets/solution-deployed-card/t9n/messages.bg.json +1 -1
  812. package/dist/cdn/assets/solution-deployed-card/t9n/messages.bs.json +1 -1
  813. package/dist/cdn/assets/solution-deployed-card/t9n/messages.ca.json +1 -1
  814. package/dist/cdn/assets/solution-deployed-card/t9n/messages.cs.json +1 -1
  815. package/dist/cdn/assets/solution-deployed-card/t9n/messages.da.json +1 -1
  816. package/dist/cdn/assets/solution-deployed-card/t9n/messages.de.json +1 -1
  817. package/dist/cdn/assets/solution-deployed-card/t9n/messages.el.json +1 -1
  818. package/dist/cdn/assets/solution-deployed-card/t9n/messages.en.json +1 -1
  819. package/dist/cdn/assets/solution-deployed-card/t9n/messages.es.json +1 -1
  820. package/dist/cdn/assets/solution-deployed-card/t9n/messages.et.json +1 -1
  821. package/dist/cdn/assets/solution-deployed-card/t9n/messages.fi.json +1 -1
  822. package/dist/cdn/assets/solution-deployed-card/t9n/messages.fr.json +1 -1
  823. package/dist/cdn/assets/solution-deployed-card/t9n/messages.he.json +1 -1
  824. package/dist/cdn/assets/solution-deployed-card/t9n/messages.hr.json +1 -1
  825. package/dist/cdn/assets/solution-deployed-card/t9n/messages.hu.json +1 -1
  826. package/dist/cdn/assets/solution-deployed-card/t9n/messages.id.json +1 -1
  827. package/dist/cdn/assets/solution-deployed-card/t9n/messages.it.json +1 -1
  828. package/dist/cdn/assets/solution-deployed-card/t9n/messages.ja.json +1 -1
  829. package/dist/cdn/assets/solution-deployed-card/t9n/messages.json +1 -1
  830. package/dist/cdn/assets/solution-deployed-card/t9n/messages.ko.json +1 -1
  831. package/dist/cdn/assets/solution-deployed-card/t9n/messages.lt.json +1 -1
  832. package/dist/cdn/assets/solution-deployed-card/t9n/messages.lv.json +1 -1
  833. package/dist/cdn/assets/solution-deployed-card/t9n/messages.nl.json +1 -1
  834. package/dist/cdn/assets/solution-deployed-card/t9n/messages.no.json +1 -1
  835. package/dist/cdn/assets/solution-deployed-card/t9n/messages.pl.json +1 -1
  836. package/dist/cdn/assets/solution-deployed-card/t9n/messages.pt-BR.json +1 -1
  837. package/dist/cdn/assets/solution-deployed-card/t9n/messages.pt-PT.json +1 -1
  838. package/dist/cdn/assets/solution-deployed-card/t9n/messages.ro.json +1 -1
  839. package/dist/cdn/assets/solution-deployed-card/t9n/messages.ru.json +1 -1
  840. package/dist/cdn/assets/solution-deployed-card/t9n/messages.sk.json +1 -1
  841. package/dist/cdn/assets/solution-deployed-card/t9n/messages.sl.json +1 -1
  842. package/dist/cdn/assets/solution-deployed-card/t9n/messages.sr.json +1 -1
  843. package/dist/cdn/assets/solution-deployed-card/t9n/messages.sv.json +1 -1
  844. package/dist/cdn/assets/solution-deployed-card/t9n/messages.th.json +1 -1
  845. package/dist/cdn/assets/solution-deployed-card/t9n/messages.tr.json +1 -1
  846. package/dist/cdn/assets/solution-deployed-card/t9n/messages.uk.json +1 -1
  847. package/dist/cdn/assets/solution-deployed-card/t9n/messages.vi.json +1 -1
  848. package/dist/cdn/assets/solution-deployed-card/t9n/messages.zh-CN.json +1 -1
  849. package/dist/cdn/assets/solution-deployed-card/t9n/messages.zh-HK.json +1 -1
  850. package/dist/cdn/assets/solution-deployed-card/t9n/messages.zh-TW.json +1 -1
  851. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ar.json +1 -1
  852. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.bg.json +1 -1
  853. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.bs.json +1 -1
  854. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ca.json +1 -1
  855. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.cs.json +1 -1
  856. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.da.json +1 -1
  857. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.de.json +1 -1
  858. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.el.json +1 -1
  859. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.en.json +1 -1
  860. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.es.json +1 -1
  861. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.et.json +1 -1
  862. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.fi.json +1 -1
  863. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.fr.json +1 -1
  864. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.he.json +1 -1
  865. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.hr.json +1 -1
  866. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.hu.json +1 -1
  867. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.id.json +1 -1
  868. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.it.json +1 -1
  869. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ja.json +1 -1
  870. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.json +1 -1
  871. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ko.json +1 -1
  872. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.lt.json +1 -1
  873. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.lv.json +1 -1
  874. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.nl.json +1 -1
  875. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.no.json +1 -1
  876. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.pl.json +1 -1
  877. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.pt-BR.json +1 -1
  878. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.pt-PT.json +1 -1
  879. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ro.json +1 -1
  880. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ru.json +1 -1
  881. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sk.json +1 -1
  882. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sl.json +1 -1
  883. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sr.json +1 -1
  884. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sv.json +1 -1
  885. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.th.json +1 -1
  886. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.tr.json +1 -1
  887. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.uk.json +1 -1
  888. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.vi.json +1 -1
  889. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.zh-CN.json +1 -1
  890. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.zh-HK.json +1 -1
  891. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.zh-TW.json +1 -1
  892. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.fi.json +1 -1
  893. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.fr.json +1 -1
  894. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.ja.json +1 -1
  895. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.nl.json +1 -1
  896. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.sk.json +1 -1
  897. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.tr.json +1 -1
  898. package/dist/cdn/assets/solution-details-card/t9n/messages.ar.json +1 -1
  899. package/dist/cdn/assets/solution-details-card/t9n/messages.bg.json +1 -1
  900. package/dist/cdn/assets/solution-details-card/t9n/messages.bs.json +1 -1
  901. package/dist/cdn/assets/solution-details-card/t9n/messages.ca.json +1 -1
  902. package/dist/cdn/assets/solution-details-card/t9n/messages.cs.json +1 -1
  903. package/dist/cdn/assets/solution-details-card/t9n/messages.da.json +1 -1
  904. package/dist/cdn/assets/solution-details-card/t9n/messages.de.json +1 -1
  905. package/dist/cdn/assets/solution-details-card/t9n/messages.el.json +1 -1
  906. package/dist/cdn/assets/solution-details-card/t9n/messages.en.json +1 -1
  907. package/dist/cdn/assets/solution-details-card/t9n/messages.es.json +1 -1
  908. package/dist/cdn/assets/solution-details-card/t9n/messages.et.json +1 -1
  909. package/dist/cdn/assets/solution-details-card/t9n/messages.fi.json +1 -1
  910. package/dist/cdn/assets/solution-details-card/t9n/messages.fr.json +1 -1
  911. package/dist/cdn/assets/solution-details-card/t9n/messages.he.json +1 -1
  912. package/dist/cdn/assets/solution-details-card/t9n/messages.hr.json +1 -1
  913. package/dist/cdn/assets/solution-details-card/t9n/messages.hu.json +1 -1
  914. package/dist/cdn/assets/solution-details-card/t9n/messages.id.json +1 -1
  915. package/dist/cdn/assets/solution-details-card/t9n/messages.it.json +1 -1
  916. package/dist/cdn/assets/solution-details-card/t9n/messages.ja.json +1 -1
  917. package/dist/cdn/assets/solution-details-card/t9n/messages.json +1 -1
  918. package/dist/cdn/assets/solution-details-card/t9n/messages.ko.json +1 -1
  919. package/dist/cdn/assets/solution-details-card/t9n/messages.lt.json +1 -1
  920. package/dist/cdn/assets/solution-details-card/t9n/messages.lv.json +1 -1
  921. package/dist/cdn/assets/solution-details-card/t9n/messages.nl.json +1 -1
  922. package/dist/cdn/assets/solution-details-card/t9n/messages.no.json +1 -1
  923. package/dist/cdn/assets/solution-details-card/t9n/messages.pl.json +1 -1
  924. package/dist/cdn/assets/solution-details-card/t9n/messages.pt-BR.json +1 -1
  925. package/dist/cdn/assets/solution-details-card/t9n/messages.pt-PT.json +1 -1
  926. package/dist/cdn/assets/solution-details-card/t9n/messages.ro.json +1 -1
  927. package/dist/cdn/assets/solution-details-card/t9n/messages.ru.json +1 -1
  928. package/dist/cdn/assets/solution-details-card/t9n/messages.sk.json +1 -1
  929. package/dist/cdn/assets/solution-details-card/t9n/messages.sl.json +1 -1
  930. package/dist/cdn/assets/solution-details-card/t9n/messages.sr.json +1 -1
  931. package/dist/cdn/assets/solution-details-card/t9n/messages.sv.json +1 -1
  932. package/dist/cdn/assets/solution-details-card/t9n/messages.th.json +1 -1
  933. package/dist/cdn/assets/solution-details-card/t9n/messages.tr.json +1 -1
  934. package/dist/cdn/assets/solution-details-card/t9n/messages.uk.json +1 -1
  935. package/dist/cdn/assets/solution-details-card/t9n/messages.vi.json +1 -1
  936. package/dist/cdn/assets/solution-details-card/t9n/messages.zh-CN.json +1 -1
  937. package/dist/cdn/assets/solution-details-card/t9n/messages.zh-HK.json +1 -1
  938. package/dist/cdn/assets/solution-details-card/t9n/messages.zh-TW.json +1 -1
  939. package/dist/cdn/assets/solution-details-panel/t9n/messages.ar.json +1 -1
  940. package/dist/cdn/assets/solution-details-panel/t9n/messages.bg.json +1 -1
  941. package/dist/cdn/assets/solution-details-panel/t9n/messages.bs.json +1 -1
  942. package/dist/cdn/assets/solution-details-panel/t9n/messages.ca.json +1 -1
  943. package/dist/cdn/assets/solution-details-panel/t9n/messages.cs.json +1 -1
  944. package/dist/cdn/assets/solution-details-panel/t9n/messages.da.json +1 -1
  945. package/dist/cdn/assets/solution-details-panel/t9n/messages.de.json +1 -1
  946. package/dist/cdn/assets/solution-details-panel/t9n/messages.el.json +1 -1
  947. package/dist/cdn/assets/solution-details-panel/t9n/messages.en.json +1 -1
  948. package/dist/cdn/assets/solution-details-panel/t9n/messages.es.json +1 -1
  949. package/dist/cdn/assets/solution-details-panel/t9n/messages.et.json +1 -1
  950. package/dist/cdn/assets/solution-details-panel/t9n/messages.fi.json +1 -1
  951. package/dist/cdn/assets/solution-details-panel/t9n/messages.fr.json +1 -1
  952. package/dist/cdn/assets/solution-details-panel/t9n/messages.he.json +1 -1
  953. package/dist/cdn/assets/solution-details-panel/t9n/messages.hr.json +1 -1
  954. package/dist/cdn/assets/solution-details-panel/t9n/messages.hu.json +1 -1
  955. package/dist/cdn/assets/solution-details-panel/t9n/messages.id.json +1 -1
  956. package/dist/cdn/assets/solution-details-panel/t9n/messages.it.json +1 -1
  957. package/dist/cdn/assets/solution-details-panel/t9n/messages.ja.json +1 -1
  958. package/dist/cdn/assets/solution-details-panel/t9n/messages.json +1 -1
  959. package/dist/cdn/assets/solution-details-panel/t9n/messages.ko.json +1 -1
  960. package/dist/cdn/assets/solution-details-panel/t9n/messages.lt.json +1 -1
  961. package/dist/cdn/assets/solution-details-panel/t9n/messages.lv.json +1 -1
  962. package/dist/cdn/assets/solution-details-panel/t9n/messages.nl.json +1 -1
  963. package/dist/cdn/assets/solution-details-panel/t9n/messages.no.json +1 -1
  964. package/dist/cdn/assets/solution-details-panel/t9n/messages.pl.json +1 -1
  965. package/dist/cdn/assets/solution-details-panel/t9n/messages.pt-BR.json +1 -1
  966. package/dist/cdn/assets/solution-details-panel/t9n/messages.pt-PT.json +1 -1
  967. package/dist/cdn/assets/solution-details-panel/t9n/messages.ro.json +1 -1
  968. package/dist/cdn/assets/solution-details-panel/t9n/messages.ru.json +1 -1
  969. package/dist/cdn/assets/solution-details-panel/t9n/messages.sk.json +1 -1
  970. package/dist/cdn/assets/solution-details-panel/t9n/messages.sl.json +1 -1
  971. package/dist/cdn/assets/solution-details-panel/t9n/messages.sr.json +1 -1
  972. package/dist/cdn/assets/solution-details-panel/t9n/messages.sv.json +1 -1
  973. package/dist/cdn/assets/solution-details-panel/t9n/messages.th.json +1 -1
  974. package/dist/cdn/assets/solution-details-panel/t9n/messages.tr.json +1 -1
  975. package/dist/cdn/assets/solution-details-panel/t9n/messages.uk.json +1 -1
  976. package/dist/cdn/assets/solution-details-panel/t9n/messages.vi.json +1 -1
  977. package/dist/cdn/assets/solution-details-panel/t9n/messages.zh-CN.json +1 -1
  978. package/dist/cdn/assets/solution-details-panel/t9n/messages.zh-HK.json +1 -1
  979. package/dist/cdn/assets/solution-details-panel/t9n/messages.zh-TW.json +1 -1
  980. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ar.json +1 -1
  981. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bg.json +1 -1
  982. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bs.json +1 -1
  983. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ca.json +1 -1
  984. package/dist/cdn/assets/solution-item-accordion/t9n/messages.cs.json +1 -1
  985. package/dist/cdn/assets/solution-item-accordion/t9n/messages.da.json +1 -1
  986. package/dist/cdn/assets/solution-item-accordion/t9n/messages.de.json +1 -1
  987. package/dist/cdn/assets/solution-item-accordion/t9n/messages.el.json +1 -1
  988. package/dist/cdn/assets/solution-item-accordion/t9n/messages.en.json +1 -1
  989. package/dist/cdn/assets/solution-item-accordion/t9n/messages.es.json +1 -1
  990. package/dist/cdn/assets/solution-item-accordion/t9n/messages.et.json +1 -1
  991. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fi.json +1 -1
  992. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fr.json +1 -1
  993. package/dist/cdn/assets/solution-item-accordion/t9n/messages.he.json +1 -1
  994. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hr.json +1 -1
  995. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hu.json +1 -1
  996. package/dist/cdn/assets/solution-item-accordion/t9n/messages.id.json +1 -1
  997. package/dist/cdn/assets/solution-item-accordion/t9n/messages.it.json +1 -1
  998. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ja.json +1 -1
  999. package/dist/cdn/assets/solution-item-accordion/t9n/messages.json +1 -1
  1000. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ko.json +1 -1
  1001. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lt.json +1 -1
  1002. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lv.json +1 -1
  1003. package/dist/cdn/assets/solution-item-accordion/t9n/messages.nl.json +1 -1
  1004. package/dist/cdn/assets/solution-item-accordion/t9n/messages.no.json +1 -1
  1005. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pl.json +1 -1
  1006. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-BR.json +1 -1
  1007. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-PT.json +1 -1
  1008. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ro.json +1 -1
  1009. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ru.json +1 -1
  1010. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sk.json +1 -1
  1011. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sl.json +1 -1
  1012. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sr.json +1 -1
  1013. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sv.json +1 -1
  1014. package/dist/cdn/assets/solution-item-accordion/t9n/messages.th.json +1 -1
  1015. package/dist/cdn/assets/solution-item-accordion/t9n/messages.tr.json +1 -1
  1016. package/dist/cdn/assets/solution-item-accordion/t9n/messages.uk.json +1 -1
  1017. package/dist/cdn/assets/solution-item-accordion/t9n/messages.vi.json +1 -1
  1018. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-CN.json +1 -1
  1019. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-HK.json +1 -1
  1020. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-TW.json +1 -1
  1021. package/dist/cdn/assets/solutions-all-shell/t9n/messages.ar.json +1 -1
  1022. package/dist/cdn/assets/solutions-all-shell/t9n/messages.bg.json +1 -1
  1023. package/dist/cdn/assets/solutions-all-shell/t9n/messages.bs.json +1 -1
  1024. package/dist/cdn/assets/solutions-all-shell/t9n/messages.ca.json +1 -1
  1025. package/dist/cdn/assets/solutions-all-shell/t9n/messages.cs.json +1 -1
  1026. package/dist/cdn/assets/solutions-all-shell/t9n/messages.da.json +1 -1
  1027. package/dist/cdn/assets/solutions-all-shell/t9n/messages.de.json +1 -1
  1028. package/dist/cdn/assets/solutions-all-shell/t9n/messages.el.json +1 -1
  1029. package/dist/cdn/assets/solutions-all-shell/t9n/messages.en.json +1 -1
  1030. package/dist/cdn/assets/solutions-all-shell/t9n/messages.es.json +1 -1
  1031. package/dist/cdn/assets/solutions-all-shell/t9n/messages.et.json +1 -1
  1032. package/dist/cdn/assets/solutions-all-shell/t9n/messages.fi.json +1 -1
  1033. package/dist/cdn/assets/solutions-all-shell/t9n/messages.fr.json +1 -1
  1034. package/dist/cdn/assets/solutions-all-shell/t9n/messages.he.json +1 -1
  1035. package/dist/cdn/assets/solutions-all-shell/t9n/messages.hr.json +1 -1
  1036. package/dist/cdn/assets/solutions-all-shell/t9n/messages.hu.json +1 -1
  1037. package/dist/cdn/assets/solutions-all-shell/t9n/messages.id.json +1 -1
  1038. package/dist/cdn/assets/solutions-all-shell/t9n/messages.it.json +1 -1
  1039. package/dist/cdn/assets/solutions-all-shell/t9n/messages.ja.json +1 -1
  1040. package/dist/cdn/assets/solutions-all-shell/t9n/messages.json +1 -1
  1041. package/dist/cdn/assets/solutions-all-shell/t9n/messages.ko.json +1 -1
  1042. package/dist/cdn/assets/solutions-all-shell/t9n/messages.lt.json +1 -1
  1043. package/dist/cdn/assets/solutions-all-shell/t9n/messages.lv.json +1 -1
  1044. package/dist/cdn/assets/solutions-all-shell/t9n/messages.nl.json +1 -1
  1045. package/dist/cdn/assets/solutions-all-shell/t9n/messages.no.json +1 -1
  1046. package/dist/cdn/assets/solutions-all-shell/t9n/messages.pl.json +1 -1
  1047. package/dist/cdn/assets/solutions-all-shell/t9n/messages.pt-BR.json +1 -1
  1048. package/dist/cdn/assets/solutions-all-shell/t9n/messages.pt-PT.json +1 -1
  1049. package/dist/cdn/assets/solutions-all-shell/t9n/messages.ro.json +1 -1
  1050. package/dist/cdn/assets/solutions-all-shell/t9n/messages.ru.json +1 -1
  1051. package/dist/cdn/assets/solutions-all-shell/t9n/messages.sk.json +1 -1
  1052. package/dist/cdn/assets/solutions-all-shell/t9n/messages.sl.json +1 -1
  1053. package/dist/cdn/assets/solutions-all-shell/t9n/messages.sr.json +1 -1
  1054. package/dist/cdn/assets/solutions-all-shell/t9n/messages.sv.json +1 -1
  1055. package/dist/cdn/assets/solutions-all-shell/t9n/messages.th.json +1 -1
  1056. package/dist/cdn/assets/solutions-all-shell/t9n/messages.tr.json +1 -1
  1057. package/dist/cdn/assets/solutions-all-shell/t9n/messages.uk.json +1 -1
  1058. package/dist/cdn/assets/solutions-all-shell/t9n/messages.vi.json +1 -1
  1059. package/dist/cdn/assets/solutions-all-shell/t9n/messages.zh-CN.json +1 -1
  1060. package/dist/cdn/assets/solutions-all-shell/t9n/messages.zh-HK.json +1 -1
  1061. package/dist/cdn/assets/solutions-all-shell/t9n/messages.zh-TW.json +1 -1
  1062. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ar.json +1 -1
  1063. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.bg.json +1 -1
  1064. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.bs.json +1 -1
  1065. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ca.json +1 -1
  1066. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.cs.json +1 -1
  1067. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.da.json +1 -1
  1068. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.de.json +1 -1
  1069. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.el.json +1 -1
  1070. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.en.json +1 -1
  1071. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.es.json +1 -1
  1072. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.et.json +1 -1
  1073. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.fi.json +1 -1
  1074. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.fr.json +1 -1
  1075. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.he.json +1 -1
  1076. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.hr.json +1 -1
  1077. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.hu.json +1 -1
  1078. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.id.json +1 -1
  1079. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.it.json +1 -1
  1080. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ja.json +1 -1
  1081. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.json +1 -1
  1082. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ko.json +1 -1
  1083. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.lt.json +1 -1
  1084. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.lv.json +1 -1
  1085. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.nl.json +1 -1
  1086. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.no.json +1 -1
  1087. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.pl.json +1 -1
  1088. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.pt-BR.json +1 -1
  1089. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.pt-PT.json +1 -1
  1090. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ro.json +1 -1
  1091. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ru.json +1 -1
  1092. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sk.json +1 -1
  1093. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sl.json +1 -1
  1094. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sr.json +1 -1
  1095. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sv.json +1 -1
  1096. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.th.json +1 -1
  1097. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.tr.json +1 -1
  1098. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.uk.json +1 -1
  1099. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.vi.json +1 -1
  1100. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.zh-CN.json +1 -1
  1101. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.zh-HK.json +1 -1
  1102. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.zh-TW.json +1 -1
  1103. package/dist/cdn/assets/solutions-deployed-list/t9n/messages.en.json +1 -0
  1104. package/dist/cdn/assets/solutions-deployed-list/t9n/messages.json +1 -0
  1105. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.ar.json +1 -1
  1106. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.bg.json +1 -1
  1107. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.bs.json +1 -1
  1108. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.ca.json +1 -1
  1109. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.cs.json +1 -1
  1110. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.da.json +1 -1
  1111. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.de.json +1 -1
  1112. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.el.json +1 -1
  1113. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.en.json +1 -1
  1114. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.es.json +1 -1
  1115. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.et.json +1 -1
  1116. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.fi.json +1 -1
  1117. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.fr.json +1 -1
  1118. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.he.json +1 -1
  1119. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.hr.json +1 -1
  1120. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.hu.json +1 -1
  1121. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.id.json +1 -1
  1122. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.it.json +1 -1
  1123. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.ja.json +1 -1
  1124. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.json +1 -1
  1125. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.ko.json +1 -1
  1126. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.lt.json +1 -1
  1127. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.lv.json +1 -1
  1128. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.nl.json +1 -1
  1129. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.no.json +1 -1
  1130. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.pl.json +1 -1
  1131. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.pt-BR.json +1 -1
  1132. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.pt-PT.json +1 -1
  1133. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.ro.json +1 -1
  1134. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.ru.json +1 -1
  1135. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.sk.json +1 -1
  1136. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.sl.json +1 -1
  1137. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.sr.json +1 -1
  1138. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.sv.json +1 -1
  1139. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.th.json +1 -1
  1140. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.tr.json +1 -1
  1141. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.uk.json +1 -1
  1142. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.vi.json +1 -1
  1143. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.zh-CN.json +1 -1
  1144. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.zh-HK.json +1 -1
  1145. package/dist/cdn/assets/solutions-filter-panel/t9n/messages.zh-TW.json +1 -1
  1146. package/dist/cdn/index.js +1 -1
  1147. package/dist/cdn/main.css +1 -1
  1148. package/dist/chunks/Auth.js +160 -67
  1149. package/dist/chunks/CardsFetcher.js +288 -0
  1150. package/dist/chunks/assessBuildRequest.js +116 -0
  1151. package/dist/chunks/assessUpdateRequest.js +78 -0
  1152. package/dist/chunks/assistantResponse.js +60 -0
  1153. package/dist/chunks/cardFetchingUtils.js +23 -304
  1154. package/dist/chunks/cardsHelpers.js +11 -11
  1155. package/dist/chunks/classifyIntent.js +102 -0
  1156. package/dist/chunks/converter.js +918 -0
  1157. package/dist/chunks/deployAppContexts.js +4 -3
  1158. package/dist/chunks/deployFlowController.js +46 -0
  1159. package/dist/chunks/description.js +16 -0
  1160. package/dist/chunks/description2.js +36 -0
  1161. package/dist/chunks/designSolution.js +118 -0
  1162. package/dist/chunks/downloadUtils.js +246 -235
  1163. package/dist/chunks/explainValidationFailure.js +32 -0
  1164. package/dist/chunks/findExistingSolution.js +22 -0
  1165. package/dist/chunks/getItemIcon.js +19 -10
  1166. package/dist/chunks/getRelatedInfos.js +1 -1
  1167. package/dist/chunks/helpers.js +110 -519
  1168. package/dist/chunks/interfaces.js +469 -0
  1169. package/dist/chunks/popupUtils.js +3 -3
  1170. package/dist/chunks/queryUtils.js +3 -3
  1171. package/dist/chunks/solution-builder-assistant.js +1114 -0
  1172. package/dist/chunks/solution-deploy-dialog.js +183 -150
  1173. package/dist/chunks/solutions-deploy-app-nav.js +38 -39
  1174. package/dist/chunks/solutions_explorer_description.js +19 -0
  1175. package/dist/chunks/templates.js +65 -0
  1176. package/dist/chunks/updateDesign.js +5 -0
  1177. package/dist/chunks/validators.js +127 -0
  1178. package/dist/components/arcgis-solutions-assistant/customElement.d.ts +77 -83
  1179. package/dist/components/arcgis-solutions-assistant/customElement.js +1322 -1570
  1180. package/dist/components/arcgis-solutions-assistant/index.js +7 -8
  1181. package/dist/components/buffer-tools/customElement.d.ts +6 -3
  1182. package/dist/components/buffer-tools/customElement.js +5 -5
  1183. package/dist/components/card-manager/customElement.d.ts +36 -3
  1184. package/dist/components/card-manager/customElement.js +92 -24
  1185. package/dist/components/card-manager/index.js +2 -1
  1186. package/dist/components/consent-manager/customElement.d.ts +2 -2
  1187. package/dist/components/consent-manager/customElement.js +23 -3958
  1188. package/dist/components/create-feature/customElement.d.ts +45 -5
  1189. package/dist/components/create-feature/customElement.js +367 -302
  1190. package/dist/components/create-feature/index.js +4 -1
  1191. package/dist/components/create-related-feature/customElement.d.ts +16 -8
  1192. package/dist/components/create-related-feature/customElement.js +59 -82
  1193. package/dist/components/create-related-feature/index.js +1 -0
  1194. package/dist/components/crowdsource-manager/customElement.d.ts +8 -0
  1195. package/dist/components/crowdsource-manager/customElement.js +54 -44
  1196. package/dist/components/crowdsource-reporter/customElement.d.ts +26 -4
  1197. package/dist/components/crowdsource-reporter/customElement.js +82 -56
  1198. package/dist/components/deduct-calculator/customElement.js +5 -5
  1199. package/dist/components/delete-button/customElement.d.ts +2 -2
  1200. package/dist/components/delete-button/customElement.js +1 -1
  1201. package/dist/components/delete-dialog/customElement.d.ts +3 -3
  1202. package/dist/components/edit-card/customElement.d.ts +15 -7
  1203. package/dist/components/edit-card/customElement.js +37 -42
  1204. package/dist/components/edit-card/index.js +1 -0
  1205. package/dist/components/feature-details/customElement.d.ts +7 -6
  1206. package/dist/components/feature-details/customElement.js +5 -5
  1207. package/dist/components/feature-list/customElement.d.ts +5 -4
  1208. package/dist/components/feature-list/customElement.js +7 -7
  1209. package/dist/components/field-selection/customElement.d.ts +6 -4
  1210. package/dist/components/field-selection/customElement.js +75 -67
  1211. package/dist/components/info-card/customElement.d.ts +34 -10
  1212. package/dist/components/info-card/customElement.js +93 -86
  1213. package/dist/components/info-card/index.js +1 -0
  1214. package/dist/components/layer-list/customElement.d.ts +3 -3
  1215. package/dist/components/layer-list/customElement.js +3 -3
  1216. package/dist/components/layer-list-widget/customElement.d.ts +6 -9
  1217. package/dist/components/layer-list-widget/customElement.js +12 -29
  1218. package/dist/components/layer-list-widget/index.js +1 -0
  1219. package/dist/components/layer-table/customElement.d.ts +40 -3
  1220. package/dist/components/layer-table/customElement.js +165 -85
  1221. package/dist/components/map-basemap-gallery/customElement.d.ts +6 -8
  1222. package/dist/components/map-basemap-gallery/customElement.js +31 -38
  1223. package/dist/components/map-basemap-gallery/index.js +1 -0
  1224. package/dist/components/map-card/customElement.d.ts +44 -10
  1225. package/dist/components/map-card/customElement.js +64 -46
  1226. package/dist/components/map-card/index.js +1 -0
  1227. package/dist/components/map-draw-tools/customElement.d.ts +15 -11
  1228. package/dist/components/map-draw-tools/customElement.js +80 -114
  1229. package/dist/components/map-draw-tools/index.js +1 -0
  1230. package/dist/components/map-floor-filter/customElement.d.ts +6 -8
  1231. package/dist/components/map-floor-filter/customElement.js +22 -45
  1232. package/dist/components/map-floor-filter/index.js +1 -0
  1233. package/dist/components/map-fullscreen/customElement.d.ts +6 -4
  1234. package/dist/components/map-fullscreen/customElement.js +14 -34
  1235. package/dist/components/map-fullscreen/index.js +1 -0
  1236. package/dist/components/map-layer-picker/customElement.d.ts +2 -2
  1237. package/dist/components/map-layer-picker/customElement.js +14 -9
  1238. package/dist/components/map-legend/customElement.d.ts +6 -8
  1239. package/dist/components/map-legend/customElement.js +14 -30
  1240. package/dist/components/map-legend/index.js +1 -0
  1241. package/dist/components/map-picker/customElement.d.ts +7 -1
  1242. package/dist/components/map-picker/customElement.js +3 -3
  1243. package/dist/components/map-search/customElement.d.ts +8 -6
  1244. package/dist/components/map-search/customElement.js +25 -52
  1245. package/dist/components/map-search/index.js +1 -0
  1246. package/dist/components/map-select-tools/customElement.d.ts +24 -12
  1247. package/dist/components/map-select-tools/customElement.js +49 -60
  1248. package/dist/components/map-select-tools/index.js +1 -0
  1249. package/dist/components/map-tools/customElement.d.ts +15 -7
  1250. package/dist/components/map-tools/customElement.js +90 -97
  1251. package/dist/components/map-tools/index.js +1 -1
  1252. package/dist/components/pci-calculator/customElement.js +5 -5
  1253. package/dist/components/pdf-download/customElement.d.ts +3 -3
  1254. package/dist/components/pdf-download/customElement.js +1 -1
  1255. package/dist/components/public-notification/customElement.d.ts +15 -11
  1256. package/dist/components/public-notification/customElement.js +158 -74
  1257. package/dist/components/refine-selection/customElement.d.ts +15 -9
  1258. package/dist/components/refine-selection/customElement.js +20 -20
  1259. package/dist/components/selection-tool/customElement.d.ts +3 -3
  1260. package/dist/components/selection-tool/customElement.js +3 -3
  1261. package/dist/components/solution-builder-assistant/customElement.d.ts +342 -0
  1262. package/dist/components/solution-builder-assistant/customElement.js +21 -0
  1263. package/dist/components/solution-builder-assistant/index.d.ts +1 -0
  1264. package/dist/components/solution-builder-assistant/index.js +30 -0
  1265. package/dist/components/solution-configure-titles/customElement.js +102 -83
  1266. package/dist/components/solution-delete-dialog/customElement.js +39 -33
  1267. package/dist/components/solution-deploy-dialog/customElement.d.ts +9 -3
  1268. package/dist/components/solution-deploy-dialog/customElement.js +4 -3
  1269. package/dist/components/solution-deploy-dialog/index.js +1 -1
  1270. package/dist/components/solution-deployed-card/customElement.d.ts +2 -0
  1271. package/dist/components/solution-deployed-card/customElement.js +3 -2
  1272. package/dist/components/solution-deployed-card/index.js +1 -0
  1273. package/dist/components/solution-deployed-card-panel/customElement.d.ts +15 -0
  1274. package/dist/components/solution-deployed-card-panel/customElement.js +122 -52
  1275. package/dist/components/solution-deployed-card-panel/index.js +2 -1
  1276. package/dist/components/solution-deploying-dialog/customElement.js +16 -16
  1277. package/dist/components/solution-details-card/customElement.d.ts +4 -0
  1278. package/dist/components/solution-details-card/customElement.js +39 -27
  1279. package/dist/components/solution-details-card/index.js +1 -0
  1280. package/dist/components/solution-details-panel/customElement.d.ts +15 -4
  1281. package/dist/components/solution-details-panel/customElement.js +233 -252
  1282. package/dist/components/solution-details-panel/index.js +2 -0
  1283. package/dist/components/solution-item-accordion/customElement.d.ts +17 -4
  1284. package/dist/components/solution-item-accordion/customElement.js +69 -36
  1285. package/dist/components/solution-item-accordion/index.js +1 -0
  1286. package/dist/components/solution-item-diagram/customElement.js +252 -212
  1287. package/dist/components/solution-item-icon/customElement.d.ts +6 -0
  1288. package/dist/components/solution-item-icon/customElement.js +13 -12
  1289. package/dist/components/solution-resource-card/customElement.js +8 -7
  1290. package/dist/components/solution-snapshot-gallery/customElement.js +11 -9
  1291. package/dist/components/solution-social-share/customElement.js +15 -14
  1292. package/dist/components/solution-user-avatar/customElement.js +1 -1
  1293. package/dist/components/solutions-all-panel/customElement.d.ts +2 -0
  1294. package/dist/components/solutions-all-panel/customElement.js +59 -40
  1295. package/dist/components/solutions-all-shell/customElement.d.ts +4 -0
  1296. package/dist/components/solutions-all-shell/customElement.js +95 -40
  1297. package/dist/components/solutions-deploy-app/customElement.d.ts +13 -0
  1298. package/dist/components/solutions-deploy-app/customElement.js +838 -117
  1299. package/dist/components/solutions-deploy-app/index.js +5 -0
  1300. package/dist/components/solutions-deploy-app-nav/customElement.d.ts +6 -0
  1301. package/dist/components/solutions-deploy-app-nav/customElement.js +4 -5
  1302. package/dist/components/solutions-deployed-list/customElement.d.ts +43 -0
  1303. package/dist/components/solutions-deployed-list/customElement.js +64 -0
  1304. package/dist/components/solutions-deployed-list/index.d.ts +1 -0
  1305. package/dist/components/solutions-deployed-list/index.js +3 -0
  1306. package/dist/components/solutions-deployed-panel/customElement.js +43 -32
  1307. package/dist/components/solutions-deployed-panel/index.js +0 -1
  1308. package/dist/components/solutions-deployed-shell/customElement.js +22 -18
  1309. package/dist/components/solutions-deployed-shell/index.js +0 -1
  1310. package/dist/components/solutions-filter-panel/customElement.d.ts +2 -6
  1311. package/dist/components/solutions-filter-panel/customElement.js +49 -63
  1312. package/dist/components/solutions-filter-panel/index.js +0 -3
  1313. package/dist/components/solutions-resources-section/customElement.js +10 -9
  1314. package/dist/components/solutions-resources-shell/customElement.d.ts +6 -0
  1315. package/dist/components/solutions-resources-shell/customElement.js +44 -44
  1316. package/dist/components/solutions-searchsort-toolbar/customElement.js +12 -11
  1317. package/dist/docs/api.json +1 -1
  1318. package/dist/docs/docs.json +1 -1
  1319. package/dist/docs/vscode.html-custom-data.json +1 -1
  1320. package/dist/docs/web-types.json +1 -1
  1321. package/dist/index.d.ts +20 -6
  1322. package/dist/index.js +25 -24
  1323. package/dist/loader.js +29 -27
  1324. package/dist/solutions-components_commit.txt +4 -4
  1325. package/dist/types/lumina.d.ts +50 -25
  1326. package/dist/types/preact.d.ts +52 -25
  1327. package/dist/types/react.d.ts +54 -25
  1328. package/dist/types/stencil.d.ts +50 -25
  1329. package/dist/utils/Auth.d.ts +13 -2
  1330. package/dist/utils/getRelatedInfos.d.ts +4 -0
  1331. package/dist/utils/interfaces.d.ts +203 -31
  1332. package/package.json +40 -32
  1333. package/dist/cdn/2RBKFT3Q.js +0 -2
  1334. package/dist/cdn/2WPJOTMI.js +0 -2
  1335. package/dist/cdn/2XQOWXMT.js +0 -2
  1336. package/dist/cdn/3JF5JLS4.js +0 -2
  1337. package/dist/cdn/3ME5BVUE.js +0 -2
  1338. package/dist/cdn/3PT5ULE3.js +0 -2
  1339. package/dist/cdn/3SYLXG32.js +0 -2
  1340. package/dist/cdn/3WO3DS32.js +0 -2
  1341. package/dist/cdn/45ZS4SG7.js +0 -2
  1342. package/dist/cdn/4GHX4MVD.js +0 -50
  1343. package/dist/cdn/4L3MVJ5S.js +0 -2
  1344. package/dist/cdn/5326HZ74.js +0 -2
  1345. package/dist/cdn/57JYZYF5.js +0 -2
  1346. package/dist/cdn/5FKEDJRU.js +0 -2
  1347. package/dist/cdn/5GIHSPJZ.js +0 -2
  1348. package/dist/cdn/5QCBD6ZZ.js +0 -2
  1349. package/dist/cdn/5S3WZLB5.js +0 -2
  1350. package/dist/cdn/5TZ7Q4JG.js +0 -2
  1351. package/dist/cdn/66Q5IRVS.js +0 -2
  1352. package/dist/cdn/6DLDJH6I.js +0 -2
  1353. package/dist/cdn/73AX72WY.js +0 -2
  1354. package/dist/cdn/743J5TBS.js +0 -2
  1355. package/dist/cdn/74557KPJ.js +0 -2
  1356. package/dist/cdn/7J2VRW7S.js +0 -2
  1357. package/dist/cdn/7YIQXDUF.js +0 -2
  1358. package/dist/cdn/A2LNKTGU.js +0 -2
  1359. package/dist/cdn/A5STEAY7.js +0 -2
  1360. package/dist/cdn/ABTC2V7J.js +0 -2
  1361. package/dist/cdn/AC3MHBPK.js +0 -2
  1362. package/dist/cdn/AF2YWYJQ.js +0 -2
  1363. package/dist/cdn/AGC6ZWMH.js +0 -2
  1364. package/dist/cdn/AKDP6MCB.js +0 -2
  1365. package/dist/cdn/AT2EES2R.js +0 -21
  1366. package/dist/cdn/AVNCYWKK.js +0 -2
  1367. package/dist/cdn/BEGKM3ZM.js +0 -2
  1368. package/dist/cdn/BJMKDP4O.js +0 -2
  1369. package/dist/cdn/BK3QFV3M.js +0 -2
  1370. package/dist/cdn/BMJN3MIR.js +0 -2
  1371. package/dist/cdn/DIKAKOU5.js +0 -2
  1372. package/dist/cdn/DMRQFYLJ.js +0 -174
  1373. package/dist/cdn/DQ4POWIJ.js +0 -2
  1374. package/dist/cdn/DQV46RIT.js +0 -2
  1375. package/dist/cdn/E7HQ4JJ2.js +0 -2
  1376. package/dist/cdn/EGFXSDFS.js +0 -2
  1377. package/dist/cdn/EJRSL3ID.js +0 -2
  1378. package/dist/cdn/EPRDKJSD.js +0 -2
  1379. package/dist/cdn/F372CSCW.js +0 -2
  1380. package/dist/cdn/GTKRTZK6.js +0 -2
  1381. package/dist/cdn/HBJZGW4L.js +0 -2
  1382. package/dist/cdn/HBPD3T7H.js +0 -2
  1383. package/dist/cdn/HBQN25RR.js +0 -4
  1384. package/dist/cdn/HMB3LHBC.js +0 -2
  1385. package/dist/cdn/HPQPI754.js +0 -2
  1386. package/dist/cdn/I4PUORX4.js +0 -2
  1387. package/dist/cdn/IDNTGLQU.js +0 -2
  1388. package/dist/cdn/IORIFDK6.js +0 -2
  1389. package/dist/cdn/IUPEGG4M.js +0 -2
  1390. package/dist/cdn/J33ST6ZG.js +0 -2
  1391. package/dist/cdn/J5VTBFGR.js +0 -2
  1392. package/dist/cdn/JK75TUSP.js +0 -2
  1393. package/dist/cdn/JUXXPW6I.js +0 -2
  1394. package/dist/cdn/JYLXH6OM.js +0 -2
  1395. package/dist/cdn/K5VEUOS3.js +0 -2
  1396. package/dist/cdn/KD46EE7M.js +0 -2
  1397. package/dist/cdn/KKYXQLBJ.js +0 -2
  1398. package/dist/cdn/KPBEUIQV.js +0 -2
  1399. package/dist/cdn/KSXW3QKP.js +0 -2
  1400. package/dist/cdn/KWCJDOZU.js +0 -2
  1401. package/dist/cdn/KZDTATOG.js +0 -2
  1402. package/dist/cdn/LI4CAGAZ.js +0 -2
  1403. package/dist/cdn/LO5Q55JH.js +0 -2
  1404. package/dist/cdn/LPNQJBCN.js +0 -2
  1405. package/dist/cdn/LWUSGNUB.js +0 -2
  1406. package/dist/cdn/M4OPXH3T.js +0 -2
  1407. package/dist/cdn/M7YK4K5M.js +0 -2
  1408. package/dist/cdn/MZ3QZD4K.js +0 -2
  1409. package/dist/cdn/MZLEP53S.js +0 -2
  1410. package/dist/cdn/N7HJKCUK.js +0 -2
  1411. package/dist/cdn/N7OY2PSZ.js +0 -2
  1412. package/dist/cdn/NGCFEPQE.js +0 -4
  1413. package/dist/cdn/NIUMAAOQ.js +0 -2
  1414. package/dist/cdn/NOOFAZCT.js +0 -2
  1415. package/dist/cdn/NSITJP7B.js +0 -2
  1416. package/dist/cdn/OQFRVQQZ.js +0 -2
  1417. package/dist/cdn/OYQYXNHJ.js +0 -2
  1418. package/dist/cdn/P4KZ6OZF.js +0 -4
  1419. package/dist/cdn/P5Q3LVYT.js +0 -2
  1420. package/dist/cdn/P6IYN2TS.js +0 -2
  1421. package/dist/cdn/PJH3H7LZ.js +0 -2
  1422. package/dist/cdn/PZOAAAVI.js +0 -2
  1423. package/dist/cdn/QHG54NVK.js +0 -2
  1424. package/dist/cdn/QI5LXFA7.js +0 -2
  1425. package/dist/cdn/QWRM254M.js +0 -2
  1426. package/dist/cdn/R3TKXDOE.js +0 -6
  1427. package/dist/cdn/RDXJFHLV.js +0 -2
  1428. package/dist/cdn/REOO5ZGK.js +0 -2
  1429. package/dist/cdn/RKMY6VWP.js +0 -2
  1430. package/dist/cdn/RTPXDRZ7.js +0 -2
  1431. package/dist/cdn/SENL26AU.js +0 -3
  1432. package/dist/cdn/SSO3AN4U.js +0 -2
  1433. package/dist/cdn/SZRONHSX.js +0 -2
  1434. package/dist/cdn/T2WSMUVL.js +0 -2
  1435. package/dist/cdn/TBQQ6OPX.js +0 -2
  1436. package/dist/cdn/TH52564W.js +0 -2
  1437. package/dist/cdn/THKPPH7G.js +0 -2
  1438. package/dist/cdn/TRJ6EQRD.js +0 -2
  1439. package/dist/cdn/TU5GZK4M.js +0 -2
  1440. package/dist/cdn/U3LEZXNT.js +0 -2
  1441. package/dist/cdn/UFJWRZWQ.js +0 -2
  1442. package/dist/cdn/ULCILXSA.js +0 -2
  1443. package/dist/cdn/ULXATJK5.js +0 -2
  1444. package/dist/cdn/UME5GDA2.js +0 -2
  1445. package/dist/cdn/VDEFBT2N.js +0 -2
  1446. package/dist/cdn/VFC4CM23.js +0 -2
  1447. package/dist/cdn/VJEG4LOG.js +0 -2
  1448. package/dist/cdn/VJYMTG4U.js +0 -2
  1449. package/dist/cdn/VPTZV5YV.js +0 -2
  1450. package/dist/cdn/WCPWYPN2.js +0 -2
  1451. package/dist/cdn/WMPUJYLT.js +0 -2
  1452. package/dist/cdn/XBR2PGVO.js +0 -7
  1453. package/dist/cdn/XCILPMDZ.js +0 -2
  1454. package/dist/cdn/XK6Q5TUT.js +0 -2
  1455. package/dist/cdn/XKDPK7SD.js +0 -2
  1456. package/dist/cdn/XTDFTH5X.js +0 -2
  1457. package/dist/cdn/XYFIAJPT.js +0 -2
  1458. package/dist/cdn/Y6I6QW4M.js +0 -2
  1459. package/dist/cdn/YTK4IGLJ.js +0 -2
  1460. package/dist/cdn/Z6H6J4QH.js +0 -2
  1461. package/dist/cdn/ZSHMK5VX.js +0 -2
  1462. package/dist/cdn/ZVFUYLAQ.js +0 -2
  1463. /package/dist/cdn/{YVNP437O.js → WV7QX3ED.js} +0 -0
@@ -1,1676 +1,1428 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import { c as $e } from "../../chunks/runtime.js";
3
- import { ref as ne } from "lit/directives/ref.js";
2
+ import { c as _e } from "../../chunks/runtime.js";
4
3
  import { u as Te } from "../../chunks/useT9n.js";
5
- import { LitElement as Re, createEvent as Ie, nothing as ie, safeClassMap as re } from "@arcgis/lumina";
6
- import { css as Ae, html as m } from "lit";
7
- import { render as A } from "lit-html";
8
- import { unsafeHTML as ae } from "lit/directives/unsafe-html.js";
9
- import { useContextConsumer as Ce } from "@arcgis/lumina/context";
10
- import { c as ze } from "../../chunks/deployAppContexts.js";
11
- import { U as Le, T as Pe, H as Z } from "../../chunks/helpers.js";
12
- const qe = Ae`:host{display:block;height:100%}.display-flex-row{display:flex;flex-direction:row}.padding-left-10{padding-left:10px}.chat-container{display:flex;flex-direction:column;gap:0px;max-width:600px;height:75%;background-color:var(--calcite-color-foreground-3);padding:1px}.chat-container_expanded{display:flex;flex-direction:column;gap:0px;max-width:100%;height:95%;background-color:var(--calcite-color-background);border-radius:10px;padding:10px}.chat-panel{--calcite-dialog-header-background-color: var(--calcite-color-brand);--calcite-dialog-header-action-background-color: var(--calcite-color-brand);--calcite-dialog-heading-text-color: var(--calcite-color-background);--calcite-dialog-header-action-text-color: var(--calcite-color-background);--calcite-dialog-header-action-text-color-press: var(--calcite-color-background);--calcite-color-focus: var(--calcite-color-background);--calcite-dialog-min-size-y: 90vh;--calcite-dialog-max-size-y: 90vh}.chat-panel calcite-card,.chat-panel calcite-text-area,.chat-panel calcite-button:not(.icon-color-background),.chat-panel .chat-messages,.chat-panel .chat-input{--calcite-color-focus: var(--calcite-color-brand)}.assistant-followup-chip:focus{outline:2px solid var(--calcite-color-brand)}.chat-panel-heading{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-background, var(--calcite-color-text-1))}.chat-messages{display:flex;flex-direction:column;gap:20px;padding:4px;height:100%;overflow-y:auto}.user-message{align-self:flex-end;background:var(--calcite-color-brand);border-radius:8px;max-width:90%;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-brand);--calcite-card-border-color: var(--calcite-color-brand);color:var(--calcite-color-text-inverse);text-align:left}.system-message{align-self:flex-start;background:var(--calcite-color-foreground-2);border-radius:8px;max-width:90%;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-foreground-3);--calcite-card-border-color: var(--calcite-color-foreground-3);color:var(--calcite-color-inverse);text-align:left}.loader-message{align-self:flex-start;background:var(--calcite-color-foreground-3);border-radius:8px;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-foreground-3);--calcite-card-border-color: var(--calcite-color-foreground-3)}.message-content{padding:0;font-size:14px}.response-message.message-content>p:first-of-type{margin-top:0}.message-content img{max-width:100%;height:auto;display:block;object-fit:contain}.message-content-pad{padding-bottom:10px;font-size:14px}.message-content-summary{padding-bottom:14px}.message-content-alignment{display:flex;align-items:center;gap:var(--calcite-spacing-md);font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-1)}.padding-top-10{padding-top:10px}.padding-right-8{padding-right:8px}.padding-left-right-5{padding-right:5px;padding-left:5px}.chip-content{padding:5px 5px 5px 0}.chat-input{display:flex;flex-direction:row;flex-grow:1}.table-cell{--calcite-table-cell-background: var(--calcite-color-foreground-3)}.cursor-pointer{cursor:pointer}.notice-border-color{--temp-initial-brand: var(--calcite-color-brand)}.notice-border-color calcite-notice{--calcite-color-brand: #ddd;--calcite-icon-color: var(--temp-initial-brand)}.notice-border-color calcite-notice *{--calcite-color-brand: var(--temp-initial-brand)}.solution-card{padding:5px 0;text-decoration:none;display:block;width:100%;cursor:pointer}.solution-card calcite-card{display:flex;flex-direction:column;max-width:520px;overflow:hidden;--calcite-card-corner-radius: var(--calcite-corner-radius-round) !important;--calcite-card-shadow: var(--calcite-shadow-sm);--calcite-card-background-color: var(--calcite-card-background-color) }.solution-card div[slot=thumbnail]{max-height:100%;width:100%;position:relative;&:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;transition:all .15s ease-in-out}}.solution-card div[slot=thumbnail] img{max-height:100%;width:100%;object-fit:cover}.solution-card span[slot=description]{padding-top:10px}.solution-card calcite-chip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);visibility:hidden;pointer-events:none;opacity:0;transition:all .15s ease-in-out;z-index:9999}.solution-card:hover calcite-chip{visibility:visible;opacity:1}.solution-card:hover div[slot=thumbnail]:after{background-color:#00000080}.solution-card:hover h3{text-decoration:underline}.solution-card:focus{outline:2px solid var(--calcite-color-brand)}.references-container{padding-top:10px;display:block}.references-container.collapsed{display:none}.width-100{width:100%}.disclaimer-div{display:flex;gap:var(--calcite-spacing-sm);font-size:var(--calcite-font-size--0);color:var(--calcite-color-text-1)}.display-none{display:none}.chat-messages calcite-fab{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:999}.icon-color-background{--calcite-button-icon-color: var(--calcite-color-background)}.icon-color-background:focus{--calcite-color-focus: var(--calcite-color-background)}@media(max-width:430px){.solution-card .solution-snippet{display:none}}.height-32-flex-auto{height:32px;flex:0 0 auto}.margin-top-0.message-content>p:first-of-type{margin-top:0}a:not(.solution-card){color:var(--calcite-link-text-color, var(--calcite-color-text-link));cursor:pointer;text-decoration:none;line-height:inherit;background-image:linear-gradient(currentColor,currentColor),linear-gradient(var(--calcite-color-brand-underline),var(--calcite-color-brand-underline));background-position-x:0%,100%;background-position-y:min(1.5em,100%);background-repeat:no-repeat,no-repeat;background-size:0% 1px,100% 1px;transition-property:background-size,color;transition-duration:var(--calcite-animation-timing, .15s);transition-timing-function:ease-in-out;outline-color:transparent;position:relative}a:not(.solution-card):hover{background-size:100% 1px,100% 1px}a:not(.solution-card):focus{outline:2px solid var(--calcite-color-brand);outline-offset:2px;outline-color:var(--calcite-color-brand)}a:not(.solution-card):active{color:var(--calcite-color-brand-press)}`;
13
- function W() {
14
- return { async: !1, breaks: !1, extensions: null, gfm: !0, hooks: null, pedantic: !1, renderer: null, silent: !1, tokenizer: null, walkTokens: null };
4
+ import { LitElement as ke, createEvent as X, nothing as Z } from "@arcgis/lumina";
5
+ import { css as Ee, html as I } from "lit";
6
+ import { unsafeHTML as Ae } from "lit/directives/unsafe-html.js";
7
+ import { useContextConsumer as ee } from "@arcgis/lumina/context";
8
+ import { c as Le, b as Re } from "../../chunks/deployAppContexts.js";
9
+ import { T as De } from "../../chunks/interfaces.js";
10
+ import { m as Fe } from "../../chunks/helpers.js";
11
+ import te from "@arcgis/core/config.js";
12
+ import { createRef as $e, ref as Me } from "lit-html/directives/ref.js";
13
+ import { Annotation as b, StateGraph as O, START as z, END as v, NodeInterrupt as ne } from "@langchain/langgraph/web";
14
+ import { createAgentRuntimeState as j, sendTraceMessage as w, invokeStructuredPrompt as T, getEmbeddings as Ne, cosineSimilarity as Be, invokeTextPrompt as Pe } from "@arcgis/ai-orchestrator";
15
+ import r, { z as D } from "zod";
16
+ import * as J from "@esri/arcgis-rest-portal";
17
+ import { applyPatch as qe } from "fast-json-patch";
18
+ import "@langchain/core/messages";
19
+ import { C as ie } from "../../chunks/converter.js";
20
+ import { t as oe, g as N, c as ae, r as re, d as L } from "../../chunks/templates.js";
21
+ import Ue from "@arcgis/core/portal/Portal.js";
22
+ import Oe from "@arcgis/core/portal/PortalItem.js";
23
+ const ze = Ee`:host{display:block;height:100%}.margin-lg{margin:var(--calcite-spacing-lg)}.display-flex-row{display:flex;flex-direction:row}.assistant-split-container{display:flex;width:100%;height:calc(100vh - 78px);overflow:hidden;border-radius:10px}.assistant-panel{display:flex;flex-direction:column;height:100%;border:1px solid var(--calcite-color-surface-3);background-color:var(--calcite-color-surface-2);overflow:hidden}.chat-panel{min-width:320px}.builder-panel{min-width:320px;max-width:100%;border-left:1px solid var(--calcite-color-surface-3)}.panel-actions{display:flex;gap:8px;padding:6px;align-items:center}.builder-header,.builder-footer{padding:10px;background:var(--calcite-color-surface-1);border-bottom:1px solid var(--calcite-color-surface-3)}.builder-content{flex:1;overflow:auto;padding:12px}.builder-content pre{white-space:pre-wrap;word-wrap:break-word;max-height:100%;overflow:auto}.builder-actions{display:flex;gap:6px;align-items:center}.padding-left-10{padding-left:10px}.chat-container{display:flex;flex-direction:column;gap:0px;max-width:600px;height:75%;background-color:var(--calcite-color-surface-4);padding:1px}.chat-container_expanded{display:flex;flex-direction:column;gap:0px;max-width:100%;height:95%;background-color:var(--calcite-color-surface-1);border-radius:10px;padding:10px}.chat-panel{--calcite-color-focus: var(--calcite-color-brand);--calcite-panel-border-color: var(--calcite-color-border-2);--calcite-internal-panel-header-vertical-padding: 0px;--calcite-panel-header-content-space: 0px;border:var(--calcite-border-width-sm) solid var(--calcite-color-border-2);height:100%}.header-content{display:flex;align-items:center;gap:var(--calcite-spacing-sm);height:65px;box-sizing:border-box;padding-inline-start:var(--calcite-space-2xl)}.header-title{font-size:var(--calcite-font-size-md);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1)}.beta-chip{--calcite-chip-corner-radius: var(--calcite-corner-radius-half)}.chat-panel calcite-card,.chat-panel calcite-text-area,.chat-panel calcite-button,.chat-panel .chat-messages,.chat-panel .chat-input{--calcite-color-focus: var(--calcite-color-brand)}.assistant-followup-chip:focus{outline:2px solid var(--calcite-color-brand)}.chat-panel-heading{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-surface-1, var(--calcite-color-text-1))}.chat-messages{display:flex;flex-direction:column;gap:20px;padding:4px;height:100%;overflow-y:auto}.user-message{align-self:flex-end;background:var(--calcite-color-brand);border-radius:8px;max-width:90%;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-brand);--calcite-card-border-color: var(--calcite-color-brand);color:var(--calcite-color-text-inverse);text-align:left}.system-message{align-self:flex-start;background:var(--calcite-color-surface-3);border-radius:8px;max-width:90%;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-surface-4);--calcite-card-border-color: var(--calcite-color-surface-4);color:var(--calcite-color-inverse);text-align:left}.loader-message{align-self:flex-start;background:var(--calcite-color-surface-4);border-radius:8px;--calcite-card-corner-radius: 8px;--calcite-card-background-color: var(--calcite-color-surface-4);--calcite-card-border-color: var(--calcite-color-surface-4)}.message-content{padding:0;font-size:14px}.response-message.message-content>p:first-of-type{margin-top:0}.message-content img{max-width:100%;height:auto;display:block;object-fit:contain}.message-content-pad{padding-bottom:10px;font-size:14px}.message-content-summary{padding-bottom:14px}.message-content-alignment{display:flex;align-items:center;gap:var(--calcite-spacing-md);font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-1)}.padding-top-10{padding-top:10px}.padding-right-8{padding-right:8px}.padding-left-right-5{padding-right:5px;padding-left:5px}.chip-content{padding:5px 5px 5px 0}.chat-input{display:flex;flex-direction:row;flex-grow:1}.table-cell{--calcite-table-cell-background: var(--calcite-color-surface-4)}.cursor-pointer{cursor:pointer}.notice-border-color{--temp-initial-brand: var(--calcite-color-brand)}.notice-border-color calcite-notice{--calcite-color-brand: #ddd;--calcite-icon-color: var(--temp-initial-brand)}.notice-border-color calcite-notice *{--calcite-color-brand: var(--temp-initial-brand)}.solution-card{padding:5px 0;text-decoration:none;display:block;width:100%;cursor:pointer}.solution-card calcite-card{display:flex;flex-direction:column;max-width:520px;overflow:hidden;--calcite-card-corner-radius: var(--calcite-corner-radius-round) !important;--calcite-card-shadow: var(--calcite-shadow-sm);--calcite-card-background-color: var(--calcite-card-background-color) }.solution-card div[slot=thumbnail]{max-height:100%;width:100%;position:relative;&:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;transition:all .15s ease-in-out}}.solution-card div[slot=thumbnail] img{max-height:100%;width:100%;object-fit:cover}.solution-card span[slot=description]{padding-top:10px}.solution-card calcite-chip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);visibility:hidden;pointer-events:none;opacity:0;transition:all .15s ease-in-out;z-index:9999}.solution-card:hover calcite-chip{visibility:visible;opacity:1}.solution-card:hover div[slot=thumbnail]:after{background-color:#00000080}.solution-card:hover h3{text-decoration:underline}.solution-card:focus{outline:2px solid var(--calcite-color-brand)}.references-container{padding-top:10px;display:block}.references-container.collapsed{display:none}.width-100{width:100%}.disclaimer-div{display:flex;align-items:center;gap:var(--calcite-spacing-sm);font-size:var(--calcite-font-size--0);color:var(--calcite-color-text-1)}.display-none{display:none}.chat-messages calcite-fab{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:999}.icon-color-background{--calcite-button-icon-color: var(--calcite-color-surface-1)}#closeAssistantButton{--calcite-action-text-color: var(--calcite-color-text-1)}.icon-color-background:focus{--calcite-color-focus: var(--calcite-color-surface-1)}@media(max-width:430px){.solution-card .solution-snippet{display:none}}.height-32-flex-auto{height:32px;flex:0 0 auto}.margin-top-0.message-content>p:first-of-type{margin-top:0}a:not(.solution-card){color:var(--calcite-link-text-color, var(--calcite-color-text-link));cursor:pointer;text-decoration:none;line-height:inherit;background-image:linear-gradient(currentColor,currentColor),linear-gradient(var(--calcite-color-brand-underline),var(--calcite-color-brand-underline));background-position-x:0%,100%;background-position-y:min(1.5em,100%);background-repeat:no-repeat,no-repeat;background-size:0% 1px,100% 1px;transition-property:background-size,color;transition-duration:var(--calcite-animation-timing, .15s);transition-timing-function:ease-in-out;outline-color:transparent;position:relative}a:not(.solution-card):hover{background-size:100% 1px,100% 1px}a:not(.solution-card):focus{outline:2px solid var(--calcite-color-brand);outline-offset:2px;outline-color:var(--calcite-color-brand)}a:not(.solution-card):active{color:var(--calcite-color-brand-press)}`;
24
+ async function y(t, e) {
25
+ const s = Object.entries(t).find(
26
+ ([n]) => n.endsWith(`/${e}.md`)
27
+ );
28
+ if (!s)
29
+ throw new Error(
30
+ `Prompt not found: ${e}
31
+ Available prompts:
32
+ ${Object.keys(t).join(`
33
+ `)}`
34
+ );
35
+ return await s[1]();
15
36
  }
16
- var I = W();
17
- function de(i) {
18
- I = i;
37
+ function B(t) {
38
+ return t?.configurable?.context?.translations;
19
39
  }
20
- var T = { exec: () => null };
21
- function d(i, e = "") {
22
- let t = typeof i == "string" ? i : i.source, n = { replace: (s, a) => {
23
- let r = typeof a == "string" ? a : a.source;
24
- return r = r.replace(b.caret, "$1"), t = t.replace(s, r), n;
25
- }, getRegex: () => new RegExp(t, e) };
26
- return n;
27
- }
28
- var Be = (() => {
29
- try {
30
- return !!new RegExp("(?<=1)(?<!1)");
31
- } catch {
32
- return !1;
33
- }
34
- })(), b = { codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, outputLinkReplace: /\\([\[\]])/g, indentCodeCompensation: /^(\s+)(?:```)/, beginningSpace: /^\s+/, endingHash: /#$/, startingSpaceChar: /^ /, endingSpaceChar: / $/, nonSpaceChar: /[^ ]/, newLineCharGlobal: /\n/g, tabCharGlobal: /\t/g, multipleSpaceGlobal: /\s+/g, blankLine: /^[ \t]*$/, doubleBlankLine: /\n[ \t]*\n[ \t]*$/, blockquoteStart: /^ {0,3}>/, blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, listIsTask: /^\[[ xX]\] +\S/, listReplaceTask: /^\[[ xX]\] +/, listTaskCheckbox: /\[[ xX]\]/, anyLine: /\n.*\n/, hrefBrackets: /^<(.*)>$/, tableDelimiter: /[:|]/, tableAlignChars: /^\||\| *$/g, tableRowBlankLine: /\n[ \t]*$/, tableAlignRight: /^ *-+: *$/, tableAlignCenter: /^ *:-+: *$/, tableAlignLeft: /^ *:-+ *$/, startATag: /^<a /i, endATag: /^<\/a>/i, startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, startAngleBracket: /^</, endAngleBracket: />$/, pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, unicodeAlphaNumeric: /[\p{L}\p{N}]/u, escapeTest: /[&<>"']/, escapeReplace: /[&<>"']/g, escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, caret: /(^|[^\[])\^/g, percentDecode: /%25/g, findPipe: /\|/g, splitPipe: / \|/, slashPipe: /\\\|/g, carriageReturn: /\r\n|\r/g, spaceLine: /^ +$/gm, notSpaceStart: /^\S*/, endingNewline: /\n$/, listItemRegex: (i) => new RegExp(`^( {0,3}${i})((?:[ ][^\\n]*)?(?:\\n|$))`), nextBulletRegex: (i) => new RegExp(`^ {0,${Math.min(3, i - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), hrRegex: (i) => new RegExp(`^ {0,${Math.min(3, i - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), fencesBeginRegex: (i) => new RegExp(`^ {0,${Math.min(3, i - 1)}}(?:\`\`\`|~~~)`), headingBeginRegex: (i) => new RegExp(`^ {0,${Math.min(3, i - 1)}}#`), htmlBeginRegex: (i) => new RegExp(`^ {0,${Math.min(3, i - 1)}}<(?:[a-z].*>|!--)`, "i"), blockquoteBeginRegex: (i) => new RegExp(`^ {0,${Math.min(3, i - 1)}}>`) }, Ee = /^(?:[ \t]*(?:\n|$))+/, Me = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Ne = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, B = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Qe = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, X = / {0,3}(?:[*+-]|\d{1,9}[.)])/, ge = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, fe = d(ge).replace(/bull/g, X).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), De = d(ge).replace(/bull/g, X).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), K = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Ue = /^[^\n]+/, J = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Fe = d(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", J).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Oe = d(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, X).getRegex(), F = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Y = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Ze = d("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Y).replace("tag", F).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), ke = d(K).replace("hr", B).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", F).getRegex(), He = d(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", ke).getRegex(), V = { blockquote: He, code: Me, def: Fe, fences: Ne, heading: Qe, hr: B, html: Ze, lheading: fe, list: Oe, newline: Ee, paragraph: ke, table: T, text: Ue }, oe = d("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", B).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", F).getRegex(), je = { ...V, lheading: De, table: oe, paragraph: d(K).replace("hr", B).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", oe).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", F).getRegex() }, Ge = { ...V, html: d(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", Y).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(), def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, heading: /^(#{1,6})(.*)(?:\n+|$)/, fences: T, lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/, paragraph: d(K).replace("hr", B).replace("heading", ` *#{1,6} *[^
35
- ]`).replace("lheading", fe).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex() }, We = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Xe = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, me = /^( {2,}|\\)\n(?!\s*$)/, Ke = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, O = /[\p{P}\p{S}]/u, ee = /[\s\p{P}\p{S}]/u, xe = /[^\s\p{P}\p{S}]/u, Je = d(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, ee).getRegex(), be = /(?!~)[\p{P}\p{S}]/u, Ye = /(?!~)[\s\p{P}\p{S}]/u, Ve = /(?:[^\s\p{P}\p{S}]|~)/u, we = /(?![*_])[\p{P}\p{S}]/u, et = /(?![*_])[\s\p{P}\p{S}]/u, tt = /(?:[^\s\p{P}\p{S}]|[*_])/u, st = d(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Be ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), _e = /^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/, nt = d(_e, "u").replace(/punct/g, O).getRegex(), it = d(_e, "u").replace(/punct/g, be).getRegex(), ve = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", rt = d(ve, "gu").replace(/notPunctSpace/g, xe).replace(/punctSpace/g, ee).replace(/punct/g, O).getRegex(), at = d(ve, "gu").replace(/notPunctSpace/g, Ve).replace(/punctSpace/g, Ye).replace(/punct/g, be).getRegex(), ot = d("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, xe).replace(/punctSpace/g, ee).replace(/punct/g, O).getRegex(), lt = d(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, we).getRegex(), ct = "^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", ht = d(ct, "gu").replace(/notPunctSpace/g, tt).replace(/punctSpace/g, et).replace(/punct/g, we).getRegex(), pt = d(/\\(punct)/, "gu").replace(/punct/g, O).getRegex(), ut = d(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), dt = d(Y).replace("(?:-->|$)", "-->").getRegex(), gt = d("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", dt).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Q = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/, ft = d(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", Q).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), ye = d(/^!?\[(label)\]\[(ref)\]/).replace("label", Q).replace("ref", J).getRegex(), Se = d(/^!?\[(ref)\](?:\[\])?/).replace("ref", J).getRegex(), kt = d("reflink|nolink(?!\\()", "g").replace("reflink", ye).replace("nolink", Se).getRegex(), le = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, te = { _backpedal: T, anyPunctuation: pt, autolink: ut, blockSkip: st, br: me, code: Xe, del: T, delLDelim: T, delRDelim: T, emStrongLDelim: nt, emStrongRDelimAst: rt, emStrongRDelimUnd: ot, escape: We, link: ft, nolink: Se, punctuation: Je, reflink: ye, reflinkSearch: kt, tag: gt, text: Ke, url: T }, mt = { ...te, link: d(/^!?\[(label)\]\((.*?)\)/).replace("label", Q).getRegex(), reflink: d(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Q).getRegex() }, H = { ...te, emStrongRDelimAst: at, emStrongLDelim: it, delLDelim: lt, delRDelim: ht, url: d(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", le).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(), _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/, del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/, text: d(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", le).getRegex() }, xt = { ...H, br: d(me).replace("{2,}", "*").getRegex(), text: d(H.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex() }, N = { normal: V, gfm: je, pedantic: Ge }, L = { normal: te, gfm: H, breaks: xt, pedantic: mt }, bt = { "&": "&amp;", "<": "&lt;", ">": "&gt;", '"': "&quot;", "'": "&#39;" }, ce = (i) => bt[i];
36
- function S(i, e) {
37
- if (e) {
38
- if (b.escapeTest.test(i)) return i.replace(b.escapeReplace, ce);
39
- } else if (b.escapeTestNoEncode.test(i)) return i.replace(b.escapeReplaceNoEncode, ce);
40
- return i;
41
- }
42
- function he(i) {
43
- try {
44
- i = encodeURI(i).replace(b.percentDecode, "%");
45
- } catch {
46
- return null;
47
- }
48
- return i;
40
+ function le(t) {
41
+ if (typeof window > "u" || t.length <= 1)
42
+ return;
43
+ const e = t.map((n) => n.solution.id), s = t.map((n) => n.solution.title);
44
+ window.dispatchEvent(new CustomEvent("searchTermSet", {
45
+ detail: {
46
+ scope: "all-solutions",
47
+ searchTerm: ""
48
+ }
49
+ })), window.dispatchEvent(new CustomEvent("solutionMatchesFromAssistant", {
50
+ detail: {
51
+ solutionIds: e,
52
+ solutionTitles: s
53
+ },
54
+ bubbles: !0,
55
+ composed: !0
56
+ })), window.dispatchEvent(new CustomEvent("navTabSelected", {
57
+ detail: {
58
+ tabType: "all-solutions"
59
+ }
60
+ }));
49
61
  }
50
- function pe(i, e) {
51
- let t = i.replace(b.findPipe, (a, r, l) => {
52
- let o = !1, h = r;
53
- for (; --h >= 0 && l[h] === "\\"; ) o = !o;
54
- return o ? "|" : " |";
55
- }), n = t.split(b.splitPipe), s = 0;
56
- if (n[0].trim() || n.shift(), n.length > 0 && !n.at(-1)?.trim() && n.pop(), e) if (n.length > e) n.splice(e);
57
- else for (; n.length < e; ) n.push("");
58
- for (; s < n.length; s++) n[s] = n[s].trim().replace(b.slashPipe, "|");
59
- return n;
62
+ function ce(t) {
63
+ if (typeof window > "u" || !t)
64
+ return;
65
+ const e = new CustomEvent("solutionIDFromAssistant", {
66
+ detail: t,
67
+ bubbles: !0,
68
+ composed: !0
69
+ });
70
+ window.dispatchEvent(e);
60
71
  }
61
- function P(i, e, t) {
62
- let n = i.length;
63
- if (n === 0) return "";
64
- let s = 0;
65
- for (; s < n && i.charAt(n - s - 1) === e; )
66
- s++;
67
- return i.slice(0, n - s);
72
+ const je = /* @__PURE__ */ Object.assign({
73
+ "./prompts/solutions_explorer_description.md": () => import("../../chunks/solutions_explorer_description.js").then((t) => t.default)
74
+ });
75
+ function Je(t) {
76
+ return t.replace(/<sup>\[\[(\d+)\]\]\(([^)]+)\)<\/sup>/g, '<sup><a href="$2">&#91;$1&#93;</a></sup>');
68
77
  }
69
- function wt(i, e) {
70
- if (i.indexOf(e[1]) === -1) return -1;
71
- let t = 0;
72
- for (let n = 0; n < i.length; n++) if (i[n] === "\\") n++;
73
- else if (i[n] === e[0]) t++;
74
- else if (i[n] === e[1] && (t--, t < 0)) return n;
75
- return t > 0 ? -2 : -1;
78
+ function Ge(t, e) {
79
+ const s = [];
80
+ return (e?.configurable?.context?.configContext.allCards ?? []).forEach((i) => {
81
+ const o = i.title;
82
+ if (!o)
83
+ return;
84
+ const a = new RegExp(`(?<![\\p{L}\\p{N}])${o}(?![\\p{L}\\p{N}])`, "giu");
85
+ let l = !1;
86
+ t = t.replace(a, () => (l = !0, `<a href="" target="solutionId:${i.deployCommonId}">${o}</a>`)), l && s.push({
87
+ solution: {
88
+ title: i.title,
89
+ id: i.deployCommonId,
90
+ snippet: i.snippet,
91
+ description: i.description
92
+ },
93
+ score: 100
94
+ });
95
+ }), { source: t, allMatches: s };
76
96
  }
77
- function _t(i, e = 0) {
78
- let t = e, n = "";
79
- for (let s of i) if (s === " ") {
80
- let a = 4 - t % 4;
81
- n += " ".repeat(a), t += a;
82
- } else n += s, t++;
83
- return n;
97
+ function Ve(t) {
98
+ return t && t.helperServices.aiAssistantServices ? `${t.helperServices.aiAssistantServices.url}/skills/doc_ai_assistant/chat` : null;
84
99
  }
85
- function ue(i, e, t, n, s) {
86
- let a = e.href, r = e.title || null, l = i[1].replace(s.other.outputLinkReplace, "$1");
87
- n.state.inLink = !0;
88
- let o = { type: i[0].charAt(0) === "!" ? "image" : "link", raw: t, href: a, title: r, text: l, tokens: n.inlineTokens(l) };
89
- return n.state.inLink = !1, o;
100
+ function de(t) {
101
+ return t && t.helperServices.aiAssistantServices ? `${t.helperServices.aiAssistantServices.url}/skills/doc_ai_assistant/api/pre-chat` : null;
90
102
  }
91
- function vt(i, e, t) {
92
- let n = i.match(t.other.indentCodeCompensation);
93
- if (n === null) return e;
94
- let s = n[1];
95
- return e.split(`
96
- `).map((a) => {
97
- let r = a.match(t.other.beginningSpace);
98
- if (r === null) return a;
99
- let [l] = r;
100
- return l.length >= s.length ? a.slice(s.length) : a;
101
- }).join(`
102
- `);
103
+ async function U(t, e, s) {
104
+ const n = await fetch(e, {
105
+ method: "POST",
106
+ headers: {
107
+ "Content-Type": "application/json",
108
+ token: s
109
+ },
110
+ body: JSON.stringify(t)
111
+ });
112
+ if (!n.ok)
113
+ throw new Error(`HTTP ${n.status} calling ${e}`);
114
+ return n.json();
103
115
  }
104
- var D = class {
105
- options;
106
- rules;
107
- lexer;
108
- constructor(i) {
109
- this.options = i || I;
110
- }
111
- space(i) {
112
- let e = this.rules.block.newline.exec(i);
113
- if (e && e[0].length > 0) return { type: "space", raw: e[0] };
114
- }
115
- code(i) {
116
- let e = this.rules.block.code.exec(i);
117
- if (e) {
118
- let t = e[0].replace(this.rules.other.codeRemoveIndent, "");
119
- return { type: "code", raw: e[0], codeBlockStyle: "indented", text: this.options.pedantic ? t : P(t, `
120
- `) };
121
- }
122
- }
123
- fences(i) {
124
- let e = this.rules.block.fences.exec(i);
125
- if (e) {
126
- let t = e[0], n = vt(t, e[3] || "", this.rules);
127
- return { type: "code", raw: t, lang: e[2] ? e[2].trim().replace(this.rules.inline.anyPunctuation, "$1") : e[2], text: n };
128
- }
129
- }
130
- heading(i) {
131
- let e = this.rules.block.heading.exec(i);
132
- if (e) {
133
- let t = e[2].trim();
134
- if (this.rules.other.endingHash.test(t)) {
135
- let n = P(t, "#");
136
- (this.options.pedantic || !n || this.rules.other.endingSpaceChar.test(n)) && (t = n.trim());
137
- }
138
- return { type: "heading", raw: e[0], depth: e[1].length, text: t, tokens: this.lexer.inline(t) };
139
- }
140
- }
141
- hr(i) {
142
- let e = this.rules.block.hr.exec(i);
143
- if (e) return { type: "hr", raw: P(e[0], `
144
- `) };
145
- }
146
- blockquote(i) {
147
- let e = this.rules.block.blockquote.exec(i);
148
- if (e) {
149
- let t = P(e[0], `
150
- `).split(`
151
- `), n = "", s = "", a = [];
152
- for (; t.length > 0; ) {
153
- let r = !1, l = [], o;
154
- for (o = 0; o < t.length; o++) if (this.rules.other.blockquoteStart.test(t[o])) l.push(t[o]), r = !0;
155
- else if (!r) l.push(t[o]);
156
- else break;
157
- t = t.slice(o);
158
- let h = l.join(`
159
- `), c = h.replace(this.rules.other.blockquoteSetextReplace, `
160
- $1`).replace(this.rules.other.blockquoteSetextReplace2, "");
161
- n = n ? `${n}
162
- ${h}` : h, s = s ? `${s}
163
- ${c}` : c;
164
- let p = this.lexer.state.top;
165
- if (this.lexer.state.top = !0, this.lexer.blockTokens(c, a, !0), this.lexer.state.top = p, t.length === 0) break;
166
- let u = a.at(-1);
167
- if (u?.type === "code") break;
168
- if (u?.type === "blockquote") {
169
- let g = u, k = g.raw + `
170
- ` + t.join(`
171
- `), w = this.blockquote(k);
172
- a[a.length - 1] = w, n = n.substring(0, n.length - g.raw.length) + w.raw, s = s.substring(0, s.length - g.text.length) + w.text;
173
- break;
174
- } else if (u?.type === "list") {
175
- let g = u, k = g.raw + `
176
- ` + t.join(`
177
- `), w = this.list(k);
178
- a[a.length - 1] = w, n = n.substring(0, n.length - u.raw.length) + w.raw, s = s.substring(0, s.length - g.raw.length) + w.raw, t = k.substring(a.at(-1).raw.length).split(`
179
- `);
180
- continue;
181
- }
116
+ const He = (t) => new Promise((e) => setTimeout(e, t)), We = b.Root({
117
+ // Provides agentExecutionContext, outputMessage, summary, and status
118
+ // channels with the orchestrator's standard reducers/defaults so the
119
+ // sub-agent reports back through the same shape the orchestrator
120
+ // persists into priorSteps.
121
+ ...j(),
122
+ solutionResponse: b({
123
+ reducer: (t, e) => e ?? null,
124
+ default: () => null
125
+ }),
126
+ documentSkillUrl: b({
127
+ reducer: (t, e) => e ?? null,
128
+ default: () => null
129
+ }),
130
+ // Persisted across turns via the graph checkpointer so follow-up questions
131
+ // continue the same service conversation. Null on the very first interaction
132
+ // or after messages are cleared.
133
+ conversationId: b({
134
+ reducer: (t, e) => e ?? t,
135
+ default: () => null
136
+ })
137
+ }), Ke = () => new O(We).addNode("initializeAgent", Ye).addNode("askSolutionsQuestions", Qe).addEdge(z, "initializeAgent").addEdge("initializeAgent", "askSolutionsQuestions").addEdge("askSolutionsQuestions", v), ue = async (t, e, s, n) => {
138
+ if (!t) return;
139
+ const i = de(t);
140
+ if (!i) return;
141
+ const a = { context: {
142
+ kind: "DocAIAssistantRequest",
143
+ filters: {
144
+ products: "ArcGIS Solutions",
145
+ persona: { persona: "apps-solutions" },
146
+ pipeline: {
147
+ translation: { allow: !0, language: s, use_llm: !1 }
182
148
  }
183
- return { type: "blockquote", raw: n, tokens: a, text: s };
184
149
  }
185
- }
186
- list(i) {
187
- let e = this.rules.block.list.exec(i);
188
- if (e) {
189
- let t = e[1].trim(), n = t.length > 1, s = { type: "list", raw: "", ordered: n, start: n ? +t.slice(0, -1) : "", loose: !1, items: [] };
190
- t = n ? `\\d{1,9}\\${t.slice(-1)}` : `\\${t}`, this.options.pedantic && (t = n ? t : "[*+-]");
191
- let a = this.rules.other.listItemRegex(t), r = !1;
192
- for (; i; ) {
193
- let o = !1, h = "", c = "";
194
- if (!(e = a.exec(i)) || this.rules.block.hr.test(i)) break;
195
- h = e[0], i = i.substring(h.length);
196
- let p = _t(e[2].split(`
197
- `, 1)[0], e[1].length), u = i.split(`
198
- `, 1)[0], g = !p.trim(), k = 0;
199
- if (this.options.pedantic ? (k = 2, c = p.trimStart()) : g ? k = e[1].length + 1 : (k = p.search(this.rules.other.nonSpaceChar), k = k > 4 ? 1 : k, c = p.slice(k), k += e[1].length), g && this.rules.other.blankLine.test(u) && (h += u + `
200
- `, i = i.substring(u.length + 1), o = !0), !o) {
201
- let w = this.rules.other.nextBulletRegex(k), E = this.rules.other.hrRegex(k), M = this.rules.other.fencesBeginRegex(k), x = this.rules.other.headingBeginRegex(k), _ = this.rules.other.htmlBeginRegex(k), C = this.rules.other.blockquoteBeginRegex(k);
202
- for (; i; ) {
203
- let z = i.split(`
204
- `, 1)[0], $;
205
- if (u = z, this.options.pedantic ? (u = u.replace(this.rules.other.listReplaceNesting, " "), $ = u) : $ = u.replace(this.rules.other.tabCharGlobal, " "), M.test(u) || x.test(u) || _.test(u) || C.test(u) || w.test(u) || E.test(u)) break;
206
- if ($.search(this.rules.other.nonSpaceChar) >= k || !u.trim()) c += `
207
- ` + $.slice(k);
208
- else {
209
- if (g || p.replace(this.rules.other.tabCharGlobal, " ").search(this.rules.other.nonSpaceChar) >= 4 || M.test(p) || x.test(p) || E.test(p)) break;
210
- c += `
211
- ` + u;
212
- }
213
- g = !u.trim(), h += z + `
214
- `, i = i.substring(z.length + 1), p = $.slice(k);
215
- }
216
- }
217
- s.loose || (r ? s.loose = !0 : this.rules.other.doubleBlankLine.test(h) && (r = !0)), s.items.push({ type: "list_item", raw: h, task: !!this.options.gfm && this.rules.other.listIsTask.test(c), loose: !1, text: c, tokens: [] }), s.raw += h;
218
- }
219
- let l = s.items.at(-1);
220
- if (l) l.raw = l.raw.trimEnd(), l.text = l.text.trimEnd();
221
- else return;
222
- s.raw = s.raw.trimEnd();
223
- for (let o of s.items) {
224
- if (this.lexer.state.top = !1, o.tokens = this.lexer.blockTokens(o.text, []), o.task) {
225
- if (o.text = o.text.replace(this.rules.other.listReplaceTask, ""), o.tokens[0]?.type === "text" || o.tokens[0]?.type === "paragraph") {
226
- o.tokens[0].raw = o.tokens[0].raw.replace(this.rules.other.listReplaceTask, ""), o.tokens[0].text = o.tokens[0].text.replace(this.rules.other.listReplaceTask, "");
227
- for (let c = this.lexer.inlineQueue.length - 1; c >= 0; c--) if (this.rules.other.listIsTask.test(this.lexer.inlineQueue[c].src)) {
228
- this.lexer.inlineQueue[c].src = this.lexer.inlineQueue[c].src.replace(this.rules.other.listReplaceTask, "");
229
- break;
230
- }
231
- }
232
- let h = this.rules.other.listTaskCheckbox.exec(o.raw);
233
- if (h) {
234
- let c = { type: "checkbox", raw: h[0] + " ", checked: h[0] !== "[ ]" };
235
- o.checked = c.checked, s.loose ? o.tokens[0] && ["paragraph", "text"].includes(o.tokens[0].type) && "tokens" in o.tokens[0] && o.tokens[0].tokens ? (o.tokens[0].raw = c.raw + o.tokens[0].raw, o.tokens[0].text = c.raw + o.tokens[0].text, o.tokens[0].tokens.unshift(c)) : o.tokens.unshift({ type: "paragraph", raw: c.raw, text: c.raw, tokens: [c] }) : o.tokens.unshift(c);
150
+ } };
151
+ n && (a.conversationId = n), U(a, i, e ?? "");
152
+ }, Qe = async (t, e) => {
153
+ const s = B(e), n = t.documentSkillUrl;
154
+ let i = [];
155
+ await w(
156
+ { text: s.agentProgress.explorerAgentSearching },
157
+ e
158
+ );
159
+ let o = await U(
160
+ {
161
+ message: t.agentExecutionContext.userRequest,
162
+ conversationId: e?.configurable?.context?.convoId ?? void 0,
163
+ context: {
164
+ kind: "DocAIAssistantRequest",
165
+ filters: {
166
+ products: "ArcGIS Solutions",
167
+ persona: { persona: "apps-solutions" },
168
+ pipeline: {
169
+ translation: { allow: !0, language: e?.configurable?.context?.configContext.locale ?? "en", use_llm: !1 }
236
170
  }
237
171
  }
238
- if (!s.loose) {
239
- let h = o.tokens.filter((p) => p.type === "space"), c = h.length > 0 && h.some((p) => this.rules.other.anyLine.test(p.raw));
240
- s.loose = c;
241
- }
242
172
  }
243
- if (s.loose) for (let o of s.items) {
244
- o.loose = !0;
245
- for (let h of o.tokens) h.type === "text" && (h.type = "paragraph");
246
- }
247
- return s;
173
+ },
174
+ n,
175
+ e?.configurable?.context?.token ?? ""
176
+ );
177
+ o.conversationId && e?.configurable?.context?.setConversationId && e.configurable.context.setConversationId(o.conversationId);
178
+ let a = {
179
+ message: o.message,
180
+ conversationId: o.conversationId,
181
+ hasMore: o.hasMore,
182
+ ackSequenceNumber: o.sequenceNumber,
183
+ inquiryId: o.inquiryId
184
+ }, l = "";
185
+ const u = async (m) => {
186
+ const f = m.context?.results?.[0]?.reply ?? "";
187
+ if (f !== "") {
188
+ const g = Je(f), A = Ge(g, e);
189
+ l = A.source, i = [
190
+ ...i,
191
+ ...A.allMatches.filter(
192
+ (k) => !i.some((E) => E.solution.id === k.solution.id)
193
+ )
194
+ ];
248
195
  }
249
- }
250
- html(i) {
251
- let e = this.rules.block.html.exec(i);
252
- if (e) return { type: "html", block: !0, raw: e[0], pre: e[1] === "pre" || e[1] === "script" || e[1] === "style", text: e[0] };
253
- }
254
- def(i) {
255
- let e = this.rules.block.def.exec(i);
256
- if (e) {
257
- let t = e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal, " "), n = e[2] ? e[2].replace(this.rules.other.hrefBrackets, "$1").replace(this.rules.inline.anyPunctuation, "$1") : "", s = e[3] ? e[3].substring(1, e[3].length - 1).replace(this.rules.inline.anyPunctuation, "$1") : e[3];
258
- return { type: "def", tag: t, raw: e[0], href: n, title: s };
196
+ const d = m.context?.results?.[0]?.status?.currentStatusStep;
197
+ if (d) {
198
+ let g = "";
199
+ d === 1 ? g = s.agentProgress.explorerAgentReading : d === 2 ? g = s.agentProgress.explorerAgentReviewing : d === 3 && (g = s.agentProgress.explorerAgentPreparing), await w({ text: g }, e);
259
200
  }
260
- }
261
- table(i) {
262
- let e = this.rules.block.table.exec(i);
263
- if (!e || !this.rules.other.tableDelimiter.test(e[2])) return;
264
- let t = pe(e[1]), n = e[2].replace(this.rules.other.tableAlignChars, "").split("|"), s = e[3]?.trim() ? e[3].replace(this.rules.other.tableRowBlankLine, "").split(`
265
- `) : [], a = { type: "table", raw: e[0], header: [], align: [], rows: [] };
266
- if (t.length === n.length) {
267
- for (let r of n) this.rules.other.tableAlignRight.test(r) ? a.align.push("right") : this.rules.other.tableAlignCenter.test(r) ? a.align.push("center") : this.rules.other.tableAlignLeft.test(r) ? a.align.push("left") : a.align.push(null);
268
- for (let r = 0; r < t.length; r++) a.header.push({ text: t[r], tokens: this.lexer.inline(t[r]), header: !0, align: a.align[r] });
269
- for (let r of s) a.rows.push(pe(r, a.header.length).map((l, o) => ({ text: l, tokens: this.lexer.inline(l), header: !1, align: a.align[o] })));
270
- return a;
201
+ };
202
+ for (await u(o); a.hasMore; )
203
+ await He(500), o = await U(
204
+ {
205
+ conversationId: a.conversationId,
206
+ ackSequenceNumber: a.ackSequenceNumber,
207
+ inquiryId: a.inquiryId
208
+ },
209
+ n,
210
+ e?.configurable?.context?.token ?? ""
211
+ ), a = {
212
+ message: o.message,
213
+ conversationId: o.conversationId,
214
+ hasMore: o.hasMore,
215
+ ackSequenceNumber: o.sequenceNumber,
216
+ inquiryId: o.inquiryId
217
+ }, await u(o);
218
+ return de(e?.configurable?.context.portal) && ue(
219
+ e?.configurable?.context.portal,
220
+ e?.configurable?.context.token ?? "",
221
+ e?.configurable?.context.configContext.locale ?? "en",
222
+ a.conversationId
223
+ ), i.length && (i.length === 1 ? ce(i[0].solution.id) : le(i)), {
224
+ outputMessage: l,
225
+ summary: l,
226
+ status: "success",
227
+ solutionResponse: a,
228
+ conversationId: a.conversationId
229
+ };
230
+ }, Ye = async (t, e) => {
231
+ let s = null;
232
+ return t.documentSkillUrl === null && e?.configurable?.context?.portal && (s = Ve(e.configurable.context.portal)), {
233
+ documentSkillUrl: s
234
+ };
235
+ };
236
+ await y(je, "solutions_explorer_description");
237
+ const pe = (t) => {
238
+ if (t && Array.isArray(t.id) && t.id.length > 0)
239
+ return t.id[t.id.length - 1].replace("Message", "").toLowerCase();
240
+ if (t && typeof t._getType == "function")
241
+ try {
242
+ return t._getType();
243
+ } catch {
244
+ return "human";
271
245
  }
272
- }
273
- lheading(i) {
274
- let e = this.rules.block.lheading.exec(i);
275
- if (e) return { type: "heading", raw: e[0], depth: e[2].charAt(0) === "=" ? 1 : 2, text: e[1], tokens: this.lexer.inline(e[1]) };
276
- }
277
- paragraph(i) {
278
- let e = this.rules.block.paragraph.exec(i);
279
- if (e) {
280
- let t = e[1].charAt(e[1].length - 1) === `
281
- ` ? e[1].slice(0, -1) : e[1];
282
- return { type: "paragraph", raw: e[0], text: t, tokens: this.lexer.inline(t) };
246
+ return "human";
247
+ }, Xe = (t) => {
248
+ const e = pe(t);
249
+ if (t && t.kwargs)
250
+ return {
251
+ role: e,
252
+ ...t.kwargs
253
+ // Includes content, id, additional_kwargs, response_metadata, etc.
254
+ };
255
+ if (t && typeof t == "object") {
256
+ const s = {
257
+ role: e,
258
+ content: typeof t.content == "string" ? t.content : String(t.content || "")
259
+ };
260
+ return t.id && (s.id = t.id), t.name && (s.name = t.name), t.additional_kwargs && (s.additional_kwargs = t.additional_kwargs), t.response_metadata && (s.response_metadata = t.response_metadata), s;
261
+ }
262
+ return { role: "human", content: String(t) };
263
+ }, Ze = (t) => pe(t) === "human", et = (t, e = 3) => t.filter((s) => Ze(s)).slice(-e).map(Xe), tt = (t, e = " ") => et(t).map((i) => i.content).join(e).trim(), st = { understandingRequest: "Understanding your request...", selectTemplatePrompt: "This use case could be supported in a few different ways. Choose the option that best matches what you want to accomplish.", searchingExistingSolutions: "Searching for existing solutions...", existingSolutionMatch: "I found one or more existing solutions that match your use case. These are ready-to-use solutions that may already meet your needs and can be deployed now. Do you want to continue building your own solution?", continueBuildingYes: "Yes, I want to build a new solution", continueBuildingNo: "No, I’ll review existing solutions", continueBuildingDeclined: "Sounds good. We can focus on existing solutions. Let me know if I can help answer any questions or provide more details.", creatingDesign: "Generating solution design...", updatingDesign: "Updating solution design...", applyChangeFailed: "I wasn't able to apply that change. The design was not modified. Please try rephrasing your request.", createDesignFailed: "I wasn't able to create a solution design from that request. Please try rephrasing and try again.", discardMessage: "Are you sure you want to discard your solution?", discardForNewSolution: "I can help you build a new solution, but I will need to discard your current solution design. Do you want to continue?" }, nt = {
264
+ builderMessages: st
265
+ }, it = /* @__PURE__ */ new Set([
266
+ "add",
267
+ "all",
268
+ "alter",
269
+ "and",
270
+ "any",
271
+ "as",
272
+ "asc",
273
+ "backup",
274
+ "between",
275
+ "by",
276
+ "case",
277
+ "check",
278
+ "column",
279
+ "constraint",
280
+ "create",
281
+ "database",
282
+ "date",
283
+ "default",
284
+ "delete",
285
+ "desc",
286
+ "distinct",
287
+ "drop",
288
+ "exec",
289
+ "exists",
290
+ "foreign",
291
+ "from",
292
+ "full",
293
+ "group",
294
+ "having",
295
+ "in",
296
+ "index",
297
+ "inner",
298
+ "insert",
299
+ "into",
300
+ "is",
301
+ "join",
302
+ "key",
303
+ "left",
304
+ "like",
305
+ "limit",
306
+ "not",
307
+ "null",
308
+ "on",
309
+ "or",
310
+ "order",
311
+ "outer",
312
+ "primary",
313
+ "procedure",
314
+ "right",
315
+ "rownum",
316
+ "select",
317
+ "set",
318
+ "shape",
319
+ "subtype",
320
+ "table",
321
+ "top",
322
+ "truncate",
323
+ "union",
324
+ "unique",
325
+ "update",
326
+ "values",
327
+ "view",
328
+ "where"
329
+ ]);
330
+ class me {
331
+ constructor(e, s, n = !0) {
332
+ this.isValid = !0, this.issues = [], this.fieldNameRegistry = null, this.response = e, this.template = s, this.newDesign = n, this.validate();
333
+ }
334
+ validate() {
335
+ this.compareModels(), this.validateResponse();
336
+ }
337
+ compareModels() {
338
+ this.compareStrings(), this.compareItems(), this.compareFeatureLayers();
339
+ }
340
+ compareStrings() {
341
+ const e = new Set(this.template.solution.strings.map((n) => n.key)), s = new Set(this.response.solution.strings.map((n) => n.key));
342
+ e.size === s.size && [...e].every((n) => s.has(n)) || this.logIssue("String keys in llm response do not match the template.");
343
+ for (const n of this.response.solution.strings)
344
+ n.value || this.logIssue(`String key '${n.key}' has no value in the design. It must be populated.`);
345
+ }
346
+ compareItems() {
347
+ const e = new Set(this.template.items.map((n) => n.id)), s = new Set(this.response.items.map((n) => n.id));
348
+ e.size === s.size && [...e].every((n) => s.has(n)) || this.logIssue("Item IDs in design do not match the template.");
349
+ }
350
+ compareFeatureLayers() {
351
+ const e = this.template.featureLayer, s = this.response.featureLayer;
352
+ if (e.itemId !== s.itemId) {
353
+ this.logIssue(`Feature Layer itemId '${s.itemId}' does not match template '${e.itemId}'.`);
354
+ return;
283
355
  }
284
- }
285
- text(i) {
286
- let e = this.rules.block.text.exec(i);
287
- if (e) return { type: "text", raw: e[0], text: e[0], tokens: this.lexer.inline(e[0]) };
288
- }
289
- escape(i) {
290
- let e = this.rules.inline.escape.exec(i);
291
- if (e) return { type: "escape", raw: e[0], text: e[1] };
292
- }
293
- tag(i) {
294
- let e = this.rules.inline.tag.exec(i);
295
- if (e) return !this.lexer.state.inLink && this.rules.other.startATag.test(e[0]) ? this.lexer.state.inLink = !0 : this.lexer.state.inLink && this.rules.other.endATag.test(e[0]) && (this.lexer.state.inLink = !1), !this.lexer.state.inRawBlock && this.rules.other.startPreScriptTag.test(e[0]) ? this.lexer.state.inRawBlock = !0 : this.lexer.state.inRawBlock && this.rules.other.endPreScriptTag.test(e[0]) && (this.lexer.state.inRawBlock = !1), { type: "html", raw: e[0], inLink: this.lexer.state.inLink, inRawBlock: this.lexer.state.inRawBlock, block: !1, text: e[0] };
296
- }
297
- link(i) {
298
- let e = this.rules.inline.link.exec(i);
299
- if (e) {
300
- let t = e[2].trim();
301
- if (!this.options.pedantic && this.rules.other.startAngleBracket.test(t)) {
302
- if (!this.rules.other.endAngleBracket.test(t)) return;
303
- let a = P(t.slice(0, -1), "\\");
304
- if ((t.length - a.length) % 2 === 0) return;
305
- } else {
306
- let a = wt(e[2], "()");
307
- if (a === -2) return;
308
- if (a > -1) {
309
- let r = (e[0].indexOf("!") === 0 ? 5 : 4) + e[1].length + a;
310
- e[2] = e[2].substring(0, a), e[0] = e[0].substring(0, r).trim(), e[3] = "";
311
- }
312
- }
313
- let n = e[2], s = "";
314
- if (this.options.pedantic) {
315
- let a = this.rules.other.pedanticHrefTitle.exec(n);
316
- a && (n = a[1], s = a[3]);
317
- } else s = e[3] ? e[3].slice(1, -1) : "";
318
- return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (this.options.pedantic && !this.rules.other.endAngleBracket.test(t) ? n = n.slice(1) : n = n.slice(1, -1)), ue(e, { href: n && n.replace(this.rules.inline.anyPunctuation, "$1"), title: s && s.replace(this.rules.inline.anyPunctuation, "$1") }, e[0], this.lexer, this.rules);
356
+ if (!e.addLayers) {
357
+ const n = new Set(e.layers.map((o) => o.id)), i = new Set(s.layers.map((o) => o.id));
358
+ if (!(n.size === i.size && [...n].every((o) => i.has(o))))
359
+ this.logIssue(`Feature Layer '${e.itemId}' had its layer ids altered.`);
360
+ else
361
+ for (const o of e.layers)
362
+ if (o.type) {
363
+ const a = s.layers.find((l) => l.id === o.id);
364
+ a && a.type !== o.type && this.logIssue(`Layer '${o.id}' type '${a.type}' does not match template type '${o.type}'. This layer type is immutable.`);
365
+ }
319
366
  }
320
367
  }
321
- reflink(i, e) {
322
- let t;
323
- if ((t = this.rules.inline.reflink.exec(i)) || (t = this.rules.inline.nolink.exec(i))) {
324
- let n = (t[2] || t[1]).replace(this.rules.other.multipleSpaceGlobal, " "), s = e[n.toLowerCase()];
325
- if (!s) {
326
- let a = t[0].charAt(0);
327
- return { type: "text", raw: a, text: a };
328
- }
329
- return ue(t, s, t[0], this.lexer, this.rules);
368
+ validateResponse() {
369
+ const e = /* @__PURE__ */ new Set([
370
+ "Feature Layer (hosted)",
371
+ "Feature Layer (hosted, view)"
372
+ ]);
373
+ for (const i of this.response.items)
374
+ e.has(i.type) && i.title.length > 100 && this.logIssue(`Service name '${i.title}' exceeds 100 characters.`);
375
+ const s = this.template.featureLayer.layers;
376
+ this.response.featureLayer.layers.length || this.logIssue("Feature layer item must contain at least one layer.");
377
+ const n = this.response.featureLayer.layers.map((i) => i.name.toLowerCase());
378
+ n.length !== new Set(n).size && this.logIssue(`Layer names must be unique (case-insensitive). Layer names in design: ${n}.`);
379
+ for (const i of this.response.featureLayer.layers) {
380
+ this.validateLayer(i, this.response.featureLayer.addLayers);
381
+ const o = s.find((a) => a.id === i.id);
382
+ o && this.validateRequiredFields(i, o);
330
383
  }
331
384
  }
332
- emStrong(i, e, t = "") {
333
- let n = this.rules.inline.emStrongLDelim.exec(i);
334
- if (!(!n || n[3] && t.match(this.rules.other.unicodeAlphaNumeric)) && (!(n[1] || n[2]) || !t || this.rules.inline.punctuation.exec(t))) {
335
- let s = [...n[0]].length - 1, a, r, l = s, o = 0, h = n[0][0] === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
336
- for (h.lastIndex = 0, e = e.slice(-1 * i.length + s); (n = h.exec(e)) != null; ) {
337
- if (a = n[1] || n[2] || n[3] || n[4] || n[5] || n[6], !a) continue;
338
- if (r = [...a].length, n[3] || n[4]) {
339
- l += r;
340
- continue;
341
- } else if ((n[5] || n[6]) && s % 3 && !((s + r) % 3)) {
342
- o += r;
343
- continue;
344
- }
345
- if (l -= r, l > 0) continue;
346
- r = Math.min(r, r + l + o);
347
- let c = [...n[0]][0].length, p = i.slice(0, s + n.index + c + r);
348
- if (Math.min(s, r) % 2) {
349
- let g = p.slice(1, -1);
350
- return { type: "em", raw: p, text: g, tokens: this.lexer.inlineTokens(g) };
351
- }
352
- let u = p.slice(2, -2);
353
- return { type: "strong", raw: p, text: u, tokens: this.lexer.inlineTokens(u) };
354
- }
385
+ validateRequiredFields(e, s) {
386
+ const n = new Set(e.requiredFields.map((i) => i.name));
387
+ for (const i of s.requiredFields)
388
+ n.has(i.name) || this.logIssue(`Layer '${e.name}' is missing required field '${i.name}'.`);
389
+ }
390
+ validateLayer(e, s) {
391
+ !s && e.typeMutable === !0 && e.type === "Table" && this.logIssue(
392
+ `Layer '${e.name}' cannot be a Table. It may be a Point, Line, or Polygon.`
393
+ ), this.validateLayerFields(e);
394
+ }
395
+ validateLayerFields(e) {
396
+ const s = /* @__PURE__ */ new Set([
397
+ "objectid",
398
+ "globalid",
399
+ "created_date",
400
+ "created_user",
401
+ "last_edited_date",
402
+ "last_edited_user"
403
+ ]), n = e.customFields.map((c) => c.name), i = new Set(e.requiredFields.map((c) => c.name)), o = [...new Set(
404
+ n.filter((c) => s.has(c))
405
+ )];
406
+ for (const c of o)
407
+ this.logIssue(`Layer '${e.name}' field '${c}' collides with a reserved system field name.`);
408
+ const a = [...new Set(
409
+ n.filter((c) => i.has(c))
410
+ )];
411
+ for (const c of a)
412
+ this.logIssue(`Layer '${e.name}' field '${c}' collides with a required field name.`);
413
+ if (!o.length && !a.length) {
414
+ const c = e.systemFields ?? [], m = [
415
+ ...e.customFields,
416
+ ...e.requiredFields,
417
+ ...c
418
+ ].map((f) => f.name);
419
+ m.length !== new Set(m).size && this.logIssue(`Layer '${e.name}' has duplicate fields: ${JSON.stringify(m)}.`);
355
420
  }
356
- }
357
- codespan(i) {
358
- let e = this.rules.inline.code.exec(i);
359
- if (e) {
360
- let t = e[2].replace(this.rules.other.newLineCharGlobal, " "), n = this.rules.other.nonSpaceChar.test(t), s = this.rules.other.startingSpaceChar.test(t) && this.rules.other.endingSpaceChar.test(t);
361
- return n && s && (t = t.substring(1, t.length - 1)), { type: "codespan", raw: e[0], text: t };
421
+ const l = e.systemFields ?? [], u = [...e.customFields, ...e.requiredFields, ...l].map((c) => c.name.toLowerCase());
422
+ this.fieldNameRegistry = new Set(u);
423
+ for (const c of [...e.customFields, ...e.requiredFields])
424
+ this.validateField(c);
425
+ this.fieldNameRegistry = null;
426
+ }
427
+ getUniqueTruncatedFieldName(e) {
428
+ const n = this.fieldNameRegistry;
429
+ if (!n)
430
+ return e.slice(0, 31);
431
+ const i = e.toLowerCase();
432
+ n.delete(i);
433
+ const o = e.slice(0, 31);
434
+ let a = o, l = 1;
435
+ for (; n.has(a.toLowerCase()); ) {
436
+ const u = `_${l}`, c = Math.max(1, 31 - u.length);
437
+ a = `${o.slice(0, c)}${u}`, l += 1;
362
438
  }
363
- }
364
- br(i) {
365
- let e = this.rules.inline.br.exec(i);
366
- if (e) return { type: "br", raw: e[0] };
367
- }
368
- del(i, e, t = "") {
369
- let n = this.rules.inline.delLDelim.exec(i);
370
- if (n && (!n[1] || !t || this.rules.inline.punctuation.exec(t))) {
371
- let s = [...n[0]].length - 1, a, r, l = s, o = this.rules.inline.delRDelim;
372
- for (o.lastIndex = 0, e = e.slice(-1 * i.length + s); (n = o.exec(e)) != null; ) {
373
- if (a = n[1] || n[2] || n[3] || n[4] || n[5] || n[6], !a || (r = [...a].length, r !== s)) continue;
374
- if (n[3] || n[4]) {
375
- l += r;
376
- continue;
377
- }
378
- if (l -= r, l > 0) continue;
379
- r = Math.min(r, r + l);
380
- let h = [...n[0]][0].length, c = i.slice(0, s + n.index + h + r), p = c.slice(s, -s);
381
- return { type: "del", raw: c, text: p, tokens: this.lexer.inlineTokens(p) };
382
- }
439
+ return n.add(a.toLowerCase()), a;
440
+ }
441
+ validateField(e) {
442
+ const s = /^\p{L}/u, n = /^.[\p{L}\p{M}\p{N}_]*$/u;
443
+ if (e.alias || this.logIssue(`Field '${e.name}' has no display name (alias).`), s.test(e.name) || this.logIssue(`Field '${e.name}' does not start with a letter.`), n.test(e.name) || this.logIssue(
444
+ `Field '${e.name}' contains invalid characters (only letters from any writing system, numbers, and underscores are allowed; emojis and punctuation are not allowed).`
445
+ ), e.name.length > 31)
446
+ if (this.newDesign) {
447
+ const i = e.name;
448
+ e.name = this.getUniqueTruncatedFieldName(e.name), console.debug(`Field '${i}' exceeds 31 characters. Auto-fixing to '${e.name}'.`);
449
+ } else
450
+ this.logIssue(`Field '${e.name}' exceeds 31 characters.`);
451
+ if (it.has(e.name.toLowerCase()) && this.logIssue(`Field '${e.name}' is a SQL reserved keyword.`), e.choiceList && (e.type !== "string" && this.logIssue(`Field '${e.name}' must be of type 'string' to have a domain.`), e.choiceList.some((i) => !i) && this.logIssue(`Field '${e.name}' has empty domain values.`), e.choiceList.length !== new Set(e.choiceList).size && this.logIssue(`Field '${e.name}' has duplicate domain values.`), e.length != null)) {
452
+ const i = Math.max(...e.choiceList.map((o) => o.length));
453
+ i > e.length && (this.newDesign ? (console.debug(`Field '${e.name}' length ${e.length} is insufficient for choiceList value of length ${i}. Auto-fixing to ${i}.`), e.length = i) : this.logIssue(`Field '${e.name}' length ${e.length} is insufficient for choiceList value of length ${i}.`));
383
454
  }
384
455
  }
385
- autolink(i) {
386
- let e = this.rules.inline.autolink.exec(i);
387
- if (e) {
388
- let t, n;
389
- return e[2] === "@" ? (t = e[1], n = "mailto:" + t) : (t = e[1], n = t), { type: "link", raw: e[0], text: t, href: n, tokens: [{ type: "text", raw: t, text: t }] };
390
- }
456
+ logIssue(e) {
457
+ console.debug(e), this.issues.push(e), this.isValid = !1;
391
458
  }
392
- url(i) {
393
- let e;
394
- if (e = this.rules.inline.url.exec(i)) {
395
- let t, n;
396
- if (e[2] === "@") t = e[0], n = "mailto:" + t;
397
- else {
398
- let s;
399
- do
400
- s = e[0], e[0] = this.rules.inline._backpedal.exec(e[0])?.[0] ?? "";
401
- while (s !== e[0]);
402
- t = e[0], e[1] === "www." ? n = "http://" + e[0] : n = e[0];
459
+ }
460
+ const ot = r.object({
461
+ key: r.string().describe("Stable key identifier for the string."),
462
+ value: r.string().describe("Display value for the string."),
463
+ description: r.string().describe("Explanation of where/how the string is used.")
464
+ }), at = r.object({
465
+ id: r.string().describe("ArcGIS item id (32 hex characters)."),
466
+ title: r.string().describe("Item title."),
467
+ description: r.string().describe("Item description."),
468
+ type: r.enum([
469
+ "Feature Layer (hosted)",
470
+ "Feature Layer (hosted, view)",
471
+ "Web Map",
472
+ "Instant App",
473
+ "Dashboard",
474
+ "Web Experience",
475
+ "Form",
476
+ "Table (hosted)",
477
+ "Table (hosted, view)",
478
+ "Hub Site Application",
479
+ "Hub Page",
480
+ "CSV",
481
+ "Data Pipeline",
482
+ "Desktop Application Template",
483
+ "Group",
484
+ "Notebook",
485
+ "QuickCapture Project"
486
+ ]).describe("ArcGIS item type.")
487
+ }), se = r.object({
488
+ name: r.string().describe("Field name."),
489
+ type: r.enum(["string", "integer", "double", "date", "oid", "guid", "globalid"]).describe("Field data type."),
490
+ alias: r.string().describe("Field alias for display."),
491
+ description: r.string().describe("Field description."),
492
+ choiceList: r.array(r.string()).nullable().describe(
493
+ "List of allowed values for string fields with a controlled vocabulary. Null if unrestricted or not applicable."
494
+ ),
495
+ length: r.number().int().nullable().describe("Maximum string length for string fields. Null for non-string fields.")
496
+ }), rt = r.object({
497
+ id: r.number().int().describe("Layer/table id within the feature service."),
498
+ type: r.enum(["Point", "Polyline", "Polygon", "Table"]).describe("Layer type."),
499
+ typeMutable: r.boolean().describe("Indicates whether the layer type can be changed."),
500
+ name: r.string().describe("Layer/table name."),
501
+ description: r.string().describe("Layer/table description."),
502
+ customFields: r.array(se).describe("User/business fields specific to the solution."),
503
+ requiredFields: r.array(se).describe("Fields required for solution functionality (e.g., relationship keys).")
504
+ }), lt = r.object({
505
+ itemId: r.string().describe("ArcGIS item id for the feature layer."),
506
+ addLayers: r.boolean().describe("Indicates whether new layers can be added during solution design."),
507
+ layers: r.array(rt)
508
+ }), G = r.object({
509
+ response: r.string().describe("Conversational response to the user's query."),
510
+ solution: r.object({
511
+ itemId: r.string().nullable().describe("ArcGIS item id of the source Solution template used for deployment. Preserve the existing value exactly when known; otherwise use null."),
512
+ title: r.string().describe("Title of the solution."),
513
+ description: r.string().describe("Description of the solution."),
514
+ tags: r.array(r.string()).describe("Keywords/tags associated with the solution."),
515
+ strings: r.array(ot).describe("Localized strings/labels used by apps (dashboards, forms, etc.).")
516
+ }),
517
+ items: r.array(at).describe("ArcGIS items that belong to the solution (apps, maps, layers, etc.)."),
518
+ featureLayer: lt.describe("Primary feature layer item and its schema/layers/tables details.")
519
+ }), ct = r.object({
520
+ op: r.enum(["add", "remove", "replace", "move", "copy"]).describe("RFC 6902 operation type."),
521
+ path: r.string().describe("RFC 6901 JSON Pointer to the target location."),
522
+ value: r.string().nullable().describe(`JSON-encoded value to apply (required for add and replace). Must be null — not an empty string — for remove, move, and copy operations. Serialize as a JSON string, e.g. '\\"text\\"' for a string, '[\\"a\\",\\"b\\"]' for an array, or '{\\"name\\":\\"x\\"}' for an object.`),
523
+ from: r.string().nullable().describe("RFC 6901 JSON Pointer to the source location (required for move and copy). Must be null — not an empty string — for all other operations.")
524
+ }), dt = r.object({
525
+ response: r.string().describe("Conversational response describing the accepted design changes."),
526
+ patches: r.array(ct).describe("Minimal RFC 6902 patch operations needed to update the current design.")
527
+ }), ut = r.object({
528
+ response: r.string().describe("Short, user-friendly explanation of why the requested update was not applied.")
529
+ }), pt = r.object({
530
+ assistantResponse: r.string().describe("Natural-language response for the user."),
531
+ isValidUpdate: r.boolean().describe("True only when the request is in scope for supported design updates.")
532
+ }), mt = r.object({
533
+ matchedTitles: r.array(r.string()).describe("Titles of solutions that match the user's request. Empty array if no strong match.")
534
+ }), gt = r.object({
535
+ templateId: r.string().min(1).describe("Template id from the available template list."),
536
+ confidence: r.number().min(0).max(1).describe("Confidence score from 0 to 1 for this template match."),
537
+ templateDescription: r.string().min(1).describe("Short action‑oriented description of the template in the user's use case/workflow, starting with a verb.")
538
+ }), ht = r.object({
539
+ assistantResponse: r.string().nullable().describe("Natural-language response for the user."),
540
+ isValidUseCase: r.boolean().describe("True only when the request is concrete, appropriate, and has at least one matching template."),
541
+ matchedTemplates: r.array(gt).describe("Ordered list of matching templates, best match first. Empty when no valid match exists."),
542
+ rationale: r.string().min(1).describe("A brief rationale for the choice for isValidUseCase and matchedTemplates (≤140 characters)")
543
+ }), ft = (t) => t.length ? t.map((e, s) => `${s + 1}. ${e}`).join(`
544
+ `) : "No validation errors were provided.", bt = async (t) => {
545
+ const {
546
+ query: e,
547
+ validationIssues: s,
548
+ recentMessages: n,
549
+ fallbackMessage: i,
550
+ promptModules: o
551
+ } = t;
552
+ try {
553
+ return (await T({
554
+ promptText: await y(o, "explainValidationFailure"),
555
+ modelTier: "fast",
556
+ temperature: 0,
557
+ schema: ut,
558
+ messages: n,
559
+ inputVariables: {
560
+ query: e,
561
+ validationIssueCount: String(s.length),
562
+ validationIssues: ft(s)
403
563
  }
404
- return { type: "link", raw: e[0], text: t, href: n, tokens: [{ type: "text", raw: t, text: t }] };
405
- }
406
- }
407
- inlineText(i) {
408
- let e = this.rules.inline.text.exec(i);
409
- if (e) {
410
- let t = this.lexer.state.inRawBlock;
411
- return { type: "text", raw: e[0], text: e[0], escaped: t };
412
- }
413
- }
414
- }, v = class j {
415
- tokens;
416
- options;
417
- state;
418
- inlineQueue;
419
- tokenizer;
420
- constructor(e) {
421
- this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = e || I, this.options.tokenizer = this.options.tokenizer || new D(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = { inLink: !1, inRawBlock: !1, top: !0 };
422
- let t = { other: b, block: N.normal, inline: L.normal };
423
- this.options.pedantic ? (t.block = N.pedantic, t.inline = L.pedantic) : this.options.gfm && (t.block = N.gfm, this.options.breaks ? t.inline = L.breaks : t.inline = L.gfm), this.tokenizer.rules = t;
424
- }
425
- static get rules() {
426
- return { block: N, inline: L };
427
- }
428
- static lex(e, t) {
429
- return new j(t).lex(e);
430
- }
431
- static lexInline(e, t) {
432
- return new j(t).inlineTokens(e);
564
+ })).response?.trim() || i;
565
+ } catch (a) {
566
+ return console.warn(
567
+ "Natural language response failed:",
568
+ { error: a }
569
+ ), i;
570
+ }
571
+ }, V = (t) => t in L, yt = 5, xt = 0.8, vt = 0.15, wt = "Web Mapping Application", St = "Embeddings";
572
+ let F = null, q = null, $ = null, M = null;
573
+ const It = "Build", C = /* @__PURE__ */ Object.assign({
574
+ "./prompts/assessBuildRequest.md": () => import("../../chunks/assessBuildRequest.js").then((t) => t.default),
575
+ "./prompts/assessUpdateRequest.md": () => import("../../chunks/assessUpdateRequest.js").then((t) => t.default),
576
+ "./prompts/description.md": () => import("../../chunks/description2.js").then((t) => t.default),
577
+ "./prompts/designSolution.md": () => import("../../chunks/designSolution.js").then((t) => t.default),
578
+ "./prompts/explainValidationFailure.md": () => import("../../chunks/explainValidationFailure.js").then((t) => t.default),
579
+ "./prompts/findExistingSolution.md": () => import("../../chunks/findExistingSolution.js").then((t) => t.default),
580
+ "./prompts/updateDesign.md": () => import("../../chunks/updateDesign.js").then((t) => t.default)
581
+ }), Ct = nt.builderMessages, h = (t, e, s) => B(e)?.builderMessages?.[t] ?? Ct[t], ge = (t) => {
582
+ typeof window < "u" && window.dispatchEvent(new CustomEvent("arcgis-solution-design-update", {
583
+ detail: t
584
+ }));
585
+ }, _t = async (t, e, s) => {
586
+ if (!t) return null;
587
+ const n = `type:"${wt}" AND typekeywords:${St} AND group:${t}`;
588
+ return (await J.searchItems({
589
+ q: n,
590
+ params: e ? { token: e } : void 0,
591
+ portal: s,
592
+ num: 1
593
+ }))?.results?.[0] ?? null;
594
+ };
595
+ async function Tt(t, e, s) {
596
+ try {
597
+ const n = await _t(t, e, s);
598
+ if (!n) return null;
599
+ const i = new Oe({ id: n.id });
600
+ return await i.load(), await i.fetchData("json");
601
+ } catch {
602
+ return null;
433
603
  }
434
- lex(e) {
435
- e = e.replace(b.carriageReturn, `
436
- `), this.blockTokens(e, this.tokens);
437
- for (let t = 0; t < this.inlineQueue.length; t++) {
438
- let n = this.inlineQueue[t];
439
- this.inlineTokens(n.src, n.tokens);
440
- }
441
- return this.inlineQueue = [], this.tokens;
604
+ }
605
+ const kt = async (t, e, s) => {
606
+ if (!t) return [];
607
+ const n = `type:Solution AND typekeywords:${It} AND group:${t}`;
608
+ return (await J.searchItems({
609
+ q: n,
610
+ params: e ? { token: e } : void 0,
611
+ portal: s,
612
+ num: 100
613
+ }))?.results ?? [];
614
+ }, Et = async (t, e, s) => {
615
+ try {
616
+ const n = await J.getItemData(t, {
617
+ params: e ? { token: e } : void 0,
618
+ portal: s
619
+ }), i = n?.buildSolution;
620
+ if (!i) return null;
621
+ const o = n?.params, a = o && typeof o == "object" && !Array.isArray(o) ? o : null;
622
+ return { buildSolution: i, params: a };
623
+ } catch {
624
+ return null;
442
625
  }
443
- blockTokens(e, t = [], n = !1) {
444
- for (this.options.pedantic && (e = e.replace(b.tabCharGlobal, " ").replace(b.spaceLine, "")); e; ) {
445
- let s;
446
- if (this.options.extensions?.block?.some((r) => (s = r.call({ lexer: this }, e, t)) ? (e = e.substring(s.raw.length), t.push(s), !0) : !1)) continue;
447
- if (s = this.tokenizer.space(e)) {
448
- e = e.substring(s.raw.length);
449
- let r = t.at(-1);
450
- s.raw.length === 1 && r !== void 0 ? r.raw += `
451
- ` : t.push(s);
452
- continue;
453
- }
454
- if (s = this.tokenizer.code(e)) {
455
- e = e.substring(s.raw.length);
456
- let r = t.at(-1);
457
- r?.type === "paragraph" || r?.type === "text" ? (r.raw += (r.raw.endsWith(`
458
- `) ? "" : `
459
- `) + s.raw, r.text += `
460
- ` + s.text, this.inlineQueue.at(-1).src = r.text) : t.push(s);
461
- continue;
462
- }
463
- if (s = this.tokenizer.fences(e)) {
464
- e = e.substring(s.raw.length), t.push(s);
465
- continue;
466
- }
467
- if (s = this.tokenizer.heading(e)) {
468
- e = e.substring(s.raw.length), t.push(s);
469
- continue;
470
- }
471
- if (s = this.tokenizer.hr(e)) {
472
- e = e.substring(s.raw.length), t.push(s);
473
- continue;
474
- }
475
- if (s = this.tokenizer.blockquote(e)) {
476
- e = e.substring(s.raw.length), t.push(s);
477
- continue;
478
- }
479
- if (s = this.tokenizer.list(e)) {
480
- e = e.substring(s.raw.length), t.push(s);
481
- continue;
482
- }
483
- if (s = this.tokenizer.html(e)) {
484
- e = e.substring(s.raw.length), t.push(s);
485
- continue;
486
- }
487
- if (s = this.tokenizer.def(e)) {
488
- e = e.substring(s.raw.length);
489
- let r = t.at(-1);
490
- r?.type === "paragraph" || r?.type === "text" ? (r.raw += (r.raw.endsWith(`
491
- `) ? "" : `
492
- `) + s.raw, r.text += `
493
- ` + s.raw, this.inlineQueue.at(-1).src = r.text) : this.tokens.links[s.tag] || (this.tokens.links[s.tag] = { href: s.href, title: s.title }, t.push(s));
494
- continue;
495
- }
496
- if (s = this.tokenizer.table(e)) {
497
- e = e.substring(s.raw.length), t.push(s);
498
- continue;
499
- }
500
- if (s = this.tokenizer.lheading(e)) {
501
- e = e.substring(s.raw.length), t.push(s);
502
- continue;
503
- }
504
- let a = e;
505
- if (this.options.extensions?.startBlock) {
506
- let r = 1 / 0, l = e.slice(1), o;
507
- this.options.extensions.startBlock.forEach((h) => {
508
- o = h.call({ lexer: this }, l), typeof o == "number" && o >= 0 && (r = Math.min(r, o));
509
- }), r < 1 / 0 && r >= 0 && (a = e.substring(0, r + 1));
510
- }
511
- if (this.state.top && (s = this.tokenizer.paragraph(a))) {
512
- let r = t.at(-1);
513
- n && r?.type === "paragraph" ? (r.raw += (r.raw.endsWith(`
514
- `) ? "" : `
515
- `) + s.raw, r.text += `
516
- ` + s.text, this.inlineQueue.pop(), this.inlineQueue.at(-1).src = r.text) : t.push(s), n = a.length !== e.length, e = e.substring(s.raw.length);
517
- continue;
518
- }
519
- if (s = this.tokenizer.text(e)) {
520
- e = e.substring(s.raw.length);
521
- let r = t.at(-1);
522
- r?.type === "text" ? (r.raw += (r.raw.endsWith(`
523
- `) ? "" : `
524
- `) + s.raw, r.text += `
525
- ` + s.text, this.inlineQueue.pop(), this.inlineQueue.at(-1).src = r.text) : t.push(s);
526
- continue;
527
- }
528
- if (e) {
529
- let r = "Infinite loop on byte: " + e.charCodeAt(0);
530
- if (this.options.silent) {
531
- console.error(r);
532
- break;
533
- } else throw new Error(r);
534
- }
626
+ }, _ = (t, e = {}) => {
627
+ let s = t;
628
+ return "itemId" in e && (s = {
629
+ ...s,
630
+ solution: {
631
+ ...s.solution,
632
+ itemId: e.itemId ?? null
535
633
  }
536
- return this.state.top = !0, t;
537
- }
538
- inline(e, t = []) {
539
- return this.inlineQueue.push({ src: e, tokens: t }), t;
634
+ }), e.sourceBuildSolution != null && (s = {
635
+ ...s,
636
+ sourceBuildSolution: e.sourceBuildSolution
637
+ }), "params" in e && (s = {
638
+ ...s,
639
+ params: e.params ?? null
640
+ }), "templateId" in e && (s = {
641
+ ...s,
642
+ templateId: e.templateId ?? null
643
+ }), s;
644
+ }, he = (t, e) => {
645
+ if (t == null || e == null)
646
+ return { ok: !1, error: "design or sourceBuildSolution is null/undefined" };
647
+ try {
648
+ const s = structuredClone(e);
649
+ return new ie({ buildSolution: s }).applyLlmTemplate(t), { ok: !0 };
650
+ } catch (s) {
651
+ return {
652
+ ok: !1,
653
+ error: s instanceof Error ? s.stack ?? s.message : String(s)
654
+ };
540
655
  }
541
- inlineTokens(e, t = []) {
542
- let n = e, s = null;
543
- if (this.tokens.links) {
544
- let o = Object.keys(this.tokens.links);
545
- if (o.length > 0) for (; (s = this.tokenizer.rules.inline.reflinkSearch.exec(n)) != null; ) o.includes(s[0].slice(s[0].lastIndexOf("[") + 1, -1)) && (n = n.slice(0, s.index) + "[" + "a".repeat(s[0].length - 2) + "]" + n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex));
656
+ }, H = async (t) => {
657
+ if (q) {
658
+ Object.entries(q).forEach(([a, l]) => {
659
+ L[a] && (L[a].initialTemplate = l);
660
+ });
661
+ return;
662
+ }
663
+ const e = t?.configurable?.context?.token, s = be(t), n = ye(t);
664
+ if (!s) {
665
+ console.warn("Solution Builder: missing primarySolutionsGroupId in appConfig; skipping live template hydration.");
666
+ return;
667
+ }
668
+ const i = await kt(s, e, n), o = {};
669
+ await Promise.all(i.map(async (a) => {
670
+ const l = a.properties?.templateInfo;
671
+ if (!l || typeof l != "object") return;
672
+ const u = l.id;
673
+ if (typeof u != "string" || o[u]) return;
674
+ const c = await Et(a.id, e, n);
675
+ if (!c) return;
676
+ const { buildSolution: m, params: f } = c;
677
+ if (typeof m == "object" && m !== null && "solution" in m) {
678
+ const g = m.solution;
679
+ g.thumbnailUrl = a.thumbnail ? `${n ?? "https://www.arcgis.com/sharing/rest"}/content/items/${a.id}/info/${a.thumbnail}` : void 0, g.item = a;
546
680
  }
547
- for (; (s = this.tokenizer.rules.inline.anyPunctuation.exec(n)) != null; ) n = n.slice(0, s.index) + "++" + n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);
548
- let a;
549
- for (; (s = this.tokenizer.rules.inline.blockSkip.exec(n)) != null; ) a = s[2] ? s[2].length : 0, n = n.slice(0, s.index + a) + "[" + "a".repeat(s[0].length - a - 2) + "]" + n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);
550
- n = this.options.hooks?.emStrongMask?.call({ lexer: this }, n) ?? n;
551
- let r = !1, l = "";
552
- for (; e; ) {
553
- r || (l = ""), r = !1;
554
- let o;
555
- if (this.options.extensions?.inline?.some((c) => (o = c.call({ lexer: this }, e, t)) ? (e = e.substring(o.raw.length), t.push(o), !0) : !1)) continue;
556
- if (o = this.tokenizer.escape(e)) {
557
- e = e.substring(o.raw.length), t.push(o);
558
- continue;
559
- }
560
- if (o = this.tokenizer.tag(e)) {
561
- e = e.substring(o.raw.length), t.push(o);
562
- continue;
563
- }
564
- if (o = this.tokenizer.link(e)) {
565
- e = e.substring(o.raw.length), t.push(o);
566
- continue;
567
- }
568
- if (o = this.tokenizer.reflink(e, this.tokens.links)) {
569
- e = e.substring(o.raw.length);
570
- let c = t.at(-1);
571
- o.type === "text" && c?.type === "text" ? (c.raw += o.raw, c.text += o.text) : t.push(o);
572
- continue;
573
- }
574
- if (o = this.tokenizer.emStrong(e, n, l)) {
575
- e = e.substring(o.raw.length), t.push(o);
576
- continue;
577
- }
578
- if (o = this.tokenizer.codespan(e)) {
579
- e = e.substring(o.raw.length), t.push(o);
580
- continue;
581
- }
582
- if (o = this.tokenizer.br(e)) {
583
- e = e.substring(o.raw.length), t.push(o);
584
- continue;
585
- }
586
- if (o = this.tokenizer.del(e, n, l)) {
587
- e = e.substring(o.raw.length), t.push(o);
588
- continue;
589
- }
590
- if (o = this.tokenizer.autolink(e)) {
591
- e = e.substring(o.raw.length), t.push(o);
592
- continue;
593
- }
594
- if (!this.state.inLink && (o = this.tokenizer.url(e))) {
595
- e = e.substring(o.raw.length), t.push(o);
596
- continue;
681
+ const d = {
682
+ ...l,
683
+ buildSolution: m
684
+ };
685
+ o[u] = _(
686
+ new ie(d).dumpToLlmTemplate(),
687
+ {
688
+ itemId: a.id,
689
+ sourceBuildSolution: structuredClone(m),
690
+ params: f ? structuredClone(f) : null
597
691
  }
598
- let h = e;
599
- if (this.options.extensions?.startInline) {
600
- let c = 1 / 0, p = e.slice(1), u;
601
- this.options.extensions.startInline.forEach((g) => {
602
- u = g.call({ lexer: this }, p), typeof u == "number" && u >= 0 && (c = Math.min(c, u));
603
- }), c < 1 / 0 && c >= 0 && (h = e.substring(0, c + 1));
692
+ ), L[u] = {
693
+ ...l,
694
+ initialTemplate: o[u]
695
+ };
696
+ })), q = o;
697
+ }, fe = (t) => {
698
+ const e = t?.configurable?.context?.token;
699
+ return typeof e != "string" || !e.trim() ? null : e;
700
+ }, be = (t) => {
701
+ const e = t?.configurable?.context?.configContext?.primarySolutionsGroupId;
702
+ return typeof e != "string" || !e.trim() ? null : e;
703
+ }, ye = (t) => {
704
+ const e = t?.configurable?.context?.configContext?.portalURL;
705
+ if (!(typeof e != "string" || !e.trim()))
706
+ return `${e.replace(/\/+$/, "")}/sharing/rest`;
707
+ }, At = async (t) => {
708
+ await Promise.all([
709
+ ve(t),
710
+ H(t)
711
+ ]);
712
+ }, xe = async (t) => {
713
+ const e = fe(t);
714
+ (!$ || e && e !== M) && (M = e ?? M, $ = At(t).catch((n) => {
715
+ throw $ = null, M = null, n;
716
+ })), await $;
717
+ };
718
+ async function ve(t) {
719
+ if (F) return F;
720
+ const e = be(t);
721
+ if (!e)
722
+ return console.warn("Solution Builder: missing primarySolutionsGroupId in appConfig; skipping embeddings load."), null;
723
+ const s = ye(t), n = t?.configurable?.context?.configContext?.portalURL;
724
+ await new Ue(n ? { url: n } : void 0).load();
725
+ const o = fe(t) ?? void 0, a = await Tt(e, o, s);
726
+ return a ? (F = a.items, F) : null;
727
+ }
728
+ const Lt = () => Object.entries(L).map(([t, e]) => `ID: ${t}
729
+ Label: ${e.label}
730
+ Description: ${e.description}`).join(`
731
+
732
+ `), Rt = (t) => {
733
+ const e = t?.configurable?.context?.solutionDesignJson;
734
+ if (typeof e != "string" || !e.trim())
735
+ return null;
736
+ try {
737
+ const s = JSON.parse(e), n = _(
738
+ { response: "", ...s },
739
+ { itemId: s?.solution?.itemId ?? null }
740
+ ), i = G.safeParse(n);
741
+ if (!i.success)
742
+ return null;
743
+ const { response: o, ...a } = i.data, l = s.templateId, u = typeof l == "string" && V(l) ? l : null;
744
+ return _(
745
+ a,
746
+ {
747
+ sourceBuildSolution: s.sourceBuildSolution,
748
+ templateId: u,
749
+ params: s.params ?? null
604
750
  }
605
- if (o = this.tokenizer.inlineText(h)) {
606
- e = e.substring(o.raw.length), o.raw.slice(-1) !== "_" && (l = o.raw.slice(-1)), r = !0;
607
- let c = t.at(-1);
608
- c?.type === "text" ? (c.raw += o.raw, c.text += o.text) : t.push(o);
609
- continue;
751
+ );
752
+ } catch {
753
+ return null;
754
+ }
755
+ }, Dt = b.Root({
756
+ ...j(),
757
+ /** Optional human-readable template description retained for UI use. */
758
+ templateDescription: b({
759
+ reducer: (t, e) => typeof e == "string" || e === null ? e : t ?? null,
760
+ default: () => null
761
+ }),
762
+ /** Current editable design payload being refined across turns. */
763
+ currentDesign: b({
764
+ reducer: (t = null, e) => e === void 0 ? t : e ?? null,
765
+ default: () => null
766
+ }),
767
+ /** Initial request assessment produced by the intake prompt. */
768
+ assessment: b({
769
+ reducer: (t = null, e) => e === void 0 ? t : e ?? null,
770
+ default: () => null
771
+ }),
772
+ /** Template selected automatically or by human-in-the-loop choice. */
773
+ selectedTemplate: b({
774
+ reducer: (t = null, e) => e === void 0 ? t : e ?? null,
775
+ default: () => null
776
+ }),
777
+ /** Update request assessment produced when an active design exists. */
778
+ updateAssessment: b({
779
+ reducer: (t = null, e) => e === void 0 ? t : e ?? null,
780
+ default: () => null
781
+ }),
782
+ /** Existing solution matches surfaced before building a new solution. */
783
+ existingMatches: b({
784
+ reducer: (t = [], e) => e === void 0 ? t : e ?? [],
785
+ default: () => []
786
+ }),
787
+ /** User decision for whether to continue building after existing matches are shown. */
788
+ continueBuilding: b({
789
+ reducer: (t = null, e) => e === void 0 ? t : e ?? null,
790
+ default: () => null
791
+ })
792
+ }), Ft = (t, e) => {
793
+ const s = Rt(e), n = s?.templateId ?? null, i = {};
794
+ return JSON.stringify(t.currentDesign) !== JSON.stringify(s) && (i.currentDesign = s), n && t.selectedTemplate !== n && (i.selectedTemplate = n), i;
795
+ }, $t = async (t, e) => {
796
+ await w({ text: h("understandingRequest", e) }, e), await xe(e);
797
+ const s = t.agentExecutionContext.userRequest, n = Lt(), i = t.agentExecutionContext.messages.slice(-11), o = await T({
798
+ promptText: await y(C, "assessBuildRequest"),
799
+ modelTier: "advanced",
800
+ temperature: 0,
801
+ schema: ht,
802
+ messages: i,
803
+ inputVariables: { query: s, availableTemplates: n }
804
+ }), a = o.matchedTemplates.filter(
805
+ (d) => V(d.templateId)
806
+ ), l = {
807
+ ...o,
808
+ matchedTemplates: a
809
+ }, [u, c] = a, f = !!u && u.confidence >= xt && (c === void 0 || u.confidence - c.confidence >= vt) ? u.templateId : null;
810
+ return {
811
+ assessment: l,
812
+ selectedTemplate: f,
813
+ existingMatches: [],
814
+ continueBuilding: null
815
+ };
816
+ }, Mt = (t) => {
817
+ const e = t.assessment?.assistantResponse ?? "";
818
+ return {
819
+ outputMessage: e,
820
+ summary: e,
821
+ status: "success"
822
+ };
823
+ }, Nt = async (t, e) => {
824
+ const { currentDesign: s } = t;
825
+ if (!s)
826
+ return {
827
+ updateAssessment: {
828
+ assistantResponse: "",
829
+ isValidUpdate: !0
610
830
  }
611
- if (e) {
612
- let c = "Infinite loop on byte: " + e.charCodeAt(0);
613
- if (this.options.silent) {
614
- console.error(c);
615
- break;
616
- } else throw new Error(c);
831
+ };
832
+ await w({ text: h("understandingRequest", e) }, e);
833
+ const n = t.agentExecutionContext.userRequest, i = t.agentExecutionContext.messages.slice(-11);
834
+ return {
835
+ updateAssessment: await T({
836
+ promptText: await y(C, "assessUpdateRequest"),
837
+ modelTier: "advanced",
838
+ temperature: 0,
839
+ schema: pt,
840
+ messages: i,
841
+ inputVariables: {
842
+ currentDesign: JSON.stringify(oe(s)),
843
+ query: n
617
844
  }
845
+ })
846
+ };
847
+ }, Bt = (t, e) => {
848
+ const s = t.updateAssessment?.assistantResponse ?? h("applyChangeFailed", e);
849
+ return {
850
+ outputMessage: s,
851
+ summary: s,
852
+ status: "success"
853
+ };
854
+ }, Pt = (t, e) => {
855
+ const { hitlResponse: s } = e.configurable, n = "selectTemplate", i = t.assessment?.matchedTemplates.filter(
856
+ (c) => V(c.templateId)
857
+ ) ?? [], o = i.map((c) => `${c.templateDescription}`);
858
+ if (s?.agentId !== "solutionBuilder" || s.id !== n) {
859
+ const c = {
860
+ agentId: "solutionBuilder",
861
+ id: n,
862
+ kind: "singleSelection",
863
+ message: h("selectTemplatePrompt", e),
864
+ metadata: [...o]
865
+ };
866
+ throw new ne(c);
867
+ }
868
+ const a = String(s.payload ?? ""), l = o.findIndex((c) => c === a);
869
+ return {
870
+ selectedTemplate: (l >= 0 ? i[l] : void 0)?.templateId ?? i[0]?.templateId ?? null
871
+ };
872
+ }, qt = async (t, e) => {
873
+ await w({ text: h("searchingExistingSolutions", e) }, e);
874
+ const s = t.agentExecutionContext.userRequest, n = tt(t.agentExecutionContext.messages) || s, i = await ve(e);
875
+ if (!i)
876
+ return console.warn("Solutions Search: failed to load solution embeddings cache; skipping search."), { existingMatches: [] };
877
+ if (!i.length)
878
+ return { existingMatches: [] };
879
+ const [o] = await Ne([n]), a = i.map((d) => ({
880
+ solution: d,
881
+ score: Be(o, d.embedding)
882
+ }));
883
+ a.sort((d, g) => g.score - d.score);
884
+ const l = a.slice(0, yt);
885
+ if (!l.length)
886
+ return { existingMatches: [] };
887
+ const u = l.map(({ solution: d }) => `${d.title}
888
+ Snippet: ${d.snippet}
889
+ Description: ${d.description}`).join(`
890
+
891
+ `), c = t.agentExecutionContext.messages.slice(-11);
892
+ return { existingMatches: (await T({
893
+ promptText: await y(C, "findExistingSolution"),
894
+ modelTier: "fast",
895
+ temperature: 0,
896
+ schema: mt,
897
+ messages: c,
898
+ inputVariables: { query: s, candidates: u }
899
+ })).matchedTitles.map((d) => l.find(({ solution: g }) => g.title === d)).filter((d) => d !== void 0) };
900
+ }, Ut = (t, e) => {
901
+ const { existingMatches: s } = t, { hitlResponse: n } = e.configurable, i = `confirmExistingSolution:${s[0].solution.id}`;
902
+ if (n?.agentId !== "solutionBuilder" || n.id !== i) {
903
+ s.length === 1 ? ce(s[0].solution.id) : le(s);
904
+ const u = h("existingSolutionMatch", e), c = [
905
+ h("continueBuildingYes", e),
906
+ h("continueBuildingNo", e)
907
+ ], m = {
908
+ agentId: "solutionBuilder",
909
+ id: i,
910
+ kind: "singleSelection",
911
+ message: u,
912
+ metadata: c
913
+ };
914
+ throw new ne(m);
915
+ }
916
+ const o = String(n.payload ?? "").trim(), a = h("continueBuildingNo", e);
917
+ return { continueBuilding: o !== a };
918
+ }, Ot = (t, e) => {
919
+ const s = h("continueBuildingDeclined", e);
920
+ return {
921
+ outputMessage: s,
922
+ summary: s,
923
+ status: "success"
924
+ };
925
+ }, we = async (t, e) => {
926
+ await xe(e);
927
+ const { currentDesign: s } = t, n = t.agentExecutionContext.userRequest;
928
+ await w({ text: h("creatingDesign", e) }, e);
929
+ let i = N(t.selectedTemplate);
930
+ if (i?.initialTemplate || (await H(e), i = N(t.selectedTemplate)), !i?.initialTemplate)
931
+ throw new Error("No hydrated templates are available for solution design.");
932
+ const o = _(
933
+ s ?? i.initialTemplate,
934
+ {
935
+ itemId: (s ?? i.initialTemplate)?.solution?.itemId ?? null,
936
+ sourceBuildSolution: s?.sourceBuildSolution ?? i.initialTemplate.sourceBuildSolution,
937
+ params: s?.params ?? i.initialTemplate.params ?? null
618
938
  }
619
- return t;
620
- }
621
- }, U = class {
622
- options;
623
- parser;
624
- constructor(i) {
625
- this.options = i || I;
626
- }
627
- space(i) {
628
- return "";
629
- }
630
- code({ text: i, lang: e, escaped: t }) {
631
- let n = (e || "").match(b.notSpaceStart)?.[0], s = i.replace(b.endingNewline, "") + `
632
- `;
633
- return n ? '<pre><code class="language-' + S(n) + '">' + (t ? s : S(s, !0)) + `</code></pre>
634
- ` : "<pre><code>" + (t ? s : S(s, !0)) + `</code></pre>
635
- `;
636
- }
637
- blockquote({ tokens: i }) {
638
- return `<blockquote>
639
- ${this.parser.parse(i)}</blockquote>
640
- `;
641
- }
642
- html({ text: i }) {
643
- return i;
644
- }
645
- def(i) {
646
- return "";
647
- }
648
- heading({ tokens: i, depth: e }) {
649
- return `<h${e}>${this.parser.parseInline(i)}</h${e}>
650
- `;
651
- }
652
- hr(i) {
653
- return `<hr>
654
- `;
655
- }
656
- list(i) {
657
- let e = i.ordered, t = i.start, n = "";
658
- for (let r = 0; r < i.items.length; r++) {
659
- let l = i.items[r];
660
- n += this.listitem(l);
939
+ ), a = t.agentExecutionContext.messages.slice(-11), l = await T({
940
+ promptText: await y(C, "designSolution"),
941
+ modelTier: "advanced",
942
+ temperature: 0,
943
+ schema: G,
944
+ messages: a,
945
+ inputVariables: {
946
+ currentDesign: JSON.stringify(ae(o)),
947
+ templateInstructions: i.instructions,
948
+ query: n
661
949
  }
662
- let s = e ? "ol" : "ul", a = e && t !== 1 ? ' start="' + t + '"' : "";
663
- return "<" + s + a + `>
664
- ` + n + "</" + s + `>
665
- `;
666
- }
667
- listitem(i) {
668
- return `<li>${this.parser.parse(i.tokens)}</li>
669
- `;
670
- }
671
- checkbox({ checked: i }) {
672
- return "<input " + (i ? 'checked="" ' : "") + 'disabled="" type="checkbox"> ';
673
- }
674
- paragraph({ tokens: i }) {
675
- return `<p>${this.parser.parseInline(i)}</p>
676
- `;
677
- }
678
- table(i) {
679
- let e = "", t = "";
680
- for (let s = 0; s < i.header.length; s++) t += this.tablecell(i.header[s]);
681
- e += this.tablerow({ text: t });
682
- let n = "";
683
- for (let s = 0; s < i.rows.length; s++) {
684
- let a = i.rows[s];
685
- t = "";
686
- for (let r = 0; r < a.length; r++) t += this.tablecell(a[r]);
687
- n += this.tablerow({ text: t });
950
+ }), { response: u, featureLayer: c, ...m } = l, f = re(
951
+ c,
952
+ o.featureLayer
953
+ ), d = _(
954
+ { ...m, featureLayer: f },
955
+ {
956
+ itemId: o?.solution?.itemId,
957
+ sourceBuildSolution: o.sourceBuildSolution,
958
+ templateId: t.selectedTemplate ?? null,
959
+ params: o.params ?? null
688
960
  }
689
- return n && (n = `<tbody>${n}</tbody>`), `<table>
690
- <thead>
691
- ` + e + `</thead>
692
- ` + n + `</table>
693
- `;
694
- }
695
- tablerow({ text: i }) {
696
- return `<tr>
697
- ${i}</tr>
698
- `;
699
- }
700
- tablecell(i) {
701
- let e = this.parser.parseInline(i.tokens), t = i.header ? "th" : "td";
702
- return (i.align ? `<${t} align="${i.align}">` : `<${t}>`) + e + `</${t}>
703
- `;
704
- }
705
- strong({ tokens: i }) {
706
- return `<strong>${this.parser.parseInline(i)}</strong>`;
707
- }
708
- em({ tokens: i }) {
709
- return `<em>${this.parser.parseInline(i)}</em>`;
710
- }
711
- codespan({ text: i }) {
712
- return `<code>${S(i, !0)}</code>`;
713
- }
714
- br(i) {
715
- return "<br>";
716
- }
717
- del({ tokens: i }) {
718
- return `<del>${this.parser.parseInline(i)}</del>`;
719
- }
720
- link({ href: i, title: e, tokens: t }) {
721
- let n = this.parser.parseInline(t), s = he(i);
722
- if (s === null) return n;
723
- i = s;
724
- let a = '<a href="' + i + '"';
725
- return e && (a += ' title="' + S(e) + '"'), a += ">" + n + "</a>", a;
726
- }
727
- image({ href: i, title: e, text: t, tokens: n }) {
728
- n && (t = this.parser.parseInline(n, this.parser.textRenderer));
729
- let s = he(i);
730
- if (s === null) return S(t);
731
- i = s;
732
- let a = `<img src="${i}" alt="${S(t)}"`;
733
- return e && (a += ` title="${S(e)}"`), a += ">", a;
734
- }
735
- text(i) {
736
- return "tokens" in i && i.tokens ? this.parser.parseInline(i.tokens) : "escaped" in i && i.escaped ? i.text : S(i.text);
737
- }
738
- }, se = class {
739
- strong({ text: i }) {
740
- return i;
741
- }
742
- em({ text: i }) {
743
- return i;
744
- }
745
- codespan({ text: i }) {
746
- return i;
747
- }
748
- del({ text: i }) {
749
- return i;
750
- }
751
- html({ text: i }) {
752
- return i;
753
- }
754
- text({ text: i }) {
755
- return i;
756
- }
757
- link({ text: i }) {
758
- return "" + i;
759
- }
760
- image({ text: i }) {
761
- return "" + i;
762
- }
763
- br() {
764
- return "";
765
- }
766
- checkbox({ raw: i }) {
767
- return i;
768
- }
769
- }, y = class G {
770
- options;
771
- renderer;
772
- textRenderer;
773
- constructor(e) {
774
- this.options = e || I, this.options.renderer = this.options.renderer || new U(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new se();
775
- }
776
- static parse(e, t) {
777
- return new G(t).parse(e);
778
- }
779
- static parseInline(e, t) {
780
- return new G(t).parseInline(e);
961
+ ), g = new me(d, i.initialTemplate);
962
+ if (!g.isValid)
963
+ return console.warn(
964
+ "[SolutionBuilder] designSolution validation failed:",
965
+ { issues: g.issues, llmResponse: l }
966
+ ), {
967
+ outputMessage: h("createDesignFailed", e)
968
+ };
969
+ const A = d.sourceBuildSolution, k = he(d, A);
970
+ if (!k.ok) {
971
+ console.warn(
972
+ "[SolutionBuilder] designSolution Esri JSON conversion failed:",
973
+ { error: k.error, llmResponse: l, design: d }
974
+ );
975
+ const E = h("createDesignFailed", e);
976
+ return {
977
+ outputMessage: E,
978
+ summary: E,
979
+ status: "success"
980
+ };
781
981
  }
782
- parse(e) {
783
- let t = "";
784
- for (let n = 0; n < e.length; n++) {
785
- let s = e[n];
786
- if (this.options.extensions?.renderers?.[s.type]) {
787
- let r = s, l = this.options.extensions.renderers[r.type].call({ parser: this }, r);
788
- if (l !== !1 || !["space", "hr", "heading", "code", "table", "blockquote", "list", "html", "def", "paragraph", "text"].includes(r.type)) {
789
- t += l || "";
790
- continue;
791
- }
792
- }
793
- let a = s;
794
- switch (a.type) {
795
- case "space": {
796
- t += this.renderer.space(a);
797
- break;
798
- }
799
- case "hr": {
800
- t += this.renderer.hr(a);
801
- break;
802
- }
803
- case "heading": {
804
- t += this.renderer.heading(a);
805
- break;
806
- }
807
- case "code": {
808
- t += this.renderer.code(a);
809
- break;
810
- }
811
- case "table": {
812
- t += this.renderer.table(a);
813
- break;
814
- }
815
- case "blockquote": {
816
- t += this.renderer.blockquote(a);
817
- break;
818
- }
819
- case "list": {
820
- t += this.renderer.list(a);
821
- break;
822
- }
823
- case "checkbox": {
824
- t += this.renderer.checkbox(a);
825
- break;
826
- }
827
- case "html": {
828
- t += this.renderer.html(a);
829
- break;
830
- }
831
- case "def": {
832
- t += this.renderer.def(a);
833
- break;
834
- }
835
- case "paragraph": {
836
- t += this.renderer.paragraph(a);
837
- break;
838
- }
839
- case "text": {
840
- t += this.renderer.text(a);
841
- break;
842
- }
843
- default: {
844
- let r = 'Token with "' + a.type + '" type was not found.';
845
- if (this.options.silent) return console.error(r), "";
846
- throw new Error(r);
847
- }
982
+ return ge(d), {
983
+ outputMessage: u,
984
+ summary: u,
985
+ status: "success",
986
+ currentDesign: d
987
+ };
988
+ }, zt = async (t, e) => {
989
+ const { currentDesign: s } = t;
990
+ if (!s)
991
+ return we(t, e);
992
+ const n = t.agentExecutionContext.userRequest, i = t.agentExecutionContext.messages.slice(-11);
993
+ await w({ text: h("updatingDesign", e) }, e);
994
+ let o;
995
+ try {
996
+ o = await T({
997
+ promptText: await y(C, "updateDesign"),
998
+ modelTier: "advanced",
999
+ temperature: 0,
1000
+ schema: dt,
1001
+ messages: i,
1002
+ inputVariables: {
1003
+ currentDesign: JSON.stringify(oe(s)),
1004
+ query: n
848
1005
  }
849
- }
850
- return t;
1006
+ });
1007
+ } catch (p) {
1008
+ console.warn("[SolutionBuilder] updateDesign structured prompt failed:", p);
1009
+ const x = h("applyChangeFailed", e);
1010
+ return {
1011
+ outputMessage: x,
1012
+ summary: x,
1013
+ status: "success"
1014
+ };
851
1015
  }
852
- parseInline(e, t = this.renderer) {
853
- let n = "";
854
- for (let s = 0; s < e.length; s++) {
855
- let a = e[s];
856
- if (this.options.extensions?.renderers?.[a.type]) {
857
- let l = this.options.extensions.renderers[a.type].call({ parser: this }, a);
858
- if (l !== !1 || !["escape", "html", "link", "image", "strong", "em", "codespan", "br", "del", "text"].includes(a.type)) {
859
- n += l || "";
860
- continue;
861
- }
862
- }
863
- let r = a;
864
- switch (r.type) {
865
- case "escape": {
866
- n += t.text(r);
867
- break;
868
- }
869
- case "html": {
870
- n += t.html(r);
871
- break;
872
- }
873
- case "link": {
874
- n += t.link(r);
875
- break;
876
- }
877
- case "image": {
878
- n += t.image(r);
879
- break;
880
- }
881
- case "checkbox": {
882
- n += t.checkbox(r);
883
- break;
884
- }
885
- case "strong": {
886
- n += t.strong(r);
887
- break;
888
- }
889
- case "em": {
890
- n += t.em(r);
891
- break;
892
- }
893
- case "codespan": {
894
- n += t.codespan(r);
895
- break;
896
- }
897
- case "br": {
898
- n += t.br(r);
899
- break;
900
- }
901
- case "del": {
902
- n += t.del(r);
903
- break;
904
- }
905
- case "text": {
906
- n += t.text(r);
907
- break;
908
- }
909
- default: {
910
- let l = 'Token with "' + r.type + '" type was not found.';
911
- if (this.options.silent) return console.error(l), "";
912
- throw new Error(l);
1016
+ const { response: a, patches: l } = o;
1017
+ if (!l || l.length === 0)
1018
+ return {
1019
+ outputMessage: a,
1020
+ summary: a,
1021
+ status: "success"
1022
+ };
1023
+ const u = (p) => {
1024
+ try {
1025
+ return JSON.parse(p);
1026
+ } catch {
1027
+ const x = p.replace(/[\u0000-\u001F]/g, (Y) => {
1028
+ switch (Y) {
1029
+ case "\b":
1030
+ return "\\b";
1031
+ case "\f":
1032
+ return "\\f";
1033
+ case `
1034
+ `:
1035
+ return "\\n";
1036
+ case "\r":
1037
+ return "\\r";
1038
+ case " ":
1039
+ return "\\t";
1040
+ default:
1041
+ return "\\u" + Y.charCodeAt(0).toString(16).padStart(4, "0");
913
1042
  }
1043
+ });
1044
+ try {
1045
+ return JSON.parse(x);
1046
+ } catch {
1047
+ return p;
914
1048
  }
915
1049
  }
916
- return n;
917
- }
918
- }, q = class {
919
- options;
920
- block;
921
- constructor(i) {
922
- this.options = i || I;
923
- }
924
- static passThroughHooks = /* @__PURE__ */ new Set(["preprocess", "postprocess", "processAllTokens", "emStrongMask"]);
925
- static passThroughHooksRespectAsync = /* @__PURE__ */ new Set(["preprocess", "postprocess", "processAllTokens"]);
926
- preprocess(i) {
927
- return i;
928
- }
929
- postprocess(i) {
930
- return i;
931
- }
932
- processAllTokens(i) {
933
- return i;
934
- }
935
- emStrongMask(i) {
936
- return i;
937
- }
938
- provideLexer() {
939
- return this.block ? v.lex : v.lexInline;
940
- }
941
- provideParser() {
942
- return this.block ? y.parse : y.parseInline;
1050
+ }, m = [...l.map((p) => ({
1051
+ op: p.op,
1052
+ path: p.path.replace(/\/+$/, ""),
1053
+ ...p.value != null && p.value !== "" ? { value: u(p.value) } : {},
1054
+ ...p.from != null && p.from !== "" ? { from: p.from } : {}
1055
+ }))].sort((p, x) => p.op !== "remove" || x.op !== "remove" ? 0 : x.path.localeCompare(p.path, void 0, { numeric: !0 })), f = structuredClone(
1056
+ ae(s)
1057
+ );
1058
+ try {
1059
+ qe(f, m, !0);
1060
+ } catch (p) {
1061
+ console.warn(
1062
+ "[SolutionBuilder] updateDesign JSON patch failed:",
1063
+ { error: p, llmResponse: o, patches: m, patchTarget: f }
1064
+ );
1065
+ const x = h("applyChangeFailed", e);
1066
+ return {
1067
+ outputMessage: x,
1068
+ summary: x,
1069
+ status: "success"
1070
+ };
943
1071
  }
944
- }, yt = class {
945
- defaults = W();
946
- options = this.setOptions;
947
- parse = this.parseMarkdown(!0);
948
- parseInline = this.parseMarkdown(!1);
949
- Parser = y;
950
- Renderer = U;
951
- TextRenderer = se;
952
- Lexer = v;
953
- Tokenizer = D;
954
- Hooks = q;
955
- constructor(...i) {
956
- this.use(...i);
1072
+ const d = _(
1073
+ { response: "", ...f },
1074
+ { itemId: s.solution?.itemId ?? null }
1075
+ ), g = G.safeParse(d);
1076
+ if (!g.success) {
1077
+ console.warn(
1078
+ "[SolutionBuilder] updateDesign schema validation failed:",
1079
+ { errors: g.error.issues, llmResponse: o, patchedDesign: d }
1080
+ );
1081
+ const p = h("applyChangeFailed", e);
1082
+ return {
1083
+ outputMessage: p,
1084
+ summary: p,
1085
+ status: "success"
1086
+ };
957
1087
  }
958
- walkTokens(i, e) {
959
- let t = [];
960
- for (let n of i) switch (t = t.concat(e.call(this, n)), n.type) {
961
- case "table": {
962
- let s = n;
963
- for (let a of s.header) t = t.concat(this.walkTokens(a.tokens, e));
964
- for (let a of s.rows) for (let r of a) t = t.concat(this.walkTokens(r.tokens, e));
965
- break;
966
- }
967
- case "list": {
968
- let s = n;
969
- t = t.concat(this.walkTokens(s.items, e));
970
- break;
971
- }
972
- default: {
973
- let s = n;
974
- this.defaults.extensions?.childTokens?.[s.type] ? this.defaults.extensions.childTokens[s.type].forEach((a) => {
975
- let r = s[a].flat(1 / 0);
976
- t = t.concat(this.walkTokens(r, e));
977
- }) : s.tokens && (t = t.concat(this.walkTokens(s.tokens, e)));
978
- }
1088
+ const { response: A, featureLayer: k, ...E } = g.data, Ie = re(
1089
+ k,
1090
+ s.featureLayer
1091
+ ), S = _(
1092
+ { ...E, featureLayer: Ie },
1093
+ {
1094
+ itemId: s.solution?.itemId,
1095
+ sourceBuildSolution: s.sourceBuildSolution,
1096
+ templateId: s.templateId ?? t.selectedTemplate ?? null,
1097
+ params: s.params ?? null
979
1098
  }
980
- return t;
981
- }
982
- use(...i) {
983
- let e = this.defaults.extensions || { renderers: {}, childTokens: {} };
984
- return i.forEach((t) => {
985
- let n = { ...t };
986
- if (n.async = this.defaults.async || n.async || !1, t.extensions && (t.extensions.forEach((s) => {
987
- if (!s.name) throw new Error("extension name required");
988
- if ("renderer" in s) {
989
- let a = e.renderers[s.name];
990
- a ? e.renderers[s.name] = function(...r) {
991
- let l = s.renderer.apply(this, r);
992
- return l === !1 && (l = a.apply(this, r)), l;
993
- } : e.renderers[s.name] = s.renderer;
994
- }
995
- if ("tokenizer" in s) {
996
- if (!s.level || s.level !== "block" && s.level !== "inline") throw new Error("extension level must be 'block' or 'inline'");
997
- let a = e[s.level];
998
- a ? a.unshift(s.tokenizer) : e[s.level] = [s.tokenizer], s.start && (s.level === "block" ? e.startBlock ? e.startBlock.push(s.start) : e.startBlock = [s.start] : s.level === "inline" && (e.startInline ? e.startInline.push(s.start) : e.startInline = [s.start]));
999
- }
1000
- "childTokens" in s && s.childTokens && (e.childTokens[s.name] = s.childTokens);
1001
- }), n.extensions = e), t.renderer) {
1002
- let s = this.defaults.renderer || new U(this.defaults);
1003
- for (let a in t.renderer) {
1004
- if (!(a in s)) throw new Error(`renderer '${a}' does not exist`);
1005
- if (["options", "parser"].includes(a)) continue;
1006
- let r = a, l = t.renderer[r], o = s[r];
1007
- s[r] = (...h) => {
1008
- let c = l.apply(s, h);
1009
- return c === !1 && (c = o.apply(s, h)), c || "";
1010
- };
1011
- }
1012
- n.renderer = s;
1013
- }
1014
- if (t.tokenizer) {
1015
- let s = this.defaults.tokenizer || new D(this.defaults);
1016
- for (let a in t.tokenizer) {
1017
- if (!(a in s)) throw new Error(`tokenizer '${a}' does not exist`);
1018
- if (["options", "rules", "lexer"].includes(a)) continue;
1019
- let r = a, l = t.tokenizer[r], o = s[r];
1020
- s[r] = (...h) => {
1021
- let c = l.apply(s, h);
1022
- return c === !1 && (c = o.apply(s, h)), c;
1023
- };
1024
- }
1025
- n.tokenizer = s;
1026
- }
1027
- if (t.hooks) {
1028
- let s = this.defaults.hooks || new q();
1029
- for (let a in t.hooks) {
1030
- if (!(a in s)) throw new Error(`hook '${a}' does not exist`);
1031
- if (["options", "block"].includes(a)) continue;
1032
- let r = a, l = t.hooks[r], o = s[r];
1033
- q.passThroughHooks.has(a) ? s[r] = (h) => {
1034
- if (this.defaults.async && q.passThroughHooksRespectAsync.has(a)) return (async () => {
1035
- let p = await l.call(s, h);
1036
- return o.call(s, p);
1037
- })();
1038
- let c = l.call(s, h);
1039
- return o.call(s, c);
1040
- } : s[r] = (...h) => {
1041
- if (this.defaults.async) return (async () => {
1042
- let p = await l.apply(s, h);
1043
- return p === !1 && (p = await o.apply(s, h)), p;
1044
- })();
1045
- let c = l.apply(s, h);
1046
- return c === !1 && (c = o.apply(s, h)), c;
1047
- };
1048
- }
1049
- n.hooks = s;
1050
- }
1051
- if (t.walkTokens) {
1052
- let s = this.defaults.walkTokens, a = t.walkTokens;
1053
- n.walkTokens = function(r) {
1054
- let l = [];
1055
- return l.push(a.call(this, r)), s && (l = l.concat(s.call(this, r))), l;
1056
- };
1057
- }
1058
- this.defaults = { ...this.defaults, ...n };
1059
- }), this;
1060
- }
1061
- setOptions(i) {
1062
- return this.defaults = { ...this.defaults, ...i }, this;
1063
- }
1064
- lexer(i, e) {
1065
- return v.lex(i, e ?? this.defaults);
1066
- }
1067
- parser(i, e) {
1068
- return y.parse(i, e ?? this.defaults);
1069
- }
1070
- parseMarkdown(i) {
1071
- return (e, t) => {
1072
- let n = { ...t }, s = { ...this.defaults, ...n }, a = this.onError(!!s.silent, !!s.async);
1073
- if (this.defaults.async === !0 && n.async === !1) return a(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));
1074
- if (typeof e > "u" || e === null) return a(new Error("marked(): input parameter is undefined or null"));
1075
- if (typeof e != "string") return a(new Error("marked(): input parameter is of type " + Object.prototype.toString.call(e) + ", string expected"));
1076
- if (s.hooks && (s.hooks.options = s, s.hooks.block = i), s.async) return (async () => {
1077
- let r = s.hooks ? await s.hooks.preprocess(e) : e, l = await (s.hooks ? await s.hooks.provideLexer() : i ? v.lex : v.lexInline)(r, s), o = s.hooks ? await s.hooks.processAllTokens(l) : l;
1078
- s.walkTokens && await Promise.all(this.walkTokens(o, s.walkTokens));
1079
- let h = await (s.hooks ? await s.hooks.provideParser() : i ? y.parse : y.parseInline)(o, s);
1080
- return s.hooks ? await s.hooks.postprocess(h) : h;
1081
- })().catch(a);
1082
- try {
1083
- s.hooks && (e = s.hooks.preprocess(e));
1084
- let r = (s.hooks ? s.hooks.provideLexer() : i ? v.lex : v.lexInline)(e, s);
1085
- s.hooks && (r = s.hooks.processAllTokens(r)), s.walkTokens && this.walkTokens(r, s.walkTokens);
1086
- let l = (s.hooks ? s.hooks.provideParser() : i ? y.parse : y.parseInline)(r, s);
1087
- return s.hooks && (l = s.hooks.postprocess(l)), l;
1088
- } catch (r) {
1089
- return a(r);
1090
- }
1099
+ );
1100
+ let R = N(t.selectedTemplate);
1101
+ if (R?.initialTemplate || (await H(e), R = N(t.selectedTemplate)), !R?.initialTemplate)
1102
+ throw new Error("No hydrated templates are available for solution design.");
1103
+ const P = new me(S, R.initialTemplate, !1);
1104
+ if (!P.isValid) {
1105
+ console.warn(
1106
+ "[SolutionBuilder] updateDesign validation failed:",
1107
+ { issues: P.issues, llmResponse: o, patchedDesign: S }
1108
+ );
1109
+ const p = await bt({
1110
+ query: n,
1111
+ validationIssues: P.issues,
1112
+ recentMessages: i,
1113
+ fallbackMessage: h("applyChangeFailed", e),
1114
+ promptModules: C
1115
+ });
1116
+ return {
1117
+ outputMessage: p,
1118
+ summary: p,
1119
+ status: "success"
1091
1120
  };
1092
1121
  }
1093
- onError(i, e) {
1094
- return (t) => {
1095
- if (t.message += `
1096
- Please report this to https://github.com/markedjs/marked.`, i) {
1097
- let n = "<p>An error occurred:</p><pre>" + S(t.message + "", !0) + "</pre>";
1098
- return e ? Promise.resolve(n) : n;
1099
- }
1100
- if (e) return Promise.reject(t);
1101
- throw t;
1122
+ const Ce = S.sourceBuildSolution, Q = he(S, Ce);
1123
+ if (!Q.ok) {
1124
+ console.warn(
1125
+ "[SolutionBuilder] updateDesign Esri JSON conversion failed:",
1126
+ { error: Q.error, llmResponse: o, design: S }
1127
+ );
1128
+ const p = h("applyChangeFailed", e);
1129
+ return {
1130
+ outputMessage: p,
1131
+ summary: p,
1132
+ status: "success"
1102
1133
  };
1103
1134
  }
1104
- }, R = new yt();
1105
- function f(i, e) {
1106
- return R.parse(i, e);
1107
- }
1108
- f.options = f.setOptions = function(i) {
1109
- return R.setOptions(i), f.defaults = R.defaults, de(f.defaults), f;
1110
- };
1111
- f.getDefaults = W;
1112
- f.defaults = I;
1113
- f.use = function(...i) {
1114
- return R.use(...i), f.defaults = R.defaults, de(f.defaults), f;
1115
- };
1116
- f.walkTokens = function(i, e) {
1117
- return R.walkTokens(i, e);
1118
- };
1119
- f.parseInline = R.parseInline;
1120
- f.Parser = y;
1121
- f.parser = y.parse;
1122
- f.Renderer = U;
1123
- f.TextRenderer = se;
1124
- f.Lexer = v;
1125
- f.lexer = v.lex;
1126
- f.Tokenizer = D;
1127
- f.Hooks = q;
1128
- f.parse = f;
1129
- f.options;
1130
- f.setOptions;
1131
- f.use;
1132
- f.walkTokens;
1133
- f.parseInline;
1134
- y.parse;
1135
- v.lex;
1136
- class St {
1137
- constructor(e = "") {
1138
- this._text = "", this._displayedText = "", this._pendingText = "", this._text = e, this._pendingText = e;
1139
- }
1140
- /** Set or update the text that will be type written
1141
- * @param text the new or updated string to type write
1142
- */
1143
- setText(e) {
1144
- this._text = e, this._displayedText && e.includes(this._displayedText) ? this._pendingText = e.substring(this._displayedText.length) : (this._pendingText = this._text, this._displayedText = "");
1145
- }
1146
- /** Gets the current text that is written out */
1147
- getText() {
1148
- return this._displayedText;
1149
- }
1150
- /** Clear all the text and state */
1151
- clearText() {
1152
- this._displayedText = "", this._text = "", this._pendingText = "";
1153
- }
1154
- /**
1155
- * Updates the display text on what will be shown to the users.
1156
- */
1157
- updateDisplayText() {
1158
- if (this._pendingText.length > 0) {
1159
- const e = this._pendingText[0];
1160
- if (e === "[" || e === "<" || e === "!") {
1161
- const t = this._matchMarkdownPattern(
1162
- this._displayedText + this._pendingText,
1163
- this._displayedText.length
1164
- );
1165
- if (t) {
1166
- const n = t.end - t.start, s = this._pendingText.substring(0, n);
1167
- this._displayedText += s, this._pendingText = this._pendingText.substring(n);
1168
- } else
1169
- this._displayedText += e, this._pendingText = this._pendingText.substring(1);
1170
- } else
1171
- this._displayedText += e, this._pendingText = this._pendingText.substring(1);
1172
- }
1173
- }
1174
- /**
1175
- * Check the string for any markdown pattern and the length of that pattern.
1176
- * @param text the string to check markdown
1177
- * @param position The current position in the text to check
1178
- * @returns the start and end positions.
1179
- */
1180
- _matchMarkdownPattern(e, t) {
1181
- const n = [
1182
- /<sup>\[\[[^\]]+\]\]\([^)]+\)<\/sup>/,
1183
- // <sup>[[1]](url)</sup>
1184
- /\[\[[^\]]+\]\]\([^)]+\)/,
1185
- // [[1]](url)
1186
- /\[[^\]]+\]\([^)]+\)/,
1187
- // [text](url)
1188
- /!\[[^\]]*\]\([^)]+\)/
1189
- // ![alt](url)
1190
- ], s = e.substring(t);
1191
- for (const a of n) {
1192
- const r = s.match(a);
1193
- if (r && r.index === 0)
1194
- return {
1195
- start: t,
1196
- end: t + r[0].length
1197
- };
1135
+ return ge(S), {
1136
+ outputMessage: a,
1137
+ summary: a,
1138
+ status: "success",
1139
+ currentDesign: S
1140
+ };
1141
+ }, jt = (t) => t.currentDesign !== null ? "assessUpdateRequest" : "assessBuildRequest", Jt = (t) => !t.updateAssessment || !t.updateAssessment.isValidUpdate ? "invalidUpdateExit" : "updateDesign", Gt = (t) => !t.assessment || !t.assessment.isValidUseCase ? "invalidBuildExit" : !t.selectedTemplate && t.assessment.matchedTemplates.length > 1 ? "selectTemplateHIL" : "findExistingSolutions", Vt = (t) => t.existingMatches.length > 0 ? "confirmContinueBuildingHIL" : "designSolution", Ht = (t) => t.continueBuilding === !1 ? "declineContinueBuildingExit" : "designSolution", Wt = () => new O(Dt).addNode("syncCurrentDesignFromContext", Ft).addNode("assessBuildRequest", $t).addNode("assessUpdateRequest", Nt).addNode("invalidBuildExit", Mt).addNode("invalidUpdateExit", Bt).addNode("selectTemplateHIL", Pt).addNode("findExistingSolutions", qt).addNode("confirmContinueBuildingHIL", Ut).addNode("declineContinueBuildingExit", Ot).addNode("designSolution", we).addNode("updateDesign", zt).addEdge(z, "syncCurrentDesignFromContext").addConditionalEdges("syncCurrentDesignFromContext", jt, {
1142
+ assessUpdateRequest: "assessUpdateRequest",
1143
+ assessBuildRequest: "assessBuildRequest"
1144
+ }).addConditionalEdges("assessUpdateRequest", Jt, {
1145
+ invalidUpdateExit: "invalidUpdateExit",
1146
+ updateDesign: "updateDesign"
1147
+ }).addConditionalEdges("assessBuildRequest", Gt, {
1148
+ invalidBuildExit: "invalidBuildExit",
1149
+ selectTemplateHIL: "selectTemplateHIL",
1150
+ findExistingSolutions: "findExistingSolutions"
1151
+ }).addEdge("invalidBuildExit", v).addEdge("invalidUpdateExit", v).addEdge("selectTemplateHIL", "findExistingSolutions").addConditionalEdges("findExistingSolutions", Vt, {
1152
+ confirmContinueBuildingHIL: "confirmContinueBuildingHIL",
1153
+ designSolution: "designSolution"
1154
+ }).addConditionalEdges("confirmContinueBuildingHIL", Ht, {
1155
+ declineContinueBuildingExit: "declineContinueBuildingExit",
1156
+ designSolution: "designSolution"
1157
+ }).addEdge("declineContinueBuildingExit", v).addEdge("designSolution", v).addEdge("updateDesign", v);
1158
+ await y(C, "description");
1159
+ const Kt = D.object({
1160
+ tool: D.enum(["explorer", "builder", "other"]).describe("The selected tool based on the user's query."),
1161
+ confidence: D.number().min(0).max(1).describe("A confidence score (0.00–1.00)."),
1162
+ rationale: D.string().min(1).describe("A brief rationale for the tool choice (≤140 characters)")
1163
+ }), W = /* @__PURE__ */ Object.assign({
1164
+ "./prompts/assistantResponse.md": () => import("../../chunks/assistantResponse.js").then((t) => t.default),
1165
+ "./prompts/classifyIntent.md": () => import("../../chunks/classifyIntent.js").then((t) => t.default),
1166
+ "./prompts/description.md": () => import("../../chunks/description.js").then((t) => t.default)
1167
+ }), K = (t) => {
1168
+ const e = new CustomEvent("assistantProcessing", {
1169
+ detail: { finished: !0, agent: t }
1170
+ });
1171
+ window.dispatchEvent(e);
1172
+ }, Se = b.Root({
1173
+ ...j(),
1174
+ selectedTool: b({
1175
+ reducer: (t, e) => e ?? null,
1176
+ default: () => null
1177
+ }),
1178
+ intentRationale: b({
1179
+ reducer: (t, e) => e ?? null,
1180
+ default: () => null
1181
+ })
1182
+ }), Qt = async (t, e) => {
1183
+ const s = B(e);
1184
+ await w(
1185
+ { text: s?.builderMessages.understandingRequest },
1186
+ e
1187
+ );
1188
+ const n = t.agentExecutionContext.userRequest, i = t.agentExecutionContext.messages.slice(-11), o = e?.configurable?.context?.solutionDesignJson;
1189
+ let a = !1;
1190
+ if (typeof o == "string" && o.trim())
1191
+ try {
1192
+ a = JSON.parse(o).solution != null;
1193
+ } catch {
1194
+ a = !1;
1198
1195
  }
1199
- return null;
1200
- }
1201
- }
1202
- const $t = "https://links.esri.com/solutions/agol-organizational-account", Tt = "https://links.esri.com/solutions/configure-assistants";
1203
- class Rt extends Re {
1196
+ const l = await y(W, "classifyIntent"), u = await T({
1197
+ promptText: l,
1198
+ modelTier: "advanced",
1199
+ temperature: 0,
1200
+ schema: Kt,
1201
+ messages: i,
1202
+ inputVariables: { query: n, activeSolutionDesign: a }
1203
+ });
1204
+ return {
1205
+ selectedTool: u.tool,
1206
+ intentRationale: u.rationale
1207
+ };
1208
+ }, Yt = async (t, e) => {
1209
+ const n = await Ke().compile().invoke(t, e);
1210
+ return K("explorer"), n;
1211
+ }, Xt = async (t, e) => {
1212
+ const n = await Wt().compile().invoke(t, e);
1213
+ return K("builder"), n;
1214
+ }, Zt = async (t, e) => {
1215
+ const s = B(e), n = t.agentExecutionContext.userRequest, i = t.intentRationale ?? "No rationale available.";
1216
+ await w(
1217
+ { text: s?.executingSolutionsAssistantAgent },
1218
+ e
1219
+ );
1220
+ const o = await y(W, "assistantResponse"), a = t.agentExecutionContext.messages.slice(-11), l = await Pe({
1221
+ promptText: o,
1222
+ modelTier: "advanced",
1223
+ temperature: 0,
1224
+ messages: a,
1225
+ inputVariables: { query: n, rationale: i }
1226
+ });
1227
+ return K("assistant"), {
1228
+ outputMessage: l,
1229
+ summary: l,
1230
+ status: "success"
1231
+ };
1232
+ }, es = (t) => t.selectedTool ?? "other", ts = () => new O(Se).addNode("classifyIntent", Qt).addNode("routeToExplorer", Yt).addNode("routeToBuilder", Xt).addNode("assistantResponse", Zt).addEdge(z, "classifyIntent").addConditionalEdges("classifyIntent", es, {
1233
+ explorer: "routeToExplorer",
1234
+ builder: "routeToBuilder",
1235
+ other: "assistantResponse"
1236
+ }).addEdge("routeToExplorer", v).addEdge("routeToBuilder", v).addEdge("assistantResponse", v), ss = await y(W, "description"), ns = {
1237
+ id: "solutionsAssistant",
1238
+ name: "Solutions Assistant Agent",
1239
+ description: ss,
1240
+ createGraph: ts,
1241
+ workspace: Se
1242
+ }, is = "https://links.esri.com/solutions/agol-organizational-account", os = "https://links.esri.com/solutions/configure-assistants";
1243
+ class as extends ke {
1204
1244
  constructor() {
1205
- super(), this.serverRoot = "https://aiservices-beta.arcgis.com", this.open = !1, this.userFirstName = "", this.conversationStore = {
1206
- conversationId: null,
1207
- inquiryId: null,
1208
- ackSequenceNumber: null
1209
- }, this._currentResponse = "", this._isAutoScroll = !1, this._isLoading = !1, this._isLoadingText = "", this.messages = [], this._orgSettings = {
1245
+ super(), this.open = !1, this.userFirstName = "", this.builderVisible = !1, this.hasActiveBuilderDesign = !1, this._conversationId = void 0, this._orgSettings = {
1210
1246
  aiAssistantsEnabled: !1,
1211
1247
  blockBetaApps: !0,
1212
1248
  colocateCompute: !1
1213
- }, this._translations = Te({ name: "arcgis-solutions-assistant", blocking: !0 }), this._isTyping = !1, this._configContextConsumer = Ce({
1214
- context: ze,
1249
+ }, this._suggestedPrompts = [], this._hasInteracted = !1, this._isMobile = window.innerWidth <= 800, this._translations = Te({ name: "arcgis-solutions-assistant", blocking: !0 }), this._builderWidth = 48, this._solutionDesignJson = '{ "solution": null }', this._isAssistantBusy = !1, this._isBuilderBusy = !1, this._preChatCheck = !1, this._showNewChatConfirm = !1, this._assistantRef = $e(), this._configContextConsumer = ee({
1250
+ context: Le,
1215
1251
  subscribe: !0,
1216
1252
  callback: (e) => {
1217
- e?.userSession && !this.userFirstName && this._loadUserFirstName(), e?.authentication?.PortalSubset?.orgSettings && (this._orgSettings = e?.authentication?.PortalSubset?.orgSettings, this._getAIServiceUrl());
1253
+ e?.portalURL && (te.portalUrl = e.portalURL), e?.userSession && !this.userFirstName && this._loadUserFirstName(), e?.authentication?.PortalSubset?.orgSettings && (this._orgSettings = e?.authentication?.PortalSubset?.orgSettings);
1254
+ }
1255
+ }), this._builderDesignContextConsumer = ee({
1256
+ context: Re,
1257
+ subscribe: !0,
1258
+ callback: (e) => {
1259
+ e?.design && (this._solutionDesignJson = JSON.stringify(e.design, null, 2));
1260
+ }
1261
+ }), this._handleResize = () => {
1262
+ this._isMobile = window.innerWidth <= 800;
1263
+ }, this._chatStartTime = null, this._handleAssistantProcessingFinished = (e) => {
1264
+ const s = e;
1265
+ if (s.detail?.finished && this._chatStartTime !== null) {
1266
+ const n = Fe(this._chatStartTime);
1267
+ this._telemetry?.logEvent({
1268
+ category: De.ASSISTANT,
1269
+ action: "Chat",
1270
+ dimensions: [s.detail.agent],
1271
+ metrics: [n]
1272
+ }), this._chatStartTime = null, this.assistantProcessing.emit(!1);
1218
1273
  }
1219
- }), this.closeAssistant = Ie(), this._resetConversation = () => {
1220
- this.conversationStore.conversationId = null, this.conversationStore.inquiryId = null, this.conversationStore.ackSequenceNumber = null;
1221
- }, this._setMessageContainerRef = (e) => {
1222
- this._chatContainer = e;
1223
- }, this._setInputRef = (e) => {
1224
- this._inputRef = e, this._inputRef.addEventListener("keydown", (t) => {
1225
- t.key === "Enter" && !t.shiftKey && !this._isLoading && !this._isTyping && (t.preventDefault(), this._inputRef && (this.handleSendMessage(this._inputRef.value.trim()), this._inputRef.value = ""));
1226
- }), setTimeout(() => {
1227
- this._inputRef?.focus();
1228
- }, 100);
1229
- }, this._submitQuestion = (e) => {
1230
- this.handleSendMessage(e);
1274
+ }, this.closeAssistant = X(), this.assistantProcessing = X(), this._handleAssistantLinkClick = (e) => {
1275
+ const s = e.composedPath().find((n) => n instanceof HTMLAnchorElement);
1276
+ if (s?.href)
1277
+ if (e.preventDefault(), s.target.indexOf("solutionId:") > -1) {
1278
+ const n = s.target.split("solutionId:")[1];
1279
+ this._emitItemIdFromAI(n);
1280
+ } else
1281
+ window.open(s.href, "_blank", "noopener,noreferrer");
1282
+ }, this._onSolutionDesignUpdate = (e) => {
1283
+ const n = e.detail;
1284
+ this._solutionDesignJson = n ? JSON.stringify(n, null, 2) : '{ "solution": null }';
1231
1285
  }, this._handleSignIn = () => {
1232
1286
  this._configContextConsumer.value?.authentication?.signIn("aiOpen");
1233
1287
  }, this._checkURLOpenParameter = () => {
1234
1288
  this.open = this._configContextConsumer.value?.authentication?.SignInParam === "aiOpen" || this.open;
1235
- }, this.listenOn(window, "submitQuestion", (e) => {
1236
- this._submitQuestion(e.detail);
1289
+ }, this.listenOn(window, "arcgisFeedback", (e) => {
1290
+ const s = e.detail, { agentPicked: n, taskAssigned: i, userMessage: o } = this._parseAgentPickedAndTask(s);
1291
+ this._sendFeedback(s.content, o ?? i ?? "", s.feedback?.positive ? "Good" : s.feedback?.positive == "Bad" ? "Bad" : "N/A", n ?? "");
1292
+ }), this.listenOn(window, "clearAssistantConversation", () => {
1293
+ this._clearConversation();
1237
1294
  });
1238
1295
  }
1239
1296
  static {
1240
- this.properties = { serverRoot: 1, open: 5, userFirstName: 1, conversationStore: 16, _currentResponse: 16, _isAutoScroll: 16, _isLoading: 16, _isLoadingText: 16, messages: 16, _orgSettings: 16, _translations: 16, _isTyping: 16 };
1297
+ this.properties = { open: 5, userFirstName: 1, builderVisible: 5, hasActiveBuilderDesign: 5, _conversationId: 16, _orgSettings: 16, _suggestedPrompts: 16, _hasInteracted: 16, _isMobile: 16, _translations: 16, _builderWidth: 16, _solutionDesignJson: 16, _isAssistantBusy: 16, _isBuilderBusy: 16, _preChatCheck: 16, _showNewChatConfirm: 16 };
1241
1298
  }
1242
1299
  static {
1243
- this.styles = qe;
1300
+ this.styles = ze;
1244
1301
  }
1245
1302
  get _telemetry() {
1246
1303
  return this._configContextConsumer.value?.telemetrySession;
1247
1304
  }
1248
- get solutionAIurl() {
1249
- return `${this.serverRoot}/skills/solution_deployment/chat`;
1250
- }
1251
- get docAIurl() {
1252
- return `${this.serverRoot}/skills/doc_ai_assistant/chat`;
1253
- }
1254
- async handleSendMessage(e) {
1255
- this._isLoading = !0;
1256
- let t = {
1257
- message: e,
1258
- context: {
1259
- debug: !1,
1260
- kind: "SolutionRequest"
1261
- }
1262
- };
1263
- if (this.conversationStore.conversationId !== null) {
1264
- t.conversationId = this.conversationStore.conversationId;
1265
- const n = {
1266
- author: "human",
1267
- conversationId: this.conversationStore.conversationId ? this.conversationStore.conversationId : "",
1268
- message: e,
1269
- render: this._renderSimpleTextMessage(e, "human", "", "Other")
1270
- };
1271
- this.messages = [...this.messages, n];
1272
- const s = await this.requestAIServer(t, this.solutionAIurl);
1273
- this.loopRequest(s, this.solutionAIurl);
1274
- } else {
1275
- const n = {
1276
- author: "human",
1277
- message: e,
1278
- render: this._renderSimpleTextMessage(e, "human", "", "Other")
1279
- };
1280
- this.messages = [...this.messages, n];
1281
- const s = await this.requestAIServer(t, this.solutionAIurl);
1282
- this.conversationStore.conversationId = s.conversationId, this.conversationStore.inquiryId = s.inquiryId, this.conversationStore.ackSequenceNumber = s.sequenceNumber, this.loopRequest(s, this.solutionAIurl);
1283
- }
1284
- }
1285
- async loopRequest(e, t) {
1286
- const n = Date.now();
1287
- let s, a = t;
1288
- this._isLoading = !0;
1289
- const r = document.createElement("div");
1290
- r.classList.add("response-message", "message-content");
1291
- let l = document.createElement("div");
1292
- l.classList.add("display-none");
1293
- const o = document.createElement("div");
1294
- o.classList.add("display-none");
1295
- const h = e.conversationId + Date.now(), c = this._renderResponseBlock(r, l, o, h), p = new St(this._currentResponse), u = {
1296
- author: "ai",
1297
- conversationId: e.conversationId,
1298
- message: e.message ?? "",
1299
- render: c
1300
- };
1301
- for (this.messages.push(u), this.requestUpdate(), this._isAutoScroll = !0; e.hasMore; ) {
1302
- await new Promise((_) => setTimeout(_, 500));
1303
- let x = {
1304
- conversationId: e.conversationId,
1305
- ackSequenceNumber: e.sequenceNumber,
1306
- inquiryId: e.inquiryId
1307
- };
1308
- if (e.context)
1309
- if (this.conversationStore.context = e.context, e.context.results && !e.context.intent)
1310
- for (const _ of e.context.results)
1311
- this._currentResponse = _.reply, this._currentResponse !== "" && (this._isLoading = !1, this._isTyping = !0, this._showCardById(h), this._startTypeWriter(p, this._currentResponse, r, l, o)), e = await this.requestAIServer(x, a);
1312
- else if (e.context.intent === "Solution question") {
1313
- s = e.context.intent;
1314
- const _ = {
1315
- message: e.message,
1316
- conversationId: x.conversationId,
1317
- context: {
1318
- kind: "DocAIAssistantRequest",
1319
- filters: {
1320
- products: "ArcGIS Solutions"
1321
- }
1322
- }
1323
- };
1324
- a = this.docAIurl, e = await this.requestAIServer(_, a);
1325
- } else
1326
- this._currentResponse = e.message ?? "", e.context.kind && e.context.kind.toLowerCase() === "ArcGISErrorAsContext".toLowerCase() && (this._currentResponse = this._translations.genericErrorMessage), this._currentResponse !== "" && (this._isLoading = !1, this._isTyping = !0, this._showCardById(h), this._startTypeWriter(p, this._currentResponse, r, l, o)), e = await this.requestAIServer(x, a);
1327
- else
1328
- e = await this.requestAIServer(x, a);
1329
- }
1330
- this._isLoading = !1;
1331
- const { context: g } = this.conversationStore, k = this.messages.length >= 2 ? this._getMostRecentQuestion() : "", w = typeof k == "string" ? "" : k?.message ?? "", E = Le(n), M = s || g?.intent || "Unknown";
1332
- if (this._telemetry?.logEvent({
1333
- category: Pe.ASSISTANT,
1334
- action: "Chat",
1335
- dimensions: [M],
1336
- metrics: [E]
1337
- }), g && g.intent)
1338
- switch (g.intent) {
1339
- case "Recommend solution": {
1340
- if (g.results) {
1341
- const x = g.results, _ = x.map(($) => `- ${$.title}`).join(`
1342
- `), C = this._renderSuggestedSolutions(x), z = this._renderFeedback(this._currentResponse + `
1343
- ` + _, w, this.conversationStore.conversationId, g.intent);
1344
- A(C, l), A(z, o);
1345
- } else
1346
- l.innerHTML = "";
1347
- this._scrollToBottom();
1348
- break;
1349
- }
1350
- default: {
1351
- const x = this._renderFeedback(this._currentResponse, w, this.conversationStore.conversationId, g.intent);
1352
- A(x, o), this._scrollToBottom();
1353
- break;
1354
- }
1355
- }
1356
- else {
1357
- if (g && g.results && !g.intent)
1358
- for (const x of g.results) {
1359
- const _ = this._renderSolutionsQuestionTable(x.ref, x.followupQuestions), C = this._renderFeedback(this._currentResponse, w, this.conversationStore.conversationId, "Solution question");
1360
- A(_, l), A(C, o);
1361
- }
1362
- else if (g && g.kind && g.kind.toLowerCase() === "ArcGISErrorAsContext".toLowerCase()) {
1363
- const x = this._renderFeedback(this._currentResponse, w, this.conversationStore.conversationId, "Error");
1364
- A(x, o);
1365
- }
1366
- this._scrollToBottom();
1367
- }
1368
- }
1369
- async requestAIServer(e, t) {
1370
- try {
1371
- const n = this._configContextConsumer.value?.userSession?.token ?? "", a = await (await fetch(t, {
1372
- method: "POST",
1373
- headers: {
1374
- "Content-Type": "application/json",
1375
- token: n
1376
- },
1377
- body: JSON.stringify(e)
1378
- })).json();
1379
- if (a)
1380
- return a;
1381
- throw new Error("No data returned");
1382
- } catch (n) {
1383
- throw new Error(`Request failed: ${n}`);
1384
- }
1305
+ connectedCallback() {
1306
+ super.connectedCallback(), window.addEventListener("arcgis-solution-design-update", this._onSolutionDesignUpdate), this.el.addEventListener("click", this._handleAssistantLinkClick), window.addEventListener("resize", this._handleResize), window.addEventListener("assistantProcessing", this._handleAssistantProcessingFinished), this._builderDesignContextConsumer;
1385
1307
  }
1386
- resetChat() {
1387
- const e = this.messages[this.messages.length - 1];
1388
- if (e.author !== "system" && e.conversationId !== "-1") {
1389
- this._resetConversation();
1390
- const t = {
1391
- author: "system",
1392
- conversationId: "-1",
1393
- message: this._translations.newConversationStarted,
1394
- render: this._renderSimpleTextMessage(this._translations.newConversationStarted, "system", "", "Other", "speech-bubble-plus")
1395
- };
1396
- this.messages = [...this.messages, t], this._inputRef && (this._inputRef.value = "");
1397
- }
1308
+ disconnectedCallback() {
1309
+ window.removeEventListener("arcgis-solution-design-update", this._onSolutionDesignUpdate), this.el.removeEventListener("click", this._handleAssistantLinkClick), window.removeEventListener("resize", this._handleResize), window.removeEventListener("assistantProcessing", this._handleAssistantProcessingFinished), super.disconnectedCallback();
1398
1310
  }
1399
1311
  loaded() {
1400
1312
  this._checkURLOpenParameter();
1401
- const e = this._chatContainer;
1402
- e && e.addEventListener("scroll", () => {
1403
- this._isAutoScroll = this._isAtBottom(e);
1404
- });
1313
+ }
1314
+ load() {
1315
+ this._configContextConsumer.value?.portalURL && (te.portalUrl = this._configContextConsumer.value.portalURL);
1405
1316
  }
1406
1317
  firstUpdated(e) {
1407
1318
  this._loadUserFirstName();
1408
1319
  }
1409
1320
  willUpdate(e) {
1410
- if (this._configContextConsumer.value?.userSession?.token && this._configContextConsumer.value?.authentication?.CanUseAI && this.messages.length === 0 && this._translations.defaultStartUpMessage) {
1411
- const t = this._translations.defaultStartUpMessage.replace("{{name}}", this.userFirstName), n = Object.values(this._translations.defaultFollowUpQuestions), s = this._renderSolutionQuestionFollowup(n);
1412
- this.messages = [
1413
- {
1414
- author: "ai",
1415
- conversationId: "",
1416
- message: t,
1417
- render: this._renderSimpleTextMessage(t, "ai", "", "Other", void 0, s, "margin-top-0")
1418
- }
1419
- ];
1420
- }
1421
- (e.has("_isLoading") || e.has("_isTyping")) && this.renderRoot.querySelectorAll(".assistant-followup-chip").forEach((n) => {
1422
- const s = this._isLoading || this._isTyping;
1423
- n.disabled = s, n.tabIndex = s ? -1 : 0;
1424
- });
1425
- }
1426
- updated(e) {
1427
- (e.size || this._isLoading) && this._scrollToBottom();
1428
- }
1429
- _renderFeedback(e, t, n, s) {
1430
- const a = Date.now();
1431
- return m`
1432
- <div>
1433
- <calcite-button
1434
- appearance='transparent'
1435
- class='height-32-flex-auto'
1436
- id='good-${a}'
1437
- icon-start='thumbs-up'
1438
- label='position feedback'
1439
- kind='neutral'
1440
- @click=${() => {
1441
- this._sendFeedback(e, t, "Good", n, s);
1442
- }}
1443
- >
1444
- </calcite-button>
1445
- <calcite-tooltip placement='bottom' reference-element='good-${a}'>
1446
- <span>${this._translations.tooltips.likeButton}</span>
1447
- </calcite-tooltip>
1448
-
1449
- <calcite-button
1450
- appearance='transparent'
1451
- class='height-32-flex-auto'
1452
- id='bad-${a}'
1453
- icon-start='thumbs-down'
1454
- label='position feedback'
1455
- kind='neutral'
1456
- @click=${() => {
1457
- this._sendFeedback(e, t, "Bad", n, s);
1458
- }}
1459
- >
1460
- </calcite-button>
1461
- <calcite-tooltip placement='bottom' reference-element='bad-${a}'>
1462
- <span>${this._translations.tooltips.dislikeButton}</span>
1463
- </calcite-tooltip>
1464
-
1465
- <calcite-button
1466
- appearance='transparent'
1467
- class='height-32-flex-auto'
1468
- id='copy-${a}'
1469
- icon-start='copy'
1470
- label='position feedback'
1471
- kind='neutral'
1472
- @click=${(r) => {
1473
- this._copyResponseToClipboard(e, r);
1474
- }}
1475
- >
1476
- </calcite-button>
1477
- <calcite-tooltip placement='bottom' reference-element='copy-${a}'>
1478
- <span>${this._translations.tooltips.copyButton}</span>
1479
- </calcite-tooltip>
1480
- </div>
1481
- `;
1482
- }
1483
- _renderSolutionQuestionReferences(e) {
1484
- return m`
1485
- ${e.map((t) => m`
1486
- <div class='message-content-pad'>
1487
- <a href=${t.url} target='_blank'>
1488
- ${t.title}
1489
- </a>
1490
- </div>
1491
- `)}
1492
- `;
1493
- }
1494
- _renderSolutionQuestionFollowup(e) {
1495
- return m`
1496
- ${e.map((t) => m`
1497
- <calcite-chip
1498
- class='chip-content cursor-pointer assistant-followup-chip'
1499
- kind='brand'
1500
- label=${t}
1501
- tabindex='0'
1502
- @click=${(n) => {
1503
- n.currentTarget.disabled || this._submitFollowupQuestion(t);
1504
- }}
1505
- @keydown=${(n) => {
1506
- n.currentTarget.disabled || Z(n, () => this._submitFollowupQuestion(t));
1507
- }}
1508
- >
1509
- ${t}
1510
- </calcite-chip>
1511
- `)}
1512
- `;
1513
- }
1514
- _renderSolutionsQuestionTable(e, t) {
1515
- const n = this._renderSolutionQuestionReferences(e), s = this._renderSolutionQuestionFollowup(t);
1516
- return m`
1517
- <div slot='description' class='message-content'>
1518
- <div style='display: flex; justify-content: flex-start;'>
1519
- <calcite-button
1520
- appearance='outline'
1521
- icon-end='chevron-down'
1522
- icon-start='link'
1523
- @click=${(a) => {
1524
- const r = a.currentTarget, l = r.parentElement.nextElementSibling;
1525
- l.classList.toggle("collapsed"), r.setAttribute("icon-end", l.classList.contains("collapsed") ? "chevron-down" : "chevron-up");
1526
- }}
1527
- >
1528
- ${e.length}
1529
- ${e.length === 1 ? this._translations.solutionsDocReference : this._translations.solutionsDocReferences}
1530
- </calcite-button>
1531
- </div>
1532
-
1533
- <div class='references-container collapsed'>
1534
- ${n}
1535
- </div>
1536
- </div>
1537
-
1538
- <div class='padding-top-10'>
1539
- ${s}
1540
- </div>
1541
- `;
1542
- }
1543
- _renderSolutionCard(e) {
1544
- return m`
1545
- <a
1546
- class='solution-card'
1547
- id='${e.id}'
1548
- tabindex='0'
1549
- @click=${() => this._emitItemIdFromAI(e.id)}
1550
- @keydown=${(t) => {
1551
- Z(t, () => this._emitItemIdFromAI(e.id));
1552
- }}
1553
- >
1554
- <calcite-card thumbnail-position='inline-start'>
1555
- <div slot='thumbnail'>
1556
- <img src='${e.thumbnail}' alt='Thumbnail' />
1557
- <calcite-chip icon='launch' label='View solution'>
1558
- ${this._translations.viewSolutionInApp}
1559
- </calcite-chip>
1560
- </div>
1561
-
1562
- <h3 slot='heading'><b>${e.title}</b></h3>
1563
-
1564
- <span slot='description' class='solution-snippet'>${e.snippet}</span>
1565
- </calcite-card>
1566
- </a>
1567
- `;
1568
- }
1569
- _renderResponseBlock(e, t, n, s) {
1570
- return m`<calcite-card id=${s ?? ie} class="system-message display-none">${e}${t}${n}</calcite-card>`;
1571
- }
1572
- _renderSimpleTextMessage(e, t, n, s, a, r, l) {
1573
- const o = this.messages.length >= 2 ? this._getMostRecentQuestion() : "", h = typeof o == "string" ? "" : o?.message ?? "";
1574
- return t === "system" ? m`<div class="message-content message-content-alignment">${a && m`<calcite-icon .icon=${a}></calcite-icon>` || ""}${e}</div>` : m`<calcite-card class=${re(t === "human" ? "user-message" : "system-message")}><div class=${re(l ? `${l} message-content` : "message-content")}>${ae(e)}${r}${t === "ai" && n !== "" && this._renderFeedback(e, h, n, s) || ""}</div></calcite-card>`;
1575
- }
1576
- _renderSuggestedSolutions(e) {
1577
- const t = e.map((n) => this._renderSolutionCard(n));
1578
- return m`
1579
- <div class='message-content'>
1580
- ${t}
1581
- </div>
1582
- `;
1321
+ e.has("open") && this.open && window.dispatchEvent(new CustomEvent("openAssistant")), this._configContextConsumer.value?.authentication && this._configContextConsumer.value?.userSession?.token && (this._preChatCheck || (ue(this._configContextConsumer.value?.authentication.Portal, this._configContextConsumer.value?.userSession?.token, this._configContextConsumer.value?.locale ?? "en"), this._preChatCheck = !0)), this._configContextConsumer.value?.userSession?.token && this._configContextConsumer.value?.authentication?.CanUseAI;
1583
1322
  }
1584
1323
  _renderNoSign() {
1585
- return m`<calcite-notice open scale=m icon=effects kind=info><div slot=message>${this._translations.signInMessage}</div><calcite-link @click=${this._handleSignIn} slot=link title=${this._translations.signInMessage ?? ie} class="padding-top-10">${this._translations.signIn}</calcite-link></calcite-notice>`;
1324
+ return I`<calcite-notice class="margin-lg" open scale=m icon=effects kind=info><div slot=message>${this._translations.signInMessage}</div><calcite-link @click=${this._handleSignIn} slot=link title=${this._translations.signInMessage ?? Z} class="padding-top-10">${this._translations.signIn}</calcite-link></calcite-notice>`;
1586
1325
  }
1587
1326
  _renderNoPermission() {
1588
- return m`<calcite-notice open scale=m icon=effects kind=info><div slot=title>${this._translations.noPermissionTitle}</div><div slot=message class="padding-top-10">${ae(this._translations.noPermissionMessage.replace("{{orgUrl}}", $t).replace("{{configAI}}", Tt))}</div></calcite-notice>`;
1327
+ return I`<calcite-notice open scale=m icon=effects kind=info><div slot=title>${this._translations.noPermissionTitle}</div><div slot=message class="padding-top-10">${Ae(this._translations.noPermissionMessage.replace("{{orgUrl}}", is).replace("{{configAI}}", os))}</div></calcite-notice>`;
1589
1328
  }
1590
1329
  render() {
1591
- return m`<calcite-dialog class="chat-panel" .open=${this.open} .heading=${this._translations.solutionAssistantTitle} placement=bottom-start @calciteDialogClose=${() => {
1592
- this.closeAssistant.emit(!0), this.open = !1;
1593
- }}><span class="chat-panel-heading" slot=header-content><span class="padding-right-8">${this._translations.solutionAssistantTitle}</span><calcite-chip .label=${this._translations.betaTag} .value=${this._translations.betaTag}>${this._translations.betaTag}</calcite-chip></span>${this.messages.length > 1 ? m`<calcite-button appearance=transparent class="icon-color-background" .disabled=${!!this._isLoading || this._isTyping} id=newChatButton icon-end=speech-bubble-plus kind=neutral label="New conversation" @click=${this.resetChat} scale=l slot=header-actions-end></calcite-button><calcite-tooltip placement=bottom reference-element=newChatButton><span>${this._translations.tooltips.newConversation}</span></calcite-tooltip>` : ""}<div class="chat-messages" ${ne(this._setMessageContainerRef)}>${this.messages.map((e) => e.render)}${this._isLoading && m`<calcite-card class="loader-message"><div class="message-content display-flex-row"><calcite-loader .label=${this._isLoadingText} inline scale=s></calcite-loader>${this._isLoadingText != "" && m`<div class="padding-left-10">${this._isLoadingText}</div>` || ""}</div></calcite-card>` || ""}${this._chatContainer && !this._isAtBottom(this._chatContainer) && !this._isAutoScroll && m`<calcite-fab icon=arrow-down @click=${() => {
1594
- this._isAutoScroll = !0, this._scrollToBottom(), setTimeout(() => {
1595
- this.requestUpdate();
1596
- }, 100);
1597
- }} scale=m></calcite-fab>` || ""}${this._configContextConsumer.value?.userSession?.token ? this._configContextConsumer.value?.authentication?.CanUseAI ? "" : this._renderNoPermission() : this._renderNoSign()}</div><div slot=footer class="width-100"><div class="chat-input"><calcite-text-area .disabled=${!this._configContextConsumer.value?.userSession?.token || !this._configContextConsumer.value?.authentication?.CanUseAI} resize=none rows=3 .placeholder=${this._translations.sendMessage} value ${ne(this._setInputRef)}></calcite-text-area><calcite-button appearance=outline .disabled=${!!this._isLoading || this._isTyping || !this._configContextConsumer.value?.userSession?.token || !this._configContextConsumer.value?.authentication?.CanUseAI} icon-start=send id=sendQuestion kind=neutral icon-flip-rtl=start @click=${() => {
1598
- this._inputRef && (this.handleSendMessage(this._inputRef.value.trim()), this._inputRef.value = "");
1599
- }} @keydown=${(e) => Z(e, () => {
1600
- this._inputRef && (this.handleSendMessage(this._inputRef.value.trim()), this._inputRef.value = "");
1601
- })}></calcite-button><calcite-tooltip placement=bottom reference-element=sendQuestion><span>${this._translations.tooltips.sendQuestion}</span></calcite-tooltip></div><div class="disclaimer-div padding-top-10" slot=footer><calcite-icon icon=information scale=s></calcite-icon>${this._translations.disclaimerMessage}<a href=https://links.esri.com/solutions/security-concern target=_blank>${this._translations.reportConcern}</a></div></div></calcite-dialog>`;
1602
- }
1603
- _scrollToBottom() {
1604
- this._chatContainer && this._isAutoScroll && setTimeout(() => {
1605
- this._chatContainer && (this._chatContainer.scrollTop = this._chatContainer.scrollHeight);
1606
- }, 100);
1607
- }
1608
- _emitItemIdFromAI(e) {
1609
- const t = new CustomEvent("solutionIDFromAssistant", {
1610
- detail: e,
1611
- bubbles: !0,
1612
- composed: !0
1613
- });
1614
- window.dispatchEvent(t);
1615
- }
1616
- _submitFollowupQuestion(e) {
1617
- const t = new CustomEvent("submitQuestion", {
1618
- detail: e,
1619
- bubbles: !0,
1620
- composed: !0
1621
- });
1622
- window.dispatchEvent(t);
1623
- }
1624
- _getMostRecentQuestion() {
1625
- return [...this.messages].reverse().find((e) => e.author === "human") || null;
1626
- }
1627
- _sendFeedback(e, t, n, s, a) {
1628
- const r = `https://survey123.arcgis.com/share/6e349a50b4504ca6b6107216d568db5f?field:_source=${encodeURIComponent("Solutions Assistant")}&field:user_evaluation=${encodeURIComponent(n)}&field:question=${encodeURIComponent(t)}&field:answer=${encodeURIComponent(e)}&field:context=${encodeURIComponent(JSON.stringify({ intent: a }))}&field:conversation_id=${encodeURIComponent(s)}&field:version=${encodeURIComponent("v1")}`;
1629
- window.open(r, "_blank");
1630
- }
1631
- _copyResponseToClipboard(e, t) {
1632
- navigator.clipboard.writeText(e);
1633
- const n = t.currentTarget;
1634
- n.iconStart = "check", setTimeout(() => {
1635
- n.iconStart = "copy";
1636
- }, 3e3);
1637
- }
1638
- _startTypeWriter(e, t, n, s, a) {
1639
- if (t.length > 0) {
1640
- e.setText(t);
1641
- const r = async () => {
1642
- e.updateDisplayText();
1643
- const l = e.getText(), o = await f.parse(l);
1644
- n.innerHTML = o.replace(/<a\s+/g, '<a target="_blank" '), l.length < this._currentResponse.length ? (this._scrollToBottom(), setTimeout(r, 5)) : (this._isTyping = !1, this._isAutoScroll = !1, s.classList.remove("display-none"), a.classList.remove("display-none"));
1645
- };
1646
- r();
1647
- }
1330
+ let e = this._suggestedPrompts.length > 0 ? this._suggestedPrompts : this._hasInteracted ? [] : Object.values(this._translations.defaultFollowUpQuestions);
1331
+ return this._suggestedPrompts.length > 0 ? e = this._suggestedPrompts : this._hasInteracted || (e = [...Object.values(this._translations.defaultFollowUpQuestions)]), I`<calcite-panel class="chat-panel"><div class="header-content" slot=header-content><span class="header-title">${this._translations.solutionAssistantTitle}</span></div>${this._configContextConsumer.value?.userSession?.token ? this._configContextConsumer.value?.authentication?.CanUseAI ? I`${!this._isMobile && I`<calcite-action id=solutionBuilderAction icon=pencil-square .text=${this._translations.tooltips.builder} text-enabled .indicator=${this.hasActiveBuilderDesign} .disabled=${!this.hasActiveBuilderDesign} .active=${this.builderVisible} selection-appearance=highlight @click=${() => {
1332
+ window.dispatchEvent(new CustomEvent("toggleSolutionBuilder"));
1333
+ }} scale=m slot=header-actions-end></calcite-action>` || ""}${!this._isMobile && I`<calcite-tooltip placement=bottom reference-element=solutionBuilderAction><span>${this._translations.tooltips.solutionBuilder}</span></calcite-tooltip>` || ""}<arcgis-assistant reference-element copy-enabled feedback-enabled heading description entry-message=${this._translations.defaultStartUpMessage ?? Z} .suggestedPrompts=${e} @arcgisSubmit=${(s) => {
1334
+ console.log("arcgis submit: ", s.detail), this._suggestedPrompts = [], e = [], this._hasInteracted = !0, this._chatStartTime = Date.now(), this.assistantProcessing.emit(!0);
1335
+ }} @arcgisFeedback=${(s) => {
1336
+ s.detail;
1337
+ }} @arcgisInterrupt=${() => {
1338
+ this._queryElementInShadowDom(this.el, ".footer-container", !0);
1339
+ }} @arcgisInterruptCancel=${() => {
1340
+ this._queryElementInShadowDom(this.el, ".footer-container", !1);
1341
+ }} @arcgisInterruptSubmit=${() => {
1342
+ this._queryElementInShadowDom(this.el, ".footer-container", !1);
1343
+ }} ${Me(this._assistantRef)}><calcite-button appearance=transparent id=newChatButton icon-start=speech-bubble-plus kind=neutral .label=${this._translations.tooltips.newChat} @click=${() => {
1344
+ this.hasActiveBuilderDesign ? this._showNewChatConfirm = !0 : this._clearConversation();
1345
+ }} round scale=m slot=entry-actions-start>${this._translations.tooltips.newChat}</calcite-button><arcgis-assistant-agent .agent=${ns} .context=${{
1346
+ token: this._configContextConsumer.value?.userSession?.token,
1347
+ configContext: this._configContextConsumer.value,
1348
+ convoId: this._conversationId,
1349
+ portal: this._configContextConsumer.value?.authentication.Portal,
1350
+ assistantRef: this._assistantRef,
1351
+ translations: this._translations,
1352
+ solutionDesignJson: this._solutionDesignJson,
1353
+ setConversationId: (s) => {
1354
+ this._conversationId = s;
1355
+ },
1356
+ clearSuggestedPrompts: () => {
1357
+ this._suggestedPrompts = [];
1358
+ }
1359
+ }}></arcgis-assistant-agent></arcgis-assistant><div slot=footer class="disclaimer-div width-100"><calcite-chip class="beta-chip" appearance=solid kind=neutral .label=${this._translations.betaTag} scale=s>${this._translations.betaTag}</calcite-chip><span>${this._translations.disclaimerMessage} <a href=https://links.esri.com/solutions/security-concern rel="noopener noreferrer" target=_blank>${this._translations.reportConcern}</a></span></div>` : this._renderNoPermission() : this._renderNoSign()}${this._showNewChatConfirm && I`<calcite-dialog close-disabled escape-disabled heading="Start new conversation" modal open>${this._translations.builderMessages.discardMessage}<calcite-button appearance=outline @click=${() => {
1360
+ this._showNewChatConfirm = !1;
1361
+ }} slot=footer-end>\r\n Cancel</calcite-button><calcite-button appearance=solid kind=danger @click=${() => {
1362
+ this._showNewChatConfirm = !1, window.dispatchEvent(new CustomEvent("requestBuilderDiscard"));
1363
+ }} slot=footer-end>\r\n Discard</calcite-button></calcite-dialog>` || ""}<calcite-action icon=x id=closeAssistantButton .label=${this._translations.tooltips.close} @click=${() => {
1364
+ this.closeAssistant.emit(!0);
1365
+ }} slot=header-actions-end .text=${this._translations.tooltips.close}></calcite-action><calcite-tooltip placement=bottom reference-element=closeAssistantButton><span>${this._translations.tooltips.close}</span></calcite-tooltip></calcite-panel>`;
1648
1366
  }
1649
- _showCardById(e) {
1650
- const t = this.renderRoot.querySelector(`#${e}`);
1651
- t && t.classList.remove("display-none");
1367
+ _clearConversation() {
1368
+ this._conversationId = void 0, this._suggestedPrompts = [], this._hasInteracted = !1, this._assistantRef.value?.clearChatHistory(), this._queryElementInShadowDom(this.el, ".footer-container", !1);
1652
1369
  }
1653
- _isAtBottom(e) {
1654
- return e.scrollTop + e.clientHeight >= e.scrollHeight - 5;
1370
+ _sendFeedback(e, s, n, i) {
1371
+ const o = `https://survey123.arcgis.com/share/6e349a50b4504ca6b6107216d568db5f?field:_source=${encodeURIComponent("Solutions Assistant")}&field:user_evaluation=${encodeURIComponent(n)}&field:question=${encodeURIComponent(s)}&field:answer=${encodeURIComponent(e)}&field:context=${encodeURIComponent(JSON.stringify({ agent: i }))}&field:version=${encodeURIComponent("v2")}`;
1372
+ window.open(o, "_blank");
1655
1373
  }
1656
1374
  async _loadUserFirstName() {
1657
1375
  try {
1658
1376
  const e = await this._configContextConsumer.value?.userSession?.getUser();
1659
1377
  if (e?.fullName) {
1660
- const t = e.fullName.split(" ")[0];
1661
- this.userFirstName = t;
1378
+ const s = e.fullName.split(" ")[0];
1379
+ this.userFirstName = s;
1662
1380
  }
1663
1381
  } catch {
1664
1382
  }
1665
1383
  }
1666
- _getAIServiceUrl() {
1667
- if (this._configContextConsumer.value) {
1668
- const e = this._configContextConsumer.value;
1669
- e.authentication && e.authentication?.Portal && e.authentication?.Portal.helperServices.aiAssistantServices && (this.serverRoot = e.authentication?.Portal.helperServices.aiAssistantServices.url);
1670
- }
1384
+ _parseAgentPickedAndTask(e) {
1385
+ const s = Array.from(this._assistantRef.value?.messages || []), n = e.log || [], a = [...s].sort((d, g) => g.id - d.id).find((d) => d.role === "user" && d.id <= e.id)?.content || null, l = n.find((d) => typeof d == "string" && d.includes("Agent picked:")) ?? null;
1386
+ if (!l)
1387
+ return { agentPicked: null, taskAssigned: null, userMessage: a };
1388
+ const u = /Agent picked:\s*(.*?)\s*(?:\\n|\r?\n)\s*Task Assigned:\s*([\s\S]*)$/i, c = l.match(u);
1389
+ if (!c)
1390
+ return { agentPicked: null, taskAssigned: null, userMessage: a };
1391
+ const m = c[1].trim(), f = c[2].trim();
1392
+ return { agentPicked: m, taskAssigned: f, userMessage: a };
1393
+ }
1394
+ _emitItemIdFromAI(e) {
1395
+ const s = new CustomEvent("solutionIDFromAssistant", {
1396
+ detail: e,
1397
+ bubbles: !0,
1398
+ composed: !0
1399
+ });
1400
+ window.dispatchEvent(s);
1401
+ }
1402
+ _queryElementInShadowDom(e, s, n) {
1403
+ const i = e.shadowRoot;
1404
+ if (i) {
1405
+ const o = i.querySelector("arcgis-assistant");
1406
+ o && o.shadowRoot && this._findElementInShadowDom(o.shadowRoot, s, n);
1407
+ } else
1408
+ console.log("No shadowRoot found on this component.");
1409
+ }
1410
+ _findElementInShadowDom(e, s, n) {
1411
+ const i = e.querySelector(s);
1412
+ i && this._disableElementAndChildren(i, n);
1413
+ const o = e.children;
1414
+ for (const a of Array.from(o))
1415
+ a.classList.contains(s) && this._disableElementAndChildren(a, n), this._findElementInShadowDom(a, s, n);
1416
+ }
1417
+ _disableElementAndChildren(e, s) {
1418
+ "disabled" in e && (e.disabled = s), e.querySelectorAll("*").forEach((i) => {
1419
+ i.nodeName.toLowerCase() === "arcgis-assistant-chat-entry" && i.shadowRoot && i.shadowRoot.querySelectorAll("*").forEach((l) => {
1420
+ "disabled" in l && (l.disabled = s);
1421
+ }), "disabled" in i && (i.disabled = s);
1422
+ });
1671
1423
  }
1672
1424
  }
1673
- $e("arcgis-solutions-assistant", Rt);
1425
+ _e("arcgis-solutions-assistant", as);
1674
1426
  export {
1675
- Rt as ArcgisSolutionsAssistant
1427
+ as as ArcgisSolutionsAssistant
1676
1428
  };