@esri/solutions-components 5.1.0-next.13 → 5.1.0-next.15
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/{JYM2MD3W.js → 27G6RESZ.js} +1 -1
- package/dist/cdn/{YMWYAWT6.js → 2H7KJUZG.js} +1 -1
- package/dist/cdn/{32EJUXLB.js → 2WPJOTMI.js} +1 -1
- package/dist/cdn/{F346YHSU.js → 2XQOWXMT.js} +1 -1
- package/dist/cdn/{MQ7BT7PK.js → 3ME5BVUE.js} +1 -1
- package/dist/cdn/{WHXMHZL4.js → 3SYLXG32.js} +1 -1
- package/dist/cdn/3WO3DS32.js +2 -0
- package/dist/cdn/{B44OQSYO.js → 4GHX4MVD.js} +26 -26
- package/dist/cdn/{DB763WGF.js → 4L3MVJ5S.js} +1 -1
- package/dist/cdn/{QAVXLETM.js → 4NALIU6Y.js} +1 -1
- package/dist/cdn/{GYPII3T6.js → 57DOBXD6.js} +1 -1
- package/dist/cdn/{ITRKZRX7.js → 5FKEDJRU.js} +1 -1
- package/dist/cdn/{TZHUM4R4.js → 5GIHSPJZ.js} +1 -1
- package/dist/cdn/{CEKMYC3I.js → 5TZ7Q4JG.js} +1 -1
- package/dist/cdn/{Q7AXKKIB.js → 66Q5IRVS.js} +1 -1
- package/dist/cdn/{YG7D2NB5.js → 6DLDJH6I.js} +1 -1
- package/dist/cdn/{3E6HSVYO.js → 6G7RA3PN.js} +1 -1
- package/dist/cdn/{YMETU3CL.js → 6UXP2Q63.js} +1 -1
- package/dist/cdn/{XTEP3QJL.js → 74557KPJ.js} +1 -1
- package/dist/cdn/{C75PU7NQ.js → 7DHQVMKX.js} +1 -1
- package/dist/cdn/{ZMNHA5KF.js → 7J2VRW7S.js} +1 -1
- package/dist/cdn/{ADR7DVCB.js → 7ZMHT4SH.js} +1 -1
- package/dist/cdn/{MKR5FDTV.js → A2LNKTGU.js} +1 -1
- package/dist/cdn/{7SIPKCWY.js → A5STEAY7.js} +1 -1
- package/dist/cdn/{XNH7HCKE.js → AC3MHBPK.js} +1 -1
- package/dist/cdn/{UM2FREW7.js → AF2YWYJQ.js} +1 -1
- package/dist/cdn/AGC6ZWMH.js +2 -0
- package/dist/cdn/{VEU3WZUI.js → AT2EES2R.js} +1 -1
- package/dist/cdn/{2BJD5X34.js → ATVUAP2X.js} +1 -1
- package/dist/cdn/{VCGFT6NM.js → BK3QFV3M.js} +1 -1
- package/dist/cdn/{4JXVKICV.js → C44FH5Z2.js} +1 -1
- package/dist/cdn/{3BWIMFV4.js → D4QQZVLI.js} +1 -1
- package/dist/cdn/{4VFE4GPI.js → DMRQFYLJ.js} +16 -16
- package/dist/cdn/DQV46RIT.js +2 -0
- package/dist/cdn/{WFB4USZL.js → DZLVEIWW.js} +1 -1
- package/dist/cdn/{NA7S3IMW.js → E57JPXDR.js} +1 -1
- package/dist/cdn/{TAYHORLE.js → EGFXSDFS.js} +1 -1
- package/dist/cdn/{UAQ3H67J.js → EJRSL3ID.js} +1 -1
- package/dist/cdn/{HZ6P3WVH.js → EPRDKJSD.js} +1 -1
- package/dist/cdn/{WNI44LDP.js → FFDZB5TW.js} +1 -1
- package/dist/cdn/{4NMQFFJ5.js → FV7G3BY6.js} +1 -1
- package/dist/cdn/{3I5UIOSI.js → FXHBHZKG.js} +1 -1
- package/dist/cdn/{TXLUSSRB.js → FZ7WJ3YG.js} +1 -1
- package/dist/cdn/{ZC3SWVD4.js → GTKRTZK6.js} +1 -1
- package/dist/cdn/{WIC2XPT4.js → IDNTGLQU.js} +1 -1
- package/dist/cdn/{MS4ASDJL.js → IKN5RLJ4.js} +1 -1
- package/dist/cdn/{BFXJESYN.js → IORIFDK6.js} +1 -1
- package/dist/cdn/{7B5EP3RI.js → IUPEGG4M.js} +1 -1
- package/dist/cdn/{3HALRHHO.js → K5JYHCQ7.js} +1 -1
- package/dist/cdn/{2W6HTIBW.js → K5VEUOS3.js} +1 -1
- package/dist/cdn/{ZDMOQS37.js → K7XOFXRK.js} +1 -1
- package/dist/cdn/{XAFSYKI2.js → KKYXQLBJ.js} +1 -1
- package/dist/cdn/{U6NFJYPT.js → KZDTATOG.js} +1 -1
- package/dist/cdn/{HUF4HX5R.js → LCWLPXAF.js} +1 -1
- package/dist/cdn/{PFLQDK3I.js → LD2NUKM3.js} +1 -1
- package/dist/cdn/{7GNDNQTX.js → LDHJGX5G.js} +1 -1
- package/dist/cdn/{YJMAWMEK.js → LO5Q55JH.js} +1 -1
- package/dist/cdn/{LR6VDEBR.js → M4OPXH3T.js} +1 -1
- package/dist/cdn/{G7XCRE3X.js → MFJF6OXL.js} +1 -1
- package/dist/cdn/{EXMZUQW5.js → MWVSVTGT.js} +1 -1
- package/dist/cdn/{Q5T633MH.js → N2ROUAUM.js} +1 -1
- package/dist/cdn/{GTDHYS64.js → NGCFEPQE.js} +1 -1
- package/dist/cdn/{3TYPFWRB.js → NM3YBQUM.js} +1 -1
- package/dist/cdn/{K344PR7N.js → NOOFAZCT.js} +1 -1
- package/dist/cdn/{VZPEYWYR.js → NWTG35WX.js} +1 -1
- package/dist/cdn/{7CXQ3R3O.js → NZS3YVIT.js} +1 -1
- package/dist/cdn/{SEDPMCMZ.js → OC2DD3AB.js} +1 -1
- package/dist/cdn/{JGU6J5IA.js → P5Q3LVYT.js} +1 -1
- package/dist/cdn/{AI3I2TOG.js → QMD2WK5F.js} +1 -1
- package/dist/cdn/{XYOCI4UP.js → QQSP7HQH.js} +1 -1
- package/dist/cdn/{TER4MTK6.js → RNTJMF4O.js} +1 -1
- package/dist/cdn/SENL26AU.js +3 -0
- package/dist/cdn/{T2FOSTMH.js → SIUUQBL4.js} +1 -1
- package/dist/cdn/{YIQVAISO.js → SXD7ZWLW.js} +1 -1
- package/dist/cdn/{MZDSTI7I.js → TP5EQUBD.js} +1 -1
- package/dist/cdn/{PFKPNZ5Q.js → TRJ6EQRD.js} +1 -1
- package/dist/cdn/{4HGP3Y4K.js → U3LEZXNT.js} +1 -1
- package/dist/cdn/{CF35YGUK.js → ULXATJK5.js} +1 -1
- package/dist/cdn/{TZ73WV5T.js → UME5GDA2.js} +1 -1
- package/dist/cdn/{4FBEUQIB.js → USM62FP5.js} +1 -1
- package/dist/cdn/VFC4CM23.js +2 -0
- package/dist/cdn/{2CFQ6EQE.js → VJYMTG4U.js} +1 -1
- package/dist/cdn/{GEKZO6V7.js → VRE7NUZ2.js} +1 -1
- package/dist/cdn/{2H3VIDNQ.js → WMPUJYLT.js} +1 -1
- package/dist/cdn/{BPVYL3DJ.js → XC7LLCVS.js} +1 -1
- package/dist/cdn/{CI7CDZL3.js → XCILPMDZ.js} +1 -1
- package/dist/cdn/{42736UND.js → XKDPK7SD.js} +1 -1
- package/dist/cdn/{3P3PF3BO.js → XTDFTH5X.js} +1 -1
- package/dist/cdn/{ZIAMLGUC.js → XTUL7OCR.js} +1 -1
- package/dist/cdn/{BJ6JU4AF.js → Y6I6QW4M.js} +1 -1
- package/dist/cdn/{KV4JOMXV.js → YMOLIY64.js} +1 -1
- package/dist/cdn/{XGFCUKM7.js → Z6H6J4QH.js} +1 -1
- package/dist/cdn/{RTUAITMO.js → ZDQANIMG.js} +1 -1
- package/dist/cdn/{C7XBKLRJ.js → ZVFUYLAQ.js} +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/Auth.js +45 -27
- package/dist/chunks/cardFetchingUtils.js +7 -7
- package/dist/chunks/cardsHelpers.js +5 -5
- package/dist/chunks/getRelatedInfos.js +1 -1
- package/dist/chunks/{interfaces.js → helpers.js} +196 -195
- package/dist/chunks/solution-deploy-dialog.js +1 -1
- package/dist/chunks/solutions-deploy-app-nav.js +38 -37
- package/dist/components/arcgis-solutions-assistant/customElement.js +14 -14
- package/dist/components/create-feature/customElement.js +1 -1
- package/dist/components/layer-list/customElement.js +1 -1
- package/dist/components/layer-table/customElement.js +1 -1
- package/dist/components/map-card/customElement.js +1 -1
- package/dist/components/solution-configure-titles/customElement.js +1 -1
- package/dist/components/solution-delete-dialog/customElement.js +5 -5
- package/dist/components/solution-deploy-dialog/customElement.js +1 -1
- package/dist/components/solution-deployed-card/customElement.js +1 -1
- package/dist/components/solution-deployed-card-panel/customElement.js +4 -4
- package/dist/components/solution-details-card/customElement.js +1 -1
- package/dist/components/solution-details-panel/customElement.js +4 -4
- package/dist/components/solution-resource-card/customElement.js +1 -1
- package/dist/components/solution-snapshot-gallery/customElement.js +1 -1
- package/dist/components/solution-social-share/customElement.js +1 -1
- package/dist/components/solution-user-avatar/customElement.js +1 -1
- package/dist/components/solutions-all-panel/customElement.js +1 -1
- package/dist/components/solutions-all-shell/customElement.js +1 -1
- package/dist/components/solutions-deploy-app/customElement.js +2 -1
- package/dist/components/solutions-deploy-app-nav/customElement.js +1 -1
- package/dist/components/solutions-deployed-panel/customElement.js +1 -1
- package/dist/components/solutions-deployed-shell/customElement.js +1 -1
- package/dist/components/solutions-filter-panel/customElement.d.ts +4 -1
- package/dist/components/solutions-filter-panel/customElement.js +13 -11
- package/dist/components/solutions-searchsort-toolbar/customElement.d.ts +2 -2
- package/dist/components/solutions-searchsort-toolbar/customElement.js +1 -1
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/index.js +1 -1
- package/dist/solutions-components_commit.txt +5 -8
- package/dist/types/lumina.d.ts +1 -0
- package/dist/types/preact.d.ts +1 -0
- package/dist/types/react.d.ts +1 -0
- package/dist/types/stencil.d.ts +1 -0
- package/dist/utils/Auth.d.ts +8 -1
- package/dist/utils/interfaces.d.ts +1 -0
- package/package.json +1 -1
- package/dist/cdn/5GYYSZKG.js +0 -2
- package/dist/cdn/CPMMNWOL.js +0 -3
- package/dist/cdn/JE4LGN6P.js +0 -2
- package/dist/cdn/OVKFYACI.js +0 -2
- package/dist/cdn/TM75STGN.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import e from"./5KD4GK7Y.js";import c from"./P4FX4W2X.js";import b from"./KGUELU4O.js";import a from"./36HEIJAI.js";import{a as m}from"./AA7X6GKH.js";import{b as h}from"./
|
|
2
|
+
import e from"./5KD4GK7Y.js";import c from"./P4FX4W2X.js";import b from"./KGUELU4O.js";import a from"./36HEIJAI.js";import{a as m}from"./AA7X6GKH.js";import{b as h}from"./EGFXSDFS.js";import"./S423P2GA.js";import{F as r,G as o,H as p,J as i,h as d,i as t}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([,,{b:c},{r:y}])=>{var f=d`:host{display:block}:host .esri-legend__layer-table,:host .instant-apps-interactive-legend__nested-unique-symbol{margin:0}:host .hide{display:none}`,e={layerTableSizeRamp:"esri-legend__layer-table--size-ramp",layerChildTable:"esri-legend__layer-child-table",layerTable:"esri-legend__layer-table",nestedUniqueSymbol:"instant-apps-interactive-legend__nested-unique-symbol",nonInteractive:"instant-apps-interactive-legend__non-interactive"},n=class extends p{constructor(){super(),this.legendLayerCaption=r(),this.expanded=!0,this.titleText="",this.listenOn(window,"legendLayerExpandUpdated",this.legendLayerExpandUpdatedEmitted)}static{this.properties={expanded:16,activeLayerInfo:0,isSizeRamp:5,isChild:5,isColorRamp:5,isRelationshipRamp:5,isInteractive:5,zoomTo:5,legendElement:0,titleText:1,legendvm:0,legendElementIndex:9}}static{this.styles=f}legendLayerExpandUpdatedEmitted(){this.legendLayerCaption.value&&(this.expanded=this.legendLayerCaption.value.expanded)}render(){let g=this.isChild?e.layerChildTable:e.layerTable,a=this.legendElement?.infos?.length===1&&!this.activeLayerInfo?.layer?.renderer?.field,v=(this.isSizeRamp||!this.isChild)&&!this.isColorRamp?` ${e.layerTableSizeRamp}`:"",$=this.isInteractive?"":` ${e.nonInteractive}`,x=y(this.activeLayerInfo)?` ${e.nestedUniqueSymbol}`:"",s=a&&!this.expanded&&!this.zoomTo?!0:this.expanded;if(this.isRelationshipRamp){let l=c.get("relationshipRampExpandStates")[this.activeLayerInfo.layer.id];s=l===void 0?!0:l}return t`<div class=${`${g}${v}${$}${x}`}><div .id=${`${this.activeLayerInfo?.layer?.id}-legend-element-caption`} class=${i(this.isRelationshipRamp||!this.titleText&&!this.zoomTo&&a?"hide":"show")}><instant-apps-interactive-legend-legend-element-caption .legendvm=${this.legendvm} .activeLayerInfo=${this.activeLayerInfo} .layer=${this.activeLayerInfo.layer} .titleText=${this.titleText} .legendElement=${this.legendElement} .legendElementIndex=${this.legendElementIndex} .zoomTo=${this.zoomTo} .isInteractive=${this.isInteractive} ${o(this.legendLayerCaption)}></instant-apps-interactive-legend-legend-element-caption></div>${m("content",t`<div .id=${`${this.activeLayerInfo?.layer?.id}-legend-element-content-${this.legendElementIndex}`} class=${i(s?"show":"hide")}><slot name=content></slot></div>`)}</div>`}};h("instant-apps-interactive-legend-legend-element",n);return n},a,b,c,e)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as w}from"./AA7X6GKH.js";import{a as M}from"./PYBOC3DB.js";import{a as C}from"./3TYPFWRB.js";import{b as S}from"./TAYHORLE.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import{H as D,J as y,h as E,i as p,l as x,r as k}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([m,P,$,B])=>{var o={Loading:"loading",Disabled:"disabled",Complete:"complete",Calculating:"calculating",Bottom:"bottom",Left:"left",Floating:"floating"},g={Up:"chevron-up",Down:"chevron-down",Left:"chevron-left",Right:"chevron-right",Blank:"blank"},U={Small:"s",Large:"l"},A={Transparent:"transparent"},F={Start:"start",Center:"center"},N=E`:host{display:block;--instant-apps-scoreboard-background-color: var(--calcite-color-foreground-1);--instant-apps-scoreboard-text-color: var(--calcite-color-text-1);--instant-apps-scoreboard-mobile-position-bottom: 0;background-color:var(--instant-apps-scoreboard-background-color);color:var(--instant-apps-scoreboard-text-color)}:host .instant-apps-scoreboard{box-sizing:border-box;border:1px solid var(--calcite-color-border-1);box-shadow:0 3px 15px #0003;border-radius:3px}:host .instant-apps-scoreboard calcite-loader{--calcite-loader-padding: 1rem}:host .instant-apps-scoreboard__items-container{display:flex}:host .instant-apps-scoreboard__items-container calcite-action{height:100%}:host .instant-apps-scoreboard__items,:host .instant-apps-scoreboard__item{box-sizing:border-box;display:flex}:host .instant-apps-scoreboard__items{list-style-type:none;padding-left:0;margin:0;padding-top:1.75%;padding-bottom:1.75%;width:100%}:host .instant-apps-scoreboard__item{flex-direction:column;justify-content:flex-end;align-items:center;padding:1%}:host .instant-apps-scoreboard__item-label{box-sizing:border-box;line-height:24px;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;word-break:break-word}:host .instant-apps-scoreboard__item-label{font-size:1rem;font-weight:400;text-align:center}:host .instant-apps-scoreboard__item-value{display:flex;justify-content:center;align-items:center;min-width:32px;min-height:32px;margin-top:5px;font-size:1.5rem;font-weight:900}:host .instant-apps-scoreboard__item-value-placeholder{display:inline-block;width:32px;height:32px;background-color:var(--calcite-color-foreground-3);border-radius:4px}:host(.instant-apps-scoreboard__position--bottom){bottom:0}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__items{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__item{min-width:10vw;vertical-align:top}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating){left:50%;max-width:calc(100% - 30px);transform:translate(-50%,-15px)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:25vw}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){left:unset;bottom:0;transform:unset;width:100%}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{min-width:unset}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{width:100%;justify-content:space-between}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard{display:flex;justify-content:center;align-items:center;width:10vw;overflow-y:auto}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container{flex-direction:column;height:100%;box-sizing:border-box}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container calcite-action{height:unset;width:100%}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items{flex-direction:column;padding:10px}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__item{padding-top:.5vh;padding-bottom:.5vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating){top:15px;left:15px;max-height:calc(100% - 30px)}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:10vw;min-height:35vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned){top:unset;left:unset;transform:unset;height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{justify-content:space-between}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--floating){left:15px}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--floating){left:unset;right:15px}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--pinned){left:0}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--pinned){left:unset;right:0}@media only screen and (min-width:992px){:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){bottom:var(--instant-apps-scoreboard-mobile-position-bottom)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__item{justify-content:center;min-width:unset;flex-grow:1}}`,v="instant-apps-scoreboard",O=6,T=`${v}--`,h=`${v}__`,j=M.medium[1],n={itemsContainer:`${h}items-container`,items:`${h}items`,item:`${h}item`,label:`${h}item-label`,value:`${h}item-value`,valuePlaceholder:`${h}item-value-placeholder`,position:{bottom:`${h}position--bottom`,side:`${h}position--side`,left:`${h}position--left`,right:`${h}position--right`},mode:{floating:`${h}mode--floating`,pinned:`${h}mode--pinned`}},I=class extends D{constructor(){super(...arguments),this._messages=C({name:"instant-apps-scoreboard"}),this.state=o.Loading,this.itemIndex=0,this.isMobile=!1,this.position=o.Bottom,this.mode=o.Floating,this.itemLimit=6,this.autoDockEnabled=!0,this.geometry=null,this.queryType="layerView",this.scoreboardItemsUpdated=k()}static{this.properties={state:16,itemIndex:16,layers:16,layerViews:16,isMobile:16,view:0,items:0,position:1,mode:1,itemLimit:9,autoDockEnabled:5,geometry:0,queryType:1}}static{this.styles=N}get checkMobile(){let t=this.el?.parentElement?.offsetWidth;return t&&!Number.isNaN(t)&&t>0?t<j:!1}get getItemsToDisplay(){let t=this.getItemLimit();return this.items.filter(e=>e.visible).slice(this.itemIndex,t+this.itemIndex)}get isEnd(){let t=this.getItemLimit(),e=this.items.slice(this.items.length-t).map(s=>s.uid),a=this.items.slice(this.itemIndex,this.itemIndex+t).map(s=>s.uid);return e.every((s,l)=>s===a[l])}async load(){let t=new ResizeObserver(()=>{this.itemIndex=0,this.autoDockEnabled&&(this.isMobile=!!this.checkMobile)});if(this.el?.parentElement&&t.observe(this.el.parentElement),!this.view||!this.items)this.state=o.Disabled;else try{await this.initModules()}catch{this.state=o.Disabled}}willUpdate(t){t.has("items")&&this.generateUIDs(),t.has("items")&&this.storeLayers(),t.has("layers")&&this.storeLayerViews(),t.has("geometry")&&(this.hasUpdated||this.geometry!==null)&&this.calculateScoreboardItemValuesFromGeometry(),t.has("layerViews")&&this.calculateScoreboardItemValues()}async loaded(){if(this.state!==o.Disabled)try{await m?.whenOnce(()=>this.view?.ready),this.generateUIDs(),await this.loadMapResources(),this.storeLayers(),this.initViewUpdateWatcher()}catch{this.state=o.Disabled,console.error(`${v}: FAILED TO LOAD MAP RESOURCES`)}}disconnectedCallback(){super.disconnectedCallback(),this.state=o.Disabled,this.itemIndex=0,this.layers?.removeAll(),this.layers?.destroy(),this.layers=null,this.layerViews?.removeAll(),this.layerViews?.destroy(),this.layerViews=null,this.handles?.removeAll(),this.handles?.destroy(),this.handles=null}scoreboardItemsUpdatedHandler(){this.scoreboardItemsUpdated.emit(this.items)}generateUIDs(){this.itemIndex=0,this.items.forEach(this.generateUID())}async storeLayers(){this.state=o.Calculating,await(this.view?.map).loadAll();let t=this.items.map(i=>i?.layer?.id),e=i=>i.type!=="feature"||!i.isTable,a=i=>i.type==="feature"||i.type==="scene",s=i=>t.includes(i.id),l=i=>e(i)&&a(i)&&s(i);this.layers=this.view?.map?.allLayers?.filter(i=>l(i)),this.watchLayerVisibility()}async storeLayerViews(){if(this.layers&&this.layers.length>0){this.layers.forEach(s=>s.outFields=["*"]);let t=[];this.layers.forEach(s=>{let l=s,i=this.view?.whenLayerView(l);t.push(i)});let e=(await Promise.allSettled(t)).filter(s=>s.status==="fulfilled"&&s.value).map(s=>s.value),a=[];e.forEach(s=>a.push(m.whenOnce(()=>!s.updating))),await Promise.all(a),this.layerViews=new $([...e])}}calculateScoreboardItemValuesFromGeometry(){this.calculateScoreboardItemValues()}async calculateScoreboardItemValues(){if(this.layers&&this.layers.length===0||this.layerViews&&this.layerViews.length===0)return;this.state=o.Calculating;let t=[...this.items],e=[];this.queryStatDefinitions(t,e);let a=await Promise.all(e);this.handleQueryFeaturesResponses(a,t),this.items.length=0,t.forEach(s=>this.items.push(s)),this.state=o.Complete,this.scoreboardItemsUpdatedHandler(),this.initStationaryWatcher()}async initModules(){try{this.handles=new B,this.layers=new $([]),this.layerViews=new $([])}catch(t){throw console.error(t),this.state=o.Disabled,new Error("Failed to initialize modules")}}async loadMapResources(){if(this.view){let{map:t}=this.view,e=t;try{await e.loadAll()}catch(a){throw console.error(a),this.state=o.Disabled,new Error("Failed to load map resources")}}}generateUID(){return t=>{let e=Math.random(),a=Math.floor(Math.random()*10)+11,s=e.toString(a).replace("0.","");t.uid=s}}previousItem(){this.itemIndex=this.itemIndex-1}nextItem(){this.itemIndex=this.itemIndex+1}queryStatDefinitions(t,e){let a=i=>{let{field:r,operation:d}=i,c=r,b=`${r}_${d}`;return{onStatisticField:c,outStatisticFieldName:b,statisticType:d}},s=(i,r)=>{let d=this.queryType==="layer"?i.layer.createQuery():i.createQuery(),c=[r],b=this.geometry??this.view?.extent;d.outStatistics=c,d.geometry=b;let u=i?.filter?.timeExtent??i?.featureEffect?.filter?.timeExtent??null;return u&&(d.timeExtent=u),d},l=()=>async i=>{let r=this.layerViews?.find(u=>u.layer.id===i?.layer?.id);if(!r)return;let d=a(i),c=s(r,d),b=this.queryType==="layer"?r.layer.queryFeatures(c):r.queryFeatures(c);e.push(b)};t.forEach(l())}handleQueryFeaturesResponses(t,e){let a=i=>{let r=i.features[0],{attributes:d}=r;return Object.values(d)[0]},s=()=>({notation:"compact",compactDisplay:"short"}),l=()=>(i,r)=>{let d=a(i),c=s(),b=d!==null,u=b?P.formatNumber(d,c):null,_=b?`${u}`:"";e[r].displayValue=_,e[r].value=d};t.forEach(l())}initStationaryWatcher(){let t={once:!0,initial:!0},e=()=>m.when(()=>!this.view?.interacting,()=>{this.queryType==="layerView"&&this.calculateScoreboardItemValues()},t),a=()=>m.when(()=>this.view?.stationary,()=>e()),s="stationary-watcher-key";this.handles?.has(s)&&this.handles.remove(s),this.handles?.add(a(),s)}initViewUpdateWatcher(){return m.watch(()=>this.view?.updating,()=>{m.when(()=>!this.view?.updating,()=>{this.queryType==="layerView"&&this.calculateScoreboardItemValues()},{once:!0,initial:!0})},{initial:!0})}watchLayerVisibility(){if(!this.layers)return;let t="visbilityWatcherKey";this.handles?.remove(t);let e=[],a=s=>{let l=async()=>{let r=await this.view?.whenLayerView(s);await m.whenOnce(()=>!r?.updating),this.calculateScoreboardItemValues()},i=m.watch(()=>s?.visible,async()=>await l());e.push(i)};this.layers.forEach(a),this.handles?.add([...e],t)}getItemLimit(){return this.itemLimit<2||this.itemLimit>6?O:this.itemLimit}setHostClassNames(){this.isMobile||this.position===o.Bottom?(this.el.classList.remove(n.position.side,n.position.left,n.position.right),this.el.classList.add(n.position.bottom)):(this.el.classList.remove(n.position.bottom),this.el.classList.add(n.position.side),this.position===o.Left?(this.el.classList.remove(n.position.right),this.el.classList.add(n.position.left)):(this.el.classList.remove(n.position.left),this.el.classList.add(n.position.right))),this.isMobile?(this.el.classList.remove(n.mode.floating),this.el.classList.add(n.mode.pinned)):this.mode===o.Floating?(this.el.classList.remove(n.mode.pinned),this.el.classList.add(n.mode.floating)):this.el.classList.add(n.mode.pinned)}render(){let{state:t}=this,e=t===o.Loading,a=t===o.Calculating,s=t===o.Disabled,l=e||a||this.queryType==="layerView"&&this.view?.updating?this.renderProgress():null;return this.setHostClassNames(),s?null:[l,this.items?.length>0?this.renderBase():null]}renderBase(){return w("instant-apps-scoreboard-base",p`<div class=${y(v)}>${this.renderContent()}</div>`)}renderContent(){let{state:t}=this;return t===o.Loading?this.renderLoader():t===o.Calculating||t===o.Complete?this.renderItemsContainer():null}renderItemsContainer(){let[t,e]=this.renderPreviousNextButtons();return p`<div class=${y(n.itemsContainer)}>${t}${this.renderItems()}${e}</div>`}renderPreviousNextButtons(){let t=this.getItemLimit(),e=this.items.filter(q=>q.visible)?.length<=t,a=this.itemIndex===0,s=this.isEnd,l=this.isMobile?!0:this.position===o.Bottom,i=l?F.Start:F.Center,r=l?g.Left:g.Up,d=l?g.Right:g.Down,c={previous:r,next:d},b=a||e?g.Blank:c.previous,u=s||e?g.Blank:c.next,_={previous:a||e,next:s||e},L=A.Transparent,V=this.isMobile?U.Small:U.Large,f={previous:this._messages.previous,next:this._messages.next};return[p`<calcite-action @click=${this.previousItem} .icon=${b} .disabled=${_.previous} .alignment=${i} .scale=${V} .appearance=${L} .text=${f.previous??""} .label=${f.previous}></calcite-action>`,p`<calcite-action @click=${this.nextItem} .icon=${u} .disabled=${_.next} .alignment=${i} .scale=${V} .appearance=${L} .text=${f.next??""} .label=${f.next}></calcite-action>`]}renderItems(){let{items:t}=n,e=this.getItemsToDisplay.map(a=>this.renderItem(a));return p`<ul class=${y(t)}>${e}</ul>`}renderItem(t){let{label:e}=t;return p`<li class=${y(n.item)}><span class=${y(n.label)} title=${e??x}>${e}</span>${this.renderValue(t)}</li>`}renderValue(t){let{displayValue:e}=t,a=this.state===o.Calculating,s=this.state===o.Disabled,l=e===void 0&&a,i=e||this._messages.NA,r=!this.layers?.find(c=>t?.layer?.id===c.id)?.visible,d=l?this.renderValuePlaceholder():s?"":r?p`<calcite-icon icon=view-hide scale=l title=${this._messages.layerVisibilityOff??x}></calcite-icon>`:i;return p`<span class=${y(n.value)}>${d}</span>`}renderValuePlaceholder(){return p`<span class=${y(n.valuePlaceholder)}></span>`}renderProgress(){let t=`${T}calcite-`;return w(`${t}progress`,p`<calcite-progress type=indeterminate></calcite-progress>`)}renderLoader(){let t=`${T}calcite-`,e=this._messages.loading;return w(`${t}loader`,p`<calcite-loader .label=${e??""} .text=${e} scale=m></calcite-loader>`)}};S("instant-apps-scoreboard",I);return I},"core/reactiveUtils","intl","core/Collection","core/Handles")
|
|
2
|
+
import{a as w}from"./AA7X6GKH.js";import{a as M}from"./PYBOC3DB.js";import{a as C}from"./NM3YBQUM.js";import{b as S}from"./EGFXSDFS.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import{H as D,J as y,h as E,i as p,l as x,r as k}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([m,P,$,B])=>{var o={Loading:"loading",Disabled:"disabled",Complete:"complete",Calculating:"calculating",Bottom:"bottom",Left:"left",Floating:"floating"},g={Up:"chevron-up",Down:"chevron-down",Left:"chevron-left",Right:"chevron-right",Blank:"blank"},U={Small:"s",Large:"l"},A={Transparent:"transparent"},F={Start:"start",Center:"center"},N=E`:host{display:block;--instant-apps-scoreboard-background-color: var(--calcite-color-foreground-1);--instant-apps-scoreboard-text-color: var(--calcite-color-text-1);--instant-apps-scoreboard-mobile-position-bottom: 0;background-color:var(--instant-apps-scoreboard-background-color);color:var(--instant-apps-scoreboard-text-color)}:host .instant-apps-scoreboard{box-sizing:border-box;border:1px solid var(--calcite-color-border-1);box-shadow:0 3px 15px #0003;border-radius:3px}:host .instant-apps-scoreboard calcite-loader{--calcite-loader-padding: 1rem}:host .instant-apps-scoreboard__items-container{display:flex}:host .instant-apps-scoreboard__items-container calcite-action{height:100%}:host .instant-apps-scoreboard__items,:host .instant-apps-scoreboard__item{box-sizing:border-box;display:flex}:host .instant-apps-scoreboard__items{list-style-type:none;padding-left:0;margin:0;padding-top:1.75%;padding-bottom:1.75%;width:100%}:host .instant-apps-scoreboard__item{flex-direction:column;justify-content:flex-end;align-items:center;padding:1%}:host .instant-apps-scoreboard__item-label{box-sizing:border-box;line-height:24px;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;word-break:break-word}:host .instant-apps-scoreboard__item-label{font-size:1rem;font-weight:400;text-align:center}:host .instant-apps-scoreboard__item-value{display:flex;justify-content:center;align-items:center;min-width:32px;min-height:32px;margin-top:5px;font-size:1.5rem;font-weight:900}:host .instant-apps-scoreboard__item-value-placeholder{display:inline-block;width:32px;height:32px;background-color:var(--calcite-color-foreground-3);border-radius:4px}:host(.instant-apps-scoreboard__position--bottom){bottom:0}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__items{display:flex;justify-content:center}:host(.instant-apps-scoreboard__position--bottom) .instant-apps-scoreboard__item{min-width:10vw;vertical-align:top}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating){left:50%;max-width:calc(100% - 30px);transform:translate(-50%,-15px)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:25vw}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){left:unset;bottom:0;transform:unset;width:100%}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{min-width:unset}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{width:100%;justify-content:space-between}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard{display:flex;justify-content:center;align-items:center;width:10vw;overflow-y:auto}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container{flex-direction:column;height:100%;box-sizing:border-box}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items-container calcite-action{height:unset;width:100%}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__items{flex-direction:column;padding:10px}:host(.instant-apps-scoreboard__position--side) .instant-apps-scoreboard__item{padding-top:.5vh;padding-bottom:.5vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating){top:15px;left:15px;max-height:calc(100% - 30px)}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--floating) .instant-apps-scoreboard{min-width:10vw;min-height:35vh}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned){top:unset;left:unset;transform:unset;height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard{height:100%}:host(.instant-apps-scoreboard__position--side.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__items-container{justify-content:space-between}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--floating){left:15px}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--floating){left:unset;right:15px}:host(.instant-apps-scoreboard__position--left.instant-apps-scoreboard__mode--pinned){left:0}:host(.instant-apps-scoreboard__position--right.instant-apps-scoreboard__mode--pinned){left:unset;right:0}@media only screen and (min-width:992px){:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned){bottom:var(--instant-apps-scoreboard-mobile-position-bottom)}:host(.instant-apps-scoreboard__position--bottom.instant-apps-scoreboard__mode--pinned) .instant-apps-scoreboard__item{justify-content:center;min-width:unset;flex-grow:1}}`,v="instant-apps-scoreboard",O=6,T=`${v}--`,h=`${v}__`,j=M.medium[1],n={itemsContainer:`${h}items-container`,items:`${h}items`,item:`${h}item`,label:`${h}item-label`,value:`${h}item-value`,valuePlaceholder:`${h}item-value-placeholder`,position:{bottom:`${h}position--bottom`,side:`${h}position--side`,left:`${h}position--left`,right:`${h}position--right`},mode:{floating:`${h}mode--floating`,pinned:`${h}mode--pinned`}},I=class extends D{constructor(){super(...arguments),this._messages=C({name:"instant-apps-scoreboard"}),this.state=o.Loading,this.itemIndex=0,this.isMobile=!1,this.position=o.Bottom,this.mode=o.Floating,this.itemLimit=6,this.autoDockEnabled=!0,this.geometry=null,this.queryType="layerView",this.scoreboardItemsUpdated=k()}static{this.properties={state:16,itemIndex:16,layers:16,layerViews:16,isMobile:16,view:0,items:0,position:1,mode:1,itemLimit:9,autoDockEnabled:5,geometry:0,queryType:1}}static{this.styles=N}get checkMobile(){let t=this.el?.parentElement?.offsetWidth;return t&&!Number.isNaN(t)&&t>0?t<j:!1}get getItemsToDisplay(){let t=this.getItemLimit();return this.items.filter(e=>e.visible).slice(this.itemIndex,t+this.itemIndex)}get isEnd(){let t=this.getItemLimit(),e=this.items.slice(this.items.length-t).map(s=>s.uid),a=this.items.slice(this.itemIndex,this.itemIndex+t).map(s=>s.uid);return e.every((s,l)=>s===a[l])}async load(){let t=new ResizeObserver(()=>{this.itemIndex=0,this.autoDockEnabled&&(this.isMobile=!!this.checkMobile)});if(this.el?.parentElement&&t.observe(this.el.parentElement),!this.view||!this.items)this.state=o.Disabled;else try{await this.initModules()}catch{this.state=o.Disabled}}willUpdate(t){t.has("items")&&this.generateUIDs(),t.has("items")&&this.storeLayers(),t.has("layers")&&this.storeLayerViews(),t.has("geometry")&&(this.hasUpdated||this.geometry!==null)&&this.calculateScoreboardItemValuesFromGeometry(),t.has("layerViews")&&this.calculateScoreboardItemValues()}async loaded(){if(this.state!==o.Disabled)try{await m?.whenOnce(()=>this.view?.ready),this.generateUIDs(),await this.loadMapResources(),this.storeLayers(),this.initViewUpdateWatcher()}catch{this.state=o.Disabled,console.error(`${v}: FAILED TO LOAD MAP RESOURCES`)}}disconnectedCallback(){super.disconnectedCallback(),this.state=o.Disabled,this.itemIndex=0,this.layers?.removeAll(),this.layers?.destroy(),this.layers=null,this.layerViews?.removeAll(),this.layerViews?.destroy(),this.layerViews=null,this.handles?.removeAll(),this.handles?.destroy(),this.handles=null}scoreboardItemsUpdatedHandler(){this.scoreboardItemsUpdated.emit(this.items)}generateUIDs(){this.itemIndex=0,this.items.forEach(this.generateUID())}async storeLayers(){this.state=o.Calculating,await(this.view?.map).loadAll();let t=this.items.map(i=>i?.layer?.id),e=i=>i.type!=="feature"||!i.isTable,a=i=>i.type==="feature"||i.type==="scene",s=i=>t.includes(i.id),l=i=>e(i)&&a(i)&&s(i);this.layers=this.view?.map?.allLayers?.filter(i=>l(i)),this.watchLayerVisibility()}async storeLayerViews(){if(this.layers&&this.layers.length>0){this.layers.forEach(s=>s.outFields=["*"]);let t=[];this.layers.forEach(s=>{let l=s,i=this.view?.whenLayerView(l);t.push(i)});let e=(await Promise.allSettled(t)).filter(s=>s.status==="fulfilled"&&s.value).map(s=>s.value),a=[];e.forEach(s=>a.push(m.whenOnce(()=>!s.updating))),await Promise.all(a),this.layerViews=new $([...e])}}calculateScoreboardItemValuesFromGeometry(){this.calculateScoreboardItemValues()}async calculateScoreboardItemValues(){if(this.layers&&this.layers.length===0||this.layerViews&&this.layerViews.length===0)return;this.state=o.Calculating;let t=[...this.items],e=[];this.queryStatDefinitions(t,e);let a=await Promise.all(e);this.handleQueryFeaturesResponses(a,t),this.items.length=0,t.forEach(s=>this.items.push(s)),this.state=o.Complete,this.scoreboardItemsUpdatedHandler(),this.initStationaryWatcher()}async initModules(){try{this.handles=new B,this.layers=new $([]),this.layerViews=new $([])}catch(t){throw console.error(t),this.state=o.Disabled,new Error("Failed to initialize modules")}}async loadMapResources(){if(this.view){let{map:t}=this.view,e=t;try{await e.loadAll()}catch(a){throw console.error(a),this.state=o.Disabled,new Error("Failed to load map resources")}}}generateUID(){return t=>{let e=Math.random(),a=Math.floor(Math.random()*10)+11,s=e.toString(a).replace("0.","");t.uid=s}}previousItem(){this.itemIndex=this.itemIndex-1}nextItem(){this.itemIndex=this.itemIndex+1}queryStatDefinitions(t,e){let a=i=>{let{field:r,operation:d}=i,c=r,b=`${r}_${d}`;return{onStatisticField:c,outStatisticFieldName:b,statisticType:d}},s=(i,r)=>{let d=this.queryType==="layer"?i.layer.createQuery():i.createQuery(),c=[r],b=this.geometry??this.view?.extent;d.outStatistics=c,d.geometry=b;let u=i?.filter?.timeExtent??i?.featureEffect?.filter?.timeExtent??null;return u&&(d.timeExtent=u),d},l=()=>async i=>{let r=this.layerViews?.find(u=>u.layer.id===i?.layer?.id);if(!r)return;let d=a(i),c=s(r,d),b=this.queryType==="layer"?r.layer.queryFeatures(c):r.queryFeatures(c);e.push(b)};t.forEach(l())}handleQueryFeaturesResponses(t,e){let a=i=>{let r=i.features[0],{attributes:d}=r;return Object.values(d)[0]},s=()=>({notation:"compact",compactDisplay:"short"}),l=()=>(i,r)=>{let d=a(i),c=s(),b=d!==null,u=b?P.formatNumber(d,c):null,_=b?`${u}`:"";e[r].displayValue=_,e[r].value=d};t.forEach(l())}initStationaryWatcher(){let t={once:!0,initial:!0},e=()=>m.when(()=>!this.view?.interacting,()=>{this.queryType==="layerView"&&this.calculateScoreboardItemValues()},t),a=()=>m.when(()=>this.view?.stationary,()=>e()),s="stationary-watcher-key";this.handles?.has(s)&&this.handles.remove(s),this.handles?.add(a(),s)}initViewUpdateWatcher(){return m.watch(()=>this.view?.updating,()=>{m.when(()=>!this.view?.updating,()=>{this.queryType==="layerView"&&this.calculateScoreboardItemValues()},{once:!0,initial:!0})},{initial:!0})}watchLayerVisibility(){if(!this.layers)return;let t="visbilityWatcherKey";this.handles?.remove(t);let e=[],a=s=>{let l=async()=>{let r=await this.view?.whenLayerView(s);await m.whenOnce(()=>!r?.updating),this.calculateScoreboardItemValues()},i=m.watch(()=>s?.visible,async()=>await l());e.push(i)};this.layers.forEach(a),this.handles?.add([...e],t)}getItemLimit(){return this.itemLimit<2||this.itemLimit>6?O:this.itemLimit}setHostClassNames(){this.isMobile||this.position===o.Bottom?(this.el.classList.remove(n.position.side,n.position.left,n.position.right),this.el.classList.add(n.position.bottom)):(this.el.classList.remove(n.position.bottom),this.el.classList.add(n.position.side),this.position===o.Left?(this.el.classList.remove(n.position.right),this.el.classList.add(n.position.left)):(this.el.classList.remove(n.position.left),this.el.classList.add(n.position.right))),this.isMobile?(this.el.classList.remove(n.mode.floating),this.el.classList.add(n.mode.pinned)):this.mode===o.Floating?(this.el.classList.remove(n.mode.pinned),this.el.classList.add(n.mode.floating)):this.el.classList.add(n.mode.pinned)}render(){let{state:t}=this,e=t===o.Loading,a=t===o.Calculating,s=t===o.Disabled,l=e||a||this.queryType==="layerView"&&this.view?.updating?this.renderProgress():null;return this.setHostClassNames(),s?null:[l,this.items?.length>0?this.renderBase():null]}renderBase(){return w("instant-apps-scoreboard-base",p`<div class=${y(v)}>${this.renderContent()}</div>`)}renderContent(){let{state:t}=this;return t===o.Loading?this.renderLoader():t===o.Calculating||t===o.Complete?this.renderItemsContainer():null}renderItemsContainer(){let[t,e]=this.renderPreviousNextButtons();return p`<div class=${y(n.itemsContainer)}>${t}${this.renderItems()}${e}</div>`}renderPreviousNextButtons(){let t=this.getItemLimit(),e=this.items.filter(q=>q.visible)?.length<=t,a=this.itemIndex===0,s=this.isEnd,l=this.isMobile?!0:this.position===o.Bottom,i=l?F.Start:F.Center,r=l?g.Left:g.Up,d=l?g.Right:g.Down,c={previous:r,next:d},b=a||e?g.Blank:c.previous,u=s||e?g.Blank:c.next,_={previous:a||e,next:s||e},L=A.Transparent,V=this.isMobile?U.Small:U.Large,f={previous:this._messages.previous,next:this._messages.next};return[p`<calcite-action @click=${this.previousItem} .icon=${b} .disabled=${_.previous} .alignment=${i} .scale=${V} .appearance=${L} .text=${f.previous??""} .label=${f.previous}></calcite-action>`,p`<calcite-action @click=${this.nextItem} .icon=${u} .disabled=${_.next} .alignment=${i} .scale=${V} .appearance=${L} .text=${f.next??""} .label=${f.next}></calcite-action>`]}renderItems(){let{items:t}=n,e=this.getItemsToDisplay.map(a=>this.renderItem(a));return p`<ul class=${y(t)}>${e}</ul>`}renderItem(t){let{label:e}=t;return p`<li class=${y(n.item)}><span class=${y(n.label)} title=${e??x}>${e}</span>${this.renderValue(t)}</li>`}renderValue(t){let{displayValue:e}=t,a=this.state===o.Calculating,s=this.state===o.Disabled,l=e===void 0&&a,i=e||this._messages.NA,r=!this.layers?.find(c=>t?.layer?.id===c.id)?.visible,d=l?this.renderValuePlaceholder():s?"":r?p`<calcite-icon icon=view-hide scale=l title=${this._messages.layerVisibilityOff??x}></calcite-icon>`:i;return p`<span class=${y(n.value)}>${d}</span>`}renderValuePlaceholder(){return p`<span class=${y(n.valuePlaceholder)}></span>`}renderProgress(){let t=`${T}calcite-`;return w(`${t}progress`,p`<calcite-progress type=indeterminate></calcite-progress>`)}renderLoader(){let t=`${T}calcite-`,e=this._messages.loading;return w(`${t}loader`,p`<calcite-loader .label=${e??""} .text=${e} scale=m></calcite-loader>`)}};S("instant-apps-scoreboard",I);return I},"core/reactiveUtils","intl","core/Collection","core/Handles")
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as S}from"./KV4JOMXV.js";import"./TAYHORLE.js";import d from"./CEP54NLT.js";import a from"./YVNP437O.js";import{a as $}from"./3AQ7U2PF.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import{b as I}from"./NDUAEC62.js";import{F as c,G as o,H as F,J as u,h as y,i as l,l as p,r as b,u as L}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([E,V,k,O,{b:v},{a:C,c:m,d:d,e:_,f:f,g:x}])=>{var M=y`@layer{:host{display:block;--calcite-label-margin-bottom: 0px;--solutions-theme-foreground-color: var(--calcite-color-foreground-1)}.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-foreground-1)!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}.report-submitted-msg{position:absolute;z-index:1000}.share-node{display:flex}.overflow-auto{overflow:auto}}`,g=class extends F{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.floorLevel="",this.showFullCommentTitle=!0,this.filterByMapExtent=!1,this.sortOption="newest",this.reportingArea=!1,this.reportingAreaLayer="",this.reportingAreaMessage="",this.enablePhotoLocation=!1,this.aiImageExtraction=[],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(),S(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,aiImageExtraction: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("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})}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 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()}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 @calciteAlertClose=${()=>{this._reportSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.reportSubmittedMessage||this._translations.submitMsg)??""} ${o(this._reportSubmittedAlertNode)}></div></calcite-alert>`||""}${this._featureCreationFailedErrorMsg&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger label @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 @calciteAlertClose=${()=>{this._commentSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.commentSubmittedMessage||this._translations.commentSubmittedMsg)??""} ${o(this._commentSubmittedAlertNode)}></div></calcite-alert>`||""}${this._addingCommentFailed&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger label @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 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} ${o(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)}_toggleSort(){let e=this.reportingOptions&&this.reportingOptions[this._selectedLayerId]&&this.reportingOptions[this._selectedLayerId].like&&this.reportingOptions[this._selectedLayerId].likeField;return l`<calcite-popover auto-close label offset-distance=0 .placement=${this.isMobile?"leading-start":"bottom-start"} pointer-disabled reference-element=sort-popover ${o(this._sortPopoverNode)}><calcite-list label 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 t=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;t!==void 0&&this.sortOptionClick(t,"desc","highestVoted")}} .selected=${this._updatedSortOption==="highestVoted"} value=highestVoted></calcite-list-item><calcite-list-item .label=${this._translations.sortLowestVoted} @calciteListItemSelect=${()=>{let t=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;t&&this.sortOptionClick(t,"asc","lowestVoted")}} .selected=${this._updatedSortOption==="lowestVoted"} value=lowestVoted></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 ${o(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} class="height-full overflow-auto" customize-submit enable-search .enablePhotoLocation=${this.enablePhotoLocation} .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 ${o(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._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(){await this.setSelectedFeatures([]),this._layerList.value&&await this._layerList.value.refresh(),this._editableLayerIds.length===1?(this._featureList.value&&await this._featureList.value.refresh(),this._flowItems=["feature-list"]):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"?"asc":"desc",i=this.reportingOptions?.[this._selectedLayerId]?.like?this.reportingOptions?.[this._selectedLayerId]?.likeField:"",s=this._selectedLayer&&(e==="newest"||e==="oldest")?this._selectedLayer?.objectIdField:i;this._updatedSorting={field:s||"",order:t},this._updatedSortOption=!i&&(e==="highestVoted"||e==="lowestVoted")?"newest":e}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 appearance=solid 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 appearance=solid 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} .showFeatureSymbol=${this.showFeatureSymbol} .sortingInfo=${this._updatedSorting} ${o(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} ${o(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} ${o(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} ${o(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 @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 @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 @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} ${o(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 x([i],t,this.mapView,!0,this.zoomToScale)}}this.updatingFeatureDetails(!1)}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return l`<calcite-action appearance=solid .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=[],n=!1;t.results.length>0&&t.results.forEach(r=>{r.type==="graphic"&&i.push(r.graphic)}),i.length>0&&(await this._setReportingGraphics(i),s=this._getNonReportingLayerGraphics(i)),this._mapImageryLayersId.length>0&&(a=await this._getIdentifiedGraphics(e.mapPoint),n=a.length>0);let h=s.concat(a);if(h.length>0){this.mapView.popupEnabled=!0;let r={features:h,location:e.mapPoint,updateLocationEnabled:!n};await this.mapView.openPopup(r)}}}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 n of this._mapImageryLayersId){let h=this.mapView&&await d(this.mapView,n);if(h?.url&&t)try{let r=await k?.identify(h.url,t);if(r?.results?.length){s=r.results,i=h;break}}catch(r){console.error(r)}}let a=[];return s.forEach(n=>{let h=n.layerId,r=i?.sublayers?.items.find(P=>P.id===h),w=r?.popupTemplate;r?.popupEnabled&&w&&(n.feature.popupTemplate=w,a.push(n.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 V({where:`${i} = '${t}'`}):null}}async getLayersToShowInList(){let e=this.mapView&&await C(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 n=s.expressions?.find(h=>h.id===a.id);n!=null&&(a.name=n.name)}))})}};I("crowdsource-reporter",g);return g},"core/reactiveUtils","layers/support/FeatureFilter","rest/identify","rest/support/IdentifyParameters",a,d)
|
|
2
|
+
import{a as S}from"./YMOLIY64.js";import"./EGFXSDFS.js";import d from"./CEP54NLT.js";import a from"./YVNP437O.js";import{a as $}from"./3AQ7U2PF.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import{b as I}from"./NDUAEC62.js";import{F as c,G as o,H as F,J as u,h as y,i as l,l as p,r as b,u as L}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([E,V,k,O,{b:v},{a:C,c:m,d:d,e:_,f:f,g:x}])=>{var M=y`@layer{:host{display:block;--calcite-label-margin-bottom: 0px;--solutions-theme-foreground-color: var(--calcite-color-foreground-1)}.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-foreground-1)!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}.report-submitted-msg{position:absolute;z-index:1000}.share-node{display:flex}.overflow-auto{overflow:auto}}`,g=class extends F{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.floorLevel="",this.showFullCommentTitle=!0,this.filterByMapExtent=!1,this.sortOption="newest",this.reportingArea=!1,this.reportingAreaLayer="",this.reportingAreaMessage="",this.enablePhotoLocation=!1,this.aiImageExtraction=[],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(),S(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,aiImageExtraction: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("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})}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 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()}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 @calciteAlertClose=${()=>{this._reportSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.reportSubmittedMessage||this._translations.submitMsg)??""} ${o(this._reportSubmittedAlertNode)}></div></calcite-alert>`||""}${this._featureCreationFailedErrorMsg&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger label @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 @calciteAlertClose=${()=>{this._commentSubmitted=!1}} open placement=top><div slot=message .innerHTML=${(this.commentSubmittedMessage||this._translations.commentSubmittedMsg)??""} ${o(this._commentSubmittedAlertNode)}></div></calcite-alert>`||""}${this._addingCommentFailed&&l`<calcite-alert auto-close class=${u(e)} icon=x-octagon kind=danger label @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 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} ${o(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)}_toggleSort(){let e=this.reportingOptions&&this.reportingOptions[this._selectedLayerId]&&this.reportingOptions[this._selectedLayerId].like&&this.reportingOptions[this._selectedLayerId].likeField;return l`<calcite-popover auto-close label offset-distance=0 .placement=${this.isMobile?"leading-start":"bottom-start"} pointer-disabled reference-element=sort-popover ${o(this._sortPopoverNode)}><calcite-list label 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 t=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;t!==void 0&&this.sortOptionClick(t,"desc","highestVoted")}} .selected=${this._updatedSortOption==="highestVoted"} value=highestVoted></calcite-list-item><calcite-list-item .label=${this._translations.sortLowestVoted} @calciteListItemSelect=${()=>{let t=this.reportingOptions&&this.reportingOptions[this._selectedLayerId].likeField;t&&this.sortOptionClick(t,"asc","lowestVoted")}} .selected=${this._updatedSortOption==="lowestVoted"} value=lowestVoted></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 ${o(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} class="height-full overflow-auto" customize-submit enable-search .enablePhotoLocation=${this.enablePhotoLocation} .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 ${o(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._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(){await this.setSelectedFeatures([]),this._layerList.value&&await this._layerList.value.refresh(),this._editableLayerIds.length===1?(this._featureList.value&&await this._featureList.value.refresh(),this._flowItems=["feature-list"]):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"?"asc":"desc",i=this.reportingOptions?.[this._selectedLayerId]?.like?this.reportingOptions?.[this._selectedLayerId]?.likeField:"",s=this._selectedLayer&&(e==="newest"||e==="oldest")?this._selectedLayer?.objectIdField:i;this._updatedSorting={field:s||"",order:t},this._updatedSortOption=!i&&(e==="highestVoted"||e==="lowestVoted")?"newest":e}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 appearance=solid 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 appearance=solid 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} .showFeatureSymbol=${this.showFeatureSymbol} .sortingInfo=${this._updatedSorting} ${o(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} ${o(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} ${o(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} ${o(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 @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 @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 @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} ${o(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 x([i],t,this.mapView,!0,this.zoomToScale)}}this.updatingFeatureDetails(!1)}clearHighlights(){this._highlightHandle&&this._highlightHandle.remove()}getActionToExpandCollapsePanel(){return l`<calcite-action appearance=solid .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=[],n=!1;t.results.length>0&&t.results.forEach(r=>{r.type==="graphic"&&i.push(r.graphic)}),i.length>0&&(await this._setReportingGraphics(i),s=this._getNonReportingLayerGraphics(i)),this._mapImageryLayersId.length>0&&(a=await this._getIdentifiedGraphics(e.mapPoint),n=a.length>0);let h=s.concat(a);if(h.length>0){this.mapView.popupEnabled=!0;let r={features:h,location:e.mapPoint,updateLocationEnabled:!n};await this.mapView.openPopup(r)}}}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 n of this._mapImageryLayersId){let h=this.mapView&&await d(this.mapView,n);if(h?.url&&t)try{let r=await k?.identify(h.url,t);if(r?.results?.length){s=r.results,i=h;break}}catch(r){console.error(r)}}let a=[];return s.forEach(n=>{let h=n.layerId,r=i?.sublayers?.items.find(P=>P.id===h),w=r?.popupTemplate;r?.popupEnabled&&w&&(n.feature.popupTemplate=w,a.push(n.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 V({where:`${i} = '${t}'`}):null}}async getLayersToShowInList(){let e=this.mapView&&await C(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 n=s.expressions?.find(h=>h.id===a.id);n!=null&&(a.name=n.name)}))})}};I("crowdsource-reporter",g);return g},"core/reactiveUtils","layers/support/FeatureFilter","rest/identify","rest/support/IdentifyParameters",a,d)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import d from"./SEDPMCMZ.js";import c from"./4FBEUQIB.js";import"./US5FON7D.js";import"./VVZAS55G.js";import"./HBQN25RR.js";import a from"./YVNP437O.js";import{a as m}from"./3AQ7U2PF.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import"./TEHBW75B.js";import"./KU62OLRE.js";import"./ZCU2WWVN.js";import"./WGO4EVOV.js";import"./3IHLJADI.js";import"./B3R52L7H.js";import"./BDXIKPLU.js";import"./G2ME4BAQ.js";import"./Z4F2NZOT.js";import"./KOIDWEP3.js";import"./3KXMYZCU.js";import"./LPBP7CBN.js";import"./3FMOO3PJ.js";import"./73AX72WY.js";import"./JUUVYK2H.js";import"./DKD2EGQP.js";import"./4HFHJOS3.js";import"./45M33Q5G.js";import"./FES7B3SJ.js";import{b as w}from"./NDUAEC62.js";import{H as f,J as i,K as b,h as u,i as s,l as _,r as o,u as g}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([x,l,,,v])=>{var E=u`@layer{:host{display:block;--calcite-label-margin-bottom: 0}.padding-1-2{padding:.5rem}.display-none{display:none!important}.display-flex{display:flex}.position-absolute{position:absolute;inset:0;overflow:auto}.feature-node{position:relative!important}.feature-node .esri-features__footer{display:none!important}.button-container{justify-content:center;align-items:center}.top-border{border-top:1px solid var(--calcite-color-border-1)}.width-100{width:100%}.esri-features__container{padding:.5rem!important;background-color:var(--calcite-color-foreground-1)!important;height:100%!important}.end-border{border-inline-end:1px solid var(--calcite-color-border-1)}.font-bold{font-weight:700}.z-index-1{z-index:1}.visibility-hidden{visibility:hidden;height:0px}.padding-inline-start-1{padding-inline-start:1rem}.border-width-0{border-width:0px}.pagination-action{position:relative;left:3px}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:700}}`,d=class extends f{constructor(){super(),this.enableEditGeometry=!1,this.enableSnapping=!1,this.graphics=[],this.isLoading=!1,this.isMobile=!1,this.allowEditing=!1,this.highlightEnabled=!0,this.paginationEnabled=!0,this.position="absolute",this.showCloseBtn=!1,this._alertOpen=!1,this._count="",this._editRecordOpen=!1,this._isMultipleEdits=!1,this._mobileTitle="",this._showListView=!1,this._translations=m({name:"info-card",blocking:!0}),this._navigatedToRelatedFeature=!1,this._editEnabled=!1,this._featuresNodeId=`features-node${new Date().getMilliseconds().toString()}`,this.popupClosed=o(),this.clearSelection=o(),this.selectionChanged=o(),this.listenOn(window,"closeEdit",this.closeEdit),this.listenOn(window,"layerSelectionChange",this.layerSelectionChange),this.listenOn(window,"refreshGraphics",this.refreshGraphics),this.listenOn(window,"editMultipleFeatures",this.editMultipleFeatures),this.listenOn(window,"selectedLanguageUpdated",this.selectedLanguageUpdated),this.listenOn(window,"clearSelection",this._alertClosed)}static{this.properties={enableEditGeometry:5,enableSnapping:5,graphics:0,isLoading:5,isMobile:5,mapView:0,allowEditing:5,highlightEnabled:5,paginationEnabled:5,position:1,showCloseBtn:5,_alertOpen:16,_count:16,_editRecordOpen:16,_isMultipleEdits:16,_mobileTitle:16,_showListView:16,_translations:16,_navigatedToRelatedFeature:16}}static{this.styles=E}static{this.shadowRootOptions=g}willUpdate(e){if(e.has("graphics")&&this.graphicsWatchHandler(),e.has("isMobile")&&this.isMobileWatchHandler(),e.has("mapView")&&this.mapViewWatchHandler(),e.has("_translations")){let t=this._translations._lang,a=e.get("_translations")?._lang;if(t&&a&&t!==a&&this._features){let r=[...this.graphics];this.graphics=[],this.graphics=r}}}async graphicsWatchHandler(){this._navigatedToRelatedFeature&&this._features&&(this._features.clear(),this._features.close(),this._count="",this._navigatedToRelatedFeature=!1),await this.setGraphics()}async isMobileWatchHandler(){await this._initFeaturesWidget()}async mapViewWatchHandler(){return await this._initFeaturesWidget()}async getSelectedFeature(){return this._features?.selectedFeature}async refresh(){await this.setGraphics()}async back(){this._features?.previous(),this._count=this._getCount()}async next(){this._features?.next(),this._count=this._getCount()}async toggleListView(){if(this._showListView=!this._showListView,this._features){let e=this._features.selectedFeatureIndex;this._features.open({features:this.graphics,featureMenuOpen:this._showListView}),this._features.selectedFeatureIndex=e}}async updateCurrentGraphic(e){this._features?.selectedFeatureWidget&&console.log(e)}async closeEdit(){this._editRecordOpen=!1,this._isMultipleEdits=!1}async layerSelectionChange(){this._showListView=!1,this._features?.viewModel&&(this._features.viewModel.featureMenuOpen=!1,this._features.close())}async refreshGraphics(e){this._navigatedToRelatedFeature||(this.graphics=[...e.detail])}async editMultipleFeatures(e){this._isMultipleEdits=!0,this._openEditRecord()}async selectedLanguageUpdated(e){this._features?.clear(),this._features?.close(),await this._initFeaturesWidget()}async load(){this._popupUtils=new v}async loaded(){this.graphics?.length>0&&await this.setGraphics()}render(){let e=this.isLoading?"":"display-none",t=this.isLoading||this._editRecordOpen?"visibility-hidden":"position-absolute",a=!this.isLoading&&this._editRecordOpen?"position-absolute":"display-none",r=!this.isLoading&&this._editRecordOpen||this._showListView?"display-none":"",h=this._features?.features&&this._features.features.length<2||this._navigatedToRelatedFeature,c=Number(this._features?.selectedFeature?.getObjectId()),y=Number.isNaN(c)?[]:[c],p=this._layer?.editingEnabled&&this._layer?.capabilities?.operations?.supportsDelete,$=this._relatedFeature?[this._relatedFeature]:this.graphics,F=this._navigatedToRelatedFeature?0:this._features?.selectedFeatureIndex,n=this.isMobile?"display-none":"";return s`<calcite-shell class="z-index-1" style=${b({position:this.position})}>${this._getHeader()}<calcite-loader class=${i(e)} .label=${this._translations.fetchingData}></calcite-loader><div class=${i("esri-widget feature-node "+t)} id=${this._featuresNodeId??_}></div><div class=${`${r} width-100`} slot=footer>${this.allowEditing?s`<div class="display-flex top-border padding-1-2"><calcite-button appearance=solid id=solutions-edit @click=${()=>this._openEditRecord()} width=full>${this._translations.edit}</calcite-button>${this.isMobile&&p?s`<delete-button class="padding-inline-start-1 width-100" id=solutions-delete .ids=${y} .layer=${this._layer} @editsComplete=${()=>this._closePopup()}></delete-button>`:void 0}<calcite-tooltip class=${i(n)} placement=bottom reference-element=solutions-edit><span>${this._translations.edit}</span></calcite-tooltip>${this.isMobile&&p?s`<calcite-tooltip class=${i(n)} placement=bottom reference-element=solutions-delete><span>${this._translations.delete}</span></calcite-tooltip>`:void 0}</div>`:""}${this.paginationEnabled&&!h&&s`<div class=${"display-flex padding-1-2 button-container top-border"}><div><calcite-button appearance=transparent .disabled=${h} icon-flip-rtl=both icon-start=chevron-left id=solutions-back @click=${()=>this._back()} width=full></calcite-button><calcite-tooltip class=${i(n)} placement=top reference-element=solutions-back><span>${this._translations.back}</span></calcite-tooltip></div><calcite-action appearance=solid class="pagination-action" icon-flip-rtl @click=${()=>this._toggleListView()} scale=s text text-enabled><span class="pagination-count">${this._count}</span></calcite-action><div><calcite-button appearance=transparent .disabled=${h} icon-flip-rtl=both icon-start=chevron-right id=solutions-next @click=${()=>this._next()} width=full></calcite-button><calcite-tooltip class=${i(n)} placement=top reference-element=solutions-next><span>${this._translations.next}</span></calcite-tooltip></div></div>`||""}</div><edit-card .allowMultipleEditing=${this._isMultipleEdits} class=${i(a)} .enableEditGeometry=${this.enableEditGeometry} .enableSnapping=${this.enableSnapping} .graphicIndex=${F} .graphics=${$} .mapView=${this.mapView} .open=${this._editRecordOpen}></edit-card><calcite-alert auto-close icon=layer-broken kind=warning label @calciteAlertClose=${()=>this._alertClosed()} .open=${this._alertOpen} placement=top><div slot=title>${this._translations.editDisabled}</div><div slot=message>${this._translations.enableEditing}</div></calcite-alert></calcite-shell>`}async setGraphics(){this._features||await this._initFeaturesWidget(),this.graphics.length>0?(this._layer=this.graphics[0]?.layer,this._editEnabled=!!(this._layer.editingEnabled&&this._layer.capabilities?.operations.supportsUpdate),this._mobileTitle=this.mapView?.map&&await this._popupUtils?.getPopupTitle(this.graphics[0],this.mapView.map)||"",this._features?.open({features:this.graphics})):(this._features?.clear(),this._features?.close()),this._count=this._getCount()}async _initFeaturesWidget(){return this.isMobile!==void 0?await this.mapView?.when(()=>{if(this._features)this._features.view=this.mapView,this._features.visibleElements.actionBar=!1,this._features.visibleElements.closeButton=!!this.showCloseBtn,this._features.visibleElements.heading=!this.isMobile;else if(this._features=new x({view:this.mapView,container:this._featuresNodeId,visibleElements:{actionBar:!1,closeButton:this.showCloseBtn,featureMenuHeading:!1,heading:!this.isMobile}}),this._features){this._features.viewModel.highlightEnabled=!!this.highlightEnabled,l.watch(()=>(this._features?.viewModel).featureMenuOpen,t=>{this._updateCount(),t||(this._showListView=t)}),l.watch(()=>this._features?.selectedFeatureIndex,t=>{t!==void 0&&t>-1&&this._features?.selectedFeature&&this.selectionChanged.emit({selectedFeature:[this._features.selectedFeature],selectedFeatureIndex:this._features.selectedFeatureIndex})}),l?.watch(()=>this._features.selectedDrillInFeature,t=>{t?(this._relatedFeature=t,this._navigatedToRelatedFeature=!0):(this._relatedFeature=void 0,this._navigatedToRelatedFeature=!1)});let e=this.el.querySelector("#"+this._featuresNodeId);this.listenOn(e,"calciteFlowItemClose",()=>{this.clearSelection.emit()})}}):Promise.resolve()}_getHeader(){return this.isMobile&&!this._editRecordOpen?s`<calcite-panel class="border-width-0" slot=header><calcite-action appearance=solid class="end-border" icon=chevron-left icon-flip-rtl @click=${()=>this._closePopup()} scale=s slot=header-actions-start text></calcite-action><span class="font-bold" slot=header-content>${this._mobileTitle}</span></calcite-panel>`:void 0}_closePopup(){this.popupClosed.emit()}_alertClosed(){this._alertOpen=!1}_openEditRecord(){this._editEnabled?this._editRecordOpen=!0:this._alertOpen=!0}async _back(){this._features?.previous(),await this._updateCount()}async _next(){this._features?.next(),await this._updateCount()}async _updateCount(){let e=this._features?.selectedFeatureIndex;this._popupUtils&&this.mapView&&this.mapView.map&&e!==void 0&&(this._mobileTitle=await this._popupUtils.getPopupTitle(this.graphics[e],this.mapView.map)),this._count=this._getCount()}_getCount(){let e=this._features?.viewModel&&(this._features?.viewModel.selectedFeatureIndex+1).toString()||"",t=this._features?.features?.length.toString()||"";return this._translations.indexOfTotal.replace("{{index}}",e).replace("{{total}}",t)||""}_toggleListView(){if(this._showListView=!this._showListView,this._features){let e=this._features.selectedFeatureIndex;this._features.open({features:this.graphics,featureMenuOpen:this._showListView}),this._features.selectedFeatureIndex=e}}};w("info-card",d);return d},"widgets/Features","core/reactiveUtils",a,c,d)
|
|
2
|
+
import d from"./OC2DD3AB.js";import c from"./USM62FP5.js";import"./US5FON7D.js";import"./VVZAS55G.js";import"./HBQN25RR.js";import a from"./YVNP437O.js";import{a as m}from"./3AQ7U2PF.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import"./TEHBW75B.js";import"./KU62OLRE.js";import"./ZCU2WWVN.js";import"./WGO4EVOV.js";import"./3IHLJADI.js";import"./B3R52L7H.js";import"./BDXIKPLU.js";import"./G2ME4BAQ.js";import"./Z4F2NZOT.js";import"./KOIDWEP3.js";import"./3KXMYZCU.js";import"./LPBP7CBN.js";import"./3FMOO3PJ.js";import"./73AX72WY.js";import"./JUUVYK2H.js";import"./DKD2EGQP.js";import"./4HFHJOS3.js";import"./45M33Q5G.js";import"./FES7B3SJ.js";import{b as w}from"./NDUAEC62.js";import{H as f,J as i,K as b,h as u,i as s,l as _,r as o,u as g}from"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([x,l,,,v])=>{var E=u`@layer{:host{display:block;--calcite-label-margin-bottom: 0}.padding-1-2{padding:.5rem}.display-none{display:none!important}.display-flex{display:flex}.position-absolute{position:absolute;inset:0;overflow:auto}.feature-node{position:relative!important}.feature-node .esri-features__footer{display:none!important}.button-container{justify-content:center;align-items:center}.top-border{border-top:1px solid var(--calcite-color-border-1)}.width-100{width:100%}.esri-features__container{padding:.5rem!important;background-color:var(--calcite-color-foreground-1)!important;height:100%!important}.end-border{border-inline-end:1px solid var(--calcite-color-border-1)}.font-bold{font-weight:700}.z-index-1{z-index:1}.visibility-hidden{visibility:hidden;height:0px}.padding-inline-start-1{padding-inline-start:1rem}.border-width-0{border-width:0px}.pagination-action{position:relative;left:3px}.pagination-count{color:var(--calcite-color-brand);border-bottom:1px solid var(--calcite-color-brand);font-weight:700}}`,d=class extends f{constructor(){super(),this.enableEditGeometry=!1,this.enableSnapping=!1,this.graphics=[],this.isLoading=!1,this.isMobile=!1,this.allowEditing=!1,this.highlightEnabled=!0,this.paginationEnabled=!0,this.position="absolute",this.showCloseBtn=!1,this._alertOpen=!1,this._count="",this._editRecordOpen=!1,this._isMultipleEdits=!1,this._mobileTitle="",this._showListView=!1,this._translations=m({name:"info-card",blocking:!0}),this._navigatedToRelatedFeature=!1,this._editEnabled=!1,this._featuresNodeId=`features-node${new Date().getMilliseconds().toString()}`,this.popupClosed=o(),this.clearSelection=o(),this.selectionChanged=o(),this.listenOn(window,"closeEdit",this.closeEdit),this.listenOn(window,"layerSelectionChange",this.layerSelectionChange),this.listenOn(window,"refreshGraphics",this.refreshGraphics),this.listenOn(window,"editMultipleFeatures",this.editMultipleFeatures),this.listenOn(window,"selectedLanguageUpdated",this.selectedLanguageUpdated),this.listenOn(window,"clearSelection",this._alertClosed)}static{this.properties={enableEditGeometry:5,enableSnapping:5,graphics:0,isLoading:5,isMobile:5,mapView:0,allowEditing:5,highlightEnabled:5,paginationEnabled:5,position:1,showCloseBtn:5,_alertOpen:16,_count:16,_editRecordOpen:16,_isMultipleEdits:16,_mobileTitle:16,_showListView:16,_translations:16,_navigatedToRelatedFeature:16}}static{this.styles=E}static{this.shadowRootOptions=g}willUpdate(e){if(e.has("graphics")&&this.graphicsWatchHandler(),e.has("isMobile")&&this.isMobileWatchHandler(),e.has("mapView")&&this.mapViewWatchHandler(),e.has("_translations")){let t=this._translations._lang,a=e.get("_translations")?._lang;if(t&&a&&t!==a&&this._features){let r=[...this.graphics];this.graphics=[],this.graphics=r}}}async graphicsWatchHandler(){this._navigatedToRelatedFeature&&this._features&&(this._features.clear(),this._features.close(),this._count="",this._navigatedToRelatedFeature=!1),await this.setGraphics()}async isMobileWatchHandler(){await this._initFeaturesWidget()}async mapViewWatchHandler(){return await this._initFeaturesWidget()}async getSelectedFeature(){return this._features?.selectedFeature}async refresh(){await this.setGraphics()}async back(){this._features?.previous(),this._count=this._getCount()}async next(){this._features?.next(),this._count=this._getCount()}async toggleListView(){if(this._showListView=!this._showListView,this._features){let e=this._features.selectedFeatureIndex;this._features.open({features:this.graphics,featureMenuOpen:this._showListView}),this._features.selectedFeatureIndex=e}}async updateCurrentGraphic(e){this._features?.selectedFeatureWidget&&console.log(e)}async closeEdit(){this._editRecordOpen=!1,this._isMultipleEdits=!1}async layerSelectionChange(){this._showListView=!1,this._features?.viewModel&&(this._features.viewModel.featureMenuOpen=!1,this._features.close())}async refreshGraphics(e){this._navigatedToRelatedFeature||(this.graphics=[...e.detail])}async editMultipleFeatures(e){this._isMultipleEdits=!0,this._openEditRecord()}async selectedLanguageUpdated(e){this._features?.clear(),this._features?.close(),await this._initFeaturesWidget()}async load(){this._popupUtils=new v}async loaded(){this.graphics?.length>0&&await this.setGraphics()}render(){let e=this.isLoading?"":"display-none",t=this.isLoading||this._editRecordOpen?"visibility-hidden":"position-absolute",a=!this.isLoading&&this._editRecordOpen?"position-absolute":"display-none",r=!this.isLoading&&this._editRecordOpen||this._showListView?"display-none":"",h=this._features?.features&&this._features.features.length<2||this._navigatedToRelatedFeature,c=Number(this._features?.selectedFeature?.getObjectId()),y=Number.isNaN(c)?[]:[c],p=this._layer?.editingEnabled&&this._layer?.capabilities?.operations?.supportsDelete,$=this._relatedFeature?[this._relatedFeature]:this.graphics,F=this._navigatedToRelatedFeature?0:this._features?.selectedFeatureIndex,n=this.isMobile?"display-none":"";return s`<calcite-shell class="z-index-1" style=${b({position:this.position})}>${this._getHeader()}<calcite-loader class=${i(e)} .label=${this._translations.fetchingData}></calcite-loader><div class=${i("esri-widget feature-node "+t)} id=${this._featuresNodeId??_}></div><div class=${`${r} width-100`} slot=footer>${this.allowEditing?s`<div class="display-flex top-border padding-1-2"><calcite-button appearance=solid id=solutions-edit @click=${()=>this._openEditRecord()} width=full>${this._translations.edit}</calcite-button>${this.isMobile&&p?s`<delete-button class="padding-inline-start-1 width-100" id=solutions-delete .ids=${y} .layer=${this._layer} @editsComplete=${()=>this._closePopup()}></delete-button>`:void 0}<calcite-tooltip class=${i(n)} placement=bottom reference-element=solutions-edit><span>${this._translations.edit}</span></calcite-tooltip>${this.isMobile&&p?s`<calcite-tooltip class=${i(n)} placement=bottom reference-element=solutions-delete><span>${this._translations.delete}</span></calcite-tooltip>`:void 0}</div>`:""}${this.paginationEnabled&&!h&&s`<div class=${"display-flex padding-1-2 button-container top-border"}><div><calcite-button appearance=transparent .disabled=${h} icon-flip-rtl=both icon-start=chevron-left id=solutions-back @click=${()=>this._back()} width=full></calcite-button><calcite-tooltip class=${i(n)} placement=top reference-element=solutions-back><span>${this._translations.back}</span></calcite-tooltip></div><calcite-action appearance=solid class="pagination-action" icon-flip-rtl @click=${()=>this._toggleListView()} scale=s text text-enabled><span class="pagination-count">${this._count}</span></calcite-action><div><calcite-button appearance=transparent .disabled=${h} icon-flip-rtl=both icon-start=chevron-right id=solutions-next @click=${()=>this._next()} width=full></calcite-button><calcite-tooltip class=${i(n)} placement=top reference-element=solutions-next><span>${this._translations.next}</span></calcite-tooltip></div></div>`||""}</div><edit-card .allowMultipleEditing=${this._isMultipleEdits} class=${i(a)} .enableEditGeometry=${this.enableEditGeometry} .enableSnapping=${this.enableSnapping} .graphicIndex=${F} .graphics=${$} .mapView=${this.mapView} .open=${this._editRecordOpen}></edit-card><calcite-alert auto-close icon=layer-broken kind=warning label @calciteAlertClose=${()=>this._alertClosed()} .open=${this._alertOpen} placement=top><div slot=title>${this._translations.editDisabled}</div><div slot=message>${this._translations.enableEditing}</div></calcite-alert></calcite-shell>`}async setGraphics(){this._features||await this._initFeaturesWidget(),this.graphics.length>0?(this._layer=this.graphics[0]?.layer,this._editEnabled=!!(this._layer.editingEnabled&&this._layer.capabilities?.operations.supportsUpdate),this._mobileTitle=this.mapView?.map&&await this._popupUtils?.getPopupTitle(this.graphics[0],this.mapView.map)||"",this._features?.open({features:this.graphics})):(this._features?.clear(),this._features?.close()),this._count=this._getCount()}async _initFeaturesWidget(){return this.isMobile!==void 0?await this.mapView?.when(()=>{if(this._features)this._features.view=this.mapView,this._features.visibleElements.actionBar=!1,this._features.visibleElements.closeButton=!!this.showCloseBtn,this._features.visibleElements.heading=!this.isMobile;else if(this._features=new x({view:this.mapView,container:this._featuresNodeId,visibleElements:{actionBar:!1,closeButton:this.showCloseBtn,featureMenuHeading:!1,heading:!this.isMobile}}),this._features){this._features.viewModel.highlightEnabled=!!this.highlightEnabled,l.watch(()=>(this._features?.viewModel).featureMenuOpen,t=>{this._updateCount(),t||(this._showListView=t)}),l.watch(()=>this._features?.selectedFeatureIndex,t=>{t!==void 0&&t>-1&&this._features?.selectedFeature&&this.selectionChanged.emit({selectedFeature:[this._features.selectedFeature],selectedFeatureIndex:this._features.selectedFeatureIndex})}),l?.watch(()=>this._features.selectedDrillInFeature,t=>{t?(this._relatedFeature=t,this._navigatedToRelatedFeature=!0):(this._relatedFeature=void 0,this._navigatedToRelatedFeature=!1)});let e=this.el.querySelector("#"+this._featuresNodeId);this.listenOn(e,"calciteFlowItemClose",()=>{this.clearSelection.emit()})}}):Promise.resolve()}_getHeader(){return this.isMobile&&!this._editRecordOpen?s`<calcite-panel class="border-width-0" slot=header><calcite-action appearance=solid class="end-border" icon=chevron-left icon-flip-rtl @click=${()=>this._closePopup()} scale=s slot=header-actions-start text></calcite-action><span class="font-bold" slot=header-content>${this._mobileTitle}</span></calcite-panel>`:void 0}_closePopup(){this.popupClosed.emit()}_alertClosed(){this._alertOpen=!1}_openEditRecord(){this._editEnabled?this._editRecordOpen=!0:this._alertOpen=!0}async _back(){this._features?.previous(),await this._updateCount()}async _next(){this._features?.next(),await this._updateCount()}async _updateCount(){let e=this._features?.selectedFeatureIndex;this._popupUtils&&this.mapView&&this.mapView.map&&e!==void 0&&(this._mobileTitle=await this._popupUtils.getPopupTitle(this.graphics[e],this.mapView.map)),this._count=this._getCount()}_getCount(){let e=this._features?.viewModel&&(this._features?.viewModel.selectedFeatureIndex+1).toString()||"",t=this._features?.features?.length.toString()||"";return this._translations.indexOfTotal.replace("{{index}}",e).replace("{{total}}",t)||""}_toggleListView(){if(this._showListView=!this._showListView,this._features){let e=this._features.selectedFeatureIndex;this._features.open({features:this.graphics,featureMenuOpen:this._showListView}),this._features.selectedFeatureIndex=e}}};w("info-card",d);return d},"widgets/Features","core/reactiveUtils",a,c,d)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a}from"./SZRONHSX.js";import c from"./
|
|
2
|
+
import{a}from"./SZRONHSX.js";import c from"./GTKRTZK6.js";import b from"./DQV46RIT.js";import"./QHG54NVK.js";import"./DLBZRD4H.js";import"./HBQN25RR.js";import"./3AQ7U2PF.js";import"./DIKAKOU5.js";import"./S423P2GA.js";import"./TEHBW75B.js";import"./KU62OLRE.js";import"./ZCU2WWVN.js";import"./WGO4EVOV.js";import"./3IHLJADI.js";import"./B3R52L7H.js";import"./BDXIKPLU.js";import"./G2ME4BAQ.js";import"./Z4F2NZOT.js";import"./KOIDWEP3.js";import"./3KXMYZCU.js";import"./LPBP7CBN.js";import"./3FMOO3PJ.js";import"./73AX72WY.js";import"./JUUVYK2H.js";import"./DKD2EGQP.js";import"./4HFHJOS3.js";import"./45M33Q5G.js";import"./FES7B3SJ.js";import"./NDUAEC62.js";import"./P4KZ6OZF.js";import"./QPIMTXPL.js";export default $arcgis.t(([])=>{return a},b,c)
|