@esri/solutions-components 5.1.3 → 5.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/{QEITYICZ.js → 2ANPUNLB.js} +1 -1
- package/dist/cdn/{KU2QSXAD.js → 2J5XFLVO.js} +1 -1
- package/dist/cdn/{7IKNLW73.js → 2K2JHJHI.js} +1 -1
- package/dist/cdn/{BOQUQFNT.js → 36A4OXYY.js} +1 -1
- package/dist/cdn/{UEC5OGAS.js → 3LOSUHD7.js} +1 -1
- package/dist/cdn/{45JNINYV.js → 3TC2XGQ5.js} +1 -1
- package/dist/cdn/{PLELSLAV.js → 42ZGLRJV.js} +1 -1
- package/dist/cdn/{AULN2QXN.js → 47DJRQSO.js} +1 -1
- package/dist/cdn/{DDUV67TU.js → 4ADGXO3L.js} +1 -1
- package/dist/cdn/4ER7R6OS.js +2 -0
- package/dist/cdn/{UCHXRVI7.js → 4FT4GFHD.js} +1 -1
- package/dist/cdn/{BACWGZE4.js → 4T4PIFVM.js} +1 -1
- package/dist/cdn/{EJK7PYN5.js → 4VBJISFZ.js} +1 -1
- package/dist/cdn/{MWTTZLRQ.js → 52UQZUF4.js} +1 -1
- package/dist/cdn/{KGXEY5HR.js → 57K3VUDO.js} +1 -1
- package/dist/cdn/{KGL266WS.js → 5BJ6II4F.js} +1 -1
- package/dist/cdn/{6SHN7V3N.js → 66G3UOA2.js} +1 -1
- package/dist/cdn/{DRZ2MEHM.js → 6GPU4R2K.js} +1 -1
- package/dist/cdn/{2EUQOQY3.js → 6M63XHZE.js} +1 -1
- package/dist/cdn/{X7GGOH2R.js → 6SJAVXVB.js} +1 -1
- package/dist/cdn/{KN5XFC7O.js → 6VBM5CYH.js} +1 -1
- package/dist/cdn/{2GHTA5PV.js → 72W4TG3N.js} +1 -1
- package/dist/cdn/{BDAY2SRY.js → 743CCX7N.js} +1 -1
- package/dist/cdn/{IKA3ESQ5.js → 7MGKE5QL.js} +1 -1
- package/dist/cdn/{AKXVDLK3.js → 7RAJU536.js} +1 -1
- package/dist/cdn/{MXNYBLUV.js → 7SROO3BB.js} +1 -1
- package/dist/cdn/{2CCKYJSY.js → A6FQF2BM.js} +1 -1
- package/dist/cdn/{GVREVCUB.js → AMCU6DVH.js} +1 -1
- package/dist/cdn/{UNKENPV5.js → AVTCXUIQ.js} +1 -1
- package/dist/cdn/{FPBZRT3J.js → BEX2VQAI.js} +1 -1
- package/dist/cdn/{WXFKH5GM.js → BFWIGZO7.js} +1 -1
- package/dist/cdn/{ENJC4SNG.js → BM2YLVYU.js} +1 -1
- package/dist/cdn/{TFWTXEN7.js → BQTGHHZB.js} +1 -1
- package/dist/cdn/{WEADUP3Y.js → BRO7CVUL.js} +1 -1
- package/dist/cdn/{LABCYKSC.js → C7NYB4E3.js} +1 -1
- package/dist/cdn/{VBZL2GZD.js → C7PGMJUI.js} +1 -1
- package/dist/cdn/{KZBPVSUW.js → CGWXSQMR.js} +1 -1
- package/dist/cdn/{IK3L2OC3.js → CPE5LQ77.js} +1 -1
- package/dist/cdn/{FKQHOE2A.js → CQO3LS4F.js} +1 -1
- package/dist/cdn/{3DFMPPUD.js → D4HLNASK.js} +1 -1
- package/dist/cdn/{HCY3VGST.js → D5KRZ7AK.js} +1 -1
- package/dist/cdn/{56PIVLPU.js → DBUXZOL2.js} +1 -1
- package/dist/cdn/{4PDKVX4T.js → DFCRABYS.js} +1 -1
- package/dist/cdn/{YWO5HXXP.js → DHCQHZGS.js} +1 -1
- package/dist/cdn/{BWFET22E.js → DPGJWY5W.js} +1 -1
- package/dist/cdn/{MIKSQTTI.js → DQVYSRKV.js} +1 -1
- package/dist/cdn/{ESH7SFXX.js → DW7BVW5R.js} +1 -1
- package/dist/cdn/{S3CBTGXW.js → EP5UH274.js} +1 -1
- package/dist/cdn/{6AWTIASQ.js → EX3OQDJQ.js} +1 -1
- package/dist/cdn/{Y2DDFGCN.js → FAUIMAPE.js} +1 -1
- package/dist/cdn/{B57TWGXS.js → FCFYBIFG.js} +1 -1
- package/dist/cdn/{X52CK3FZ.js → FGRROW6V.js} +1 -1
- package/dist/cdn/{J6PFJWXU.js → FRTR7R27.js} +1 -1
- package/dist/cdn/{GCLCH6NX.js → FXGBFLFM.js} +1 -1
- package/dist/cdn/{RKVNFHFD.js → FZY7OS66.js} +1 -1
- package/dist/cdn/{QWUJHEPY.js → GGW5J7IJ.js} +1 -1
- package/dist/cdn/{MZ63UWGX.js → GJVOUQQH.js} +1 -1
- package/dist/cdn/{NAZXHTIH.js → GLMXH46Y.js} +1 -1
- package/dist/cdn/{JBBUAR3W.js → GT3APK5P.js} +1 -1
- package/dist/cdn/{JCPQ7OOS.js → H6NFDCMH.js} +1 -1
- package/dist/cdn/{2XTZLJ5F.js → HE4XVC7T.js} +1 -1
- package/dist/cdn/{AX2U2PGS.js → HK7AVDFS.js} +1 -1
- package/dist/cdn/{37XAYW3Z.js → HPJTDALL.js} +1 -1
- package/dist/cdn/{5LM5R34X.js → HW2PNVBR.js} +1 -1
- package/dist/cdn/{JX7BWUKD.js → HZDK3K4L.js} +1 -1
- package/dist/cdn/{FL4YRGDB.js → IJ3HJGCR.js} +1 -1
- package/dist/cdn/{F6H43GFC.js → IUDZCTI5.js} +1 -1
- package/dist/cdn/{5EYRW6FE.js → IUNQVV4E.js} +1 -1
- package/dist/cdn/{B7YYMYZB.js → IVNAWTJU.js} +1 -1
- package/dist/cdn/{QVDDWNQD.js → IXEH43JO.js} +1 -1
- package/dist/cdn/{2GJEHDZJ.js → IXSXSPVY.js} +1 -1
- package/dist/cdn/{SY3D5J7W.js → J2R6S5NB.js} +1 -1
- package/dist/cdn/{KX4F4INQ.js → J7DVVXDE.js} +1 -1
- package/dist/cdn/{V4OFLP6D.js → JIQTQNV2.js} +1 -1
- package/dist/cdn/{CAXEJ55N.js → JP3PBXBQ.js} +1 -1
- package/dist/cdn/{XN5455P6.js → JUS454AQ.js} +1 -1
- package/dist/cdn/{PWGCOGC7.js → JUYUL4XS.js} +1 -1
- package/dist/cdn/{F46RK2J3.js → K2EL2UZ6.js} +1 -1
- package/dist/cdn/{HSZJX2Q4.js → KJEGIFW3.js} +1 -1
- package/dist/cdn/{RM6HYEWM.js → KWKPWZBG.js} +1 -1
- package/dist/cdn/{ZIIHIUUV.js → KXMDUV5P.js} +1 -1
- package/dist/cdn/{FWRNU7AK.js → LC3EY5AV.js} +1 -1
- package/dist/cdn/{5L7HZJBG.js → LJ4YWFDV.js} +1 -1
- package/dist/cdn/{FAHLQLKD.js → LJSV3N24.js} +1 -1
- package/dist/cdn/{NGAS7OCN.js → LNEAPSZB.js} +1 -1
- package/dist/cdn/{O7LSXSBD.js → LYGGTOTA.js} +1 -1
- package/dist/cdn/{AHC3CH4P.js → MFAEDW75.js} +1 -1
- package/dist/cdn/MHBADLXW.js +2 -0
- package/dist/cdn/{CYKO5XJY.js → MRYP6TKM.js} +1 -1
- package/dist/cdn/{VZY472CH.js → NG3F6PTV.js} +1 -1
- package/dist/cdn/{SI2EHJJ5.js → OIKSXWIN.js} +1 -1
- package/dist/cdn/{VLP6VQEG.js → OKJQRXDF.js} +1 -1
- package/dist/cdn/{PIRHBQVO.js → PM6MGL6S.js} +59 -59
- package/dist/cdn/{LI3GKZ35.js → POGUZ34D.js} +1 -1
- package/dist/cdn/{RNMVOUE3.js → PS3JQUTJ.js} +1 -1
- package/dist/cdn/{C7YLT2V6.js → PS72QAM2.js} +1 -1
- package/dist/cdn/{2DCSGUOX.js → PSEXPNM3.js} +1 -1
- package/dist/cdn/{J5Q7IGCO.js → PTTNVFTG.js} +1 -1
- package/dist/cdn/{G63VTGNV.js → QFIGUV2M.js} +1 -1
- package/dist/cdn/{RQQWTDQG.js → QTKE7MA4.js} +1 -1
- package/dist/cdn/{3N2AUH5S.js → QTVE3UQ6.js} +1 -1
- package/dist/cdn/{MOHSZVTU.js → QX4VD677.js} +1 -1
- package/dist/cdn/{ZOGD4MGP.js → R4DDGIC2.js} +1 -1
- package/dist/cdn/{HXCNKN3S.js → R4HQIY3D.js} +1 -1
- package/dist/cdn/{6AVCTQ6J.js → R4SSUAM5.js} +1 -1
- package/dist/cdn/{GLD7SDA5.js → S2WAKXLP.js} +1 -1
- package/dist/cdn/{TBXAQ6YS.js → SHDZVK22.js} +1 -1
- package/dist/cdn/{6FPVZV4K.js → SSCZIVLF.js} +1 -1
- package/dist/cdn/{3XOKCST3.js → SVSOXKWN.js} +1 -1
- package/dist/cdn/TIYKWS6T.js +2 -0
- package/dist/cdn/{37CMWBMW.js → TN3H35H5.js} +1 -1
- package/dist/cdn/{IXSDSBUI.js → TV64L24Q.js} +1 -1
- package/dist/cdn/{5BJO5ABV.js → U4HGOXNJ.js} +1 -1
- package/dist/cdn/{HKURBCD6.js → UVVHDNLG.js} +1 -1
- package/dist/cdn/{3MN7XFQ2.js → VCGIHOOS.js} +1 -1
- package/dist/cdn/{OLN76PG4.js → VMJ4RMTW.js} +1 -1
- package/dist/cdn/{TSLAML4I.js → VO5GTLFZ.js} +1 -1
- package/dist/cdn/{XEON6B7Z.js → VQR63FZS.js} +1 -1
- package/dist/cdn/{XOCNSPTC.js → W75AYE63.js} +1 -1
- package/dist/cdn/{6UVMG6O6.js → WFZAADG6.js} +1 -1
- package/dist/cdn/{BTOTDVAS.js → WUIPWLKY.js} +1 -1
- package/dist/cdn/{3TO6KC3G.js → WV6SP7G6.js} +1 -1
- package/dist/cdn/{43MZA66W.js → X5OAASE3.js} +1 -1
- package/dist/cdn/{TKIL55TV.js → XFQFC2MM.js} +1 -1
- package/dist/cdn/{N4MCHYQT.js → XVC34MKM.js} +1 -1
- package/dist/cdn/{NBWMZOGE.js → XZMAMFEG.js} +1 -1
- package/dist/cdn/{UE2HAEBW.js → YY2HNKAV.js} +1 -1
- package/dist/cdn/{PPLHKHZ3.js → YYX3TPSP.js} +1 -1
- package/dist/cdn/{SGWJLKO4.js → Z25PSY3U.js} +1 -1
- package/dist/cdn/{WKTMPKVR.js → ZO6UNZTG.js} +1 -1
- package/dist/cdn/{XR3PT7FP.js → ZS54T3U7.js} +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/runtime.js +1 -1
- package/dist/components/card-manager/customElement.js +1 -1
- package/dist/components/crowdsource-manager/customElement.js +7 -9
- package/dist/components/layer-table/customElement.js +75 -65
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/solutions-components_commit.txt +4 -4
- package/package.json +1 -1
- package/dist/cdn/DTTQLI5W.js +0 -2
- package/dist/cdn/R437P4KQ.js +0 -2
- package/dist/cdn/UKAP3ALW.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as r}from"./
|
|
2
|
+
import{a as r}from"./C7NYB4E3.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as n}from"./U4HGOXNJ.js";import{H as o,h as l,i as a,q as i}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var c=l`:host{display:block}`,s=class extends o{constructor(){super(...arguments),this.ids=[],this.open=!1,this._isDeleting=!1,this._translations=r({name:"delete-dialog",blocking:!0}),this.editsComplete=i(),this.deleteDialogClose=i()}static{this.properties={ids:0,layer:0,open:5,_isDeleting:16,_translations:16}}static{this.styles=c}render(){let e=this.layer?.title||"",t=this.ids.length===1?(this._translations.confirmSingle||"").replace("{{layer-name}}",e):(this._translations.confirmMultiple||"").replace("{{layer-name}}",e);return a`<calcite-dialog .heading=${this._translations.deleteFeature} kind=danger modal @calciteDialogClose=${()=>this._close()} .open=${this.open} width=s><div>${t}</div><calcite-button appearance=outline kind=danger @click=${()=>this._close()} slot=footer-end width=full>${this._translations.cancel}</calcite-button><calcite-button kind=danger .loading=${this._isDeleting} @click=${()=>{this._deleteFeatures()}} slot=footer-end width=full>${this._translations.delete}</calcite-button></calcite-dialog>`}async _deleteFeatures(){if(this.layer){this._isDeleting=!0;let e=this.ids.map(t=>({objectId:Number(t)}));await this.layer.applyEdits({deleteFeatures:e}),this._isDeleting=!1,this._close(),this.editsComplete.emit("delete")}}_close(){this.open=!1,this.deleteDialogClose.emit()}};n("delete-dialog",s);export{s as DeleteDialog};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import b from"./XOCNSPTC.js";import a from"./XOPNEAS5.js";import{Db as $,Eb as O,Fb as P,c as v,nb as T,za as E}from"./AO7XKW2U.js";import{a as R}from"./LABCYKSC.js";import{h as m}from"./PY6RTQDR.js";import{b as A}from"./5BJO5ABV.js";import{F as c,G as h,H as M,J as k,L as p,h as C,i as r,j as U,q as g}from"./T3EPRHTT.js";export default $arcgis.t(([_,B,H,{b:x,e:z,g:G,j:N,s:u},{g:L,l:d,m:w,r:b}])=>{async function K(a,t,e){let i=e;return a&&(a?.IsEnterprisePortal&&await q("",t)&&i.push(d.NOTEBOOK),await x(t)?e.push(d.VELOCITY):a?.PortalUserPrivileges&&[w.VELOCITYFEEDS,w.VELOCITYBIGDATA,w.VELOCITYREALTIME].forEach(s=>{let n=e.indexOf(s)||-1;n!==-1&&e.splice(n,1)}),i=i.concat(j(J(a),Y(a))),i=i.concat(Q(a)),i=i.concat(await W(a))),Promise.resolve(i)}function j(a,t){let e=[];return a&&t?e=[d.TRACKINGADMINANDTRACKING,d.TRACKINGADMIN,d.TRACKING]:a&&!t?e=[d.TRACKINGADMIN]:!a&&t&&(e=[d.TRACKING]),e}function Q(a){return X(a)?[d.HUBPREMIUM]:[]}async function W(a){let t=a?.RestUserSession;if(!t?.username)return[];let e=await O(t);return await $(e,t)?[d.WORKFLOW]:[]}async function q(a,t){let e=a+"/sharing/rest",i={authentication:t,portal:e,params:{f:"json"}};return v(`${e}/portals/self/servers`,i).then(s=>s?.servers?.find(n=>n.serverFunction.indexOf("NotebookServer")>-1),s=>(console.error(s),!1))}function J(a){let t=a?.PortalUserSubset?.privileges;return t?["portal:admin:create","portal:admin:delete","portal:admin:update","portal:admin:reassign"].every(i=>t.some(s=>s.startsWith(i))):!1}function Y(a){return a?.PortalSubset?.locationTrackingEnabled||!1}function X(a){return a?.PortalSubset?.hubPremiumEnabled||!1}var y=class{constructor(t,e,i,s){this._credential=void 0,this._isEnterprise=!1,this._locale="en",this._portalSubset=void 0,this._portalUserSubset=void 0,this._portalUserEnrichedPrivileges=void 0,this._arcGISOnlineReachable=!0,this._searchArcGISOnlineEnabled=!0,this._signInParam=void 0,this._clientId=t??"",this._locale=i??"en",this._portalUrl=e??"https://www.arcgis.com",this._portalRestUrl=this._portalUrl+"/sharing/rest",this._portalUrl=location.origin.endsWith(".arcgis.com")?window.location.origin:this._portalUrl,this._signInParam=s;let n=new B({appId:this._clientId,locale:this._locale,popup:!1,portalUrl:this._portalUrl,preserveUrlHash:!0});try{_.registerOAuthInfos([n])}catch(o){console.log(o)}this._portal=new H({url:this._portalUrl})}get Credential(){return this._credential}get IsEnterprisePortal(){return this._isEnterprise}get IsSignedIn(){return!!this._credential}get Portal(){return this._portal}get PortalSubset(){return this._portalSubset}get PortalUrl(){return this._portalUrl}get PortalUserOrg(){return this._portalSubset&&this._portalSubset.id}get PortalUserName(){return this._portalUserSubset&&this._portalUserSubset.username||""}get PortalUserSubset(){return this._portalUserSubset}get PortalUserPrivileges(){let t=[];return this._portalUserSubset?.privileges&&(t=this._portalUserSubset.privileges),t}get PortalUserEnrichedPrivileges(){return this._portalUserEnrichedPrivileges??this.PortalUserPrivileges}get SignInParam(){return this._signInParam}get CanDeleteSolution(){return this.PortalUserPrivileges.includes("portal:admin:deleteItems")}get CanUpdateSolution(){return this.PortalUserPrivileges.includes("portal:admin:updateItems")}get CanUseAI(){let t=this._portalSubset?.orgSettings,e=this.PortalUserPrivileges.includes("portal:user:useAIAssistants");return t?.aiAssistantsEnabled?t.aiAssistantsEnabled&&!t.blockBetaApps&&e:!1}get CanViewOrg(){return this.PortalUserPrivileges.includes("portal:admin:viewItems")}get CanSearchArcGISOnline(){return this._searchArcGISOnlineEnabled&&this._arcGISOnlineReachable}async checkArcGISOnlineReachability(t){if(this._isEnterprise&&this._searchArcGISOnlineEnabled&&t){let e=`${G(this._portalUrl)}/sharing/rest`,i=new m({});try{await T({q:`group:${t} type:Solution`,num:1,start:1,authentication:i,portal:e}),this._arcGISOnlineReachable=!0}catch(s){this._arcGISOnlineReachable=!1,console.warn("ArcGIS Online solutions group not reachable:",s)}}}get RestUserSession(){let t=_.findServerInfo(this._portalRestUrl),e=this._credential?m.fromCredential(this._credential,t):this._isEnterprise?new m({}):new m({portal:this._portalRestUrl});return e.portal=this.PortalSubset?.restUrl?this.PortalSubset?.restUrl:e.portal,e.clientId=this._credential?._oAuthCred?.appId,e._refreshToken=this._credential?._oAuthCred?.refreshToken,e}async initialize(t=!1,e){try{await this._init(t,e)}catch{this.destroy()}return this}destroy(){this._credential=void 0,this._portalSubset=void 0,this._portalUserSubset=void 0,_.destroyCredentials()}async signIn(t=""){_.setOAuthRedirectionHandler(e=>{let i=e.authorizeParams.redirect_uri;if(t.length>0){let s=i.split("?"),n=s[0],o="",l=new URLSearchParams(s[1]||"");l.append("signInParam",t),o="?"+l.toString(),e.authorizeParams.redirect_uri=n+o}window.location.href=e.authorizeUrl+"?"+this._objectToQuery(e.authorizeParams)}),await _.getCredential((this._portalSubset?.portalUrl??this._portalUrl)+"/sharing").then(e=>{e&&window.location.reload()})}signOut(){let t=window.location.href,e=/[\/]\b([0-9A-Fa-f]){32}\b/g,i=t.match(e)?t.replace(e,""):t;i=z(i,"sortField","suggested");let s=`${this._portal?.restUrl??this._portalUrl+"/sharing/rest"}/oauth2/signout?client_id=${this._clientId}&redirect_uri=${encodeURIComponent(i)}`;this.destroy(),window.location.replace(s)}refreshSession(){let t=this.RestUserSession;if(!(!t||!this.IsSignedIn))return t.exchangeRefreshToken()}_getOrgUrl(t,e,i){return e&&i?window.location.protocol+"//"+e.toLowerCase()+"."+i:t}async _init(t=!1,e){try{this._credential=await _.checkSignInStatus(this._portalUrl+"/sharing")}catch(s){console.log(s)}try{let s=await _.checkAppAccess(this._portalUrl+"/sharing",this._clientId);(typeof s.valid<"u"&&!s.valid||s.viewOnlyUserTypeApp)&&window.location.replace(`error.html?error=blocked&locale=${this._locale}`),this._credential=s.credential}catch(s){s.name}this._searchArcGISOnlineEnabled=await this._checkSearchArcGISOnlineEnabled(t,this._portal.restUrl),this._portal.authMode=t?"immediate":"auto",await this._portal.load();let i=this._credential?await E(this.RestUserSession):{};if(this._isEnterprise=this._portal.isPortal,await this.checkArcGISOnlineReachability(e),this._portalSubset={name:this._portal.name??"",id:this._portal.id??"",restUrl:this._portal.restUrl??"",portalUrl:this._portal.url??"",urlKey:this._portal.urlKey??"",hostName:this._portal.portalHostname??"",orgUrl:this._getOrgUrl(this._portal.url,this._portal.urlKey??"",this._portal.customBaseUrl??""),locationTrackingEnabled:this._portal.helperServices.hasOwnProperty("locationTracking"),hubPremiumEnabled:this._portal.portalProperties?.hub?.enabled||!1,workflowURL:this._portal.helperServices?.workflowManager?.url??this._portal.url,isReadOnly:this._portal.isReadOnly,orgSettings:i},this._portalUserSubset={fullName:this._portal.user?.fullName??"",username:this._portal.user?.username??"",culture:this._portal.user?.culture?.toLowerCase()||"en",thumbnailUrl:this._portal.user?.thumbnailUrl||this._portal.url+"/home/js/arcgisonline/css/images/no-user-thumb.jpg",orgId:this._portal.user?.orgId??"",privileges:this._portal.user.privileges,role:this._portal.user?.role??"",roleId:this._portal.user?.roleId??void 0},this._isEnterprise&&this._portalSubset&&(this._portalSubset.workflowURL=await P(this._portal.restUrl,this.RestUserSession||new m({}))),this._portal?.user?.roleId&&this._portalUserSubset&&(this._portalUserSubset.roleId=this._portal.user.roleId),this._credential&&this._portalUserSubset)try{this._portalUserEnrichedPrivileges=await K(this,this.RestUserSession,[...this._portalUserSubset.privileges])}catch(s){console.warn("Failed to enrich user privileges during sign-in:",s),this._portalUserEnrichedPrivileges=[...this._portalUserSubset.privileges]}return this}async _checkSearchArcGISOnlineEnabled(t,e){if(t)try{let i=`${e}/portals/self/settings`,s=await v(i,{authentication:this._credential?this.RestUserSession:void 0});return s?.portalConfigProperties?.searchArcGISOnlineEnabled!==void 0?s.portalConfigProperties.searchArcGISOnlineEnabled:!1}catch(i){return console.warn("Failed to fetch portal settings:",i),!1}else return!0}_isSerializable(t){return t&&typeof t=="object"&&"toJSON"in t&&typeof t.toJSON=="function"}_objectToQuery(t,e){return t?e&&typeof e=="function"?Object.keys(t).map(i=>encodeURIComponent(i)+"="+encodeURIComponent(e(i,t[i]))).join("&"):Object.keys(t).map(i=>{let s=t[i];if(s==null)return"";let n=encodeURIComponent(i)+"=",o=e&&e[i];return o?n+encodeURIComponent(o(s)):Array.isArray(s)?s.map(l=>this._isSerializable(l)?n+encodeURIComponent(JSON.stringify(l)):n+encodeURIComponent(l)).join("&"):this._isSerializable(s)?n+encodeURIComponent(JSON.stringify(s)):n+encodeURIComponent(s)}).filter(i=>i).join("&"):""}};var Z=C`.esri-global-nav__title{margin-block-start:0;position:relative;margin-bottom:0;font-size:var(--calcite-font-size-xl);font-weight:var(--calcite-font-weight-medium);padding-inline-end:var(--calcite-spacing-xxl);align-self:center;height:100%;display:flex;align-items:center}.esri-global-nav__logo-link{color:var(--calcite-color-text-1);text-decoration:unset;margin-block-start:0px;position:relative;margin-bottom:0;align-self:center;height:100%;display:flex;align-items:center}.esri-global-nav__logo-link:focus{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.cursor-pointer{cursor:pointer}.side{border-right:solid 1px;color:var(--calcite-color-text-1);height:34px;align-self:center}.display-flex{display:flex}.align-self-center{align-self:center}.padding-top-1{padding-top:var(--calcite-spacing-lg)}.padding-end-1{padding-inline-end:var(--calcite-spacing-lg)}.padding-start-1{padding-inline-start:var(--calcite-spacing-lg)}.padding-bottom-1{padding-bottom:var(--calcite-spacing-lg)}.margin-start-end-1{margin-inline-start:var(--calcite-spacing-lg);margin-inline-end:var(--calcite-spacing-lg)}.margin-start-end-1-5{margin-inline-start:var(--calcite-spacing-xxl);margin-inline-end:var(--calcite-spacing-xxl)}.height-full{height:100%}.user-label{--calcite-label-margin-bottom: 0px}.font-bold{font-weight:var(--calcite-font-weight-bold)}.font-normal{font-weight:var(--calcite-font-weight-normal)}.logo-padding{padding-inline-start:var(--calcite-spacing-none);height:100%}@media(max-width:800px){.logo-padding{padding-inline-start:var(--calcite-spacing-lg)}}.signin-padding{padding-inline-end:var(--calcite-spacing-none)}@media(max-width:800px){.signin-padding{padding-inline-end:var(--calcite-spacing-lg)}}calcite-action{--calcite-font-size-0: var(--calcite-font-size--1);--calcite-internal-action-padding-inline: var(--calcite-spacing-lg)}calcite-navigation{--calcite-color-border-3: transparent}.border-bottom{border-bottom-color:var(--calcite-color-border-1);border-bottom-width:var(--calcite-spacing-px);border-bottom-style:solid}.border{height:var(--calcite-spacing-px);border-bottom-color:var(--calcite-color-border-2);border-bottom-style:solid;border-bottom-width:var(--calcite-border-width-sm);box-sizing:border-box;position:absolute;top:65px;left:0;width:100%;z-index:1}.height-66{height:66px}.sub-nav-constrained{width:calc(100% - var(--assistant-panel-width, 420px));overflow:hidden}`,I={name:"arcgis-solutions-app",version:"2.1",dev:{amazon:{userPoolID:"us-east-1:7345bcf2-bffa-4849-a379-a83178f63eef",app:{id:"7e2fd97553644e5f99b1129fbcee3c2e"}}},qa:{amazon:{userPoolID:"us-east-1:7345bcf2-bffa-4849-a379-a83178f63eef",app:{id:"a3beba911bd14847ada5c9ffed2a2111"}}},prod:{amazon:{userPoolID:"us-east-1:8c41b2dc-7563-403d-ba64-673b103debce",app:{id:"35a920e0e7f84680be076e57dd5cb728"}}}},F="solutions-deployment-first-use",f=class a{constructor(){this._telemetryInstance=void 0,this._logTelemetryEvents=!1}getInstance(){return this._telemetryInstance}isEnabled(){return this._logTelemetryEvents}setInstance(t){this._telemetryInstance=t}setEnabled(t){this._logTelemetryEvents=t}_mapDimensions(t){let e={};return t&&t.slice(0,20).forEach((i,s)=>{let n=`dimension${s+1}`;e[n]=i}),e}_mapMetrics(t){let e={};return t&&t.slice(0,20).forEach((i,s)=>{let n=`metric${s+1}`;e[n]=i}),e}logEvent(t){if(this._logTelemetryEvents&&this._telemetryInstance){let{category:e,action:i,dimensions:s,metrics:n,label:o="",details:l=""}=t,D=this._mapDimensions(s),V=this._mapMetrics(n);this._telemetryInstance.logEvent({category:e,action:i,label:o,details:l,...D,...V})}}getTelemetrySession(){return{instance:this._telemetryInstance,logEvent:t=>this.logEvent(t),enabled:this._logTelemetryEvents}}static getDisabledSession(){return{instance:void 0,logEvent:()=>{},enabled:!1}}async initializeTelemetry(t,e){if(!a.shouldEnableTelemetry(t,e))return this.getTelemetrySession();let i=document.querySelector("consent-manager");if(!i){if(!customElements.get("consent-manager"))return this.getTelemetrySession();i=document.createElement("consent-manager"),i.portal=t.Portal,i.measurementIds=e.measurementIds||[],i.firstUseVar=F;let s=a.getEnvironmentConfig(e,t);s&&(i.amazonUserPoolID=s?.amazon?.userPoolID,i.amazonAppId=s?.amazon?.app?.id,i.amazonAppName=I.name,i.amazonVersion=I.version);let n=t.Portal?.eueiEnabled;(localStorage.getItem(i.firstUseVar)==="true"||n)&&(this.setEnabled(!0),i.classList.add("display-none")),document.body.appendChild(i),n?(await new Promise(o=>setTimeout(o,100)),await this._setInstanceFromConsentManager(i)):window.addEventListener("consentGranted",o=>{o.detail?.granted&&(this.setEnabled(!0),this._setInstanceFromConsentManager(i))})}return this.getTelemetrySession()}async _setInstanceFromConsentManager(t){try{let e=new Promise((s,n)=>setTimeout(()=>n(new Error("Timeout waiting for consent-manager instance")),1e4)),i=await Promise.race([t.getInstance(),e]);this.setInstance(i)}catch{}}static shouldEnableTelemetry(t,e){let i=t?.IsEnterprisePortal;return t?.Portal?.eueiEnabled===!1||i?!1:!!((e.measurementIds||I)&&F)}static getEnvironmentConfig(t,e){let i=t.forceTrackingEnv||N(document.location.hostname,e?.Portal?.portalHostname||"");return i&&Object.keys(I).includes(i)?I[i]:void 0}},S=class extends M{constructor(){super(),this.assistantOpen=!1,this._isMobile=!1,this._logoFill="",this._thumbnailUrl="",this._translations=R({name:"solutions-deploy-app-nav",blocking:!0}),this._activeTab="all-solutions",this._authentication=void 0,this._cardType="details",this._dropdownRef=c(),this._dropdownItemAll=c(),this._dropdownItemMy=c(),this._dropdownItemMyContent=c(),this._dropdownItemResources=c(),this._handleMobileChange=t=>{this._isMobile=t.matches},this._menuRef=c(),this._menuItemAll=c(),this._menuItemMy=c(),this._menuItemResources=c(),this.authInit=g(),this.navTabSelected=g(),this.tabChanged=g(),this.tokenRefreshed=g(),this.listenOn(window,"deployedCardSelected",this._deployedCardSelected),this.listenOn(window,"detailsCardSelected",this._detailsCardSelected),this.listenOn(window,"deployAppTabSelected",this._deployAppTabSelected),this.listenOn(window,"popstate",this._handleUrlChange),this.listenOn(window,"sessionRefreshed",t=>{this._updateThumbnailToken(t.detail)}),this._mobileMediaQuery=window.matchMedia("(max-width: 800px)"),this._isMobile=this._mobileMediaQuery.matches,this._mobileMediaQuery.addEventListener("change",this._handleMobileChange)}static{this.properties={appConfig:1,assistantOpen:5,initTab:1,_subNavigationCard:16,_isMobile:16,_logoFill:16,_thumbnailUrl:16,_translations:16}}static{this.styles=Z}get _telemetry(){return this._config?.telemetrySession}clearMenuItems(){this._isMobile?(this._dropdownItemAll.value.selected=!1,this._authentication?.IsSignedIn&&(this._dropdownItemMy.value.selected=!1),this._dropdownItemResources.value.selected=!1):(this._menuItemAll.value.active=!1,this._authentication?.IsSignedIn&&(this._menuItemMy.value.active=!1),this._menuItemResources.value.active=!1)}activateMenuItem(t,e=!1){let i,s;switch(t){case"all-solutions":i=this._isMobile?this._dropdownItemAll:this._menuItemAll,s=this._isMobile?[this._dropdownItemMy,this._dropdownItemResources]:[this._menuItemMy,this._menuItemResources];break;case"deployments":i=this._isMobile?this._dropdownItemMy:this._menuItemMy,s=this._isMobile?[this._dropdownItemAll,this._dropdownItemResources]:[this._menuItemAll,this._menuItemResources];break;case"resources":i=this._isMobile?this._dropdownItemResources:this._menuItemResources,s=this._isMobile?[this._dropdownItemAll,this._dropdownItemMy]:[this._menuItemAll,this._menuItemMy];break;case"my-content":this._isMobile&&(i=this._dropdownItemMyContent,s=[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemResources]);break}i&&s&&this._handleMenuClick(t,i,s,e)}async connectedCallback(){super.connectedCallback();let t=new m({username:"",password:""});this._userSession=t}async load(){let t=window.matchMedia("(prefers-color-scheme: dark)");t.addEventListener("change",l=>this._logoFill=this._getLogoFill(l.matches)),this._logoFill=this._getLogoFill(t.matches),this._mobileMediaQuery.matches&&(this._isMobile=!0);let e=this.appConfig.locale||"en",i=this.appConfig.authentication?.PortalSubset?.orgUrl||this.appConfig.orgURL||this.appConfig.portalURL,s=this.appConfig.authentication?.PortalUrl||this.appConfig.portalURL,n=this.appConfig.primarySolutionsGroupId,o=!1;this._authentication||(this.appConfig.authentication?this._authentication=this.appConfig.authentication:(this._authentication=new y(this.appConfig.appId,this.appConfig.portalURL,this.appConfig.locale),await this._authentication.initialize(this.appConfig.isEnterprise,this.appConfig.agoBasedEnterpriseSolutionsGroupId),o=!0)),o||await this._authentication?.checkArcGISOnlineReachability(this.appConfig.agoBasedEnterpriseSolutionsGroupId),this._authentication.RestUserSession&&(this._userSession=this._authentication.RestUserSession),this.initTab&&(this._activeTab=this.initTab,this.initTab=void 0),this._config={anonAgolSession:void 0,agolPortalUrl:"",allCards:[],appId:this.appConfig.appId,authentication:this._authentication,agoBasedEnterpriseSolutionsGroupId:this.appConfig.agoBasedEnterpriseSolutionsGroupId,diagramKey:this.appConfig.diagramKey,forceTrackingEnv:this.appConfig.forceTrackingEnv,isEnterprise:this.appConfig.isEnterprise,locale:e,orgUrl:i,portalURL:s,primarySolutionsGroupId:n,userSession:this._userSession,telemetrySession:f.getDisabledSession(),measurementIds:this.appConfig.measurementIds},this.authInit.emit(this._config),this._portal=await this._userSession?.getPortal()}render(){return r`<div><calcite-navigation>${this._getHeading()}${this._isMobile?this._getDropdown():this._getMenu()}${this._isMobile?"":this._getSignInOut()}</calcite-navigation><div class="border" slot=header></div>${!this._isMobile&&r`<div class=${k(this.assistantOpen?"sub-nav-constrained":"")}>${this._getSubHeading()}</div>`||""}</div>`}updated(t){t.has("_isMobile")&&t.get("_isMobile")!==void 0&&this.activateMenuItem(this._activeTab,!1)}disconnectedCallback(){super.disconnectedCallback(),this._mobileMediaQuery.removeEventListener("change",this._handleMobileChange)}_getSignInOut(){return this._authentication?.IsSignedIn?r`<div slot=user>${this._getUserAvatar()}</div>`:r`<calcite-menu label slot=content-end><calcite-menu-item label @click=${this._handleSignIn} @keydown=${t=>u(t,()=>this._handleSignIn(t))} .text=${this._translations.signIn}></calcite-menu-item></calcite-menu>`}_getDropdown(){let t=this._authentication?.IsSignedIn?this._translations.signOut:this._translations.signIn;return r`<calcite-dropdown overlay-positioning=fixed slot=content-end width=m ${h(this._dropdownRef)}><calcite-button appearance=transparent icon-start=hamburger kind=neutral slot=trigger scale=l></calcite-button><calcite-dropdown-group><calcite-dropdown-item @click=${()=>this._handleMenuClick("all-solutions",this._dropdownItemAll,[this._dropdownItemMy,this._dropdownItemResources,this._dropdownItemMyContent],!0)} @keydown=${e=>u(e,()=>this._handleMenuClick("all-solutions",this._dropdownItemAll,[this._dropdownItemMy,this._dropdownItemResources,this._dropdownItemMyContent],!0))} ${h(this._dropdownItemAll)}>${this._translations.allSolutions}</calcite-dropdown-item><calcite-dropdown-item @click=${()=>this._handleMenuClick("deployments",this._dropdownItemMy,[this._dropdownItemAll,this._dropdownItemResources,this._dropdownItemMyContent],!0)} @keydown=${e=>u(e,()=>this._handleMenuClick("deployments",this._dropdownItemMy,[this._dropdownItemAll,this._dropdownItemResources,this._dropdownItemMyContent],!0))} ${h(this._dropdownItemMy)}>${this._translations.myDeployments}</calcite-dropdown-item>${this._authentication?.CanSearchArcGISOnline&&r`<calcite-dropdown-item @click=${()=>this._handleMenuClick("resources",this._dropdownItemResources,[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemMyContent],!0)} @keydown=${e=>u(e,()=>this._handleMenuClick("resources",this._dropdownItemResources,[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemMyContent],!0))} ${h(this._dropdownItemResources)}>${this._translations.solutionResources}</calcite-dropdown-item>`||""}<calcite-dropdown-item @click=${()=>{let e=this._activeTab==="all-solutions"?this._dropdownItemAll:this._activeTab==="deployments"?this._dropdownItemMy:this._activeTab==="resources"?this._dropdownItemResources:void 0;setTimeout(()=>this._handleMenuClick("my-content",e,[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemResources,this._dropdownItemMyContent],!1),10)}} ${h(this._dropdownItemMyContent)}>${this._translations.myContent}</calcite-dropdown-item><calcite-dropdown-item @click=${e=>{this._authentication?.IsSignedIn?this._signOut():this._handleSignIn(e)}}>${t}</calcite-dropdown-item></calcite-dropdown-group></calcite-dropdown>`}_getMenu(){return r`<calcite-menu label slot=content-start ${h(this._menuRef)}><calcite-menu-item label @click=${()=>this._handleMenuClick("all-solutions",this._menuItemAll,[this._menuItemMy,this._menuItemResources],!0)} @keydown=${t=>u(t,()=>this._handleMenuClick("all-solutions",this._menuItemAll,[this._menuItemMy,this._menuItemResources],!0))} .text=${this._translations.allSolutions} ${h(this._menuItemAll)}></calcite-menu-item><calcite-menu-item label @click=${()=>this._handleMenuClick("deployments",this._menuItemMy,[this._menuItemAll,this._menuItemResources],!0)} @keydown=${t=>u(t,()=>this._handleMenuClick("deployments",this._menuItemMy,[this._menuItemAll,this._menuItemResources],!0))} .text=${this._translations.myDeployments} ${h(this._menuItemMy)}></calcite-menu-item>${this._authentication?.CanSearchArcGISOnline&&r`<calcite-menu-item label @click=${()=>this._handleMenuClick("resources",this._menuItemResources,[this._menuItemAll,this._menuItemMy],!0)} @keydown=${t=>u(t,()=>this._handleMenuClick("resources",this._menuItemResources,[this._menuItemAll,this._menuItemMy],!0))} .text=${this._translations.solutionResources} ${h(this._menuItemResources)}></calcite-menu-item>`||""}</calcite-menu>`}_getHeading(){return r`<div class="align-self-center display-flex cursor-pointer logo-padding" slot=logo><a aria-label=${this._translations.linkToEsriHomePage??p} class="esri-global-nav__logo-link" href=https://www.esri.com @click=${()=>this._logLinkClickTelemetry("Esri")} rel=noopener target=_blank title=${this._translations.linkToEsriHomePage??p}><svg aria-hidden=true height=30 viewBox="0 0 84 30" width=84 xmlns=http://www.w3.org/2000/svg>${U`<path fill=${this._logoFill??p} d="M77.277.5c-1.48 0-2.554 1.175-2.554 2.488 0 1.314 1.074 2.49 2.554 2.49 1.48 0 2.622-1.071 2.622-2.49C79.899 1.572 78.756.5 77.277.5zm-1.913 23.426h3.891V8.353h-3.891v15.573zM40.515 7.965c-4.702 0-8.465 3.275-8.465 8.174 0 4.898 3.763 8.177 8.465 8.177 2.146 0 4.165-.667 5.852-2.31l-2.457-2.457c-.916.964-2.093 1.651-3.78 1.651-2.175 0-3.927-1.397-4.188-3.698h11.875v-1.07c0-5.42-2.95-8.467-7.302-8.467zm-4.573 6.617c.293-2.24 1.721-3.7 4.023-3.7 2.434 0 3.926 1.43 3.96 3.7h-7.983zm17.305-1.849c0-1.169 1.233-1.655 2.273-1.655 1.32 0 2.292.547 3.037 1.577l2.476-2.474c-1.282-1.6-3.407-2.216-5.418-2.216-3.147 0-6.262 1.555-6.262 5.028 0 5.938 8.403 3.406 8.403 6.617 0 1.233-1.46 1.784-2.595 1.784-1.65 0-2.687-.806-3.69-1.905l-2.515 2.514c1.58 1.711 3.62 2.313 5.978 2.313 3.179 0 6.717-1.299 6.717-4.998 0-6.067-8.404-3.795-8.404-6.585zm14.15-1.916h-.062V8.353h-3.892v15.573h3.892v-8.34c0-.842.518-3.925 4.185-3.925.564 0 1.127.112 1.718.253l.152-3.726c-.45-.127-.901-.223-1.382-.223-2.046 0-3.766 1.07-4.61 2.852zM14.683 2.766c-1.217-.037-1.932.12-2.651.26-.216-.056-.62.003-.643.472 0 .252.08.447.24.562.159.114 1.493 1.1 2.473 2.142-.47.052-.98.138-1.504.246-.585-1.264-2.465-.114-3.714-.064-.146.006-.286.025-.431.035-.137-1.056-.235-2.15-.21-2.92 1.618-.917 4.748-1.593 6.874-1.626l.373-.01c.312-.003.337-.251.043-.291-2.641-.361-4.929.173-7.279 1.145C5.808 3.748 2.696 6.12.8 10.596c-.444 1.247-2.219 7.195.935 12.3 2.56 4.142 5.855 6.113 9.887 6.676 4.024.561 6.207.075 8.752-1.055 5.951-2.642 10.496-12.559 5.95-19.747-1.794-3.319-6.495-6.229-11.641-6.004zm-2.259 4.647a17.754 17.754 0 0 1 2.362-.368 15.741 15.741 0 0 1 1.748 2.54c-.805.39-1.878.688-2.315 1.312-.181.26-.226.613-.232.995a23.59 23.59 0 0 0-3.877 1.286c-.453-1.332-.85-2.66-1.124-3.842 1.296-1.237 2.813-1.438 3.438-1.923zm6.61 15.88c-.354.038-.706.083-1.016.13-.77.121-1.762.379-2.685.723-.53-.843-1.95-2.891-2.667-4.437 1.442-.709 3.457-1.303 5.775-1.444.19.33.4.66.69.956.757.774-.44 1.883-.096 4.072zm-8.603-9.14c1.12-.53 2.3-.968 3.56-1.286-.008.333-.045.649-.182.903-.196.366-.106 1.428.134 1.775.755 1.099 2.008.488 2.951.883.433.181.721.482.964.84-1.974.124-3.91.584-5.706 1.41-.923-1.96-1.72-4.524-1.72-4.524zm.832 4.938c-.07.033-.145.074-.217.11a40.803 40.803 0 0 0-3.256-.78c-.995-.204-1.031-.15-2.151.175-.16.046-.313.088-.462.133a36.17 36.17 0 0 1-.445-1.202c1.436-1.106 2.884-2.034 4.821-2.985.5 1.491 1.215 3.483 1.71 4.549zm.768 4.528c.293-.765.521-1.331.605-1.89.569.958 1.248 2 1.774 2.815-.819.397-1.772 1.01-2.672 1.685.062-1.037.083-2.064.293-2.61zm5.334-14.636c-.01.014-.028.026-.04.04a23.057 23.057 0 0 0-1.376-2.111c1.007-.061 2.246-.008 3.374.108-1.014.363-1.461 1.254-1.958 1.963zm-9.028 1.094c.019-.026.039-.047.057-.072.234 1.182.513 2.16.886 3.518-1.402.618-3.881 2.148-4.976 2.972-.198-.502-.404-1.214-.589-1.946.249-.737.758-1.254 1.476-1.325 1.228-.123 2.28-1.95 3.146-3.147zm-5.41-1.784C4.24 6.455 6.023 4.666 7.65 3.773c-.016.4.086 1.567.218 2.693-.57.057-1.134.128-1.692.211a12.084 12.084 0 0 0-3.115 4.088c-.117-1.054-.178-1.933-.133-2.472zM2.07 9.731s.062 1.06.113 1.833c0 0-.781.886-1.18 1.59.159-1.443.498-2.187 1.067-3.423zm7.664 18.356C5.688 26.82 2.69 23.41 1.62 19.834a17.475 17.475 0 0 1-.651-6.473c.056.01.186.072.38.017.135-.093.616-.43.957-.728l.018.131c-.23.87-.371 1.775-.4 2.71.37.39.804 1.038 1.286 1.707-.31.23-.905.641-1.045.741-.41.292-.406.753-.114 1.015.161.144.492.084.613-.01.358-.285.656-.513 1.066-.77.15.393.292.748.43 1.086-.175.188-.3.436-.342.798-.135 1.172.979 2.092 1.918 2.36.035.01.06.014.094.023.05.076.095.147.148.224-.487.378-.82.765-1.049 1.063-.132.172-.28.43-.16.481.123.05.535 0 .719-.034.466-.09.826-.606 1.148-.796.387.534 1.017 1.22 1.672 1.88.029.12.055.246.088.351.125.403.293.804.495 1.196.471.22.962.402 1.464.561a8.344 8.344 0 0 0-.622.72zm.989.313c.155-.203.312-.454.505-.626.468.31.969.665 1.368.894-.615-.07-1.337-.085-1.873-.268zm3.113.31s-1.604-1.062-2.009-1.471c.803-.667 2.102-1.459 3.128-1.889.402.63 1.727 2.507 2.258 3.112-.963.168-2.31.294-3.377.248zM20.54 27.2c-.286.189-1.664.814-2.204.988a23.43 23.43 0 0 1-2.44-3.202c.844-.354 2.143-.67 3.346-.82.109.342.25.704.444 1.094.19.382.411.662.649.853.085-.053.164-.115.248-.17-.006.42-.018.846-.043 1.257zm-.33-21.477c-.27-.172-.607-.108-.467.193.053.117.259.314.427.512-.986-.272-3.608-.479-4.856-.364-.815-.916-1.744-2.028-2.861-2.765 4.999-.311 9.49 1.756 11.473 4.186-.661-.344-2.087-.834-2.667-.963-.313-.319-.708-.58-1.05-.8zm1.094 21.065c.023-.407.04-.922.053-1.396.487-.378.946-.79 1.37-1.238.547.063 1.094.156 1.427.24-.74.936-1.762 1.716-2.85 2.394zm3.825-3.724c-.12.253-.428.688-.633.894-.312-.126-.781-.258-1.272-.375.078-.094.163-.182.24-.279.268-1.796-.338-2.37.42-4.014l.172-.371c.418.118.812.247 1.153.386.043.616.04 2.728-.08 3.759zm-.708-4.917c.196-.407.412-.84.645-1.27.061.547.105 1.08.131 1.563a9.256 9.256 0 0 0-.776-.293zm2.218 1.126l-.194.756c-.137.515-.593 1.732-.832 2.223.091-.663.171-2.384.148-2.73.16.049.502-.147.559-.341.057-.195-.564-.495-.564-.495a20.742 20.742 0 0 0-.172-2.7c.142-.23.286-.452.434-.655a12.082 12.082 0 0 0-.186-1.575c.125.041.24.074.323.075.283.004.282-.19.192-.298-.058-.07-.328-.238-.643-.42a12.02 12.02 0 0 0-2.78-5.32c.533.202 1.214.48 1.754.774.41.516 1.585 1.675 2.212 4.92.564 2.922-.06 5.143-.251 5.786zM80.886 8.597v-.24h1.218v.24h-.468v1.191h-.283V8.597h-.467zm1.87-.24l.365 1.025.368-1.024h.406v1.43h-.262V8.634l-.396 1.154h-.229l-.4-1.154v1.154h-.261v-1.43h.409z" />`}</svg></a><div class="side margin-start-end-1-5" slot=logo></div><div class="esri-global-nav__title"><a aria-label=${this._translations.linkToArcGISSolutionsHomePage??p} class="esri-global-nav__logo-link" href=https://www.esri.com/en-us/arcgis/products/arcgis-solutions/overview @click=${()=>this._logLinkClickTelemetry("ArcGIS Solutions")} rel=noopener target=_blank title=${this._translations.linkToArcGISSolutionsHomePage??p}>${this._translations.arcgisSolutions}</a></div></div>`}_getSubHeading(){let t=this._cardType==="deployed"?this._translations.myDeployments:this._translations.allSolutions;return this._subNavigationCard?r`<calcite-navigation class="height-66" slot=navigation-secondary><calcite-menu class="height-66" label slot=content-start><calcite-menu-item breadcrumb .label=${t} @click=${this._navigateFromSubMenu} @keydown=${e=>u(e,()=>this._navigateFromSubMenu())} .text=${t} text-enabled></calcite-menu-item><calcite-menu-item label active .text=${this._subNavigationCard?.title} text-enabled></calcite-menu-item></calcite-menu></calcite-navigation>`:""}_getLogoFill(t){return t?"#FFFFFF":"#141414"}_handleMenuClick(t,e,i,s){i.forEach(n=>{n.value&&(this._isMobile?n.value.selected=!1:n.value.active=!1)}),e?.value&&(this._isMobile?e.value.selected=!0:e.value.active=!0),t!=="my-content"?this._activeTab=t:this._viewMyContent(),s&&this._logNavClickTelemetry(t),s&&this.navTabSelected.emit({tabType:t})}_logNavClickTelemetry(t){let e={"all-solutions":"Solutions",deployments:"Deployments","my-content":"My Content",resources:"Resources",details:void 0,"deployed-card":void 0}[t];e&&this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:[e]})}_logLinkClickTelemetry(t){this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:[t]})}_getUserAvatar(){let t=this._portal.user,e=this._authentication?.PortalUserSubset,i=t?.id??t?.sourceJSON?.id;return this._thumbnailUrl===""&&(this._thumbnailUrl=t?.thumbnailUrl??e?.thumbnailUrl??""),r`<div class="height-full display-flex cursor-pointer signin-padding"><calcite-navigation-user class="height-full" full-name=${t?.fullName??p} id=instant-apps-sign-in-user-button slot=user .thumbnail=${this._thumbnailUrl} .userId=${i} .username=${t?.username}></calcite-navigation-user></div><calcite-popover placement=bottom-end scale=s reference-element=instant-apps-sign-in-user-button offset-distance=0 pointer-disabled focus-trap-disabled auto-close .label=${this._translations.userSettings}><calcite-action scale=l @click=${this._viewMyContent} .text=${this._translations.myContent} text-enabled></calcite-action><calcite-action scale=l @click=${this._signOut} .text=${this._translations.signOut} text-enabled></calcite-action></calcite-popover>`}_viewMyContent(){let t=`${this._config?.portalURL}/home/content.html#my`;window.open(t,"_blank")}_signOut(){this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:["Sign out"]}),this._authentication?.signOut()}_handleSignIn(t){t.preventDefault(),this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:["Sign in"]}),this._authentication?.signIn().then(()=>{}).catch(e=>{console.error("Error creating global nav header:",e)})}_deployedCardSelected(t){this._cardType="deployed",this._subNavigationCard=t.detail.card}_detailsCardSelected(t){this._cardType="details",this._subNavigationCard=t.detail}_deployAppTabSelected(){this._subNavigationCard=void 0}_handleUrlChange(){this._subNavigationCard=void 0}_navigateFromSubMenu(){this._cardType==="details"?this._handleMenuClick("all-solutions",this._menuItemAll,[this._menuItemMy,this._menuItemResources],!0):this._cardType==="deployed"&&this._handleMenuClick("deployments",this._menuItemMy,[this._menuItemAll,this._menuItemResources],!0)}_updateThumbnailToken(t){this._thumbnailUrl!==""&&(this._thumbnailUrl=L(this._thumbnailUrl,t))}};A("solutions-deploy-app-nav",S);return{a:f,b:S}},"identity/IdentityManager","identity/OAuthInfo","portal/Portal",a,b)
|
|
2
|
+
import b from"./W75AYE63.js";import a from"./XOPNEAS5.js";import{Db as $,Eb as O,Fb as P,c as v,nb as T,za as E}from"./AO7XKW2U.js";import{a as R}from"./C7NYB4E3.js";import{h as m}from"./PY6RTQDR.js";import{b as A}from"./U4HGOXNJ.js";import{F as c,G as h,H as M,J as k,L as p,h as C,i as r,j as U,q as g}from"./T3EPRHTT.js";export default $arcgis.t(([_,B,H,{b:x,e:z,g:G,j:N,s:u},{g:L,l:d,m:w,r:b}])=>{async function K(a,t,e){let i=e;return a&&(a?.IsEnterprisePortal&&await q("",t)&&i.push(d.NOTEBOOK),await x(t)?e.push(d.VELOCITY):a?.PortalUserPrivileges&&[w.VELOCITYFEEDS,w.VELOCITYBIGDATA,w.VELOCITYREALTIME].forEach(s=>{let n=e.indexOf(s)||-1;n!==-1&&e.splice(n,1)}),i=i.concat(j(J(a),Y(a))),i=i.concat(Q(a)),i=i.concat(await W(a))),Promise.resolve(i)}function j(a,t){let e=[];return a&&t?e=[d.TRACKINGADMINANDTRACKING,d.TRACKINGADMIN,d.TRACKING]:a&&!t?e=[d.TRACKINGADMIN]:!a&&t&&(e=[d.TRACKING]),e}function Q(a){return X(a)?[d.HUBPREMIUM]:[]}async function W(a){let t=a?.RestUserSession;if(!t?.username)return[];let e=await O(t);return await $(e,t)?[d.WORKFLOW]:[]}async function q(a,t){let e=a+"/sharing/rest",i={authentication:t,portal:e,params:{f:"json"}};return v(`${e}/portals/self/servers`,i).then(s=>s?.servers?.find(n=>n.serverFunction.indexOf("NotebookServer")>-1),s=>(console.error(s),!1))}function J(a){let t=a?.PortalUserSubset?.privileges;return t?["portal:admin:create","portal:admin:delete","portal:admin:update","portal:admin:reassign"].every(i=>t.some(s=>s.startsWith(i))):!1}function Y(a){return a?.PortalSubset?.locationTrackingEnabled||!1}function X(a){return a?.PortalSubset?.hubPremiumEnabled||!1}var y=class{constructor(t,e,i,s){this._credential=void 0,this._isEnterprise=!1,this._locale="en",this._portalSubset=void 0,this._portalUserSubset=void 0,this._portalUserEnrichedPrivileges=void 0,this._arcGISOnlineReachable=!0,this._searchArcGISOnlineEnabled=!0,this._signInParam=void 0,this._clientId=t??"",this._locale=i??"en",this._portalUrl=e??"https://www.arcgis.com",this._portalRestUrl=this._portalUrl+"/sharing/rest",this._portalUrl=location.origin.endsWith(".arcgis.com")?window.location.origin:this._portalUrl,this._signInParam=s;let n=new B({appId:this._clientId,locale:this._locale,popup:!1,portalUrl:this._portalUrl,preserveUrlHash:!0});try{_.registerOAuthInfos([n])}catch(o){console.log(o)}this._portal=new H({url:this._portalUrl})}get Credential(){return this._credential}get IsEnterprisePortal(){return this._isEnterprise}get IsSignedIn(){return!!this._credential}get Portal(){return this._portal}get PortalSubset(){return this._portalSubset}get PortalUrl(){return this._portalUrl}get PortalUserOrg(){return this._portalSubset&&this._portalSubset.id}get PortalUserName(){return this._portalUserSubset&&this._portalUserSubset.username||""}get PortalUserSubset(){return this._portalUserSubset}get PortalUserPrivileges(){let t=[];return this._portalUserSubset?.privileges&&(t=this._portalUserSubset.privileges),t}get PortalUserEnrichedPrivileges(){return this._portalUserEnrichedPrivileges??this.PortalUserPrivileges}get SignInParam(){return this._signInParam}get CanDeleteSolution(){return this.PortalUserPrivileges.includes("portal:admin:deleteItems")}get CanUpdateSolution(){return this.PortalUserPrivileges.includes("portal:admin:updateItems")}get CanUseAI(){let t=this._portalSubset?.orgSettings,e=this.PortalUserPrivileges.includes("portal:user:useAIAssistants");return t?.aiAssistantsEnabled?t.aiAssistantsEnabled&&!t.blockBetaApps&&e:!1}get CanViewOrg(){return this.PortalUserPrivileges.includes("portal:admin:viewItems")}get CanSearchArcGISOnline(){return this._searchArcGISOnlineEnabled&&this._arcGISOnlineReachable}async checkArcGISOnlineReachability(t){if(this._isEnterprise&&this._searchArcGISOnlineEnabled&&t){let e=`${G(this._portalUrl)}/sharing/rest`,i=new m({});try{await T({q:`group:${t} type:Solution`,num:1,start:1,authentication:i,portal:e}),this._arcGISOnlineReachable=!0}catch(s){this._arcGISOnlineReachable=!1,console.warn("ArcGIS Online solutions group not reachable:",s)}}}get RestUserSession(){let t=_.findServerInfo(this._portalRestUrl),e=this._credential?m.fromCredential(this._credential,t):this._isEnterprise?new m({}):new m({portal:this._portalRestUrl});return e.portal=this.PortalSubset?.restUrl?this.PortalSubset?.restUrl:e.portal,e.clientId=this._credential?._oAuthCred?.appId,e._refreshToken=this._credential?._oAuthCred?.refreshToken,e}async initialize(t=!1,e){try{await this._init(t,e)}catch{this.destroy()}return this}destroy(){this._credential=void 0,this._portalSubset=void 0,this._portalUserSubset=void 0,_.destroyCredentials()}async signIn(t=""){_.setOAuthRedirectionHandler(e=>{let i=e.authorizeParams.redirect_uri;if(t.length>0){let s=i.split("?"),n=s[0],o="",l=new URLSearchParams(s[1]||"");l.append("signInParam",t),o="?"+l.toString(),e.authorizeParams.redirect_uri=n+o}window.location.href=e.authorizeUrl+"?"+this._objectToQuery(e.authorizeParams)}),await _.getCredential((this._portalSubset?.portalUrl??this._portalUrl)+"/sharing").then(e=>{e&&window.location.reload()})}signOut(){let t=window.location.href,e=/[\/]\b([0-9A-Fa-f]){32}\b/g,i=t.match(e)?t.replace(e,""):t;i=z(i,"sortField","suggested");let s=`${this._portal?.restUrl??this._portalUrl+"/sharing/rest"}/oauth2/signout?client_id=${this._clientId}&redirect_uri=${encodeURIComponent(i)}`;this.destroy(),window.location.replace(s)}refreshSession(){let t=this.RestUserSession;if(!(!t||!this.IsSignedIn))return t.exchangeRefreshToken()}_getOrgUrl(t,e,i){return e&&i?window.location.protocol+"//"+e.toLowerCase()+"."+i:t}async _init(t=!1,e){try{this._credential=await _.checkSignInStatus(this._portalUrl+"/sharing")}catch(s){console.log(s)}try{let s=await _.checkAppAccess(this._portalUrl+"/sharing",this._clientId);(typeof s.valid<"u"&&!s.valid||s.viewOnlyUserTypeApp)&&window.location.replace(`error.html?error=blocked&locale=${this._locale}`),this._credential=s.credential}catch(s){s.name}this._searchArcGISOnlineEnabled=await this._checkSearchArcGISOnlineEnabled(t,this._portal.restUrl),this._portal.authMode=t?"immediate":"auto",await this._portal.load();let i=this._credential?await E(this.RestUserSession):{};if(this._isEnterprise=this._portal.isPortal,await this.checkArcGISOnlineReachability(e),this._portalSubset={name:this._portal.name??"",id:this._portal.id??"",restUrl:this._portal.restUrl??"",portalUrl:this._portal.url??"",urlKey:this._portal.urlKey??"",hostName:this._portal.portalHostname??"",orgUrl:this._getOrgUrl(this._portal.url,this._portal.urlKey??"",this._portal.customBaseUrl??""),locationTrackingEnabled:this._portal.helperServices.hasOwnProperty("locationTracking"),hubPremiumEnabled:this._portal.portalProperties?.hub?.enabled||!1,workflowURL:this._portal.helperServices?.workflowManager?.url??this._portal.url,isReadOnly:this._portal.isReadOnly,orgSettings:i},this._portalUserSubset={fullName:this._portal.user?.fullName??"",username:this._portal.user?.username??"",culture:this._portal.user?.culture?.toLowerCase()||"en",thumbnailUrl:this._portal.user?.thumbnailUrl||this._portal.url+"/home/js/arcgisonline/css/images/no-user-thumb.jpg",orgId:this._portal.user?.orgId??"",privileges:this._portal.user.privileges,role:this._portal.user?.role??"",roleId:this._portal.user?.roleId??void 0},this._isEnterprise&&this._portalSubset&&(this._portalSubset.workflowURL=await P(this._portal.restUrl,this.RestUserSession||new m({}))),this._portal?.user?.roleId&&this._portalUserSubset&&(this._portalUserSubset.roleId=this._portal.user.roleId),this._credential&&this._portalUserSubset)try{this._portalUserEnrichedPrivileges=await K(this,this.RestUserSession,[...this._portalUserSubset.privileges])}catch(s){console.warn("Failed to enrich user privileges during sign-in:",s),this._portalUserEnrichedPrivileges=[...this._portalUserSubset.privileges]}return this}async _checkSearchArcGISOnlineEnabled(t,e){if(t)try{let i=`${e}/portals/self/settings`,s=await v(i,{authentication:this._credential?this.RestUserSession:void 0});return s?.portalConfigProperties?.searchArcGISOnlineEnabled!==void 0?s.portalConfigProperties.searchArcGISOnlineEnabled:!1}catch(i){return console.warn("Failed to fetch portal settings:",i),!1}else return!0}_isSerializable(t){return t&&typeof t=="object"&&"toJSON"in t&&typeof t.toJSON=="function"}_objectToQuery(t,e){return t?e&&typeof e=="function"?Object.keys(t).map(i=>encodeURIComponent(i)+"="+encodeURIComponent(e(i,t[i]))).join("&"):Object.keys(t).map(i=>{let s=t[i];if(s==null)return"";let n=encodeURIComponent(i)+"=",o=e&&e[i];return o?n+encodeURIComponent(o(s)):Array.isArray(s)?s.map(l=>this._isSerializable(l)?n+encodeURIComponent(JSON.stringify(l)):n+encodeURIComponent(l)).join("&"):this._isSerializable(s)?n+encodeURIComponent(JSON.stringify(s)):n+encodeURIComponent(s)}).filter(i=>i).join("&"):""}};var Z=C`.esri-global-nav__title{margin-block-start:0;position:relative;margin-bottom:0;font-size:var(--calcite-font-size-xl);font-weight:var(--calcite-font-weight-medium);padding-inline-end:var(--calcite-spacing-xxl);align-self:center;height:100%;display:flex;align-items:center}.esri-global-nav__logo-link{color:var(--calcite-color-text-1);text-decoration:unset;margin-block-start:0px;position:relative;margin-bottom:0;align-self:center;height:100%;display:flex;align-items:center}.esri-global-nav__logo-link:focus{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.cursor-pointer{cursor:pointer}.side{border-right:solid 1px;color:var(--calcite-color-text-1);height:34px;align-self:center}.display-flex{display:flex}.align-self-center{align-self:center}.padding-top-1{padding-top:var(--calcite-spacing-lg)}.padding-end-1{padding-inline-end:var(--calcite-spacing-lg)}.padding-start-1{padding-inline-start:var(--calcite-spacing-lg)}.padding-bottom-1{padding-bottom:var(--calcite-spacing-lg)}.margin-start-end-1{margin-inline-start:var(--calcite-spacing-lg);margin-inline-end:var(--calcite-spacing-lg)}.margin-start-end-1-5{margin-inline-start:var(--calcite-spacing-xxl);margin-inline-end:var(--calcite-spacing-xxl)}.height-full{height:100%}.user-label{--calcite-label-margin-bottom: 0px}.font-bold{font-weight:var(--calcite-font-weight-bold)}.font-normal{font-weight:var(--calcite-font-weight-normal)}.logo-padding{padding-inline-start:var(--calcite-spacing-none);height:100%}@media(max-width:800px){.logo-padding{padding-inline-start:var(--calcite-spacing-lg)}}.signin-padding{padding-inline-end:var(--calcite-spacing-none)}@media(max-width:800px){.signin-padding{padding-inline-end:var(--calcite-spacing-lg)}}calcite-action{--calcite-font-size-0: var(--calcite-font-size--1);--calcite-internal-action-padding-inline: var(--calcite-spacing-lg)}calcite-navigation{--calcite-color-border-3: transparent}.border-bottom{border-bottom-color:var(--calcite-color-border-1);border-bottom-width:var(--calcite-spacing-px);border-bottom-style:solid}.border{height:var(--calcite-spacing-px);border-bottom-color:var(--calcite-color-border-2);border-bottom-style:solid;border-bottom-width:var(--calcite-border-width-sm);box-sizing:border-box;position:absolute;top:65px;left:0;width:100%;z-index:1}.height-66{height:66px}.sub-nav-constrained{width:calc(100% - var(--assistant-panel-width, 420px));overflow:hidden}`,I={name:"arcgis-solutions-app",version:"2.1",dev:{amazon:{userPoolID:"us-east-1:7345bcf2-bffa-4849-a379-a83178f63eef",app:{id:"7e2fd97553644e5f99b1129fbcee3c2e"}}},qa:{amazon:{userPoolID:"us-east-1:7345bcf2-bffa-4849-a379-a83178f63eef",app:{id:"a3beba911bd14847ada5c9ffed2a2111"}}},prod:{amazon:{userPoolID:"us-east-1:8c41b2dc-7563-403d-ba64-673b103debce",app:{id:"35a920e0e7f84680be076e57dd5cb728"}}}},F="solutions-deployment-first-use",f=class a{constructor(){this._telemetryInstance=void 0,this._logTelemetryEvents=!1}getInstance(){return this._telemetryInstance}isEnabled(){return this._logTelemetryEvents}setInstance(t){this._telemetryInstance=t}setEnabled(t){this._logTelemetryEvents=t}_mapDimensions(t){let e={};return t&&t.slice(0,20).forEach((i,s)=>{let n=`dimension${s+1}`;e[n]=i}),e}_mapMetrics(t){let e={};return t&&t.slice(0,20).forEach((i,s)=>{let n=`metric${s+1}`;e[n]=i}),e}logEvent(t){if(this._logTelemetryEvents&&this._telemetryInstance){let{category:e,action:i,dimensions:s,metrics:n,label:o="",details:l=""}=t,D=this._mapDimensions(s),V=this._mapMetrics(n);this._telemetryInstance.logEvent({category:e,action:i,label:o,details:l,...D,...V})}}getTelemetrySession(){return{instance:this._telemetryInstance,logEvent:t=>this.logEvent(t),enabled:this._logTelemetryEvents}}static getDisabledSession(){return{instance:void 0,logEvent:()=>{},enabled:!1}}async initializeTelemetry(t,e){if(!a.shouldEnableTelemetry(t,e))return this.getTelemetrySession();let i=document.querySelector("consent-manager");if(!i){if(!customElements.get("consent-manager"))return this.getTelemetrySession();i=document.createElement("consent-manager"),i.portal=t.Portal,i.measurementIds=e.measurementIds||[],i.firstUseVar=F;let s=a.getEnvironmentConfig(e,t);s&&(i.amazonUserPoolID=s?.amazon?.userPoolID,i.amazonAppId=s?.amazon?.app?.id,i.amazonAppName=I.name,i.amazonVersion=I.version);let n=t.Portal?.eueiEnabled;(localStorage.getItem(i.firstUseVar)==="true"||n)&&(this.setEnabled(!0),i.classList.add("display-none")),document.body.appendChild(i),n?(await new Promise(o=>setTimeout(o,100)),await this._setInstanceFromConsentManager(i)):window.addEventListener("consentGranted",o=>{o.detail?.granted&&(this.setEnabled(!0),this._setInstanceFromConsentManager(i))})}return this.getTelemetrySession()}async _setInstanceFromConsentManager(t){try{let e=new Promise((s,n)=>setTimeout(()=>n(new Error("Timeout waiting for consent-manager instance")),1e4)),i=await Promise.race([t.getInstance(),e]);this.setInstance(i)}catch{}}static shouldEnableTelemetry(t,e){let i=t?.IsEnterprisePortal;return t?.Portal?.eueiEnabled===!1||i?!1:!!((e.measurementIds||I)&&F)}static getEnvironmentConfig(t,e){let i=t.forceTrackingEnv||N(document.location.hostname,e?.Portal?.portalHostname||"");return i&&Object.keys(I).includes(i)?I[i]:void 0}},S=class extends M{constructor(){super(),this.assistantOpen=!1,this._isMobile=!1,this._logoFill="",this._thumbnailUrl="",this._translations=R({name:"solutions-deploy-app-nav",blocking:!0}),this._activeTab="all-solutions",this._authentication=void 0,this._cardType="details",this._dropdownRef=c(),this._dropdownItemAll=c(),this._dropdownItemMy=c(),this._dropdownItemMyContent=c(),this._dropdownItemResources=c(),this._handleMobileChange=t=>{this._isMobile=t.matches},this._menuRef=c(),this._menuItemAll=c(),this._menuItemMy=c(),this._menuItemResources=c(),this.authInit=g(),this.navTabSelected=g(),this.tabChanged=g(),this.tokenRefreshed=g(),this.listenOn(window,"deployedCardSelected",this._deployedCardSelected),this.listenOn(window,"detailsCardSelected",this._detailsCardSelected),this.listenOn(window,"deployAppTabSelected",this._deployAppTabSelected),this.listenOn(window,"popstate",this._handleUrlChange),this.listenOn(window,"sessionRefreshed",t=>{this._updateThumbnailToken(t.detail)}),this._mobileMediaQuery=window.matchMedia("(max-width: 800px)"),this._isMobile=this._mobileMediaQuery.matches,this._mobileMediaQuery.addEventListener("change",this._handleMobileChange)}static{this.properties={appConfig:1,assistantOpen:5,initTab:1,_subNavigationCard:16,_isMobile:16,_logoFill:16,_thumbnailUrl:16,_translations:16}}static{this.styles=Z}get _telemetry(){return this._config?.telemetrySession}clearMenuItems(){this._isMobile?(this._dropdownItemAll.value.selected=!1,this._authentication?.IsSignedIn&&(this._dropdownItemMy.value.selected=!1),this._dropdownItemResources.value.selected=!1):(this._menuItemAll.value.active=!1,this._authentication?.IsSignedIn&&(this._menuItemMy.value.active=!1),this._menuItemResources.value.active=!1)}activateMenuItem(t,e=!1){let i,s;switch(t){case"all-solutions":i=this._isMobile?this._dropdownItemAll:this._menuItemAll,s=this._isMobile?[this._dropdownItemMy,this._dropdownItemResources]:[this._menuItemMy,this._menuItemResources];break;case"deployments":i=this._isMobile?this._dropdownItemMy:this._menuItemMy,s=this._isMobile?[this._dropdownItemAll,this._dropdownItemResources]:[this._menuItemAll,this._menuItemResources];break;case"resources":i=this._isMobile?this._dropdownItemResources:this._menuItemResources,s=this._isMobile?[this._dropdownItemAll,this._dropdownItemMy]:[this._menuItemAll,this._menuItemMy];break;case"my-content":this._isMobile&&(i=this._dropdownItemMyContent,s=[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemResources]);break}i&&s&&this._handleMenuClick(t,i,s,e)}async connectedCallback(){super.connectedCallback();let t=new m({username:"",password:""});this._userSession=t}async load(){let t=window.matchMedia("(prefers-color-scheme: dark)");t.addEventListener("change",l=>this._logoFill=this._getLogoFill(l.matches)),this._logoFill=this._getLogoFill(t.matches),this._mobileMediaQuery.matches&&(this._isMobile=!0);let e=this.appConfig.locale||"en",i=this.appConfig.authentication?.PortalSubset?.orgUrl||this.appConfig.orgURL||this.appConfig.portalURL,s=this.appConfig.authentication?.PortalUrl||this.appConfig.portalURL,n=this.appConfig.primarySolutionsGroupId,o=!1;this._authentication||(this.appConfig.authentication?this._authentication=this.appConfig.authentication:(this._authentication=new y(this.appConfig.appId,this.appConfig.portalURL,this.appConfig.locale),await this._authentication.initialize(this.appConfig.isEnterprise,this.appConfig.agoBasedEnterpriseSolutionsGroupId),o=!0)),o||await this._authentication?.checkArcGISOnlineReachability(this.appConfig.agoBasedEnterpriseSolutionsGroupId),this._authentication.RestUserSession&&(this._userSession=this._authentication.RestUserSession),this.initTab&&(this._activeTab=this.initTab,this.initTab=void 0),this._config={anonAgolSession:void 0,agolPortalUrl:"",allCards:[],appId:this.appConfig.appId,authentication:this._authentication,agoBasedEnterpriseSolutionsGroupId:this.appConfig.agoBasedEnterpriseSolutionsGroupId,diagramKey:this.appConfig.diagramKey,forceTrackingEnv:this.appConfig.forceTrackingEnv,isEnterprise:this.appConfig.isEnterprise,locale:e,orgUrl:i,portalURL:s,primarySolutionsGroupId:n,userSession:this._userSession,telemetrySession:f.getDisabledSession(),measurementIds:this.appConfig.measurementIds},this.authInit.emit(this._config),this._portal=await this._userSession?.getPortal()}render(){return r`<div><calcite-navigation>${this._getHeading()}${this._isMobile?this._getDropdown():this._getMenu()}${this._isMobile?"":this._getSignInOut()}</calcite-navigation><div class="border" slot=header></div>${!this._isMobile&&r`<div class=${k(this.assistantOpen?"sub-nav-constrained":"")}>${this._getSubHeading()}</div>`||""}</div>`}updated(t){t.has("_isMobile")&&t.get("_isMobile")!==void 0&&this.activateMenuItem(this._activeTab,!1)}disconnectedCallback(){super.disconnectedCallback(),this._mobileMediaQuery.removeEventListener("change",this._handleMobileChange)}_getSignInOut(){return this._authentication?.IsSignedIn?r`<div slot=user>${this._getUserAvatar()}</div>`:r`<calcite-menu label slot=content-end><calcite-menu-item label @click=${this._handleSignIn} @keydown=${t=>u(t,()=>this._handleSignIn(t))} .text=${this._translations.signIn}></calcite-menu-item></calcite-menu>`}_getDropdown(){let t=this._authentication?.IsSignedIn?this._translations.signOut:this._translations.signIn;return r`<calcite-dropdown overlay-positioning=fixed slot=content-end width=m ${h(this._dropdownRef)}><calcite-button appearance=transparent icon-start=hamburger kind=neutral slot=trigger scale=l></calcite-button><calcite-dropdown-group><calcite-dropdown-item @click=${()=>this._handleMenuClick("all-solutions",this._dropdownItemAll,[this._dropdownItemMy,this._dropdownItemResources,this._dropdownItemMyContent],!0)} @keydown=${e=>u(e,()=>this._handleMenuClick("all-solutions",this._dropdownItemAll,[this._dropdownItemMy,this._dropdownItemResources,this._dropdownItemMyContent],!0))} ${h(this._dropdownItemAll)}>${this._translations.allSolutions}</calcite-dropdown-item><calcite-dropdown-item @click=${()=>this._handleMenuClick("deployments",this._dropdownItemMy,[this._dropdownItemAll,this._dropdownItemResources,this._dropdownItemMyContent],!0)} @keydown=${e=>u(e,()=>this._handleMenuClick("deployments",this._dropdownItemMy,[this._dropdownItemAll,this._dropdownItemResources,this._dropdownItemMyContent],!0))} ${h(this._dropdownItemMy)}>${this._translations.myDeployments}</calcite-dropdown-item>${this._authentication?.CanSearchArcGISOnline&&r`<calcite-dropdown-item @click=${()=>this._handleMenuClick("resources",this._dropdownItemResources,[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemMyContent],!0)} @keydown=${e=>u(e,()=>this._handleMenuClick("resources",this._dropdownItemResources,[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemMyContent],!0))} ${h(this._dropdownItemResources)}>${this._translations.solutionResources}</calcite-dropdown-item>`||""}<calcite-dropdown-item @click=${()=>{let e=this._activeTab==="all-solutions"?this._dropdownItemAll:this._activeTab==="deployments"?this._dropdownItemMy:this._activeTab==="resources"?this._dropdownItemResources:void 0;setTimeout(()=>this._handleMenuClick("my-content",e,[this._dropdownItemAll,this._dropdownItemMy,this._dropdownItemResources,this._dropdownItemMyContent],!1),10)}} ${h(this._dropdownItemMyContent)}>${this._translations.myContent}</calcite-dropdown-item><calcite-dropdown-item @click=${e=>{this._authentication?.IsSignedIn?this._signOut():this._handleSignIn(e)}}>${t}</calcite-dropdown-item></calcite-dropdown-group></calcite-dropdown>`}_getMenu(){return r`<calcite-menu label slot=content-start ${h(this._menuRef)}><calcite-menu-item label @click=${()=>this._handleMenuClick("all-solutions",this._menuItemAll,[this._menuItemMy,this._menuItemResources],!0)} @keydown=${t=>u(t,()=>this._handleMenuClick("all-solutions",this._menuItemAll,[this._menuItemMy,this._menuItemResources],!0))} .text=${this._translations.allSolutions} ${h(this._menuItemAll)}></calcite-menu-item><calcite-menu-item label @click=${()=>this._handleMenuClick("deployments",this._menuItemMy,[this._menuItemAll,this._menuItemResources],!0)} @keydown=${t=>u(t,()=>this._handleMenuClick("deployments",this._menuItemMy,[this._menuItemAll,this._menuItemResources],!0))} .text=${this._translations.myDeployments} ${h(this._menuItemMy)}></calcite-menu-item>${this._authentication?.CanSearchArcGISOnline&&r`<calcite-menu-item label @click=${()=>this._handleMenuClick("resources",this._menuItemResources,[this._menuItemAll,this._menuItemMy],!0)} @keydown=${t=>u(t,()=>this._handleMenuClick("resources",this._menuItemResources,[this._menuItemAll,this._menuItemMy],!0))} .text=${this._translations.solutionResources} ${h(this._menuItemResources)}></calcite-menu-item>`||""}</calcite-menu>`}_getHeading(){return r`<div class="align-self-center display-flex cursor-pointer logo-padding" slot=logo><a aria-label=${this._translations.linkToEsriHomePage??p} class="esri-global-nav__logo-link" href=https://www.esri.com @click=${()=>this._logLinkClickTelemetry("Esri")} rel=noopener target=_blank title=${this._translations.linkToEsriHomePage??p}><svg aria-hidden=true height=30 viewBox="0 0 84 30" width=84 xmlns=http://www.w3.org/2000/svg>${U`<path fill=${this._logoFill??p} d="M77.277.5c-1.48 0-2.554 1.175-2.554 2.488 0 1.314 1.074 2.49 2.554 2.49 1.48 0 2.622-1.071 2.622-2.49C79.899 1.572 78.756.5 77.277.5zm-1.913 23.426h3.891V8.353h-3.891v15.573zM40.515 7.965c-4.702 0-8.465 3.275-8.465 8.174 0 4.898 3.763 8.177 8.465 8.177 2.146 0 4.165-.667 5.852-2.31l-2.457-2.457c-.916.964-2.093 1.651-3.78 1.651-2.175 0-3.927-1.397-4.188-3.698h11.875v-1.07c0-5.42-2.95-8.467-7.302-8.467zm-4.573 6.617c.293-2.24 1.721-3.7 4.023-3.7 2.434 0 3.926 1.43 3.96 3.7h-7.983zm17.305-1.849c0-1.169 1.233-1.655 2.273-1.655 1.32 0 2.292.547 3.037 1.577l2.476-2.474c-1.282-1.6-3.407-2.216-5.418-2.216-3.147 0-6.262 1.555-6.262 5.028 0 5.938 8.403 3.406 8.403 6.617 0 1.233-1.46 1.784-2.595 1.784-1.65 0-2.687-.806-3.69-1.905l-2.515 2.514c1.58 1.711 3.62 2.313 5.978 2.313 3.179 0 6.717-1.299 6.717-4.998 0-6.067-8.404-3.795-8.404-6.585zm14.15-1.916h-.062V8.353h-3.892v15.573h3.892v-8.34c0-.842.518-3.925 4.185-3.925.564 0 1.127.112 1.718.253l.152-3.726c-.45-.127-.901-.223-1.382-.223-2.046 0-3.766 1.07-4.61 2.852zM14.683 2.766c-1.217-.037-1.932.12-2.651.26-.216-.056-.62.003-.643.472 0 .252.08.447.24.562.159.114 1.493 1.1 2.473 2.142-.47.052-.98.138-1.504.246-.585-1.264-2.465-.114-3.714-.064-.146.006-.286.025-.431.035-.137-1.056-.235-2.15-.21-2.92 1.618-.917 4.748-1.593 6.874-1.626l.373-.01c.312-.003.337-.251.043-.291-2.641-.361-4.929.173-7.279 1.145C5.808 3.748 2.696 6.12.8 10.596c-.444 1.247-2.219 7.195.935 12.3 2.56 4.142 5.855 6.113 9.887 6.676 4.024.561 6.207.075 8.752-1.055 5.951-2.642 10.496-12.559 5.95-19.747-1.794-3.319-6.495-6.229-11.641-6.004zm-2.259 4.647a17.754 17.754 0 0 1 2.362-.368 15.741 15.741 0 0 1 1.748 2.54c-.805.39-1.878.688-2.315 1.312-.181.26-.226.613-.232.995a23.59 23.59 0 0 0-3.877 1.286c-.453-1.332-.85-2.66-1.124-3.842 1.296-1.237 2.813-1.438 3.438-1.923zm6.61 15.88c-.354.038-.706.083-1.016.13-.77.121-1.762.379-2.685.723-.53-.843-1.95-2.891-2.667-4.437 1.442-.709 3.457-1.303 5.775-1.444.19.33.4.66.69.956.757.774-.44 1.883-.096 4.072zm-8.603-9.14c1.12-.53 2.3-.968 3.56-1.286-.008.333-.045.649-.182.903-.196.366-.106 1.428.134 1.775.755 1.099 2.008.488 2.951.883.433.181.721.482.964.84-1.974.124-3.91.584-5.706 1.41-.923-1.96-1.72-4.524-1.72-4.524zm.832 4.938c-.07.033-.145.074-.217.11a40.803 40.803 0 0 0-3.256-.78c-.995-.204-1.031-.15-2.151.175-.16.046-.313.088-.462.133a36.17 36.17 0 0 1-.445-1.202c1.436-1.106 2.884-2.034 4.821-2.985.5 1.491 1.215 3.483 1.71 4.549zm.768 4.528c.293-.765.521-1.331.605-1.89.569.958 1.248 2 1.774 2.815-.819.397-1.772 1.01-2.672 1.685.062-1.037.083-2.064.293-2.61zm5.334-14.636c-.01.014-.028.026-.04.04a23.057 23.057 0 0 0-1.376-2.111c1.007-.061 2.246-.008 3.374.108-1.014.363-1.461 1.254-1.958 1.963zm-9.028 1.094c.019-.026.039-.047.057-.072.234 1.182.513 2.16.886 3.518-1.402.618-3.881 2.148-4.976 2.972-.198-.502-.404-1.214-.589-1.946.249-.737.758-1.254 1.476-1.325 1.228-.123 2.28-1.95 3.146-3.147zm-5.41-1.784C4.24 6.455 6.023 4.666 7.65 3.773c-.016.4.086 1.567.218 2.693-.57.057-1.134.128-1.692.211a12.084 12.084 0 0 0-3.115 4.088c-.117-1.054-.178-1.933-.133-2.472zM2.07 9.731s.062 1.06.113 1.833c0 0-.781.886-1.18 1.59.159-1.443.498-2.187 1.067-3.423zm7.664 18.356C5.688 26.82 2.69 23.41 1.62 19.834a17.475 17.475 0 0 1-.651-6.473c.056.01.186.072.38.017.135-.093.616-.43.957-.728l.018.131c-.23.87-.371 1.775-.4 2.71.37.39.804 1.038 1.286 1.707-.31.23-.905.641-1.045.741-.41.292-.406.753-.114 1.015.161.144.492.084.613-.01.358-.285.656-.513 1.066-.77.15.393.292.748.43 1.086-.175.188-.3.436-.342.798-.135 1.172.979 2.092 1.918 2.36.035.01.06.014.094.023.05.076.095.147.148.224-.487.378-.82.765-1.049 1.063-.132.172-.28.43-.16.481.123.05.535 0 .719-.034.466-.09.826-.606 1.148-.796.387.534 1.017 1.22 1.672 1.88.029.12.055.246.088.351.125.403.293.804.495 1.196.471.22.962.402 1.464.561a8.344 8.344 0 0 0-.622.72zm.989.313c.155-.203.312-.454.505-.626.468.31.969.665 1.368.894-.615-.07-1.337-.085-1.873-.268zm3.113.31s-1.604-1.062-2.009-1.471c.803-.667 2.102-1.459 3.128-1.889.402.63 1.727 2.507 2.258 3.112-.963.168-2.31.294-3.377.248zM20.54 27.2c-.286.189-1.664.814-2.204.988a23.43 23.43 0 0 1-2.44-3.202c.844-.354 2.143-.67 3.346-.82.109.342.25.704.444 1.094.19.382.411.662.649.853.085-.053.164-.115.248-.17-.006.42-.018.846-.043 1.257zm-.33-21.477c-.27-.172-.607-.108-.467.193.053.117.259.314.427.512-.986-.272-3.608-.479-4.856-.364-.815-.916-1.744-2.028-2.861-2.765 4.999-.311 9.49 1.756 11.473 4.186-.661-.344-2.087-.834-2.667-.963-.313-.319-.708-.58-1.05-.8zm1.094 21.065c.023-.407.04-.922.053-1.396.487-.378.946-.79 1.37-1.238.547.063 1.094.156 1.427.24-.74.936-1.762 1.716-2.85 2.394zm3.825-3.724c-.12.253-.428.688-.633.894-.312-.126-.781-.258-1.272-.375.078-.094.163-.182.24-.279.268-1.796-.338-2.37.42-4.014l.172-.371c.418.118.812.247 1.153.386.043.616.04 2.728-.08 3.759zm-.708-4.917c.196-.407.412-.84.645-1.27.061.547.105 1.08.131 1.563a9.256 9.256 0 0 0-.776-.293zm2.218 1.126l-.194.756c-.137.515-.593 1.732-.832 2.223.091-.663.171-2.384.148-2.73.16.049.502-.147.559-.341.057-.195-.564-.495-.564-.495a20.742 20.742 0 0 0-.172-2.7c.142-.23.286-.452.434-.655a12.082 12.082 0 0 0-.186-1.575c.125.041.24.074.323.075.283.004.282-.19.192-.298-.058-.07-.328-.238-.643-.42a12.02 12.02 0 0 0-2.78-5.32c.533.202 1.214.48 1.754.774.41.516 1.585 1.675 2.212 4.92.564 2.922-.06 5.143-.251 5.786zM80.886 8.597v-.24h1.218v.24h-.468v1.191h-.283V8.597h-.467zm1.87-.24l.365 1.025.368-1.024h.406v1.43h-.262V8.634l-.396 1.154h-.229l-.4-1.154v1.154h-.261v-1.43h.409z" />`}</svg></a><div class="side margin-start-end-1-5" slot=logo></div><div class="esri-global-nav__title"><a aria-label=${this._translations.linkToArcGISSolutionsHomePage??p} class="esri-global-nav__logo-link" href=https://www.esri.com/en-us/arcgis/products/arcgis-solutions/overview @click=${()=>this._logLinkClickTelemetry("ArcGIS Solutions")} rel=noopener target=_blank title=${this._translations.linkToArcGISSolutionsHomePage??p}>${this._translations.arcgisSolutions}</a></div></div>`}_getSubHeading(){let t=this._cardType==="deployed"?this._translations.myDeployments:this._translations.allSolutions;return this._subNavigationCard?r`<calcite-navigation class="height-66" slot=navigation-secondary><calcite-menu class="height-66" label slot=content-start><calcite-menu-item breadcrumb .label=${t} @click=${this._navigateFromSubMenu} @keydown=${e=>u(e,()=>this._navigateFromSubMenu())} .text=${t} text-enabled></calcite-menu-item><calcite-menu-item label active .text=${this._subNavigationCard?.title} text-enabled></calcite-menu-item></calcite-menu></calcite-navigation>`:""}_getLogoFill(t){return t?"#FFFFFF":"#141414"}_handleMenuClick(t,e,i,s){i.forEach(n=>{n.value&&(this._isMobile?n.value.selected=!1:n.value.active=!1)}),e?.value&&(this._isMobile?e.value.selected=!0:e.value.active=!0),t!=="my-content"?this._activeTab=t:this._viewMyContent(),s&&this._logNavClickTelemetry(t),s&&this.navTabSelected.emit({tabType:t})}_logNavClickTelemetry(t){let e={"all-solutions":"Solutions",deployments:"Deployments","my-content":"My Content",resources:"Resources",details:void 0,"deployed-card":void 0}[t];e&&this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:[e]})}_logLinkClickTelemetry(t){this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:[t]})}_getUserAvatar(){let t=this._portal.user,e=this._authentication?.PortalUserSubset,i=t?.id??t?.sourceJSON?.id;return this._thumbnailUrl===""&&(this._thumbnailUrl=t?.thumbnailUrl??e?.thumbnailUrl??""),r`<div class="height-full display-flex cursor-pointer signin-padding"><calcite-navigation-user class="height-full" full-name=${t?.fullName??p} id=instant-apps-sign-in-user-button slot=user .thumbnail=${this._thumbnailUrl} .userId=${i} .username=${t?.username}></calcite-navigation-user></div><calcite-popover placement=bottom-end scale=s reference-element=instant-apps-sign-in-user-button offset-distance=0 pointer-disabled focus-trap-disabled auto-close .label=${this._translations.userSettings}><calcite-action scale=l @click=${this._viewMyContent} .text=${this._translations.myContent} text-enabled></calcite-action><calcite-action scale=l @click=${this._signOut} .text=${this._translations.signOut} text-enabled></calcite-action></calcite-popover>`}_viewMyContent(){let t=`${this._config?.portalURL}/home/content.html#my`;window.open(t,"_blank")}_signOut(){this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:["Sign out"]}),this._authentication?.signOut()}_handleSignIn(t){t.preventDefault(),this._telemetry?.logEvent({category:b.GLOBAL_NAVIGATION,action:"Navigate",dimensions:["Sign in"]}),this._authentication?.signIn().then(()=>{}).catch(e=>{console.error("Error creating global nav header:",e)})}_deployedCardSelected(t){this._cardType="deployed",this._subNavigationCard=t.detail.card}_detailsCardSelected(t){this._cardType="details",this._subNavigationCard=t.detail}_deployAppTabSelected(){this._subNavigationCard=void 0}_handleUrlChange(){this._subNavigationCard=void 0}_navigateFromSubMenu(){this._cardType==="details"?this._handleMenuClick("all-solutions",this._menuItemAll,[this._menuItemMy,this._menuItemResources],!0):this._cardType==="deployed"&&this._handleMenuClick("deployments",this._menuItemMy,[this._menuItemAll,this._menuItemResources],!0)}_updateThumbnailToken(t){this._thumbnailUrl!==""&&(this._thumbnailUrl=L(this._thumbnailUrl,t))}};A("solutions-deploy-app-nav",S);return{a:f,b:S}},"identity/IdentityManager","identity/OAuthInfo","portal/Portal",a,b)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as C}from"./VLP6VQEG.js";import"./KGXEY5HR.js";import d from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as $}from"./LABCYKSC.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as F}from"./5BJO5ABV.js";import{F as c,G as h,H as I,J as u,h as y,i as l,l as p,q as b,u as L}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([E,P,k,O,{b:v},{a:x,c:m,d:d,e:_,f:f,g:S}])=>{var M=y`@layer{:host{display:block;--calcite-label-margin-bottom: 0px;--solutions-theme-foreground-color: var(--calcite-color-surface-2)}.width-full{width:100%!important}.height-full{height:100%!important}.notice-msg{padding:10px;width:calc(100% - 20px)}.progress-bar{padding:12px}.footer-top-button{padding-bottom:7px}.footer-button{height:35px}.feature-pagination{background-color:var(--calcite-color-surface-2)!important;border-block-end:1px solid var(--calcite-color-border-3);display:flex;justify-content:center;padding:5px 0}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:700}.footer-button-container{width:100%;display:flex;gap:10px}.report-submitted-msg{position:absolute;z-index:1000}.share-node{display:flex}.overflow-auto{overflow:auto}}`,g=class extends I{constructor(){super(),this.center="",this.commentButtonText="",this.commentSubmittedMessage="",this.defaultWebmap="",this.description="",this.enableAnonymousAccess=!1,this.enableAnonymousComments=!1,this.enableComments=!1,this.enableHome=!0,this.enableLogin=!1,this.enableNewReports=!1,this.enableSearch=!0,this.enableSnapping=!1,this.enableZoom=!0,this.isMobile=!1,this.layerExpressions=[],this.layerId="",this.level="",this.loginTitle="",this.mapInfos=[],this.objectId="",this.reportButtonText="",this.reportsHeader="",this.reportSubmittedMessage="",this.showComments=!1,this.showUserImageInCommentsList=!1,this.showFeatureSymbol=!1,this.showMyReportsOnly=!1,this.submitNewReportsMessage="",this.theme="light",this.zoomToScale=15358,this.floorLevel="",this.showFullCommentTitle=!0,this.filterByMapExtent=!1,this.sortOption="newest",this.reportingArea=!1,this.reportingAreaLayer="",this.reportingAreaMessage="",this.enablePhotoLocation=!1,this.enableMessageLocation=!1,this.aiImageExtraction=[],this.aiTextExtraction=[],this._featureCreationFailedErrorMsg="",this._filterActive=!1,this._flowItems=[],this._hasValidLayers=!1,this._reportSubmitted=!1,this._selectedLayerName="",this._showSubmitCancelButton=!1,this._showLoadingIndicator=!1,this._sidePanelCollapsed=!1,this._translations=$({name:"crowdsource-reporter",blocking:!0}),this._updatedProgressBarStatus=25,this._updatedSortOption="newest",this._commentSubmitted=!1,this._addingCommentFailed=!1,this._filterOpen=!1,this._showNextButton=!1,this._submitNextButtonDisabled=!1,this._showFilterIcon=!1,this._createFeature=c(),this._currentFeatureId="",this._editableLayerIds=[],this._featureDetails=c(),this._featureList=c(),this._selectedRelatedFeature=[],this._layerList=c(),this._createRelatedFeature=c(),this._layers=[],this._mapImageryLayersId=[],this._selectedFeature=[],this._selectedFeatureIndex=0,this._selectedLayerId="",this._shareNode=c(),this._urlParamsLoaded=!1,this._validLayers=[],this._nonVisibleValidLayers=[],this._showFullPanel=!1,this._floorExpression="",this._formElements=[],this._prevSelectedLayerId="",this._t9nLayerExpressions=[],this._reportSubmittedAlertNode=c(),this._commentSubmittedAlertNode=c(),this._sortPopoverNode=c(),this.togglePanel=b(),C(window)}static{this.properties={center:1,commentButtonText:1,commentSubmittedMessage:1,defaultWebmap:1,description:1,enableAnonymousAccess:5,enableAnonymousComments:5,enableComments:5,enableHome:5,enableLogin:5,enableNewReports:5,enableSearch:5,enableSnapping:5,enableZoom:5,isMobile:5,layerExpressions:0,layerId:1,level:1,loginTitle:1,mapInfos:0,mapView:0,objectId:1,reportButtonText:1,reportingOptions:0,reportsHeader:1,reportSubmittedMessage:1,searchConfiguration:0,showComments:5,showUserImageInCommentsList:5,showFeatureSymbol:5,showMyReportsOnly:5,submitNewReportsMessage:1,theme:1,zoomToScale:9,floorLevel:1,showFullCommentTitle:5,filterByMapExtent:5,sortOption:1,reportingArea:5,reportingAreaLayer:1,reportingAreaMessage:1,enablePhotoLocation:5,enableMessageLocation:5,aiImageExtraction:0,aiTextExtraction:0,sortFields:0,_featureCreationFailedErrorMsg:16,_filterActive:16,_flowItems:16,_hasValidLayers:16,_mapInfo:16,_reportSubmitted:16,_selectedLayerName:16,_showSubmitCancelButton:16,_showLoadingIndicator:16,_sidePanelCollapsed:16,_translations:16,_updatedProgressBarStatus:16,_updatedSorting:16,_updatedSortOption:16,_commentSubmitted:16,_addingCommentFailed:16,_filterOpen:16,_showNextButton:16,_submitNextButtonDisabled:16,_showFilterIcon:16}}static{this.styles=M}static{this.shadowRootOptions=L}willUpdate(e){e.has("isMobile")&&this.isMobileWatchHandler(this.isMobile),e.has("mapView")&&this.hasUpdated&&this.mapViewWatchHandler(),e.has("floorLevel")&&this.floorLevelWatchHandler(),e.has("reportingOptions")&&this.hasUpdated&&this.reportingOptionsWatchHandler(),(e.has("reportingAreaLayer")||e.has("reportingArea")&&this.hasUpdated)&&setTimeout(()=>{this._createFeature.value&&this._createFeature.value.refresh(this.floorLevel)},50),e.has("showMyReportsOnly")&&(this.hasUpdated||this.showMyReportsOnly!==!1)&&this.showMyReportsOnlyWatchHandler(),e.has("sortOption")&&(this.hasUpdated||this.sortOption!=="newest")&&this.sortOptionWatchHandler(),e.has("filterByMapExtent")&&(this.hasUpdated||this.filterByMapExtent!==!1)&&this.filterByMapExtentChangeWatchHandler(),e.has("layerExpressions")&&(this.hasUpdated||this.layerExpressions?.length>0)&&this.layerExpressionsWatchHandler(),e.has("showFeatureSymbol")&&(this.hasUpdated||this.showFeatureSymbol!==!1)&&this.showFeatureSymbolWatchHandler(),(this._flowItems.includes("filter-panel")||this._filterOpen)&&this._filterList?.updateInitDefExpressions({initDefExpressions:this._initDefExpressions}),e.has("sortFields")&&this.hasUpdated&&this._selectedLayerId&&(this._updatedSortOption==="alphabetical"||this._updatedSortOption==="reverseAlphabetical")&&this.sortFieldsWatchHandler()}async isMobileWatchHandler(e){this.updatePanelState(!1,this._showFullPanel),e&&this._flowItems[this._flowItems.length-1]==="filter-panel"?(await this.backFromFilterPanel(),this._filterOpen=!0):!e&&this._filterOpen&&(await this._closeFilter(),this._flowItems=[...this._flowItems,"filter-panel"])}async mapViewWatchHandler(){await this.mapView?.when(async()=>{this.setInitExpressions(),await this.setMapView()})}async reportingOptionsWatchHandler(){this.setInitExpressions(),await this.setMapView(),this.refreshLists()}async floorLevelWatchHandler(){if(this._editableLayerIds)for(let e of this._editableLayerIds){let t=this.mapView&&await d(this.mapView,e);t&&t.floorInfo?.floorField&&this._updateFloorDefinitionExpression(t)}this._flowItems[this._flowItems.length-1]==="layer-list"&&this._layerList.value&&await this._layerList.value.refresh(),this._featureList.value&&this._featureList.value.refresh(),this._createFeature.value&&this._createFeature.value.refresh(this.floorLevel)}async showMyReportsOnlyWatchHandler(){this._editableLayerIds&&(await this._updateFeatures(),this.refreshLists())}async sortOptionWatchHandler(){this.updateSortingOptions()}sortFieldsWatchHandler(){let e=this._getConfiguredLayerSortInfo(this._selectedLayerId);if(e?.id===this._selectedLayerId&&this._flowItems[this._flowItems.length-1]==="feature-list"){if(e?.fields.length>0){let t=this._updatedSorting?.order==="asc"?"asc":"desc";this.sortOptionClick(e.fields[0],t,this._updatedSortOption)}}else this._flowItems[this._flowItems.length-1]==="feature-list"&&this.updateSortingOptions()}filterByMapExtentChangeWatchHandler(){this.refreshLists()}async layerExpressionsWatchHandler(){await this.resetFilterList(),await this.handleSelectedLayersFilter(),await this._featureList.value?.refresh()}async showFeatureSymbolWatchHandler(){await this._featureList.value?.refresh()}async updateLayerExpressionsT9n(e){if(this._t9nLayerExpressions=e||this.layerExpressions,this._filterList!=null)await this._filterList.handleUpdatingT9nData(this._t9nLayerExpressions);else if(this._currentLayerExpressions!=null){let t=structuredClone(this._currentLayerExpressions);this.handleLayerExpressionsT9n(t,this._t9nLayerExpressions),this._currentLayerExpressions=t,this._showFilterIcon=this._currentLayerExpressions?.length>0}return Promise.resolve()}async load(){this._urlParamsLoaded=!1,await this.mapView?.when(async()=>{this._layers=this.reportingOptions?Object.keys(this.reportingOptions).filter(e=>{let t=e&&this.reportingOptions&&this.reportingOptions[e];return t&&t.visible}):[],this.setInitExpressions(),await this.setMapView()})}render(){let e=this.theme==="dark"?"calcite-mode-dark":"calcite-mode-light";return l`${this._reportSubmitted&&l`<calcite-alert auto-close class=${`${e} report-submitted-msg`} icon=check-circle kind=success .label=${this._translations.notification} @calciteAlertClose=${()=>{this._reportSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.reportSubmittedMessage||this._translations.submitMsg)??""} ${h(this._reportSubmittedAlertNode)}></div></calcite-alert>`||""}${this._featureCreationFailedErrorMsg&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger .label=${this._translations.notification} @calciteAlertClose=${()=>{this._featureCreationFailedErrorMsg=""}} open placement=top><div slot=title>${this._translations.error}</div><div slot=message>${this._featureCreationFailedErrorMsg}</div></calcite-alert>`||""}${this._commentSubmitted&&l`<calcite-alert auto-close class=${`report-submitted ${e}`} icon=check-circle kind=success .label=${this._translations.notification} @calciteAlertClose=${()=>{this._commentSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.commentSubmittedMessage||this._translations.commentSubmittedMsg)??""} ${h(this._commentSubmittedAlertNode)}></div></calcite-alert>`||""}${this._addingCommentFailed&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger .label=${this._translations.notification} @calciteAlertClose=${()=>{this._addingCommentFailed=!1}} open placement=top><div slot=title>${this._translations.error}</div><div slot=message>${this._translations.addingCommentFailedMsg}</div></calcite-alert>`||""}<div><calcite-shell content-behind>${this._getReporter()}</calcite-shell></div>${this.isMobile&&this.filterModal()||""}`}updated(){this._adjustAlertStyles()}async setSelectedLayer(e,t){this._selectedLayerId=e,this._selectedLayer=this.mapView&&await d(this.mapView,e),this._selectedLayerName=t,this._validLayers.forEach(i=>{this._nonVisibleValidLayers.find(s=>s.id===i.id)||i.set("visible",!e||i.id===e)})}_getLayersConfig(e){return this.reportingOptions&&this.reportingOptions[e]?this.reportingOptions[e]:null}_getReporter(){let e=[];this._flowItems.forEach(i=>{switch(i){case"layer-list":e.push(this.getLayerListFlowItem());break;case"feature-list":e.push(this.getFeatureListFlowItem(this._selectedLayerId,this._selectedLayerName));break;case"filter-panel":e.push(this.getFilterPanel());break;case"feature-details":e.push(this.getFeatureDetailsFlowItem());break;case"reporting-layer-list":e.push(this.getChooseCategoryFlowItem());break;case"feature-create":e.push(this.getFeatureCreateFlowItem());break;case"comment-details":e.push(this.getCommentDetailsFlowItem());break;case"add-comment":e.push(this.getAddCommentFlowItem());break}});let t=this.theme==="dark"?"calcite-mode-dark":"calcite-mode-light";return l`<calcite-panel class=${`width-full ${t}`}>${this.mapView?l`<calcite-flow>${e?.length>0&&e||""}</calcite-flow>`:l`<calcite-loader .label=${this._translations.loading} scale=m></calcite-loader>`}</calcite-panel>`}filterModal(){return(this.layerExpressions?this.layerExpressions.filter(e=>e.id===this._selectedLayerId):[]).length>0&&l`<calcite-dialog aria-labelledby=modal-title class="modal" .heading=${this._translations.filterLayerTitle.replace("{{title}}",this._selectedLayerName)} kind=brand @calciteDialogClose=${()=>{this._closeFilter()}} .open=${this._filterOpen} width=s><div>${this.mapView&&l`<instant-apps-filter-list close-btn .closeBtnOnClick=${()=>{this._closeFilter()}} combobox-overlay-positioning=fixed .layerExpressions=${this._currentLayerExpressions} @filterListReset=${()=>{this._filterActive=!1,this._featureList.value&&this._featureList.value.refresh()}} @filterUpdate=${()=>{this._filterList?.filterCount!==void 0&&this._handleFilterUpdate(this._filterList?.filterCount>0)}} .view=${this.mapView} ${h(this._setFilterList)}></instant-apps-filter-list>`||""}</div></calcite-dialog>`||""}_setFilterList(e){this._filterList=e,e&&(e.autoUpdateUrl=!1,e.resetBtn=this.isMobile,e.resetFiltersOnDisconnect=!1,e.zoomBtn=!1)}_adjustAlertStyles(){this.reportSubmittedMessage&&this._reportSubmittedAlertNode.value?.children[0]&&(this._reportSubmittedAlertNode.value.children[0].style.margin="0px"),this.commentSubmittedMessage&&this._commentSubmittedAlertNode.value?.children[0]&&(this._commentSubmittedAlertNode.value.children[0].style.margin="0px")}_toggleFilter(){this._filterOpen=!this._filterOpen}async _closeFilter(){this._filterOpen=!1,this._filterList!=null&&(this._currentLayerExpressions=await this._filterList.getCurrentLayerExpressions(),this._showFilterIcon=this._currentLayerExpressions?.length>0)}async sortOptionClick(e,t,i){this._updatedSorting={field:e,order:t},this._updatedSortOption=i,this._sortPopoverNode.value&&(this._sortPopoverNode.value.open=!1)}_getConfiguredLayerSortInfo(e){return this.sortFields&&this.sortFields.layers.find(t=>t.id===e)||null}_toggleSort(){let e=this.reportingOptions&&this.reportingOptions[this._selectedLayerId]&&this.reportingOptions[this._selectedLayerId].like&&this.reportingOptions[this._selectedLayerId].likeField,t=this._getConfiguredLayerSortInfo(this._selectedLayerId);return l`<calcite-popover auto-close .label=${this._translations.sortOptions} offset-distance=0 .placement=${this.isMobile?"leading-start":"bottom-start"} pointer-disabled reference-element=sort-popover ${h(this._sortPopoverNode)}><calcite-list .label=${this._translations.sortOptions} selection-mode=single-persist><calcite-list-item .label=${this._translations.sortNewest} @calciteListItemSelect=${()=>{this._selectedLayer&&this.sortOptionClick(this._selectedLayer.objectIdField,"desc","newest")}} .selected=${this._updatedSortOption==="newest"} value=newest></calcite-list-item><calcite-list-item .label=${this._translations.sortOldest} @calciteListItemSelect=${()=>{this._selectedLayer&&this.sortOptionClick(this._selectedLayer.objectIdField,"asc","oldest")}} .selected=${this._updatedSortOption==="oldest"} value=oldest></calcite-list-item>${e&&l`<calcite-list-item .label=${this._translations.sortHighestVoted} @calciteListItemSelect=${()=>{let i=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;i!==void 0&&this.sortOptionClick(i,"desc","highestVoted")}} .selected=${this._updatedSortOption==="highestVoted"} value=highestVoted></calcite-list-item><calcite-list-item .label=${this._translations.sortLowestVoted} @calciteListItemSelect=${()=>{let i=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;i&&this.sortOptionClick(i,"asc","lowestVoted")}} .selected=${this._updatedSortOption==="lowestVoted"} value=lowestVoted></calcite-list-item>`||""}${t&&l`<calcite-list-item .label=${this._translations.sortAlphabetical} @calciteListItemSelect=${()=>{let i=this._getConfiguredLayerSortInfo(this._selectedLayerId);i?.fields&&this.sortOptionClick(i.fields[0],"asc","alphabetical")}} .selected=${this._updatedSortOption==="alphabetical"} value=alphabetical></calcite-list-item><calcite-list-item .label=${this._translations.reverseSortAlphabetical} @calciteListItemSelect=${()=>{let i=this._getConfiguredLayerSortInfo(this._selectedLayerId);i?.fields&&this.sortOptionClick(i.fields[0],"desc","reverseAlphabetical")}} .selected=${this._updatedSortOption==="reverseAlphabetical"} value=reverseAlphabetical></calcite-list-item>`||""}</calcite-list></calcite-popover>`}async _handleFilterListReset(){this._filterActive=!1}async _handleFilterUpdate(e){this._showLoadingIndicator=!0,this._filterActive=e,this._featureList.value&&await this._featureList.value.refresh(),this._showLoadingIndicator=!1}getLayerListFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this.reportsHeader} .loading=${this._showLoadingIndicator} .selected=${this._flowItems[this._flowItems.length-1]==="layer-list"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}${this._hasValidLayers&&this.enableNewReports&&l`<calcite-button appearance=solid @click=${this.navigateToChooseCategory} slot=footer width=full>${this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText}</calcite-button>`||""}<calcite-panel><layer-list .applyLayerViewFilter=${this.showMyReportsOnly} class="height-full" .filterByMapExtent=${this.filterByMapExtent} .layers=${this._editableLayerIds?.length>0?this._editableLayerIds:this._layers} .mapView=${this.mapView} @layerSelect=${this.displayFeaturesList} @layersListLoaded=${this.layerListLoaded} show-feature-count show-next-icon ${h(this._layerList)}></layer-list></calcite-panel></calcite-flow-item>`}getChooseCategoryFlowItem(){let e=this.reportingOptions?Object.keys(this.reportingOptions).filter(t=>this.reportingOptions&&this.reportingOptions[t].visible&&this.reportingOptions[t].reporting&&this._layerItemsHash&&this._layerItemsHash[t]&&this._layerItemsHash[t].supportsAdd):[];return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="reporting-layer-list"}><calcite-panel><div class="progress-bar"><calcite-progress type=determinate .value=${this._updatedProgressBarStatus}></calcite-progress></div><calcite-notice class="notice-msg" icon=lightbulb kind=success open><div slot=message>${this._translations.chooseCategoryMsg}</div></calcite-notice><layer-list class="height-full" .layers=${e} .mapView=${this.mapView} @layerSelect=${this.navigateToCreateFeature}></layer-list></calcite-panel></calcite-flow-item>`}getFeatureCreateFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._selectedLayerName} @calciteFlowItemBack=${this.backFromCreateFeaturePanel} .selected=${this._flowItems[this._flowItems.length-1]==="feature-create"}>${this._showSubmitCancelButton&&l`<div class=width-full slot=footer><calcite-button appearance=solid class="footer-top-button footer-button" .disabled=${this._submitNextButtonDisabled} @click=${this._showNextButton?this.onNextButtonClick.bind(this):this.onCreateFeatureSubmitButtonClick.bind(this)} width=full>${this._showNextButton?this._translations.next:this._translations.submit}</calcite-button><calcite-button appearance=outline class=footer-button @click=${this.backFromCreateFeaturePanel} width=full>${this._translations.cancel}</calcite-button></div>`||""}<calcite-panel><div class="progress-bar"><calcite-progress type=determinate .value=${this._updatedProgressBarStatus}></calcite-progress></div><create-feature app-name=reporter .aiImageExtraction=${this.aiImageExtraction} .aiTextExtraction=${this.aiTextExtraction} class="height-full overflow-auto" customize-submit .enableSearch=${this.enableSearch} .enablePhotoLocation=${this.enablePhotoLocation} .enableMessageLocation=${this.enableMessageLocation} .enableSnapping=${this.enableSnapping} .floorLevel=${this.floorLevel} .formElements=${this._formElements.find(e=>e.id===this._selectedLayerId)} .reportingAreaLayer=${this.reportingAreaLayer} .isMobile=${this.isMobile} .mapView=${this.mapView} @drawComplete=${this.onFormReady} @editingLocation=${this.editingLocation} @editingAttachment=${this.showSubmitCancelButton} @fail=${this.createFeatureFailed} @modeChanged=${this.backFromCreateFeaturePanel} @progressStatus=${this.updatedProgressStatus} @success=${this.onReportSubmitted} .searchConfiguration=${this.searchConfiguration} .selectedLayerId=${this._selectedLayerId} .reportingArea=${this.reportingArea} .reportingAreaMessage=${this.reportingAreaMessage} .submitNewReportsMessage=${this.submitNewReportsMessage} update-map-position ${h(this._createFeature)}></create-feature></calcite-panel></calcite-flow-item>`}updatedProgressStatus(e){this._updatedProgressBarStatus=e.detail}onFormReady(e){this._submitNextButtonDisabled=e.detail,this._showSubmitCancelButton=!0}editingLocation(){this._showNextButton=!0}showSubmitCancelButton(e){this._showSubmitCancelButton=!e.detail}onCreateFeatureSubmitButtonClick(){this._createFeature.value&&(this._showNextButton=!1,this._createFeature.value.submit())}backFromCreateFeaturePanel(){this._createFeature.value&&(this._showSubmitCancelButton=!1,this._showNextButton=!1,this.updateNonVisibleLayersOnMap(!1)),this.backFromSelectedPanel()}onNextButtonClick(){this._createFeature.value&&(this._showNextButton=!1,this._showSubmitCancelButton=!0,this._createFeature.value.showForm())}onCreateRelatedFeatureSubmitButtonClick(){this._createRelatedFeature.value&&this._createRelatedFeature.value.submit()}backFromCreateRelatedFeaturePanel(){this._createRelatedFeature.value&&(this._showSubmitCancelButton=!1),this.backFromSelectedPanel()}createFeatureFailed(e){console.error(e.detail),this._showSubmitCancelButton=!1,this._featureCreationFailedErrorMsg=e.detail.message}async onReportSubmitted(){this._showSubmitCancelButton=!1,this.updateNonVisibleLayersOnMap(!1),await this.navigateToHomePage(),this._reportSubmitted=!0,this._updatedProgressBarStatus=25,this._showFullPanel&&this.updatePanelState(this._sidePanelCollapsed,!1)}addCommentFailed(e){console.error(e.detail),this._addingCommentFailed=!0}async onCommentSubmitted(){this._commentSubmitted=!0,this.backFromCreateRelatedFeaturePanel(),this._showLoadingIndicator=!0,this._featureDetails.value&&await this._featureDetails.value.refresh(this._currentFeature),setTimeout(()=>{this._showLoadingIndicator=!1},300)}async navigateToHomePage(){if(await this.setSelectedFeatures([]),this._editableLayerIds.length===1)this._featureList.value&&await this._featureList.value.refresh(),this._flowItems=["feature-list"];else{let e=this.mapView&&await d(this.mapView,this._prevSelectedLayerId);this.floorLevel&&e?.floorInfo?.floorField&&this._updateFloorDefinitionExpression(e),this._layerList.value&&await this._layerList.value.refresh(),this._flowItems=["layer-list"]}}async navigateToCreateFeature(e){e.detail.layerId&&e.detail.layerName&&await this.setSelectedLayer(e.detail.layerId,e.detail.layerName),this.updateNonVisibleLayersOnMap(!0),this._getFormElements(),this._showSubmitCancelButton=!1,this._showNextButton=!1,this.updatePanelState(!1,!0),this._flowItems=[...this._flowItems,"feature-create"]}navigateToChooseCategory(){this.updatePanelState(!1,!0),this._flowItems=[...this._flowItems,"reporting-layer-list"]}updateNonVisibleLayersOnMap(e){this._nonVisibleValidLayers.find(t=>t.id===this._selectedLayerId)&&this._selectedLayer&&this._selectedLayer.set("visible",e)}async layerListLoaded(e){if(this._layerList.value&&this._flowItems[this._flowItems.length-1]==="layer-list"||this._flowItems[0]==="feature-list"){let t=e.detail,i=this.mapView&&await _(this.mapView),s=[];if(this._validLayers=[],this._nonVisibleValidLayers=[],i?.forEach(a=>{t.includes(a.id)&&(this._validLayers.push(a),a.visible||this._nonVisibleValidLayers.push(a),this._getLayersConfig(a.id)?.reporting&&this._layerItemsHash&&this._layerItemsHash[a.id]&&this._layerItemsHash[a.id].supportsAdd&&s.push(a.id))}),this.handleMapClick(),this._hasValidLayers=s.length>0,!this._urlParamsLoaded&&this._editableLayerIds.length>1&&this.layerId&&this.objectId){let a=this.mapView&&await d(this.mapView,this.layerId);a&&await this.displayFeaturesList({detail:{layerId:a.id,layerName:a.title}}),this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams()}}}async displayFeaturesList(e){this._showLoadingIndicator=!0,await this.setSelectedLayer(e.detail.layerId,e.detail.layerName),this.updateSortingOptions(),this.handleSelectedLayersFilter(),this._flowItems=[...this._flowItems,"feature-list"],this._prevSelectedLayerId=this._selectedLayerId,this._showLoadingIndicator=!1}updateSortingOptions(){let e=this.sortOption===""?"newest":this.sortOption,t=e==="oldest"||e==="lowestVoted"||e==="alphabetical"?"asc":"desc",i=this.reportingOptions?.[this._selectedLayerId]?.like?this.reportingOptions?.[this._selectedLayerId]?.likeField:"",s=this._getConfiguredLayerSortInfo(this._selectedLayerId)?.fields?.[0]||"",a=this._selectedLayer&&(e==="newest"||e==="oldest")?this._selectedLayer?.objectIdField:e==="alphabetical"||e==="reverseAlphabetical"?s:i,r=!!i&&(e==="highestVoted"||e==="lowestVoted"),o=!!s&&(e==="alphabetical"||e==="reverseAlphabetical");this._updatedSorting={field:a||"",order:t},this._updatedSortOption=r||o||!(e==="highestVoted"||e==="lowestVoted"||e==="alphabetical"||e==="reverseAlphabetical")?e:"newest"}async backFromFilterPanel(){this._filterList!=null&&(this._currentLayerExpressions=await this._filterList.getCurrentLayerExpressions(),this._showFilterIcon=this._currentLayerExpressions?.length>0),this._featureList.value&&await this._featureList.value.refresh(),this.backFromSelectedPanel()}backFromSelectedPanel(){this._updatedProgressBarStatus=25;let e=[...this._flowItems];if(e[e.length-1]==="comment-details"||e[e.length-1]==="add-comment"||this.clearHighlights(),(e[e.length-1]==="reporting-layer-list"||e[e.length-1]==="feature-create"&&(e[0]==="feature-list"||e[e.length-2]==="feature-list"))&&this.updatePanelState(this._sidePanelCollapsed,!1),e.pop(),e.length===1&&e[0]==="layer-list"){this.navigateToHomePage();return}this._flowItems=[...e]}toggleSidePanel(){this._sidePanelCollapsed=!this._sidePanelCollapsed,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this._showFullPanel})}updatePanelState(e,t){this._sidePanelCollapsed=e,this._showFullPanel=t,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this._showFullPanel})}async onFeatureSelectFromList(e){await this.setSelectedFeatures([e.detail]),this._flowItems=[...this._flowItems,"feature-details"]}async getRelatedTable(){let e=this._currentFeature?.layer,t=this.mapView&&await f(this.mapView);e.relationships?.some(i=>{let s=t?.filter(a=>e.url===a.url&&a.layerId===i.relatedTableId);return s&&s.length>0?(this._relatedTable=s[0],!0):!1})}async updatingFeatureDetails(e){this._showLoadingIndicator=e}async selectionChanged(e){this.updatingFeatureDetails(!0),await this.setCurrentFeature(e.detail.selectedFeature[0]),this.highlightOnMap(e.detail.selectedFeature[0]),this._selectedFeatureIndex=e.detail.selectedFeatureIndex,this._featureDetails.value&&await this._featureDetails.value.refresh(e.detail.selectedFeature[0])}showAddCommentsPanel(){this._flowItems=[...this._flowItems,"add-comment"]}async onCommentSelectFromList(e){this._selectedRelatedFeature=[e.detail],this._flowItems=[...this._flowItems,"comment-details"]}getFeatureListFlowItem(e,t){let i=this._getLayersConfig(this._selectedLayerId)?.reporting&&this._layerItemsHash&&this._layerItemsHash[this._selectedLayerId].supportsAdd,s=this._showFilterIcon;return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${t} .loading=${!this.isMobile&&this._showLoadingIndicator} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="feature-list"}>${this._toggleSort()}<calcite-action icon=sort-ascending-arrow id=sort-popover slot=header-actions-end .text=${this._translations.sort} title=${this._translations.sort??p}></calcite-action>${s&&l`<calcite-action icon=filter .indicator=${this._filterActive} @click=${()=>{this.isMobile?this._toggleFilter():this._flowItems=[...this._flowItems,"filter-panel"]}} slot=header-actions-end .text=${this._translations.filter} title=${this._translations.filter??p}></calcite-action>`||""}${this.isMobile&&this.getActionToExpandCollapsePanel()||""}${this.enableNewReports&&i&&l`<calcite-button appearance=solid @click=${this.navigateToCreateFeature} slot=footer width=full>${this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText}</calcite-button>`||""}<calcite-panel>${l`<feature-list .applyLayerViewFilter=${this.showMyReportsOnly} class="height-full" .filterByMapExtent=${this.filterByMapExtent} highlight-on-hover .mapView=${this.mapView} .noFeaturesFoundMsg=${this._translations.featureErrorMsg} @featureClick=${()=>{this._showLoadingIndicator=!0}} @featureSelect=${this.onFeatureSelectFromList} page-size=30 .reportingOptions=${this.reportingOptions} .selectedLayerId=${e} show-error-when-no-features .showFeatureSymbol=${this.showFeatureSymbol} .sortingInfo=${this._updatedSorting} ${h(this._featureList)}></feature-list>`}</calcite-panel></calcite-flow-item>`}getFilterPanel(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._translations.filterLayerTitle.replace("{{title}}",this._selectedLayerName)} .loading=${this._showLoadingIndicator} @calciteFlowItemBack=${this.backFromFilterPanel} .selected=${this._flowItems[this._flowItems.length-1]==="filter-panel"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}<div class=width-full slot=footer><div class=width-full slot=footer><calcite-button appearance=solid class="footer-top-button footer-button" .disabled=${!this._filterActive} @click=${this.resetFilterList} width=full>${this._translations.resetFilter}</calcite-button><calcite-button appearance=outline class=footer-button @click=${this.backFromFilterPanel} width=full>${this._translations.close}</calcite-button></div></div><calcite-panel>${this.mapView&&l`<instant-apps-filter-list .closeBtnOnClick=${()=>{}} combobox-overlay-positioning=fixed .layerExpressions=${this._currentLayerExpressions} @filterListReset=${()=>{this._handleFilterListReset()}} @filterUpdate=${()=>{let e=this._filterList?.filterCount;e!==void 0&&this._handleFilterUpdate(e>0)}} .view=${this.mapView} ${h(this._setFilterList)}></instant-apps-filter-list>`||""}</calcite-panel></calcite-flow-item>`}getFeatureDetailsFlowItem(){let e=this._selectedLayer?.relationships,t=this._getLayersConfig(this._selectedLayerId)?.comment&&e&&e.length>0&&this._relatedTable;return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._selectedLayerName} .loading=${this._showLoadingIndicator} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="feature-details"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}${this.mapView&&l`<instant-apps-social-share class=share-node flip-rtl popover-button-icon-scale=s remove-popover-offset scale=m share-button-color=neutral share-button-type=action slot=header-actions-end social-media .view=${this.mapView} ${h(this._shareNode)}></instant-apps-social-share>`||""}${this._selectedFeature.length>1&&this.getFeaturesPagination()||""}<calcite-panel><feature-details class=full-height .enableSnapping=${this.enableSnapping} .graphics=${this._selectedFeature} .layerItemsHash=${this._layerItemsHash} .mapView=${this.mapView} @addComment=${this.showAddCommentsPanel} @commentClick=${()=>{this._showLoadingIndicator=!0}} @commentSelect=${this.onCommentSelectFromList} @featureSelectionChange=${this.selectionChanged} @likeOrDislikeClicked=${()=>{this._featureList.value&&this._featureList.value.refresh(!0)}} @loadingStatus=${i=>{this.updatingFeatureDetails(i.detail)}} .reportingOptions=${this.reportingOptions} .showFullCommentTitle=${this.showFullCommentTitle} .showUserImageInCommentsList=${this.showUserImageInCommentsList} ${h(this._featureDetails)}></feature-details>${t&&l`<calcite-button appearance=solid @click=${this.showAddCommentsPanel} slot=footer width=full>${this.commentButtonText||this._translations.comment}</calcite-button>`||""}</calcite-panel></calcite-flow-item>`}getFeaturesPagination(){return l`<div class="feature-pagination"><div><calcite-button appearance=transparent icon-start=chevron-left icon-flip-rtl=both id=solutions-back .label=${this._translations.back} @click=${()=>this._featureDetails.value&&void this._featureDetails.value.back()} scale=s width=full></calcite-button><calcite-tooltip placement=top reference-element=solutions-back><span>${this._translations.back}</span></calcite-tooltip></div><calcite-button appearance=transparent .label=${this._translations.toggleListView} @click=${()=>this._featureDetails.value&&void this._featureDetails.value.toggleListView()} scale=s><span class="pagination-count">${this._getCount()}</span></calcite-button><div><calcite-button appearance=transparent icon-flip-rtl=both icon-start=chevron-right id=solutions-next .label=${this._translations.next} @click=${()=>this._featureDetails.value&&void this._featureDetails.value.next()} scale=s width=full></calcite-button><calcite-tooltip placement=top reference-element=solutions-next><span>${this._translations.next}</span></calcite-tooltip></div></div>`}getCommentDetailsFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._relatedTable?.title||""} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="comment-details"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}<calcite-panel><info-card .enableSnapping=${this.enableSnapping} .graphics=${this._selectedRelatedFeature} .mapView=${this.mapView} @selectionChanged=${()=>{this._showLoadingIndicator=!1}}></info-card></calcite-panel></calcite-flow-item>`}getAddCommentFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._relatedTable?.title||""} @calciteFlowItemBack=${this.backFromCreateRelatedFeaturePanel} .selected=${this._flowItems[this._flowItems.length-1]==="add-comment"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}<div class=width-full slot=footer>${this._showSubmitCancelButton&&l`<div class=width-full slot=footer><calcite-button appearance=solid class="footer-top-button footer-button" @click=${this.onCreateRelatedFeatureSubmitButtonClick} width=full>${this._translations.submit}</calcite-button><calcite-button appearance=outline class=footer-button @click=${this.backFromCreateRelatedFeaturePanel} width=full>${this._translations.cancel}</calcite-button></div>`||""}</div><calcite-panel><create-related-feature customize-submit .enableSnapping=${this.enableSnapping} .mapView=${this.mapView} @fail=${this.addCommentFailed} @formReady=${this.onFormReady} @isActionPending=${this.showSubmitCancelButton} @success=${this.onCommentSubmitted} .selectedFeature=${this._currentFeature} .table=${this._relatedTable} ${h(this._createRelatedFeature)}></create-related-feature></calcite-panel></calcite-flow-item>`}async setSelectedFeatures(e){this._selectedFeature=e,await this.setCurrentFeature(this._selectedFeature.length?this._selectedFeature[0]:void 0)}async setCurrentFeature(e){if(this._currentFeature=e,e&&e.layer){let t=e.layer;t.title&&this.setSelectedLayer(t.id,t.title),this._currentFeatureId=e.attributes[t.objectIdField],this._getLayersConfig(t.id)?.comment&&t.relationships&&t.relationships.length>0&&await this.getRelatedTable()}else this._editableLayerIds.length>1&&(this.setSelectedLayer("",""),this.handlePrevLayersFilter()),this._currentFeatureId="";this._updateShareURL()}async highlightOnMap(e){if(this.clearHighlights(),e&&e.geometry&&e.layer&&e.layer.id!==void 0){let t=this.mapView&&await m(this.mapView,e.layer.id.toString());if(t){let i=Number(e.getObjectId());this._highlightHandle=this.mapView&&await S([i],t,this.mapView,!0,this.zoomToScale)}}this.updatingFeatureDetails(!1)}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return l`<calcite-action .icon=${this._sidePanelCollapsed?"chevrons-up":"chevrons-down"} @click=${this.toggleSidePanel} slot=header-actions-end .text=${(this._sidePanelCollapsed?this._translations.expand:this._translations.collapse)||""}></calcite-action>`}async setMapView(){this.mapView&&await f(this.mapView),await this.getLayersToShowInList(),await this._updateFeatures(),this._editableLayerIds?.length===1?await this.renderFeaturesList():this._flowItems=["layer-list"],this.mapView&&(this.mapView.popupEnabled=!1,this._defaultCenter&&this._defaultLevel&&(await this.mapView.goTo({center:this._defaultCenter,zoom:this._defaultLevel}),this._defaultCenter=void 0,this._defaultLevel=void 0))}handleMapClick(){this._mapClickHandle&&this._mapClickHandle.remove(),this._mapClickHandle=E.on(()=>this.mapView,"click",e=>{this.mapView&&(this.mapView.popupEnabled=!1),this.onMapClick(e)})}async onMapClick(e){if(!(this._flowItems[this._flowItems.length-1]==="feature-create"||this._flowItems[this._flowItems.length-1]==="add-comment")&&this.mapView){let t=await this.mapView.hitTest(e),i=[],s=[],a=[],r=!1;t.results.length>0&&t.results.forEach(n=>{n.type==="graphic"&&i.push(n.graphic)}),i.length>0&&(await this._setReportingGraphics(i),s=this._getNonReportingLayerGraphics(i)),this._mapImageryLayersId.length>0&&(a=await this._getIdentifiedGraphics(e.mapPoint),r=a.length>0);let o=s.concat(a);if(o.length>0){this.mapView.popupEnabled=!0;let n={features:o,location:e.mapPoint,updateLocationEnabled:!r};await this.mapView.openPopup(n)}}}async _setReportingGraphics(e){let t=e.filter(i=>{if(i.layer?.type==="feature"){let s=i.layer;return this._validLayers.includes(s)}else return!1});this._selectedLayer&&this._selectedFeature.length>0&&this._selectedLayer.id===t[0]?.layer?.id&&t[0].attributes[this._selectedLayer.objectIdField]===this._selectedFeature[0].attributes[this._selectedLayer.objectIdField]||t.length>0&&(await this.setSelectedFeatures(t),this._flowItems.length&&this._flowItems.includes("feature-details")?(this._flowItems=[...this._flowItems.slice(0,this._flowItems.indexOf("feature-details")+1)],await this.highlightOnMap(e[0])):this._flowItems=[...this._flowItems,"feature-details"])}_getNonReportingLayerGraphics(e){return e.filter(t=>{if(t.layer?.type==="feature"){let i=t.layer;return!this._validLayers.includes(i)&&i?.popupEnabled&&i?.id}else return!1})}async _getIdentifiedGraphics(e){let t=new O({geometry:e,tolerance:3,mapExtent:this.mapView?.extent}),i,s=[];for(let r of this._mapImageryLayersId){let o=this.mapView&&await d(this.mapView,r);if(o?.url&&t)try{let n=await k?.identify(o.url,t);if(n?.results?.length){s=n.results,i=o;break}}catch(n){console.error(n)}}let a=[];return s.forEach(r=>{let o=r.layerId,n=i?.sublayers?.items.find(V=>V.id===o),w=n?.popupTemplate;n?.popupEnabled&&w&&(r.feature.popupTemplate=w,a.push(r.feature))}),a}_getCount(){let e=(this._selectedFeatureIndex+1).toString(),t=this._selectedFeature.length.toString();return this._translations.indexOfTotal.replace("{{index}}",e).replace("{{total}}",t)}_updateFloorDefinitionExpression(e){let t=`${e?.floorInfo?.floorField} = '${this.floorLevel}'`,i=e.definitionExpression;e.definitionExpression=i&&i?.indexOf(this._floorExpression)>-1?i.replace(this._floorExpression,t):t,this._floorExpression=t}_getFormElements(){let e=this._selectedLayer;if(e?.floorInfo?.floorField&&this.floorLevel&&e?.formTemplate){let t=this._formElements.find(i=>i.id===e.id);(this._formElements.length===0||!t)&&this._formElements.push({id:e.id,orgElements:e.formTemplate.elements,orgExpressionInfos:e.formTemplate.expressionInfos})}}reduceToConfiguredLayers(e,t){return Object.keys(e).reduce((i,s)=>{let a=this.reportingOptions?this._getLayersConfig(s)?.visible:e[s].supportsAdd;return!t.includes(s)&&a&&i.push(s),i},[])}refreshLists(){setTimeout(()=>{this._layerList.value&&this._flowItems[this._flowItems.length-1]==="layer-list"&&this._layerList.value.refresh(),this._featureList.value&&this._featureList.value.refresh()},50)}async _updateFeatures(){for(let e of this._editableLayerIds){let t=this.mapView&&await m(this.mapView,e);t&&(await this._showMyFeaturesOnly(t),t.layer?.floorInfo?.floorField&&this.floorLevel&&this._updateFloorDefinitionExpression(t.layer))}}async _showMyFeaturesOnly(e){let t=(this.mapView?.map).portalItem.portal?.credential?.userId;if(t&&e){let i=e.layer.editFieldsInfo?.creatorField.toLowerCase();e.filter=this.showMyReportsOnly&&i?new P({where:`${i} = '${t}'`}):null}}async getLayersToShowInList(){let e=this.mapView&&await x(this.mapView,!1),t=this.mapView&&await _(this.mapView),i=[];t?.forEach(s=>{s?.type==="feature"&&s?.editingEnabled&&s?.capabilities?.operations?.supportsAdd&&(e[s.id].supportsAdd=!0),s?.editingEnabled||i.push(s.id)}),this._editableLayerIds=this.reduceToConfiguredLayers(e,i),this._layerItemsHash=e}async renderFeaturesList(){this._flowItems=["feature-list"];let e={detail:this._editableLayerIds};await this.layerListLoaded(e),await this.setSelectedLayer(this._validLayers[0].id,this._validLayers[0]?.title||""),this.updateSortingOptions(),await this.handleSelectedLayersFilter(),this._urlParamsLoaded||(this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams())}_updateShareURL(){let e=this._shareNode.value?.shareUrl;if(!e)return;let t=new URL(e);this._selectedLayerId?t.searchParams.set("layerid",this._selectedLayerId):t.searchParams.delete("layerid"),this._selectedFeature?.length?t.searchParams.set("oid",this._currentFeatureId):t.searchParams.delete("oid"),this._shareNode.value&&(this._shareNode.value.autoUpdateShareUrl=!1,this._shareNode.value.shareUrl=t.href)}async loadFeatureFromURLParams(){if(this.center&&this.level&&await this.mapView?.goTo({center:this.center.split(";").map(Number),zoom:parseInt(this.level,10)}),this.layerId&&this.objectId){let e=this.mapView&&await d(this.mapView,this.layerId);if(e){let t=this.mapView&&await v([Number(this.objectId)],e,[],!0,this.mapView.spatialReference);t?.length&&(await this.setSelectedFeatures(t),this._flowItems.length&&this._flowItems[this._flowItems.length-1]!=="feature-details"?this._flowItems=[...this._flowItems,"feature-details"]:this._flowItems=[...this._flowItems])}}}async handleSelectedLayersFilter(){if(this._selectedLayer){let e=this.layerExpressions?structuredClone(this.layerExpressions.filter(t=>t.id===this._selectedLayerId)):[];this._t9nLayerExpressions!=null&&this.handleLayerExpressionsT9n(e,this._t9nLayerExpressions),this._currentLayerExpressions=e,this._showFilterIcon=this._currentLayerExpressions?.length>0,this.setActiveDefinitionExpressions()}}async handlePrevLayersFilter(){if(this._prevSelectedLayerId){let e=this.mapView&&await d(this.mapView,this._prevSelectedLayerId);e&&this._initDefExpressions&&(e.definitionExpression=this._initDefExpressions[this._prevSelectedLayerId])}}async resetFilterList(){await this._filterList?.forceReset(),this._selectedLayer!==void 0&&this._initDefExpressions&&(this._selectedLayer.definitionExpression=this._initDefExpressions[this._selectedLayerId],this._filterActive=!1)}setActiveDefinitionExpressions(){if(this._selectedLayer===void 0)return;let e=[];if(this._currentLayerExpressions&&this._currentLayerExpressions?.length>0){let t=this._currentLayerExpressions[0];for(let i of t.expressions){let{active:s,definitionExpression:a}=i;s&&a&&e.push(`(${a})`)}this._filterActive=e.length>0,this.updateFilterLayerDefExpression(e,t.operator)}}updateFilterLayerDefExpression(e,t){let i=this._initDefExpressions&&this._initDefExpressions[this._selectedLayerId],s=e?.length>0&&i?`(${e.join(t)}) AND (${i})`:e.length>0?e.join(t):i;this._selectedLayer&&(this._selectedLayer.definitionExpression=s)}setInitExpressions(){if(this._initDefExpressions={},this.mapView==null)return;let e=this.mapView.map;e.allLayers.concat(e.allTables.toArray()).forEach(t=>{if(t.type==="map-image"&&t.popupEnabled&&!this._mapImageryLayersId.includes(t.id)){this._mapImageryLayersId.push(t.id);return}if(t.type!=="feature")return;let i=t;this._initDefExpressions&&(this._initDefExpressions[i.id]=i.definitionExpression||"")})}handleLayerExpressionsT9n(e,t){e?.forEach(i=>{let s=t?.find(a=>a.id===i.id);s!=null&&(i.title=s.title,i.expressions?.forEach(a=>{let r=s.expressions?.find(o=>o.id===a.id);r!=null&&(a.name=r.name)}))})}};F("crowdsource-reporter",g);return g},"core/reactiveUtils","layers/support/FeatureFilter","rest/identify","rest/support/IdentifyParameters",a,d)
|
|
2
|
+
import{a as C}from"./OKJQRXDF.js";import"./57K3VUDO.js";import d from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as $}from"./C7NYB4E3.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as F}from"./U4HGOXNJ.js";import{F as c,G as h,H as I,J as u,h as y,i as l,l as p,q as b,u as L}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([E,P,k,O,{b:v},{a:x,c:m,d:d,e:_,f:f,g:S}])=>{var M=y`@layer{:host{display:block;--calcite-label-margin-bottom: 0px;--solutions-theme-foreground-color: var(--calcite-color-surface-2)}.width-full{width:100%!important}.height-full{height:100%!important}.notice-msg{padding:10px;width:calc(100% - 20px)}.progress-bar{padding:12px}.footer-top-button{padding-bottom:7px}.footer-button{height:35px}.feature-pagination{background-color:var(--calcite-color-surface-2)!important;border-block-end:1px solid var(--calcite-color-border-3);display:flex;justify-content:center;padding:5px 0}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:700}.footer-button-container{width:100%;display:flex;gap:10px}.report-submitted-msg{position:absolute;z-index:1000}.share-node{display:flex}.overflow-auto{overflow:auto}}`,g=class extends I{constructor(){super(),this.center="",this.commentButtonText="",this.commentSubmittedMessage="",this.defaultWebmap="",this.description="",this.enableAnonymousAccess=!1,this.enableAnonymousComments=!1,this.enableComments=!1,this.enableHome=!0,this.enableLogin=!1,this.enableNewReports=!1,this.enableSearch=!0,this.enableSnapping=!1,this.enableZoom=!0,this.isMobile=!1,this.layerExpressions=[],this.layerId="",this.level="",this.loginTitle="",this.mapInfos=[],this.objectId="",this.reportButtonText="",this.reportsHeader="",this.reportSubmittedMessage="",this.showComments=!1,this.showUserImageInCommentsList=!1,this.showFeatureSymbol=!1,this.showMyReportsOnly=!1,this.submitNewReportsMessage="",this.theme="light",this.zoomToScale=15358,this.floorLevel="",this.showFullCommentTitle=!0,this.filterByMapExtent=!1,this.sortOption="newest",this.reportingArea=!1,this.reportingAreaLayer="",this.reportingAreaMessage="",this.enablePhotoLocation=!1,this.enableMessageLocation=!1,this.aiImageExtraction=[],this.aiTextExtraction=[],this._featureCreationFailedErrorMsg="",this._filterActive=!1,this._flowItems=[],this._hasValidLayers=!1,this._reportSubmitted=!1,this._selectedLayerName="",this._showSubmitCancelButton=!1,this._showLoadingIndicator=!1,this._sidePanelCollapsed=!1,this._translations=$({name:"crowdsource-reporter",blocking:!0}),this._updatedProgressBarStatus=25,this._updatedSortOption="newest",this._commentSubmitted=!1,this._addingCommentFailed=!1,this._filterOpen=!1,this._showNextButton=!1,this._submitNextButtonDisabled=!1,this._showFilterIcon=!1,this._createFeature=c(),this._currentFeatureId="",this._editableLayerIds=[],this._featureDetails=c(),this._featureList=c(),this._selectedRelatedFeature=[],this._layerList=c(),this._createRelatedFeature=c(),this._layers=[],this._mapImageryLayersId=[],this._selectedFeature=[],this._selectedFeatureIndex=0,this._selectedLayerId="",this._shareNode=c(),this._urlParamsLoaded=!1,this._validLayers=[],this._nonVisibleValidLayers=[],this._showFullPanel=!1,this._floorExpression="",this._formElements=[],this._prevSelectedLayerId="",this._t9nLayerExpressions=[],this._reportSubmittedAlertNode=c(),this._commentSubmittedAlertNode=c(),this._sortPopoverNode=c(),this.togglePanel=b(),C(window)}static{this.properties={center:1,commentButtonText:1,commentSubmittedMessage:1,defaultWebmap:1,description:1,enableAnonymousAccess:5,enableAnonymousComments:5,enableComments:5,enableHome:5,enableLogin:5,enableNewReports:5,enableSearch:5,enableSnapping:5,enableZoom:5,isMobile:5,layerExpressions:0,layerId:1,level:1,loginTitle:1,mapInfos:0,mapView:0,objectId:1,reportButtonText:1,reportingOptions:0,reportsHeader:1,reportSubmittedMessage:1,searchConfiguration:0,showComments:5,showUserImageInCommentsList:5,showFeatureSymbol:5,showMyReportsOnly:5,submitNewReportsMessage:1,theme:1,zoomToScale:9,floorLevel:1,showFullCommentTitle:5,filterByMapExtent:5,sortOption:1,reportingArea:5,reportingAreaLayer:1,reportingAreaMessage:1,enablePhotoLocation:5,enableMessageLocation:5,aiImageExtraction:0,aiTextExtraction:0,sortFields:0,_featureCreationFailedErrorMsg:16,_filterActive:16,_flowItems:16,_hasValidLayers:16,_mapInfo:16,_reportSubmitted:16,_selectedLayerName:16,_showSubmitCancelButton:16,_showLoadingIndicator:16,_sidePanelCollapsed:16,_translations:16,_updatedProgressBarStatus:16,_updatedSorting:16,_updatedSortOption:16,_commentSubmitted:16,_addingCommentFailed:16,_filterOpen:16,_showNextButton:16,_submitNextButtonDisabled:16,_showFilterIcon:16}}static{this.styles=M}static{this.shadowRootOptions=L}willUpdate(e){e.has("isMobile")&&this.isMobileWatchHandler(this.isMobile),e.has("mapView")&&this.hasUpdated&&this.mapViewWatchHandler(),e.has("floorLevel")&&this.floorLevelWatchHandler(),e.has("reportingOptions")&&this.hasUpdated&&this.reportingOptionsWatchHandler(),(e.has("reportingAreaLayer")||e.has("reportingArea")&&this.hasUpdated)&&setTimeout(()=>{this._createFeature.value&&this._createFeature.value.refresh(this.floorLevel)},50),e.has("showMyReportsOnly")&&(this.hasUpdated||this.showMyReportsOnly!==!1)&&this.showMyReportsOnlyWatchHandler(),e.has("sortOption")&&(this.hasUpdated||this.sortOption!=="newest")&&this.sortOptionWatchHandler(),e.has("filterByMapExtent")&&(this.hasUpdated||this.filterByMapExtent!==!1)&&this.filterByMapExtentChangeWatchHandler(),e.has("layerExpressions")&&(this.hasUpdated||this.layerExpressions?.length>0)&&this.layerExpressionsWatchHandler(),e.has("showFeatureSymbol")&&(this.hasUpdated||this.showFeatureSymbol!==!1)&&this.showFeatureSymbolWatchHandler(),(this._flowItems.includes("filter-panel")||this._filterOpen)&&this._filterList?.updateInitDefExpressions({initDefExpressions:this._initDefExpressions}),e.has("sortFields")&&this.hasUpdated&&this._selectedLayerId&&(this._updatedSortOption==="alphabetical"||this._updatedSortOption==="reverseAlphabetical")&&this.sortFieldsWatchHandler()}async isMobileWatchHandler(e){this.updatePanelState(!1,this._showFullPanel),e&&this._flowItems[this._flowItems.length-1]==="filter-panel"?(await this.backFromFilterPanel(),this._filterOpen=!0):!e&&this._filterOpen&&(await this._closeFilter(),this._flowItems=[...this._flowItems,"filter-panel"])}async mapViewWatchHandler(){await this.mapView?.when(async()=>{this.setInitExpressions(),await this.setMapView()})}async reportingOptionsWatchHandler(){this.setInitExpressions(),await this.setMapView(),this.refreshLists()}async floorLevelWatchHandler(){if(this._editableLayerIds)for(let e of this._editableLayerIds){let t=this.mapView&&await d(this.mapView,e);t&&t.floorInfo?.floorField&&this._updateFloorDefinitionExpression(t)}this._flowItems[this._flowItems.length-1]==="layer-list"&&this._layerList.value&&await this._layerList.value.refresh(),this._featureList.value&&this._featureList.value.refresh(),this._createFeature.value&&this._createFeature.value.refresh(this.floorLevel)}async showMyReportsOnlyWatchHandler(){this._editableLayerIds&&(await this._updateFeatures(),this.refreshLists())}async sortOptionWatchHandler(){this.updateSortingOptions()}sortFieldsWatchHandler(){let e=this._getConfiguredLayerSortInfo(this._selectedLayerId);if(e?.id===this._selectedLayerId&&this._flowItems[this._flowItems.length-1]==="feature-list"){if(e?.fields.length>0){let t=this._updatedSorting?.order==="asc"?"asc":"desc";this.sortOptionClick(e.fields[0],t,this._updatedSortOption)}}else this._flowItems[this._flowItems.length-1]==="feature-list"&&this.updateSortingOptions()}filterByMapExtentChangeWatchHandler(){this.refreshLists()}async layerExpressionsWatchHandler(){await this.resetFilterList(),await this.handleSelectedLayersFilter(),await this._featureList.value?.refresh()}async showFeatureSymbolWatchHandler(){await this._featureList.value?.refresh()}async updateLayerExpressionsT9n(e){if(this._t9nLayerExpressions=e||this.layerExpressions,this._filterList!=null)await this._filterList.handleUpdatingT9nData(this._t9nLayerExpressions);else if(this._currentLayerExpressions!=null){let t=structuredClone(this._currentLayerExpressions);this.handleLayerExpressionsT9n(t,this._t9nLayerExpressions),this._currentLayerExpressions=t,this._showFilterIcon=this._currentLayerExpressions?.length>0}return Promise.resolve()}async load(){this._urlParamsLoaded=!1,await this.mapView?.when(async()=>{this._layers=this.reportingOptions?Object.keys(this.reportingOptions).filter(e=>{let t=e&&this.reportingOptions&&this.reportingOptions[e];return t&&t.visible}):[],this.setInitExpressions(),await this.setMapView()})}render(){let e=this.theme==="dark"?"calcite-mode-dark":"calcite-mode-light";return l`${this._reportSubmitted&&l`<calcite-alert auto-close class=${`${e} report-submitted-msg`} icon=check-circle kind=success .label=${this._translations.notification} @calciteAlertClose=${()=>{this._reportSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.reportSubmittedMessage||this._translations.submitMsg)??""} ${h(this._reportSubmittedAlertNode)}></div></calcite-alert>`||""}${this._featureCreationFailedErrorMsg&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger .label=${this._translations.notification} @calciteAlertClose=${()=>{this._featureCreationFailedErrorMsg=""}} open placement=top><div slot=title>${this._translations.error}</div><div slot=message>${this._featureCreationFailedErrorMsg}</div></calcite-alert>`||""}${this._commentSubmitted&&l`<calcite-alert auto-close class=${`report-submitted ${e}`} icon=check-circle kind=success .label=${this._translations.notification} @calciteAlertClose=${()=>{this._commentSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.commentSubmittedMessage||this._translations.commentSubmittedMsg)??""} ${h(this._commentSubmittedAlertNode)}></div></calcite-alert>`||""}${this._addingCommentFailed&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger .label=${this._translations.notification} @calciteAlertClose=${()=>{this._addingCommentFailed=!1}} open placement=top><div slot=title>${this._translations.error}</div><div slot=message>${this._translations.addingCommentFailedMsg}</div></calcite-alert>`||""}<div><calcite-shell content-behind>${this._getReporter()}</calcite-shell></div>${this.isMobile&&this.filterModal()||""}`}updated(){this._adjustAlertStyles()}async setSelectedLayer(e,t){this._selectedLayerId=e,this._selectedLayer=this.mapView&&await d(this.mapView,e),this._selectedLayerName=t,this._validLayers.forEach(i=>{this._nonVisibleValidLayers.find(s=>s.id===i.id)||i.set("visible",!e||i.id===e)})}_getLayersConfig(e){return this.reportingOptions&&this.reportingOptions[e]?this.reportingOptions[e]:null}_getReporter(){let e=[];this._flowItems.forEach(i=>{switch(i){case"layer-list":e.push(this.getLayerListFlowItem());break;case"feature-list":e.push(this.getFeatureListFlowItem(this._selectedLayerId,this._selectedLayerName));break;case"filter-panel":e.push(this.getFilterPanel());break;case"feature-details":e.push(this.getFeatureDetailsFlowItem());break;case"reporting-layer-list":e.push(this.getChooseCategoryFlowItem());break;case"feature-create":e.push(this.getFeatureCreateFlowItem());break;case"comment-details":e.push(this.getCommentDetailsFlowItem());break;case"add-comment":e.push(this.getAddCommentFlowItem());break}});let t=this.theme==="dark"?"calcite-mode-dark":"calcite-mode-light";return l`<calcite-panel class=${`width-full ${t}`}>${this.mapView?l`<calcite-flow>${e?.length>0&&e||""}</calcite-flow>`:l`<calcite-loader .label=${this._translations.loading} scale=m></calcite-loader>`}</calcite-panel>`}filterModal(){return(this.layerExpressions?this.layerExpressions.filter(e=>e.id===this._selectedLayerId):[]).length>0&&l`<calcite-dialog aria-labelledby=modal-title class="modal" .heading=${this._translations.filterLayerTitle.replace("{{title}}",this._selectedLayerName)} kind=brand @calciteDialogClose=${()=>{this._closeFilter()}} .open=${this._filterOpen} width=s><div>${this.mapView&&l`<instant-apps-filter-list close-btn .closeBtnOnClick=${()=>{this._closeFilter()}} combobox-overlay-positioning=fixed .layerExpressions=${this._currentLayerExpressions} @filterListReset=${()=>{this._filterActive=!1,this._featureList.value&&this._featureList.value.refresh()}} @filterUpdate=${()=>{this._filterList?.filterCount!==void 0&&this._handleFilterUpdate(this._filterList?.filterCount>0)}} .view=${this.mapView} ${h(this._setFilterList)}></instant-apps-filter-list>`||""}</div></calcite-dialog>`||""}_setFilterList(e){this._filterList=e,e&&(e.autoUpdateUrl=!1,e.resetBtn=this.isMobile,e.resetFiltersOnDisconnect=!1,e.zoomBtn=!1)}_adjustAlertStyles(){this.reportSubmittedMessage&&this._reportSubmittedAlertNode.value?.children[0]&&(this._reportSubmittedAlertNode.value.children[0].style.margin="0px"),this.commentSubmittedMessage&&this._commentSubmittedAlertNode.value?.children[0]&&(this._commentSubmittedAlertNode.value.children[0].style.margin="0px")}_toggleFilter(){this._filterOpen=!this._filterOpen}async _closeFilter(){this._filterOpen=!1,this._filterList!=null&&(this._currentLayerExpressions=await this._filterList.getCurrentLayerExpressions(),this._showFilterIcon=this._currentLayerExpressions?.length>0)}async sortOptionClick(e,t,i){this._updatedSorting={field:e,order:t},this._updatedSortOption=i,this._sortPopoverNode.value&&(this._sortPopoverNode.value.open=!1)}_getConfiguredLayerSortInfo(e){return this.sortFields&&this.sortFields.layers.find(t=>t.id===e)||null}_toggleSort(){let e=this.reportingOptions&&this.reportingOptions[this._selectedLayerId]&&this.reportingOptions[this._selectedLayerId].like&&this.reportingOptions[this._selectedLayerId].likeField,t=this._getConfiguredLayerSortInfo(this._selectedLayerId);return l`<calcite-popover auto-close .label=${this._translations.sortOptions} offset-distance=0 .placement=${this.isMobile?"leading-start":"bottom-start"} pointer-disabled reference-element=sort-popover ${h(this._sortPopoverNode)}><calcite-list .label=${this._translations.sortOptions} selection-mode=single-persist><calcite-list-item .label=${this._translations.sortNewest} @calciteListItemSelect=${()=>{this._selectedLayer&&this.sortOptionClick(this._selectedLayer.objectIdField,"desc","newest")}} .selected=${this._updatedSortOption==="newest"} value=newest></calcite-list-item><calcite-list-item .label=${this._translations.sortOldest} @calciteListItemSelect=${()=>{this._selectedLayer&&this.sortOptionClick(this._selectedLayer.objectIdField,"asc","oldest")}} .selected=${this._updatedSortOption==="oldest"} value=oldest></calcite-list-item>${e&&l`<calcite-list-item .label=${this._translations.sortHighestVoted} @calciteListItemSelect=${()=>{let i=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;i!==void 0&&this.sortOptionClick(i,"desc","highestVoted")}} .selected=${this._updatedSortOption==="highestVoted"} value=highestVoted></calcite-list-item><calcite-list-item .label=${this._translations.sortLowestVoted} @calciteListItemSelect=${()=>{let i=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;i&&this.sortOptionClick(i,"asc","lowestVoted")}} .selected=${this._updatedSortOption==="lowestVoted"} value=lowestVoted></calcite-list-item>`||""}${t&&l`<calcite-list-item .label=${this._translations.sortAlphabetical} @calciteListItemSelect=${()=>{let i=this._getConfiguredLayerSortInfo(this._selectedLayerId);i?.fields&&this.sortOptionClick(i.fields[0],"asc","alphabetical")}} .selected=${this._updatedSortOption==="alphabetical"} value=alphabetical></calcite-list-item><calcite-list-item .label=${this._translations.reverseSortAlphabetical} @calciteListItemSelect=${()=>{let i=this._getConfiguredLayerSortInfo(this._selectedLayerId);i?.fields&&this.sortOptionClick(i.fields[0],"desc","reverseAlphabetical")}} .selected=${this._updatedSortOption==="reverseAlphabetical"} value=reverseAlphabetical></calcite-list-item>`||""}</calcite-list></calcite-popover>`}async _handleFilterListReset(){this._filterActive=!1}async _handleFilterUpdate(e){this._showLoadingIndicator=!0,this._filterActive=e,this._featureList.value&&await this._featureList.value.refresh(),this._showLoadingIndicator=!1}getLayerListFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this.reportsHeader} .loading=${this._showLoadingIndicator} .selected=${this._flowItems[this._flowItems.length-1]==="layer-list"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}${this._hasValidLayers&&this.enableNewReports&&l`<calcite-button appearance=solid @click=${this.navigateToChooseCategory} slot=footer width=full>${this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText}</calcite-button>`||""}<calcite-panel><layer-list .applyLayerViewFilter=${this.showMyReportsOnly} class="height-full" .filterByMapExtent=${this.filterByMapExtent} .layers=${this._editableLayerIds?.length>0?this._editableLayerIds:this._layers} .mapView=${this.mapView} @layerSelect=${this.displayFeaturesList} @layersListLoaded=${this.layerListLoaded} show-feature-count show-next-icon ${h(this._layerList)}></layer-list></calcite-panel></calcite-flow-item>`}getChooseCategoryFlowItem(){let e=this.reportingOptions?Object.keys(this.reportingOptions).filter(t=>this.reportingOptions&&this.reportingOptions[t].visible&&this.reportingOptions[t].reporting&&this._layerItemsHash&&this._layerItemsHash[t]&&this._layerItemsHash[t].supportsAdd):[];return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="reporting-layer-list"}><calcite-panel><div class="progress-bar"><calcite-progress type=determinate .value=${this._updatedProgressBarStatus}></calcite-progress></div><calcite-notice class="notice-msg" icon=lightbulb kind=success open><div slot=message>${this._translations.chooseCategoryMsg}</div></calcite-notice><layer-list class="height-full" .layers=${e} .mapView=${this.mapView} @layerSelect=${this.navigateToCreateFeature}></layer-list></calcite-panel></calcite-flow-item>`}getFeatureCreateFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._selectedLayerName} @calciteFlowItemBack=${this.backFromCreateFeaturePanel} .selected=${this._flowItems[this._flowItems.length-1]==="feature-create"}>${this._showSubmitCancelButton&&l`<div class=width-full slot=footer><calcite-button appearance=solid class="footer-top-button footer-button" .disabled=${this._submitNextButtonDisabled} @click=${this._showNextButton?this.onNextButtonClick.bind(this):this.onCreateFeatureSubmitButtonClick.bind(this)} width=full>${this._showNextButton?this._translations.next:this._translations.submit}</calcite-button><calcite-button appearance=outline class=footer-button @click=${this.backFromCreateFeaturePanel} width=full>${this._translations.cancel}</calcite-button></div>`||""}<calcite-panel><div class="progress-bar"><calcite-progress type=determinate .value=${this._updatedProgressBarStatus}></calcite-progress></div><create-feature app-name=reporter .aiImageExtraction=${this.aiImageExtraction} .aiTextExtraction=${this.aiTextExtraction} class="height-full overflow-auto" customize-submit .enableSearch=${this.enableSearch} .enablePhotoLocation=${this.enablePhotoLocation} .enableMessageLocation=${this.enableMessageLocation} .enableSnapping=${this.enableSnapping} .floorLevel=${this.floorLevel} .formElements=${this._formElements.find(e=>e.id===this._selectedLayerId)} .reportingAreaLayer=${this.reportingAreaLayer} .isMobile=${this.isMobile} .mapView=${this.mapView} @drawComplete=${this.onFormReady} @editingLocation=${this.editingLocation} @editingAttachment=${this.showSubmitCancelButton} @fail=${this.createFeatureFailed} @modeChanged=${this.backFromCreateFeaturePanel} @progressStatus=${this.updatedProgressStatus} @success=${this.onReportSubmitted} .searchConfiguration=${this.searchConfiguration} .selectedLayerId=${this._selectedLayerId} .reportingArea=${this.reportingArea} .reportingAreaMessage=${this.reportingAreaMessage} .submitNewReportsMessage=${this.submitNewReportsMessage} update-map-position ${h(this._createFeature)}></create-feature></calcite-panel></calcite-flow-item>`}updatedProgressStatus(e){this._updatedProgressBarStatus=e.detail}onFormReady(e){this._submitNextButtonDisabled=e.detail,this._showSubmitCancelButton=!0}editingLocation(){this._showNextButton=!0}showSubmitCancelButton(e){this._showSubmitCancelButton=!e.detail}onCreateFeatureSubmitButtonClick(){this._createFeature.value&&(this._showNextButton=!1,this._createFeature.value.submit())}backFromCreateFeaturePanel(){this._createFeature.value&&(this._showSubmitCancelButton=!1,this._showNextButton=!1,this.updateNonVisibleLayersOnMap(!1)),this.backFromSelectedPanel()}onNextButtonClick(){this._createFeature.value&&(this._showNextButton=!1,this._showSubmitCancelButton=!0,this._createFeature.value.showForm())}onCreateRelatedFeatureSubmitButtonClick(){this._createRelatedFeature.value&&this._createRelatedFeature.value.submit()}backFromCreateRelatedFeaturePanel(){this._createRelatedFeature.value&&(this._showSubmitCancelButton=!1),this.backFromSelectedPanel()}createFeatureFailed(e){console.error(e.detail),this._showSubmitCancelButton=!1,this._featureCreationFailedErrorMsg=e.detail.message}async onReportSubmitted(){this._showSubmitCancelButton=!1,this.updateNonVisibleLayersOnMap(!1),await this.navigateToHomePage(),this._reportSubmitted=!0,this._updatedProgressBarStatus=25,this._showFullPanel&&this.updatePanelState(this._sidePanelCollapsed,!1)}addCommentFailed(e){console.error(e.detail),this._addingCommentFailed=!0}async onCommentSubmitted(){this._commentSubmitted=!0,this.backFromCreateRelatedFeaturePanel(),this._showLoadingIndicator=!0,this._featureDetails.value&&await this._featureDetails.value.refresh(this._currentFeature),setTimeout(()=>{this._showLoadingIndicator=!1},300)}async navigateToHomePage(){if(await this.setSelectedFeatures([]),this._editableLayerIds.length===1)this._featureList.value&&await this._featureList.value.refresh(),this._flowItems=["feature-list"];else{let e=this.mapView&&await d(this.mapView,this._prevSelectedLayerId);this.floorLevel&&e?.floorInfo?.floorField&&this._updateFloorDefinitionExpression(e),this._layerList.value&&await this._layerList.value.refresh(),this._flowItems=["layer-list"]}}async navigateToCreateFeature(e){e.detail.layerId&&e.detail.layerName&&await this.setSelectedLayer(e.detail.layerId,e.detail.layerName),this.updateNonVisibleLayersOnMap(!0),this._getFormElements(),this._showSubmitCancelButton=!1,this._showNextButton=!1,this.updatePanelState(!1,!0),this._flowItems=[...this._flowItems,"feature-create"]}navigateToChooseCategory(){this.updatePanelState(!1,!0),this._flowItems=[...this._flowItems,"reporting-layer-list"]}updateNonVisibleLayersOnMap(e){this._nonVisibleValidLayers.find(t=>t.id===this._selectedLayerId)&&this._selectedLayer&&this._selectedLayer.set("visible",e)}async layerListLoaded(e){if(this._layerList.value&&this._flowItems[this._flowItems.length-1]==="layer-list"||this._flowItems[0]==="feature-list"){let t=e.detail,i=this.mapView&&await _(this.mapView),s=[];if(this._validLayers=[],this._nonVisibleValidLayers=[],i?.forEach(a=>{t.includes(a.id)&&(this._validLayers.push(a),a.visible||this._nonVisibleValidLayers.push(a),this._getLayersConfig(a.id)?.reporting&&this._layerItemsHash&&this._layerItemsHash[a.id]&&this._layerItemsHash[a.id].supportsAdd&&s.push(a.id))}),this.handleMapClick(),this._hasValidLayers=s.length>0,!this._urlParamsLoaded&&this._editableLayerIds.length>1&&this.layerId&&this.objectId){let a=this.mapView&&await d(this.mapView,this.layerId);a&&await this.displayFeaturesList({detail:{layerId:a.id,layerName:a.title}}),this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams()}}}async displayFeaturesList(e){this._showLoadingIndicator=!0,await this.setSelectedLayer(e.detail.layerId,e.detail.layerName),this.updateSortingOptions(),this.handleSelectedLayersFilter(),this._flowItems=[...this._flowItems,"feature-list"],this._prevSelectedLayerId=this._selectedLayerId,this._showLoadingIndicator=!1}updateSortingOptions(){let e=this.sortOption===""?"newest":this.sortOption,t=e==="oldest"||e==="lowestVoted"||e==="alphabetical"?"asc":"desc",i=this.reportingOptions?.[this._selectedLayerId]?.like?this.reportingOptions?.[this._selectedLayerId]?.likeField:"",s=this._getConfiguredLayerSortInfo(this._selectedLayerId)?.fields?.[0]||"",a=this._selectedLayer&&(e==="newest"||e==="oldest")?this._selectedLayer?.objectIdField:e==="alphabetical"||e==="reverseAlphabetical"?s:i,r=!!i&&(e==="highestVoted"||e==="lowestVoted"),o=!!s&&(e==="alphabetical"||e==="reverseAlphabetical");this._updatedSorting={field:a||"",order:t},this._updatedSortOption=r||o||!(e==="highestVoted"||e==="lowestVoted"||e==="alphabetical"||e==="reverseAlphabetical")?e:"newest"}async backFromFilterPanel(){this._filterList!=null&&(this._currentLayerExpressions=await this._filterList.getCurrentLayerExpressions(),this._showFilterIcon=this._currentLayerExpressions?.length>0),this._featureList.value&&await this._featureList.value.refresh(),this.backFromSelectedPanel()}backFromSelectedPanel(){this._updatedProgressBarStatus=25;let e=[...this._flowItems];if(e[e.length-1]==="comment-details"||e[e.length-1]==="add-comment"||this.clearHighlights(),(e[e.length-1]==="reporting-layer-list"||e[e.length-1]==="feature-create"&&(e[0]==="feature-list"||e[e.length-2]==="feature-list"))&&this.updatePanelState(this._sidePanelCollapsed,!1),e.pop(),e.length===1&&e[0]==="layer-list"){this.navigateToHomePage();return}this._flowItems=[...e]}toggleSidePanel(){this._sidePanelCollapsed=!this._sidePanelCollapsed,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this._showFullPanel})}updatePanelState(e,t){this._sidePanelCollapsed=e,this._showFullPanel=t,this.togglePanel.emit({panelState:this._sidePanelCollapsed,isFormOpen:this._showFullPanel})}async onFeatureSelectFromList(e){await this.setSelectedFeatures([e.detail]),this._flowItems=[...this._flowItems,"feature-details"]}async getRelatedTable(){let e=this._currentFeature?.layer,t=this.mapView&&await f(this.mapView);e.relationships?.some(i=>{let s=t?.filter(a=>e.url===a.url&&a.layerId===i.relatedTableId);return s&&s.length>0?(this._relatedTable=s[0],!0):!1})}async updatingFeatureDetails(e){this._showLoadingIndicator=e}async selectionChanged(e){this.updatingFeatureDetails(!0),await this.setCurrentFeature(e.detail.selectedFeature[0]),this.highlightOnMap(e.detail.selectedFeature[0]),this._selectedFeatureIndex=e.detail.selectedFeatureIndex,this._featureDetails.value&&await this._featureDetails.value.refresh(e.detail.selectedFeature[0])}showAddCommentsPanel(){this._flowItems=[...this._flowItems,"add-comment"]}async onCommentSelectFromList(e){this._selectedRelatedFeature=[e.detail],this._flowItems=[...this._flowItems,"comment-details"]}getFeatureListFlowItem(e,t){let i=this._getLayersConfig(this._selectedLayerId)?.reporting&&this._layerItemsHash&&this._layerItemsHash[this._selectedLayerId].supportsAdd,s=this._showFilterIcon;return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${t} .loading=${!this.isMobile&&this._showLoadingIndicator} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="feature-list"}>${this._toggleSort()}<calcite-action icon=sort-ascending-arrow id=sort-popover slot=header-actions-end .text=${this._translations.sort} title=${this._translations.sort??p}></calcite-action>${s&&l`<calcite-action icon=filter .indicator=${this._filterActive} @click=${()=>{this.isMobile?this._toggleFilter():this._flowItems=[...this._flowItems,"filter-panel"]}} slot=header-actions-end .text=${this._translations.filter} title=${this._translations.filter??p}></calcite-action>`||""}${this.isMobile&&this.getActionToExpandCollapsePanel()||""}${this.enableNewReports&&i&&l`<calcite-button appearance=solid @click=${this.navigateToCreateFeature} slot=footer width=full>${this.reportButtonText?this.reportButtonText:this._translations.createReportButtonText}</calcite-button>`||""}<calcite-panel>${l`<feature-list .applyLayerViewFilter=${this.showMyReportsOnly} class="height-full" .filterByMapExtent=${this.filterByMapExtent} highlight-on-hover .mapView=${this.mapView} .noFeaturesFoundMsg=${this._translations.featureErrorMsg} @featureClick=${()=>{this._showLoadingIndicator=!0}} @featureSelect=${this.onFeatureSelectFromList} page-size=30 .reportingOptions=${this.reportingOptions} .selectedLayerId=${e} show-error-when-no-features .showFeatureSymbol=${this.showFeatureSymbol} .sortingInfo=${this._updatedSorting} ${h(this._featureList)}></feature-list>`}</calcite-panel></calcite-flow-item>`}getFilterPanel(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._translations.filterLayerTitle.replace("{{title}}",this._selectedLayerName)} .loading=${this._showLoadingIndicator} @calciteFlowItemBack=${this.backFromFilterPanel} .selected=${this._flowItems[this._flowItems.length-1]==="filter-panel"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}<div class=width-full slot=footer><div class=width-full slot=footer><calcite-button appearance=solid class="footer-top-button footer-button" .disabled=${!this._filterActive} @click=${this.resetFilterList} width=full>${this._translations.resetFilter}</calcite-button><calcite-button appearance=outline class=footer-button @click=${this.backFromFilterPanel} width=full>${this._translations.close}</calcite-button></div></div><calcite-panel>${this.mapView&&l`<instant-apps-filter-list .closeBtnOnClick=${()=>{}} combobox-overlay-positioning=fixed .layerExpressions=${this._currentLayerExpressions} @filterListReset=${()=>{this._handleFilterListReset()}} @filterUpdate=${()=>{let e=this._filterList?.filterCount;e!==void 0&&this._handleFilterUpdate(e>0)}} .view=${this.mapView} ${h(this._setFilterList)}></instant-apps-filter-list>`||""}</calcite-panel></calcite-flow-item>`}getFeatureDetailsFlowItem(){let e=this._selectedLayer?.relationships,t=this._getLayersConfig(this._selectedLayerId)?.comment&&e&&e.length>0&&this._relatedTable;return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._selectedLayerName} .loading=${this._showLoadingIndicator} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="feature-details"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}${this.mapView&&l`<instant-apps-social-share class=share-node flip-rtl popover-button-icon-scale=s remove-popover-offset scale=m share-button-color=neutral share-button-type=action slot=header-actions-end social-media .view=${this.mapView} ${h(this._shareNode)}></instant-apps-social-share>`||""}${this._selectedFeature.length>1&&this.getFeaturesPagination()||""}<calcite-panel><feature-details class=full-height .enableSnapping=${this.enableSnapping} .graphics=${this._selectedFeature} .layerItemsHash=${this._layerItemsHash} .mapView=${this.mapView} @addComment=${this.showAddCommentsPanel} @commentClick=${()=>{this._showLoadingIndicator=!0}} @commentSelect=${this.onCommentSelectFromList} @featureSelectionChange=${this.selectionChanged} @likeOrDislikeClicked=${()=>{this._featureList.value&&this._featureList.value.refresh(!0)}} @loadingStatus=${i=>{this.updatingFeatureDetails(i.detail)}} .reportingOptions=${this.reportingOptions} .showFullCommentTitle=${this.showFullCommentTitle} .showUserImageInCommentsList=${this.showUserImageInCommentsList} ${h(this._featureDetails)}></feature-details>${t&&l`<calcite-button appearance=solid @click=${this.showAddCommentsPanel} slot=footer width=full>${this.commentButtonText||this._translations.comment}</calcite-button>`||""}</calcite-panel></calcite-flow-item>`}getFeaturesPagination(){return l`<div class="feature-pagination"><div><calcite-button appearance=transparent icon-start=chevron-left icon-flip-rtl=both id=solutions-back .label=${this._translations.back} @click=${()=>this._featureDetails.value&&void this._featureDetails.value.back()} scale=s width=full></calcite-button><calcite-tooltip placement=top reference-element=solutions-back><span>${this._translations.back}</span></calcite-tooltip></div><calcite-button appearance=transparent .label=${this._translations.toggleListView} @click=${()=>this._featureDetails.value&&void this._featureDetails.value.toggleListView()} scale=s><span class="pagination-count">${this._getCount()}</span></calcite-button><div><calcite-button appearance=transparent icon-flip-rtl=both icon-start=chevron-right id=solutions-next .label=${this._translations.next} @click=${()=>this._featureDetails.value&&void this._featureDetails.value.next()} scale=s width=full></calcite-button><calcite-tooltip placement=top reference-element=solutions-next><span>${this._translations.next}</span></calcite-tooltip></div></div>`}getCommentDetailsFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._relatedTable?.title||""} @calciteFlowItemBack=${this.backFromSelectedPanel} .selected=${this._flowItems[this._flowItems.length-1]==="comment-details"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}<calcite-panel><info-card .enableSnapping=${this.enableSnapping} .graphics=${this._selectedRelatedFeature} .mapView=${this.mapView} @selectionChanged=${()=>{this._showLoadingIndicator=!1}}></info-card></calcite-panel></calcite-flow-item>`}getAddCommentFlowItem(){return l`<calcite-flow-item .collapsed=${this.isMobile&&this._sidePanelCollapsed} .heading=${this._relatedTable?.title||""} @calciteFlowItemBack=${this.backFromCreateRelatedFeaturePanel} .selected=${this._flowItems[this._flowItems.length-1]==="add-comment"}>${this.isMobile&&this.getActionToExpandCollapsePanel()||""}<div class=width-full slot=footer>${this._showSubmitCancelButton&&l`<div class=width-full slot=footer><calcite-button appearance=solid class="footer-top-button footer-button" @click=${this.onCreateRelatedFeatureSubmitButtonClick} width=full>${this._translations.submit}</calcite-button><calcite-button appearance=outline class=footer-button @click=${this.backFromCreateRelatedFeaturePanel} width=full>${this._translations.cancel}</calcite-button></div>`||""}</div><calcite-panel><create-related-feature customize-submit .enableSnapping=${this.enableSnapping} .mapView=${this.mapView} @fail=${this.addCommentFailed} @formReady=${this.onFormReady} @isActionPending=${this.showSubmitCancelButton} @success=${this.onCommentSubmitted} .selectedFeature=${this._currentFeature} .table=${this._relatedTable} ${h(this._createRelatedFeature)}></create-related-feature></calcite-panel></calcite-flow-item>`}async setSelectedFeatures(e){this._selectedFeature=e,await this.setCurrentFeature(this._selectedFeature.length?this._selectedFeature[0]:void 0)}async setCurrentFeature(e){if(this._currentFeature=e,e&&e.layer){let t=e.layer;t.title&&this.setSelectedLayer(t.id,t.title),this._currentFeatureId=e.attributes[t.objectIdField],this._getLayersConfig(t.id)?.comment&&t.relationships&&t.relationships.length>0&&await this.getRelatedTable()}else this._editableLayerIds.length>1&&(this.setSelectedLayer("",""),this.handlePrevLayersFilter()),this._currentFeatureId="";this._updateShareURL()}async highlightOnMap(e){if(this.clearHighlights(),e&&e.geometry&&e.layer&&e.layer.id!==void 0){let t=this.mapView&&await m(this.mapView,e.layer.id.toString());if(t){let i=Number(e.getObjectId());this._highlightHandle=this.mapView&&await S([i],t,this.mapView,!0,this.zoomToScale)}}this.updatingFeatureDetails(!1)}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return l`<calcite-action .icon=${this._sidePanelCollapsed?"chevrons-up":"chevrons-down"} @click=${this.toggleSidePanel} slot=header-actions-end .text=${(this._sidePanelCollapsed?this._translations.expand:this._translations.collapse)||""}></calcite-action>`}async setMapView(){this.mapView&&await f(this.mapView),await this.getLayersToShowInList(),await this._updateFeatures(),this._editableLayerIds?.length===1?await this.renderFeaturesList():this._flowItems=["layer-list"],this.mapView&&(this.mapView.popupEnabled=!1,this._defaultCenter&&this._defaultLevel&&(await this.mapView.goTo({center:this._defaultCenter,zoom:this._defaultLevel}),this._defaultCenter=void 0,this._defaultLevel=void 0))}handleMapClick(){this._mapClickHandle&&this._mapClickHandle.remove(),this._mapClickHandle=E.on(()=>this.mapView,"click",e=>{this.mapView&&(this.mapView.popupEnabled=!1),this.onMapClick(e)})}async onMapClick(e){if(!(this._flowItems[this._flowItems.length-1]==="feature-create"||this._flowItems[this._flowItems.length-1]==="add-comment")&&this.mapView){let t=await this.mapView.hitTest(e),i=[],s=[],a=[],r=!1;t.results.length>0&&t.results.forEach(n=>{n.type==="graphic"&&i.push(n.graphic)}),i.length>0&&(await this._setReportingGraphics(i),s=this._getNonReportingLayerGraphics(i)),this._mapImageryLayersId.length>0&&(a=await this._getIdentifiedGraphics(e.mapPoint),r=a.length>0);let o=s.concat(a);if(o.length>0){this.mapView.popupEnabled=!0;let n={features:o,location:e.mapPoint,updateLocationEnabled:!r};await this.mapView.openPopup(n)}}}async _setReportingGraphics(e){let t=e.filter(i=>{if(i.layer?.type==="feature"){let s=i.layer;return this._validLayers.includes(s)}else return!1});this._selectedLayer&&this._selectedFeature.length>0&&this._selectedLayer.id===t[0]?.layer?.id&&t[0].attributes[this._selectedLayer.objectIdField]===this._selectedFeature[0].attributes[this._selectedLayer.objectIdField]||t.length>0&&(await this.setSelectedFeatures(t),this._flowItems.length&&this._flowItems.includes("feature-details")?(this._flowItems=[...this._flowItems.slice(0,this._flowItems.indexOf("feature-details")+1)],await this.highlightOnMap(e[0])):this._flowItems=[...this._flowItems,"feature-details"])}_getNonReportingLayerGraphics(e){return e.filter(t=>{if(t.layer?.type==="feature"){let i=t.layer;return!this._validLayers.includes(i)&&i?.popupEnabled&&i?.id}else return!1})}async _getIdentifiedGraphics(e){let t=new O({geometry:e,tolerance:3,mapExtent:this.mapView?.extent}),i,s=[];for(let r of this._mapImageryLayersId){let o=this.mapView&&await d(this.mapView,r);if(o?.url&&t)try{let n=await k?.identify(o.url,t);if(n?.results?.length){s=n.results,i=o;break}}catch(n){console.error(n)}}let a=[];return s.forEach(r=>{let o=r.layerId,n=i?.sublayers?.items.find(V=>V.id===o),w=n?.popupTemplate;n?.popupEnabled&&w&&(r.feature.popupTemplate=w,a.push(r.feature))}),a}_getCount(){let e=(this._selectedFeatureIndex+1).toString(),t=this._selectedFeature.length.toString();return this._translations.indexOfTotal.replace("{{index}}",e).replace("{{total}}",t)}_updateFloorDefinitionExpression(e){let t=`${e?.floorInfo?.floorField} = '${this.floorLevel}'`,i=e.definitionExpression;e.definitionExpression=i&&i?.indexOf(this._floorExpression)>-1?i.replace(this._floorExpression,t):t,this._floorExpression=t}_getFormElements(){let e=this._selectedLayer;if(e?.floorInfo?.floorField&&this.floorLevel&&e?.formTemplate){let t=this._formElements.find(i=>i.id===e.id);(this._formElements.length===0||!t)&&this._formElements.push({id:e.id,orgElements:e.formTemplate.elements,orgExpressionInfos:e.formTemplate.expressionInfos})}}reduceToConfiguredLayers(e,t){return Object.keys(e).reduce((i,s)=>{let a=this.reportingOptions?this._getLayersConfig(s)?.visible:e[s].supportsAdd;return!t.includes(s)&&a&&i.push(s),i},[])}refreshLists(){setTimeout(()=>{this._layerList.value&&this._flowItems[this._flowItems.length-1]==="layer-list"&&this._layerList.value.refresh(),this._featureList.value&&this._featureList.value.refresh()},50)}async _updateFeatures(){for(let e of this._editableLayerIds){let t=this.mapView&&await m(this.mapView,e);t&&(await this._showMyFeaturesOnly(t),t.layer?.floorInfo?.floorField&&this.floorLevel&&this._updateFloorDefinitionExpression(t.layer))}}async _showMyFeaturesOnly(e){let t=(this.mapView?.map).portalItem.portal?.credential?.userId;if(t&&e){let i=e.layer.editFieldsInfo?.creatorField.toLowerCase();e.filter=this.showMyReportsOnly&&i?new P({where:`${i} = '${t}'`}):null}}async getLayersToShowInList(){let e=this.mapView&&await x(this.mapView,!1),t=this.mapView&&await _(this.mapView),i=[];t?.forEach(s=>{s?.type==="feature"&&s?.editingEnabled&&s?.capabilities?.operations?.supportsAdd&&(e[s.id].supportsAdd=!0),s?.editingEnabled||i.push(s.id)}),this._editableLayerIds=this.reduceToConfiguredLayers(e,i),this._layerItemsHash=e}async renderFeaturesList(){this._flowItems=["feature-list"];let e={detail:this._editableLayerIds};await this.layerListLoaded(e),await this.setSelectedLayer(this._validLayers[0].id,this._validLayers[0]?.title||""),this.updateSortingOptions(),await this.handleSelectedLayersFilter(),this._urlParamsLoaded||(this._urlParamsLoaded=!0,await this.loadFeatureFromURLParams())}_updateShareURL(){let e=this._shareNode.value?.shareUrl;if(!e)return;let t=new URL(e);this._selectedLayerId?t.searchParams.set("layerid",this._selectedLayerId):t.searchParams.delete("layerid"),this._selectedFeature?.length?t.searchParams.set("oid",this._currentFeatureId):t.searchParams.delete("oid"),this._shareNode.value&&(this._shareNode.value.autoUpdateShareUrl=!1,this._shareNode.value.shareUrl=t.href)}async loadFeatureFromURLParams(){if(this.center&&this.level&&await this.mapView?.goTo({center:this.center.split(";").map(Number),zoom:parseInt(this.level,10)}),this.layerId&&this.objectId){let e=this.mapView&&await d(this.mapView,this.layerId);if(e){let t=this.mapView&&await v([Number(this.objectId)],e,[],!0,this.mapView.spatialReference);t?.length&&(await this.setSelectedFeatures(t),this._flowItems.length&&this._flowItems[this._flowItems.length-1]!=="feature-details"?this._flowItems=[...this._flowItems,"feature-details"]:this._flowItems=[...this._flowItems])}}}async handleSelectedLayersFilter(){if(this._selectedLayer){let e=this.layerExpressions?structuredClone(this.layerExpressions.filter(t=>t.id===this._selectedLayerId)):[];this._t9nLayerExpressions!=null&&this.handleLayerExpressionsT9n(e,this._t9nLayerExpressions),this._currentLayerExpressions=e,this._showFilterIcon=this._currentLayerExpressions?.length>0,this.setActiveDefinitionExpressions()}}async handlePrevLayersFilter(){if(this._prevSelectedLayerId){let e=this.mapView&&await d(this.mapView,this._prevSelectedLayerId);e&&this._initDefExpressions&&(e.definitionExpression=this._initDefExpressions[this._prevSelectedLayerId])}}async resetFilterList(){await this._filterList?.forceReset(),this._selectedLayer!==void 0&&this._initDefExpressions&&(this._selectedLayer.definitionExpression=this._initDefExpressions[this._selectedLayerId],this._filterActive=!1)}setActiveDefinitionExpressions(){if(this._selectedLayer===void 0)return;let e=[];if(this._currentLayerExpressions&&this._currentLayerExpressions?.length>0){let t=this._currentLayerExpressions[0];for(let i of t.expressions){let{active:s,definitionExpression:a}=i;s&&a&&e.push(`(${a})`)}this._filterActive=e.length>0,this.updateFilterLayerDefExpression(e,t.operator)}}updateFilterLayerDefExpression(e,t){let i=this._initDefExpressions&&this._initDefExpressions[this._selectedLayerId],s=e?.length>0&&i?`(${e.join(t)}) AND (${i})`:e.length>0?e.join(t):i;this._selectedLayer&&(this._selectedLayer.definitionExpression=s)}setInitExpressions(){if(this._initDefExpressions={},this.mapView==null)return;let e=this.mapView.map;e.allLayers.concat(e.allTables.toArray()).forEach(t=>{if(t.type==="map-image"&&t.popupEnabled&&!this._mapImageryLayersId.includes(t.id)){this._mapImageryLayersId.push(t.id);return}if(t.type!=="feature")return;let i=t;this._initDefExpressions&&(this._initDefExpressions[i.id]=i.definitionExpression||"")})}handleLayerExpressionsT9n(e,t){e?.forEach(i=>{let s=t?.find(a=>a.id===i.id);s!=null&&(i.title=s.title,i.expressions?.forEach(a=>{let r=s.expressions?.find(o=>o.id===a.id);r!=null&&(a.name=r.name)}))})}};F("crowdsource-reporter",g);return g},"core/reactiveUtils","layers/support/FeatureFilter","rest/identify","rest/support/IdentifyParameters",a,d)
|