@esri/solutions-components 5.1.0-next.9 → 5.1.0-next.90

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 (646) hide show
  1. package/dist/cdn/224TOFAW.js +29 -0
  2. package/dist/cdn/{NDWNF7CQ.js → 2AO55DUN.js} +1 -1
  3. package/dist/cdn/2B4SGB3I.js +2 -0
  4. package/dist/cdn/2HUG6L4M.js +2 -0
  5. package/dist/cdn/{ULCILXSA.js → 2PM224B6.js} +1 -1
  6. package/dist/cdn/32YZXXMV.js +2 -0
  7. package/dist/cdn/{JK75TUSP.js → 34EUIYLN.js} +1 -1
  8. package/dist/cdn/36TEZXBH.js +28 -0
  9. package/dist/cdn/{AKDP6MCB.js → 3JGLETSR.js} +1 -1
  10. package/dist/cdn/{7YIQXDUF.js → 3RUGNS6K.js} +1 -1
  11. package/dist/cdn/{7DVOR4SY.js → 3WKKIXVT.js} +1 -1
  12. package/dist/cdn/{WNJHBSCN.js → 4J3ETN35.js} +1 -1
  13. package/dist/cdn/4LXH3MTT.js +2 -0
  14. package/dist/cdn/4QJK4LPR.js +2 -0
  15. package/dist/cdn/4ZKGHGGU.js +2 -0
  16. package/dist/cdn/{EYBEUSBG.js → 55PTISQ7.js} +1 -1
  17. package/dist/cdn/{SEDPMCMZ.js → 5A7H4LVR.js} +1 -1
  18. package/dist/cdn/{TZL2746B.js → 5ADMCIGY.js} +1 -1
  19. package/dist/cdn/{QJZL3GS7.js → 5AVH2R6T.js} +1 -1
  20. package/dist/cdn/{HBHKZGWE.js → 5CW67X4G.js} +1 -1
  21. package/dist/cdn/{7TTSB4KO.js → 5EYS2CH4.js} +1 -1
  22. package/dist/cdn/{BDXIKPLU.js → 5HZMUGQD.js} +1 -1
  23. package/dist/cdn/{T537IZUH.js → 5JLXNBOA.js} +1 -1
  24. package/dist/cdn/5NPISZEN.js +2 -0
  25. package/dist/cdn/5RTR3NSC.js +2 -0
  26. package/dist/cdn/{G2ME4BAQ.js → 5VDDAINK.js} +1 -1
  27. package/dist/cdn/{UK4O67GV.js → 64Y5CQSL.js} +1 -1
  28. package/dist/cdn/6DCCVJMZ.js +2 -0
  29. package/dist/cdn/{LPNQJBCN.js → 6IIMJC5D.js} +1 -1
  30. package/dist/cdn/6MP2RVUK.js +2 -0
  31. package/dist/cdn/{7GPGKDLH.js → 6O3XSKQY.js} +1 -1
  32. package/dist/cdn/{BODNQLRD.js → 6PFEFNQM.js} +1 -1
  33. package/dist/cdn/{QI5LXFA7.js → 6WQK4DHL.js} +1 -1
  34. package/dist/cdn/{KDZGRQXD.js → 73YLLTLN.js} +1 -1
  35. package/dist/cdn/{2BANZAQ7.js → 74PV6PZ3.js} +1 -1
  36. package/dist/cdn/76APML4N.js +2 -0
  37. package/dist/cdn/{UFKD4KP3.js → 7CJQI7VH.js} +1 -1
  38. package/dist/cdn/{XVRRQMOP.js → 7EF5FK2O.js} +1 -1
  39. package/dist/cdn/{5UQRM2YJ.js → 7TCHZME4.js} +1 -1
  40. package/dist/cdn/A7PEA2YP.js +2 -0
  41. package/dist/cdn/{T745GPG3.js → AFZETCUL.js} +1 -1
  42. package/dist/cdn/AIQEYNZE.js +2 -0
  43. package/dist/cdn/{F6VMV2VA.js → AL2DDBXW.js} +1 -1
  44. package/dist/cdn/{KU62OLRE.js → ALSK2SPM.js} +1 -1
  45. package/dist/cdn/{7MTJZG5N.js → B67TTSQO.js} +1 -1
  46. package/dist/cdn/B7AQR2UD.js +2 -0
  47. package/dist/cdn/BBNWDMCK.js +2 -0
  48. package/dist/cdn/{B3R52L7H.js → BMBNSJZQ.js} +1 -1
  49. package/dist/cdn/BRQJSGIX.js +2 -0
  50. package/dist/cdn/{CMK42W7E.js → BU5PIAGS.js} +1 -1
  51. package/dist/cdn/BVWAUO73.js +2 -0
  52. package/dist/cdn/{JYLXH6OM.js → C3ZGM4K7.js} +1 -1
  53. package/dist/cdn/DJOOB7YP.js +2 -0
  54. package/dist/cdn/DLH53PYM.js +7 -0
  55. package/dist/cdn/{57JYZYF5.js → DQWJUYMM.js} +1 -1
  56. package/dist/cdn/DUZ4KXB3.js +2 -0
  57. package/dist/cdn/DWEIHGFT.js +2 -0
  58. package/dist/cdn/DX56I3QB.js +3 -0
  59. package/dist/cdn/{VXMIT5WR.js → EBRCBPEM.js} +1 -1
  60. package/dist/cdn/ELPH6EFW.js +2 -0
  61. package/dist/cdn/ET32EBBO.js +50 -0
  62. package/dist/cdn/FGWGYIBZ.js +2 -0
  63. package/dist/cdn/FMHXFW3E.js +2 -0
  64. package/dist/cdn/FN2NSVLO.js +2 -0
  65. package/dist/cdn/{BPAYAR53.js → GEXLEGOL.js} +1 -1
  66. package/dist/cdn/GM772Z5U.js +2 -0
  67. package/dist/cdn/H5E6ISYP.js +4 -0
  68. package/dist/cdn/{EYXOOK3V.js → H5TWIMN3.js} +1 -1
  69. package/dist/cdn/{QY5QGQ2X.js → HKVSZTWH.js} +1 -1
  70. package/dist/cdn/{BEGKM3ZM.js → HMKJYAVE.js} +1 -1
  71. package/dist/cdn/{VZPEYWYR.js → HNVWONX2.js} +1 -1
  72. package/dist/cdn/{NLTK53B2.js → HOLASUOX.js} +1 -1
  73. package/dist/cdn/I33B45EZ.js +2 -0
  74. package/dist/cdn/{JNO5VYYI.js → I6H42GYO.js} +1 -1
  75. package/dist/cdn/{P4FX4W2X.js → IV4U4XB5.js} +1 -1
  76. package/dist/cdn/{RTPXDRZ7.js → J5FYHTE4.js} +1 -1
  77. package/dist/cdn/{HBQN25RR.js → J75MHJID.js} +2 -2
  78. package/dist/cdn/{RDHQTCGH.js → J7IFAEYK.js} +1 -1
  79. package/dist/cdn/JC5EXPFH.js +2 -0
  80. package/dist/cdn/JDX6K42U.js +359 -0
  81. package/dist/cdn/JMO7ZFWL.js +26 -0
  82. package/dist/cdn/JWGDDEVT.js +2 -0
  83. package/dist/cdn/JZ472WDS.js +2 -0
  84. package/dist/cdn/{S423P2GA.js → K3DQKY7V.js} +1 -1
  85. package/dist/cdn/K6PW4IX6.js +2 -0
  86. package/dist/cdn/KCEVE53E.js +2 -0
  87. package/dist/cdn/KEZAVYJU.js +2 -0
  88. package/dist/cdn/{NDUAEC62.js → KIUBUHVM.js} +1 -1
  89. package/dist/cdn/{U6ALIHIC.js → KOHVDHPZ.js} +1 -1
  90. package/dist/cdn/L33BENH7.js +2 -0
  91. package/dist/cdn/{XIB6YS7Q.js → L342GSW5.js} +1 -1
  92. package/dist/cdn/LCERYSRG.js +2 -0
  93. package/dist/cdn/{TBQQ6OPX.js → LCPWL74J.js} +1 -1
  94. package/dist/cdn/LDK4C3VJ.js +2 -0
  95. package/dist/cdn/{3PUZFKV2.js → LVOTTNTF.js} +1 -1
  96. package/dist/cdn/M6HNHWAM.js +32 -0
  97. package/dist/cdn/{JLYGSQEC.js → MBBG3S5B.js} +1 -1
  98. package/dist/cdn/MKHDEHCO.js +2 -0
  99. package/dist/cdn/{X4LKJTY5.js → MPJRP2QO.js} +1 -1
  100. package/dist/cdn/{36HEIJAI.js → MVGX2AGG.js} +1 -1
  101. package/dist/cdn/MVYIHKFK.js +2 -0
  102. package/dist/cdn/{JALU4653.js → MZY3G7B5.js} +1 -1
  103. package/dist/cdn/{TER4MTK6.js → N3F6RUT6.js} +1 -1
  104. package/dist/cdn/{NXVNTNE5.js → NBQ5MMHE.js} +1 -1
  105. package/dist/cdn/NP7POZTI.js +2 -0
  106. package/dist/cdn/{EQTLT2A3.js → NPOHA56R.js} +1 -1
  107. package/dist/cdn/NSJAGP7T.js +18 -0
  108. package/dist/cdn/NSKVOAA7.js +2 -0
  109. package/dist/cdn/{TUGKPWRB.js → NUD23X7L.js} +1 -1
  110. package/dist/cdn/NV3RC3FX.js +2 -0
  111. package/dist/cdn/{T3JHAFWW.js → NYWKJJKK.js} +1 -1
  112. package/dist/cdn/{UF67SSGX.js → O2L7DY23.js} +1 -1
  113. package/dist/cdn/{AA7X6GKH.js → O3O4EPB6.js} +1 -1
  114. package/dist/cdn/{PPXEYILP.js → O4E54ZIL.js} +1 -1
  115. package/dist/cdn/OBKT6Y6H.js +2 -0
  116. package/dist/cdn/{T2WSMUVL.js → OIRNHTN3.js} +1 -1
  117. package/dist/cdn/{H3LJVYII.js → OPWB5U5Y.js} +1 -1
  118. package/dist/cdn/OV4IBBDL.js +2 -0
  119. package/dist/cdn/{TWC7OKKZ.js → PAMG6BC2.js} +1 -1
  120. package/dist/cdn/PHIGRQ7V.js +2 -0
  121. package/dist/cdn/PP2SFAFD.js +2 -0
  122. package/dist/cdn/PRXFYNIG.js +19 -0
  123. package/dist/cdn/{XYFIAJPT.js → QAMVNRII.js} +1 -1
  124. package/dist/cdn/QO2RC46D.js +2 -0
  125. package/dist/cdn/QPNIPE5H.js +2 -0
  126. package/dist/cdn/{VCI64HUS.js → QQN472YW.js} +1 -1
  127. package/dist/cdn/QSBVJLYZ.js +2 -0
  128. package/dist/cdn/QYDGCI2P.js +2 -0
  129. package/dist/cdn/{GTDHYS64.js → QZRJRLYA.js} +2 -2
  130. package/dist/cdn/{3AQ7U2PF.js → R67EKKSL.js} +1 -1
  131. package/dist/cdn/{ANX2J4ID.js → RIM6ODUZ.js} +1 -1
  132. package/dist/cdn/{5LCHTZTL.js → RJFWIPOY.js} +1 -1
  133. package/dist/cdn/RKBDZ7GR.js +2 -0
  134. package/dist/cdn/{EBX4JFH7.js → ROKVOX7R.js} +1 -1
  135. package/dist/cdn/{VJ6OLNFI.js → RUZVGWHQ.js} +1 -1
  136. package/dist/cdn/RWGEJGAH.js +2 -0
  137. package/dist/cdn/{PITLQBO6.js → RX7HKQ7Y.js} +1 -1
  138. package/dist/cdn/{3XVYTVMS.js → S7MMEM3H.js} +1 -1
  139. package/dist/cdn/{CDN3RSUG.js → SB3EADQF.js} +1 -1
  140. package/dist/cdn/{PNLII42L.js → SBTQKPQR.js} +1 -1
  141. package/dist/cdn/{E7W2OZL3.js → SFM524YL.js} +1 -1
  142. package/dist/cdn/SGBMDDAS.js +2 -0
  143. package/dist/cdn/{FTMEQQF5.js → SH72A5PB.js} +1 -1
  144. package/dist/cdn/{UP35AXF6.js → SUK3BLEW.js} +1 -1
  145. package/dist/cdn/{34PDHOYH.js → SWAMKTGK.js} +1 -1
  146. package/dist/cdn/SWWDYNJE.js +2 -0
  147. package/dist/cdn/SXVCHOTK.js +79 -0
  148. package/dist/cdn/{XHYBCMYO.js → TILX2YPV.js} +1 -1
  149. package/dist/cdn/{I3D5WRYZ.js → TM3CBSWO.js} +1 -1
  150. package/dist/cdn/{BPEZ62VT.js → TMKYG3QB.js} +1 -1
  151. package/dist/cdn/{62PU7U2Z.js → UDBUSMCV.js} +1 -1
  152. package/dist/cdn/{SZRONHSX.js → UHVJUD6J.js} +1 -1
  153. package/dist/cdn/UJLDLGTN.js +2 -0
  154. package/dist/cdn/ULTK7DMM.js +2 -0
  155. package/dist/cdn/{QHYG6C3L.js → UYYYSJL4.js} +1 -1
  156. package/dist/cdn/V3YTRV33.js +2 -0
  157. package/dist/cdn/VHOYM5MD.js +2 -0
  158. package/dist/cdn/VPDMT4CY.js +2 -0
  159. package/dist/cdn/VWPOKKOE.js +2 -0
  160. package/dist/cdn/{PJH3H7LZ.js → W6E3DYEQ.js} +1 -1
  161. package/dist/cdn/{5KD4GK7Y.js → WAW43L2Y.js} +1 -1
  162. package/dist/cdn/WDHXTOWG.js +102 -0
  163. package/dist/cdn/{4FBEUQIB.js → WEAC3FS7.js} +3 -3
  164. package/dist/cdn/{DIDOZ4J6.js → WH2NFOMH.js} +5 -5
  165. package/dist/cdn/{GNW56CHH.js → WHS5LXKB.js} +1 -1
  166. package/dist/cdn/{G4EVXSWW.js → WLXO44M4.js} +1 -1
  167. package/dist/cdn/WQGGCG6M.js +2 -0
  168. package/dist/cdn/{2BQCT6XO.js → WSPAWPSL.js} +1 -1
  169. package/dist/cdn/{VIWNXKUP.js → WUM5AKBT.js} +1 -1
  170. package/dist/cdn/WVZM6LEZ.js +2 -0
  171. package/dist/cdn/X25OZSS4.js +2 -0
  172. package/dist/cdn/X5EABWHE.js +2 -0
  173. package/dist/cdn/XN2JVOOR.js +2 -0
  174. package/dist/cdn/XQQ52NKX.js +2 -0
  175. package/dist/cdn/{PJ5ORVU5.js → XVXOCPOT.js} +1 -1
  176. package/dist/cdn/XXT542UR.js +2 -0
  177. package/dist/cdn/{NOIG2A4U.js → Y2ORH4QJ.js} +1 -1
  178. package/dist/cdn/{TF7LQKOT.js → YHACLWMU.js} +1 -1
  179. package/dist/cdn/{DLBZRD4H.js → YKQDHR27.js} +1 -1
  180. package/dist/cdn/YN7SGJOG.js +2 -0
  181. package/dist/cdn/YOAGUXW6.js +2 -0
  182. package/dist/cdn/{AJY7XD7A.js → Z25OUDBP.js} +1 -1
  183. package/dist/cdn/ZBET72YB.js +2 -0
  184. package/dist/cdn/{DQ4POWIJ.js → ZDLTST3A.js} +1 -1
  185. package/dist/cdn/ZKELOWSS.js +2 -0
  186. package/dist/cdn/ZONXYZVU.js +2 -0
  187. package/dist/cdn/{TVCG3ZCH.js → ZR4T2HGR.js} +1 -1
  188. package/dist/cdn/ZYCAAXQF.js +2 -0
  189. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ar.json +1 -1
  190. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.bg.json +1 -1
  191. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.bs.json +1 -1
  192. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ca.json +1 -1
  193. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.cs.json +1 -1
  194. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.da.json +1 -1
  195. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.de.json +1 -1
  196. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.el.json +1 -1
  197. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.en.json +1 -1
  198. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.es.json +1 -1
  199. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.et.json +1 -1
  200. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.fi.json +1 -1
  201. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.fr.json +1 -1
  202. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.he.json +1 -1
  203. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.hr.json +1 -1
  204. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.hu.json +1 -1
  205. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.id.json +1 -1
  206. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.it.json +1 -1
  207. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ja.json +1 -1
  208. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.json +1 -1
  209. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ko.json +1 -1
  210. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.lt.json +1 -1
  211. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.lv.json +1 -1
  212. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.nl.json +1 -1
  213. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.no.json +1 -1
  214. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.pl.json +1 -1
  215. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.pt-BR.json +1 -1
  216. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.pt-PT.json +1 -1
  217. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ro.json +1 -1
  218. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.ru.json +1 -1
  219. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sk.json +1 -1
  220. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sl.json +1 -1
  221. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sr.json +1 -1
  222. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.sv.json +1 -1
  223. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.th.json +1 -1
  224. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.tr.json +1 -1
  225. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.uk.json +1 -1
  226. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.vi.json +1 -1
  227. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.zh-CN.json +1 -1
  228. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.zh-HK.json +1 -1
  229. package/dist/cdn/assets/arcgis-solutions-assistant/t9n/messages.zh-TW.json +1 -1
  230. package/dist/cdn/assets/solution-builder-assistant/images/solutions-builder-draft-thumbnail.png +0 -0
  231. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ar.json +1 -0
  232. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.bg.json +1 -0
  233. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.bs.json +1 -0
  234. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ca.json +1 -0
  235. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.cs.json +1 -0
  236. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.da.json +1 -0
  237. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.de.json +1 -0
  238. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.el.json +1 -0
  239. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.en.json +1 -0
  240. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.es.json +1 -0
  241. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.et.json +1 -0
  242. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.fi.json +1 -0
  243. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.fr.json +1 -0
  244. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.he.json +1 -0
  245. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.hr.json +1 -0
  246. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.hu.json +1 -0
  247. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.id.json +1 -0
  248. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.it.json +1 -0
  249. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ja.json +1 -0
  250. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.json +1 -0
  251. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ko.json +1 -0
  252. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.lt.json +1 -0
  253. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.lv.json +1 -0
  254. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.nl.json +1 -0
  255. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.no.json +1 -0
  256. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pl.json +1 -0
  257. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pt-BR.json +1 -0
  258. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.pt-PT.json +1 -0
  259. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ro.json +1 -0
  260. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.ru.json +1 -0
  261. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sk.json +1 -0
  262. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sl.json +1 -0
  263. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sr.json +1 -0
  264. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.sv.json +1 -0
  265. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.th.json +1 -0
  266. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.tr.json +1 -0
  267. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.uk.json +1 -0
  268. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.vi.json +1 -0
  269. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-CN.json +1 -0
  270. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-HK.json +1 -0
  271. package/dist/cdn/assets/solution-builder-assistant/t9n/messages.zh-TW.json +1 -0
  272. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ar.json +1 -1
  273. package/dist/cdn/assets/solution-configure-titles/t9n/messages.bg.json +1 -1
  274. package/dist/cdn/assets/solution-configure-titles/t9n/messages.bs.json +1 -1
  275. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ca.json +1 -1
  276. package/dist/cdn/assets/solution-configure-titles/t9n/messages.cs.json +1 -1
  277. package/dist/cdn/assets/solution-configure-titles/t9n/messages.da.json +1 -1
  278. package/dist/cdn/assets/solution-configure-titles/t9n/messages.de.json +1 -1
  279. package/dist/cdn/assets/solution-configure-titles/t9n/messages.el.json +1 -1
  280. package/dist/cdn/assets/solution-configure-titles/t9n/messages.en.json +1 -1
  281. package/dist/cdn/assets/solution-configure-titles/t9n/messages.es.json +1 -1
  282. package/dist/cdn/assets/solution-configure-titles/t9n/messages.et.json +1 -1
  283. package/dist/cdn/assets/solution-configure-titles/t9n/messages.fi.json +1 -1
  284. package/dist/cdn/assets/solution-configure-titles/t9n/messages.fr.json +1 -1
  285. package/dist/cdn/assets/solution-configure-titles/t9n/messages.he.json +1 -1
  286. package/dist/cdn/assets/solution-configure-titles/t9n/messages.hr.json +1 -1
  287. package/dist/cdn/assets/solution-configure-titles/t9n/messages.hu.json +1 -1
  288. package/dist/cdn/assets/solution-configure-titles/t9n/messages.id.json +1 -1
  289. package/dist/cdn/assets/solution-configure-titles/t9n/messages.it.json +1 -1
  290. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ja.json +1 -1
  291. package/dist/cdn/assets/solution-configure-titles/t9n/messages.json +1 -1
  292. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ko.json +1 -1
  293. package/dist/cdn/assets/solution-configure-titles/t9n/messages.lt.json +1 -1
  294. package/dist/cdn/assets/solution-configure-titles/t9n/messages.lv.json +1 -1
  295. package/dist/cdn/assets/solution-configure-titles/t9n/messages.nl.json +1 -1
  296. package/dist/cdn/assets/solution-configure-titles/t9n/messages.no.json +1 -1
  297. package/dist/cdn/assets/solution-configure-titles/t9n/messages.pl.json +1 -1
  298. package/dist/cdn/assets/solution-configure-titles/t9n/messages.pt-BR.json +1 -1
  299. package/dist/cdn/assets/solution-configure-titles/t9n/messages.pt-PT.json +1 -1
  300. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ro.json +1 -1
  301. package/dist/cdn/assets/solution-configure-titles/t9n/messages.ru.json +1 -1
  302. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sk.json +1 -1
  303. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sl.json +1 -1
  304. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sr.json +1 -1
  305. package/dist/cdn/assets/solution-configure-titles/t9n/messages.sv.json +1 -1
  306. package/dist/cdn/assets/solution-configure-titles/t9n/messages.th.json +1 -1
  307. package/dist/cdn/assets/solution-configure-titles/t9n/messages.tr.json +1 -1
  308. package/dist/cdn/assets/solution-configure-titles/t9n/messages.uk.json +1 -1
  309. package/dist/cdn/assets/solution-configure-titles/t9n/messages.vi.json +1 -1
  310. package/dist/cdn/assets/solution-configure-titles/t9n/messages.zh-CN.json +1 -1
  311. package/dist/cdn/assets/solution-configure-titles/t9n/messages.zh-HK.json +1 -1
  312. package/dist/cdn/assets/solution-configure-titles/t9n/messages.zh-TW.json +1 -1
  313. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ar.json +1 -1
  314. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.bg.json +1 -1
  315. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.bs.json +1 -1
  316. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ca.json +1 -1
  317. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.cs.json +1 -1
  318. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.da.json +1 -1
  319. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.de.json +1 -1
  320. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.el.json +1 -1
  321. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.en.json +1 -1
  322. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.es.json +1 -1
  323. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.et.json +1 -1
  324. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.fi.json +1 -1
  325. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.fr.json +1 -1
  326. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.he.json +1 -1
  327. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.hr.json +1 -1
  328. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.hu.json +1 -1
  329. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.id.json +1 -1
  330. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.it.json +1 -1
  331. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ja.json +1 -1
  332. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.json +1 -1
  333. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ko.json +1 -1
  334. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.lt.json +1 -1
  335. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.lv.json +1 -1
  336. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.nl.json +1 -1
  337. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.no.json +1 -1
  338. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.pl.json +1 -1
  339. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.pt-BR.json +1 -1
  340. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.pt-PT.json +1 -1
  341. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ro.json +1 -1
  342. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.ru.json +1 -1
  343. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sk.json +1 -1
  344. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sl.json +1 -1
  345. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sr.json +1 -1
  346. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.sv.json +1 -1
  347. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.th.json +1 -1
  348. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.tr.json +1 -1
  349. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.uk.json +1 -1
  350. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.vi.json +1 -1
  351. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.zh-CN.json +1 -1
  352. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.zh-HK.json +1 -1
  353. package/dist/cdn/assets/solution-deployed-card-panel/t9n/messages.zh-TW.json +1 -1
  354. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.fi.json +1 -1
  355. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.fr.json +1 -1
  356. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.ja.json +1 -1
  357. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.nl.json +1 -1
  358. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.sk.json +1 -1
  359. package/dist/cdn/assets/solution-deploying-dialog/t9n/messages.tr.json +1 -1
  360. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ar.json +1 -1
  361. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bg.json +1 -1
  362. package/dist/cdn/assets/solution-item-accordion/t9n/messages.bs.json +1 -1
  363. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ca.json +1 -1
  364. package/dist/cdn/assets/solution-item-accordion/t9n/messages.cs.json +1 -1
  365. package/dist/cdn/assets/solution-item-accordion/t9n/messages.da.json +1 -1
  366. package/dist/cdn/assets/solution-item-accordion/t9n/messages.de.json +1 -1
  367. package/dist/cdn/assets/solution-item-accordion/t9n/messages.el.json +1 -1
  368. package/dist/cdn/assets/solution-item-accordion/t9n/messages.en.json +1 -1
  369. package/dist/cdn/assets/solution-item-accordion/t9n/messages.es.json +1 -1
  370. package/dist/cdn/assets/solution-item-accordion/t9n/messages.et.json +1 -1
  371. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fi.json +1 -1
  372. package/dist/cdn/assets/solution-item-accordion/t9n/messages.fr.json +1 -1
  373. package/dist/cdn/assets/solution-item-accordion/t9n/messages.he.json +1 -1
  374. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hr.json +1 -1
  375. package/dist/cdn/assets/solution-item-accordion/t9n/messages.hu.json +1 -1
  376. package/dist/cdn/assets/solution-item-accordion/t9n/messages.id.json +1 -1
  377. package/dist/cdn/assets/solution-item-accordion/t9n/messages.it.json +1 -1
  378. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ja.json +1 -1
  379. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ko.json +1 -1
  380. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lt.json +1 -1
  381. package/dist/cdn/assets/solution-item-accordion/t9n/messages.lv.json +1 -1
  382. package/dist/cdn/assets/solution-item-accordion/t9n/messages.nl.json +1 -1
  383. package/dist/cdn/assets/solution-item-accordion/t9n/messages.no.json +1 -1
  384. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pl.json +1 -1
  385. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-BR.json +1 -1
  386. package/dist/cdn/assets/solution-item-accordion/t9n/messages.pt-PT.json +1 -1
  387. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ro.json +1 -1
  388. package/dist/cdn/assets/solution-item-accordion/t9n/messages.ru.json +1 -1
  389. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sk.json +1 -1
  390. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sl.json +1 -1
  391. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sr.json +1 -1
  392. package/dist/cdn/assets/solution-item-accordion/t9n/messages.sv.json +1 -1
  393. package/dist/cdn/assets/solution-item-accordion/t9n/messages.th.json +1 -1
  394. package/dist/cdn/assets/solution-item-accordion/t9n/messages.tr.json +1 -1
  395. package/dist/cdn/assets/solution-item-accordion/t9n/messages.uk.json +1 -1
  396. package/dist/cdn/assets/solution-item-accordion/t9n/messages.vi.json +1 -1
  397. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-CN.json +1 -1
  398. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-HK.json +1 -1
  399. package/dist/cdn/assets/solution-item-accordion/t9n/messages.zh-TW.json +1 -1
  400. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ar.json +1 -1
  401. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.bg.json +1 -1
  402. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.bs.json +1 -1
  403. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ca.json +1 -1
  404. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.cs.json +1 -1
  405. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.da.json +1 -1
  406. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.de.json +1 -1
  407. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.el.json +1 -1
  408. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.en.json +1 -1
  409. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.es.json +1 -1
  410. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.et.json +1 -1
  411. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.fi.json +1 -1
  412. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.fr.json +1 -1
  413. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.he.json +1 -1
  414. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.hr.json +1 -1
  415. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.hu.json +1 -1
  416. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.id.json +1 -1
  417. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.it.json +1 -1
  418. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ja.json +1 -1
  419. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.json +1 -1
  420. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ko.json +1 -1
  421. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.lt.json +1 -1
  422. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.lv.json +1 -1
  423. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.nl.json +1 -1
  424. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.no.json +1 -1
  425. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.pl.json +1 -1
  426. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.pt-BR.json +1 -1
  427. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.pt-PT.json +1 -1
  428. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ro.json +1 -1
  429. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.ru.json +1 -1
  430. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sk.json +1 -1
  431. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sl.json +1 -1
  432. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sr.json +1 -1
  433. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.sv.json +1 -1
  434. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.th.json +1 -1
  435. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.tr.json +1 -1
  436. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.uk.json +1 -1
  437. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.vi.json +1 -1
  438. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.zh-CN.json +1 -1
  439. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.zh-HK.json +1 -1
  440. package/dist/cdn/assets/solutions-deploy-app/t9n/messages.zh-TW.json +1 -1
  441. package/dist/cdn/index.js +1 -1
  442. package/dist/cdn/main.css +1 -1
  443. package/dist/chunks/Auth.js +89 -67
  444. package/dist/chunks/cardFetchingUtils.js +16 -15
  445. package/dist/chunks/cardsHelpers.js +5 -5
  446. package/dist/chunks/common.js +26 -0
  447. package/dist/chunks/deployAppContexts.js +10 -0
  448. package/dist/chunks/description.js +35 -0
  449. package/dist/chunks/designSolution.js +105 -0
  450. package/dist/chunks/findExistingSolution.js +22 -0
  451. package/dist/chunks/get-portal-url.js +345 -0
  452. package/dist/chunks/getItemIcon.js +18 -9
  453. package/dist/chunks/helpers.js +123 -0
  454. package/dist/chunks/initialAssessment.js +82 -0
  455. package/dist/chunks/interfaces.js +200 -332
  456. package/dist/chunks/solution-deploy-dialog.js +60 -75
  457. package/dist/chunks/solutions-deploy-app-nav.js +111 -84
  458. package/dist/chunks/solutions_assistant_description.js +32 -0
  459. package/dist/chunks/solutions_assistant_prompts.js +29 -0
  460. package/dist/chunks/solutions_explorer_description.js +31 -0
  461. package/dist/chunks/updateDesign.js +5 -0
  462. package/dist/chunks/validators.js +127 -0
  463. package/dist/components/arcgis-solutions-assistant/customElement.d.ts +56 -83
  464. package/dist/components/arcgis-solutions-assistant/customElement.js +52381 -1517
  465. package/dist/components/arcgis-solutions-assistant/index.js +5 -8
  466. package/dist/components/consent-manager/customElement.js +1906 -2237
  467. package/dist/components/create-feature/customElement.js +2 -2
  468. package/dist/components/crowdsource-manager/customElement.js +3 -3
  469. package/dist/components/crowdsource-reporter/customElement.js +1 -1
  470. package/dist/components/edit-card/customElement.js +4 -4
  471. package/dist/components/feature-details/customElement.js +1 -1
  472. package/dist/components/feature-list/customElement.js +1 -1
  473. package/dist/components/info-card/customElement.js +1 -1
  474. package/dist/components/layer-list/customElement.js +1 -1
  475. package/dist/components/layer-table/customElement.js +11 -10
  476. package/dist/components/map-card/customElement.js +16 -15
  477. package/dist/components/map-picker/customElement.js +1 -1
  478. package/dist/components/public-notification/customElement.js +1 -1
  479. package/dist/components/refine-selection/customElement.js +1 -1
  480. package/dist/components/solution-builder-assistant/customElement.d.ts +195 -0
  481. package/dist/components/solution-builder-assistant/customElement.js +695 -0
  482. package/dist/components/solution-builder-assistant/index.d.ts +1 -0
  483. package/dist/components/solution-builder-assistant/index.js +24 -0
  484. package/dist/components/solution-configure-titles/customElement.js +46 -44
  485. package/dist/components/solution-delete-dialog/customElement.js +49 -38
  486. package/dist/components/solution-deploy-dialog/customElement.js +5 -4
  487. package/dist/components/solution-deploy-dialog/index.js +0 -1
  488. package/dist/components/solution-deployed-card/customElement.js +5 -2
  489. package/dist/components/solution-deployed-card-panel/customElement.d.ts +4 -0
  490. package/dist/components/solution-deployed-card-panel/customElement.js +92 -44
  491. package/dist/components/solution-deployed-card-panel/index.js +0 -1
  492. package/dist/components/solution-deploying-dialog/customElement.js +1 -1
  493. package/dist/components/solution-details-card/customElement.js +6 -4
  494. package/dist/components/solution-details-panel/customElement.js +31 -28
  495. package/dist/components/solution-item-accordion/customElement.d.ts +6 -2
  496. package/dist/components/solution-item-accordion/customElement.js +29 -24
  497. package/dist/components/solution-item-diagram/customElement.js +106 -102
  498. package/dist/components/solution-item-diagram/utils/solutionGraph.d.ts +1 -0
  499. package/dist/components/solution-item-icon/customElement.d.ts +6 -0
  500. package/dist/components/solution-item-icon/customElement.js +13 -12
  501. package/dist/components/solution-resource-card/customElement.js +11 -9
  502. package/dist/components/solution-snapshot-gallery/customElement.js +13 -11
  503. package/dist/components/solution-social-share/customElement.js +6 -4
  504. package/dist/components/solution-user-avatar/customElement.js +12 -11
  505. package/dist/components/solutions-all-panel/customElement.js +23 -18
  506. package/dist/components/solutions-all-shell/customElement.js +3 -2
  507. package/dist/components/solutions-deploy-app/customElement.d.ts +9 -0
  508. package/dist/components/solutions-deploy-app/customElement.js +636 -49
  509. package/dist/components/solutions-deploy-app/index.js +5 -0
  510. package/dist/components/solutions-deploy-app-nav/customElement.d.ts +6 -0
  511. package/dist/components/solutions-deploy-app-nav/customElement.js +4 -3
  512. package/dist/components/solutions-deployed-panel/customElement.js +39 -28
  513. package/dist/components/solutions-deployed-panel/index.js +0 -1
  514. package/dist/components/solutions-deployed-shell/customElement.js +22 -17
  515. package/dist/components/solutions-deployed-shell/index.js +0 -1
  516. package/dist/components/solutions-filter-panel/customElement.d.ts +4 -7
  517. package/dist/components/solutions-filter-panel/customElement.js +55 -63
  518. package/dist/components/solutions-filter-panel/index.js +0 -3
  519. package/dist/components/solutions-resources-shell/customElement.d.ts +6 -0
  520. package/dist/components/solutions-resources-shell/customElement.js +44 -44
  521. package/dist/components/solutions-searchsort-toolbar/customElement.d.ts +2 -2
  522. package/dist/components/solutions-searchsort-toolbar/customElement.js +12 -10
  523. package/dist/docs/api.json +1 -1
  524. package/dist/docs/docs.json +1 -1
  525. package/dist/docs/vscode.html-custom-data.json +1 -1
  526. package/dist/docs/web-types.json +1 -1
  527. package/dist/index.d.ts +4 -0
  528. package/dist/loader.js +9 -8
  529. package/dist/solutions-components_commit.txt +5 -5
  530. package/dist/types/lumina.d.ts +12 -6
  531. package/dist/types/preact.d.ts +13 -6
  532. package/dist/types/react.d.ts +14 -6
  533. package/dist/types/stencil.d.ts +12 -6
  534. package/dist/utils/Auth.d.ts +9 -1
  535. package/dist/utils/interfaces.d.ts +133 -15
  536. package/package.json +28 -26
  537. package/dist/cdn/2CFQ6EQE.js +0 -2
  538. package/dist/cdn/2RBKFT3Q.js +0 -2
  539. package/dist/cdn/2W6HTIBW.js +0 -2
  540. package/dist/cdn/3HXIBP2A.js +0 -2
  541. package/dist/cdn/3JF5JLS4.js +0 -2
  542. package/dist/cdn/4CUFJALA.js +0 -2
  543. package/dist/cdn/4ZHQQBPL.js +0 -2
  544. package/dist/cdn/5326HZ74.js +0 -2
  545. package/dist/cdn/5BHMIKFH.js +0 -2
  546. package/dist/cdn/5EB5CGE2.js +0 -2
  547. package/dist/cdn/5KMILQ5O.js +0 -2
  548. package/dist/cdn/5QCBD6ZZ.js +0 -2
  549. package/dist/cdn/5S3WZLB5.js +0 -2
  550. package/dist/cdn/63GFTK3C.js +0 -2
  551. package/dist/cdn/73AX72WY.js +0 -2
  552. package/dist/cdn/743J5TBS.js +0 -2
  553. package/dist/cdn/ABNTJB3U.js +0 -2
  554. package/dist/cdn/ABTC2V7J.js +0 -2
  555. package/dist/cdn/ADAVBSEY.js +0 -2
  556. package/dist/cdn/AVNCYWKK.js +0 -2
  557. package/dist/cdn/BJMKDP4O.js +0 -2
  558. package/dist/cdn/BMJN3MIR.js +0 -2
  559. package/dist/cdn/BVJGYRKY.js +0 -2
  560. package/dist/cdn/COTZAQ2O.js +0 -2
  561. package/dist/cdn/CPMMNWOL.js +0 -3
  562. package/dist/cdn/CTD37SZM.js +0 -2
  563. package/dist/cdn/DIKAKOU5.js +0 -2
  564. package/dist/cdn/E7HQ4JJ2.js +0 -2
  565. package/dist/cdn/EITUC67W.js +0 -2
  566. package/dist/cdn/EPAPHJ3B.js +0 -2
  567. package/dist/cdn/ETLCK5VA.js +0 -2
  568. package/dist/cdn/F346YHSU.js +0 -2
  569. package/dist/cdn/F372CSCW.js +0 -2
  570. package/dist/cdn/FDTM55XL.js +0 -2
  571. package/dist/cdn/FZRH6WPJ.js +0 -2
  572. package/dist/cdn/GRWRAHYE.js +0 -2
  573. package/dist/cdn/HBJZGW4L.js +0 -2
  574. package/dist/cdn/HBPD3T7H.js +0 -2
  575. package/dist/cdn/HMB3LHBC.js +0 -2
  576. package/dist/cdn/HPQPI754.js +0 -2
  577. package/dist/cdn/HVLWGULJ.js +0 -2
  578. package/dist/cdn/I4PUORX4.js +0 -2
  579. package/dist/cdn/ITDDPEQS.js +0 -174
  580. package/dist/cdn/J33ST6ZG.js +0 -2
  581. package/dist/cdn/J5VTBFGR.js +0 -2
  582. package/dist/cdn/JAHYUDR2.js +0 -2
  583. package/dist/cdn/JPCXJ6L4.js +0 -2
  584. package/dist/cdn/JUXXPW6I.js +0 -2
  585. package/dist/cdn/KAEV4RME.js +0 -50
  586. package/dist/cdn/KCZWW43P.js +0 -2
  587. package/dist/cdn/KD46EE7M.js +0 -2
  588. package/dist/cdn/KK5Q6FCI.js +0 -2
  589. package/dist/cdn/KM5RNKXR.js +0 -2
  590. package/dist/cdn/KPBEUIQV.js +0 -2
  591. package/dist/cdn/KSXW3QKP.js +0 -2
  592. package/dist/cdn/KTQ4N7FH.js +0 -2
  593. package/dist/cdn/KWCJDOZU.js +0 -2
  594. package/dist/cdn/LBJLZYFA.js +0 -2
  595. package/dist/cdn/LI4CAGAZ.js +0 -2
  596. package/dist/cdn/LWUSGNUB.js +0 -2
  597. package/dist/cdn/M434TVGU.js +0 -2
  598. package/dist/cdn/M7YK4K5M.js +0 -2
  599. package/dist/cdn/MQXN47F7.js +0 -2
  600. package/dist/cdn/MTKEI6BF.js +0 -2
  601. package/dist/cdn/MZ3QZD4K.js +0 -2
  602. package/dist/cdn/MZLEP53S.js +0 -2
  603. package/dist/cdn/N2U6H3NP.js +0 -2
  604. package/dist/cdn/N7HJKCUK.js +0 -2
  605. package/dist/cdn/N7OY2PSZ.js +0 -2
  606. package/dist/cdn/NIUMAAOQ.js +0 -2
  607. package/dist/cdn/NPWOQ56Y.js +0 -2
  608. package/dist/cdn/NSITJP7B.js +0 -2
  609. package/dist/cdn/O7XO24NH.js +0 -2
  610. package/dist/cdn/OQFRVQQZ.js +0 -2
  611. package/dist/cdn/OYQYXNHJ.js +0 -2
  612. package/dist/cdn/P4KZ6OZF.js +0 -4
  613. package/dist/cdn/P6IYN2TS.js +0 -2
  614. package/dist/cdn/PDZRVXVT.js +0 -2
  615. package/dist/cdn/PYBJ4MQR.js +0 -2
  616. package/dist/cdn/PZ7VDYMM.js +0 -2
  617. package/dist/cdn/PZOAAAVI.js +0 -2
  618. package/dist/cdn/Q3RAS2JS.js +0 -2
  619. package/dist/cdn/QWRM254M.js +0 -2
  620. package/dist/cdn/RDXJFHLV.js +0 -2
  621. package/dist/cdn/REOO5ZGK.js +0 -2
  622. package/dist/cdn/RKMY6VWP.js +0 -2
  623. package/dist/cdn/SF2GPS6K.js +0 -2
  624. package/dist/cdn/SI4NEC5K.js +0 -21
  625. package/dist/cdn/SSO3AN4U.js +0 -2
  626. package/dist/cdn/TH52564W.js +0 -2
  627. package/dist/cdn/THKPPH7G.js +0 -2
  628. package/dist/cdn/TIKDJQ35.js +0 -2
  629. package/dist/cdn/TU5GZK4M.js +0 -2
  630. package/dist/cdn/UFJWRZWQ.js +0 -2
  631. package/dist/cdn/US4NIGXI.js +0 -2
  632. package/dist/cdn/UUTS7RVV.js +0 -2
  633. package/dist/cdn/V4HAD5FL.js +0 -2
  634. package/dist/cdn/VGZHDJIX.js +0 -2
  635. package/dist/cdn/VJEG4LOG.js +0 -2
  636. package/dist/cdn/VPTZV5YV.js +0 -2
  637. package/dist/cdn/WCPWYPN2.js +0 -2
  638. package/dist/cdn/WD3IXGSO.js +0 -2
  639. package/dist/cdn/WRYTPNUC.js +0 -2
  640. package/dist/cdn/WVC3NULO.js +0 -2
  641. package/dist/cdn/XBR2PGVO.js +0 -7
  642. package/dist/cdn/XK6Q5TUT.js +0 -2
  643. package/dist/cdn/XKFGKRYH.js +0 -2
  644. package/dist/cdn/YTK4IGLJ.js +0 -2
  645. package/dist/cdn/ZBNOS7AZ.js +0 -2
  646. package/dist/cdn/ZSHMK5VX.js +0 -2
