@esri/solutions-components 5.1.2 → 5.1.3
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/{7EJXZVSX.js → 2CCKYJSY.js} +1 -1
- package/dist/cdn/{3KYCZII7.js → 2DCSGUOX.js} +1 -1
- package/dist/cdn/{LSMP2ZCO.js → 2EUQOQY3.js} +1 -1
- package/dist/cdn/{FSFVH74N.js → 2GHTA5PV.js} +1 -1
- package/dist/cdn/{3DNEBMT3.js → 2GJEHDZJ.js} +1 -1
- package/dist/cdn/{LRGW6G5E.js → 2XTZLJ5F.js} +1 -1
- package/dist/cdn/{CKPQTIAF.js → 37CMWBMW.js} +1 -1
- package/dist/cdn/{SD3DV4KO.js → 37XAYW3Z.js} +1 -1
- package/dist/cdn/{LQFA6HOT.js → 3DFMPPUD.js} +1 -1
- package/dist/cdn/{LXJI7FYN.js → 3MN7XFQ2.js} +1 -1
- package/dist/cdn/{EHIUCEAX.js → 3N2AUH5S.js} +1 -1
- package/dist/cdn/{OPWMEQVM.js → 3TO6KC3G.js} +2 -2
- package/dist/cdn/{OVAQRVFG.js → 3XOKCST3.js} +1 -1
- package/dist/cdn/{GZZMHIFA.js → 43MZA66W.js} +1 -1
- package/dist/cdn/{T7O4WZGU.js → 45JNINYV.js} +1 -1
- package/dist/cdn/{RQVXDCWL.js → 4PDKVX4T.js} +1 -1
- package/dist/cdn/{DEVAXAP7.js → 56PIVLPU.js} +1 -1
- package/dist/cdn/{ZB5UCRCG.js → 5BJO5ABV.js} +1 -1
- package/dist/cdn/{QVD3AXIP.js → 5EYRW6FE.js} +1 -1
- package/dist/cdn/{L6XSVTY3.js → 5L7HZJBG.js} +1 -1
- package/dist/cdn/{4RH7N22O.js → 5LM5R34X.js} +1 -1
- package/dist/cdn/{JF2ASXUT.js → 6AVCTQ6J.js} +1 -1
- package/dist/cdn/{PSM4UX7K.js → 6AWTIASQ.js} +1 -1
- package/dist/cdn/{NIUKLQOT.js → 6FPVZV4K.js} +1 -1
- package/dist/cdn/{WVCL5OUK.js → 6SHN7V3N.js} +1 -1
- package/dist/cdn/{IVMHEGLY.js → 6UVMG6O6.js} +1 -1
- package/dist/cdn/{RPL5Q7IL.js → 7IKNLW73.js} +1 -1
- package/dist/cdn/{5IO4VX4R.js → AHC3CH4P.js} +1 -1
- package/dist/cdn/{74Z5A6E2.js → AKXVDLK3.js} +1 -1
- package/dist/cdn/AO7XKW2U.js +4 -0
- package/dist/cdn/{BZWJ3KFS.js → ATEM3GJU.js} +104 -104
- package/dist/cdn/{3NI2BJYO.js → AULN2QXN.js} +1 -1
- package/dist/cdn/{GRVDJVOF.js → AX2U2PGS.js} +1 -1
- package/dist/cdn/{YBJ6AHAG.js → B57TWGXS.js} +1 -1
- package/dist/cdn/{EX4K4RKP.js → B7YYMYZB.js} +1 -1
- package/dist/cdn/{SQEPSAKG.js → BACWGZE4.js} +1 -1
- package/dist/cdn/{BWNEUQZZ.js → BDAY2SRY.js} +1 -1
- package/dist/cdn/{O6IGMQN7.js → BOQUQFNT.js} +1 -1
- package/dist/cdn/{LKVPVQIC.js → BTOTDVAS.js} +1 -1
- package/dist/cdn/{6L6JOGWD.js → BWFET22E.js} +1 -1
- package/dist/cdn/{DXI5HEQM.js → C7YLT2V6.js} +1 -1
- package/dist/cdn/{V24CDHGH.js → CAXEJ55N.js} +1 -1
- package/dist/cdn/{LCDURBN6.js → CYKO5XJY.js} +1 -1
- package/dist/cdn/{HOSSEVH5.js → DDUV67TU.js} +1 -1
- package/dist/cdn/{UDWEFNJE.js → DRZ2MEHM.js} +1 -1
- package/dist/cdn/DTTQLI5W.js +2 -0
- package/dist/cdn/{5FW45CM6.js → EJK7PYN5.js} +1 -1
- package/dist/cdn/{C2GWD5VP.js → ENJC4SNG.js} +1 -1
- package/dist/cdn/{WNYAZ4ME.js → ESH7SFXX.js} +1 -1
- package/dist/cdn/{B7CVHLVL.js → F46RK2J3.js} +1 -1
- package/dist/cdn/{MZ5XI2CY.js → F6H43GFC.js} +1 -1
- package/dist/cdn/{ECUD4NU6.js → FAHLQLKD.js} +1 -1
- package/dist/cdn/{QMQAQSIA.js → FKQHOE2A.js} +1 -1
- package/dist/cdn/{7AHZBLTM.js → FL4YRGDB.js} +1 -1
- package/dist/cdn/{KPEPW4QL.js → FPBZRT3J.js} +1 -1
- package/dist/cdn/{UILBHLN7.js → FWRNU7AK.js} +1 -1
- package/dist/cdn/{BFFHQBDI.js → G63VTGNV.js} +1 -1
- package/dist/cdn/{QODVIACF.js → GCDVJH5S.js} +1 -1
- package/dist/cdn/{EBDDUQNC.js → GCLCH6NX.js} +1 -1
- package/dist/cdn/{MVXK7UGO.js → GLD7SDA5.js} +1 -1
- package/dist/cdn/{KB7CXY4N.js → GVREVCUB.js} +1 -1
- package/dist/cdn/{ZHVO477V.js → HCY3VGST.js} +1 -1
- package/dist/cdn/{65I4AUS4.js → HKURBCD6.js} +1 -1
- package/dist/cdn/{XA6ZDTKA.js → HSZJX2Q4.js} +1 -1
- package/dist/cdn/{GSLDFLWZ.js → HXCNKN3S.js} +1 -1
- package/dist/cdn/{JB5XLSNA.js → IK3L2OC3.js} +1 -1
- package/dist/cdn/{O6HS2AMH.js → IKA3ESQ5.js} +1 -1
- package/dist/cdn/{Y7Z6LFBH.js → IXSDSBUI.js} +1 -1
- package/dist/cdn/{XXRBPKMI.js → J5Q7IGCO.js} +1 -1
- package/dist/cdn/{KMY4AVEA.js → J6PFJWXU.js} +1 -1
- package/dist/cdn/{QTCXH2O3.js → JBBUAR3W.js} +1 -1
- package/dist/cdn/{3CSSTWYC.js → JCPQ7OOS.js} +1 -1
- package/dist/cdn/{BSIPKI63.js → JNQB7T54.js} +1 -1
- package/dist/cdn/{J7DTCWOP.js → JX7BWUKD.js} +1 -1
- package/dist/cdn/{CC7JGR5Q.js → KGL266WS.js} +1 -1
- package/dist/cdn/{MXPZF4RB.js → KGXEY5HR.js} +1 -1
- package/dist/cdn/{EJRV6YWD.js → KN5XFC7O.js} +1 -1
- package/dist/cdn/{FDNEF4QD.js → KU2QSXAD.js} +1 -1
- package/dist/cdn/{65OXHGCN.js → KX4F4INQ.js} +1 -1
- package/dist/cdn/{7XPOQHB4.js → KZBPVSUW.js} +1 -1
- package/dist/cdn/{VSRNGZ43.js → LABCYKSC.js} +1 -1
- package/dist/cdn/{WRMREY3V.js → LI3GKZ35.js} +1 -1
- package/dist/cdn/{7NQYBMRX.js → MIKSQTTI.js} +1 -1
- package/dist/cdn/{CVKCFLNY.js → MOHSZVTU.js} +1 -1
- package/dist/cdn/{LFIP5DV3.js → MWTTZLRQ.js} +1 -1
- package/dist/cdn/{GHVPHEOH.js → MXNYBLUV.js} +1 -1
- package/dist/cdn/{AS7PVOU3.js → MZ63UWGX.js} +1 -1
- package/dist/cdn/N4MCHYQT.js +2 -0
- package/dist/cdn/{MVSQRD5M.js → NAZXHTIH.js} +1 -1
- package/dist/cdn/{GSI62QHB.js → NBWMZOGE.js} +1 -1
- package/dist/cdn/{NJSQ3NUT.js → NGAS7OCN.js} +1 -1
- package/dist/cdn/{6RQBPR56.js → O7LSXSBD.js} +1 -1
- package/dist/cdn/{DF2U7HIU.js → OLN76PG4.js} +1 -1
- package/dist/cdn/PIRHBQVO.js +351 -0
- package/dist/cdn/{LSDYUCCZ.js → PLELSLAV.js} +1 -1
- package/dist/cdn/{6KBY56R4.js → PPLHKHZ3.js} +1 -1
- package/dist/cdn/{HQFL3NGM.js → PWGCOGC7.js} +1 -1
- package/dist/cdn/{DLV7AZZ6.js → QEITYICZ.js} +1 -1
- package/dist/cdn/{KLZWOBGK.js → QVDDWNQD.js} +1 -1
- package/dist/cdn/{ZXGNDW3R.js → QWUJHEPY.js} +1 -1
- package/dist/cdn/R437P4KQ.js +2 -0
- package/dist/cdn/{ZSATEDPE.js → RKVNFHFD.js} +1 -1
- package/dist/cdn/{CVNW2AU2.js → RM6HYEWM.js} +1 -1
- package/dist/cdn/{GWIC6C6P.js → RNMVOUE3.js} +1 -1
- package/dist/cdn/{C3SIGIJC.js → RQQWTDQG.js} +1 -1
- package/dist/cdn/{XIUYVZYL.js → S3CBTGXW.js} +1 -1
- package/dist/cdn/{XYAVR2MM.js → SGWJLKO4.js} +1 -1
- package/dist/cdn/{BKIKLE4Z.js → SI2EHJJ5.js} +1 -1
- package/dist/cdn/{Z6CZ7GFZ.js → SY3D5J7W.js} +1 -1
- package/dist/cdn/{3FIRDPVD.js → TBXAQ6YS.js} +1 -1
- package/dist/cdn/{Q5N7I65T.js → TFWTXEN7.js} +1 -1
- package/dist/cdn/{YHF3Q7QB.js → TKIL55TV.js} +1 -1
- package/dist/cdn/{NVNB4L52.js → TSLAML4I.js} +1 -1
- package/dist/cdn/{5Q64VY2E.js → UCHXRVI7.js} +1 -1
- package/dist/cdn/{PQVA7SKB.js → UE2HAEBW.js} +1 -1
- package/dist/cdn/{E3O6DPAL.js → UEC5OGAS.js} +1 -1
- package/dist/cdn/{DE7GSGUB.js → UKAP3ALW.js} +1 -1
- package/dist/cdn/{CRTJERAB.js → UNKENPV5.js} +1 -1
- package/dist/cdn/{5F6WBFDO.js → V4OFLP6D.js} +1 -1
- package/dist/cdn/{LK6WQCXQ.js → VBZL2GZD.js} +1 -1
- package/dist/cdn/{RNNEZRGA.js → VLP6VQEG.js} +1 -1
- package/dist/cdn/{INFZEU32.js → VZY472CH.js} +1 -1
- package/dist/cdn/{P2FSR5OV.js → WEADUP3Y.js} +1 -1
- package/dist/cdn/{Y2KRCLNN.js → WKTMPKVR.js} +1 -1
- package/dist/cdn/{E5YZOOW3.js → WXFKH5GM.js} +1 -1
- package/dist/cdn/{RAL6IXW5.js → X52CK3FZ.js} +1 -1
- package/dist/cdn/{4MAH5ULJ.js → X7GGOH2R.js} +1 -1
- package/dist/cdn/{RJLEYL7O.js → XEON6B7Z.js} +1 -1
- package/dist/cdn/{SAVDBHDE.js → XL66TA6C.js} +1 -1
- package/dist/cdn/{KPKJ2OVD.js → XN5455P6.js} +1 -1
- package/dist/cdn/{DQJ36YEL.js → XOCNSPTC.js} +1 -1
- package/dist/cdn/{TK5EXRZL.js → XOPNEAS5.js} +1 -1
- package/dist/cdn/{YVNBCXBJ.js → XR3PT7FP.js} +1 -1
- package/dist/cdn/{LOSU3FPH.js → XSJOQTEM.js} +1 -1
- package/dist/cdn/{6OKLCUSH.js → Y2DDFGCN.js} +1 -1
- package/dist/cdn/{6F6YFDOY.js → YWO5HXXP.js} +1 -1
- package/dist/cdn/{NWOPIQFN.js → ZIIHIUUV.js} +1 -1
- package/dist/cdn/{Q6CXYCV6.js → ZOGD4MGP.js} +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/chunks/runtime.js +1 -1
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/solutions-components_commit.txt +4 -7
- package/package.json +1 -1
- package/dist/cdn/A4KEZALJ.js +0 -2
- package/dist/cdn/CGQALCTZ.js +0 -4
- package/dist/cdn/CXTHIJOC.js +0 -351
- package/dist/cdn/GPIIJWNM.js +0 -2
- package/dist/cdn/IGY23J7D.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as E}from"./BM666UZR.js";import{b as V}from"./RLSY4VUQ.js";import b from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as $}from"./VSRNGZ43.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as C}from"./ZB5UCRCG.js";import{F as d,G as u,H as S,J as p,K as v,h as g,i as o,q as w,u as L}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([x,R,D,N,{a:k,d:I,f:T},{c:_,g:G,j:O}])=>{var P=g`@layer{:host{display:block}.div-visible{display:inherit}.div-not-visible{display:none}.padding-bottom-1{padding-bottom:1rem}.padding-top-1{padding-top:1rem}.search-widget{width:100%!important;border:1px solid var(--calcite-color-border-input)}.w-100{width:100%}.search-distance{display:flex;padding-top:1rem}.font-bold{font:bold}.border-bottom{border-bottom:1px solid var(--calcite-color-border-2)}.tooltip-container{display:flex}.padding-start-1-2{padding-inline-start:.5rem}.padding-end-1-2{padding-inline-end:.5rem}.icon{--calcite-color-icon-color: var(--calcite-color-brand)}.tooltip-message{padding:5px 8px;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-color-text-2);max-width:400px}}`,y=class extends S{constructor(){super(),this.bufferColor=[227,139,79,.8],this.bufferOutlineColor=[255,255,255],this.customLabelEnabled=!1,this.enabledLayerIds=[],this.enableLayerFeatures=!0,this.enableLayerFeaturesOnLoad=!1,this.enableSearchDistance=!0,this.enableSearchDistanceOnLoad=!1,this.enableSketchTools=!0,this.geometries=[],this.headerLabelClass="font-bold",this.isUpdate=!1,this.layerViews=[],this.noResultText="",this.selectionLayerIds=[],this.searchDistanceEnabled=!1,this.useLayerFeaturesEnabled=!1,this._numSelected=0,this._searchTerm="",this._selectionLoading=!1,this._translations=$({name:"map-select-tools",blocking:!0}),this._bufferTools=d(),this._drawTools=d(),this._labelName=d(),this._pnContextConsumer=V({context:E,subscribe:!0}),this._searchElement=d(),this._selectedIds=[],this._selectionLabel="",this._graphics=[],this._featuresCollection={},this.selectionSetChange=w(),this.listenOn(window,"searchConfigurationChange",this.searchConfigurationChangeChanged),this.listenOn(window,"distanceChanged",this.distanceChanged),this.listenOn(window,"unitChanged",this.unitChanged)}static{this.properties={bufferColor:1,bufferOutlineColor:1,customLabelEnabled:5,enabledLayerIds:0,enableLayerFeatures:5,enableLayerFeaturesOnLoad:5,enableSearchDistance:5,enableSearchDistanceOnLoad:5,enableSketchTools:5,defaultBufferDistance:9,defaultBufferUnit:1,geometries:0,headerLabelClass:1,isUpdate:5,layerViews:0,mapView:0,noResultText:1,searchConfiguration:0,selectionSet:0,selectionLayerIds:0,selectLayerView:0,sketchLineSymbol:0,sketchPointSymbol:0,sketchPolygonSymbol:0,searchDistanceEnabled:5,useLayerFeaturesEnabled:5,_numSelected:16,_searchTerm:16,_selectionLoading:16,_translations:16}}static{this.styles=P}static{this.shadowRootOptions=L}willUpdate(e){e.has("geometries")&&(this.hasUpdated||this.geometries?.length>0)&&this.watchGeometriesHandler(this.geometries,e.get("geometries")),e.has("mapView")&&this.mapView&&this.mapViewWatchHandler(this.mapView,e.get("mapView")),e.has("defaultBufferUnit")&&this.hasUpdated&&(this.selectionSet&&(this.selectionSet.unit=this.defaultBufferUnit),this._bufferTools.value&&this.defaultBufferUnit!==void 0&&(this._bufferTools.value.unit=this.defaultBufferUnit),this._updateLabel()),e.has("defaultBufferDistance")&&this.hasUpdated&&(this.selectionSet&&(this.selectionSet.distance=this.defaultBufferDistance),this._updateLabel())}async watchGeometriesHandler(e,t){if(e!==t&&e.length>0)return this._highlightWithOIDsOrGeoms()}async mapViewWatchHandler(e,t){e&&e!==t&&await this._init()}async clearSelection(){return this._clearResults(!0,!0)}async getSelection(){return/\S+/gm.test(this._selectionLabel)||await this._updateLabel(),{id:this.isUpdate&&this.selectionSet?this.selectionSet.id:Date.now(),searchResult:this._searchResult,buffer:this._bufferGeometry,distance:this._bufferTools.value?.distance,download:!0,unit:this._bufferTools.value?.unit,label:this._selectionLabel,selectedIds:this._selectedIds,layerView:this.selectLayerView,geometries:this.geometries,graphics:this._graphics,selectLayers:this.layerViews,skipGeomOIDs:this._skipGeomOIDs,searchDistanceEnabled:this.searchDistanceEnabled,workflowType:this._workflowType,useLayerFeaturesEnabled:this.useLayerFeaturesEnabled,sketchGraphic:this._sketchGraphic}}searchConfigurationChangeChanged(e){this.searchConfiguration=e.detail}async distanceChanged(e){await this._distanceChanged(e.detail)}async unitChanged(e){e.detail.newValue!==e.detail.oldValue&&(this._unit=e.detail.newValue,await this._updateLabel())}async loaded(){await this._init()}render(){let e=this.enableSketchTools?"":"display-none",t=this.enableSketchTools?"padding-top-1":"",s=this.searchConfiguration&&this.mapView?this._getSearchConfig(this.searchConfiguration,this.mapView):void 0,i=this.searchConfiguration?.allPlaceholder&&this.searchConfiguration.allPlaceholder.toLowerCase()!=="find address or place"?this.searchConfiguration.allPlaceholder:this._translations.placeholder;return o`${this._getMapLayerPicker()}<div class="border-bottom"></div><div class="padding-top-sides-1"><arcgis-search class="search-widget" .activeSourceIndex=${s?.activeSourceIndex} .allPlaceholder=${i} .includeDefaultSourcesDisabled=${s?.includeDefaultSources===!1} @arcgisSearchClear=${()=>{this._handleSearchClear()}} @arcgisSelectResult=${a=>{this._handleSearchSelectResult(a)}} popup-disabled result-graphic-disabled .searchAllDisabled=${s?.searchAllEnabled===!1} .searchTerm=${this._searchTerm} .sources=${s?.sources} .view=${this.mapView} ${u(this._searchElement)}></arcgis-search><div class=${p(t)}><map-draw-tools active class=${p(e)} .editGraphicsEnabled=${!this.useLayerFeaturesEnabled} .graphics=${this._graphics} .mapView=${this.mapView} @sketchGraphicsChange=${a=>{this._sketchGraphicsChanged(a)}} .pointSymbol=${this.sketchPointSymbol} .polygonSymbol=${this.sketchPolygonSymbol} .polylineSymbol=${this.sketchLineSymbol} ${u(this._drawTools)}></map-draw-tools></div>${this.enableSearchDistance?this._getBufferOptions():void 0}${this.enableLayerFeatures?this._getUseLayerFeaturesOptions():void 0}${this._getNumSelected()}</div><div class="border-bottom"></div>${this._getNameInput()}`}_getBufferOptions(){this.enableSearchDistanceOnLoad&&(this.searchDistanceEnabled=!0,this.enableSearchDistanceOnLoad=!1);let e=this.searchDistanceEnabled?"search-distance":"div-not-visible",t=typeof this.selectionSet?.distance=="number"?this.selectionSet.distance:this.defaultBufferDistance;return o`<div><div class="padding-top-1 display-flex"><calcite-label class="label-margin-0 w-100" layout=inline-space-between><div class="tooltip-container">${this._translations.searchDistance}<calcite-icon aria-hidden=true class="padding-start-1-2 icon" .flipRtl=${this._translations._lang?.toLowerCase()!=="he"} icon=question id=search-distance-icon scale=s></calcite-icon></div></calcite-label><calcite-popover closable label overlay-positioning=fixed reference-element=search-distance-icon><span class="tooltip-message">${this._translations.useSearchDistanceTootip}</span></calcite-popover><calcite-switch .checked=${this.searchDistanceEnabled} @calciteSwitchChange=${()=>this.searchDistanceEnabled=!this.searchDistanceEnabled}></calcite-switch></div><div class=${p(e)}><buffer-tools .disabled=${!this.searchDistanceEnabled} .distance=${t} .geometries=${this.geometries} @bufferComplete=${s=>{this._bufferComplete(s)}} .unit=${this.selectionSet?.unit||this.defaultBufferUnit} ${u(this._bufferTools)}></buffer-tools></div></div>`}_getUseLayerFeaturesOptions(){this.enableLayerFeaturesOnLoad&&(this.useLayerFeaturesEnabled=!0,this.enableLayerFeaturesOnLoad=!1);let e=this.useLayerFeaturesEnabled?"div-visible":"div-not-visible";return o`<div><div class="padding-top-1 display-flex"><calcite-label class="label-margin-0 w-100" layout=inline-space-between><div class="tooltip-container">${this._translations.useLayerFeatures}<calcite-icon aria-hidden=true class="padding-start-1-2 icon" .flipRtl=${this._translations._lang?.toLowerCase()!=="he"} icon=question id=use-layer-features-icon scale=s></calcite-icon></div></calcite-label><calcite-popover closable label overlay-positioning=fixed reference-element=use-layer-features-icon><span class="tooltip-message">${this._translations.useLayerFeaturesTooltip}</span></calcite-popover><calcite-switch .checked=${this.useLayerFeaturesEnabled} @calciteSwitchChange=${()=>{this._useLayerFeaturesEnabledChanged()}}></calcite-switch></div><div class=${`${e} padding-top-1`}><map-layer-picker .enabledLayerIds=${this.selectionLayerIds} .mapView=${this.mapView} @layerSelectionChange=${t=>{this._layerSelectionChange(t)}} .selectedIds=${this.layerViews.map(t=>t.layer.id)}></map-layer-picker></div></div>`}_getNumSelected(){let e=this._translations._lang==="en"?`${this._translations.selectionLoading}...`:this._translations.selectionLoading;return o`<div class="padding-top-1 padding-bottom-1" style=${v({"align-items":"end",display:"flex"})}>${this._selectionLoading?o`<div><calcite-loader class="info-blue padding-end-1-2" inline .label=${e||""} scale=m type=indeterminate></calcite-loader></div>`:o`<calcite-icon aria-hidden=true class="info-blue padding-end-1-2" icon=feature-layer scale=s></calcite-icon>`}<calcite-input-message class="info-blue" scale=m>${this._selectionLoading?e:this.noResultText&&this._numSelected===0?this.noResultText:this._translations.selectedFeatures.replace("{{n}}",this._numSelected.toString())}</calcite-input-message></div>`}_getNameInput(){let e=this.customLabelEnabled?"":"display-none";return o`<div class=${`padding-sides-1 padding-top-1 ${e}`}><calcite-label class=${p(this.headerLabelClass)}>${this._translations.listName}<calcite-input @input=${()=>{this._selectionLabel=this._labelName.value?this._labelName.value.value:""}} .placeholder=${this._translations.listNamePlaceholder} .value=${this._selectionLabel||""} ${u(this._labelName)}></calcite-input></calcite-label></div>`}_getMapLayerPicker(){let e=this.selectionSet?.layerView?.layer.id;return o`<div class="display-flex padding-sides-1 padding-bottom-1"><calcite-label class=${`${this.headerLabelClass} width-full label-margin-0`}>${this._translations.inputLayer}<map-layer-picker .enabledLayerIds=${this.enabledLayerIds} .mapView=${this.mapView} @layerSelectionChange=${t=>{this._inputLayerSelectionChange(t)}} .selectedIds=${this.selectLayerView?[this.selectLayerView.layer.id]:this.selectionSet&&e!==void 0?[e]:[]}></map-layer-picker></calcite-label></div>`}async _init(){this._initGraphicsLayer(),await this._initSelectionSet()}async _initSelectionSet(){this.selectionSet&&(this._searchTerm=this.selectionSet.searchResult?.name,this._searchResult=this.selectionSet.searchResult,this._selectedIds=this.selectionSet.selectedIds,this._skipGeomOIDs=this.selectionSet.skipGeomOIDs||[],this.searchDistanceEnabled=this.selectionSet.searchDistanceEnabled,this.useLayerFeaturesEnabled=this.selectionSet.useLayerFeaturesEnabled,this._distance=this.selectionSet.searchDistanceEnabled?this.selectionSet.distance:0,this._unit=this.selectionSet.unit,this._workflowType=this.selectionSet.workflowType,this.selectLayerView=this.selectionSet.layerView,this._sketchGraphic=this.selectionSet.sketchGraphic,this.geometries=[...this.selectionSet?.geometries||[]],this._graphics=this.geometries.reduce((e,t)=>{let s=t.type==="point"?this.sketchPointSymbol:t.type==="polyline"?this.sketchLineSymbol:this.sketchPolygonSymbol;return e.push(new D({geometry:t,symbol:s})),e},[]),this._selectionLabel=this.selectionSet?.label,this.useLayerFeaturesEnabled||await this._drawTools.value?.updateGraphics(),this.selectionSet.layerView&&this.mapView&&await O(this.selectionSet.selectedIds,this.selectionSet.layerView,this.mapView,!1))}async _handleSearchClear(){let e=this._searchClearLabel();this._searchResult?.name&&await this._clearResults(!1,e)}async _handleSearchSelectResult(e){await this._selectResult(e.detail.result)}async _selectResult(e){if(e){this._searchResult=e;let t=e.feature,s=t?.layer,i=this.selectLayerView?.layer,a=Number(t?.getObjectId()),l;s?.sourceJSON?.isView&&s.url&&(l=await this._getViewSourceUrl(s.url));let r;i?.sourceJSON?.isView&&i.url&&(r=await this._getViewSourceUrl(i.url));let c=s?.url?.toLowerCase(),n=l?.toLowerCase(),h=i?.url?.toLowerCase(),m=r?.toLowerCase(),b=c&&h&&(c===h||c===m||n===h||n===m)&&!Number.isNaN(a),F=b?[a]:void 0;this._workflowType="SEARCH",this._updateLabel();let f=[e.feature];this._updateSelection(f,b,F),this._drawTools.value&&(this._drawTools.value.graphics=f)}else{let t=this._searchClearLabel();this._clearResults(!1,t)}}async _getViewSourceUrl(e){let t="",s=`${e}/sources?f=json`;try{let i=await x(s,{query:{f:"json"}});i?.data?.services?.length===1&&(t=i.data.services[0].url)}catch(i){console.log(i)}return t}_searchClearLabel(){return this._searchResult?.name&&this._labelName.value&&this._labelName.value.value.indexOf(this._searchResult.name)>-1}_getSearchConfig(e,t){let s=e?.sources;return s&&s?.length>0?(e={...e,includeDefaultSources:!1},s.forEach(i=>{if(i.hasOwnProperty("layer")){let a=i,l=a.layer?.id,r=l?t.map?.findLayerById(l):null,c=a?.layer?.url;r&&a?a.layer=r:c&&(a.layer=new R(c))}}),s?.forEach(i=>{if(i.hasOwnProperty("locator")){let a=i;if(a?.name==="ArcGIS World Geocoding Service"){let l=a.outFields||["Addr_type","Match_addr","StAddr","City"];a.outFields=l,a.singleLineFieldName="SingleLine"}a.url=a.url,delete a.url}})):e={...e,includeDefaultSources:!0},e}_initGraphicsLayer(){let e=this._pnContextConsumer.value,t=this._translations.bufferLayer;if(this.mapView){let s=this.mapView.map.layers.findIndex(i=>i.title===t);if(s>-1)this._bufferGraphicsLayer=this.mapView.map.layers.getItemAt(s);else if(this._bufferGraphicsLayer=new N({title:t,listMode:"hide"}),this._bufferGraphicsLayer){e.managedLayers[t]="buffer";let i=this.mapView.map.layers.findIndex(a=>a.title===this._translations.sketchLayer);i>-1?this.mapView.map.layers.add(this._bufferGraphicsLayer,i):this.mapView.map.layers.add(this._bufferGraphicsLayer)}}}async _sketchGraphicsChanged(e,t=!1){let s=e.detail.graphics;if(s.length>0&&s[0])if(t||(this._sketchGraphic=s[0]),this._workflowType=this.useLayerFeaturesEnabled?"SELECT":"SKETCH",this._workflowType==="SKETCH"&&this._drawTools.value&&await this._drawTools.value.updateGraphics(),await this._updateLabel(),this._clearSearchWidget(),this.useLayerFeaturesEnabled&&!t){let i=Array.isArray(s)?s.map(a=>a.geometry):this.geometries;await this._selectLayerFeatures(i[0])}else{let i=s.reduce((l,r)=>(r?.layer?.objectIdField?l.push(Number(r.attributes[r.layer.objectIdField])):r.getObjectId&&l.push(Number(r.getObjectId())),l),[]),a=e.detail.useOIDs&&i.length>0;this._updateSelection(s,a,i),a&&await this._highlightFeatures(i)}else await this._clearResults(!0,!0)}async _highlightWithOIDsOrGeoms(){return this._skipGeomOIDs&&this._skipGeomOIDs?.length>0?(this._selectedIds=this._skipGeomOIDs,this._highlightFeatures(this._selectedIds)):this._geomQuery(this.geometries)}async _highlightFeatures(e){let t=this._pnContextConsumer.value;if(t.removeHandles(),e.length>0&&this.selectLayerView&&this.mapView){let s=await G(e,this.selectLayerView,this.mapView);t.highlightHandles.push(s)}this._numSelected=e.length,this.selectionSetChange.emit(e.length)}async _selectFeatures(e){this._selectionLoading=!0,this._selectedIds=this.selectLayerView&&await k(e,this.selectLayerView.layer)||[],this._selectionLoading=!1,this._drawTools.value&&(this._drawTools.value.graphics=this._graphics),await this._highlightFeatures(this._selectedIds)}async _bufferComplete(e){this._bufferGeometry=Array.isArray(e.detail)?e.detail[0]:e.detail;let t=this._bufferTools.value&&Number(this._bufferTools.value.distance),s=0;if(this._bufferGeometry){let i={type:"simple-fill",color:this.bufferColor,outline:{color:this.bufferOutlineColor,width:1}},a=new D({geometry:this._bufferGeometry,symbol:i});this._bufferGraphicsLayer&&this.mapView&&(this._bufferGraphicsLayer.removeAll(),this._bufferGraphicsLayer.add(a),await this._selectFeatures([this._bufferGeometry]),a.geometry?.extent&&await this.mapView.goTo(a.geometry.extent)),s=t,t=0}else this._bufferGraphicsLayer&&this._bufferGraphicsLayer.removeAll(),await this._highlightWithOIDsOrGeoms();await this._distanceChanged({oldValue:t,newValue:s})}async _geomQuery(e){let t=T(e);return t?this._selectFeatures(t):Promise.resolve()}async _clearResults(e=!0,t=!1){this._selectedIds=[],this._distance=void 0,this._unit=void 0,t&&(this._selectionLabel="",this._labelName.value&&(this._labelName.value.value="")),this._bufferGraphicsLayer&&this._bufferGraphicsLayer.removeAll(),e&&this._clearSearchWidget(),this._pnContextConsumer.value.removeHandles(),this._drawTools.value?.clear&&(this._graphics=[],this.geometries=[],await this._drawTools.value.clear()),this._numSelected=this._selectedIds.length,this.selectionSetChange.emit(this._numSelected)}_clearSearchWidget(){this._searchElement.value?.clear(),this._searchResult=void 0}_updateSelection(e,t,s){this._selectedIds=t&&s?s:this._selectedIds,this._skipGeomOIDs=t?s:void 0,this.geometries=Array.isArray(e)?e.reduce((i,a)=>(a.geometry&&i.push(a.geometry),i),[]):this.geometries,this._graphics=e}async _updateLabel(){if(this.enableSearchDistance){let e=this._translations.sketch&&this._selectionLabel.indexOf(this._translations.sketch)>-1,t=this._translations.select&&this._selectionLabel.indexOf(this._translations.select)>-1,s=this._selectionLabel.indexOf(this._searchResult?.name)>-1,i=this._workflowType==="SEARCH"?this._searchResult?.name:this._workflowType==="SELECT"?this._translations.select:this._translations.sketch,a=this._bufferTools.value?this._bufferTools.value.unit:this._unit,l=this._bufferTools.value&&a&&await this._bufferTools.value.getTranslatedUnit(a),r=Number.isNaN(Number(this._distance))&&this._bufferTools.value?this._bufferTools.value.distance:this._distance;this._selectionLabel=e||t||s||!this._selectionLabel?`${i} ${r} ${l}`:this._selectionLabel,this._labelName.value&&(this._labelName.value.value=this._selectionLabel)}}async _layerSelectionChange(e){if(Array.isArray(e.detail)&&e.detail.length>0){let t=e.detail.reduce((s,i)=>(this.mapView&&s.push(_(this.mapView,i)),s),[]);return Promise.all(t).then(s=>{this.layerViews=s.reduce((i,a)=>(a&&i.push(a),i),[]),this._featuresCollection={},this._sketchGraphic&&this._sketchGraphicsChanged({detail:{graphics:[this._sketchGraphic],useOIDs:!1}})})}}async _inputLayerSelectionChange(e){let t=e?.detail?.length>0?e.detail[0]:"";(!this.selectLayerView||t!==this.selectLayerView.layer.id)&&(this.selectLayerView=this.mapView&&await _(this.mapView,t),await this._updateLabel(),this._bufferGeometry?await this._selectFeatures([this._bufferGeometry]):await this._highlightWithOIDsOrGeoms())}async _distanceChanged(e){e.newValue!==e.oldValue&&(this._distance=e.newValue,await this._updateLabel())}async _selectLayerFeatures(e){this._selectionLoading=!0;let t=this.layerViews.map(s=>(this._featuresCollection[s.layer.id]=[],I(0,s.layer,e,this._featuresCollection)));return Promise.all(t).then(async s=>{this._selectionLoading=!1;let i=[];s.forEach(n=>{Object.keys(n).forEach(h=>{i=i.concat(n[h])})});let a=!1;i.forEach(n=>{let h=n.geometry;n.symbol=h&&h.type==="point"?this.sketchPointSymbol:h&&h.type==="polyline"?this.sketchLineSymbol:h&&h.type==="polygon"?this.sketchPolygonSymbol:void 0,a=n?.layer?.hasOwnProperty("objectIdField")||n.hasOwnProperty("getObjectId")});let l=this.layerViews[0].layer,r=this.selectLayerView?.layer,c=a&&l.url===r?.url&&r?.layerId===l.layerId;await this._sketchGraphicsChanged({detail:{graphics:i,useOIDs:c}},!0)})}_useLayerFeaturesEnabledChanged(){this.useLayerFeaturesEnabled=!this.useLayerFeaturesEnabled,this._sketchGraphic&&this._sketchGraphicsChanged({detail:{graphics:[this._sketchGraphic],useOIDs:!1}})}};C("map-select-tools",y);return y},"request","layers/FeatureLayer","Graphic","layers/GraphicsLayer",a,b)
|
|
2
|
+
import{a as E}from"./BM666UZR.js";import{b as V}from"./RLSY4VUQ.js";import b from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as $}from"./LABCYKSC.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as C}from"./5BJO5ABV.js";import{F as d,G as u,H as S,J as p,K as v,h as g,i as o,q as w,u as L}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([x,R,D,N,{a:k,d:I,f:T},{c:_,g:G,j:O}])=>{var P=g`@layer{:host{display:block}.div-visible{display:inherit}.div-not-visible{display:none}.padding-bottom-1{padding-bottom:1rem}.padding-top-1{padding-top:1rem}.search-widget{width:100%!important;border:1px solid var(--calcite-color-border-input)}.w-100{width:100%}.search-distance{display:flex;padding-top:1rem}.font-bold{font:bold}.border-bottom{border-bottom:1px solid var(--calcite-color-border-2)}.tooltip-container{display:flex}.padding-start-1-2{padding-inline-start:.5rem}.padding-end-1-2{padding-inline-end:.5rem}.icon{--calcite-color-icon-color: var(--calcite-color-brand)}.tooltip-message{padding:5px 8px;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-color-text-2);max-width:400px}}`,y=class extends S{constructor(){super(),this.bufferColor=[227,139,79,.8],this.bufferOutlineColor=[255,255,255],this.customLabelEnabled=!1,this.enabledLayerIds=[],this.enableLayerFeatures=!0,this.enableLayerFeaturesOnLoad=!1,this.enableSearchDistance=!0,this.enableSearchDistanceOnLoad=!1,this.enableSketchTools=!0,this.geometries=[],this.headerLabelClass="font-bold",this.isUpdate=!1,this.layerViews=[],this.noResultText="",this.selectionLayerIds=[],this.searchDistanceEnabled=!1,this.useLayerFeaturesEnabled=!1,this._numSelected=0,this._searchTerm="",this._selectionLoading=!1,this._translations=$({name:"map-select-tools",blocking:!0}),this._bufferTools=d(),this._drawTools=d(),this._labelName=d(),this._pnContextConsumer=V({context:E,subscribe:!0}),this._searchElement=d(),this._selectedIds=[],this._selectionLabel="",this._graphics=[],this._featuresCollection={},this.selectionSetChange=w(),this.listenOn(window,"searchConfigurationChange",this.searchConfigurationChangeChanged),this.listenOn(window,"distanceChanged",this.distanceChanged),this.listenOn(window,"unitChanged",this.unitChanged)}static{this.properties={bufferColor:1,bufferOutlineColor:1,customLabelEnabled:5,enabledLayerIds:0,enableLayerFeatures:5,enableLayerFeaturesOnLoad:5,enableSearchDistance:5,enableSearchDistanceOnLoad:5,enableSketchTools:5,defaultBufferDistance:9,defaultBufferUnit:1,geometries:0,headerLabelClass:1,isUpdate:5,layerViews:0,mapView:0,noResultText:1,searchConfiguration:0,selectionSet:0,selectionLayerIds:0,selectLayerView:0,sketchLineSymbol:0,sketchPointSymbol:0,sketchPolygonSymbol:0,searchDistanceEnabled:5,useLayerFeaturesEnabled:5,_numSelected:16,_searchTerm:16,_selectionLoading:16,_translations:16}}static{this.styles=P}static{this.shadowRootOptions=L}willUpdate(e){e.has("geometries")&&(this.hasUpdated||this.geometries?.length>0)&&this.watchGeometriesHandler(this.geometries,e.get("geometries")),e.has("mapView")&&this.mapView&&this.mapViewWatchHandler(this.mapView,e.get("mapView")),e.has("defaultBufferUnit")&&this.hasUpdated&&(this.selectionSet&&(this.selectionSet.unit=this.defaultBufferUnit),this._bufferTools.value&&this.defaultBufferUnit!==void 0&&(this._bufferTools.value.unit=this.defaultBufferUnit),this._updateLabel()),e.has("defaultBufferDistance")&&this.hasUpdated&&(this.selectionSet&&(this.selectionSet.distance=this.defaultBufferDistance),this._updateLabel())}async watchGeometriesHandler(e,t){if(e!==t&&e.length>0)return this._highlightWithOIDsOrGeoms()}async mapViewWatchHandler(e,t){e&&e!==t&&await this._init()}async clearSelection(){return this._clearResults(!0,!0)}async getSelection(){return/\S+/gm.test(this._selectionLabel)||await this._updateLabel(),{id:this.isUpdate&&this.selectionSet?this.selectionSet.id:Date.now(),searchResult:this._searchResult,buffer:this._bufferGeometry,distance:this._bufferTools.value?.distance,download:!0,unit:this._bufferTools.value?.unit,label:this._selectionLabel,selectedIds:this._selectedIds,layerView:this.selectLayerView,geometries:this.geometries,graphics:this._graphics,selectLayers:this.layerViews,skipGeomOIDs:this._skipGeomOIDs,searchDistanceEnabled:this.searchDistanceEnabled,workflowType:this._workflowType,useLayerFeaturesEnabled:this.useLayerFeaturesEnabled,sketchGraphic:this._sketchGraphic}}searchConfigurationChangeChanged(e){this.searchConfiguration=e.detail}async distanceChanged(e){await this._distanceChanged(e.detail)}async unitChanged(e){e.detail.newValue!==e.detail.oldValue&&(this._unit=e.detail.newValue,await this._updateLabel())}async loaded(){await this._init()}render(){let e=this.enableSketchTools?"":"display-none",t=this.enableSketchTools?"padding-top-1":"",s=this.searchConfiguration&&this.mapView?this._getSearchConfig(this.searchConfiguration,this.mapView):void 0,i=this.searchConfiguration?.allPlaceholder&&this.searchConfiguration.allPlaceholder.toLowerCase()!=="find address or place"?this.searchConfiguration.allPlaceholder:this._translations.placeholder;return o`${this._getMapLayerPicker()}<div class="border-bottom"></div><div class="padding-top-sides-1"><arcgis-search class="search-widget" .activeSourceIndex=${s?.activeSourceIndex} .allPlaceholder=${i} .includeDefaultSourcesDisabled=${s?.includeDefaultSources===!1} @arcgisSearchClear=${()=>{this._handleSearchClear()}} @arcgisSelectResult=${a=>{this._handleSearchSelectResult(a)}} popup-disabled result-graphic-disabled .searchAllDisabled=${s?.searchAllEnabled===!1} .searchTerm=${this._searchTerm} .sources=${s?.sources} .view=${this.mapView} ${u(this._searchElement)}></arcgis-search><div class=${p(t)}><map-draw-tools active class=${p(e)} .editGraphicsEnabled=${!this.useLayerFeaturesEnabled} .graphics=${this._graphics} .mapView=${this.mapView} @sketchGraphicsChange=${a=>{this._sketchGraphicsChanged(a)}} .pointSymbol=${this.sketchPointSymbol} .polygonSymbol=${this.sketchPolygonSymbol} .polylineSymbol=${this.sketchLineSymbol} ${u(this._drawTools)}></map-draw-tools></div>${this.enableSearchDistance?this._getBufferOptions():void 0}${this.enableLayerFeatures?this._getUseLayerFeaturesOptions():void 0}${this._getNumSelected()}</div><div class="border-bottom"></div>${this._getNameInput()}`}_getBufferOptions(){this.enableSearchDistanceOnLoad&&(this.searchDistanceEnabled=!0,this.enableSearchDistanceOnLoad=!1);let e=this.searchDistanceEnabled?"search-distance":"div-not-visible",t=typeof this.selectionSet?.distance=="number"?this.selectionSet.distance:this.defaultBufferDistance;return o`<div><div class="padding-top-1 display-flex"><calcite-label class="label-margin-0 w-100" layout=inline-space-between><div class="tooltip-container">${this._translations.searchDistance}<calcite-icon aria-hidden=true class="padding-start-1-2 icon" .flipRtl=${this._translations._lang?.toLowerCase()!=="he"} icon=question id=search-distance-icon scale=s></calcite-icon></div></calcite-label><calcite-popover closable label overlay-positioning=fixed reference-element=search-distance-icon><span class="tooltip-message">${this._translations.useSearchDistanceTootip}</span></calcite-popover><calcite-switch .checked=${this.searchDistanceEnabled} @calciteSwitchChange=${()=>this.searchDistanceEnabled=!this.searchDistanceEnabled}></calcite-switch></div><div class=${p(e)}><buffer-tools .disabled=${!this.searchDistanceEnabled} .distance=${t} .geometries=${this.geometries} @bufferComplete=${s=>{this._bufferComplete(s)}} .unit=${this.selectionSet?.unit||this.defaultBufferUnit} ${u(this._bufferTools)}></buffer-tools></div></div>`}_getUseLayerFeaturesOptions(){this.enableLayerFeaturesOnLoad&&(this.useLayerFeaturesEnabled=!0,this.enableLayerFeaturesOnLoad=!1);let e=this.useLayerFeaturesEnabled?"div-visible":"div-not-visible";return o`<div><div class="padding-top-1 display-flex"><calcite-label class="label-margin-0 w-100" layout=inline-space-between><div class="tooltip-container">${this._translations.useLayerFeatures}<calcite-icon aria-hidden=true class="padding-start-1-2 icon" .flipRtl=${this._translations._lang?.toLowerCase()!=="he"} icon=question id=use-layer-features-icon scale=s></calcite-icon></div></calcite-label><calcite-popover closable label overlay-positioning=fixed reference-element=use-layer-features-icon><span class="tooltip-message">${this._translations.useLayerFeaturesTooltip}</span></calcite-popover><calcite-switch .checked=${this.useLayerFeaturesEnabled} @calciteSwitchChange=${()=>{this._useLayerFeaturesEnabledChanged()}}></calcite-switch></div><div class=${`${e} padding-top-1`}><map-layer-picker .enabledLayerIds=${this.selectionLayerIds} .mapView=${this.mapView} @layerSelectionChange=${t=>{this._layerSelectionChange(t)}} .selectedIds=${this.layerViews.map(t=>t.layer.id)}></map-layer-picker></div></div>`}_getNumSelected(){let e=this._translations._lang==="en"?`${this._translations.selectionLoading}...`:this._translations.selectionLoading;return o`<div class="padding-top-1 padding-bottom-1" style=${v({"align-items":"end",display:"flex"})}>${this._selectionLoading?o`<div><calcite-loader class="info-blue padding-end-1-2" inline .label=${e||""} scale=m type=indeterminate></calcite-loader></div>`:o`<calcite-icon aria-hidden=true class="info-blue padding-end-1-2" icon=feature-layer scale=s></calcite-icon>`}<calcite-input-message class="info-blue" scale=m>${this._selectionLoading?e:this.noResultText&&this._numSelected===0?this.noResultText:this._translations.selectedFeatures.replace("{{n}}",this._numSelected.toString())}</calcite-input-message></div>`}_getNameInput(){let e=this.customLabelEnabled?"":"display-none";return o`<div class=${`padding-sides-1 padding-top-1 ${e}`}><calcite-label class=${p(this.headerLabelClass)}>${this._translations.listName}<calcite-input @input=${()=>{this._selectionLabel=this._labelName.value?this._labelName.value.value:""}} .placeholder=${this._translations.listNamePlaceholder} .value=${this._selectionLabel||""} ${u(this._labelName)}></calcite-input></calcite-label></div>`}_getMapLayerPicker(){let e=this.selectionSet?.layerView?.layer.id;return o`<div class="display-flex padding-sides-1 padding-bottom-1"><calcite-label class=${`${this.headerLabelClass} width-full label-margin-0`}>${this._translations.inputLayer}<map-layer-picker .enabledLayerIds=${this.enabledLayerIds} .mapView=${this.mapView} @layerSelectionChange=${t=>{this._inputLayerSelectionChange(t)}} .selectedIds=${this.selectLayerView?[this.selectLayerView.layer.id]:this.selectionSet&&e!==void 0?[e]:[]}></map-layer-picker></calcite-label></div>`}async _init(){this._initGraphicsLayer(),await this._initSelectionSet()}async _initSelectionSet(){this.selectionSet&&(this._searchTerm=this.selectionSet.searchResult?.name,this._searchResult=this.selectionSet.searchResult,this._selectedIds=this.selectionSet.selectedIds,this._skipGeomOIDs=this.selectionSet.skipGeomOIDs||[],this.searchDistanceEnabled=this.selectionSet.searchDistanceEnabled,this.useLayerFeaturesEnabled=this.selectionSet.useLayerFeaturesEnabled,this._distance=this.selectionSet.searchDistanceEnabled?this.selectionSet.distance:0,this._unit=this.selectionSet.unit,this._workflowType=this.selectionSet.workflowType,this.selectLayerView=this.selectionSet.layerView,this._sketchGraphic=this.selectionSet.sketchGraphic,this.geometries=[...this.selectionSet?.geometries||[]],this._graphics=this.geometries.reduce((e,t)=>{let s=t.type==="point"?this.sketchPointSymbol:t.type==="polyline"?this.sketchLineSymbol:this.sketchPolygonSymbol;return e.push(new D({geometry:t,symbol:s})),e},[]),this._selectionLabel=this.selectionSet?.label,this.useLayerFeaturesEnabled||await this._drawTools.value?.updateGraphics(),this.selectionSet.layerView&&this.mapView&&await O(this.selectionSet.selectedIds,this.selectionSet.layerView,this.mapView,!1))}async _handleSearchClear(){let e=this._searchClearLabel();this._searchResult?.name&&await this._clearResults(!1,e)}async _handleSearchSelectResult(e){await this._selectResult(e.detail.result)}async _selectResult(e){if(e){this._searchResult=e;let t=e.feature,s=t?.layer,i=this.selectLayerView?.layer,a=Number(t?.getObjectId()),l;s?.sourceJSON?.isView&&s.url&&(l=await this._getViewSourceUrl(s.url));let r;i?.sourceJSON?.isView&&i.url&&(r=await this._getViewSourceUrl(i.url));let c=s?.url?.toLowerCase(),n=l?.toLowerCase(),h=i?.url?.toLowerCase(),m=r?.toLowerCase(),b=c&&h&&(c===h||c===m||n===h||n===m)&&!Number.isNaN(a),F=b?[a]:void 0;this._workflowType="SEARCH",this._updateLabel();let f=[e.feature];this._updateSelection(f,b,F),this._drawTools.value&&(this._drawTools.value.graphics=f)}else{let t=this._searchClearLabel();this._clearResults(!1,t)}}async _getViewSourceUrl(e){let t="",s=`${e}/sources?f=json`;try{let i=await x(s,{query:{f:"json"}});i?.data?.services?.length===1&&(t=i.data.services[0].url)}catch(i){console.log(i)}return t}_searchClearLabel(){return this._searchResult?.name&&this._labelName.value&&this._labelName.value.value.indexOf(this._searchResult.name)>-1}_getSearchConfig(e,t){let s=e?.sources;return s&&s?.length>0?(e={...e,includeDefaultSources:!1},s.forEach(i=>{if(i.hasOwnProperty("layer")){let a=i,l=a.layer?.id,r=l?t.map?.findLayerById(l):null,c=a?.layer?.url;r&&a?a.layer=r:c&&(a.layer=new R(c))}}),s?.forEach(i=>{if(i.hasOwnProperty("locator")){let a=i;if(a?.name==="ArcGIS World Geocoding Service"){let l=a.outFields||["Addr_type","Match_addr","StAddr","City"];a.outFields=l,a.singleLineFieldName="SingleLine"}a.url=a.url,delete a.url}})):e={...e,includeDefaultSources:!0},e}_initGraphicsLayer(){let e=this._pnContextConsumer.value,t=this._translations.bufferLayer;if(this.mapView){let s=this.mapView.map.layers.findIndex(i=>i.title===t);if(s>-1)this._bufferGraphicsLayer=this.mapView.map.layers.getItemAt(s);else if(this._bufferGraphicsLayer=new N({title:t,listMode:"hide"}),this._bufferGraphicsLayer){e.managedLayers[t]="buffer";let i=this.mapView.map.layers.findIndex(a=>a.title===this._translations.sketchLayer);i>-1?this.mapView.map.layers.add(this._bufferGraphicsLayer,i):this.mapView.map.layers.add(this._bufferGraphicsLayer)}}}async _sketchGraphicsChanged(e,t=!1){let s=e.detail.graphics;if(s.length>0&&s[0])if(t||(this._sketchGraphic=s[0]),this._workflowType=this.useLayerFeaturesEnabled?"SELECT":"SKETCH",this._workflowType==="SKETCH"&&this._drawTools.value&&await this._drawTools.value.updateGraphics(),await this._updateLabel(),this._clearSearchWidget(),this.useLayerFeaturesEnabled&&!t){let i=Array.isArray(s)?s.map(a=>a.geometry):this.geometries;await this._selectLayerFeatures(i[0])}else{let i=s.reduce((l,r)=>(r?.layer?.objectIdField?l.push(Number(r.attributes[r.layer.objectIdField])):r.getObjectId&&l.push(Number(r.getObjectId())),l),[]),a=e.detail.useOIDs&&i.length>0;this._updateSelection(s,a,i),a&&await this._highlightFeatures(i)}else await this._clearResults(!0,!0)}async _highlightWithOIDsOrGeoms(){return this._skipGeomOIDs&&this._skipGeomOIDs?.length>0?(this._selectedIds=this._skipGeomOIDs,this._highlightFeatures(this._selectedIds)):this._geomQuery(this.geometries)}async _highlightFeatures(e){let t=this._pnContextConsumer.value;if(t.removeHandles(),e.length>0&&this.selectLayerView&&this.mapView){let s=await G(e,this.selectLayerView,this.mapView);t.highlightHandles.push(s)}this._numSelected=e.length,this.selectionSetChange.emit(e.length)}async _selectFeatures(e){this._selectionLoading=!0,this._selectedIds=this.selectLayerView&&await k(e,this.selectLayerView.layer)||[],this._selectionLoading=!1,this._drawTools.value&&(this._drawTools.value.graphics=this._graphics),await this._highlightFeatures(this._selectedIds)}async _bufferComplete(e){this._bufferGeometry=Array.isArray(e.detail)?e.detail[0]:e.detail;let t=this._bufferTools.value&&Number(this._bufferTools.value.distance),s=0;if(this._bufferGeometry){let i={type:"simple-fill",color:this.bufferColor,outline:{color:this.bufferOutlineColor,width:1}},a=new D({geometry:this._bufferGeometry,symbol:i});this._bufferGraphicsLayer&&this.mapView&&(this._bufferGraphicsLayer.removeAll(),this._bufferGraphicsLayer.add(a),await this._selectFeatures([this._bufferGeometry]),a.geometry?.extent&&await this.mapView.goTo(a.geometry.extent)),s=t,t=0}else this._bufferGraphicsLayer&&this._bufferGraphicsLayer.removeAll(),await this._highlightWithOIDsOrGeoms();await this._distanceChanged({oldValue:t,newValue:s})}async _geomQuery(e){let t=T(e);return t?this._selectFeatures(t):Promise.resolve()}async _clearResults(e=!0,t=!1){this._selectedIds=[],this._distance=void 0,this._unit=void 0,t&&(this._selectionLabel="",this._labelName.value&&(this._labelName.value.value="")),this._bufferGraphicsLayer&&this._bufferGraphicsLayer.removeAll(),e&&this._clearSearchWidget(),this._pnContextConsumer.value.removeHandles(),this._drawTools.value?.clear&&(this._graphics=[],this.geometries=[],await this._drawTools.value.clear()),this._numSelected=this._selectedIds.length,this.selectionSetChange.emit(this._numSelected)}_clearSearchWidget(){this._searchElement.value?.clear(),this._searchResult=void 0}_updateSelection(e,t,s){this._selectedIds=t&&s?s:this._selectedIds,this._skipGeomOIDs=t?s:void 0,this.geometries=Array.isArray(e)?e.reduce((i,a)=>(a.geometry&&i.push(a.geometry),i),[]):this.geometries,this._graphics=e}async _updateLabel(){if(this.enableSearchDistance){let e=this._translations.sketch&&this._selectionLabel.indexOf(this._translations.sketch)>-1,t=this._translations.select&&this._selectionLabel.indexOf(this._translations.select)>-1,s=this._selectionLabel.indexOf(this._searchResult?.name)>-1,i=this._workflowType==="SEARCH"?this._searchResult?.name:this._workflowType==="SELECT"?this._translations.select:this._translations.sketch,a=this._bufferTools.value?this._bufferTools.value.unit:this._unit,l=this._bufferTools.value&&a&&await this._bufferTools.value.getTranslatedUnit(a),r=Number.isNaN(Number(this._distance))&&this._bufferTools.value?this._bufferTools.value.distance:this._distance;this._selectionLabel=e||t||s||!this._selectionLabel?`${i} ${r} ${l}`:this._selectionLabel,this._labelName.value&&(this._labelName.value.value=this._selectionLabel)}}async _layerSelectionChange(e){if(Array.isArray(e.detail)&&e.detail.length>0){let t=e.detail.reduce((s,i)=>(this.mapView&&s.push(_(this.mapView,i)),s),[]);return Promise.all(t).then(s=>{this.layerViews=s.reduce((i,a)=>(a&&i.push(a),i),[]),this._featuresCollection={},this._sketchGraphic&&this._sketchGraphicsChanged({detail:{graphics:[this._sketchGraphic],useOIDs:!1}})})}}async _inputLayerSelectionChange(e){let t=e?.detail?.length>0?e.detail[0]:"";(!this.selectLayerView||t!==this.selectLayerView.layer.id)&&(this.selectLayerView=this.mapView&&await _(this.mapView,t),await this._updateLabel(),this._bufferGeometry?await this._selectFeatures([this._bufferGeometry]):await this._highlightWithOIDsOrGeoms())}async _distanceChanged(e){e.newValue!==e.oldValue&&(this._distance=e.newValue,await this._updateLabel())}async _selectLayerFeatures(e){this._selectionLoading=!0;let t=this.layerViews.map(s=>(this._featuresCollection[s.layer.id]=[],I(0,s.layer,e,this._featuresCollection)));return Promise.all(t).then(async s=>{this._selectionLoading=!1;let i=[];s.forEach(n=>{Object.keys(n).forEach(h=>{i=i.concat(n[h])})});let a=!1;i.forEach(n=>{let h=n.geometry;n.symbol=h&&h.type==="point"?this.sketchPointSymbol:h&&h.type==="polyline"?this.sketchLineSymbol:h&&h.type==="polygon"?this.sketchPolygonSymbol:void 0,a=n?.layer?.hasOwnProperty("objectIdField")||n.hasOwnProperty("getObjectId")});let l=this.layerViews[0].layer,r=this.selectLayerView?.layer,c=a&&l.url===r?.url&&r?.layerId===l.layerId;await this._sketchGraphicsChanged({detail:{graphics:i,useOIDs:c}},!0)})}_useLayerFeaturesEnabledChanged(){this.useLayerFeaturesEnabled=!this.useLayerFeaturesEnabled,this._sketchGraphic&&this._sketchGraphicsChanged({detail:{graphics:[this._sketchGraphic],useOIDs:!1}})}};C("map-select-tools",y);return y},"request","layers/FeatureLayer","Graphic","layers/GraphicsLayer",a,b)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import b from"./
|
|
2
|
+
import b from"./XSJOQTEM.js";import a from"./XOCNSPTC.js";export default $arcgis.t(([{n:d},{c:u}])=>{async function O(r,n,t,o,e=d,a="created",s="desc",i=!1,l=[],m=[],f,g,p){if(!r?.IsSignedIn)return;let c={q:e,filter:"type:Solution",sortField:a,sortOrder:s,delay:i,categories:l,num:100};return c.q+=y(r,g),await S(n,c,o,m,p,f)}function y(r,n){let t="",o=r.PortalUserOrg,e=r.PortalUserName;return o&&(t+=" orgid:"+o),n!=="My organization's solutions"&&e&&(t+=" owner:"+e),t}async function S(r,n,t,o,e="",a){let s=await t.requestDeployedSolutionCards(n,r,e,a),i=u(s.cards,o);return{cards:s.cards,relatedSolutions:i}}return O},a,b)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import b from"./
|
|
2
|
+
import b from"./3TO6KC3G.js";import"./MHMM4RFR.js";import"./JNQB7T54.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./LABCYKSC.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import"./TEHBW75B.js";import"./RSPNBIIE.js";import"./ZCU2WWVN.js";import"./WGO4EVOV.js";import"./YKB6256M.js";import"./36LRAUE4.js";import"./JMY4B4WQ.js";import"./VQ5ZAQUF.js";import"./Z4F2NZOT.js";import"./KOIDWEP3.js";import"./3KXMYZCU.js";import"./6ERMTA3J.js";import"./GF4QELNV.js";import"./3TAQSXLA.js";import"./PY6RTQDR.js";import"./DKD2EGQP.js";import"./5O53T3SW.js";import"./AJZDBHB6.js";import"./FES7B3SJ.js";import"./5BJO5ABV.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,{c:o}])=>{return o},a,b)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as v}from"./BM666UZR.js";import{b as w}from"./RLSY4VUQ.js";import e from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as L}from"./VSRNGZ43.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as u}from"./ZB5UCRCG.js";import{F as d,G as o,H as g,J as p,K as c,h as b,i,l,q as h,u as _}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,{a:f,b:I,d:y}])=>{var $=b`@layer{:host{display:block}.map-layer-picker-container{width:100%;align-items:center}.map-layer-picker{position:relative;width:100%;display:inline-block}.padding-bottom-1{padding-bottom:1rem}.layer-picker-dropdown{height:100%;width:100%}.max-width-350{max-width:350px}.height-100{height:100%}.disabled{cursor:default!important;user-select:none;opacity:var(--calcite-opacity-disabled);pointer-events:none}.no-bottom-margin{--calcite-label-margin-bottom: 0px}.layer-picker-label-container{align-items:center;display:inline-flex;height:100%;padding-inline-start:1rem;padding-inline-end:1rem}.padding-start-1{padding-inline-start:1rem}.cursor-default{cursor:default}.popover-list{overflow:auto;width:250px}}`,m=class extends g{constructor(){super(),this.appearance="transparent",this.configLayerOrderDefined=!1,this.defaultLayerId="",this.disabled=!1,this.display="inline-block",this.enabledLayerIds=[],this.isMobile=!1,this.showOnlyUpdatableLayers=!1,this.selectedIds=[],this.scale="m",this.showTables=!1,this.showTablesDisabled=!1,this.showSingleLayerAsLabel=!1,this.type="select",this.showLayersListInPopover=!1,this.referenceElement="",this.force=!1,this._hasMultipleLayers=!0,this._hasValidLayers=!0,this._isDropdownOpen=!1,this.ids=[],this.selectedName="",this._translations=L({name:"map-layer-picker",blocking:!0}),this.defaultLayerHonored=!1,this._layerSelectElement=d(),this._layerComboboxElement=d(),this._pnContextConsumer=w({context:v,subscribe:!0}),this._skipEditCheck=!1,this._popover=d(),this.beforeLayerSelectionChange=h(),this.idsFound=h(),this.noLayersFound=h(),this.layerSelectionChange=h(),this.listenOn(window,"mapChanged",this.mapChanged),this.listenOn(window,"requestLayerSelectionChange",this.requestLayerSelectionChange)}static{this.properties={appearance:1,configLayerOrderDefined:5,defaultLayerId:1,disabled:5,display:1,enabledLayerIds:0,height:9,isMobile:5,mapView:0,showOnlyUpdatableLayers:5,placeholderIcon:1,selectedIds:0,scale:1,showTables:5,showTablesDisabled:5,showSingleLayerAsLabel:5,type:1,showLayersListInPopover:5,referenceElement:1,force:16,_hasMultipleLayers:16,_hasValidLayers:16,_isDropdownOpen:16,ids:16,selectedName:16,_translations:16}}static{this.styles=$}static{this.shadowRootOptions=_}willUpdate(e){e.has("mapView")&&this.hasUpdated&&this.mapViewWatchHandler(),e.has("type")&&(this._layerElement=this.type==="select"?this._layerSelectElement:this._layerComboboxElement),e.has("selectedIds")&&this.hasUpdated&&this.mapView&&(async()=>{let t=await y(this.mapView,this.selectedIds[0]);this.selectedName=t?.title??""})(),e.has("enabledLayerIds")&&this.hasUpdated&&this.enabledLayerIdsWatchHandler()}async enabledLayerIdsWatchHandler(){let e=this.selectedIds.length>0&&!this.enabledLayerIds.includes(this.selectedIds[0]),t=this.enabledLayerIds.some(a=>!this.ids.includes(a)),s=this.ids.toString()!==this.enabledLayerIds.toString();e?this.mapViewWatchHandler():(t||s)&&this._setLayers(),this._hasMultipleLayers=this.enabledLayerIds.length>1}async mapViewWatchHandler(){if(await this._setLayers(),this.ids?.length>0){this._hasValidLayers=!0,this._hasMultipleLayers=this.ids.length>1;let e=this.ids[0];this.defaultLayerId&&!this.defaultLayerHonored&&(e=this.defaultLayerId),await this._setSelectedLayer(e)}else this.mapView&&(this._hasValidLayers=!1,this.noLayersFound.emit())}async setLayerById(e,t=!1){this._skipEditCheck=t,!t||t&&e!==this.selectedIds[0]?this._setSelectedLayer(e):t&&e===this.selectedIds[0]&&(this.force=!0,setTimeout(()=>{this.force=!1},10)),this._skipEditCheck=!1}async setLayerByIds(e,t=!1){this._skipEditCheck=t,this._layerSelectionChange(e),this._skipEditCheck=!1}async updateLayer(){await this._setSelectedLayer(this.ids[0])}async mapChanged(e){let t=e.detail.isValid;t&&!this._hasValidLayers?await this.load():t||(this._hasValidLayers=!1,this.noLayersFound.emit())}async requestLayerSelectionChange(e){let t=e.detail;await this._setSelectedLayer(t)}async load(){await this._setLayers(),this.ids?.length>0?(this._hasValidLayers=!0,this._hasMultipleLayers=this.ids.length>1,this.defaultLayerId||await this._setSelectedLayer(this.ids[0])):this.mapView&&(this._hasValidLayers=!1,this.noLayersFound.emit())}render(){let e="map-layer-picker",t=this.height&&this.height>0&&!this.showLayersListInPopover?{height:`${this.height.toString()}px`}:{};return t={...t,display:this.display},i`<div class="map-layer-picker-container" style=${c(t)}><div class="map-layer-picker" style=${c(t)}>${this._hasValidLayers?!this._hasMultipleLayers&&this.showSingleLayerAsLabel?this._getSingleLayerPlaceholder():this.type==="combobox"?this._getCombobox(e):this.type==="select"?this._getSelect(e):this.showLayersListInPopover?this._getMapLayerPopOver():this._getDropdown(e):this._getInvalidPlaceholder()}</div></div>`}loaded(){if(this.ids?.length>0||this.selectedIds?.length===1){let e=this.selectedIds.length===1?this.selectedIds[0]:this.ids[0];this.type==="select"?this._layerElement.value&&(this._layerElement.value.value=e):this.type==="dropdown"&&(this.selectedName=this._layerNameHash&&Object.keys(this._layerNameHash).indexOf(e)>-1?this._layerNameHash[e].name:this._tableNameHash&&Object.keys(this._tableNameHash).indexOf(e)>-1?this._tableNameHash[e].name:"")}this._popover.value?.addEventListener("calcitePopoverOpen",()=>{this.el.querySelector("calcite-dropdown-item[selected]")?.setFocus()})}_getMapLayerPopOver(){let e=this.height&&this.height>0?{"max-height":`${this.height.toString()}px`}:{};return i`<calcite-popover auto-close focus-trap-disabled .label=${this.referenceElement} placement=left .referenceElement=${this.referenceElement} scale=s ${o(this._popover)}><div class=popover-list style=${c(e)}>${this._getMapLayerOptions()}</div></calcite-popover>`}_getInvalidPlaceholder(){return i`<div><calcite-notice class="height-100" icon=exclamation-mark-triangle id=no-valid-layers kind=danger open><div slot=message>${this._translations.noLayersFound}</div></calcite-notice><calcite-tooltip .label=${this._translations.enableEditUpdate} placement=bottom reference-element=no-valid-layers><span>${this._translations.enableEditUpdate}</span></calcite-tooltip></div>`}_getSingleLayerPlaceholder(){let e=this._getItemTypeIcon();return i`<div class="layer-picker-label-container cursor-default"><calcite-icon aria-hidden=true .icon=${e} scale=s></calcite-icon><calcite-label class="no-bottom-margin padding-start-1">${this.selectedName}</calcite-label></div>`}_getSelect(e){return i`<calcite-select .disabled=${this.disabled} id=${e??l} label @calciteSelectChange=${()=>this._layerSelectionChange()} .scale=${this.scale} ${o(this._layerElement)}>${this._getMapLayerOptions()}</calcite-select>`}_getCombobox(e){return i`<calcite-combobox clear-disabled id=${e??l} label @calciteComboboxChange=${()=>this._layerSelectionChange()} .placeholderIcon=${this.placeholderIcon} .scale=${this.scale} selection-mode=single ${o(this._layerElement)}>${this._getMapLayerOptions()}</calcite-combobox>`}_getDropdown(e){return i`<calcite-dropdown class="layer-picker-dropdown" @calciteDropdownBeforeClose=${()=>this._isDropdownOpen=!1} @calciteDropdownBeforeOpen=${()=>this._isDropdownOpen=!0}>${this.isMobile?this._getDropdownButton():this._getActionDropdownButton(e)}<calcite-dropdown-group selection-mode=single>${this._getMapLayerOptions()}</calcite-dropdown-group></calcite-dropdown>`}_getActionDropdownButton(e){return i`<calcite-action id=${e??l} slot=trigger .text=${this.selectedName}>${this._getDropdownButton()}</calcite-action>`}_getDropdownButton(){let e=this._getItemTypeIcon(),t=this.isMobile?"":"max-width-350",s=this.isMobile?"trigger":"",a=this._isDropdownOpen?"chevron-up":"chevron-down";return i`<calcite-button alignment=icon-end-space-between .appearance=${this.appearance} class=${p(t)} .iconEnd=${a} .iconStart=${e} kind=neutral slot=${s??l} width=full><div>${this.selectedName}</div></calcite-button>`}_getItemTypeIcon(){let e=this.selectedIds.length>0&&this._layerNameHash,t=e?this.selectedIds[0]:void 0;return e?Object.keys(this._layerNameHash).indexOf(t)>-1?"layers":"table":"layers"}_getMapLayerOptions(){return this.ids.reduce((e,t)=>(this._validLayer(t)?e.push(this._getItem(t,"layer")):this._validTable(t)&&e.push(this._getItem(t,"table")),e),[])}_getItem(e,t){let s=t==="layer"&&this._layerNameHash?this._layerNameHash[e]:this._tableNameHash?this._tableNameHash[e]:void 0,a=this.showOnlyUpdatableLayers?s&&!s.supportsUpdate:!1,r=s?.name||"",n=this.selectedIds.indexOf(e)>-1;return this.type==="combobox"?i`<calcite-combobox-item .disabled=${a} .heading=${r} .selected=${n} .value=${e}></calcite-combobox-item>`:this.type==="select"?i`<calcite-option .disabled=${a} .label=${r} .selected=${n} .value=${e}></calcite-option>`:this.force&&n||!this.force?i`<calcite-dropdown-group class=${p(a?"disabled":"")} id=${r??l} .selectionMode=${a?"none":"single"}><calcite-dropdown-item .disabled=${!!(t==="table"&&this.showTablesDisabled)} .iconStart=${t} @click=${a?void 0:()=>{this._setSelectedLayer(e)}} .selected=${n}>${r}</calcite-dropdown-item></calcite-dropdown-group>`:null}async _setSelectedLayer(e){if(e!==this.selectedIds[0]){let t;if(this.defaultLayerId&&!this.defaultLayerHonored&&(t=this._getLayerFromHash(this.defaultLayerId),this.defaultLayerHonored=t!==void 0,e=this.defaultLayerHonored?this.defaultLayerId:e),t=t||this._getLayerFromHash(e),!this._skipEditCheck&&this.beforeLayerSelectionChange.emit({currentId:this.selectedIds[0],newId:e,ref:this.el}).defaultPrevented)return;this.selectedName=t?.name,this.selectedIds=[e],this._popover.value&&(this._popover.value.open=!1),this.layerSelectionChange.emit(this.selectedIds)}else{let t=this.mapView&&await y(this.mapView,this.selectedIds[0]);this.selectedName=t?.title||""}}_getLayerFromHash(e){return this._layerNameHash&&Object.keys(this._layerNameHash).indexOf(e)>-1?this._layerNameHash[e]:this._tableNameHash&&Object.keys(this._tableNameHash).indexOf(e)>-1?this._tableNameHash[e]:void 0}async _setLayers(){if(this.mapView){await this._initLayerTableHash();let e=[];this._layerNameHash&&(e=this.showOnlyUpdatableLayers?this._getEditableIds(this._layerNameHash):Object.keys(this._layerNameHash));let t=[];if(this._tableNameHash&&(t=this.showTables?this.showOnlyUpdatableLayers?this._getEditableIds(this._tableNameHash):Object.keys(this._tableNameHash):[]),this.configLayerOrderDefined){let s=[...e.reverse(),...t.reverse()];this.ids=this.enabledLayerIds.length>0?this.enabledLayerIds.filter(a=>s.includes(a)):s}else this.ids=[...e.reverse().filter(s=>this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(s)>-1:!0),...t.reverse().filter(s=>this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(s)>-1:!0)];this.idsFound.emit(this.ids)}}_getEditableIds(e){return Object.keys(e).filter(t=>e[t].supportsUpdate)}async _initLayerTableHash(){this._layerNameHash=this.mapView&&await f(this.mapView,this.showOnlyUpdatableLayers),this._tableNameHash=this.showTables&&this.mapView?await I(this.mapView,this.showOnlyUpdatableLayers):{}}_validLayer(e){let t=this._pnContextConsumer.value,s=this._layerNameHash&&this._layerNameHash[e]?.name;return s!==void 0&&Object.keys(t?.managedLayers||[]).indexOf(s)<0&&(this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(e)>-1:!0)}_validTable(e){let t=this._pnContextConsumer.value,s=this._tableNameHash&&this._tableNameHash[e]?.name,a=s&&this.showTables;return a?(t?.managedTables||[]).indexOf(s)<0&&(this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(e)>-1:!0):a!==void 0}_layerSelectionChange(e){if(this._layerElement.value){let t=e||(Array.isArray(this._layerElement.value.value)?this._layerElement.value.value:[this._layerElement.value.value]);if(JSON.stringify(t)!==JSON.stringify([""])){if(JSON.stringify(t)===JSON.stringify(this.selectedIds)||!this._skipEditCheck&&this.beforeLayerSelectionChange.emit({currentIds:this.selectedIds,newIds:t,ref:this.el}).defaultPrevented)return;this.selectedIds=t,this.layerSelectionChange.emit(this.selectedIds)}}}};u("map-layer-picker",m);return m},a,e)
|
|
2
|
+
import{a as v}from"./BM666UZR.js";import{b as w}from"./RLSY4VUQ.js";import e from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as L}from"./LABCYKSC.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{b as u}from"./5BJO5ABV.js";import{F as d,G as o,H as g,J as p,K as c,h as b,i,l,q as h,u as _}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,{a:f,b:I,d:y}])=>{var $=b`@layer{:host{display:block}.map-layer-picker-container{width:100%;align-items:center}.map-layer-picker{position:relative;width:100%;display:inline-block}.padding-bottom-1{padding-bottom:1rem}.layer-picker-dropdown{height:100%;width:100%}.max-width-350{max-width:350px}.height-100{height:100%}.disabled{cursor:default!important;user-select:none;opacity:var(--calcite-opacity-disabled);pointer-events:none}.no-bottom-margin{--calcite-label-margin-bottom: 0px}.layer-picker-label-container{align-items:center;display:inline-flex;height:100%;padding-inline-start:1rem;padding-inline-end:1rem}.padding-start-1{padding-inline-start:1rem}.cursor-default{cursor:default}.popover-list{overflow:auto;width:250px}}`,m=class extends g{constructor(){super(),this.appearance="transparent",this.configLayerOrderDefined=!1,this.defaultLayerId="",this.disabled=!1,this.display="inline-block",this.enabledLayerIds=[],this.isMobile=!1,this.showOnlyUpdatableLayers=!1,this.selectedIds=[],this.scale="m",this.showTables=!1,this.showTablesDisabled=!1,this.showSingleLayerAsLabel=!1,this.type="select",this.showLayersListInPopover=!1,this.referenceElement="",this.force=!1,this._hasMultipleLayers=!0,this._hasValidLayers=!0,this._isDropdownOpen=!1,this.ids=[],this.selectedName="",this._translations=L({name:"map-layer-picker",blocking:!0}),this.defaultLayerHonored=!1,this._layerSelectElement=d(),this._layerComboboxElement=d(),this._pnContextConsumer=w({context:v,subscribe:!0}),this._skipEditCheck=!1,this._popover=d(),this.beforeLayerSelectionChange=h(),this.idsFound=h(),this.noLayersFound=h(),this.layerSelectionChange=h(),this.listenOn(window,"mapChanged",this.mapChanged),this.listenOn(window,"requestLayerSelectionChange",this.requestLayerSelectionChange)}static{this.properties={appearance:1,configLayerOrderDefined:5,defaultLayerId:1,disabled:5,display:1,enabledLayerIds:0,height:9,isMobile:5,mapView:0,showOnlyUpdatableLayers:5,placeholderIcon:1,selectedIds:0,scale:1,showTables:5,showTablesDisabled:5,showSingleLayerAsLabel:5,type:1,showLayersListInPopover:5,referenceElement:1,force:16,_hasMultipleLayers:16,_hasValidLayers:16,_isDropdownOpen:16,ids:16,selectedName:16,_translations:16}}static{this.styles=$}static{this.shadowRootOptions=_}willUpdate(e){e.has("mapView")&&this.hasUpdated&&this.mapViewWatchHandler(),e.has("type")&&(this._layerElement=this.type==="select"?this._layerSelectElement:this._layerComboboxElement),e.has("selectedIds")&&this.hasUpdated&&this.mapView&&(async()=>{let t=await y(this.mapView,this.selectedIds[0]);this.selectedName=t?.title??""})(),e.has("enabledLayerIds")&&this.hasUpdated&&this.enabledLayerIdsWatchHandler()}async enabledLayerIdsWatchHandler(){let e=this.selectedIds.length>0&&!this.enabledLayerIds.includes(this.selectedIds[0]),t=this.enabledLayerIds.some(a=>!this.ids.includes(a)),s=this.ids.toString()!==this.enabledLayerIds.toString();e?this.mapViewWatchHandler():(t||s)&&this._setLayers(),this._hasMultipleLayers=this.enabledLayerIds.length>1}async mapViewWatchHandler(){if(await this._setLayers(),this.ids?.length>0){this._hasValidLayers=!0,this._hasMultipleLayers=this.ids.length>1;let e=this.ids[0];this.defaultLayerId&&!this.defaultLayerHonored&&(e=this.defaultLayerId),await this._setSelectedLayer(e)}else this.mapView&&(this._hasValidLayers=!1,this.noLayersFound.emit())}async setLayerById(e,t=!1){this._skipEditCheck=t,!t||t&&e!==this.selectedIds[0]?this._setSelectedLayer(e):t&&e===this.selectedIds[0]&&(this.force=!0,setTimeout(()=>{this.force=!1},10)),this._skipEditCheck=!1}async setLayerByIds(e,t=!1){this._skipEditCheck=t,this._layerSelectionChange(e),this._skipEditCheck=!1}async updateLayer(){await this._setSelectedLayer(this.ids[0])}async mapChanged(e){let t=e.detail.isValid;t&&!this._hasValidLayers?await this.load():t||(this._hasValidLayers=!1,this.noLayersFound.emit())}async requestLayerSelectionChange(e){let t=e.detail;await this._setSelectedLayer(t)}async load(){await this._setLayers(),this.ids?.length>0?(this._hasValidLayers=!0,this._hasMultipleLayers=this.ids.length>1,this.defaultLayerId||await this._setSelectedLayer(this.ids[0])):this.mapView&&(this._hasValidLayers=!1,this.noLayersFound.emit())}render(){let e="map-layer-picker",t=this.height&&this.height>0&&!this.showLayersListInPopover?{height:`${this.height.toString()}px`}:{};return t={...t,display:this.display},i`<div class="map-layer-picker-container" style=${c(t)}><div class="map-layer-picker" style=${c(t)}>${this._hasValidLayers?!this._hasMultipleLayers&&this.showSingleLayerAsLabel?this._getSingleLayerPlaceholder():this.type==="combobox"?this._getCombobox(e):this.type==="select"?this._getSelect(e):this.showLayersListInPopover?this._getMapLayerPopOver():this._getDropdown(e):this._getInvalidPlaceholder()}</div></div>`}loaded(){if(this.ids?.length>0||this.selectedIds?.length===1){let e=this.selectedIds.length===1?this.selectedIds[0]:this.ids[0];this.type==="select"?this._layerElement.value&&(this._layerElement.value.value=e):this.type==="dropdown"&&(this.selectedName=this._layerNameHash&&Object.keys(this._layerNameHash).indexOf(e)>-1?this._layerNameHash[e].name:this._tableNameHash&&Object.keys(this._tableNameHash).indexOf(e)>-1?this._tableNameHash[e].name:"")}this._popover.value?.addEventListener("calcitePopoverOpen",()=>{this.el.querySelector("calcite-dropdown-item[selected]")?.setFocus()})}_getMapLayerPopOver(){let e=this.height&&this.height>0?{"max-height":`${this.height.toString()}px`}:{};return i`<calcite-popover auto-close focus-trap-disabled .label=${this.referenceElement} placement=left .referenceElement=${this.referenceElement} scale=s ${o(this._popover)}><div class=popover-list style=${c(e)}>${this._getMapLayerOptions()}</div></calcite-popover>`}_getInvalidPlaceholder(){return i`<div><calcite-notice class="height-100" icon=exclamation-mark-triangle id=no-valid-layers kind=danger open><div slot=message>${this._translations.noLayersFound}</div></calcite-notice><calcite-tooltip .label=${this._translations.enableEditUpdate} placement=bottom reference-element=no-valid-layers><span>${this._translations.enableEditUpdate}</span></calcite-tooltip></div>`}_getSingleLayerPlaceholder(){let e=this._getItemTypeIcon();return i`<div class="layer-picker-label-container cursor-default"><calcite-icon aria-hidden=true .icon=${e} scale=s></calcite-icon><calcite-label class="no-bottom-margin padding-start-1">${this.selectedName}</calcite-label></div>`}_getSelect(e){return i`<calcite-select .disabled=${this.disabled} id=${e??l} label @calciteSelectChange=${()=>this._layerSelectionChange()} .scale=${this.scale} ${o(this._layerElement)}>${this._getMapLayerOptions()}</calcite-select>`}_getCombobox(e){return i`<calcite-combobox clear-disabled id=${e??l} label @calciteComboboxChange=${()=>this._layerSelectionChange()} .placeholderIcon=${this.placeholderIcon} .scale=${this.scale} selection-mode=single ${o(this._layerElement)}>${this._getMapLayerOptions()}</calcite-combobox>`}_getDropdown(e){return i`<calcite-dropdown class="layer-picker-dropdown" @calciteDropdownBeforeClose=${()=>this._isDropdownOpen=!1} @calciteDropdownBeforeOpen=${()=>this._isDropdownOpen=!0}>${this.isMobile?this._getDropdownButton():this._getActionDropdownButton(e)}<calcite-dropdown-group selection-mode=single>${this._getMapLayerOptions()}</calcite-dropdown-group></calcite-dropdown>`}_getActionDropdownButton(e){return i`<calcite-action id=${e??l} slot=trigger .text=${this.selectedName}>${this._getDropdownButton()}</calcite-action>`}_getDropdownButton(){let e=this._getItemTypeIcon(),t=this.isMobile?"":"max-width-350",s=this.isMobile?"trigger":"",a=this._isDropdownOpen?"chevron-up":"chevron-down";return i`<calcite-button alignment=icon-end-space-between .appearance=${this.appearance} class=${p(t)} .iconEnd=${a} .iconStart=${e} kind=neutral slot=${s??l} width=full><div>${this.selectedName}</div></calcite-button>`}_getItemTypeIcon(){let e=this.selectedIds.length>0&&this._layerNameHash,t=e?this.selectedIds[0]:void 0;return e?Object.keys(this._layerNameHash).indexOf(t)>-1?"layers":"table":"layers"}_getMapLayerOptions(){return this.ids.reduce((e,t)=>(this._validLayer(t)?e.push(this._getItem(t,"layer")):this._validTable(t)&&e.push(this._getItem(t,"table")),e),[])}_getItem(e,t){let s=t==="layer"&&this._layerNameHash?this._layerNameHash[e]:this._tableNameHash?this._tableNameHash[e]:void 0,a=this.showOnlyUpdatableLayers?s&&!s.supportsUpdate:!1,r=s?.name||"",n=this.selectedIds.indexOf(e)>-1;return this.type==="combobox"?i`<calcite-combobox-item .disabled=${a} .heading=${r} .selected=${n} .value=${e}></calcite-combobox-item>`:this.type==="select"?i`<calcite-option .disabled=${a} .label=${r} .selected=${n} .value=${e}></calcite-option>`:this.force&&n||!this.force?i`<calcite-dropdown-group class=${p(a?"disabled":"")} id=${r??l} .selectionMode=${a?"none":"single"}><calcite-dropdown-item .disabled=${!!(t==="table"&&this.showTablesDisabled)} .iconStart=${t} @click=${a?void 0:()=>{this._setSelectedLayer(e)}} .selected=${n}>${r}</calcite-dropdown-item></calcite-dropdown-group>`:null}async _setSelectedLayer(e){if(e!==this.selectedIds[0]){let t;if(this.defaultLayerId&&!this.defaultLayerHonored&&(t=this._getLayerFromHash(this.defaultLayerId),this.defaultLayerHonored=t!==void 0,e=this.defaultLayerHonored?this.defaultLayerId:e),t=t||this._getLayerFromHash(e),!this._skipEditCheck&&this.beforeLayerSelectionChange.emit({currentId:this.selectedIds[0],newId:e,ref:this.el}).defaultPrevented)return;this.selectedName=t?.name,this.selectedIds=[e],this._popover.value&&(this._popover.value.open=!1),this.layerSelectionChange.emit(this.selectedIds)}else{let t=this.mapView&&await y(this.mapView,this.selectedIds[0]);this.selectedName=t?.title||""}}_getLayerFromHash(e){return this._layerNameHash&&Object.keys(this._layerNameHash).indexOf(e)>-1?this._layerNameHash[e]:this._tableNameHash&&Object.keys(this._tableNameHash).indexOf(e)>-1?this._tableNameHash[e]:void 0}async _setLayers(){if(this.mapView){await this._initLayerTableHash();let e=[];this._layerNameHash&&(e=this.showOnlyUpdatableLayers?this._getEditableIds(this._layerNameHash):Object.keys(this._layerNameHash));let t=[];if(this._tableNameHash&&(t=this.showTables?this.showOnlyUpdatableLayers?this._getEditableIds(this._tableNameHash):Object.keys(this._tableNameHash):[]),this.configLayerOrderDefined){let s=[...e.reverse(),...t.reverse()];this.ids=this.enabledLayerIds.length>0?this.enabledLayerIds.filter(a=>s.includes(a)):s}else this.ids=[...e.reverse().filter(s=>this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(s)>-1:!0),...t.reverse().filter(s=>this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(s)>-1:!0)];this.idsFound.emit(this.ids)}}_getEditableIds(e){return Object.keys(e).filter(t=>e[t].supportsUpdate)}async _initLayerTableHash(){this._layerNameHash=this.mapView&&await f(this.mapView,this.showOnlyUpdatableLayers),this._tableNameHash=this.showTables&&this.mapView?await I(this.mapView,this.showOnlyUpdatableLayers):{}}_validLayer(e){let t=this._pnContextConsumer.value,s=this._layerNameHash&&this._layerNameHash[e]?.name;return s!==void 0&&Object.keys(t?.managedLayers||[]).indexOf(s)<0&&(this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(e)>-1:!0)}_validTable(e){let t=this._pnContextConsumer.value,s=this._tableNameHash&&this._tableNameHash[e]?.name,a=s&&this.showTables;return a?(t?.managedTables||[]).indexOf(s)<0&&(this.enabledLayerIds?.length>0?this.enabledLayerIds.indexOf(e)>-1:!0):a!==void 0}_layerSelectionChange(e){if(this._layerElement.value){let t=e||(Array.isArray(this._layerElement.value.value)?this._layerElement.value.value:[this._layerElement.value.value]);if(JSON.stringify(t)!==JSON.stringify([""])){if(JSON.stringify(t)===JSON.stringify(this.selectedIds)||!this._skipEditCheck&&this.beforeLayerSelectionChange.emit({currentIds:this.selectedIds,newIds:t,ref:this.el}).defaultPrevented)return;this.selectedIds=t,this.layerSelectionChange.emit(this.selectedIds)}}}};u("map-layer-picker",m);return m},a,e)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{I as s}from"./T3EPRHTT.js";var t=s({defaultAssetPath:"https://js.arcgis.com/5.1.
|
|
2
|
+
import{I as s}from"./T3EPRHTT.js";var t=s({defaultAssetPath:"https://js.arcgis.com/5.1.2/solutions-components/",hydratedAttribute:"hydrated"}),{customElement:i,getAssetPath:n,setAssetPath:u}=t;t.t=void 0;t.o=void 0;t.c=void 0;t.r=void 0;export{t as a,i as b,n as c};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{b as c}from"./
|
|
2
|
+
import{b as c}from"./5BJO5ABV.js";import{F as s,G as a,H as r,K as l,h as t,i as e}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var y=t`:host{display:block}`,i=class extends r{constructor(){super(...arguments),this.layerListRef=s(),this.visibilityIcon="eyeball"}static{this.properties={mapView:0,layerListRef:0,visibilityIcon:1}}static{this.styles=y}willUpdate(o){o.has("visibilityIcon")&&this.visibilityIconWatchHandler()}async visibilityIconWatchHandler(){this.layerListRef.value&&(this.layerListRef.value.visibilityAppearance=this.visibilityIcon==="checkbox"?"checkbox":"default")}render(){return this.mapView&&e`<arcgis-layer-list style=${l(document.dir==="rtl"?"direction: rtl;":"direction: ltr;")} auto-destroy-disabled .view=${this.mapView} .visibilityAppearance=${this.visibilityIcon==="checkbox"?"checkbox":"default"} ${a(this.layerListRef)}></arcgis-layer-list>`||""}};c("layer-list-widget",i);export{i as LayerListWidget};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a as L}from"./2D6XDWYA.js";import{a as x}from"./YUWXPLTE.js";import{a as S}from"./65I4AUS4.js";import{b as I}from"./MXPZF4RB.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{F as $,G as v,H as k,J as p,h as F,i as l,l as h,q as b}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([T,m,P,O])=>{var D="instant-apps-filter-list calcite-mode-light",M="instant-apps-filter-list calcite-mode-dark",g=["feature","geojson","wfs","csv","scene","subtype-group","point-cloud","map-image","sublayer"];function w(f){return f.replaceAll("'","''")}function y(f,e=!1){if(f){let t=new Date(f),i=`${t.getFullYear()}-${t.getMonth()+1}-${t.getDate()}`;if(e){let s=`${t.getHours()}:${t.getMinutes()}:${t.getSeconds()}`;return`${i} ${s}`}else return i}}function _(f){if(f!=null){f.value=["",""];let e=f.shadowRoot?.querySelectorAll("calcite-input");if(e!=null)for(let t of e)t.value=""}}var R=F`:host{display:block}.instant-apps-filter-list *{box-sizing:border-box}.instant-apps-filter-list__container{height:100%}.instant-apps-filter-list__container calcite-block{--calcite-internal-block-actions-spacing: 0}.instant-apps-filter-list__container calcite-block calcite-action[slot=actions-end]{height:100%}.instant-apps-filter-list__container calcite-block:last-of-type{margin-bottom:0}.instant-apps-filter-list__footer{padding:12px;display:flex}.instant-apps-filter-list__footer calcite-button:nth-child(2){margin-left:6px}.instant-apps-filter-list__item-container,.instant-apps-filter-list__item-container--user-input{display:flex;justify-content:space-between;align-items:center}.instant-apps-filter-list__item-container:not(:last-child),.instant-apps-filter-list__item-container--user-input:not(:last-child){padding-bottom:20px}.instant-apps-filter-list__item-container--user-input{margin:0;display:flex;flex-direction:column;align-items:flex-start}.instant-apps-filter-list__item-container--user-input>span{margin:0 0 6px;font-size:14px;font-weight:400}.instant-apps-filter-list__item-container--user-input calcite-combobox{width:100%;font-size:16px;--calcite-combobox-input-height: 24px}.instant-apps-filter-list__number-input-container{width:100%;display:flex;justify-content:center}.instant-apps-filter-list__number-input-container calcite-slider{width:90%}.instant-apps-filter-list__date-picker-input-container{display:flex;align-items:center;justify-content:unset;width:100%}.instant-apps-filter-list__date-picker-input-container calcite-action{height:65px;border-top:1px solid var(--calcite-color-border-input);border-right:1px solid var(--calcite-color-border-input);border-bottom:1px solid var(--calcite-color-border-input)}.instant-apps-filter-list__time-picker-input-container{display:grid;grid-template-columns:auto 32px;width:100%}.instant-apps-filter-list__time-picker-input-container calcite-input-time-picker:first-child{grid-column:1;grid-row:1}.instant-apps-filter-list__time-picker-input-container calcite-input-time-picker:last-child{grid-column:1;grid-row:2}.instant-apps-filter-list__time-picker-input-container calcite-action{grid-column:2;grid-row:1/span 2;height:64px;width:33px;border-top:1px solid var(--calcite-color-border-input);border-right:1px solid var(--calcite-color-border-input);border-bottom:1px solid var(--calcite-color-border-input)}.instant-apps-filter-list__title{margin-right:20px}.instant-apps-filter-list__title>p{font-size:14px;font-weight:400;margin:0}.instant-apps-filter-list__checkbox-container{display:flex}.instant-apps-filter-list__checkbox-container calcite-checkbox{height:18px}.instant-apps-filter-list__operator-description{margin:0;--calcite-font-size--1: 12px}.instant-apps-filter-list calcite-input-date-picker{--calcite-font-size--1: 16px}@media(prefers-reduced-motion){.instant-apps-filter-list calcite-loader{--calcite-internal-duration-factor: 2;--calcite-internal-animation-timing-slow: .6s }}.instant-apps-filter-list.calcite-mode-dark .instant-apps-filter-list__header-container{background:var(--calcite-color-surface-2);color:var(--calcite-color-text-1)}.instant-apps-filter-list.calcite-mode-dark .instant-apps-filter-list__operator-description{background:var(--calcite-color-surface-1)}`,d={filterContainer:"instant-apps-filter-list__container",footer:"instant-apps-filter-list__footer",filterItemTitle:"instant-apps-filter-list__title",filterItemContainer:"instant-apps-filter-list__item-container",filterUIItemContainer:"instant-apps-filter-list__item-container--user-input",checkboxContainer:"instant-apps-filter-list__checkbox-container",numberInputContainer:"instant-apps-filter-list__number-input-container",dateInputContainer:"instant-apps-filter-list__date-picker-input-container",timeInputContainer:"instant-apps-filter-list__time-picker-input-container",operatorDesc:"instant-apps-filter-list__operator-description"},C=class extends k{constructor(){super(...arguments),this._messages=S({name:"instant-apps-filter-list",blocking:!0}),this.resetBtnEl=$(),this.panelEl=$(),this.isLayerExpUpdated=!1,this.isInitUpdateComplete=!1,this.baseClass=D,this.autoUpdateUrl=!1,this.closeBtn=!1,this.comboboxOverlayPositioning="absolute",this.openFilters=!1,this.extentSelector=!1,this.filterCount=0,this.zoomBtn=!0,this.resetBtn=!0,this.resetFiltersOnDisconnect=!0,this.filterListReset=b(),this.filterUpdate=b()}static{this.properties={loading:16,filterLayerExpressions:16,baseClass:16,initDefExpressions:16,initMapImageExpressions:16,initPointCloudFilters:16,layerExpressions:0,autoUpdateUrl:5,closeBtn:5,closeBtnOnClick:0,comboboxOverlayPositioning:1,closeBtnText:1,openFilters:5,extentSelector:5,extentSelectorConfig:0,urlParams:0,filterCount:9,view:0,zoomBtn:5,resetBtn:5,resetFiltersOnDisconnect:5}}static{this.styles=R}async forceReset(){return this.resetExpressions(),await Promise.resolve(!0)}async getCurrentLayerExpressions(){let e=structuredClone(this.filterLayerExpressions);return await Promise.resolve(e)}async getFilterInitState(){return await Promise.resolve({initDefExpressions:this.initDefExpressions,initMapImageExpressions:this.initMapImageExpressions,initPointCloudFilters:this.initPointCloudFilters})}async handleUpdatingT9nData(e){return e==null?await Promise.resolve(!0):(this.filterLayerExpressions?.forEach(t=>{let i=e?.find(s=>s.id===t.id);i!=null&&(t.title=i.title,t.expressions?.forEach(s=>{let n=i.expressions?.find(a=>a.id===s.id);n!=null&&(s.name=n.name)}))}),await Promise.resolve(!0))}async updateInitDefExpressions(e){return this.initDefExpressions=e.initDefExpressions,this.initMapImageExpressions=e.initMapImageExpressions,this.initPointCloudFilters=e.initPointCloudFilters,await Promise.resolve(!0)}connectedCallback(){super.connectedCallback(),!(this.layerExpressions==null&&this.view==null)&&(this.isLayerExpUpdated=!0,this.filterLayerExpressions=structuredClone(this.layerExpressions),this.isInitUpdateComplete=!1,this.handleLayerExpressionsUpdate())}async load(){this.baseClass=L(this.el)==="dark"?M:D,!this.isLayerExpUpdated&&(this.isLayerExpUpdated=!0,this.filterLayerExpressions=this.layerExpressions!=null?structuredClone(this.layerExpressions):[],this.view!=null&&this.handleLayerExpressionsUpdate())}willUpdate(e){e.has("view")&&this.handleWhenView(),e.has("layerExpressions")&&(this.isInitUpdateComplete=!1,this.resetAllFilters(),this.filterLayerExpressions=structuredClone(this.layerExpressions),this.handleLayerExpressionsUpdate())}updated(){this.resetBtnEl.value!=null&&(this.resetBtnEl.value.disabled=!(this.filterLayerExpressions&&this.filterLayerExpressions.length>0))}disconnectedCallback(){super.disconnectedCallback(),this.resetFiltersOnDisconnect&&(this.isLayerExpUpdated=!1,this.filterLayerExpressions=structuredClone(this.layerExpressions),this.resetAllFilters())}initFilterConfig(){if(this.filterLayerExpressions&&this.filterLayerExpressions.length>0){if(this.filterLayerExpressions.length===1){let{operator:e}=this.filterLayerExpressions[0],t=e?.trim()==="OR"?"orOperator":"andOperator",i=this.renderZoomTo(this.filterLayerExpressions[0]);return l`<calcite-block class=${p(d.operatorDesc)} .heading=${this._messages[t]} expanded>${i}${this.renderFilter(this.filterLayerExpressions[0])}</calcite-block>`}else if(this.filterLayerExpressions.length>1)return this.renderLayerBlock()}}handleResetDatePicker(e,t){let i=this.panelEl.value?.querySelector(`[id='${e.id}']`);i&&(_(i),e.active=!1,e.definitionExpression=void 0,e.range=void 0,this.generateOutput(t))}handleResetTimePicker(e,t){this.resetTimePicker(e),e.active=!1,e.definitionExpression=void 0,e.range=void 0,this.generateOutput(t)}resetTimePicker(e){let t=this.panelEl.value?.querySelector(`[id='${e.id}-min']`),i=this.panelEl.value?.querySelector(`[id='${e.id}-max']`);!t||!i||(t.value=e.min,i.value=e.max)}initInput(e,t){let{type:i,numDisplayOption:s,displayOption:n}=t;if(i==="string"||i==="coded-value"||(i==="number"||i==="range"||i==="date"||i==="time-only")&&(s==="drop-down"||n==="drop-down"))return this.renderCombobox(e,t);if(i==="number"||i==="range")return this.renderNumberSlider(e,t);if(i==="date")return this.renderDatePicker(e,t);if(i==="time-only")return this.renderTimePicker(e,t)}async initExpressions(){if(this.loading=!0,this.filterLayerExpressions==null||this.view==null){this.loading=!1;return}await this.processExpressions(),this.loading=!1}async processExpressions(){this.filterLayerExpressions&&await Promise.all(this.filterLayerExpressions.map(async e=>{await Promise.all((e.expressions||[]).map(async t=>await this.setInitExpression(e,t)))}))}handleResetFilter(){this.resetExpressions(),this.resetAllFilters(),this.generateURLParams(),this.filterListReset.emit()}resetExpressions(){this.filterLayerExpressions?.forEach(e=>{e.expressions?.forEach(t=>{let{type:i,numDisplayOption:s,displayOption:n}=t,a="";i==="string"||i==="coded-value"||(i==="number"||i==="range"||i==="date"||i==="time-only")&&(s==="drop-down"||n==="drop-down")?a="combobox":i==="date"?a="datePicker":i==="number"||i==="range"?a="numberRange":i==="time-only"&&(a="timePicker"),a?this.resetExpressionUI(a,t):this.resetCheckbox(t),t.active=!1})})}resetExpressionUI(e,t){let{id:i}=t;switch(e){case"combobox":{t.selectedFields=void 0;let s=this.panelEl.value?.querySelector(`[id='${i}']`);s&&Array.from(s.children).forEach(n=>{n.selected=!1});break}case"datePicker":{t.range=void 0;let s=this.panelEl.value?.querySelector(`[id='${i}']`);s&&_(s);break}case"numberRange":{t.range=void 0;let s=this.panelEl.value?.querySelector(`[id='${i}']`);s&&(s.minValue=t.min,s.maxValue=t.max);break}case"timePicker":t.range=void 0,this.resetTimePicker(t)}}resetCheckbox(e){let{id:t}=e,i=this.panelEl.value?.querySelector(`[id='${t}']`);i&&(i.checked=!1)}resetAllFilters(){this.view?.map?.allLayers?.concat(this.view?.map?.allTables.toArray()??[])?.forEach(e=>{if(!g.includes(e.type))return;let t=e;if(t.type==="point-cloud"){if(!this.initPointCloudFilters)return;t.filters=this.initPointCloudFilters[t.id]}else if(t.type==="map-image")t.allSublayers.forEach(i=>{i.definitionExpression=this.initMapImageExpressions?.[t.id]?.[i.id]??""});else{if(this.initDefExpressions==null)return;t.definitionExpression=this.initDefExpressions[t.id]}})}async updateStringExpression(e,t){let i=this.findFilterLayer(e);return i?(await this.getFeatureAttributes(i,t),this.handleDateField(i,t),t?.selectedFields?(t.definitionExpression=this.createDefinitionExpression(t),!0):!1):!1}handleDateField(e,t){t.type==="date"&&e.fields.find(({name:i})=>i===t.field)?.type==="date-only"&&(t.dateOnly=!0)}createDefinitionExpression(e){if(!e.selectedFields?.length)return"";let t=e.selectedFields.map(i=>typeof i=="number"?i:`'${w(i)}'`);return this.getSelectedFieldsDefExpression(e,t)}async updateNumberExpression(e,t){if(!t?.min&&t?.min!==0||!t?.max&&t?.max!==0){let i=this.findFilterLayer(e);if(!i)return!1;let{field:s}=t;if(s!=null)if(this.setExpressionFormat(i,t,s),t?.numDisplayOption==="drop-down"||t?.displayOption==="drop-down")await this.getFeatureAttributes(i,t);else{let n=(await this.calculateMinMaxStatistics(i,s))?.[0]?.attributes;if(t.format?.places!=null?(t.min=this.roundMinNumberDown(n[`min${s}`],t.format.places),t.max=this.roundMaxNumberUp(n[`max${s}`],t.format.places)):(t.min=n[`min${s}`],t.max=n[`max${s}`]),t?.range&&Object.keys(t.range).length){let{min:a,max:r}=t.range;return t.definitionExpression=`${t.field} BETWEEN ${a} AND ${r}`,!0}}}return!1}async updateDateExpression(e,t){let{field:i,range:s}=t,n=this.findFilterLayer(e);if(!n)return!1;let a=(await this.calculateMinMaxStatistics(n,i))?.[0]?.attributes;if(t.min=y(a[`min${i}`]),t.max=y(a[`max${i}`]),s!=null&&(s?.max!=null||s?.min!=null)){let{min:r,max:o}=s;if(r=r?.replace("+"," "),o=o?.replace("+"," "),r||o){let c=o&&!r?"<":!o&&r?">":null;return c?t.definitionExpression=`${i} ${c} '${r??o}'`:t.definitionExpression=`${i} BETWEEN '${r}' AND '${o}'`,!0}}return!1}async updateTimeExpression(e,t){let{field:i,range:s}=t,n=this.findFilterLayer(e);if(!n)return!1;let a=(await this.calculateMinMaxStatistics(n,i))?.[0]?.attributes;if(t.min=a[`min${i}`],t.max=a[`max${i}`],s!=null&&(s?.max!=null||s?.min!=null)){let{min:r,max:o}=s;if(r||o){let c=o&&!r?"<":!o&&r?">":null;return c?t.definitionExpression=`${i} ${c} TIME '${r??o}'`:t.definitionExpression=`${i} BETWEEN TIME '${r}' AND TIME '${o}'`,!0}}return!1}async updateCodedValueExpression(e,t,i){if(!i?.domain||i?.domain?.type!=="coded-value")return!1;let s=this.findFilterLayer(e);if(!s)return!1;await this.getFeatureAttributes(s,t);let n=i.domain.codedValues.reduce((a,{code:r,name:o})=>(a[r]=o,a),{});if(t.codedValues=n,this.sortCodedValues(t),t.selectedFields?.length){let a=t.selectedFields.map(r=>typeof r=="number"?r:`'${w(r)}'`).join(",");return t.definitionExpression=`${t.field} IN (${a})`,!0}return!1}updateRangeExpression(e,t){if(!t?.domain||t?.domain?.type!=="range")return!1;let{field:i,range:s}=e;return e.min=t.domain.minValue,e.max=t.domain.maxValue,s&&Object.keys(s).length?(e.definitionExpression=`${i} BETWEEN ${s.min} AND ${s.max}`,!0):!1}async getFeatureAttributes(e,t){if(!this.isLayerSupported(e)){t.fields=[];return}let i=await this.getQueryLayer(e),{maxRecordCount:s,supportsMaxRecordCountFactor:n}=this.extractQueryCapabilities(e),a=await i.queryFeatureCount(),r=this.createQuery(i,t);await this.queryDistinctFeatures(i,r,t),this.shouldPaginate(s,a,n)&&this.handlePagination(i,r,s,n,a,t)}isLayerSupported(e){return e&&g.includes(e.type)}extractQueryCapabilities(e){return{maxRecordCount:e.capabilities?.query?.maxRecordCount??e.sourceJSON?.maxRecordCount,supportsMaxRecordCountFactor:e.capabilities?.query?.supportsMaxRecordCountFactor}}createQuery(e,t){let i=e.createQuery();this.applyCacheHint(e,i);let s=t?.field;if(s){let n=this.getInitDefExprFromLayer(e);i.where=n||"1=1",i.outFields=[s],i.orderByFields=[`${s} ASC`],i.returnDistinctValues=!0,i.returnGeometry=!1,i.maxRecordCountFactor=5,this.applyQueryGeometryFromExtentSelector(i)}return i}async queryDistinctFeatures(e,t,i){if(!t.outFields)return;let s=await this.queryForFeatures(e,t,t.outFields[0]);s?.length&&(i.fields=[...new Set(s)],i.type==="string"?i.fields=i.fields.sort((n,a)=>n.localeCompare(a)):i.type==="number"&&(i.fields=i.fields.sort((n,a)=>n-a)))}getQueryCount(e,t){return t?e*5:e}shouldPaginate(e,t,i){let s=this.getQueryCount(e,i);return e!=null&&t>s}async handlePagination(e,t,i,s,n,a){let r=this.getQueryCount(i,s),o=[];for(let c=r;c<n;c+=r){let u=t.clone();u.num=i,u.start=c,o.push(this.queryForFeatures(e,u,t?.outFields?.[0]??""))}Promise.all(o).then(c=>{c.forEach(u=>{u?.length&&a.fields&&a.fields.push(...u)}),a.type==="string"?a.fields=[...new Set(a.fields)].sort((u,E)=>u.localeCompare(E)):a.type==="number"?a.fields=[...new Set(a.fields)].sort((u,E)=>u-E):a.type==="coded-value"&&a.codedValues?this.sortCodedValues(a):a.fields=[...new Set(a.fields)].sort()})}async queryForFeatures(e,t,i){return(await e.queryFeatures(t))?.features.filter(s=>{let n=s.attributes?.[i];return n!=null&&n!==""})?.map(s=>s.attributes?.[i])}async calculateMinMaxStatistics(e,t){if(!e||!g.includes(e.type)||!t)return[];let i=this.createStatisticsQuery(e,t);return(await e.queryFeatures(i))?.features||[]}createStatisticsQuery(e,t){let i=e.createQuery();return i.where=this.getInitDefExprFromLayer(e)||"1=1",this.applyCacheHint(e,i),i.outStatistics=[{onStatisticField:t,outStatisticFieldName:`max${t}`,statisticType:"max"},{onStatisticField:t,outStatisticFieldName:`min${t}`,statisticType:"min"}],this.applyQueryGeometryFromExtentSelector(i),i}getExtent(e,t){if(e&&t){let{constraints:i}=t,s={...i}.geometry;if(s){let n="extent"in s?s:T.fromJSON(s);if(n?.type==="extent"||n?.type==="polygon")return n}}}async setInitExpression(e,t){if(!t.field||!t.type){await this.updateExpression(e,t,void 0);return}let i=this.findFilterLayer(e);i&&((i.loadStatus==="not-loaded"||i.loadStatus==="failed")&&await i.load(),await i.when(async()=>{let s=i.fields?.find(({name:a})=>a===t.field),n=s?.domain?.type;t.type=n==="coded-value"||n==="range"?n:t.type,await this.updateExpression(e,t,s)}))}async updateExpression(e,t,i){let s=await this.handleExpressionType(e,t,i);this.requestUpdate(),s&&this.generateOutput(e)}async handleExpressionType(e,t,i){switch(t.type){case"string":return await this.updateStringExpression(e,t);case"number":return await this.updateNumberExpression(e,t);case"date":return await this.updateDateExpressionBasedOnDisplayOption(e,t);case"time-only":return await this.updateTimeExpressionBasedOnDisplayOption(e,t);case"coded-value":return await this.updateCodedValueExpression(e,t,i);case"range":return await this.updateRangeExpressionBasedOnDisplayOption(e,t,i);case"checkbox":case null:case void 0:return t.active??!1;default:return!1}}async updateDateExpressionBasedOnDisplayOption(e,t){return t.displayOption==="drop-down"?await this.updateStringExpression(e,t):await this.updateDateExpression(e,t)}async updateTimeExpressionBasedOnDisplayOption(e,t){return t.displayOption==="drop-down"?await this.updateStringExpression(e,t):await this.updateTimeExpression(e,t)}async updateRangeExpressionBasedOnDisplayOption(e,t,i){return t.displayOption==="drop-down"?await this.updateStringExpression(e,t):this.updateRangeExpression(t,i)}updateRangeExpressions(e,t,i,s){let n=this.getInitDefExprFromLayerExpression(t);(s||s===0)&&(i||i===0)&&(s===e?.min&&i===e?.max?(e.definitionExpression=void 0,e.active=!1):(e.definitionExpression=n?`(${n}) AND ${e?.field} BETWEEN ${s} AND ${i}`:`${e?.field} BETWEEN ${s} AND ${i}`,e.active=!0)),e.range={min:s,max:i}}handleCheckboxChange(e,t,i){let s=i.target;t.active=s.checked,this.generateOutput(e)}handleSliderChange(e,t,i){let{maxValue:s,minValue:n}=i.target;this.updateRangeExpressions(e,t,s,n),this.generateOutput(t)}handleComboSelect(e,t,i){let s=i.target.selectedItems,{field:n,type:a}=e;if(e.selectedFields=s.map(({value:r})=>r),s.length){let r=s.map(({value:o})=>typeof o=="number"?o:`'${w(o)}'`);e.definitionExpression=this.getSelectedFieldsDefExpression(e,r),e.active=!0}else e.definitionExpression=void 0,e.active=!1;this.generateOutput(t)}getSelectedFieldsDefExpression(e,t){let{field:i,type:s}=e;return s==="date"?t.map(n=>this.buildDateExpression(n,i)).join(" OR "):s==="time-only"?`${i} IN (${t.map(n=>`TIME ${n}`).join(",")})`:`${i} IN (${t.join(",")})`}handleDatePickerRangeChange(e,t,i){let s=i.target,[n,a]=s.valueAsDate,r=n?y(Math.floor(n.getTime()),!0):void 0,o=a?y(Math.floor(a.getTime()),!0):void 0;(r||o)&&(e.definitionExpression=this.constructDefinitionExpression(e.field,r,o),e.range={min:r,max:o},e.active=!0,this.generateOutput(t))}handleTimePickerRangeChange(e,t,i,s){let n=s.target,a=n.value;e.range==null&&(e.range={min:void 0,max:void 0}),i?e.max&&a>e.max?(e.range.min=e.max,n.value=e.range.min):e.min&&a<e.min?(e.range.min=e.min,n.value=e.range.min):e.range.min=a:e.max&&a>e.max?(e.range.max=e.max,n.value=e.range.max):e.min&&a<e.min?(e.range.max=e.min,n.value=e.range.max):e.range.max=a,(e.range.min||e.range.max)&&(e.definitionExpression=this.constructTimeDefinitionExpression(e.field,e.range.min,e.range.max),e.active=!0,this.generateOutput(t))}constructDefinitionExpression(e,t,i){return t?i?`${e} BETWEEN '${t}' AND '${i}'`:`${e} > '${t}'`:`${e} < '${i}'`}constructTimeDefinitionExpression(e,t,i){return t?i?`${e} BETWEEN TIME '${t}' AND TIME '${i}'`:`${e} > TIME '${t}'`:`${e} < TIME '${i}'`}handleURLParams(){if(!("URLSearchParams"in window))return;let e=new URLSearchParams(document.location.search).get("filter");if(!e){this.filterCount=0;return}let t=e.split(";").map(i=>JSON.parse(i));this.filterCount=this.applyFilters(t)}applyFilters(e){let t=0;return e.forEach(i=>{let s=this.filterLayerExpressions?.find(n=>n.id===i.layerId);s&&s.expressions?.forEach(n=>{n.id?.toString()===i.expressionId?.toString()&&(this.activateExpression(n,i),t++)})}),t}activateExpression(e,t){e.active=!0,t.type==="range"?e.range=t.range:t.type==="select"&&(e.selectedFields=t.selectedFields)}createURLParamExpression(e,t){let{id:i,range:s,selectedFields:n,type:a}=t;return a==="string"||a==="coded-value"||t?.numDisplayOption==="drop-down"||t?.displayOption==="drop-down"?{type:"select",layerId:e.id,expressionId:i.toString(),selectedFields:n}:a==="number"||a==="range"||a==="date"||a==="time-only"?{type:"range",layerId:e.id,expressionId:i.toString(),range:s}:{layerId:e.id,expressionId:i.toString()}}autoUpdateURLCheck(e){if(this.autoUpdateUrl){let t=e.toString()?`${window.location.pathname}?${e}`.trim():window.location.pathname;window.history.replaceState({},"",t)}}generateURLParams(){if(!("URLSearchParams"in window))return;let e=new URLSearchParams(window.location.search),t=this.filterLayerExpressions?.flatMap(i=>i?.expressions?.filter(s=>s.active).map(s=>JSON.stringify(this.createURLParamExpression(i,s)))||[])||[];this.filterCount=t.length,t.length>0?e.set("filter",t.join(";")):e.delete("filter"),this.autoUpdateURLCheck(e),this.urlParams=e}updateFilter(e,t,i){let{id:s}=e,n=this.view.map?.findLayerById(s)??this.view.map?.findTableById(s);if(n!=null)if(n.type==="point-cloud")this.updateFilterLayerPCLFilter(n,i);else if(n.type==="map-image"){let a=n.findSublayerById(e?.sublayerId);a!=null&&this.updateFilterLayerDefExpression(a,t,e)}else this.updateFilterLayerDefExpression(n,t,e)}updateFilterLayerDefExpression(e,t,i){let{operator:s}=i,n=this.getInitDefExprFromLayer(e),a=t?.length>0&&n!=null&&n!==""?`(${t.join(s)}) AND (${n})`:t.length>0?t.join(s):n;e.definitionExpression=a}updateFilterLayerPCLFilter(e,t){e.filters=t}async handleWhenView(){this.view!=null&&(await this.view.map.loadAll(),await this.handleLayerExpressionsUpdate())}async handleLayerExpressionsUpdate(){this.isInitUpdateComplete||(this.updateInitExpressions(),this.handleURLParams(),this.initExpressions())}async handleZoomTo(e){let t=e?.sublayerId?`#zoom-to-${e.id}-${e.sublayerId}`:`#zoom-to-${e.id}`,i=this.panelEl.value?.querySelector(t),s=(n,a)=>{i&&(i.loading=n,i.disabled=a)};if(s(!0,!0),await this.getZoomToExtent(e),this.zoomToExtent){let n=this.zoomToExtent.type==="point"&&this.zoomToExtent.count===1?{target:this.zoomToExtent.extent,zoom:10}:this.zoomToExtent.extent;await this.view.goTo(n)}s(!1,!1)}async getZoomToExtent(e){let t=this.view.allLayerViews.find(({layer:s})=>s.id===e.id).layer,i=t.type==="map-image"?t.findSublayerById(e.sublayerId):t;if(i&&i.type!=="point-cloud"&&g.includes(i?.type)){let s=await this.getQueryLayer(i),n=s.createQuery();n.where=s.definitionExpression??"1=1";let a=await s.queryExtent(n);this.zoomToExtent={...a,type:s.geometryType}}}generateOutput(e){if(this.view==null)return;let t=[],i=[];if(e){for(let s of e.expressions){let{active:n,definitionExpression:a,pointCloudFilters:r}=s;n&&a&&t.push(`(${a})`),n&&r!=null&&r.length>0&&(i=i.concat(r))}this.updateFilter(e,t,i),this.generateURLParams(),this.filterUpdate.emit()}}numberWithCommas(e){return e.toLocaleString("en-US",{maximumFractionDigits:20})}async getInitMap(){let e=this.view.map,t;return this.view.type==="2d"?t=new P({portalItem:{id:e.portalItem.id}}):t=new O({portalItem:{id:e.portalItem.id}}),await t.load(),t}scientificRounding(e,t,i){if(e==null)return;let s;if(!String(e).includes("e"))s=Math[i](e*Math.pow(10,t))/Math.pow(10,t);else{let[n,a]=String(e).split("e").map(o=>Number(o)),r=a+t;s=Math[i](+`${n}e${r}`)*Math.pow(10,-t)}return+s.toFixed(t)}roundMinNumberDown(e,t){return this.scientificRounding(e,t,"floor")}roundMaxNumberUp(e,t){return this.scientificRounding(e,t,"ceil")}roundNumber(e,t){return this.scientificRounding(e,t,"round")??e}setExpressionFormat(e,t,i){if(e?.popupTemplate!=null){let s=e?.popupTemplate.fieldInfos?.find(({fieldName:n})=>n===i);s?.format&&(t.format=s.format)}}getInitDefExprFromLayer(e){return e.type==="sublayer"?this.initMapImageExpressions?.[e?.layer?.id??""]?.[e.id]??"":this.initDefExpressions?.[e.id]??""}getInitDefExprFromLayerExpression(e){return e?.sublayerId!=null?this.initMapImageExpressions?.[e.id]?.[e.sublayerId]??"":this.initDefExpressions?.[e.id]??""}findFilterLayer(e){let t=this.view.map?.allLayers.concat(this.view.map?.allTables.toArray()??[])?.find(({id:i})=>i===e.id);return t?.type==="map-image"?t?.findSublayerById(e.sublayerId):t}createLabel(e,t){if(e.type==="coded-value")return e?.codedValues?.[t]??t;if(e.type==="number"&&typeof t=="number"){let i=t;return e.format?.places!=null&&(i=this.roundNumber(t,e.format.places)),e.format?.digitSeparator?this.numberWithCommas(i):i}if(e.type==="date"&&!e.dateOnly){let i=m.convertDateFormatToIntlOptions("short-date-long-time");return m.formatDate(t,i)}if(e.type==="time-only"){let i=m.convertDateFormatToIntlOptions("long-time");return m.formatTimeOnly(t,i)}return t}buildDateExpression(e,t){if(e){let i=new Date(e),s=new Date(e),n=new Date(s.setDate(i.getDate()+1)),a=`${i.getFullYear()}-${i.getMonth()+1}-${i.getDate()}`,r=`${i.getHours()}:${i.getMinutes()}:${i.getSeconds()}`,o=`${n.getHours()}:${n.getMinutes()}:${n.getSeconds()}`,c=`${n.getFullYear()}-${n.getMonth()+1}-${n.getDate()}`;return`${t} BETWEEN '${a} ${r}' AND '${c} ${o}'`}}async getQueryLayer(e){let t=e.type==="sublayer"?await e.createFeatureLayer():e;if(!t)throw new Error("Failed to create feature layer");return t}applyCacheHint(e,t){e?.capabilities?.query?.supportsCacheHint&&(t.cacheHint=!0)}applyQueryGeometryFromExtentSelector(e){if(!this.extentSelector||!this.extentSelectorConfig)return;let t=this.getExtent(this.extentSelector,this.extentSelectorConfig);t&&(e.geometry=t,e.spatialRelationship="intersects")}async updateInitExpressions(){if(!this.view?.map)return;let e=await this.getInitMap();this.initDefExpressions={},this.initPointCloudFilters={},this.initMapImageExpressions={},e.allLayers.concat(e.allTables.toArray()??[]).forEach(t=>{if(!g.includes(t.type))return;let i=t;if(i.type==="point-cloud")this.initPointCloudFilters||(this.initPointCloudFilters={}),this.initPointCloudFilters[i.id]=i.filters;else if(i.type==="map-image")this.initMapImageExpressions||(this.initMapImageExpressions={}),this.initMapImageExpressions[i.id]=i.allSublayers.reduce((s,n)=>(s[n.id]=n.definitionExpression??"",s),{});else{if(!this.initDefExpressions)return;this.initDefExpressions[i.id]=i.definitionExpression??""}}),this.isInitUpdateComplete=!0}sortCodedValues(e){typeof e.fields?.[0]=="number"?e.fields=[...new Set(e.fields)].sort((t,i)=>{let s=e.codedValues?.[t],n=e.codedValues?.[i];return(s??t)-(n??i)}):e.fields=[...new Set(e.fields)].sort((t,i)=>{let s=e.codedValues?.[t],n=e.codedValues?.[i],a=s??t,r=n??i;return a.localeCompare(r)})}render(){let e=this.loading?this.renderLoading():this.initFilterConfig(),t=this.renderFooter();return l`<calcite-panel class=${p(this.baseClass)} ${v(this.panelEl)}><slot slot=header-content name=filter-header-content></slot><slot slot=header-actions-end name=filter-header-actions-end></slot>${x("filter-container",l`<div class=${p(d.filterContainer)}>${e}${t}</div>`)}</calcite-panel>`}renderLoading(){return l`<calcite-loader label="Loading filters..."></calcite-loader>`}renderFilter(e){let{id:t}=e;return e.expressions.map((i,s)=>i.type==="checkbox"||i.type==null?x(`${t}-${s}`,l`<div class=${p(d.filterItemContainer)}><div class=${p(d.filterItemTitle)}><p>${i.name}</p></div><div class=${p(d.checkboxContainer)}><calcite-checkbox id=${i.id.toString()??h} scale=l .checked=${i?.active} @calciteCheckboxChange=${this.handleCheckboxChange.bind(this,e,i)}></calcite-checkbox></div></div>`):this.initInput(e,i))}renderLayerBlock(){return this.filterLayerExpressions?.map(e=>this.renderFilterBlocks(e))}renderFilterBlocks(e){let t=this.renderFilter(e),{operator:i}=e,s=i?.trim()==="OR"?"orOperator":"andOperator",n=this.renderZoomTo(e);return x(e.id,l`<calcite-block .heading=${e.title} .description=${this._messages[s]} .expanded=${this.openFilters?!0:void 0} collapsible>${n}${t}</calcite-block>`)}renderCombobox(e,t){return x("combo-select",l`<label class=${p(d.filterUIItemContainer)}><span>${t.name}</span><calcite-combobox id=${t.id.toString()??h} @calciteComboboxChange=${this.handleComboSelect.bind(this,t,e)} .label=${t.name} .placeholder=${t.placeholder} selection-mode=multiple max-items=6 scale=s .overlayPositioning=${this.comboboxOverlayPositioning}>${t.fields?.map((i,s)=>this.renderComboboxItem(t,i,s))}</calcite-combobox></label>`)}renderComboboxItem(e,t,i){let s=this.createLabel(e,t),n=e?.selectedFields?.includes(t)??!1;return x(`${s}-${i}`,l`<calcite-combobox-item .value=${t} .heading=${`${s}`} .selected=${n}></calcite-combobox-item>`)}renderNumberSlider(e,t){let i=t?.min,s=t?.max,n=t?.step?t.step:1,a=i!=null&&s!=null,r=t?.field??"",o=t?.range?.min!=null?t.range.min:i,c=t?.range?.max!=null?t.range.max:s,u=[o,c];return a?x(t?.id.toString(),l`<label class=${p(d.filterUIItemContainer)}><span>${t?.name}</span><div class=${p(d.numberInputContainer)}><calcite-slider id=${t?.id.toString()??h} @calciteSliderChange=${this.handleSliderChange.bind(this,t,e)} .min=${i} .max=${s} .minValue=${i} .maxValue=${s} .minLabel=${this._messages.minSlider?.replace("{field}",r)} .maxLabel=${this._messages.maxSlider?.replace("{field}",r)} .step=${n} label-handles snap .value=${u} .groupSeparator=${t?.format?.digitSeparator} precise></calcite-slider></div></label>`):void 0}renderDatePicker(e,t){let{min:i,max:s}=t,n=[t?.range?.min,t?.range?.max];return i!=null&&s!=null?l`<label class=${p(d.filterUIItemContainer)}><span>${t?.name}</span><div class=${p(d.dateInputContainer)}><calcite-input-date-picker id=${t?.id.toString()??h} @calciteInputDatePickerChange=${this.handleDatePickerRangeChange.bind(this,t,e)} .min=${i} .max=${s} calendars=1 overlay-positioning=fixed lang=${m.getLocale()??"en"??h} layout=vertical .value=${n} range></calcite-input-date-picker><calcite-action @click=${this.handleResetDatePicker.bind(this,t,e)} icon=reset .text=${this._messages.resetDatePicker} title=${this._messages.resetDatePicker??h} scale=s></calcite-action></div></label>`:void 0}renderTimePicker(e,t){let{min:i,max:s,range:n}=t,a=i!=null&&s!=null,r=n?.min!=null?n.min:i,o=n?.max!=null?n.max:s;return a?l`<label class=${p(d.filterUIItemContainer)}><span>${t?.name}</span><div class=${p(d.timeInputContainer)}><calcite-input-time-picker .id=${`${t?.id.toString()}-min`} .value=${r} overlay-positioning=fixed lang=${m.getLocale()??"en"??h} @calciteInputTimePickerChange=${this.handleTimePickerRangeChange.bind(this,t,e,!0)}></calcite-input-time-picker><calcite-input-time-picker .id=${`${t?.id.toString()}-max`} .value=${o} overlay-positioning=fixed lang=${m.getLocale()??"en"??h} @calciteInputTimePickerChange=${this.handleTimePickerRangeChange.bind(this,t,e,!1)}></calcite-input-time-picker><calcite-action @click=${this.handleResetTimePicker.bind(this,t,e)} icon=reset .text=${this._messages.resetTimePicker} title=${this._messages.resetTimePicker??h} scale=s></calcite-action></div></label>`:void 0}renderFooter(){let e=this.closeBtnText??this._messages.close,t=this.closeBtn&&this.resetBtn?"half":"full";return l`<div class=${p(d.footer)} slot=footer>${this.resetBtn?l`<calcite-button appearance=outline .width=${t} @click=${this.handleResetFilter} ${v(this.resetBtnEl)}>${this._messages.resetFilter}</calcite-button>`:void 0}${this.closeBtn?l`<calcite-button appearance=solid .width=${t} kind=brand @click=${this.closeBtnOnClick}>${e}</calcite-button>`:void 0}</div>`}renderZoomTo(e){let t=e?.sublayerId?`zoom-to-${e.id}-${e.sublayerId}`:`zoom-to-${e.id}`;return this.zoomBtn?l`<calcite-action id=${t??h} slot=actions-end appearance=transparent .text=${this._messages.zoomTo} title=${this._messages.zoomTo??h} scale=s icon=magnifying-glass-plus @click=${this.handleZoomTo.bind(this,e)}></calcite-action>`:void 0}};I("instant-apps-filter-list",C);return C},"geometry/support/jsonUtils","intl","WebMap","WebScene")
|
|
2
|
+
import{a as L}from"./2D6XDWYA.js";import{a as x}from"./YUWXPLTE.js";import{a as S}from"./HKURBCD6.js";import{b as I}from"./KGXEY5HR.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{F as $,G as v,H as k,J as p,h as F,i as l,l as h,q as b}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([T,m,P,O])=>{var D="instant-apps-filter-list calcite-mode-light",M="instant-apps-filter-list calcite-mode-dark",g=["feature","geojson","wfs","csv","scene","subtype-group","point-cloud","map-image","sublayer"];function w(f){return f.replaceAll("'","''")}function y(f,e=!1){if(f){let t=new Date(f),i=`${t.getFullYear()}-${t.getMonth()+1}-${t.getDate()}`;if(e){let s=`${t.getHours()}:${t.getMinutes()}:${t.getSeconds()}`;return`${i} ${s}`}else return i}}function _(f){if(f!=null){f.value=["",""];let e=f.shadowRoot?.querySelectorAll("calcite-input");if(e!=null)for(let t of e)t.value=""}}var R=F`:host{display:block}.instant-apps-filter-list *{box-sizing:border-box}.instant-apps-filter-list__container{height:100%}.instant-apps-filter-list__container calcite-block{--calcite-internal-block-actions-spacing: 0}.instant-apps-filter-list__container calcite-block calcite-action[slot=actions-end]{height:100%}.instant-apps-filter-list__container calcite-block:last-of-type{margin-bottom:0}.instant-apps-filter-list__footer{padding:12px;display:flex}.instant-apps-filter-list__footer calcite-button:nth-child(2){margin-left:6px}.instant-apps-filter-list__item-container,.instant-apps-filter-list__item-container--user-input{display:flex;justify-content:space-between;align-items:center}.instant-apps-filter-list__item-container:not(:last-child),.instant-apps-filter-list__item-container--user-input:not(:last-child){padding-bottom:20px}.instant-apps-filter-list__item-container--user-input{margin:0;display:flex;flex-direction:column;align-items:flex-start}.instant-apps-filter-list__item-container--user-input>span{margin:0 0 6px;font-size:14px;font-weight:400}.instant-apps-filter-list__item-container--user-input calcite-combobox{width:100%;font-size:16px;--calcite-combobox-input-height: 24px}.instant-apps-filter-list__number-input-container{width:100%;display:flex;justify-content:center}.instant-apps-filter-list__number-input-container calcite-slider{width:90%}.instant-apps-filter-list__date-picker-input-container{display:flex;align-items:center;justify-content:unset;width:100%}.instant-apps-filter-list__date-picker-input-container calcite-action{height:65px;border-top:1px solid var(--calcite-color-border-input);border-right:1px solid var(--calcite-color-border-input);border-bottom:1px solid var(--calcite-color-border-input)}.instant-apps-filter-list__time-picker-input-container{display:grid;grid-template-columns:auto 32px;width:100%}.instant-apps-filter-list__time-picker-input-container calcite-input-time-picker:first-child{grid-column:1;grid-row:1}.instant-apps-filter-list__time-picker-input-container calcite-input-time-picker:last-child{grid-column:1;grid-row:2}.instant-apps-filter-list__time-picker-input-container calcite-action{grid-column:2;grid-row:1/span 2;height:64px;width:33px;border-top:1px solid var(--calcite-color-border-input);border-right:1px solid var(--calcite-color-border-input);border-bottom:1px solid var(--calcite-color-border-input)}.instant-apps-filter-list__title{margin-right:20px}.instant-apps-filter-list__title>p{font-size:14px;font-weight:400;margin:0}.instant-apps-filter-list__checkbox-container{display:flex}.instant-apps-filter-list__checkbox-container calcite-checkbox{height:18px}.instant-apps-filter-list__operator-description{margin:0;--calcite-font-size--1: 12px}.instant-apps-filter-list calcite-input-date-picker{--calcite-font-size--1: 16px}@media(prefers-reduced-motion){.instant-apps-filter-list calcite-loader{--calcite-internal-duration-factor: 2;--calcite-internal-animation-timing-slow: .6s }}.instant-apps-filter-list.calcite-mode-dark .instant-apps-filter-list__header-container{background:var(--calcite-color-surface-2);color:var(--calcite-color-text-1)}.instant-apps-filter-list.calcite-mode-dark .instant-apps-filter-list__operator-description{background:var(--calcite-color-surface-1)}`,d={filterContainer:"instant-apps-filter-list__container",footer:"instant-apps-filter-list__footer",filterItemTitle:"instant-apps-filter-list__title",filterItemContainer:"instant-apps-filter-list__item-container",filterUIItemContainer:"instant-apps-filter-list__item-container--user-input",checkboxContainer:"instant-apps-filter-list__checkbox-container",numberInputContainer:"instant-apps-filter-list__number-input-container",dateInputContainer:"instant-apps-filter-list__date-picker-input-container",timeInputContainer:"instant-apps-filter-list__time-picker-input-container",operatorDesc:"instant-apps-filter-list__operator-description"},C=class extends k{constructor(){super(...arguments),this._messages=S({name:"instant-apps-filter-list",blocking:!0}),this.resetBtnEl=$(),this.panelEl=$(),this.isLayerExpUpdated=!1,this.isInitUpdateComplete=!1,this.baseClass=D,this.autoUpdateUrl=!1,this.closeBtn=!1,this.comboboxOverlayPositioning="absolute",this.openFilters=!1,this.extentSelector=!1,this.filterCount=0,this.zoomBtn=!0,this.resetBtn=!0,this.resetFiltersOnDisconnect=!0,this.filterListReset=b(),this.filterUpdate=b()}static{this.properties={loading:16,filterLayerExpressions:16,baseClass:16,initDefExpressions:16,initMapImageExpressions:16,initPointCloudFilters:16,layerExpressions:0,autoUpdateUrl:5,closeBtn:5,closeBtnOnClick:0,comboboxOverlayPositioning:1,closeBtnText:1,openFilters:5,extentSelector:5,extentSelectorConfig:0,urlParams:0,filterCount:9,view:0,zoomBtn:5,resetBtn:5,resetFiltersOnDisconnect:5}}static{this.styles=R}async forceReset(){return this.resetExpressions(),await Promise.resolve(!0)}async getCurrentLayerExpressions(){let e=structuredClone(this.filterLayerExpressions);return await Promise.resolve(e)}async getFilterInitState(){return await Promise.resolve({initDefExpressions:this.initDefExpressions,initMapImageExpressions:this.initMapImageExpressions,initPointCloudFilters:this.initPointCloudFilters})}async handleUpdatingT9nData(e){return e==null?await Promise.resolve(!0):(this.filterLayerExpressions?.forEach(t=>{let i=e?.find(s=>s.id===t.id);i!=null&&(t.title=i.title,t.expressions?.forEach(s=>{let n=i.expressions?.find(a=>a.id===s.id);n!=null&&(s.name=n.name)}))}),await Promise.resolve(!0))}async updateInitDefExpressions(e){return this.initDefExpressions=e.initDefExpressions,this.initMapImageExpressions=e.initMapImageExpressions,this.initPointCloudFilters=e.initPointCloudFilters,await Promise.resolve(!0)}connectedCallback(){super.connectedCallback(),!(this.layerExpressions==null&&this.view==null)&&(this.isLayerExpUpdated=!0,this.filterLayerExpressions=structuredClone(this.layerExpressions),this.isInitUpdateComplete=!1,this.handleLayerExpressionsUpdate())}async load(){this.baseClass=L(this.el)==="dark"?M:D,!this.isLayerExpUpdated&&(this.isLayerExpUpdated=!0,this.filterLayerExpressions=this.layerExpressions!=null?structuredClone(this.layerExpressions):[],this.view!=null&&this.handleLayerExpressionsUpdate())}willUpdate(e){e.has("view")&&this.handleWhenView(),e.has("layerExpressions")&&(this.isInitUpdateComplete=!1,this.resetAllFilters(),this.filterLayerExpressions=structuredClone(this.layerExpressions),this.handleLayerExpressionsUpdate())}updated(){this.resetBtnEl.value!=null&&(this.resetBtnEl.value.disabled=!(this.filterLayerExpressions&&this.filterLayerExpressions.length>0))}disconnectedCallback(){super.disconnectedCallback(),this.resetFiltersOnDisconnect&&(this.isLayerExpUpdated=!1,this.filterLayerExpressions=structuredClone(this.layerExpressions),this.resetAllFilters())}initFilterConfig(){if(this.filterLayerExpressions&&this.filterLayerExpressions.length>0){if(this.filterLayerExpressions.length===1){let{operator:e}=this.filterLayerExpressions[0],t=e?.trim()==="OR"?"orOperator":"andOperator",i=this.renderZoomTo(this.filterLayerExpressions[0]);return l`<calcite-block class=${p(d.operatorDesc)} .heading=${this._messages[t]} expanded>${i}${this.renderFilter(this.filterLayerExpressions[0])}</calcite-block>`}else if(this.filterLayerExpressions.length>1)return this.renderLayerBlock()}}handleResetDatePicker(e,t){let i=this.panelEl.value?.querySelector(`[id='${e.id}']`);i&&(_(i),e.active=!1,e.definitionExpression=void 0,e.range=void 0,this.generateOutput(t))}handleResetTimePicker(e,t){this.resetTimePicker(e),e.active=!1,e.definitionExpression=void 0,e.range=void 0,this.generateOutput(t)}resetTimePicker(e){let t=this.panelEl.value?.querySelector(`[id='${e.id}-min']`),i=this.panelEl.value?.querySelector(`[id='${e.id}-max']`);!t||!i||(t.value=e.min,i.value=e.max)}initInput(e,t){let{type:i,numDisplayOption:s,displayOption:n}=t;if(i==="string"||i==="coded-value"||(i==="number"||i==="range"||i==="date"||i==="time-only")&&(s==="drop-down"||n==="drop-down"))return this.renderCombobox(e,t);if(i==="number"||i==="range")return this.renderNumberSlider(e,t);if(i==="date")return this.renderDatePicker(e,t);if(i==="time-only")return this.renderTimePicker(e,t)}async initExpressions(){if(this.loading=!0,this.filterLayerExpressions==null||this.view==null){this.loading=!1;return}await this.processExpressions(),this.loading=!1}async processExpressions(){this.filterLayerExpressions&&await Promise.all(this.filterLayerExpressions.map(async e=>{await Promise.all((e.expressions||[]).map(async t=>await this.setInitExpression(e,t)))}))}handleResetFilter(){this.resetExpressions(),this.resetAllFilters(),this.generateURLParams(),this.filterListReset.emit()}resetExpressions(){this.filterLayerExpressions?.forEach(e=>{e.expressions?.forEach(t=>{let{type:i,numDisplayOption:s,displayOption:n}=t,a="";i==="string"||i==="coded-value"||(i==="number"||i==="range"||i==="date"||i==="time-only")&&(s==="drop-down"||n==="drop-down")?a="combobox":i==="date"?a="datePicker":i==="number"||i==="range"?a="numberRange":i==="time-only"&&(a="timePicker"),a?this.resetExpressionUI(a,t):this.resetCheckbox(t),t.active=!1})})}resetExpressionUI(e,t){let{id:i}=t;switch(e){case"combobox":{t.selectedFields=void 0;let s=this.panelEl.value?.querySelector(`[id='${i}']`);s&&Array.from(s.children).forEach(n=>{n.selected=!1});break}case"datePicker":{t.range=void 0;let s=this.panelEl.value?.querySelector(`[id='${i}']`);s&&_(s);break}case"numberRange":{t.range=void 0;let s=this.panelEl.value?.querySelector(`[id='${i}']`);s&&(s.minValue=t.min,s.maxValue=t.max);break}case"timePicker":t.range=void 0,this.resetTimePicker(t)}}resetCheckbox(e){let{id:t}=e,i=this.panelEl.value?.querySelector(`[id='${t}']`);i&&(i.checked=!1)}resetAllFilters(){this.view?.map?.allLayers?.concat(this.view?.map?.allTables.toArray()??[])?.forEach(e=>{if(!g.includes(e.type))return;let t=e;if(t.type==="point-cloud"){if(!this.initPointCloudFilters)return;t.filters=this.initPointCloudFilters[t.id]}else if(t.type==="map-image")t.allSublayers.forEach(i=>{i.definitionExpression=this.initMapImageExpressions?.[t.id]?.[i.id]??""});else{if(this.initDefExpressions==null)return;t.definitionExpression=this.initDefExpressions[t.id]}})}async updateStringExpression(e,t){let i=this.findFilterLayer(e);return i?(await this.getFeatureAttributes(i,t),this.handleDateField(i,t),t?.selectedFields?(t.definitionExpression=this.createDefinitionExpression(t),!0):!1):!1}handleDateField(e,t){t.type==="date"&&e.fields.find(({name:i})=>i===t.field)?.type==="date-only"&&(t.dateOnly=!0)}createDefinitionExpression(e){if(!e.selectedFields?.length)return"";let t=e.selectedFields.map(i=>typeof i=="number"?i:`'${w(i)}'`);return this.getSelectedFieldsDefExpression(e,t)}async updateNumberExpression(e,t){if(!t?.min&&t?.min!==0||!t?.max&&t?.max!==0){let i=this.findFilterLayer(e);if(!i)return!1;let{field:s}=t;if(s!=null)if(this.setExpressionFormat(i,t,s),t?.numDisplayOption==="drop-down"||t?.displayOption==="drop-down")await this.getFeatureAttributes(i,t);else{let n=(await this.calculateMinMaxStatistics(i,s))?.[0]?.attributes;if(t.format?.places!=null?(t.min=this.roundMinNumberDown(n[`min${s}`],t.format.places),t.max=this.roundMaxNumberUp(n[`max${s}`],t.format.places)):(t.min=n[`min${s}`],t.max=n[`max${s}`]),t?.range&&Object.keys(t.range).length){let{min:a,max:r}=t.range;return t.definitionExpression=`${t.field} BETWEEN ${a} AND ${r}`,!0}}}return!1}async updateDateExpression(e,t){let{field:i,range:s}=t,n=this.findFilterLayer(e);if(!n)return!1;let a=(await this.calculateMinMaxStatistics(n,i))?.[0]?.attributes;if(t.min=y(a[`min${i}`]),t.max=y(a[`max${i}`]),s!=null&&(s?.max!=null||s?.min!=null)){let{min:r,max:o}=s;if(r=r?.replace("+"," "),o=o?.replace("+"," "),r||o){let c=o&&!r?"<":!o&&r?">":null;return c?t.definitionExpression=`${i} ${c} '${r??o}'`:t.definitionExpression=`${i} BETWEEN '${r}' AND '${o}'`,!0}}return!1}async updateTimeExpression(e,t){let{field:i,range:s}=t,n=this.findFilterLayer(e);if(!n)return!1;let a=(await this.calculateMinMaxStatistics(n,i))?.[0]?.attributes;if(t.min=a[`min${i}`],t.max=a[`max${i}`],s!=null&&(s?.max!=null||s?.min!=null)){let{min:r,max:o}=s;if(r||o){let c=o&&!r?"<":!o&&r?">":null;return c?t.definitionExpression=`${i} ${c} TIME '${r??o}'`:t.definitionExpression=`${i} BETWEEN TIME '${r}' AND TIME '${o}'`,!0}}return!1}async updateCodedValueExpression(e,t,i){if(!i?.domain||i?.domain?.type!=="coded-value")return!1;let s=this.findFilterLayer(e);if(!s)return!1;await this.getFeatureAttributes(s,t);let n=i.domain.codedValues.reduce((a,{code:r,name:o})=>(a[r]=o,a),{});if(t.codedValues=n,this.sortCodedValues(t),t.selectedFields?.length){let a=t.selectedFields.map(r=>typeof r=="number"?r:`'${w(r)}'`).join(",");return t.definitionExpression=`${t.field} IN (${a})`,!0}return!1}updateRangeExpression(e,t){if(!t?.domain||t?.domain?.type!=="range")return!1;let{field:i,range:s}=e;return e.min=t.domain.minValue,e.max=t.domain.maxValue,s&&Object.keys(s).length?(e.definitionExpression=`${i} BETWEEN ${s.min} AND ${s.max}`,!0):!1}async getFeatureAttributes(e,t){if(!this.isLayerSupported(e)){t.fields=[];return}let i=await this.getQueryLayer(e),{maxRecordCount:s,supportsMaxRecordCountFactor:n}=this.extractQueryCapabilities(e),a=await i.queryFeatureCount(),r=this.createQuery(i,t);await this.queryDistinctFeatures(i,r,t),this.shouldPaginate(s,a,n)&&this.handlePagination(i,r,s,n,a,t)}isLayerSupported(e){return e&&g.includes(e.type)}extractQueryCapabilities(e){return{maxRecordCount:e.capabilities?.query?.maxRecordCount??e.sourceJSON?.maxRecordCount,supportsMaxRecordCountFactor:e.capabilities?.query?.supportsMaxRecordCountFactor}}createQuery(e,t){let i=e.createQuery();this.applyCacheHint(e,i);let s=t?.field;if(s){let n=this.getInitDefExprFromLayer(e);i.where=n||"1=1",i.outFields=[s],i.orderByFields=[`${s} ASC`],i.returnDistinctValues=!0,i.returnGeometry=!1,i.maxRecordCountFactor=5,this.applyQueryGeometryFromExtentSelector(i)}return i}async queryDistinctFeatures(e,t,i){if(!t.outFields)return;let s=await this.queryForFeatures(e,t,t.outFields[0]);s?.length&&(i.fields=[...new Set(s)],i.type==="string"?i.fields=i.fields.sort((n,a)=>n.localeCompare(a)):i.type==="number"&&(i.fields=i.fields.sort((n,a)=>n-a)))}getQueryCount(e,t){return t?e*5:e}shouldPaginate(e,t,i){let s=this.getQueryCount(e,i);return e!=null&&t>s}async handlePagination(e,t,i,s,n,a){let r=this.getQueryCount(i,s),o=[];for(let c=r;c<n;c+=r){let u=t.clone();u.num=i,u.start=c,o.push(this.queryForFeatures(e,u,t?.outFields?.[0]??""))}Promise.all(o).then(c=>{c.forEach(u=>{u?.length&&a.fields&&a.fields.push(...u)}),a.type==="string"?a.fields=[...new Set(a.fields)].sort((u,E)=>u.localeCompare(E)):a.type==="number"?a.fields=[...new Set(a.fields)].sort((u,E)=>u-E):a.type==="coded-value"&&a.codedValues?this.sortCodedValues(a):a.fields=[...new Set(a.fields)].sort()})}async queryForFeatures(e,t,i){return(await e.queryFeatures(t))?.features.filter(s=>{let n=s.attributes?.[i];return n!=null&&n!==""})?.map(s=>s.attributes?.[i])}async calculateMinMaxStatistics(e,t){if(!e||!g.includes(e.type)||!t)return[];let i=this.createStatisticsQuery(e,t);return(await e.queryFeatures(i))?.features||[]}createStatisticsQuery(e,t){let i=e.createQuery();return i.where=this.getInitDefExprFromLayer(e)||"1=1",this.applyCacheHint(e,i),i.outStatistics=[{onStatisticField:t,outStatisticFieldName:`max${t}`,statisticType:"max"},{onStatisticField:t,outStatisticFieldName:`min${t}`,statisticType:"min"}],this.applyQueryGeometryFromExtentSelector(i),i}getExtent(e,t){if(e&&t){let{constraints:i}=t,s={...i}.geometry;if(s){let n="extent"in s?s:T.fromJSON(s);if(n?.type==="extent"||n?.type==="polygon")return n}}}async setInitExpression(e,t){if(!t.field||!t.type){await this.updateExpression(e,t,void 0);return}let i=this.findFilterLayer(e);i&&((i.loadStatus==="not-loaded"||i.loadStatus==="failed")&&await i.load(),await i.when(async()=>{let s=i.fields?.find(({name:a})=>a===t.field),n=s?.domain?.type;t.type=n==="coded-value"||n==="range"?n:t.type,await this.updateExpression(e,t,s)}))}async updateExpression(e,t,i){let s=await this.handleExpressionType(e,t,i);this.requestUpdate(),s&&this.generateOutput(e)}async handleExpressionType(e,t,i){switch(t.type){case"string":return await this.updateStringExpression(e,t);case"number":return await this.updateNumberExpression(e,t);case"date":return await this.updateDateExpressionBasedOnDisplayOption(e,t);case"time-only":return await this.updateTimeExpressionBasedOnDisplayOption(e,t);case"coded-value":return await this.updateCodedValueExpression(e,t,i);case"range":return await this.updateRangeExpressionBasedOnDisplayOption(e,t,i);case"checkbox":case null:case void 0:return t.active??!1;default:return!1}}async updateDateExpressionBasedOnDisplayOption(e,t){return t.displayOption==="drop-down"?await this.updateStringExpression(e,t):await this.updateDateExpression(e,t)}async updateTimeExpressionBasedOnDisplayOption(e,t){return t.displayOption==="drop-down"?await this.updateStringExpression(e,t):await this.updateTimeExpression(e,t)}async updateRangeExpressionBasedOnDisplayOption(e,t,i){return t.displayOption==="drop-down"?await this.updateStringExpression(e,t):this.updateRangeExpression(t,i)}updateRangeExpressions(e,t,i,s){let n=this.getInitDefExprFromLayerExpression(t);(s||s===0)&&(i||i===0)&&(s===e?.min&&i===e?.max?(e.definitionExpression=void 0,e.active=!1):(e.definitionExpression=n?`(${n}) AND ${e?.field} BETWEEN ${s} AND ${i}`:`${e?.field} BETWEEN ${s} AND ${i}`,e.active=!0)),e.range={min:s,max:i}}handleCheckboxChange(e,t,i){let s=i.target;t.active=s.checked,this.generateOutput(e)}handleSliderChange(e,t,i){let{maxValue:s,minValue:n}=i.target;this.updateRangeExpressions(e,t,s,n),this.generateOutput(t)}handleComboSelect(e,t,i){let s=i.target.selectedItems,{field:n,type:a}=e;if(e.selectedFields=s.map(({value:r})=>r),s.length){let r=s.map(({value:o})=>typeof o=="number"?o:`'${w(o)}'`);e.definitionExpression=this.getSelectedFieldsDefExpression(e,r),e.active=!0}else e.definitionExpression=void 0,e.active=!1;this.generateOutput(t)}getSelectedFieldsDefExpression(e,t){let{field:i,type:s}=e;return s==="date"?t.map(n=>this.buildDateExpression(n,i)).join(" OR "):s==="time-only"?`${i} IN (${t.map(n=>`TIME ${n}`).join(",")})`:`${i} IN (${t.join(",")})`}handleDatePickerRangeChange(e,t,i){let s=i.target,[n,a]=s.valueAsDate,r=n?y(Math.floor(n.getTime()),!0):void 0,o=a?y(Math.floor(a.getTime()),!0):void 0;(r||o)&&(e.definitionExpression=this.constructDefinitionExpression(e.field,r,o),e.range={min:r,max:o},e.active=!0,this.generateOutput(t))}handleTimePickerRangeChange(e,t,i,s){let n=s.target,a=n.value;e.range==null&&(e.range={min:void 0,max:void 0}),i?e.max&&a>e.max?(e.range.min=e.max,n.value=e.range.min):e.min&&a<e.min?(e.range.min=e.min,n.value=e.range.min):e.range.min=a:e.max&&a>e.max?(e.range.max=e.max,n.value=e.range.max):e.min&&a<e.min?(e.range.max=e.min,n.value=e.range.max):e.range.max=a,(e.range.min||e.range.max)&&(e.definitionExpression=this.constructTimeDefinitionExpression(e.field,e.range.min,e.range.max),e.active=!0,this.generateOutput(t))}constructDefinitionExpression(e,t,i){return t?i?`${e} BETWEEN '${t}' AND '${i}'`:`${e} > '${t}'`:`${e} < '${i}'`}constructTimeDefinitionExpression(e,t,i){return t?i?`${e} BETWEEN TIME '${t}' AND TIME '${i}'`:`${e} > TIME '${t}'`:`${e} < TIME '${i}'`}handleURLParams(){if(!("URLSearchParams"in window))return;let e=new URLSearchParams(document.location.search).get("filter");if(!e){this.filterCount=0;return}let t=e.split(";").map(i=>JSON.parse(i));this.filterCount=this.applyFilters(t)}applyFilters(e){let t=0;return e.forEach(i=>{let s=this.filterLayerExpressions?.find(n=>n.id===i.layerId);s&&s.expressions?.forEach(n=>{n.id?.toString()===i.expressionId?.toString()&&(this.activateExpression(n,i),t++)})}),t}activateExpression(e,t){e.active=!0,t.type==="range"?e.range=t.range:t.type==="select"&&(e.selectedFields=t.selectedFields)}createURLParamExpression(e,t){let{id:i,range:s,selectedFields:n,type:a}=t;return a==="string"||a==="coded-value"||t?.numDisplayOption==="drop-down"||t?.displayOption==="drop-down"?{type:"select",layerId:e.id,expressionId:i.toString(),selectedFields:n}:a==="number"||a==="range"||a==="date"||a==="time-only"?{type:"range",layerId:e.id,expressionId:i.toString(),range:s}:{layerId:e.id,expressionId:i.toString()}}autoUpdateURLCheck(e){if(this.autoUpdateUrl){let t=e.toString()?`${window.location.pathname}?${e}`.trim():window.location.pathname;window.history.replaceState({},"",t)}}generateURLParams(){if(!("URLSearchParams"in window))return;let e=new URLSearchParams(window.location.search),t=this.filterLayerExpressions?.flatMap(i=>i?.expressions?.filter(s=>s.active).map(s=>JSON.stringify(this.createURLParamExpression(i,s)))||[])||[];this.filterCount=t.length,t.length>0?e.set("filter",t.join(";")):e.delete("filter"),this.autoUpdateURLCheck(e),this.urlParams=e}updateFilter(e,t,i){let{id:s}=e,n=this.view.map?.findLayerById(s)??this.view.map?.findTableById(s);if(n!=null)if(n.type==="point-cloud")this.updateFilterLayerPCLFilter(n,i);else if(n.type==="map-image"){let a=n.findSublayerById(e?.sublayerId);a!=null&&this.updateFilterLayerDefExpression(a,t,e)}else this.updateFilterLayerDefExpression(n,t,e)}updateFilterLayerDefExpression(e,t,i){let{operator:s}=i,n=this.getInitDefExprFromLayer(e),a=t?.length>0&&n!=null&&n!==""?`(${t.join(s)}) AND (${n})`:t.length>0?t.join(s):n;e.definitionExpression=a}updateFilterLayerPCLFilter(e,t){e.filters=t}async handleWhenView(){this.view!=null&&(await this.view.map.loadAll(),await this.handleLayerExpressionsUpdate())}async handleLayerExpressionsUpdate(){this.isInitUpdateComplete||(this.updateInitExpressions(),this.handleURLParams(),this.initExpressions())}async handleZoomTo(e){let t=e?.sublayerId?`#zoom-to-${e.id}-${e.sublayerId}`:`#zoom-to-${e.id}`,i=this.panelEl.value?.querySelector(t),s=(n,a)=>{i&&(i.loading=n,i.disabled=a)};if(s(!0,!0),await this.getZoomToExtent(e),this.zoomToExtent){let n=this.zoomToExtent.type==="point"&&this.zoomToExtent.count===1?{target:this.zoomToExtent.extent,zoom:10}:this.zoomToExtent.extent;await this.view.goTo(n)}s(!1,!1)}async getZoomToExtent(e){let t=this.view.allLayerViews.find(({layer:s})=>s.id===e.id).layer,i=t.type==="map-image"?t.findSublayerById(e.sublayerId):t;if(i&&i.type!=="point-cloud"&&g.includes(i?.type)){let s=await this.getQueryLayer(i),n=s.createQuery();n.where=s.definitionExpression??"1=1";let a=await s.queryExtent(n);this.zoomToExtent={...a,type:s.geometryType}}}generateOutput(e){if(this.view==null)return;let t=[],i=[];if(e){for(let s of e.expressions){let{active:n,definitionExpression:a,pointCloudFilters:r}=s;n&&a&&t.push(`(${a})`),n&&r!=null&&r.length>0&&(i=i.concat(r))}this.updateFilter(e,t,i),this.generateURLParams(),this.filterUpdate.emit()}}numberWithCommas(e){return e.toLocaleString("en-US",{maximumFractionDigits:20})}async getInitMap(){let e=this.view.map,t;return this.view.type==="2d"?t=new P({portalItem:{id:e.portalItem.id}}):t=new O({portalItem:{id:e.portalItem.id}}),await t.load(),t}scientificRounding(e,t,i){if(e==null)return;let s;if(!String(e).includes("e"))s=Math[i](e*Math.pow(10,t))/Math.pow(10,t);else{let[n,a]=String(e).split("e").map(o=>Number(o)),r=a+t;s=Math[i](+`${n}e${r}`)*Math.pow(10,-t)}return+s.toFixed(t)}roundMinNumberDown(e,t){return this.scientificRounding(e,t,"floor")}roundMaxNumberUp(e,t){return this.scientificRounding(e,t,"ceil")}roundNumber(e,t){return this.scientificRounding(e,t,"round")??e}setExpressionFormat(e,t,i){if(e?.popupTemplate!=null){let s=e?.popupTemplate.fieldInfos?.find(({fieldName:n})=>n===i);s?.format&&(t.format=s.format)}}getInitDefExprFromLayer(e){return e.type==="sublayer"?this.initMapImageExpressions?.[e?.layer?.id??""]?.[e.id]??"":this.initDefExpressions?.[e.id]??""}getInitDefExprFromLayerExpression(e){return e?.sublayerId!=null?this.initMapImageExpressions?.[e.id]?.[e.sublayerId]??"":this.initDefExpressions?.[e.id]??""}findFilterLayer(e){let t=this.view.map?.allLayers.concat(this.view.map?.allTables.toArray()??[])?.find(({id:i})=>i===e.id);return t?.type==="map-image"?t?.findSublayerById(e.sublayerId):t}createLabel(e,t){if(e.type==="coded-value")return e?.codedValues?.[t]??t;if(e.type==="number"&&typeof t=="number"){let i=t;return e.format?.places!=null&&(i=this.roundNumber(t,e.format.places)),e.format?.digitSeparator?this.numberWithCommas(i):i}if(e.type==="date"&&!e.dateOnly){let i=m.convertDateFormatToIntlOptions("short-date-long-time");return m.formatDate(t,i)}if(e.type==="time-only"){let i=m.convertDateFormatToIntlOptions("long-time");return m.formatTimeOnly(t,i)}return t}buildDateExpression(e,t){if(e){let i=new Date(e),s=new Date(e),n=new Date(s.setDate(i.getDate()+1)),a=`${i.getFullYear()}-${i.getMonth()+1}-${i.getDate()}`,r=`${i.getHours()}:${i.getMinutes()}:${i.getSeconds()}`,o=`${n.getHours()}:${n.getMinutes()}:${n.getSeconds()}`,c=`${n.getFullYear()}-${n.getMonth()+1}-${n.getDate()}`;return`${t} BETWEEN '${a} ${r}' AND '${c} ${o}'`}}async getQueryLayer(e){let t=e.type==="sublayer"?await e.createFeatureLayer():e;if(!t)throw new Error("Failed to create feature layer");return t}applyCacheHint(e,t){e?.capabilities?.query?.supportsCacheHint&&(t.cacheHint=!0)}applyQueryGeometryFromExtentSelector(e){if(!this.extentSelector||!this.extentSelectorConfig)return;let t=this.getExtent(this.extentSelector,this.extentSelectorConfig);t&&(e.geometry=t,e.spatialRelationship="intersects")}async updateInitExpressions(){if(!this.view?.map)return;let e=await this.getInitMap();this.initDefExpressions={},this.initPointCloudFilters={},this.initMapImageExpressions={},e.allLayers.concat(e.allTables.toArray()??[]).forEach(t=>{if(!g.includes(t.type))return;let i=t;if(i.type==="point-cloud")this.initPointCloudFilters||(this.initPointCloudFilters={}),this.initPointCloudFilters[i.id]=i.filters;else if(i.type==="map-image")this.initMapImageExpressions||(this.initMapImageExpressions={}),this.initMapImageExpressions[i.id]=i.allSublayers.reduce((s,n)=>(s[n.id]=n.definitionExpression??"",s),{});else{if(!this.initDefExpressions)return;this.initDefExpressions[i.id]=i.definitionExpression??""}}),this.isInitUpdateComplete=!0}sortCodedValues(e){typeof e.fields?.[0]=="number"?e.fields=[...new Set(e.fields)].sort((t,i)=>{let s=e.codedValues?.[t],n=e.codedValues?.[i];return(s??t)-(n??i)}):e.fields=[...new Set(e.fields)].sort((t,i)=>{let s=e.codedValues?.[t],n=e.codedValues?.[i],a=s??t,r=n??i;return a.localeCompare(r)})}render(){let e=this.loading?this.renderLoading():this.initFilterConfig(),t=this.renderFooter();return l`<calcite-panel class=${p(this.baseClass)} ${v(this.panelEl)}><slot slot=header-content name=filter-header-content></slot><slot slot=header-actions-end name=filter-header-actions-end></slot>${x("filter-container",l`<div class=${p(d.filterContainer)}>${e}${t}</div>`)}</calcite-panel>`}renderLoading(){return l`<calcite-loader label="Loading filters..."></calcite-loader>`}renderFilter(e){let{id:t}=e;return e.expressions.map((i,s)=>i.type==="checkbox"||i.type==null?x(`${t}-${s}`,l`<div class=${p(d.filterItemContainer)}><div class=${p(d.filterItemTitle)}><p>${i.name}</p></div><div class=${p(d.checkboxContainer)}><calcite-checkbox id=${i.id.toString()??h} scale=l .checked=${i?.active} @calciteCheckboxChange=${this.handleCheckboxChange.bind(this,e,i)}></calcite-checkbox></div></div>`):this.initInput(e,i))}renderLayerBlock(){return this.filterLayerExpressions?.map(e=>this.renderFilterBlocks(e))}renderFilterBlocks(e){let t=this.renderFilter(e),{operator:i}=e,s=i?.trim()==="OR"?"orOperator":"andOperator",n=this.renderZoomTo(e);return x(e.id,l`<calcite-block .heading=${e.title} .description=${this._messages[s]} .expanded=${this.openFilters?!0:void 0} collapsible>${n}${t}</calcite-block>`)}renderCombobox(e,t){return x("combo-select",l`<label class=${p(d.filterUIItemContainer)}><span>${t.name}</span><calcite-combobox id=${t.id.toString()??h} @calciteComboboxChange=${this.handleComboSelect.bind(this,t,e)} .label=${t.name} .placeholder=${t.placeholder} selection-mode=multiple max-items=6 scale=s .overlayPositioning=${this.comboboxOverlayPositioning}>${t.fields?.map((i,s)=>this.renderComboboxItem(t,i,s))}</calcite-combobox></label>`)}renderComboboxItem(e,t,i){let s=this.createLabel(e,t),n=e?.selectedFields?.includes(t)??!1;return x(`${s}-${i}`,l`<calcite-combobox-item .value=${t} .heading=${`${s}`} .selected=${n}></calcite-combobox-item>`)}renderNumberSlider(e,t){let i=t?.min,s=t?.max,n=t?.step?t.step:1,a=i!=null&&s!=null,r=t?.field??"",o=t?.range?.min!=null?t.range.min:i,c=t?.range?.max!=null?t.range.max:s,u=[o,c];return a?x(t?.id.toString(),l`<label class=${p(d.filterUIItemContainer)}><span>${t?.name}</span><div class=${p(d.numberInputContainer)}><calcite-slider id=${t?.id.toString()??h} @calciteSliderChange=${this.handleSliderChange.bind(this,t,e)} .min=${i} .max=${s} .minValue=${i} .maxValue=${s} .minLabel=${this._messages.minSlider?.replace("{field}",r)} .maxLabel=${this._messages.maxSlider?.replace("{field}",r)} .step=${n} label-handles snap .value=${u} .groupSeparator=${t?.format?.digitSeparator} precise></calcite-slider></div></label>`):void 0}renderDatePicker(e,t){let{min:i,max:s}=t,n=[t?.range?.min,t?.range?.max];return i!=null&&s!=null?l`<label class=${p(d.filterUIItemContainer)}><span>${t?.name}</span><div class=${p(d.dateInputContainer)}><calcite-input-date-picker id=${t?.id.toString()??h} @calciteInputDatePickerChange=${this.handleDatePickerRangeChange.bind(this,t,e)} .min=${i} .max=${s} calendars=1 overlay-positioning=fixed lang=${m.getLocale()??"en"??h} layout=vertical .value=${n} range></calcite-input-date-picker><calcite-action @click=${this.handleResetDatePicker.bind(this,t,e)} icon=reset .text=${this._messages.resetDatePicker} title=${this._messages.resetDatePicker??h} scale=s></calcite-action></div></label>`:void 0}renderTimePicker(e,t){let{min:i,max:s,range:n}=t,a=i!=null&&s!=null,r=n?.min!=null?n.min:i,o=n?.max!=null?n.max:s;return a?l`<label class=${p(d.filterUIItemContainer)}><span>${t?.name}</span><div class=${p(d.timeInputContainer)}><calcite-input-time-picker .id=${`${t?.id.toString()}-min`} .value=${r} overlay-positioning=fixed lang=${m.getLocale()??"en"??h} @calciteInputTimePickerChange=${this.handleTimePickerRangeChange.bind(this,t,e,!0)}></calcite-input-time-picker><calcite-input-time-picker .id=${`${t?.id.toString()}-max`} .value=${o} overlay-positioning=fixed lang=${m.getLocale()??"en"??h} @calciteInputTimePickerChange=${this.handleTimePickerRangeChange.bind(this,t,e,!1)}></calcite-input-time-picker><calcite-action @click=${this.handleResetTimePicker.bind(this,t,e)} icon=reset .text=${this._messages.resetTimePicker} title=${this._messages.resetTimePicker??h} scale=s></calcite-action></div></label>`:void 0}renderFooter(){let e=this.closeBtnText??this._messages.close,t=this.closeBtn&&this.resetBtn?"half":"full";return l`<div class=${p(d.footer)} slot=footer>${this.resetBtn?l`<calcite-button appearance=outline .width=${t} @click=${this.handleResetFilter} ${v(this.resetBtnEl)}>${this._messages.resetFilter}</calcite-button>`:void 0}${this.closeBtn?l`<calcite-button appearance=solid .width=${t} kind=brand @click=${this.closeBtnOnClick}>${e}</calcite-button>`:void 0}</div>`}renderZoomTo(e){let t=e?.sublayerId?`zoom-to-${e.id}-${e.sublayerId}`:`zoom-to-${e.id}`;return this.zoomBtn?l`<calcite-action id=${t??h} slot=actions-end appearance=transparent .text=${this._messages.zoomTo} title=${this._messages.zoomTo??h} scale=s icon=magnifying-glass-plus @click=${this.handleZoomTo.bind(this,e)}></calcite-action>`:void 0}};I("instant-apps-filter-list",C);return C},"geometry/support/jsonUtils","intl","WebMap","WebScene")
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{a}from"./
|
|
2
|
+
import{a}from"./37CMWBMW.js";import"./KZBPVSUW.js";import d from"./ENJC4SNG.js";import c from"./XOCNSPTC.js";import b from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./LABCYKSC.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import"./TEHBW75B.js";import"./RSPNBIIE.js";import"./ZCU2WWVN.js";import"./WGO4EVOV.js";import"./YKB6256M.js";import"./36LRAUE4.js";import"./JMY4B4WQ.js";import"./VQ5ZAQUF.js";import"./Z4F2NZOT.js";import"./KOIDWEP3.js";import"./3KXMYZCU.js";import"./6ERMTA3J.js";import"./GF4QELNV.js";import"./3TAQSXLA.js";import"./PY6RTQDR.js";import"./DKD2EGQP.js";import"./5O53T3SW.js";import"./AJZDBHB6.js";import"./FES7B3SJ.js";import"./5BJO5ABV.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([])=>{return a},b,c,d)
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{b as r}from"./
|
|
2
|
+
import{b as r}from"./KGXEY5HR.js";import{H as i,h as a,i as p}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([l])=>{var d=a`:host{display:block}`,m="floating",h="instant-apps-control-panel",x="border-bottom: 1px solid var(--calcite-color-border-3)",s=class extends i{constructor(){super(...arguments),this.components=[]}static{this.properties={components:0,view:0}}static{this.styles=d}async load(){await this._handleComponents()}async _handleComponents(){let t=this._getComponentsNode();t&&(this._resetUI(t),this._attachComponents(t))}_attachComponents(t){this.components.forEach(this._attachmentComponent(t))}_attachmentComponent(t){return(o,e)=>{let n=o.content;o.isExpand&&(n=this._getExpand(o),o.expandIcon&&(n.expandIcon=o.expandIcon),o.collapseTooltip&&(n.collapseTooltip=o.collapseTooltip),o.expandTooltip&&(n.expandTooltip=o.expandTooltip)),n.container||(n.container=document.createElement("div")),t?.appendChild(n.container),e!==this.components.length-1&&(n.container.style=x)}}_getExpand(t){let{view:o}=this,{content:e,focusTrapDisabled:n}=t,c=t?.expanded??!1;return new l({content:e,view:o,expanded:c,mode:m,group:h,focusTrapDisabled:!!n})}_getComponentsNode(){return this.el.querySelector('[slot="components"]')}_resetUI(t){if(t.children.length>0)for(;t.firstChild;)t.removeChild(t.firstChild)}render(){return p`<slot name=components></slot>`}};r("instant-apps-control-panel",s);return s},"widgets/Expand")
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{b as y}from"./2B4SGB3I.js";import{b as g}from"./RLSY4VUQ.js";import{nb as f}from"./
|
|
2
|
+
import{b as y}from"./2B4SGB3I.js";import{b as g}from"./RLSY4VUQ.js";import{nb as f}from"./AO7XKW2U.js";import{a as u}from"./LABCYKSC.js";import{b as m}from"./5BJO5ABV.js";import{H as p,K as h,h as c,i as s,l as d,q as l}from"./T3EPRHTT.js";var x=c`:host{display:block}.padding-start-1{padding-inline-start:1rem}.border-override{--calcite-accordion-border-color: var(--calcite-color-border-1) !important}.display-flex{display:flex}.align-center{align-items:center}.solution-list-item-label{color:var(--calcite-color-text-1);font-size:var(--calcite-font-size--1)}.solution-list-item-label,.solution-list-item-description{font-family:var(--calcite-font-family);font-weight:var(--calcite-font-weight-normal);overflow-wrap:break-word;word-break:break-word}.solution-list-item-description{font-size:var(--calcite-font-size--2);margin-block-start:.125rem;color:var(--calcite-color-text-3)}.solution-list-item-content{display:flex;flex:1 1 auto;flex-direction:column;justify-content:center;line-height:1.375}.underline{text-decoration:underline}calcite-chip{--calcite-chip-icon-color: var(--calcite-color-brand)}`,r=class extends p{constructor(){super(...arguments),this.itemRelationshipDependencies=[],this.linkType="item",this.listSelectionMode="none",this.reuseWarning="",this.templateInfos=[],this.typeKeywords=[],this.usageContext="content",this._canDeletePermission=!1,this._dependencyTooltipContent="",this._sortedTemplateInfos=[],this._translations=u({name:"solution-item-accordion",blocking:!0}),this._configContextConsumer=g({context:y,subscribe:!0}),this._sortOrder=["Hub Site Application","Hub Page","Web Experience","Instant App","Web Mapping Application","Dashboard","StoryMap","Form","QuickCapture Project","Workflow","Big Data Analytic (hosted)","Real Time Analytic (hosted)","Feed (hosted)","Tool","Notebook","Data Pipeline","Project Package","Desktop Application Template","TypeNotFound","Web Map","Web Scene","Feature Layer (hosted, view)","Feature Layer (hosted)","Table (hosted, view)","Table (hosted)","Tile Layer","CSV","Microsoft Excel","Microsoft Word","Report Template","Rule Package","Group"],this.solutionItemHover=l(),this.solutionItemSelect=l(),this.solutionTypeHover=l()}static{this.properties={itemRelationshipDependencies:0,linkType:1,listSelectionMode:1,reuseWarning:1,templateInfos:0,typeKeywords:0,usageContext:1,_canDeletePermission:16,_dependencyTooltipContent:16,_sortedTemplateInfos:16,_translations:16}}static{this.styles=x}willUpdate(e){e.has("templateInfos")&&(this.hasUpdated||this.templateInfos?.length>0)&&this.templateInfosWatchHandler()}async templateInfosWatchHandler(){this._sortedTemplateInfos=this._sortTemplates()}async collapseAll(){this.el?.shadowRoot?.querySelectorAll("calcite-accordion-item")?.forEach(e=>{e.expanded=!1})}async deselectAll(e=!1){(this.listSelectionMode==="single"||this.listSelectionMode==="single-persist")&&this.el?.shadowRoot?.querySelectorAll("calcite-list-item")?.forEach(t=>{t.selected&&(t.selected=!1),e&&(t.parentElement?.parentElement).expanded&&((t.parentElement?.parentElement).expanded=!1)})}async expandItemById(e){this.el?.shadowRoot?.querySelectorAll("calcite-list-item")?.forEach(t=>{t.id===e&&((t.parentElement?.parentElement).expanded=!0)})}async expandFirstItem(){let e=this.el?.shadowRoot?.querySelectorAll("calcite-list-item");e?.length&&((e[0].parentElement?.parentElement).expanded=!0)}async expandItems(e){this.el?.shadowRoot?.querySelectorAll("calcite-list-item")?.forEach(t=>{e.indexOf(t.id)>-1&&((t.parentElement?.parentElement).expanded=!0)})}async selectItem(e){(this.listSelectionMode==="single"||this.listSelectionMode==="single-persist")&&this.el?.shadowRoot?.querySelectorAll("calcite-list-item")?.forEach(t=>{t.id===e&&(t.selected=!0,(t.parentElement?.parentElement).expanded=!0)})}async selectFirstItem(){let e=this.el?.shadowRoot?.querySelectorAll("calcite-list-item");e?.length&&(e[0].selected=!0,(e[0].parentElement?.parentElement).expanded=!0)}async selectItems(e){this.listSelectionMode==="multiple"&&this.el?.shadowRoot?.querySelectorAll("calcite-list-item")?.forEach(t=>{e.indexOf(t.id)>-1&&(t.selected=!0,(t.parentElement?.parentElement).expanded=!0)})}async load(){this._sortedTemplateInfos=this._sortTemplates(),this._canDeletePermission=(this._configContextConsumer.value?.authentication?.CanDeleteSolution&&this._configContextConsumer.value?.authentication?.CanUpdateSolution)??!1}render(){return this._getAccordion()}_deselectOthers(e){(this.listSelectionMode==="single"||this.listSelectionMode==="single-persist")&&this.el?.shadowRoot?.querySelectorAll("calcite-list-item")?.forEach(t=>{t.id!==e&&(t.selected=!1)})}_getAccordion(){let e=[],t=this._sortedTemplateInfos.reduce((i,n)=>{let o=this._getTypeForDisplay(n.type,n.typeKeywords);return e.indexOf(o)<0&&(e.push(o),i.push(this._getAccordionItem(n))),i},[]);return s`<calcite-accordion class="border-override" selection-mode=single>${t}</calcite-accordion>`}_getAccordionItem(e){let t=this._getTypeForDisplay(e.type,e.typeKeywords),i=this._sortedTemplateInfos.filter(n=>this._getTypeForDisplay(n.type,n.typeKeywords)===t);return s`<calcite-accordion-item .heading=${`${t} (${i.length})`} @mouseenter=${()=>this.solutionTypeHover.emit({itemType:t,entering:!0})} @mouseleave=${()=>this.solutionTypeHover.emit({itemType:t,entering:!1})}><solution-item-icon class="padding-start-1 display-flex align-center" slot=actions-start .type=${e.type} .typeKeywords=${e.typeKeywords}></solution-item-icon>${this._getList(i)}</calcite-accordion-item>`}_getList(e){let t=this._sortTemplatesByTitle(e);return s`<calcite-list .label=${this._translations.solutionsTemplates} selection-appearance=border .selectionMode=${this.listSelectionMode}>${t.map(i=>this._getListItem(i))}</calcite-list>`}_getListItem(e){let t=this.typeKeywords.includes("Deployed")&&e.url,i=this.linkType==="action";return s`<calcite-list-item id=${e.id??d} @mouseenter=${()=>this.solutionItemHover.emit({itemId:e.id,entering:!0})} @mouseleave=${()=>this.solutionItemHover.emit({itemId:e.id,entering:!1})} @calciteListItemSelect=${()=>{this._deselectOthers(e.id),this.solutionItemSelect.emit({itemId:e.id,selected:!0}),t&&!i&&window.open(e.url,"_blank")}} .value=${e.id}><div class="solution-list-item-content" slot=content><div class=${`solution-list-item-label ${t&&!i?"underline":""}`}>${e.title}</div><div class="solution-list-item-description">${e.snippet}</div></div>${this._checkUsageForWarnings(e)}${t&&i?s`<div slot=actions-end><calcite-action icon=launch .id=${`${e.id}-launch`} .label=${this._translations?.openDetails} @click=${()=>window.open(e.url,"_blank")} text></calcite-action><calcite-tooltip overlay-positioning=fixed .referenceElement=${`${e.id}-launch`}><span>${this._translations?.openDetails}</span></calcite-tooltip></div>`:null}</calcite-list-item>`}_sortTemplatesByTitle(e){return e.sort((t,i)=>t.title<i.title?-1:t.title>i.title?1:0)}_sortTemplates(){return this.templateInfos.sort((e,t)=>{let i=this._getTypeForSort(e),n=this._getTypeForSort(t),o=this._sortOrder.indexOf(i),a=this._sortOrder.indexOf(n);return o-a})}_getTypeForSort(e){let t=this._getTypeForDisplay(e.type,e.typeKeywords);return this._sortOrder.indexOf(t)<0&&(t="TypeNotFound"),t}_getTypeForDisplay(e,t){let i=e;if(e==="Feature Service"){let n=t.indexOf("View Service")>-1,o=t.indexOf("Table")>-1;i=n&&o?"Table (hosted, view)":o?"Table (hosted)":n?"Feature Layer (hosted, view)":"Feature Layer (hosted)"}return e==="Web Mapping Application"&&(i=t.indexOf("configurableApp")>-1?"Instant App":i),i=e==="Geoprocessing Service"?"Tool":i,i=e==="Feed"?"Feed (hosted)":i,i=e==="Real Time Analytic"?"Real Time Analytic (hosted)":i,i=e==="Big Data Analytic"?"Big Data Analytic (hosted)":i,i=e==="Vector Tile Service"?"Tile Layer":i,i}_getWarningChip(e,t,i,n){let o=t==="info"?"var(--calcite-color-status-info)":"var(--calcite-color-status-danger)";return s`<div slot=actions-end><calcite-chip .icon=${t==="info"?"information":"exclamation-mark-triangle"} .id=${i+"-warning"} kind=neutral .label=${e} scale=s style=${h({"--calcite-chip-icon-color":o,cursor:n&&n.length>0?"pointer":"default"})}>${e}</calcite-chip>${n&&n.length>0?s`<calcite-tooltip class=solution-list-item-content placement=bottom .referenceElement=${`${i}-warning`} scale=m @calciteTooltipBeforeOpen=${async()=>{let a={q:n.map(T=>`id:${T.dependencyItemId}`).join(" OR "),authentication:this._configContextConsumer.value?.userSession,pagingParam:{start:1,num:100}},_=await f(a);this._dependencyTooltipContent=s`<solutions-deployed-list .results=${_} .listTitle=${this._translations?.itemUsedInOtherSolutions||""}></solutions-deployed-list>`}}>${this._dependencyTooltipContent}</calcite-tooltip>`:null}</div>`}_checkUsageForWarnings(e){let t=this._configContextConsumer.value?.userSession?.username??null,i=this.itemRelationshipDependencies.filter(o=>o.controlItemId===e.id),n=i.length>0;if(this.usageContext==="content"&&n&&this.reuseWarning)return this._getWarningChip(this.reuseWarning,"info",e.id,i);if(this.usageContext==="rename"){let o=this._configContextConsumer.value?.authentication?.CanUpdateSolution??!1;if(e.owner!==t)if(o){if(n&&this.reuseWarning)return this._getWarningChip(this.reuseWarning,"info",e.id,i)}else return this._getWarningChip(this._translations?.noPrivilegeToManage||"","warn",e.id);else if(n&&this.reuseWarning)return this._getWarningChip(this.reuseWarning,"info",e.id,i)}if(this.usageContext==="delete"){if(e.owner!==t)if(this._canDeletePermission){if(n)return this._getWarningChip(this._translations?.usedInOtherSolutionsDeleteWarning||"","info",e.id)}else return this._getWarningChip(this._translations?.noPrivilegeToManage||"","warn",e.id);else if(n)return this._getWarningChip(this.reuseWarning,"info",e.id,i)}return""}};m("solution-item-accordion",r);export{r as a};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import f from"./LOSU3FPH.js";import e from"./EHIUCEAX.js";import d from"./DQJ36YEL.js";import a from"./TK5EXRZL.js";import{a as $,b as C}from"./2B4SGB3I.js";import{b as g}from"./RLSY4VUQ.js";import{la as S,ra as k}from"./CGQALCTZ.js";import{a as w}from"./VSRNGZ43.js";import{b as y}from"./ZB5UCRCG.js";import{H as _,J as x,K as v,L as c,h as b,i as t,q as r}from"./T3EPRHTT.js";export default $arcgis.t(([{h:h,m:d,t:D,u:I},{a:T,c:O,g:N,r:l},{a:M},{d:m,h:P,i:u}])=>{var U=b`.negative-tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:2px}.font-weight-med{font-weight:var(--calcite-font-weight-medium)}.font-weight-bold{font-weight:var(--calcite-font-weight-bold)}.heading-font{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.title-font{font-size:1.8rem;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1)}.font-1{font-size:var(--calcite-spacing-lg)}.display-flex{display:flex}.display-none{display:none}.flex-direction-column{flex-direction:column}.flex-direction-row{flex-direction:row}@container (min-width: 801px){.font-size-override .display-flex.flex-direction-row>.image-width+.display-flex{flex:1;min-width:0}}.icon-color{color:var(--calcite-color-text-3)}.padding-bottom-lg{padding-bottom:var(--calcite-spacing-lg)}.item-padding{--calcite-internal-accordion-item-padding: var(--calcite-spacing-xl)}.align-items-center{align-items:center}.align-items-start{align-items:start}.font-size-override{--calcite-font-size--2: var(--calcite-font-size--1)}.background-color-1{background-color:var(--calcite-color-surface-2)}.background-color-2{background-color:var(--calcite-color-surface-3)}.label-override{--calcite-label-margin-bottom: var(--calcite-spacing-none)}.position-relative{position:relative}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.margin-block-start-end-0{margin-block-start:var(--calcite-spacing-none);margin-block-end:var(--calcite-spacing-none)}.panel-background-2{--calcite-panel-background-color: var(--calcite-color-surface-3);background-color:var(--calcite-color-surface-3)}.panel-background-1{--calcite-panel-background-color: var(--calcite-color-surface-2);--calcite-shell-panel-background-color: var(--calcite-color-surface-2)}.border-none{border:none}.font-color-1{color:var(--calcite-color-text-1)}.panel-bg-color{--calcite-panel-header-background-color: var(--calcite-color-surface-2);--calcite-panel-background-color: var(--calcite-color-surface-2)}.dialog-y-size{--calcite-dialog-size-y: 90% }.dialog-x-size{--calcite-dialog-size-x: 90% }.bottom-border{border-bottom:solid var(--calcite-spacing-px);color:var(--calcite-color-border-1)}.margin-start-end-xxl{margin-inline-start:var(--calcite-spacing-xxl);margin-inline-end:var(--calcite-spacing-xxl)}.margin-start-end-lg{margin-inline-start:var(--calcite-spacing-lg);margin-inline-end:var(--calcite-spacing-lg)}.margin-top-xxl{margin-top:var(--calcite-spacing-xxl)}.justify-between{justify-content:space-between}.items-baseline{align-items:baseline}.padding-xxl{padding:var(--calcite-spacing-xxl)}.padding-lg{padding:var(--calcite-spacing-lg)}.padding-top-xxl{padding-top:var(--calcite-spacing-xxl)}.padding-top-lg{padding-top:var(--calcite-spacing-lg)}.padding-bottom-xxl{padding-bottom:var(--calcite-spacing-xxl)}.padding-end-1{padding-inline-end:var(--calcite-spacing-lg)}.padding-end-xxl{padding-inline-end:var(--calcite-spacing-xxl)}.padding-start-sm{padding-inline-start:var(--calcite-spacing-sm)}.padding-start-xxl{padding-inline-start:var(--calcite-spacing-xxl)}.image-width{width:300px;flex-grow:0;flex-shrink:0}@container (max-width: 1280px){.image-width{flex-grow:0;flex-shrink:1}}img{max-width:100%;height:auto;overflow-clip-margin:content-box;overflow:clip;display:block}.margin-xl{margin:var(--calcite-spacing-xl)}.line-height-1{line-height:1.1}.line-height-xxl{line-height:var(--calcite-line-height-xxl)}@container (max-width: 800px){.font-size-override .display-flex.flex-direction-row{flex-direction:column!important}.image-width{width:100%!important;max-width:100%!important;margin:0!important;padding:var(--calcite-spacing-lg)!important;padding-bottom:0!important;box-sizing:border-box}.image-width img{width:100%;max-width:100%}.margin-xl{margin:0!important}.image-width+.display-flex{padding-inline-start:var(--calcite-spacing-lg)!important;padding-inline-end:var(--calcite-spacing-lg)!important}.padding-start-sm{padding-inline-start:0!important}.title-font{padding-inline-start:0!important;padding-top:var(--calcite-spacing-lg)!important;padding-bottom:var(--calcite-spacing-lg)!important}.align-items-start.padding-bottom-xxl,.padding-bottom-xxl.padding-start-sm{padding-bottom:var(--calcite-spacing-lg)!important}}calcite-shell-panel{--calcite-shell-panel-max-width: 20rem;--calcite-shell-panel-width: 24vw}calcite-shell{block-size:unset}.solution-deployed-action{--calcite-color-focus: initial}.solution-deployed-action.padding-bottom-lg,.solution-deployed-action.padding-bottom-1{padding-bottom:0;margin-bottom:var(--calcite-spacing-lg)}.solution-deployed-action.padding-top-1{padding-top:0;margin-top:var(--calcite-spacing-lg)}.chipClass{padding-left:var(--calcite-spacing-sm)!important;padding-right:var(--calcite-spacing-sm)!important}.skeleton-loader{background:linear-gradient(90deg,var(--calcite-color-foreground-1) 0%,var(--calcite-color-foreground-2) 50%,var(--calcite-color-foreground-1) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--calcite-border-radius)}.skeleton-folder{height:1.5rem;width:12rem;border-radius:var(--calcite-border-radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}`,f=class extends _{constructor(){super(),this.diagramKey="",this.open=!1,this.readOnlyNotice="",this.templateInfos=[],this._accordionLoading=!1,this._configureTitlesOpen=!1,this._deleteDialogOpen=!1,this._hasNewVersion=!1,this._hasSourceSolution=!1,this._isDiagramOpen=!1,this._isNameConflict=!1,this._invalidNameMessage="",this._showFailedAlert=!1,this._showItemUpdateLoading=!1,this.isMobile=!1,this._templateInfoGraph=[],this._thumbnailUrl="",this._folderName="",this._folderId=null,this._folderLoading=!1,this._translations=w({name:"solution-deployed-card-panel",blocking:!0}),this._configContextConsumer=g({context:C,subscribe:!0,callback:async e=>{e&&(this._isOrgAdmin=O(e.authentication),this._user=e.authentication?.Portal?.user)}}),this._isOrgAdmin=!1,this._isMobileContextConsumer=g({context:$,subscribe:!0,callback:e=>this.isMobile=e}),this.navTabSelected=r(),this.forceSelectTab=r(),this.sortTypeChanged=r(),this.solutionConfigureDialogClose=r(),this._nonSolutionDependencyItems=[],this._openFolder=e=>{e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Folder",dimensions:[this.card?.title||"",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page"]});let i=this._configContextConsumer.value?.orgUrl;if(!i)return;let a=this._configContextConsumer.value?.userSession?.username,n=this.card?.owner===a,o;if(n){let s=this._folderId||this.card?.owner;o=`${i}/home/content.html?folder=${s}`}else this._folderId?o=`${i}/home/content.html?user=${this.card?.owner}&folder=${this._folderId}`:o=`${i}/home/content.html?user=${this.card?.owner}&folder=${this.card?.owner}`;window.open(o,"_blank")},this._openSourceSolutionDetails=async e=>{e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Details",dimensions:[this.card?.title||"",this.card?.deployCommonId||"",this.card?.deployVersion||""]}),await new Promise(a=>setTimeout(a,100));let i=u(this._configContextConsumer.value.allCards,this.card.deployCommonId);i&&this.forceSelectTab.emit({tabType:"details",tabTitleOrId:i})},this.listenOn(window,"deployedCardSelected",this._deployedCardSelected),this.listenOn(window,"deployAppTabSelected",this._handleDeployAppTabSelected),this.listenOn(window,"displayDeployedCard",()=>{D({kind:"success",icon:"check-circle",title:this._translations.deploySuccessAlert.replace("{{solutionTitle}}",this.card?.title??""),message:"",autoClose:!0,autoCloseDuration:"medium"})}),this.listenOn(window,"sessionRefreshed",e=>{this._updateThumbnailToken(e.detail)})}static{this.properties={card:0,cardRef:1,diagramKey:1,open:5,readOnlyNotice:1,templateInfos:0,_accordionLoading:16,_configureTitlesOpen:16,_deleteDialogOpen:16,_hasNewVersion:16,_hasSourceSolution:16,_isDiagramOpen:16,_isNameConflict:16,_invalidNameMessage:16,_showFailedAlert:16,_showItemUpdateLoading:16,isMobile:16,_templateInfoGraph:16,_thumbnailUrl:16,_folderName:16,_folderId:16,_folderLoading:16,_translations:16,_nonSolutionDependencyItems:16}}static{this.styles=U}get _telemetry(){return this._configContextConsumer.value?.telemetrySession}async load(){if(this._isMobileContextConsumer.value&&(this.isMobile=this._isMobileContextConsumer.value),this.card?.thumbnailUrl){let e=this._configContextConsumer.value?.userSession,i=this.card?.thumbnailUrl.replace(/w=\d+/,"w=400");this._thumbnailUrl=`${i}&token=${e?.token}`}}willUpdate(e){if(e.has("card")){let i=this._configContextConsumer.value?.userSession,a=this.card?.thumbnailUrl.replace(/w=\d+/,"w=400");this._thumbnailUrl=`${a}&token=${i?.token}`,this._folderLoading=!0,this._folderName="",this._folderId=null}}render(){let e=this.card&&this.card.typeKeywords?.includes("AIAssistant");return this.isMobile?t`<calcite-shell class="position-relative background-color-2"><calcite-panel class="panel-background-2 border-none" slot=panel-bottom><div class="background-color-2 padding-top-lg">${this._getSolutionPanel()}</div><div class="background-color-1 margin-top-xxl">${this._getButtons()}${this._getOwnerSection()}<div class="bottom-border margin-start-end-xxl"></div>${this._getFolderSection()}${!e&&t`<div class="bottom-border margin-start-end-xxl"></div>`||""}${!e&&this._getSolutionVersionCard()||""}</div>${this._getSolutionContents()}</calcite-panel></calcite-shell>`:t`<calcite-shell class="position-relative background-color-2"><calcite-panel class="padding-end-xxl panel-background-2 border-none" slot=panel-bottom><div class="display-flex flex-direction-column overflow-hidden"><div class="background-color-2 padding-top-xxl">${this._getSolutionPanel()}</div>${this._getSolutionContents()}</div></calcite-panel><calcite-shell-panel class="panel-background-1" slot=panel-end>${this._getButtons()}${this._getOwnerSection()}<div class="bottom-border margin-start-end-xxl"></div>${this._getFolderSection()}${!e&&t`<div class="bottom-border margin-start-end-xxl"></div>`||""}${!e&&this._getSolutionVersionCard()||""}</calcite-shell-panel>${this._renderDiagramDialog()}${this._getConfigureTitlesDialog()}${this._getDeleteDialog()}</calcite-shell>`}async _deployedCardSelected(e){let i=e.detail;this.card=i.card,this.cardRef=i.cardRef,this.templateInfos=[],this._accordionLoading=!0,this.templateInfos=await this._getTemplates(),this._accordionLoading=!1;let a=await M(this._configContextConsumer.value.userSession,this.card);this._nonSolutionDependencyItems=a._nonSolutionDependencyItems;let n=P(this._configContextConsumer.value?.allCards||[],this.card.deployCommonId);this._hasSourceSolution=!!n;let o=!1;if(n){let s=m(n),p=m(this.card);o=s>p}this._hasNewVersion=o,this._folderLoading=!0,this._folderName="",this._folderId=null,await this._fetchFolderInfo(),this._folderLoading=!1}_handleDeployAppTabSelected(e){e.detail==="deployed-card"&&this.sortTypeChanged.emit("")}_getButtons(){let e=this._configContextConsumer.value?.userSession?.username,i=this._configContextConsumer.value?.authentication?.CanUpdateSolution,a=this._configContextConsumer.value?.authentication?.CanDeleteSolution&&this._configContextConsumer.value?.authentication?.CanUpdateSolution,n=h(this._configContextConsumer.value),o=this.card?.owner===e||this._isOrgAdmin||i,s=this.card?.owner===e||this._isOrgAdmin||a,p=o?"display-none":"",L=this.isMobile?"padding-lg":"padding-xxl";return t`<div class=${`display-flex flex-direction-column ${L}`}>${!this.isMobile&&t`<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" kind=neutral @click=${this._openDiagram} scale=m width=full>${this._translations.viewTheDiagram}</calcite-button>`||""}<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" kind=neutral @click=${this._viewDocumentation} scale=m width=full>${this._translations.solutionDocumentation}</calcite-button><calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" kind=neutral @click=${this._openItemDetails} scale=m width=full>${this._translations.itemDetails}</calcite-button>${o&&!this.isMobile&&t`<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" .disabled=${n} id=solution-configure-titles-button kind=neutral @click=${this._openConfigureTitlesDialog} scale=m width=full>${this._translations.updateTitles}</calcite-button><calcite-tooltip class=${x(p)} overlay-positioning=fixed reference-element=solution-configure-titles-button><span>${this._translations.mustOwnSolution}</span></calcite-tooltip>`||""}${s&&!this.isMobile&&t`<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" .disabled=${n} kind=neutral @click=${this._deleteSolution} scale=m width=full>${this._translations.deleteSolution}</calcite-button>`||""}</div>`}_getReadOnlyNotice(){return t`<calcite-notice class="padding-bottom-lg" icon=exclamation-mark-triangle kind=warning open scale=s><div slot=message .innerHTML=${this.readOnlyNotice??""}></div></calcite-notice>`}_openConfigureTitlesDialog(){this._configureTitlesOpen=!0}_getConfigureTitlesDialog(){return this._configureTitlesOpen?t`<solution-configure-titles .card=${this.card} @solutionConfigureTitlesBeforeClose=${async()=>{this.templateInfos=await this._getTemplates(),this._configureTitlesOpen=!1}} @solutionItemsTitlesChanged=${async()=>{this.templateInfos=await this._getTemplates()}} .open=${this._configureTitlesOpen} source="Details Page" .templateInfos=${this.templateInfos}></solution-configure-titles>`:""}_viewDocumentation(e){e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Help",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page",d(this.card?.typeKeywords)]}),window.open(this.card.learnMoreUrl,"_blank")}_openItemDetails(e){e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Item Details",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page",d(this.card?.typeKeywords)]}),window.open(this.card.itemUrl,"_blank")}_getOwnerSection(){if(!this._configContextConsumer?.value)return;let e=this.isMobile?"margin-start-end-lg":"margin-start-end-xxl";return t`<div class=${`display-flex padding-bottom-xxl ${e} flex-direction-column`}><div class="display-flex justify-between items-baseline"><calcite-label class="font-weight-med label-override tabbing-offset" layout=inline scale=l tabindex=0>${this._translations.aboutYourSolutionOwner}</calcite-label></div><solution-user-avatar .fullname=${this._user?.username===this.card?.owner?this._user?.fullName:void 0} .lookupProfile=${this._user?.username!==this.card?.owner} .thumbnailUrl=${this._user?.username===this.card?.owner?this._user?.thumbnailUrl:void 0} .username=${this.card?.owner}></solution-user-avatar></div>`}async _openDiagram(e){e.stopPropagation();let i=await this._getTemplates();i&&(this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"View Diagram",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page",d(this.card?.typeKeywords)]}),this._templateInfoGraph=i,this._isDiagramOpen=!0)}async _getTemplates(){return this.cardRef?await this.cardRef.getTemplates():this.card?await T(this.card.id,this._configContextConsumer.value.userSession):void 0}async _fetchFolderInfo(){if(this.card?.id)try{let e=this._configContextConsumer.value?.userSession;if(!e)return;let i=await k(this.card.id,e);if(this._folderId=i.ownerFolder??null,this._folderId){let a=await S(this.card.owner,this._folderId,e);this._folderName=a?.currentFolder?.title||this._folderId}else this._folderName=this.card.owner||"Root"}catch(e){console.error("Error fetching folder info:",e),this._folderId=null,this._folderName=""}}_getFolderSection(){let e=this.isMobile?"padding-lg":"padding-xxl",i=this._folderId?"folder":"home";return t`<div class=${`${e} display-flex flex-direction-column`}><div class="display-flex justify-between items-baseline"><calcite-label class="font-weight-med label-override tabbing-offset" layout=inline scale=l slot=heading tabindex=0>${this._translations.folder}</calcite-label><calcite-button appearance=transparent aria-label=${this._translations.openFolder??c} .disabled=${this._folderLoading} kind=neutral icon-start=launch2 @click=${this._openFolder}>${this._translations.openFolder}</calcite-button></div><div class="display-flex"><div class="display-flex flex-direction-row padding-top-lg align-items-center">${this._folderLoading?t`<div class="skeleton-loader skeleton-folder"></div>`:t`<calcite-icon aria-hidden=true class="icon-color" .icon=${i} scale=m></calcite-icon><div class="display-flex flex-direction-column padding-start-xxl"><span class="tabbing-offset" tabindex=0>${this._folderName||"Root"}</span></div>`}</div></div></div>`}_getSolutionVersionCard(){let e=this._hasNewVersion?this._translations.newVersionAvailable:this._translations.youHaveTheLatestVersion,i=this.isMobile?"padding-lg":"padding-xxl";return t`<div class=${`${i} display-flex flex-direction-column`}><calcite-label class="font-weight-med label-override tabbing-offset" layout=inline scale=l slot=heading tabindex=0>${this._translations.solutionVersion.replace("{{version}}",this.card?.deployVersion||"")}</calcite-label><div class="display-flex"><div class="display-flex flex-direction-row padding-top-lg align-items-center"><calcite-icon aria-hidden=true class="icon-color" icon=clock-forward scale=m></calcite-icon><div class="display-flex flex-direction-column padding-start-xxl"><span class="tabbing-offset" tabindex=0>${e}</span></div></div></div>${this._hasNewVersion?t`<calcite-button appearance=outline-fill class="padding-top-1 solution-deployed-action" kind=neutral @click=${this._openNewVersionSolution} scale=m width=full>${this._translations.learnMoreNewVersion}</calcite-button>`:this._hasSourceSolution?t`<calcite-button appearance=outline-fill class="padding-top-1 solution-deployed-action" kind=neutral @click=${this._openSourceSolutionDetails} scale=m width=full>${this._translations.openDetails}</calcite-button>`:null}</div>`}async _openNewVersionSolution(e){e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"View Latest Version",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||""]}),await new Promise(a=>setTimeout(a,100));let i=u(this._configContextConsumer.value.allCards,this.card.deployCommonId);i&&this.forceSelectTab.emit({tabType:"details",tabTitleOrId:i})}_getSolutionPanel(){let e=this.card&&this.card.typeKeywords?.includes("AIAssistant");return t`<calcite-panel class="font-size-override panel-background-1"><div class="display-flex flex-direction-row"><div class="image-width margin-xl"><img alt=${this.card?.title??c} src=${this._thumbnailUrl??c}></div><div class="display-flex flex-direction-column"><h1 class="title-font margin-block-start-end-0 padding-end-xxl padding-start-sm padding-top-xxl padding-bottom-xxl line-height-1 negative-tabbing-offset" tabindex=0>${this.card?.title}${e&&this._getChips()||""}</h1><div class="display-flex flex-direction-column padding-bottom-xxl padding-start-sm"><div class="display-flex align-items-start padding-bottom-xxl"><div class="font-1 padding-end-1 line-height-xxl negative-tabbing-offset" tabindex=0>${this.card?.snippet}</div></div><div class="display-flex"><div class="display-flex"><calcite-label class="label-override icon-color tabbing-offset" layout=inline tabindex=0><calcite-icon aria-hidden=true class="icon-color" icon=projects scale=s></calcite-icon>${this._translations.aboutYourSolutionDeployedDate.replace("{{deployedDate}}",this.card?.created||"")}</calcite-label></div></div>${h(this._configContextConsumer.value)&&t`<div class="display-flex flex-direction-row padding-end-xxl" style=${v({paddingTop:"1rem"})}>${this._getReadOnlyNotice()}</div>`||""}</div></div></div></calcite-panel>`}_getSolutionContents(){let e=this.card?I(this._nonSolutionDependencyItems,this.card.id):[];return t`<calcite-panel class="panel-background-1 padding-top-xxl"><calcite-accordion class="accordion-bg " icon-position=start scale=l appearance=transparent><calcite-accordion-item class="item-padding" expanded><div class="margin-block-start-end-0 heading-font " slot=content-start>${this._translations.solutionsContentsAndCount.replace("{{numberOfSolutions}}",this.templateInfos.length.toString())}</div><div class="overflow-auto">${this._accordionLoading?t`<calcite-loader .label=${this._translations.loadingText} scale=m></calcite-loader>`:t`<solution-item-accordion .itemRelationshipDependencies=${e} .listSelectionMode=${e.length>0?"multiple":"single"} .reuseWarning=${this._translations.itemUsedInOtherSolutions} .templateInfos=${this.templateInfos} .typeKeywords=${this.card?.typeKeywords}></solution-item-accordion>`}</div></calcite-accordion-item></calcite-accordion></calcite-panel>`}_getDeleteDialog(){return this._deleteDialogOpen?t`<solution-delete-dialog .card=${this.card} @solutionDeleted=${()=>setTimeout(()=>this.navTabSelected.emit({tabType:"deployments"}),100)} @solutionDeleteDialogBeforeClose=${()=>{this._deleteDialogOpen=!1}} .open=${this._deleteDialogOpen} source="Details Page"></solution-delete-dialog>`:""}_renderDiagramDialog(){return this._isDiagramOpen?t`<calcite-dialog class="dialog-y-size dialog-x-size panel-bg-color" .heading=${this._translations.diagramOfTheSolution.replace("{{solution}}",this.card?.title??"")} id=${this._translations.diagramOfTheSolution.replace("{{solution}}",this.card?.title??"")??c} modal .open=${this._isDiagramOpen} @calciteDialogClose=${()=>{this._isDiagramOpen=!1}} outside-close-disabled scale=m width=l><solution-item-diagram .diagramKey=${this.diagramKey!==""?this.diagramKey:this._configContextConsumer.value?.diagramKey??""} .templateInfoGraph=${this._templateInfoGraph} .typeKeywords=${this.card?.typeKeywords}></solution-item-diagram></calcite-dialog>`:""}_getChips(){return t`<calcite-chip class="chipClass" icon=effects .label=${this._translations.builtWithAI} scale=s>${this._translations.builtWithAI}</calcite-chip>`}async _deleteSolution(){this._deleteDialogOpen=!0}_updateThumbnailToken(e){this._thumbnailUrl!==""&&(this._thumbnailUrl=N(this._thumbnailUrl,e))}};y("solution-deployed-card-panel",f);return f},a,d,e,f)
|
|
2
|
+
import f from"./XSJOQTEM.js";import e from"./3N2AUH5S.js";import d from"./XOCNSPTC.js";import a from"./XOPNEAS5.js";import{a as $,b as C}from"./2B4SGB3I.js";import{b as g}from"./RLSY4VUQ.js";import{la as S,ra as k}from"./AO7XKW2U.js";import{a as w}from"./LABCYKSC.js";import{b as y}from"./5BJO5ABV.js";import{H as _,J as x,K as v,L as c,h as b,i as t,q as r}from"./T3EPRHTT.js";export default $arcgis.t(([{h:h,m:d,t:D,u:I},{a:T,c:O,g:N,r:l},{a:M},{d:m,h:P,i:u}])=>{var U=b`.negative-tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:-2px}.tabbing-offset[tabindex]:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:2px}.font-weight-med{font-weight:var(--calcite-font-weight-medium)}.font-weight-bold{font-weight:var(--calcite-font-weight-bold)}.heading-font{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.title-font{font-size:1.8rem;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-color-text-1)}.font-1{font-size:var(--calcite-spacing-lg)}.display-flex{display:flex}.display-none{display:none}.flex-direction-column{flex-direction:column}.flex-direction-row{flex-direction:row}@container (min-width: 801px){.font-size-override .display-flex.flex-direction-row>.image-width+.display-flex{flex:1;min-width:0}}.icon-color{color:var(--calcite-color-text-3)}.padding-bottom-lg{padding-bottom:var(--calcite-spacing-lg)}.item-padding{--calcite-internal-accordion-item-padding: var(--calcite-spacing-xl)}.align-items-center{align-items:center}.align-items-start{align-items:start}.font-size-override{--calcite-font-size--2: var(--calcite-font-size--1)}.background-color-1{background-color:var(--calcite-color-surface-2)}.background-color-2{background-color:var(--calcite-color-surface-3)}.label-override{--calcite-label-margin-bottom: var(--calcite-spacing-none)}.position-relative{position:relative}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.margin-block-start-end-0{margin-block-start:var(--calcite-spacing-none);margin-block-end:var(--calcite-spacing-none)}.panel-background-2{--calcite-panel-background-color: var(--calcite-color-surface-3);background-color:var(--calcite-color-surface-3)}.panel-background-1{--calcite-panel-background-color: var(--calcite-color-surface-2);--calcite-shell-panel-background-color: var(--calcite-color-surface-2)}.border-none{border:none}.font-color-1{color:var(--calcite-color-text-1)}.panel-bg-color{--calcite-panel-header-background-color: var(--calcite-color-surface-2);--calcite-panel-background-color: var(--calcite-color-surface-2)}.dialog-y-size{--calcite-dialog-size-y: 90% }.dialog-x-size{--calcite-dialog-size-x: 90% }.bottom-border{border-bottom:solid var(--calcite-spacing-px);color:var(--calcite-color-border-1)}.margin-start-end-xxl{margin-inline-start:var(--calcite-spacing-xxl);margin-inline-end:var(--calcite-spacing-xxl)}.margin-start-end-lg{margin-inline-start:var(--calcite-spacing-lg);margin-inline-end:var(--calcite-spacing-lg)}.margin-top-xxl{margin-top:var(--calcite-spacing-xxl)}.justify-between{justify-content:space-between}.items-baseline{align-items:baseline}.padding-xxl{padding:var(--calcite-spacing-xxl)}.padding-lg{padding:var(--calcite-spacing-lg)}.padding-top-xxl{padding-top:var(--calcite-spacing-xxl)}.padding-top-lg{padding-top:var(--calcite-spacing-lg)}.padding-bottom-xxl{padding-bottom:var(--calcite-spacing-xxl)}.padding-end-1{padding-inline-end:var(--calcite-spacing-lg)}.padding-end-xxl{padding-inline-end:var(--calcite-spacing-xxl)}.padding-start-sm{padding-inline-start:var(--calcite-spacing-sm)}.padding-start-xxl{padding-inline-start:var(--calcite-spacing-xxl)}.image-width{width:300px;flex-grow:0;flex-shrink:0}@container (max-width: 1280px){.image-width{flex-grow:0;flex-shrink:1}}img{max-width:100%;height:auto;overflow-clip-margin:content-box;overflow:clip;display:block}.margin-xl{margin:var(--calcite-spacing-xl)}.line-height-1{line-height:1.1}.line-height-xxl{line-height:var(--calcite-line-height-xxl)}@container (max-width: 800px){.font-size-override .display-flex.flex-direction-row{flex-direction:column!important}.image-width{width:100%!important;max-width:100%!important;margin:0!important;padding:var(--calcite-spacing-lg)!important;padding-bottom:0!important;box-sizing:border-box}.image-width img{width:100%;max-width:100%}.margin-xl{margin:0!important}.image-width+.display-flex{padding-inline-start:var(--calcite-spacing-lg)!important;padding-inline-end:var(--calcite-spacing-lg)!important}.padding-start-sm{padding-inline-start:0!important}.title-font{padding-inline-start:0!important;padding-top:var(--calcite-spacing-lg)!important;padding-bottom:var(--calcite-spacing-lg)!important}.align-items-start.padding-bottom-xxl,.padding-bottom-xxl.padding-start-sm{padding-bottom:var(--calcite-spacing-lg)!important}}calcite-shell-panel{--calcite-shell-panel-max-width: 20rem;--calcite-shell-panel-width: 24vw}calcite-shell{block-size:unset}.solution-deployed-action{--calcite-color-focus: initial}.solution-deployed-action.padding-bottom-lg,.solution-deployed-action.padding-bottom-1{padding-bottom:0;margin-bottom:var(--calcite-spacing-lg)}.solution-deployed-action.padding-top-1{padding-top:0;margin-top:var(--calcite-spacing-lg)}.chipClass{padding-left:var(--calcite-spacing-sm)!important;padding-right:var(--calcite-spacing-sm)!important}.skeleton-loader{background:linear-gradient(90deg,var(--calcite-color-foreground-1) 0%,var(--calcite-color-foreground-2) 50%,var(--calcite-color-foreground-1) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--calcite-border-radius)}.skeleton-folder{height:1.5rem;width:12rem;border-radius:var(--calcite-border-radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}`,f=class extends _{constructor(){super(),this.diagramKey="",this.open=!1,this.readOnlyNotice="",this.templateInfos=[],this._accordionLoading=!1,this._configureTitlesOpen=!1,this._deleteDialogOpen=!1,this._hasNewVersion=!1,this._hasSourceSolution=!1,this._isDiagramOpen=!1,this._isNameConflict=!1,this._invalidNameMessage="",this._showFailedAlert=!1,this._showItemUpdateLoading=!1,this.isMobile=!1,this._templateInfoGraph=[],this._thumbnailUrl="",this._folderName="",this._folderId=null,this._folderLoading=!1,this._translations=w({name:"solution-deployed-card-panel",blocking:!0}),this._configContextConsumer=g({context:C,subscribe:!0,callback:async e=>{e&&(this._isOrgAdmin=O(e.authentication),this._user=e.authentication?.Portal?.user)}}),this._isOrgAdmin=!1,this._isMobileContextConsumer=g({context:$,subscribe:!0,callback:e=>this.isMobile=e}),this.navTabSelected=r(),this.forceSelectTab=r(),this.sortTypeChanged=r(),this.solutionConfigureDialogClose=r(),this._nonSolutionDependencyItems=[],this._openFolder=e=>{e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Folder",dimensions:[this.card?.title||"",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page"]});let i=this._configContextConsumer.value?.orgUrl;if(!i)return;let a=this._configContextConsumer.value?.userSession?.username,n=this.card?.owner===a,o;if(n){let s=this._folderId||this.card?.owner;o=`${i}/home/content.html?folder=${s}`}else this._folderId?o=`${i}/home/content.html?user=${this.card?.owner}&folder=${this._folderId}`:o=`${i}/home/content.html?user=${this.card?.owner}&folder=${this.card?.owner}`;window.open(o,"_blank")},this._openSourceSolutionDetails=async e=>{e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Details",dimensions:[this.card?.title||"",this.card?.deployCommonId||"",this.card?.deployVersion||""]}),await new Promise(a=>setTimeout(a,100));let i=u(this._configContextConsumer.value.allCards,this.card.deployCommonId);i&&this.forceSelectTab.emit({tabType:"details",tabTitleOrId:i})},this.listenOn(window,"deployedCardSelected",this._deployedCardSelected),this.listenOn(window,"deployAppTabSelected",this._handleDeployAppTabSelected),this.listenOn(window,"displayDeployedCard",()=>{D({kind:"success",icon:"check-circle",title:this._translations.deploySuccessAlert.replace("{{solutionTitle}}",this.card?.title??""),message:"",autoClose:!0,autoCloseDuration:"medium"})}),this.listenOn(window,"sessionRefreshed",e=>{this._updateThumbnailToken(e.detail)})}static{this.properties={card:0,cardRef:1,diagramKey:1,open:5,readOnlyNotice:1,templateInfos:0,_accordionLoading:16,_configureTitlesOpen:16,_deleteDialogOpen:16,_hasNewVersion:16,_hasSourceSolution:16,_isDiagramOpen:16,_isNameConflict:16,_invalidNameMessage:16,_showFailedAlert:16,_showItemUpdateLoading:16,isMobile:16,_templateInfoGraph:16,_thumbnailUrl:16,_folderName:16,_folderId:16,_folderLoading:16,_translations:16,_nonSolutionDependencyItems:16}}static{this.styles=U}get _telemetry(){return this._configContextConsumer.value?.telemetrySession}async load(){if(this._isMobileContextConsumer.value&&(this.isMobile=this._isMobileContextConsumer.value),this.card?.thumbnailUrl){let e=this._configContextConsumer.value?.userSession,i=this.card?.thumbnailUrl.replace(/w=\d+/,"w=400");this._thumbnailUrl=`${i}&token=${e?.token}`}}willUpdate(e){if(e.has("card")){let i=this._configContextConsumer.value?.userSession,a=this.card?.thumbnailUrl.replace(/w=\d+/,"w=400");this._thumbnailUrl=`${a}&token=${i?.token}`,this._folderLoading=!0,this._folderName="",this._folderId=null}}render(){let e=this.card&&this.card.typeKeywords?.includes("AIAssistant");return this.isMobile?t`<calcite-shell class="position-relative background-color-2"><calcite-panel class="panel-background-2 border-none" slot=panel-bottom><div class="background-color-2 padding-top-lg">${this._getSolutionPanel()}</div><div class="background-color-1 margin-top-xxl">${this._getButtons()}${this._getOwnerSection()}<div class="bottom-border margin-start-end-xxl"></div>${this._getFolderSection()}${!e&&t`<div class="bottom-border margin-start-end-xxl"></div>`||""}${!e&&this._getSolutionVersionCard()||""}</div>${this._getSolutionContents()}</calcite-panel></calcite-shell>`:t`<calcite-shell class="position-relative background-color-2"><calcite-panel class="padding-end-xxl panel-background-2 border-none" slot=panel-bottom><div class="display-flex flex-direction-column overflow-hidden"><div class="background-color-2 padding-top-xxl">${this._getSolutionPanel()}</div>${this._getSolutionContents()}</div></calcite-panel><calcite-shell-panel class="panel-background-1" slot=panel-end>${this._getButtons()}${this._getOwnerSection()}<div class="bottom-border margin-start-end-xxl"></div>${this._getFolderSection()}${!e&&t`<div class="bottom-border margin-start-end-xxl"></div>`||""}${!e&&this._getSolutionVersionCard()||""}</calcite-shell-panel>${this._renderDiagramDialog()}${this._getConfigureTitlesDialog()}${this._getDeleteDialog()}</calcite-shell>`}async _deployedCardSelected(e){let i=e.detail;this.card=i.card,this.cardRef=i.cardRef,this.templateInfos=[],this._accordionLoading=!0,this.templateInfos=await this._getTemplates(),this._accordionLoading=!1;let a=await M(this._configContextConsumer.value.userSession,this.card);this._nonSolutionDependencyItems=a._nonSolutionDependencyItems;let n=P(this._configContextConsumer.value?.allCards||[],this.card.deployCommonId);this._hasSourceSolution=!!n;let o=!1;if(n){let s=m(n),p=m(this.card);o=s>p}this._hasNewVersion=o,this._folderLoading=!0,this._folderName="",this._folderId=null,await this._fetchFolderInfo(),this._folderLoading=!1}_handleDeployAppTabSelected(e){e.detail==="deployed-card"&&this.sortTypeChanged.emit("")}_getButtons(){let e=this._configContextConsumer.value?.userSession?.username,i=this._configContextConsumer.value?.authentication?.CanUpdateSolution,a=this._configContextConsumer.value?.authentication?.CanDeleteSolution&&this._configContextConsumer.value?.authentication?.CanUpdateSolution,n=h(this._configContextConsumer.value),o=this.card?.owner===e||this._isOrgAdmin||i,s=this.card?.owner===e||this._isOrgAdmin||a,p=o?"display-none":"",L=this.isMobile?"padding-lg":"padding-xxl";return t`<div class=${`display-flex flex-direction-column ${L}`}>${!this.isMobile&&t`<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" kind=neutral @click=${this._openDiagram} scale=m width=full>${this._translations.viewTheDiagram}</calcite-button>`||""}<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" kind=neutral @click=${this._viewDocumentation} scale=m width=full>${this._translations.solutionDocumentation}</calcite-button><calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" kind=neutral @click=${this._openItemDetails} scale=m width=full>${this._translations.itemDetails}</calcite-button>${o&&!this.isMobile&&t`<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" .disabled=${n} id=solution-configure-titles-button kind=neutral @click=${this._openConfigureTitlesDialog} scale=m width=full>${this._translations.updateTitles}</calcite-button><calcite-tooltip class=${x(p)} overlay-positioning=fixed reference-element=solution-configure-titles-button><span>${this._translations.mustOwnSolution}</span></calcite-tooltip>`||""}${s&&!this.isMobile&&t`<calcite-button appearance=outline-fill class="padding-bottom-1 solution-deployed-action" .disabled=${n} kind=neutral @click=${this._deleteSolution} scale=m width=full>${this._translations.deleteSolution}</calcite-button>`||""}</div>`}_getReadOnlyNotice(){return t`<calcite-notice class="padding-bottom-lg" icon=exclamation-mark-triangle kind=warning open scale=s><div slot=message .innerHTML=${this.readOnlyNotice??""}></div></calcite-notice>`}_openConfigureTitlesDialog(){this._configureTitlesOpen=!0}_getConfigureTitlesDialog(){return this._configureTitlesOpen?t`<solution-configure-titles .card=${this.card} @solutionConfigureTitlesBeforeClose=${async()=>{this.templateInfos=await this._getTemplates(),this._configureTitlesOpen=!1}} @solutionItemsTitlesChanged=${async()=>{this.templateInfos=await this._getTemplates()}} .open=${this._configureTitlesOpen} source="Details Page" .templateInfos=${this.templateInfos}></solution-configure-titles>`:""}_viewDocumentation(e){e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Help",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page",d(this.card?.typeKeywords)]}),window.open(this.card.learnMoreUrl,"_blank")}_openItemDetails(e){e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"Open Item Details",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page",d(this.card?.typeKeywords)]}),window.open(this.card.itemUrl,"_blank")}_getOwnerSection(){if(!this._configContextConsumer?.value)return;let e=this.isMobile?"margin-start-end-lg":"margin-start-end-xxl";return t`<div class=${`display-flex padding-bottom-xxl ${e} flex-direction-column`}><div class="display-flex justify-between items-baseline"><calcite-label class="font-weight-med label-override tabbing-offset" layout=inline scale=l tabindex=0>${this._translations.aboutYourSolutionOwner}</calcite-label></div><solution-user-avatar .fullname=${this._user?.username===this.card?.owner?this._user?.fullName:void 0} .lookupProfile=${this._user?.username!==this.card?.owner} .thumbnailUrl=${this._user?.username===this.card?.owner?this._user?.thumbnailUrl:void 0} .username=${this.card?.owner}></solution-user-avatar></div>`}async _openDiagram(e){e.stopPropagation();let i=await this._getTemplates();i&&(this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"View Diagram",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||"","Details Page",d(this.card?.typeKeywords)]}),this._templateInfoGraph=i,this._isDiagramOpen=!0)}async _getTemplates(){return this.cardRef?await this.cardRef.getTemplates():this.card?await T(this.card.id,this._configContextConsumer.value.userSession):void 0}async _fetchFolderInfo(){if(this.card?.id)try{let e=this._configContextConsumer.value?.userSession;if(!e)return;let i=await k(this.card.id,e);if(this._folderId=i.ownerFolder??null,this._folderId){let a=await S(this.card.owner,this._folderId,e);this._folderName=a?.currentFolder?.title||this._folderId}else this._folderName=this.card.owner||"Root"}catch(e){console.error("Error fetching folder info:",e),this._folderId=null,this._folderName=""}}_getFolderSection(){let e=this.isMobile?"padding-lg":"padding-xxl",i=this._folderId?"folder":"home";return t`<div class=${`${e} display-flex flex-direction-column`}><div class="display-flex justify-between items-baseline"><calcite-label class="font-weight-med label-override tabbing-offset" layout=inline scale=l slot=heading tabindex=0>${this._translations.folder}</calcite-label><calcite-button appearance=transparent aria-label=${this._translations.openFolder??c} .disabled=${this._folderLoading} kind=neutral icon-start=launch2 @click=${this._openFolder}>${this._translations.openFolder}</calcite-button></div><div class="display-flex"><div class="display-flex flex-direction-row padding-top-lg align-items-center">${this._folderLoading?t`<div class="skeleton-loader skeleton-folder"></div>`:t`<calcite-icon aria-hidden=true class="icon-color" .icon=${i} scale=m></calcite-icon><div class="display-flex flex-direction-column padding-start-xxl"><span class="tabbing-offset" tabindex=0>${this._folderName||"Root"}</span></div>`}</div></div></div>`}_getSolutionVersionCard(){let e=this._hasNewVersion?this._translations.newVersionAvailable:this._translations.youHaveTheLatestVersion,i=this.isMobile?"padding-lg":"padding-xxl";return t`<div class=${`${i} display-flex flex-direction-column`}><calcite-label class="font-weight-med label-override tabbing-offset" layout=inline scale=l slot=heading tabindex=0>${this._translations.solutionVersion.replace("{{version}}",this.card?.deployVersion||"")}</calcite-label><div class="display-flex"><div class="display-flex flex-direction-row padding-top-lg align-items-center"><calcite-icon aria-hidden=true class="icon-color" icon=clock-forward scale=m></calcite-icon><div class="display-flex flex-direction-column padding-start-xxl"><span class="tabbing-offset" tabindex=0>${e}</span></div></div></div>${this._hasNewVersion?t`<calcite-button appearance=outline-fill class="padding-top-1 solution-deployed-action" kind=neutral @click=${this._openNewVersionSolution} scale=m width=full>${this._translations.learnMoreNewVersion}</calcite-button>`:this._hasSourceSolution?t`<calcite-button appearance=outline-fill class="padding-top-1 solution-deployed-action" kind=neutral @click=${this._openSourceSolutionDetails} scale=m width=full>${this._translations.openDetails}</calcite-button>`:null}</div>`}async _openNewVersionSolution(e){e.stopPropagation(),this._telemetry?.logEvent({category:l.DEPLOYMENTS,action:"View Latest Version",dimensions:["",this.card?.deployCommonId||"",this.card?.deployVersion||""]}),await new Promise(a=>setTimeout(a,100));let i=u(this._configContextConsumer.value.allCards,this.card.deployCommonId);i&&this.forceSelectTab.emit({tabType:"details",tabTitleOrId:i})}_getSolutionPanel(){let e=this.card&&this.card.typeKeywords?.includes("AIAssistant");return t`<calcite-panel class="font-size-override panel-background-1"><div class="display-flex flex-direction-row"><div class="image-width margin-xl"><img alt=${this.card?.title??c} src=${this._thumbnailUrl??c}></div><div class="display-flex flex-direction-column"><h1 class="title-font margin-block-start-end-0 padding-end-xxl padding-start-sm padding-top-xxl padding-bottom-xxl line-height-1 negative-tabbing-offset" tabindex=0>${this.card?.title}${e&&this._getChips()||""}</h1><div class="display-flex flex-direction-column padding-bottom-xxl padding-start-sm"><div class="display-flex align-items-start padding-bottom-xxl"><div class="font-1 padding-end-1 line-height-xxl negative-tabbing-offset" tabindex=0>${this.card?.snippet}</div></div><div class="display-flex"><div class="display-flex"><calcite-label class="label-override icon-color tabbing-offset" layout=inline tabindex=0><calcite-icon aria-hidden=true class="icon-color" icon=projects scale=s></calcite-icon>${this._translations.aboutYourSolutionDeployedDate.replace("{{deployedDate}}",this.card?.created||"")}</calcite-label></div></div>${h(this._configContextConsumer.value)&&t`<div class="display-flex flex-direction-row padding-end-xxl" style=${v({paddingTop:"1rem"})}>${this._getReadOnlyNotice()}</div>`||""}</div></div></div></calcite-panel>`}_getSolutionContents(){let e=this.card?I(this._nonSolutionDependencyItems,this.card.id):[];return t`<calcite-panel class="panel-background-1 padding-top-xxl"><calcite-accordion class="accordion-bg " icon-position=start scale=l appearance=transparent><calcite-accordion-item class="item-padding" expanded><div class="margin-block-start-end-0 heading-font " slot=content-start>${this._translations.solutionsContentsAndCount.replace("{{numberOfSolutions}}",this.templateInfos.length.toString())}</div><div class="overflow-auto">${this._accordionLoading?t`<calcite-loader .label=${this._translations.loadingText} scale=m></calcite-loader>`:t`<solution-item-accordion .itemRelationshipDependencies=${e} .listSelectionMode=${e.length>0?"multiple":"single"} .reuseWarning=${this._translations.itemUsedInOtherSolutions} .templateInfos=${this.templateInfos} .typeKeywords=${this.card?.typeKeywords}></solution-item-accordion>`}</div></calcite-accordion-item></calcite-accordion></calcite-panel>`}_getDeleteDialog(){return this._deleteDialogOpen?t`<solution-delete-dialog .card=${this.card} @solutionDeleted=${()=>setTimeout(()=>this.navTabSelected.emit({tabType:"deployments"}),100)} @solutionDeleteDialogBeforeClose=${()=>{this._deleteDialogOpen=!1}} .open=${this._deleteDialogOpen} source="Details Page"></solution-delete-dialog>`:""}_renderDiagramDialog(){return this._isDiagramOpen?t`<calcite-dialog class="dialog-y-size dialog-x-size panel-bg-color" .heading=${this._translations.diagramOfTheSolution.replace("{{solution}}",this.card?.title??"")} id=${this._translations.diagramOfTheSolution.replace("{{solution}}",this.card?.title??"")??c} modal .open=${this._isDiagramOpen} @calciteDialogClose=${()=>{this._isDiagramOpen=!1}} outside-close-disabled scale=m width=l><solution-item-diagram .diagramKey=${this.diagramKey!==""?this.diagramKey:this._configContextConsumer.value?.diagramKey??""} .templateInfoGraph=${this._templateInfoGraph} .typeKeywords=${this.card?.typeKeywords}></solution-item-diagram></calcite-dialog>`:""}_getChips(){return t`<calcite-chip class="chipClass" icon=effects .label=${this._translations.builtWithAI} scale=s>${this._translations.builtWithAI}</calcite-chip>`}async _deleteSolution(){this._deleteDialogOpen=!0}_updateThumbnailToken(e){this._thumbnailUrl!==""&&(this._thumbnailUrl=N(this._thumbnailUrl,e))}};y("solution-deployed-card-panel",f);return f},a,d,e,f)
|