@@ -0,0 +1,695 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import { c as f } from "../../chunks/runtime.js";
3
+ import { css as w, html as s } from "lit";
4
+ import { u as L } from "../../chunks/useT9n.js";
5
+ import { LitElement as x, nothing as h } from "@arcgis/lumina";
6
+ import { useContextConsumer as E } from "@arcgis/lumina/context";
7
+ import { b as N } from "../../chunks/deployAppContexts.js";
8
+ import { a as D, b as F, v, c as C, d as I, e as z, f as M } from "../../chunks/validators.js";
9
+ const T = w`calcite-panel{--calcite-panel-background-color: var(--calcite-color-foreground-1);--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-left:var(--calcite-border-width-sm) solid var(--calcite-color-border-2);border-top:var(--calcite-border-width-sm) solid var(--calcite-color-border-2);border-bottom:var(--calcite-border-width-sm) solid var(--calcite-color-border-2);height:100%}.header-content-wrapper{display:flex;align-items:center;gap:var(--calcite-space-xs);height:65px;box-sizing:border-box;padding-inline-start:var(--calcite-space-3xl)}.header-title{font-size:var(--calcite-font-size-0);font-weight:500;color:var(--calcite-color-text-1)}.section-header{font-size:var(--calcite-font-size-1);font-weight:var(--calcite-font-weight-bold);color:var(--calcite-color-text-1);display:block}.section-title{font-weight:500;color:var(--calcite-color-text-1)}.draft-badge{display:inline-block;padding:2px 8px;background-color:var(--calcite-color-foreground-1);color:var(--calcite-color-text-1);border:1px solid var(--calcite-color-border-2);border-radius:12px;font-size:var(--calcite-font-size--2);font-weight:500}.builder-content{display:flex;flex-direction:column;flex:1;overflow:auto}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--calcite-space-xxl);text-align:center;color:var(--calcite-color-text-3)}.empty-state calcite-icon{margin-bottom:var(--calcite-space-md);color:var(--calcite-color-text-3)}.empty-state p{margin:0;font-size:var(--calcite-font-size--1)}.header-divider{width:1px;height:2rem;background-color:var(--calcite-color-border-3);margin:0 var(--calcite-space-xxs);align-self:center}.horizontal-divider{border-bottom:solid var(--calcite-border-width-sm);border-color:var(--calcite-color-border-2);margin:var(--calcite-space-lg) 0}.content-container{display:flex;margin:var(--calcite-space-lg)}.solution-item-section{flex:1 1 auto;min-width:0;background:var(--calcite-color-foreground-1);padding:var(--calcite-space-lg) var(--calcite-space-lg) 0}.solution-item-inputs{display:flex;flex-direction:column}.thumbnail-inputs-row{display:flex;gap:var(--calcite-space-lg);align-items:flex-start}.thumbnail-container{flex-shrink:0;border:1px solid var(--calcite-color-border-2);overflow:hidden;background:var(--calcite-color-foreground-2);width:233px}.thumbnail-container img{display:block;width:100%;object-fit:cover}.stacked-inputs{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:var(--calcite-space-lg)}.stacked-inputs calcite-label{min-width:0}.stacked-inputs calcite-input-text,.stacked-inputs calcite-text-area{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.actions-section{flex:0 2 300px;min-width:200px;background:var(--calcite-color-foreground-1);padding:var(--calcite-space-lg)}.action-buttons{display:flex;flex-direction:column;gap:var(--calcite-space-lg);margin-top:var(--calcite-space-2xl)}.action-buttons calcite-notice{margin:0;--calcite-notice-icon-color: var(--calcite-color-brand)}.solution-item-content-section{display:flex;flex-direction:column;margin:0 var(--calcite-space-lg);padding:var(--calcite-space-lg)}.section-header{font-size:var(--calcite-font-size-0);font-weight:500;color:var(--calcite-color-text-2);margin:0 0 var(--calcite-space-md) 0}calcite-list-item calcite-action[slot=actions-end]{padding-right:var(--calcite-space-sm)}.layer-form-content{padding:var(--calcite-space-3xl)}calcite-flow{--calcite-flow-background-color: var(--calcite-color-foreground-1);display:flex;flex-direction:column;flex:1;overflow:auto;margin:0;padding:0}calcite-flow-item{--calcite-flow-item-content-padding: 0}.layer-selector-container{display:flex;flex-direction:column;align-items:stretch}.layer-selector-row{display:flex;gap:var(--calcite-space-md);align-items:end}.layer-selector-row calcite-combobox{flex:1;min-width:0}.layer-selector-row>calcite-button{flex-shrink:0}.layer-selector-container calcite-label{flex:1;min-width:0;margin-bottom:0}.layer-selector-container calcite-combobox{width:100%}.layer-selector-container>calcite-button{flex-shrink:0;margin-bottom:var(--calcite-space-md)}.layer-properties-container{display:flex;flex-direction:column}.layer-properties-row{display:flex;gap:var(--calcite-space-md)}.layer-properties-container calcite-label{flex:1;min-width:0}.layer-properties-container calcite-input-text,.layer-properties-container calcite-combobox{width:100%}.layer-description-container{margin-top:var(--calcite-space-lg)}.layer-description-container calcite-text-area{width:100%;display:block}calcite-label:has(calcite-text-area){display:flex;flex-direction:column;gap:0}.fields-section{margin-top:var(--calcite-space-xl);display:flex;flex-direction:column;align-items:flex-start;width:100%}.fields-section>calcite-label{width:100%}.fields-section calcite-table{width:100%}.fields-section calcite-table-cell:last-child{text-align:center;display:flex;justify-content:center;align-items:center}.field-type-cell,.field-name-cell{display:flex;align-items:center;gap:var(--calcite-space-xs)}.lock-icon{--calcite-icon-color: var(--calcite-color-text-3);flex-shrink:0}.domain-cell-content{display:flex;align-items:center;justify-content:space-between;width:100%;gap:var(--calcite-space-sm)}.domain-cell-content calcite-icon{cursor:pointer;color:var(--calcite-color-text-3);flex-shrink:0}.domain-cell-content calcite-icon:hover{color:var(--calcite-color-brand)}.choice-list-tooltip{margin:0;padding-left:var(--calcite-space-lg);list-style-type:disc}.choice-list-tooltip li{padding:var(--calcite-space-xxs) 0}.edit-icon{cursor:pointer;color:var(--calcite-color-text-3)}.edit-icon:hover{color:var(--calcite-color-brand)}.add-field-button{align-self:flex-start}.add-layer-button{margin-top:var(--calcite-space-md);margin-bottom:var(--calcite-space-sm)}.info-icon-blue{--calcite-icon-color: var(--calcite-color-brand);flex-shrink:0;cursor:default}.domain-section{margin-top:var(--calcite-space-lg);display:flex;flex-direction:column;align-items:flex-start;width:100%}.domain-section>calcite-label{width:100%}.domain-section>div{width:100%}.domain-list{display:flex;flex-direction:column;gap:var(--calcite-space-sm);width:100%}.domain-item{display:flex;align-items:center;gap:var(--calcite-space-sm);padding:var(--calcite-space-xs);background:var(--calcite-color-foreground-1);border:1px solid var(--calcite-color-border-2);border-radius:var(--calcite-border-radius);cursor:move;width:100%;box-sizing:border-box}.domain-item:hover{background:var(--calcite-color-foreground-2)}.domain-item .drag-handle{color:var(--calcite-color-text-3);cursor:grab;flex-shrink:0}.domain-item .drag-handle:active{cursor:grabbing}.domain-item calcite-input-text{flex:1;min-width:0}.domain-item calcite-button{flex-shrink:0}.popover-content{padding:var(--calcite-space-lg);min-width:420px}.popover-field{margin-top:var(--calcite-space-md)}.popover-actions{display:flex;justify-content:flex-end;gap:var(--calcite-space-sm);margin-top:var(--calcite-space-lg)}.padding-top-sm{padding-top:var(--calcite-space-sm)}`, O = "data:image/png;base64,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";
10
+ class k extends x {
11
+ constructor() {
12
+ super(), this.design = null, this._design = null, this._translations = L({ name: "solution-builder-assistant", blocking: !0 }), this._isDirty = !1, this._titleValidationError = null, this._descriptionValidationError = null, this._undoStack = [], this._redoStack = [], this._openPopoverId = null, this._editingItemTitle = "", this._editingItemDescription = "", this._editingItemTitleError = null, this._editingItemDescriptionError = null, this._originalItemTitle = "", this._originalItemDescription = "", this._layerNameValidationError = null, this._layerDescriptionValidationError = null, this._newLayerNameValidationError = null, this._newLayerDescriptionValidationError = null, this._selectedLayerIndex = 0, this._isAddingLayer = !1, this._newLayerName = "", this._newLayerType = "Point", this._newLayerDescription = "", this._isEditingField = !1, this._editingFieldIndex = -1, this._editingFieldType = null, this._editingFieldDisplayName = "", this._editingFieldName = "", this._editingFieldDescription = "", this._editingFieldTypeValue = "string", this._editingFieldLength = 255, this._editingFieldChoiceList = null, this._isAddingNewField = !1, this._isCustomizingLayer = !1, this._newFieldDisplayName = "", this._newFieldName = "", this._newFieldDescription = "", this._newFieldType = "string", this._newFieldLength = 255, this._newFieldChoiceList = null, this._editingFieldDisplayNameError = null, this._editingFieldNameError = null, this._editingFieldDescriptionError = null, this._editingFieldLengthError = null, this._editingFieldChoiceListErrors = /* @__PURE__ */ new Map(), this._newFieldDisplayNameError = null, this._newFieldNameError = null, this._newFieldDescriptionError = null, this._newFieldLengthError = null, this._newFieldChoiceListErrors = /* @__PURE__ */ new Map(), this._originalEditFieldDisplayName = "", this._originalEditFieldName = "", this._originalEditFieldDescription = "", this._originalEditFieldTypeValue = "string", this._originalEditFieldLength = 255, this._originalEditFieldChoiceList = null, this._lastPushedDesign = null, this._designContextConsumer = E({
13
+ context: N,
14
+ subscribe: !0,
15
+ callback: (e) => {
16
+ e?.design && e.design !== this._lastPushedDesign && this._pushDesign(e.design, !1);
17
+ }
18
+ }), this._handleUndo = () => {
19
+ if (this._undoStack.length === 0 || !this._design)
20
+ return;
21
+ const e = this._undoStack[this._undoStack.length - 1];
22
+ this._undoStack = this._undoStack.slice(0, -1), this._redoStack = [...this._redoStack, structuredClone(this._design)], this._design = e, this._lastPushedDesign = e, this._notifyDesignChanged(e);
23
+ }, this._handleRedo = () => {
24
+ if (this._redoStack.length === 0 || !this._design)
25
+ return;
26
+ const e = this._redoStack[this._redoStack.length - 1];
27
+ this._redoStack = this._redoStack.slice(0, -1), this._undoStack = [...this._undoStack, structuredClone(this._design)], this._design = e, this._lastPushedDesign = e, this._notifyDesignChanged(e);
28
+ }, this._handleHideBuilder = () => {
29
+ window.dispatchEvent(new CustomEvent("toggleSolutionBuilder"));
30
+ }, this._handleOpenCustomizeLayer = () => {
31
+ this._isCustomizingLayer = !0;
32
+ }, this._handleCloseCustomizeLayer = () => {
33
+ this._isCustomizingLayer = !1, this._isAddingLayer = !1, this._isEditingField = !1, this._isAddingNewField = !1;
34
+ }, this._handleTitleChange = async (e) => {
35
+ if (!this._design)
36
+ return;
37
+ this._titleValidationError = await this._validateSolutionName(e);
38
+ const i = {
39
+ ...this._design,
40
+ solution: {
41
+ ...this._design.solution,
42
+ title: e
43
+ }
44
+ };
45
+ this._pushDesign(i);
46
+ }, this._handleDescriptionChange = (e) => {
47
+ if (!this._design)
48
+ return;
49
+ this._descriptionValidationError = this._validateSolutionDescription(e);
50
+ const i = {
51
+ ...this._design,
52
+ solution: {
53
+ ...this._design.solution,
54
+ description: e
55
+ }
56
+ };
57
+ this._pushDesign(i);
58
+ }, this._handleItemPopoverOpen = (e) => {
59
+ this._openPopoverId = e.id, this._editingItemTitle = e.title || "", this._editingItemDescription = e.description || "", this._originalItemTitle = e.title || "", this._originalItemDescription = e.description || "", this._editingItemTitleError = null, this._editingItemDescriptionError = null, this.requestUpdate();
60
+ }, this._handleCloseItemPopover = () => {
61
+ this._openPopoverId = null, this._editingItemTitle = "", this._editingItemDescription = "";
62
+ }, this._handleClosePopover = async (e) => {
63
+ const i = this.renderRoot.querySelector(`#${e}`);
64
+ i && (i.open = !1, await i.updateComplete), this._handleCloseItemPopover();
65
+ }, this._handleApplyItemChanges = (e) => {
66
+ if (!this._design)
67
+ return;
68
+ const i = this._design.items.map((a) => a.id === e ? { ...a, title: this._editingItemTitle, description: this._editingItemDescription } : a), t = {
69
+ ...this._design,
70
+ items: i
71
+ };
72
+ this._pushDesign(t);
73
+ }, this._handleLayerSelect = (e) => {
74
+ const i = e.target.selectedItems[0];
75
+ i && (this._selectedLayerIndex = parseInt(i.value, 10), this._layerNameValidationError = null, this._layerDescriptionValidationError = null);
76
+ }, this._handleAddLayer = () => {
77
+ this._isAddingLayer = !0, this._newLayerNameValidationError = null, this._newLayerDescriptionValidationError = null;
78
+ }, this._handleAddLayerBack = () => {
79
+ this._isAddingLayer = !1, this._newLayerName = "", this._newLayerType = "Point", this._newLayerDescription = "", this._newLayerNameValidationError = null, this._newLayerDescriptionValidationError = null;
80
+ }, this._handleAddLayerDone = () => {
81
+ if (!this._design || (this._newLayerNameValidationError = this._validateLayerName(this._newLayerName), this._newLayerDescriptionValidationError = this._validateLayerDescription(this._newLayerDescription), this._newLayerNameValidationError || this._newLayerDescriptionValidationError))
82
+ return;
83
+ const e = this._design.featureLayer?.layers || [], i = {
84
+ id: Date.now(),
85
+ // Use timestamp as temporary ID
86
+ type: this._newLayerType,
87
+ name: this._newLayerName,
88
+ description: this._newLayerDescription,
89
+ customFields: [],
90
+ requiredFields: [],
91
+ systemFields: [
92
+ {
93
+ name: "objectid",
94
+ type: "oid",
95
+ alias: "ObjectID",
96
+ description: "Unique identifier for each record in the dataset."
97
+ },
98
+ {
99
+ name: "globalid",
100
+ type: "globalid",
101
+ alias: "GlobalID",
102
+ description: "Globally unique identifier for the record."
103
+ },
104
+ {
105
+ name: "created_date",
106
+ type: "date",
107
+ alias: "Created On",
108
+ description: "Date when the record was created."
109
+ },
110
+ {
111
+ name: "created_user",
112
+ type: "string",
113
+ alias: "Created By",
114
+ description: "User who created the record.",
115
+ choiceList: null,
116
+ length: 255
117
+ },
118
+ {
119
+ name: "last_edited_date",
120
+ type: "date",
121
+ alias: "Last Edited On",
122
+ description: "Date when the record was last edited."
123
+ },
124
+ {
125
+ name: "last_edited_user",
126
+ type: "string",
127
+ alias: "Last Edited By",
128
+ description: "User who last edited the record.",
129
+ choiceList: null,
130
+ length: 255
131
+ }
132
+ ]
133
+ };
134
+ this._pushDesign({
135
+ ...this._design,
136
+ featureLayer: {
137
+ ...this._design.featureLayer,
138
+ layers: [...e, i]
139
+ }
140
+ }), this._selectedLayerIndex = e.length, this._isAddingLayer = !1, this._newLayerName = "", this._newLayerType = "Point", this._newLayerDescription = "", this._newLayerNameValidationError = null, this._newLayerDescriptionValidationError = null;
141
+ }, this._handleNewLayerNameChange = (e) => {
142
+ this._newLayerName = e, this._newLayerNameValidationError = this._validateLayerName(e);
143
+ }, this._handleNewLayerTypeChange = (e) => {
144
+ const i = e.target.selectedItems[0];
145
+ i && (this._newLayerType = i.value);
146
+ }, this._handleNewLayerDescriptionChange = (e) => {
147
+ this._newLayerDescription = e, this._newLayerDescriptionValidationError = this._validateLayerDescription(e);
148
+ }, this._handleAddField = () => {
149
+ this._newFieldDisplayName = "", this._newFieldName = "", this._newFieldDescription = "", this._newFieldType = "string", this._newFieldLength = 255, this._newFieldChoiceList = null, this._newFieldDisplayNameError = null, this._newFieldNameError = null, this._newFieldDescriptionError = null, this._newFieldLengthError = null, this._newFieldChoiceListErrors = /* @__PURE__ */ new Map(), this._isAddingNewField = !0, this._scrollCustomizeLayerFlowToTop();
150
+ }, this._handleAddFieldBack = () => {
151
+ this._isAddingNewField = !1, this._newFieldDisplayName = "", this._newFieldName = "", this._newFieldDescription = "", this._newFieldType = "string", this._newFieldLength = 255, this._newFieldChoiceList = null, this._newFieldDisplayNameError = null, this._newFieldNameError = null, this._newFieldDescriptionError = null, this._newFieldLengthError = null, this._newFieldChoiceListErrors = /* @__PURE__ */ new Map();
152
+ }, this._handleAddFieldDone = () => {
153
+ if (!this._design)
154
+ return;
155
+ const e = this._design.featureLayer?.layers || [], i = e[this._selectedLayerIndex];
156
+ if (!i || !this._newFieldName.trim())
157
+ return;
158
+ const t = {
159
+ name: this._newFieldName,
160
+ type: this._newFieldType,
161
+ alias: this._newFieldDisplayName || this._newFieldName,
162
+ description: this._newFieldDescription,
163
+ choiceList: this._newFieldChoiceList && this._newFieldChoiceList.length > 0 ? this._newFieldChoiceList : null
164
+ };
165
+ this._newFieldType === "string" && (t.length = this._newFieldLength);
166
+ const a = [...i.customFields || [], t], l = e.map((r, o) => o === this._selectedLayerIndex ? { ...r, customFields: a } : r);
167
+ this._pushDesign({
168
+ ...this._design,
169
+ featureLayer: {
170
+ ...this._design.featureLayer,
171
+ layers: l
172
+ }
173
+ }), this._handleAddFieldBack();
174
+ }, this._handleNewFieldTypeChange = (e) => {
175
+ const i = e.target.selectedItems[0];
176
+ i && (this._newFieldType = i.value);
177
+ }, this._handleNewFieldDisplayNameChange = (e) => {
178
+ this._newFieldDisplayName = e, this._newFieldDisplayNameError = this._validateFieldDisplayName(e);
179
+ }, this._handleNewFieldNameChange = (e) => {
180
+ this._newFieldName = e, this._newFieldNameError = this._validateFieldName(e, this._selectedLayerIndex, !1);
181
+ }, this._handleNewFieldDescriptionChange = (e) => {
182
+ this._newFieldDescription = e, this._newFieldDescriptionError = this._validateFieldDescription(e);
183
+ }, this._handleNewFieldLengthChange = (e) => {
184
+ e === null || isNaN(e) || (this._newFieldLength = e, this._newFieldLengthError = this._validateFieldLength(e));
185
+ }, this._handleEditField = (e, i) => {
186
+ const a = (this._design?.featureLayer?.layers || [])[this._selectedLayerIndex];
187
+ if (!a)
188
+ return;
189
+ const l = a.customFields || [], r = a.requiredFields || [];
190
+ if (e < l.length)
191
+ this._editingFieldType = "custom", this._editingFieldIndex = e;
192
+ else {
193
+ const o = e - l.length;
194
+ if (o >= r.length)
195
+ return;
196
+ this._editingFieldType = "required", this._editingFieldIndex = o;
197
+ }
198
+ this._editingFieldDisplayName = i.alias || "", this._editingFieldName = i.name || "", this._editingFieldDescription = i.description || "", this._editingFieldTypeValue = i.type || "string", this._editingFieldLength = i.length || 255, this._editingFieldChoiceList = i.choiceList ? [...i.choiceList] : null, this._originalEditFieldDisplayName = this._editingFieldDisplayName, this._originalEditFieldName = this._editingFieldName, this._originalEditFieldDescription = this._editingFieldDescription, this._originalEditFieldTypeValue = this._editingFieldTypeValue, this._originalEditFieldLength = this._editingFieldLength, this._originalEditFieldChoiceList = this._editingFieldChoiceList ? [...this._editingFieldChoiceList] : null, this._editingFieldDisplayNameError = null, this._editingFieldNameError = null, this._editingFieldDescriptionError = null, this._editingFieldLengthError = null, this._editingFieldChoiceListErrors = /* @__PURE__ */ new Map(), this._isEditingField = !0, this._scrollCustomizeLayerFlowToTop();
199
+ }, this._handleEditFieldBack = () => {
200
+ this._isEditingField = !1, this._editingFieldIndex = -1, this._editingFieldType = null, this._editingFieldDisplayName = "", this._editingFieldName = "", this._editingFieldDescription = "", this._editingFieldTypeValue = "string", this._editingFieldLength = 255, this._editingFieldChoiceList = null, this._originalEditFieldDisplayName = "", this._originalEditFieldName = "", this._originalEditFieldDescription = "", this._originalEditFieldTypeValue = "string", this._originalEditFieldLength = 255, this._originalEditFieldChoiceList = null, this._editingFieldDisplayNameError = null, this._editingFieldNameError = null, this._editingFieldDescriptionError = null, this._editingFieldLengthError = null, this._editingFieldChoiceListErrors = /* @__PURE__ */ new Map();
201
+ }, this._handleEditFieldTypeChange = (e) => {
202
+ const i = e.target.selectedItems[0];
203
+ i && (this._editingFieldTypeValue = i.value);
204
+ }, this._handleEditFieldDisplayNameChange = (e) => {
205
+ this._editingFieldDisplayName = e, this._editingFieldDisplayNameError = this._validateFieldDisplayName(e);
206
+ }, this._handleEditFieldNameChange = (e) => {
207
+ this._editingFieldName = e, this._editingFieldNameError = this._validateFieldName(e, this._selectedLayerIndex, !0, this._editingFieldIndex, this._editingFieldType);
208
+ }, this._handleEditFieldDescriptionChange = (e) => {
209
+ this._editingFieldDescription = e, this._editingFieldDescriptionError = this._validateFieldDescription(e);
210
+ }, this._handleEditFieldLengthChange = (e) => {
211
+ e === null || isNaN(e) || (this._editingFieldLength = e, this._editingFieldLengthError = this._validateFieldLength(e));
212
+ }, this._handleAddEditFieldChoice = () => {
213
+ this._editingFieldChoiceList ? this._editingFieldChoiceList = [...this._editingFieldChoiceList, ""] : this._editingFieldChoiceList = [""], this._editingFieldChoiceListErrors.delete(this._editingFieldChoiceList.length - 1), this._editingFieldChoiceListErrors = new Map(this._editingFieldChoiceListErrors);
214
+ }, this._handleRemoveEditFieldChoice = (e) => {
215
+ if (!this._editingFieldChoiceList)
216
+ return;
217
+ this._editingFieldChoiceList = this._editingFieldChoiceList.filter((t, a) => a !== e);
218
+ const i = /* @__PURE__ */ new Map();
219
+ this._editingFieldChoiceListErrors.forEach((t, a) => {
220
+ a < e ? i.set(a, t) : a > e && i.set(a - 1, t);
221
+ }), this._editingFieldChoiceListErrors = i, this._editingFieldChoiceList.length === 0 && (this._editingFieldChoiceList = null, this._editingFieldChoiceListErrors = /* @__PURE__ */ new Map());
222
+ }, this._handleUpdateEditFieldChoice = (e, i) => {
223
+ if (!this._editingFieldChoiceList)
224
+ return;
225
+ const t = [...this._editingFieldChoiceList];
226
+ t[e] = i, this._editingFieldChoiceList = t;
227
+ const a = this._validateDomainValue(i, this._editingFieldLength, !1);
228
+ a ? this._editingFieldChoiceListErrors.set(e, a) : this._editingFieldChoiceListErrors.delete(e), this._editingFieldChoiceListErrors = new Map(this._editingFieldChoiceListErrors);
229
+ }, this._handleEditFieldChoiceDragStart = (e, i) => {
230
+ i.dataTransfer.effectAllowed = "move", i.dataTransfer.setData("text/plain", e.toString());
231
+ }, this._handleEditFieldChoiceDrop = (e, i) => {
232
+ if (i.preventDefault(), !this._editingFieldChoiceList)
233
+ return;
234
+ const t = parseInt(i.dataTransfer.getData("text/plain"));
235
+ if (t === e)
236
+ return;
237
+ const a = [...this._editingFieldChoiceList], l = a[t];
238
+ a.splice(t, 1), a.splice(e, 0, l), this._editingFieldChoiceList = a;
239
+ }, this._handleAddNewFieldChoice = () => {
240
+ this._newFieldChoiceList ? this._newFieldChoiceList = [...this._newFieldChoiceList, ""] : this._newFieldChoiceList = [""], this._newFieldChoiceListErrors.delete(this._newFieldChoiceList.length - 1), this._newFieldChoiceListErrors = new Map(this._newFieldChoiceListErrors);
241
+ }, this._handleRemoveNewFieldChoice = (e) => {
242
+ if (!this._newFieldChoiceList)
243
+ return;
244
+ this._newFieldChoiceList = this._newFieldChoiceList.filter((t, a) => a !== e);
245
+ const i = /* @__PURE__ */ new Map();
246
+ this._newFieldChoiceListErrors.forEach((t, a) => {
247
+ a < e ? i.set(a, t) : a > e && i.set(a - 1, t);
248
+ }), this._newFieldChoiceListErrors = i, this._newFieldChoiceList.length === 0 && (this._newFieldChoiceList = null, this._newFieldChoiceListErrors = /* @__PURE__ */ new Map());
249
+ }, this._handleUpdateNewFieldChoice = (e, i) => {
250
+ if (!this._newFieldChoiceList)
251
+ return;
252
+ const t = [...this._newFieldChoiceList];
253
+ t[e] = i, this._newFieldChoiceList = t;
254
+ const a = this._validateDomainValue(i, this._newFieldLength, !1);
255
+ a ? this._newFieldChoiceListErrors.set(e, a) : this._newFieldChoiceListErrors.delete(e), this._newFieldChoiceListErrors = new Map(this._newFieldChoiceListErrors);
256
+ }, this._handleNewFieldChoiceDragStart = (e, i) => {
257
+ i.dataTransfer.effectAllowed = "move", i.dataTransfer.setData("text/plain", e.toString());
258
+ }, this._handleNewFieldChoiceDrop = (e, i) => {
259
+ if (i.preventDefault(), !this._newFieldChoiceList)
260
+ return;
261
+ const t = parseInt(i.dataTransfer.getData("text/plain"));
262
+ if (t === e)
263
+ return;
264
+ const a = [...this._newFieldChoiceList], l = a[t];
265
+ a.splice(t, 1), a.splice(e, 0, l), this._newFieldChoiceList = a;
266
+ }, this._handleDeleteField = () => {
267
+ if (!this._design || this._editingFieldType !== "custom")
268
+ return;
269
+ const e = this._design.featureLayer?.layers || [];
270
+ if (this._selectedLayerIndex >= e.length)
271
+ return;
272
+ const t = [...e[this._selectedLayerIndex].customFields || []];
273
+ t.splice(this._editingFieldIndex, 1);
274
+ const a = e.map((l, r) => r === this._selectedLayerIndex ? { ...l, customFields: t } : l);
275
+ this._pushDesign({
276
+ ...this._design,
277
+ featureLayer: {
278
+ ...this._design.featureLayer,
279
+ layers: a
280
+ }
281
+ }), this._handleEditFieldBack();
282
+ }, this._handleApplyFieldChanges = () => {
283
+ if (!this._design || !this._editingFieldType)
284
+ return;
285
+ const e = this._design.featureLayer?.layers || [];
286
+ if (this._selectedLayerIndex >= e.length)
287
+ return;
288
+ const i = e[this._selectedLayerIndex];
289
+ if (this._editingFieldType === "custom") {
290
+ const t = [...i.customFields || []];
291
+ t[this._editingFieldIndex] = {
292
+ ...t[this._editingFieldIndex],
293
+ alias: this._editingFieldDisplayName,
294
+ name: this._editingFieldName,
295
+ description: this._editingFieldDescription,
296
+ type: this._editingFieldTypeValue,
297
+ choiceList: this._editingFieldChoiceList && this._editingFieldChoiceList.length > 0 ? this._editingFieldChoiceList : null,
298
+ length: this._editingFieldTypeValue === "string" ? this._editingFieldLength : void 0
299
+ };
300
+ const a = e.map((l, r) => r === this._selectedLayerIndex ? { ...l, customFields: t } : l);
301
+ this._pushDesign({
302
+ ...this._design,
303
+ featureLayer: {
304
+ ...this._design.featureLayer,
305
+ layers: a
306
+ }
307
+ });
308
+ } else if (this._editingFieldType === "required") {
309
+ const t = [...i.requiredFields || []];
310
+ t[this._editingFieldIndex] = {
311
+ ...t[this._editingFieldIndex],
312
+ alias: this._editingFieldDisplayName,
313
+ description: this._editingFieldDescription
314
+ };
315
+ const a = e.map((l, r) => r === this._selectedLayerIndex ? { ...l, requiredFields: t } : l);
316
+ this._pushDesign({
317
+ ...this._design,
318
+ featureLayer: {
319
+ ...this._design.featureLayer,
320
+ layers: a
321
+ }
322
+ });
323
+ }
324
+ this._handleEditFieldBack();
325
+ }, this._handleLayerNameChange = (e) => {
326
+ if (!this._design)
327
+ return;
328
+ const i = this._design.featureLayer?.layers || [];
329
+ if (this._selectedLayerIndex >= i.length)
330
+ return;
331
+ this._layerNameValidationError = this._validateLayerName(e);
332
+ const t = i.map((a, l) => l === this._selectedLayerIndex ? { ...a, name: e } : a);
333
+ this._pushDesign({
334
+ ...this._design,
335
+ featureLayer: {
336
+ ...this._design.featureLayer,
337
+ layers: t
338
+ }
339
+ });
340
+ }, this._handleLayerTypeChange = (e) => {
341
+ if (!this._design)
342
+ return;
343
+ const i = e.target.selectedItems[0];
344
+ if (!i)
345
+ return;
346
+ const t = this._design.featureLayer?.layers || [];
347
+ if (this._selectedLayerIndex >= t.length)
348
+ return;
349
+ const a = i.value, l = t.map((r, o) => o === this._selectedLayerIndex ? { ...r, type: a } : r);
350
+ this._pushDesign({
351
+ ...this._design,
352
+ featureLayer: {
353
+ ...this._design.featureLayer,
354
+ layers: l
355
+ }
356
+ });
357
+ }, this._handleLayerDescriptionChange = (e) => {
358
+ if (!this._design)
359
+ return;
360
+ const i = this._design.featureLayer?.layers || [];
361
+ if (this._selectedLayerIndex >= i.length)
362
+ return;
363
+ this._layerDescriptionValidationError = this._validateLayerDescription(e);
364
+ const t = i.map((a, l) => l === this._selectedLayerIndex ? { ...a, description: e } : a);
365
+ this._pushDesign({
366
+ ...this._design,
367
+ featureLayer: {
368
+ ...this._design.featureLayer,
369
+ layers: t
370
+ }
371
+ });
372
+ }, this._handleRemoveLayer = () => {
373
+ if (!this._design)
374
+ return;
375
+ const e = this._design.featureLayer?.layers || [];
376
+ if (this._selectedLayerIndex >= e.length)
377
+ return;
378
+ const i = e.filter((t, a) => a !== this._selectedLayerIndex);
379
+ this._pushDesign({
380
+ ...this._design,
381
+ featureLayer: {
382
+ ...this._design.featureLayer,
383
+ layers: i
384
+ }
385
+ }), this._selectedLayerIndex >= i.length && (this._selectedLayerIndex = Math.max(0, i.length - 1)), this._scrollCustomizeLayerFlowToTop();
386
+ }, this._handleDeploy = async () => {
387
+ this._design && console.log("Deploy design:", this._design);
388
+ }, this._designContextConsumer, window.addEventListener("arcgis-solution-undo", this._handleUndo), window.addEventListener("arcgis-solution-redo", this._handleRedo);
389
+ }
390
+ static {
391
+ this.properties = { design: [1, { type: Object }], _design: 16, _translations: 16, _isDirty: 16, _titleValidationError: 16, _descriptionValidationError: 16, _undoStack: 16, _redoStack: 16, _openPopoverId: 16, _editingItemTitle: 16, _editingItemDescription: 16, _editingItemTitleError: 16, _editingItemDescriptionError: 16, _originalItemTitle: 16, _originalItemDescription: 16, _layerNameValidationError: 16, _layerDescriptionValidationError: 16, _newLayerNameValidationError: 16, _newLayerDescriptionValidationError: 16, _selectedLayerIndex: 16, _isAddingLayer: 16, _newLayerName: 16, _newLayerType: 16, _newLayerDescription: 16, _isEditingField: 16, _editingFieldIndex: 16, _editingFieldType: 16, _editingFieldDisplayName: 16, _editingFieldName: 16, _editingFieldDescription: 16, _editingFieldTypeValue: 16, _editingFieldLength: 16, _editingFieldChoiceList: 16, _isAddingNewField: 16, _isCustomizingLayer: 16, _newFieldDisplayName: 16, _newFieldName: 16, _newFieldDescription: 16, _newFieldType: 16, _newFieldLength: 16, _newFieldChoiceList: 16, _editingFieldDisplayNameError: 16, _editingFieldNameError: 16, _editingFieldDescriptionError: 16, _editingFieldLengthError: 16, _editingFieldChoiceListErrors: 16, _newFieldDisplayNameError: 16, _newFieldNameError: 16, _newFieldDescriptionError: 16, _newFieldLengthError: 16, _newFieldChoiceListErrors: 16, _originalEditFieldDisplayName: 16, _originalEditFieldName: 16, _originalEditFieldDescription: 16, _originalEditFieldTypeValue: 16, _originalEditFieldLength: 16, _originalEditFieldChoiceList: 16 };
392
+ }
393
+ static {
394
+ this.styles = T;
395
+ }
396
+ disconnectedCallback() {
397
+ window.removeEventListener("arcgis-solution-undo", this._handleUndo), window.removeEventListener("arcgis-solution-redo", this._handleRedo), super.disconnectedCallback();
398
+ }
399
+ willUpdate(e) {
400
+ e.has("design") && (this.design ? this._pushDesign(this.design) : this._design = null);
401
+ }
402
+ render() {
403
+ const e = this._translations;
404
+ return e ? this._design ? s`<calcite-panel><div slot=header-content class="header-content-wrapper"><span class="header-title">${e.headerTitle}</span><calcite-chip .label=${e.draft} kind=neutral appearance=outline scale=s>${e.draft}</calcite-chip></div><calcite-action slot=header-actions-end .text=${e.undo} text-enabled icon=undo .disabled=${this._undoStack.length === 0} @click=${this._handleUndo}></calcite-action><calcite-action slot=header-actions-end .text=${e.redo} text-enabled icon=redo .disabled=${this._redoStack.length === 0} @click=${this._handleRedo}></calcite-action><div slot=header-actions-end class="header-divider"></div><calcite-action slot=header-actions-end .text=${e.hideBuilder} text-enabled icon=chevrons-right @click=${this._handleHideBuilder}></calcite-action>${!this._isCustomizingLayer && s`<div class="builder-content">${this._renderMainContent()}${this._renderSolutionItemContent()}</div>` || ""}${this._isCustomizingLayer && s`<div class="builder-content">${this._renderCustomizeLayerFlow()}</div>` || ""}</calcite-panel>` : this._renderEmptyState() : s`<div>Loading...</div>`;
405
+ }
406
+ _getLayerTypeIcon(e) {
407
+ switch (e) {
408
+ case "Point":
409
+ return "point";
410
+ case "Polyline":
411
+ return "line";
412
+ case "Polygon":
413
+ return "polygon";
414
+ case "Table":
415
+ return "table";
416
+ default:
417
+ return "layer";
418
+ }
419
+ }
420
+ _getFieldTypeIcon(e) {
421
+ switch (e) {
422
+ case "string":
423
+ return "string";
424
+ case "integer":
425
+ return "integer";
426
+ case "double":
427
+ return "number";
428
+ case "date":
429
+ return "date-time";
430
+ case "oid":
431
+ case "globalid":
432
+ case "guid":
433
+ return "key";
434
+ default:
435
+ return "key";
436
+ }
437
+ }
438
+ _formatFieldType(e) {
439
+ const t = {
440
+ string: "String",
441
+ integer: "Integer",
442
+ double: "Double",
443
+ date: "Date",
444
+ guid: "GUID",
445
+ globalid: "GlobalID",
446
+ oid: "ObjectID"
447
+ }[e.type] || e.type;
448
+ return e.type === "string" && e.length ? `${t} (${e.length})` : t;
449
+ }
450
+ _getSystemFieldsList(e) {
451
+ return (e.systemFields || []).map((t) => t.name).join(", ");
452
+ }
453
+ _shouldShowRemoveLayerButton(e) {
454
+ return !e || !this._design?.featureLayer ? !1 : e.id && e.id > 1e3;
455
+ }
456
+ _scrollCustomizeLayerFlowToTop() {
457
+ requestAnimationFrame(() => {
458
+ const e = this.el.shadowRoot?.querySelector("calcite-flow-item[selected]");
459
+ e?.shadowRoot && e.shadowRoot.querySelector(".content-container")?.scrollTo({ top: 0, behavior: "smooth" });
460
+ });
461
+ }
462
+ async _validateSolutionName(e) {
463
+ const i = this._translations, t = await D(e, void 0, !0);
464
+ if (!t.isValid)
465
+ switch (t.errorType) {
466
+ case "empty":
467
+ return i.solutionNameErrorBlank;
468
+ case "exceed-length":
469
+ return i.solutionNameErrorLength;
470
+ case "special-character":
471
+ return i.solutionNameErrorSpecialCharacter;
472
+ default:
473
+ return null;
474
+ }
475
+ return null;
476
+ }
477
+ _validateSolutionDescription(e) {
478
+ const i = this._translations, t = F(e, 2048, !1);
479
+ if (!t.isValid)
480
+ switch (t.errorType) {
481
+ case "exceed-length":
482
+ return i.descriptionErrorLength;
483
+ case "special-character":
484
+ return i.descriptionErrorSpecialCharacter;
485
+ default:
486
+ return null;
487
+ }
488
+ return null;
489
+ }
490
+ _validateItemName(e) {
491
+ const i = this._translations, t = v(e);
492
+ if (!t.isValid)
493
+ switch (t.errorType) {
494
+ case "empty":
495
+ return i.itemTitleErrorBlank;
496
+ case "exceed-length":
497
+ return i.itemTitleErrorLength;
498
+ case "special-character":
499
+ return i.itemTitleErrorSpecialCharacter;
500
+ default:
501
+ return null;
502
+ }
503
+ return null;
504
+ }
505
+ _validateItemDescription(e) {
506
+ const i = this._translations, t = F(e, 2048, !1);
507
+ if (!t.isValid)
508
+ switch (t.errorType) {
509
+ case "exceed-length":
510
+ return i.itemDescriptionErrorLength;
511
+ case "special-character":
512
+ return i.itemDescriptionErrorSpecialCharacter;
513
+ default:
514
+ return null;
515
+ }
516
+ return null;
517
+ }
518
+ _validateLayerName(e) {
519
+ const i = this._translations, t = v(e);
520
+ if (!t.isValid)
521
+ switch (t.errorType) {
522
+ case "empty":
523
+ return i.layerNameErrorBlank;
524
+ case "exceed-length":
525
+ return i.layerNameErrorLength;
526
+ case "special-character":
527
+ return i.layerNameErrorSpecialCharacter;
528
+ default:
529
+ return null;
530
+ }
531
+ return null;
532
+ }
533
+ _validateLayerDescription(e) {
534
+ const i = this._translations, t = F(e, 2048, !1);
535
+ if (!t.isValid)
536
+ switch (t.errorType) {
537
+ case "exceed-length":
538
+ return i.layerDescriptionErrorLength;
539
+ case "special-character":
540
+ return i.layerDescriptionErrorSpecialCharacter;
541
+ default:
542
+ return null;
543
+ }
544
+ return null;
545
+ }
546
+ _validateFieldDisplayName(e) {
547
+ const i = this._translations, t = C(e);
548
+ if (!t.isValid)
549
+ switch (t.errorType) {
550
+ case "empty":
551
+ return i.displayNameErrorBlank;
552
+ case "exceed-length":
553
+ return i.displayNameErrorLength;
554
+ default:
555
+ return null;
556
+ }
557
+ return null;
558
+ }
559
+ _validateFieldName(e, i, t = !1, a = -1, l = null) {
560
+ const r = this._translations, o = [], n = this._design?.featureLayer?.layers || [];
561
+ if (i >= 0 && i < n.length) {
562
+ const d = n[i], u = d.customFields || [], y = d.requiredFields || [], g = d.systemFields || [];
563
+ u.forEach((p, m) => {
564
+ (!t || l !== "custom" || m !== a) && o.push(p.name.toLowerCase());
565
+ }), y.forEach((p, m) => {
566
+ (!t || l !== "required" || m !== a) && o.push(p.name.toLowerCase());
567
+ }), g.forEach((p) => {
568
+ o.push(p.name.toLowerCase());
569
+ });
570
+ }
571
+ const c = I(e, o);
572
+ if (!c.isValid)
573
+ switch (c.errorType) {
574
+ case "empty":
575
+ return r.fieldNameErrorBlank;
576
+ case "invalid-format":
577
+ return r.fieldNameErrorInvalidChars;
578
+ case "exceed-length":
579
+ return r.fieldNameErrorLength;
580
+ case "sql-keyword":
581
+ return r.fieldNameErrorSQLKeyword;
582
+ case "system-field":
583
+ return r.fieldNameErrorSystemField;
584
+ case "duplicate-field":
585
+ return r.fieldNameErrorExists;
586
+ default:
587
+ return null;
588
+ }
589
+ return null;
590
+ }
591
+ _validateFieldDescription(e) {
592
+ const i = this._translations, t = F(e, 500, !0);
593
+ if (!t.isValid)
594
+ switch (t.errorType) {
595
+ case "exceed-length":
596
+ return i.fieldDescriptionErrorLength;
597
+ case "special-character":
598
+ return i.fieldDescriptionErrorSpecialCharacter;
599
+ default:
600
+ return null;
601
+ }
602
+ return null;
603
+ }
604
+ _validateFieldLength(e) {
605
+ const i = this._translations, t = M(e);
606
+ return t.isValid ? null : t.errorType === "out-of-range" ? i.lengthErrorOutOfRange : null;
607
+ }
608
+ _validateDomainValue(e, i, t = !1) {
609
+ const a = this._translations, l = z(e, i, t);
610
+ if (!l.isValid)
611
+ switch (l.errorType) {
612
+ case "empty":
613
+ return a.domainValueErrorEmpty;
614
+ case "exceed-length":
615
+ return a.domainValueErrorExceedsLength;
616
+ default:
617
+ return null;
618
+ }
619
+ return null;
620
+ }
621
+ _renderFieldRows(e) {
622
+ const i = this._translations, t = [
623
+ ...e.customFields || [],
624
+ ...e.requiredFields || []
625
+ ], a = e.customFields?.length || 0, l = [];
626
+ return t.forEach((r, o) => {
627
+ const n = this._getFieldTypeIcon(r.type), c = this._formatFieldType(r), d = `field-domain-info-${o}`, u = `field-lock-${o}`, y = o >= a;
628
+ let g, p = !1;
629
+ r.choiceList && Array.isArray(r.choiceList) ? (p = !0, g = s`<div class="domain-cell-content"><span>List (${r.choiceList.length})</span><calcite-icon id=${d ?? h} icon=information scale=s></calcite-icon></div>`) : g = null;
630
+ const m = y ? s`<div class="field-name-cell"><calcite-icon id=${u ?? h} icon=lock scale=s class="lock-icon"></calcite-icon><span>${r.name}</span></div>` : r.name;
631
+ l.push(s`<calcite-table-row><calcite-table-cell>${r.alias}</calcite-table-cell><calcite-table-cell>${m}</calcite-table-cell><calcite-table-cell><div class="field-type-cell"><calcite-icon .icon=${n} scale=s></calcite-icon><span>${c}</span></div></calcite-table-cell><calcite-table-cell>${g}</calcite-table-cell><calcite-table-cell><calcite-icon class="edit-icon" icon=pencil scale=s @click=${() => this._handleEditField(o, r)}></calcite-icon></calcite-table-cell></calcite-table-row>`), p && l.push(s`<calcite-tooltip .referenceElement=${d} placement=left><ul class="choice-list-tooltip">${r.choiceList.map((b) => s`<li>${b}</li>`)}</ul></calcite-tooltip>`), y && l.push(s`<calcite-tooltip .referenceElement=${u} placement=top>${i.requiredFieldTooltip}</calcite-tooltip>`);
632
+ }), l;
633
+ }
634
+ _renderEmptyState() {
635
+ return s`<calcite-panel><div class="empty-state"><calcite-icon icon=layer scale=l></calcite-icon><p>No solution design loaded</p></div></calcite-panel>`;
636
+ }
637
+ _renderMainContent() {
638
+ return s`<div class="content-container"><div class="solution-item-section">${this._renderSolutionItemInputs()}</div><div class="actions-section">${this._renderActionButtons()}</div></div>`;
639
+ }
640
+ _renderSolutionItemInputs() {
641
+ const e = this._translations, i = this._design?.solution?.thumbnailUrl || "", t = this._design?.solution?.title || "", a = this._design?.solution?.description || "";
642
+ return s`<div class="solution-item-inputs"><div class="thumbnail-inputs-row"><div class="thumbnail-container"><img src=${(i || O) ?? h} alt=${e.solutionThumbnail ?? h}></div><div class="stacked-inputs"><calcite-label class="section-title">${e.name}<calcite-input-text .placeholder=${e.namePlaceholder} .value=${t} max-length=250 .status=${this._titleValidationError ? "invalid" : "idle"} .validationMessage=${this._titleValidationError || ""} .validationIcon=${!!this._titleValidationError} @input=${(l) => this._handleTitleChange(l.target.value)}></calcite-input-text></calcite-label><calcite-label class="section-title">${e.description}<calcite-text-area .placeholder=${e.solutionDescriptionPlaceholder} .value=${a} max-length=2048 resize=none .status=${this._descriptionValidationError ? "invalid" : "idle"} .validationMessage=${this._descriptionValidationError || ""} .validationIcon=${!!this._descriptionValidationError} rows=3 limit-text @input=${(l) => this._handleDescriptionChange(l.target.value)}></calcite-text-area></calcite-label></div></div></div>`;
643
+ }
644
+ _renderActionButtons() {
645
+ const e = this._translations;
646
+ return s`<div class="action-buttons"><calcite-button appearance=solid width=full>${e.deploy}</calcite-button><calcite-button appearance=outline kind=neutral width=full>${e.discard}</calcite-button><calcite-notice open appearance=transparent kind=brand icon=effects scale=s><div slot=message>${e.noticeMessage}</div></calcite-notice></div>`;
647
+ }
648
+ _renderSolutionItemContent() {
649
+ const e = this._translations, i = this._design?.items || [], t = this._design?.featureLayer?.itemId, a = [...i].reverse();
650
+ return s`<div class="solution-item-content-section"><h3 class="section-header">${e.contents}</h3><calcite-list .label=${e.solutionContentItems} interaction-mode=static>${a.map((l) => {
651
+ const r = `edit-action-${l.id}`, o = `customize-action-${l.id}`, n = l.id === t;
652
+ return s`<calcite-list-item .label=${l.title} .description=${l.description || ""}><solution-item-icon slot=content-start .designType=${l.type}></solution-item-icon>${n && s`<calcite-button slot=content-end appearance=outline-fill round id=${o ?? h} icon-start=gear .label=${e.customizeLayer} scale=m @click=${this._handleOpenCustomizeLayer}>${e.customizeLayer}</calcite-button>` || ""}<calcite-action slot=actions-end id=${r ?? h} icon=edit-attributes .text=${e.edit} scale=m></calcite-action></calcite-list-item>`;
653
+ })}</calcite-list>${a.map((l) => {
654
+ const r = `edit-action-${l.id}`, o = `edit-popover-${l.id}`, n = this._openPopoverId === l.id;
655
+ return s`<calcite-popover id=${o ?? h} .label=${e.editItemContent} .referenceElement=${r} placement=auto @calcitePopoverBeforeOpen=${() => this._handleItemPopoverOpen(l)} @calcitePopoverClose=${() => this._handleCloseItemPopover()}><div class="popover-content"><calcite-label class="section-title">${e.title}<calcite-input-text .value=${n ? this._editingItemTitle : l.title} .placeholder=${e.titlePlaceholder} max-length=250 .status=${this._editingItemTitleError ? "invalid" : "idle"} .validationMessage=${this._editingItemTitleError || ""} .validationIcon=${!!this._editingItemTitleError} @input=${(c) => {
656
+ this._editingItemTitle = c.target.value, this._editingItemTitleError = this._validateItemName(c.target.value);
657
+ }}></calcite-input-text></calcite-label><calcite-label class="popover-field section-title">${e.description}<calcite-text-area .value=${n ? this._editingItemDescription : l.description} .placeholder=${e.descriptionPlaceholder} max-length=2048 resize=none rows=4 .status=${this._editingItemDescriptionError ? "invalid" : "idle"} .validationMessage=${this._editingItemDescriptionError || ""} .validationIcon=${!!this._editingItemDescriptionError} @input=${(c) => {
658
+ this._editingItemDescription = c.target.value, this._editingItemDescriptionError = this._validateItemDescription(c.target.value);
659
+ }}></calcite-text-area></calcite-label><div class="popover-actions"><calcite-button appearance=outline kind=neutral @click=${async (c) => {
660
+ c.stopPropagation(), await this._handleClosePopover(o);
661
+ }}>${e.cancel}</calcite-button><calcite-button appearance=solid .disabled=${!!this._editingItemTitleError || !!this._editingItemDescriptionError || this._editingItemTitle === this._originalItemTitle && this._editingItemDescription === this._originalItemDescription} @click=${(c) => {
662
+ c.stopPropagation(), this._handleApplyItemChanges(l.id);
663
+ }}>${e.apply}</calcite-button></div></div></calcite-popover>`;
664
+ })}</div>`;
665
+ }
666
+ _renderCustomizeLayerFlow() {
667
+ const e = this._translations, i = this._design?.featureLayer?.layers || [], t = this._design?.featureLayer?.addLayers || !1, a = i[this._selectedLayerIndex], l = a?.name || "", r = a?.description || "", o = a?.type || "Point";
668
+ return s`<calcite-flow><calcite-flow-item .heading=${e.customizeLayer} .selected=${!this._isAddingLayer && !this._isEditingField && !this._isAddingNewField}><calcite-action slot=header-actions-start icon=chevron-left .text=${e.close} scale=m @click=${this._handleCloseCustomizeLayer}></calcite-action><div class="layer-form-content"><div class="layer-selector-container"><span class="section-header">${e.selectLayer}</span><div class="layer-selector-row"><calcite-combobox .label=${e.selectLayer} selection-mode=single-persist clear-disabled @calciteComboboxChange=${(n) => this._handleLayerSelect(n)}>${i.map((n, c) => {
669
+ const d = this._getLayerTypeIcon(n.type);
670
+ return s`<calcite-combobox-item .value=${c.toString()} .label=${n.name} .heading=${n.name} .icon=${d} .selected=${c === this._selectedLayerIndex}></calcite-combobox-item>`;
671
+ })}</calcite-combobox>${t && s`<calcite-button icon-start=plus appearance=outline @click=${this._handleAddLayer}>${e.addLayer}</calcite-button>` || ""}</div></div><div class="horizontal-divider"></div>${a && s`<div class="layer-properties-container"><span class="section-header">${e.layerProperties}</span><div class="layer-properties-row"><calcite-label class="section-title">${e.name}<calcite-input-text .placeholder=${e.layerNamePlaceholder} .value=${l} max-length=250 .status=${this._layerNameValidationError ? "invalid" : "idle"} .validationMessage=${this._layerNameValidationError || ""} .validationIcon=${!!this._layerNameValidationError} @input=${(n) => this._handleLayerNameChange(n.target.value)}></calcite-input-text></calcite-label><calcite-label class="section-title">${e.type}<calcite-combobox .label=${e.type} selection-mode=single-persist clear-disabled @calciteComboboxChange=${(n) => this._handleLayerTypeChange(n)}><calcite-combobox-item value=Point .label=${e.pointLayer} .heading=${e.pointLayer} icon=point .selected=${o === "Point"}></calcite-combobox-item><calcite-combobox-item value=Polyline .label=${e.lineLayer} .heading=${e.lineLayer} icon=line .selected=${o === "Polyline"}></calcite-combobox-item><calcite-combobox-item value=Polygon .label=${e.polygonLayer} .heading=${e.polygonLayer} icon=polygon .selected=${o === "Polygon"}></calcite-combobox-item><calcite-combobox-item value=Table .label=${e.tableLayer} .heading=${e.tableLayer} icon=table .selected=${o === "Table"}></calcite-combobox-item></calcite-combobox></calcite-label></div></div>` || ""}${a && s`<div class="layer-description-container"><calcite-label class="section-title">${e.description}<calcite-text-area .placeholder=${e.layerDescriptionPlaceholder} .value=${r} resize=none max-length=2048 .status=${this._layerDescriptionValidationError ? "invalid" : "idle"} .validationMessage=${this._layerDescriptionValidationError || ""} .validationIcon=${!!this._layerDescriptionValidationError} @input=${(n) => this._handleLayerDescriptionChange(n.target.value)}></calcite-text-area></calcite-label></div>` || ""}${a && s`<div class="fields-section"><calcite-label class="section-title">${e.fields}<calcite-table bordered .caption=${e.fields}><calcite-table-row slot=table-header><calcite-table-header .heading=${e.displayName}></calcite-table-header><calcite-table-header .heading=${e.fieldName}></calcite-table-header><calcite-table-header .heading=${e.type}></calcite-table-header><calcite-table-header .heading=${e.domain}></calcite-table-header><calcite-table-header heading></calcite-table-header></calcite-table-row>${this._renderFieldRows(a)}</calcite-table></calcite-label><calcite-button icon-start=plus appearance=outline-fill width=auto scale=m class="add-field-button" @click=${this._handleAddField}>${e.addField}</calcite-button><calcite-notice open icon=information appearance=transparent width=full><div slot=message>${e.systemFieldsNote} ${this._getSystemFieldsList(a)}</div></calcite-notice></div>` || ""}</div>${this._shouldShowRemoveLayerButton(a) && s`<calcite-button slot=footer appearance=transparent kind=danger width=full @click=${this._handleRemoveLayer}>${e.removeLayer}</calcite-button>` || ""}</calcite-flow-item>${this._isEditingField && s`<calcite-flow-item heading="Edit field" selected @calciteFlowItemBack=${this._handleEditFieldBack}><div class="layer-form-content">${this._editingFieldType === "required" && s`<div class="system-fields-note"><calcite-icon icon=lock scale=s class="info-icon-blue"></calcite-icon><span>${e.requiredFieldNote}</span></div>` || ""}<div class="layer-properties-container"><calcite-label class="section-title">${e.displayName}<calcite-input-text .placeholder=${e.displayNamePlaceholder} .value=${this._editingFieldDisplayName} max-length=250 .status=${this._editingFieldDisplayNameError ? "invalid" : "idle"} .validationMessage=${this._editingFieldDisplayNameError || ""} .validationIcon=${!!this._editingFieldDisplayNameError} @input=${(n) => this._handleEditFieldDisplayNameChange(n.target.value)}></calcite-input-text></calcite-label><calcite-label class="section-title">${e.fieldName}<calcite-input-text .placeholder=${e.fieldNamePlaceholder} .value=${this._editingFieldName} max-length=31 .disabled=${this._editingFieldType === "required"} .status=${this._editingFieldNameError ? "invalid" : "idle"} .validationMessage=${this._editingFieldNameError || ""} .validationIcon=${!!this._editingFieldNameError} @input=${(n) => this._handleEditFieldNameChange(n.target.value)}></calcite-input-text></calcite-label></div><div class="layer-description-container"><calcite-label class="section-title">${e.fieldDescription}<calcite-text-area .placeholder=${e.fieldDescriptionPlaceholder} .value=${this._editingFieldDescription} resize=none max-length=500 .status=${this._editingFieldDescriptionError ? "invalid" : "idle"} .validationMessage=${this._editingFieldDescriptionError || ""} .validationIcon=${!!this._editingFieldDescriptionError} @input=${(n) => this._handleEditFieldDescriptionChange(n.target.value)}></calcite-text-area></calcite-label></div><div class="layer-properties-container"><calcite-label class="section-title">${e.type}<calcite-combobox .label=${e.type} selection-mode=single-persist clear-disabled .disabled=${this._editingFieldType === "required"} @calciteComboboxChange=${(n) => this._handleEditFieldTypeChange(n)}><calcite-combobox-item value=string text-label=${e.stringType ?? h} .heading=${e.stringType} icon=string .selected=${this._editingFieldTypeValue === "string"}></calcite-combobox-item><calcite-combobox-item value=integer text-label=${e.integerType ?? h} .heading=${e.integerType} icon=integer .selected=${this._editingFieldTypeValue === "integer"}></calcite-combobox-item><calcite-combobox-item value=double text-label=${e.doubleType ?? h} .heading=${e.doubleType} icon=number .selected=${this._editingFieldTypeValue === "double"}></calcite-combobox-item><calcite-combobox-item value=date text-label=${e.dateType ?? h} .heading=${e.dateType} icon=date-time .selected=${this._editingFieldTypeValue === "date"}></calcite-combobox-item><calcite-combobox-item value=guid text-label=${e.guidType ?? h} .heading=${e.guidType} icon=key .selected=${this._editingFieldTypeValue === "guid"}></calcite-combobox-item></calcite-combobox></calcite-label>${this._editingFieldTypeValue === "string" && s`<calcite-label class="section-title">${e.length}<calcite-input-number .value=${this._editingFieldLength.toString()} .disabled=${this._editingFieldType === "required"} min=1 max=4000 .status=${this._editingFieldLengthError ? "invalid" : "idle"} .validationMessage=${this._editingFieldLengthError || ""} .validationIcon=${!!this._editingFieldLengthError} @input=${(n) => {
672
+ const c = n.target.value === "" ? null : parseInt(n.target.value);
673
+ this._handleEditFieldLengthChange(c);
674
+ }}></calcite-input-number></calcite-label>` || ""}</div>${this._editingFieldTypeValue === "string" && s`<div class="domain-section"><calcite-label class="section-title">${e.domainValues}</calcite-label>${this._editingFieldChoiceList && this._editingFieldChoiceList.length > 0 ? s`<div><div class="domain-list">${this._editingFieldChoiceList.map((n, c) => s`<div class="domain-item" draggable @dragstart=${(d) => this._handleEditFieldChoiceDragStart(c, d)} @dragover=${(d) => d.preventDefault()} @drop=${(d) => this._handleEditFieldChoiceDrop(c, d)}><calcite-icon icon=drag scale=s class="drag-handle"></calcite-icon><calcite-input-text .placeholder=${e.domainValuePlaceholder} .value=${n} .maxLength=${this._editingFieldLength} .status=${this._editingFieldChoiceListErrors.get(c) ? "invalid" : "idle"} .validationMessage=${this._editingFieldChoiceListErrors.get(c) || ""} .validationIcon=${!!this._editingFieldChoiceListErrors.get(c)} @input=${(d) => this._handleUpdateEditFieldChoice(c, d.target.value)}></calcite-input-text><calcite-button icon-start=x appearance=transparent scale=s kind=neutral @click=${() => this._handleRemoveEditFieldChoice(c)}></calcite-button></div>`)}</div><calcite-button icon-start=plus appearance=transparent width=auto class="add-field-button padding-top-sm" @click=${this._handleAddEditFieldChoice}>${e.addDomainValue}</calcite-button></div>` : s`<calcite-button icon-start=plus appearance=transparent width=auto class="add-field-button padding-top-sm" @click=${this._handleAddEditFieldChoice}>${e.addDomainValue}</calcite-button>`}</div>` || ""}</div><calcite-button slot=footer-end appearance=outline kind=neutral scale=m .disabled=${this._editingFieldType === "required"} @click=${this._handleDeleteField}>${e.delete}</calcite-button><calcite-button slot=footer-end appearance=solid kind=brand scale=m .disabled=${// Disable if there are validation errors
675
+ !!this._editingFieldDisplayNameError || !!this._editingFieldNameError || !!this._editingFieldDescriptionError || !!this._editingFieldLengthError || this._editingFieldChoiceListErrors.size > 0 || // Disable if no changes made
676
+ this._editingFieldDisplayName === this._originalEditFieldDisplayName && this._editingFieldName === this._originalEditFieldName && this._editingFieldDescription === this._originalEditFieldDescription && this._editingFieldTypeValue === this._originalEditFieldTypeValue && this._editingFieldLength === this._originalEditFieldLength && JSON.stringify(this._editingFieldChoiceList) === JSON.stringify(this._originalEditFieldChoiceList)} @click=${this._handleApplyFieldChanges}>${e.apply}</calcite-button></calcite-flow-item>` || ""}${this._isAddingLayer && s`<calcite-flow-item heading="Add Layer" selected @calciteFlowItemBack=${this._handleAddLayerBack}><div class="layer-form-content"><div class="layer-properties-container"><calcite-label class="section-title">${e.name}<calcite-input-text .placeholder=${e.layerNamePlaceholder} .value=${this._newLayerName} max-length=250 .status=${this._newLayerNameValidationError ? "invalid" : "idle"} .validationMessage=${this._newLayerNameValidationError || ""} .validationIcon=${!!this._newLayerNameValidationError} @input=${(n) => this._handleNewLayerNameChange(n.target.value)}></calcite-input-text></calcite-label><calcite-label class="section-title">${e.type}<calcite-combobox .label=${e.type} selection-mode=single-persist clear-disabled @calciteComboboxChange=${(n) => this._handleNewLayerTypeChange(n)}><calcite-combobox-item value=Point text-label=${e.pointLayer ?? h} .heading=${e.pointLayer} icon=point .selected=${this._newLayerType === "Point"}></calcite-combobox-item><calcite-combobox-item value=Polyline text-label=${e.lineLayer ?? h} .heading=${e.lineLayer} icon=line .selected=${this._newLayerType === "Polyline"}></calcite-combobox-item><calcite-combobox-item value=Polygon text-label=${e.polygonLayer ?? h} .heading=${e.polygonLayer} icon=polygon .selected=${this._newLayerType === "Polygon"}></calcite-combobox-item><calcite-combobox-item value=Table text-label=${e.tableLayer ?? h} .heading=${e.tableLayer} icon=table .selected=${this._newLayerType === "Table"}></calcite-combobox-item></calcite-combobox></calcite-label></div><div class="layer-description-container"><calcite-label class="section-title">${e.description}<calcite-text-area .placeholder=${e.layerDescriptionPlaceholder} .value=${this._newLayerDescription} resize=none max-length=2048 .status=${this._newLayerDescriptionValidationError ? "invalid" : "idle"} .validationMessage=${this._newLayerDescriptionValidationError || ""} .validationIcon=${!!this._newLayerDescriptionValidationError} @input=${(n) => this._handleNewLayerDescriptionChange(n.target.value)}></calcite-text-area></calcite-label></div></div><calcite-button slot=footer-end appearance=solid kind=brand scale=m .disabled=${!this._newLayerName.trim() || !!this._newLayerNameValidationError || !!this._newLayerDescriptionValidationError} @click=${this._handleAddLayerDone}>${e.done}</calcite-button></calcite-flow-item>` || ""}${this._isAddingNewField && s`<calcite-flow-item heading="Add Field" selected @calciteFlowItemBack=${this._handleAddFieldBack}><div class="layer-form-content"><div class="layer-properties-container"><calcite-label class="section-title">${e.displayName}<calcite-input-text .placeholder=${e.displayNamePlaceholder} .value=${this._newFieldDisplayName} max-length=250 .status=${this._newFieldDisplayNameError ? "invalid" : "idle"} .validationMessage=${this._newFieldDisplayNameError || ""} .validationIcon=${!!this._newFieldDisplayNameError} @input=${(n) => this._handleNewFieldDisplayNameChange(n.target.value)}></calcite-input-text></calcite-label><calcite-label class="section-title">${e.fieldName}<calcite-input-text .placeholder=${e.fieldNamePlaceholder} .value=${this._newFieldName} max-length=31 .status=${this._newFieldNameError ? "invalid" : "idle"} .validationMessage=${this._newFieldNameError || ""} .validationIcon=${!!this._newFieldNameError} @input=${(n) => this._handleNewFieldNameChange(n.target.value)}></calcite-input-text></calcite-label></div><div class="layer-description-container"><calcite-label class="section-title">${e.fieldDescription}<calcite-text-area .placeholder=${e.fieldDescriptionPlaceholder} .value=${this._newFieldDescription} resize=none max-length=500 .status=${this._newFieldDescriptionError ? "invalid" : "idle"} .validationMessage=${this._newFieldDescriptionError || ""} .validationIcon=${!!this._newFieldDescriptionError} @input=${(n) => this._handleNewFieldDescriptionChange(n.target.value)}></calcite-text-area></calcite-label></div><div class="layer-properties-container"><calcite-label class="section-title">${e.type}<calcite-combobox .label=${e.type} selection-mode=single-persist clear-disabled @calciteComboboxChange=${(n) => this._handleNewFieldTypeChange(n)}><calcite-combobox-item value=string text-label=${e.stringType ?? h} .heading=${e.stringType} icon=string .selected=${this._newFieldType === "string"}></calcite-combobox-item><calcite-combobox-item value=integer text-label=${e.integerType ?? h} .heading=${e.integerType} icon=integer .selected=${this._newFieldType === "integer"}></calcite-combobox-item><calcite-combobox-item value=double text-label=${e.doubleType ?? h} .heading=${e.doubleType} icon=number .selected=${this._newFieldType === "double"}></calcite-combobox-item><calcite-combobox-item class="section-title" value=date text-label=${e.dateType ?? h} .heading=${e.dateType} icon=date-time .selected=${this._newFieldType === "date"}></calcite-combobox-item><calcite-combobox-item value=guid text-label=${e.guidType ?? h} .heading=${e.guidType} icon=key .selected=${this._newFieldType === "guid"}></calcite-combobox-item></calcite-combobox></calcite-label>${this._newFieldType === "string" && s`<calcite-label class="section-title">${e.length}<calcite-input-number .value=${this._newFieldLength.toString()} min=1 max=4000 .status=${this._newFieldLengthError ? "invalid" : "idle"} .validationMessage=${this._newFieldLengthError || ""} .validationIcon=${!!this._newFieldLengthError} @input=${(n) => {
677
+ const c = n.target.value === "" ? null : parseInt(n.target.value);
678
+ this._handleNewFieldLengthChange(c);
679
+ }}></calcite-input-number></calcite-label>` || ""}</div>${this._newFieldType === "string" && s`<div class="domain-section"><calcite-label class="section-title">${e.domainValues}</calcite-label>${this._newFieldChoiceList && this._newFieldChoiceList.length > 0 ? s`<div><div class="domain-list">${this._newFieldChoiceList.map((n, c) => s`<div class="domain-item" draggable @dragstart=${(d) => this._handleNewFieldChoiceDragStart(c, d)} @dragover=${(d) => d.preventDefault()} @drop=${(d) => this._handleNewFieldChoiceDrop(c, d)}><calcite-icon icon=drag scale=s class="drag-handle"></calcite-icon><calcite-input-text .placeholder=${e.domainValuePlaceholder} .value=${n} .maxLength=${this._newFieldLength} .status=${this._newFieldChoiceListErrors.get(c) ? "invalid" : "idle"} .validationMessage=${this._newFieldChoiceListErrors.get(c) || ""} .validationIcon=${!!this._newFieldChoiceListErrors.get(c)} @input=${(d) => this._handleUpdateNewFieldChoice(c, d.target.value)}></calcite-input-text><calcite-button icon-start=x appearance=transparent scale=s kind=neutral @click=${() => this._handleRemoveNewFieldChoice(c)}></calcite-button></div>`)}</div><calcite-button icon-start=plus appearance=transparent width=auto class="add-field-button padding-top-sm" @click=${this._handleAddNewFieldChoice}>${e.addDomainValue}</calcite-button></div>` : s`<calcite-button icon-start=plus appearance=transparent width=auto class="add-field-button padding-top-sm" @click=${this._handleAddNewFieldChoice}>${e.addDomainValue}</calcite-button>`}</div>` || ""}</div><calcite-button slot=footer-end appearance=solid scale=m .disabled=${// Disable if required fields are empty
680
+ !this._newFieldDisplayName.trim() || !this._newFieldName.trim() || // Disable if there are validation errors
681
+ !!this._newFieldDisplayNameError || !!this._newFieldNameError || !!this._newFieldDescriptionError || !!this._newFieldLengthError || this._newFieldChoiceListErrors.size > 0} @click=${this._handleAddFieldDone}>${e.done}</calcite-button></calcite-flow-item>` || ""}</calcite-flow>`;
682
+ }
683
+ _pushDesign(e, i = !0) {
684
+ this._design && (this._undoStack = [...this._undoStack, structuredClone(this._design)]), this._redoStack = [], this._design = e, this._lastPushedDesign = e, this._isDirty = !0, i && this._notifyDesignChanged(e);
685
+ }
686
+ _notifyDesignChanged(e) {
687
+ window.dispatchEvent(new CustomEvent("arcgis-solution-design-update", {
688
+ detail: e
689
+ }));
690
+ }
691
+ }
692
+ f("solution-builder-assistant", k);
693
+ export {
694
+ k as SolutionBuilderAssistant
695
+ };