@esri/solutions-components 5.1.10 → 5.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/dist/cdn/{WKO7FD3G.js → 2AH3XLSP.js} +1 -1
  2. package/dist/cdn/{UOMLB2VF.js → 2BTYCY73.js} +1 -1
  3. package/dist/cdn/{MZLGG4TG.js → 2GTM4OM5.js} +1 -1
  4. package/dist/cdn/{KTPO53JO.js → 2MNK2M2M.js} +1 -1
  5. package/dist/cdn/{2HPIGWIB.js → 2PTMXOMF.js} +1 -1
  6. package/dist/cdn/2Q4QB7TO.js +2 -0
  7. package/dist/cdn/{ECEZOF4D.js → 2TOUVQE2.js} +1 -1
  8. package/dist/cdn/{6PJXRZLY.js → 3BNJMNCD.js} +1 -1
  9. package/dist/cdn/{KIEHSIOJ.js → 3J3AZRUR.js} +1 -1
  10. package/dist/cdn/{EUG36OCW.js → 3J64FXVL.js} +1 -1
  11. package/dist/cdn/{2K2YQ45L.js → 3Q6BLEUW.js} +1 -1
  12. package/dist/cdn/{PPEPIUC4.js → 3ZNW2HIP.js} +1 -1
  13. package/dist/cdn/{AE272XE3.js → 4AONNWHB.js} +1 -1
  14. package/dist/cdn/{4LAXSM63.js → 4QVVEETV.js} +1 -1
  15. package/dist/cdn/{M6YYTOSO.js → 5C7DC2SL.js} +2 -2
  16. package/dist/cdn/{F2EGGQ3W.js → 5GWQZCK5.js} +1 -1
  17. package/dist/cdn/{XR6IYM4R.js → 5KYL2NR6.js} +1 -1
  18. package/dist/cdn/{Q7SDLDQW.js → 5OHUBPLI.js} +1 -1
  19. package/dist/cdn/{W2MQCT4W.js → 5UOHLES7.js} +1 -1
  20. package/dist/cdn/{4YCW3VWN.js → 5Z4SUP7T.js} +1 -1
  21. package/dist/cdn/{NCCSRCZ2.js → 6CHMTQ7X.js} +1 -1
  22. package/dist/cdn/{C5KDPY7R.js → 6DJOSQ7E.js} +1 -1
  23. package/dist/cdn/{WWTVTT5J.js → 6JW66HJW.js} +1 -1
  24. package/dist/cdn/{4PJ467WK.js → 6OEAB4NL.js} +1 -1
  25. package/dist/cdn/6OHUYDZC.js +2 -0
  26. package/dist/cdn/{5AQFUEQB.js → 6PS3XLRH.js} +1 -1
  27. package/dist/cdn/{OOVVT6VG.js → 6R6R4TFH.js} +1 -1
  28. package/dist/cdn/{WJ5N6JPF.js → 732AAGGJ.js} +1 -1
  29. package/dist/cdn/{PZRAETRN.js → 7BC75SVD.js} +1 -1
  30. package/dist/cdn/{PAV6AMLY.js → 7HYQYHMK.js} +1 -1
  31. package/dist/cdn/{6Z3LGOUQ.js → 7SZGYR22.js} +1 -1
  32. package/dist/cdn/{XJQG7EGF.js → 7TAWNPBZ.js} +1 -1
  33. package/dist/cdn/7YPSCUDA.js +2 -0
  34. package/dist/cdn/{BLUKS5FJ.js → ABPDYKOZ.js} +1 -1
  35. package/dist/cdn/ACTGIDKO.js +4 -0
  36. package/dist/cdn/{FXDJTMGY.js → AK6SGWFY.js} +1 -1
  37. package/dist/cdn/{GACGFXNN.js → AKPQCVFU.js} +1 -1
  38. package/dist/cdn/{TE2VLVWS.js → B56TSN42.js} +1 -1
  39. package/dist/cdn/{N47PSCNQ.js → BAAVBUK6.js} +1 -1
  40. package/dist/cdn/{5T64N34W.js → BG7E5RJ7.js} +1 -1
  41. package/dist/cdn/{OKJ6QAHM.js → BOTOPHKQ.js} +1 -1
  42. package/dist/cdn/{XV6XQ6BU.js → C5NGEPGX.js} +1 -1
  43. package/dist/cdn/{YM4U4HSN.js → CMCDRXVO.js} +1 -1
  44. package/dist/cdn/COSMV4TW.js +2 -0
  45. package/dist/cdn/{ZTVNKDEK.js → CTCWANBA.js} +1 -1
  46. package/dist/cdn/{SHQFXQEI.js → D53I5PX3.js} +1 -1
  47. package/dist/cdn/{6EQSEEAD.js → D7BCH5JY.js} +1 -1
  48. package/dist/cdn/{UG3QQIMB.js → DBJOFIGI.js} +1 -1
  49. package/dist/cdn/{DI3IFDJG.js → DBRM6W63.js} +1 -1
  50. package/dist/cdn/{PUFUUKRQ.js → DC4XE3RK.js} +1 -1
  51. package/dist/cdn/{FSKZZJUF.js → DCKMZWHU.js} +1 -1
  52. package/dist/cdn/{SUGRUFSJ.js → E2LHNWJK.js} +1 -1
  53. package/dist/cdn/{5HJ6EE4G.js → EACWQKLG.js} +1 -1
  54. package/dist/cdn/EXPBVOCZ.js +2 -0
  55. package/dist/cdn/{THZKWIXD.js → FETSFCBL.js} +1 -1
  56. package/dist/cdn/{VMDJMTU2.js → FM47F4IP.js} +1 -1
  57. package/dist/cdn/{BQLGP7UD.js → FY72EUAV.js} +1 -1
  58. package/dist/cdn/{5FDLHAS4.js → GCSG5D4A.js} +1 -1
  59. package/dist/cdn/{RKJHNKGM.js → GDBULXEH.js} +1 -1
  60. package/dist/cdn/{XQBLBK5A.js → GG6W2UKU.js} +1 -1
  61. package/dist/cdn/GMBKLZ7L.js +2 -0
  62. package/dist/cdn/{MA4TKCKK.js → GNE54PDA.js} +1 -1
  63. package/dist/cdn/{CPUKQ2OY.js → GSEA4VV7.js} +1 -1
  64. package/dist/cdn/{AZJYH7I7.js → H3NTIWHD.js} +1 -1
  65. package/dist/cdn/{XYIGNT62.js → HXRZFGOY.js} +1 -1
  66. package/dist/cdn/{V232YHD7.js → IYMK3E6M.js} +1 -1
  67. package/dist/cdn/{KJ3CURXB.js → JMYTCCTQ.js} +1 -1
  68. package/dist/cdn/{QF5BFH3R.js → JSHNQPGP.js} +1 -1
  69. package/dist/cdn/{K5VCPN45.js → JYU3PWGS.js} +1 -1
  70. package/dist/cdn/{OLYZZUDI.js → JZZLKETM.js} +1 -1
  71. package/dist/cdn/{RUMT4B4X.js → K4LUU652.js} +1 -1
  72. package/dist/cdn/{C34LZE4Q.js → KMN7UYCS.js} +1 -1
  73. package/dist/cdn/{FFSZ5CYN.js → KOIR626Q.js} +1 -1
  74. package/dist/cdn/{CQYD3TH5.js → KPD6SAOC.js} +1 -1
  75. package/dist/cdn/L3DICS7J.js +2 -0
  76. package/dist/cdn/{7VY6KY45.js → LEF6LYRH.js} +1 -1
  77. package/dist/cdn/{4VV7DDBG.js → LFBK5LL3.js} +1 -1
  78. package/dist/cdn/{CPOU3UCE.js → LT6TNRF6.js} +1 -1
  79. package/dist/cdn/{DAQ57N3D.js → LTOKLDCW.js} +1 -1
  80. package/dist/cdn/{ELGHSGTO.js → M2RKXX76.js} +1 -1
  81. package/dist/cdn/{OQWPF3PK.js → M6KMGWHY.js} +112 -112
  82. package/dist/cdn/{RUNSGWMR.js → MDBRPVIW.js} +1 -1
  83. package/dist/cdn/{L4EVXVMR.js → MIEA46UR.js} +1 -1
  84. package/dist/cdn/{WZMO2SQE.js → MPOW6X2Q.js} +1 -1
  85. package/dist/cdn/{SIQTPM44.js → MXX6VR25.js} +1 -1
  86. package/dist/cdn/{B4JCBMGE.js → N6RHZQIZ.js} +1 -1
  87. package/dist/cdn/{4R2OJQVH.js → NFLDV2BR.js} +1 -1
  88. package/dist/cdn/{DLAKQTNZ.js → NJQV2ASV.js} +1 -1
  89. package/dist/cdn/{SIBQRSHI.js → NT2KAJ24.js} +1 -1
  90. package/dist/cdn/NTFCCNHZ.js +2 -0
  91. package/dist/cdn/{ASQ2ASAR.js → NYLOU7ZM.js} +1 -1
  92. package/dist/cdn/OBCQW5HQ.js +2 -0
  93. package/dist/cdn/{RQ6B7DOH.js → OIGQMEOA.js} +1 -1
  94. package/dist/cdn/{Z7C3QF2Q.js → OPBYN6K6.js} +1 -1
  95. package/dist/cdn/{JOH2V3WI.js → OQUU2BPX.js} +1 -1
  96. package/dist/cdn/{GC3FZF6H.js → P42EMHKE.js} +1 -1
  97. package/dist/cdn/{35CQS4OH.js → P5XPWB3Q.js} +1 -1
  98. package/dist/cdn/{6GVJDW4C.js → PFI2WBBU.js} +1 -1
  99. package/dist/cdn/{A6BQFFPE.js → Q3MOIT4E.js} +1 -1
  100. package/dist/cdn/{4E4CF6Q7.js → QAVOSU5J.js} +1 -1
  101. package/dist/cdn/{4CDVQJQA.js → QBQZPRIE.js} +1 -1
  102. package/dist/cdn/{5MYEU5AR.js → QQL4IXXC.js} +1 -1
  103. package/dist/cdn/{FCBPBLC6.js → RGK67WAK.js} +1 -1
  104. package/dist/cdn/{2ZDSUBVY.js → RN7VHNTN.js} +1 -1
  105. package/dist/cdn/{3EZYKC6C.js → RPYS2BGE.js} +1 -1
  106. package/dist/cdn/{XUOTOCCL.js → S2E4VZKV.js} +1 -1
  107. package/dist/cdn/{MCV6DHJB.js → S5QUASO4.js} +1 -1
  108. package/dist/cdn/{KX6TYZ5K.js → SO6FENAY.js} +1 -1
  109. package/dist/cdn/{N5GSNHSN.js → TCPO7PEE.js} +1 -1
  110. package/dist/cdn/{WQ5ENRKJ.js → TM3HQUQN.js} +1 -1
  111. package/dist/cdn/{AHI2MTG5.js → TPQU557H.js} +1 -1
  112. package/dist/cdn/{IIJ5ZZTX.js → TWCRSSGO.js} +1 -1
  113. package/dist/cdn/{I3OUQRK4.js → U2J33BNN.js} +1 -1
  114. package/dist/cdn/UA54WQWK.js +358 -0
  115. package/dist/cdn/{DYEOE6I6.js → UCUB4NM7.js} +1 -1
  116. package/dist/cdn/{SPBY5FBC.js → USBGSJAW.js} +1 -1
  117. package/dist/cdn/{3REF4TDF.js → V6TC7O53.js} +1 -1
  118. package/dist/cdn/{676PIMSM.js → VBPF56MA.js} +1 -1
  119. package/dist/cdn/{ZFBW6LYC.js → VINK2SLZ.js} +1 -1
  120. package/dist/cdn/{FDX3I6JP.js → VMM72GMK.js} +1 -1
  121. package/dist/cdn/{I4GVAMDM.js → VXTI3UUR.js} +1 -1
  122. package/dist/cdn/WDSHKWCQ.js +2 -0
  123. package/dist/cdn/{GEEMZCDZ.js → WMEGJGIX.js} +1 -1
  124. package/dist/cdn/WMM6XQNF.js +2 -0
  125. package/dist/cdn/WPDKKXGG.js +7 -0
  126. package/dist/cdn/WRO2YCVL.js +2 -0
  127. package/dist/cdn/{P2RGP6L2.js → WSDTBHMX.js} +1 -1
  128. package/dist/cdn/{NWVVA2OS.js → X67AT4PH.js} +1 -1
  129. package/dist/cdn/{PA7UC7MJ.js → XGRQ65AI.js} +1 -1
  130. package/dist/cdn/{VUOKGQXZ.js → XIQUZ5FD.js} +1 -1
  131. package/dist/cdn/{CQE44Z6L.js → XT7FRIZE.js} +1 -1
  132. package/dist/cdn/{IJR4CI4G.js → YDYRX5L6.js} +1 -1
  133. package/dist/cdn/{TDKGF25P.js → YQ6MHPLB.js} +1 -1
  134. package/dist/cdn/{PIXT3QPN.js → YQI2AE2N.js} +1 -1
  135. package/dist/cdn/{V7HVK5MH.js → Z35NON2P.js} +1 -1
  136. package/dist/cdn/{PIJIETWD.js → Z7SEICRM.js} +1 -1
  137. package/dist/cdn/{DKY76MHW.js → ZDXFFQJI.js} +1 -1
  138. package/dist/cdn/{AIFW3W6B.js → ZJP5YPZW.js} +1 -1
  139. package/dist/cdn/ZRHDQGYH.js +2 -0
  140. package/dist/cdn/index.js +1 -1
  141. package/dist/chunks/runtime.js +1 -1
  142. package/dist/components/layer-table/customElement.js +121 -81
  143. package/dist/components/map-card/customElement.js +29 -24
  144. package/dist/docs/api.json +1 -1
  145. package/dist/docs/docs.json +1 -1
  146. package/dist/docs/web-types.json +1 -1
  147. package/dist/solutions-components_commit.txt +4 -4
  148. package/package.json +1 -1
  149. package/dist/cdn/25QMR32G.js +0 -2
  150. package/dist/cdn/3WOIIFS2.js +0 -2
  151. package/dist/cdn/BL4VPKUH.js +0 -2
  152. package/dist/cdn/CJ3EZE7U.js +0 -2
  153. package/dist/cdn/CYMX2JCD.js +0 -2
  154. package/dist/cdn/DF5KXARH.js +0 -2
  155. package/dist/cdn/E6L2N2MO.js +0 -2
  156. package/dist/cdn/EKB54JZO.js +0 -2
  157. package/dist/cdn/IADXB53D.js +0 -2
  158. package/dist/cdn/PGR3XQ7V.js +0 -2
  159. package/dist/cdn/U65LFJEF.js +0 -2
  160. package/dist/cdn/WHUO5NPJ.js +0 -7
  161. package/dist/cdn/WTSL6A4A.js +0 -2
  162. package/dist/cdn/XEXP4MZX.js +0 -351
  163. package/dist/cdn/XXIEONFX.js +0 -2
  164. package/dist/cdn/YJQ6BJTX.js +0 -2
  165. package/dist/cdn/YVWFYZTI.js +0 -4
@@ -0,0 +1,7 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import d from"./KGUELU4O.js";import{c as R}from"./TCUNTTNI.js";import c from"./QZ2ZMWIH.js";import a from"./CS5N3DOL.js";import{f as k}from"./CMCDRXVO.js";import{a as N}from"./YUWXPLTE.js";import{a as F}from"./BOTOPHKQ.js";import{b as E}from"./CTCWANBA.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{G as L,H,J as D,h as I,i as b,u as $}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([_,B,V,,{a:p},v])=>{var M=new Map([["HH",[1,0,3,2,null]],["LH",[3,2,1,0,4,null]],["LL",[2,3,0,1,null]]]),G=new Map([["HH",[2,1,0,5,4,3,8,7,6]],["LH",[8,7,6,5,4,3,2,1,0]],["LL",[6,7,8,3,void 0,void 0,0,1,2]]]),J=new Map([["HH",[3,2,1,0,7,6,5,4,11,10,9,8,15,14,13,12]],["LH",[15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0]],["LL",[12,13,14,15,8,9,10,11,4,5,6,7,0,1,2,3]]]);function K(c,e){return e===null?M.get("HH")[c]:M.get(e)?.[c]??null}function Q(c,e){return e===null?c:G.get(e)?.[c]??c}function z(c,e){return e===null?z(c,"HH"):J.get(e)?.[c]??null}var U=I`@layer{instant-apps-interactive-legend-relationship{display:block}instant-apps-interactive-legend-relationship .instant-apps-interactive-legend-relationship__instructional-text{display:inline-block;width:100%;text-align:center;margin-bottom:10px;background-color:#d2e9f9}.calcite-mode-dark instant-apps-interactive-legend-relationship .instant-apps-interactive-legend-relationship__instructional-text{background-color:var(--calcite-color-brand);color:#151515}}`,S="svg g:first-of-type",W="svg g:last-of-type",f="esri-interactive-legend--selected-cell",j="esri-interactive-legend--instructional-text",O=2,q=3,X=4,Y=Object.freeze({0:"L",1:"H"}),Z=Object.freeze({0:"L",1:"M",2:"H"}),ee=Object.freeze({0:"L",1:"M1",2:"M2",3:"H"}),te={instructionalText:"instant-apps-interactive-legend-relationship__instructional-text"},x=class extends H{constructor(){super(),this._messages=F({name:"instant-apps-interactive-legend"}),this.cellNodeCounter=0,this.listenOn(window,"showAllSelected",this.showAllSelectedEmitted)}static{this.properties={filterMode:0,activeLayerInfo:0,legendElement:0}}static{this.styles=U}static{this.shadowRootOptions=$}get shouldApplyCustomFunctionality(){return!!(this.relationshipRamp&&this.activeLayerInfo&&this.legendElement&&p.data)}showAllSelectedEmitted(){let e=p.data?.[this.activeLayerInfo?.layer?.id],t=!e||e.queryExpressions.length===0,i=this.relationshipRamp.querySelector(S);if(!i)return;let s=Array.from(i.children);t&&s?.forEach(a=>{a.removeAttribute("stroke"),a.removeAttribute("stroke-width"),a.removeAttribute("stroke-opacity"),a.setAttribute("aria-pressed","false"),a.classList.remove(f)})}applyRelationshipRampSvgAriaAttributes(){if(this.shouldApplyCustomFunctionality){let e=setInterval(()=>{let t=this.relationshipRamp.querySelector("svg");t&&(clearInterval(e),t.setAttribute("role","group"),t.setAttribute("aria-labelledby",j),t.removeAttribute("focusable"));let i=this.relationshipRamp.querySelector(W);i&&(clearInterval(e),i.setAttribute("aria-hidden","true"))},10)}}applyRelationshipRampInteractivity(){if(this.shouldApplyCustomFunctionality){let e=setInterval(()=>{let t=this.activeLayerInfo?.layer?.id,i=t?p.data?.[t]:null,s=this.relationshipRamp.querySelector(S);if(s&&i){clearInterval(e);let a=s.children;this.setupRelationshipDrawingStyle(a)}},10)}}setupRelationshipDrawingStyle(e){let t=Array.from(e);if(!t.length)return;let i=(this.activeLayerInfo?.layer?.renderer).uniqueValueInfos;if(Array.isArray(i))for(let a of i){let n=i.indexOf(a),l=t[n];this.setCellAttributes(l,n),l.classList.add("esri-interactive-legend__svg-rect-element")}let s=this.reorderCellNodes(t);this.attachFeatureIndexes(s),this.applyEventHandlers()}setCellAttributes(e,t){let i=this.activeLayerInfo.layer.renderer.uniqueValueInfos,s=this.generateIndexPattern(t);if(Array.isArray(i)&&i[s]){let a=e.classList.contains(f)?"true":"false",n=i[s]?.label||"",l=i[s]?.symbol?.color?.toHex?.()||"";e.setAttribute("data-color",l),e.setAttribute("data-cell-index",`${s}`),e.setAttribute("tabindex","0"),e.setAttribute("aria-pressed",a),e.setAttribute("aria-label",n),e.setAttribute("role","button")}}generateIndexPattern(e){let{focus:t,numClasses:i}=this.legendElement;return t==="HL"?e:i===2?K(e,t):i===3?Q(e,t):i===4?z(e,t):null}reorderCellNodes(e){let t=[];for(;this.cellNodeCounter<=e.length-1;)e.map(i=>{Number.parseInt(i.getAttribute("data-cell-index"))===this.cellNodeCounter&&t.push(i)}),this.cellNodeCounter++;return this.cellNodeCounter=0,t}attachFeatureIndexes(e){let{focus:t,numClasses:i}=this.legendElement;t==="HH"||t===null?this.relationshipFocusIsHighHigh(e,i):t==="LL"?this.relationshipFocusIsLowLow(e,i):t==="LH"?this.relationshipFocusIsLowHigh(e,i):t==="HL"&&this.relationshipFocusIsHighLow(e,i),this.cellNodeCounter=0}relationshipFocusIsHighHigh(e,t){for(let i=t-1;i>=0;i--)for(let s=t-1;s>=0;s--)this.setDataAttributes(e,i,s,t),this.cellNodeCounter++}relationshipFocusIsLowLow(e,t){for(let i=0;i<t;i++)for(let s=0;s<t;s++)this.setDataAttributes(e,i,s,t),this.cellNodeCounter++}relationshipFocusIsLowHigh(e,t){for(let i=0;i<t;i++)for(let s=t-1;s>=0;s--)this.setDataAttributes(e,i,s,t),this.cellNodeCounter++}relationshipFocusIsHighLow(e,t){for(let i=t-1;i>=0;i--)for(let s=0;s<t;s++)this.setDataAttributes(e,s,i,t),this.cellNodeCounter++}setDataAttributes(e,t,i,s){let a=e[this.cellNodeCounter];s===O?this.twoClassAttributes(a,t,i):s===q?this.threeClassAttributes(a,t,i):this.fourClassAttributes(a,t,i)}twoClassAttributes(e,t,i){let{legendElement:s}=this;this.cellNodeCounter===0||this.cellNodeCounter===3?s.focus==="HL"?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):s.focus==="HL"?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i)}threeClassAttributes(e,t,i){let{legendElement:s}=this;this.cellNodeCounter===1||this.cellNodeCounter===3||this.cellNodeCounter===5||this.cellNodeCounter===7?s.focus==="HL"?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):s.focus!=="HL"?this.setDataFeatureIndexes(e,t,i):this.swapDataFeatureIndexes(e,t,i)}fourClassAttributes(e,t,i){let{legendElement:s}=this,{focus:a}=s;this.cellNodeCounter>0&&this.cellNodeCounter<=14?a==="HL"?this.swapDataFeatureIndexes(e,t,i):this.setDataFeatureIndexes(e,t,i):a!=="HL"?this.setDataFeatureIndexes(e,t,i):this.swapDataFeatureIndexes(e,t,i)}setDataFeatureIndexes(e,t,i){e.setAttribute("data-feature-i",`${t}`),e.setAttribute("data-feature-j",`${i}`),this.setDataCellFocusValue(e,t,i)}swapDataFeatureIndexes(e,t,i){e.setAttribute("data-feature-i",`${i}`),e.setAttribute("data-feature-j",`${t}`),this.setDataCellFocusValue(e,i,t)}getDataCellValue(e,t,i){let s=i[e],a=i[t];return s&&a?`${s}${a}`:""}getDataCellMap(e){switch(e){case O:return Y;case q:return Z;case X:return ee;default:throw new Error("unrecognized numClasses")}}setDataCellFocusValue(e,t,i){let s=this.legendElement.numClasses,a=this.getDataCellMap(s),n=this.getDataCellValue(t,i,a);n?e.setAttribute("data-cell-focus",n):e.removeAttribute("data-cell-focus")}async onCellClick(e,t){let{i,j:s,focus:a}=t;await this.handleFilter(i,s,a),this.handleSelectedElement(e)}applyEventHandlers(){let e=this.relationshipRamp.querySelectorAll("svg rect");Array.from(e).forEach(t=>{let i=t.getAttribute("data-feature-i"),s=t.getAttribute("data-feature-j"),a=t.getAttribute("data-cell-focus");t.onclick=async()=>{await this.onCellClick(t,{i,j:s,focus:a})},t.onkeydown=async n=>{n.key==="Enter"&&await this.onCellClick(t,{i,j:s,focus:a})},t.onkeyup=async n=>{n.key===" "&&await this.onCellClick(t,{i,j:s,focus:a})}})}async handleFilter(e,t,i){let s=p?.data?.[this.activeLayerInfo?.layer?.id];if(!s)return;let a=this.activeLayerInfo.layer?.renderer?.authoringInfo,n=a?.field1,l=a?.field2,{queryExpressions:o,fLayerView:u}=s;if(k(this.legendElement)&&a&&n&&l){let r=this.generateExpressionParams(n,l,a,e,t,i),d=this.generateExpressionForRelationship(r);o.length===0?o[0]=d:o.includes(d)?o.splice(o.indexOf(d),1):o.push(d);let h=o.join(" OR "),m=u?.filter?.timeExtent??null;if(R(this.filterMode?.type))u.filter=new V({where:h,timeExtent:u?.filter?.timeExtent??null});else if(this.filterMode?.effect){let{includedEffect:A,excludedEffect:y}=this.filterMode.effect,C=await v(y,u,"excludedEffect"),g=await v(A,u,"includedEffect");u.featureEffect=new B({filter:new V({where:h,timeExtent:m}),includedEffect:g,excludedEffect:C})}}}generateExpressionParams(e,t,i,s,a,n){let l=[],o=e.field,u=t.field,r=e.classBreakInfos,d=t.classBreakInfos,h=Object.hasOwn(i.field1,"normalizationField")?i?.field1?.normalizationField:null,m=Object.hasOwn(i.field2,"normalizationField")?i?.field2?.normalizationField:null;r.forEach((C,g)=>{let w=[];d.forEach((ie,T)=>{let P=[r[g],d[T]];w.push(P)}),l.push(w)});let A=h?`(${o}/${h})`:o,y=m?`(${u}/${m})`:u;return{data:l,i:s,j:a,field1:A,field2:y,focus:n}}generateExpressionForRelationship(e){let{focus:t,field1:i,field2:s,data:a,i:n,j:l}=e,o=Number.parseInt(n),u=Number.parseInt(l),r=a[o][u];return t==="LL"?`${i} >= ${r[0].minValue} AND ${i} <= ${r[0].maxValue} AND ${s} >= ${r[1].minValue} AND ${s} <= ${r[1].maxValue}`:t==="LM"||t==="LM1"||t==="LM2"||t==="LH"?`${i} >= ${r[0].minValue} AND ${i} <= ${r[0].maxValue} AND ${s} > ${r[1].minValue} AND ${s} <= ${r[1].maxValue}`:t==="ML"||t==="M1L"||t==="M2L"||t==="HL"?`${i} > ${r[0].minValue} AND ${i} <= ${r[0].maxValue} AND ${s} >= ${r[1].minValue} AND ${s} <= ${r[1].maxValue}`:`${i} > ${r[0].minValue} AND ${i} <= ${r[0].maxValue} AND ${s} > ${r[1].minValue} AND ${s} <= ${r[1].maxValue}`}handleSelectedElement(e){e.classList.contains(f)?(e.removeAttribute("stroke"),e.removeAttribute("stroke-width"),e.removeAttribute("stroke-opacity"),e.setAttribute("aria-pressed","false"),e.classList.remove(f)):(e.classList.add(f),e.setAttribute("stroke","black"),e.setAttribute("stroke-width","3px"),e.setAttribute("stroke-opacity","1"),e.setAttribute("aria-pressed","true"))}addCSS(e){if(e&&!e?.querySelector("relationshipStyles")){let t=document.createElement("style");t.id="relationshipStyles",t.innerHTML=`
3
+ rect:hover {
4
+ cursor: pointer;
5
+ opacity: 0.8;
6
+ }
7
+ `,e?.appendChild(t)}}setRelationshipRampRef(e){e&&(this.relationshipRamp=e,this.applyRelationshipRampInteractivity(),this.applyRelationshipRampSvgAriaAttributes())}render(){return b`<div ${L(this.addCSS)}><span id=${j} class=${D(te.instructionalText)}>${this._messages?.relationship?.instructionalText}</span>${this.renderRelationshipRamp()}</div>`}renderRelationshipRamp(){let e=(this.activeLayerInfo?.layer).renderer,t=_.renderRelationshipRampPreviewHTML(e)?.outerHTML;return N("relationship-ramp-diamond",b`<div .innerHTML=${t??""} ${L(this.setRelationshipRampRef)}></div>`)}};E("instant-apps-interactive-legend-relationship",x);return x},"symbols/support/symbolUtils","layers/support/FeatureEffect","layers/support/FeatureFilter",a,c,d)
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import f from"./2Q4QB7TO.js";import e from"./D53I5PX3.js";import{g as $}from"./GMBKLZ7L.js";import c from"./QZ2ZMWIH.js";import a from"./CS5N3DOL.js";import{b as x,e as I}from"./6DJOSQ7E.js";import"./CMCDRXVO.js";import{a as u}from"./YUWXPLTE.js";import{a as y}from"./BOTOPHKQ.js";import{b as _}from"./CTCWANBA.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{H as b,J as d,h as v,i as r}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([F,,{a:n,b:p,c:C},{c:m,e:T},{a:f,b:L,c:w}])=>{var z=v`:host{display:flex;align-items:center}.instant-apps-interactive-legend__total-feature-count{font-weight:var(--calcite-font-weight-medium);font-size:var(--calcite-font-size-0)}.instant-apps-interactive-legend__info-count-text{font-size:var(--instant-apps-interactive-legend-info-font-size);color:var(--instant-apps-interactive-legend-secondary-color);white-space:nowrap}.calcite-mode-dark.instant-apps-interactive-legend__info-count-text.instant-apps-interactive-legend__info-count-text--selected{color:var(--calcite-color-text-inverse)}.instant-apps-interactive-legend-count--compact .instant-apps-interactive-legend__total-feature-count{font-size:.75rem}:host:dir(rtl){margin-left:0;margin-right:auto}`,c={countText:" instant-apps-interactive-legend__info-count-text",countTextSelected:" instant-apps-interactive-legend__info-count-text--selected",totalFeatureCount:"instant-apps-interactive-legend__total-feature-count",compact:"instant-apps-interactive-legend-count--compact"},g=class extends b{constructor(){super(...arguments),this._messages=y({name:"instant-apps-interactive-legend"}),this.showTotal=!1,this.categoryId=""}static{this.properties={showTotal:5,legendvm:0,activeLayerInfo:0,categoryId:1,infoIndex:9,selected:5,legendElement:0}}static{this.styles=z}load(){if(this.attributeObserver=new MutationObserver(()=>{this.requestUpdate()}),this.attributeObserver.observe(this.el,{attributes:!0}),!this.dataChangeHandle){let t=p.onChange("data",()=>this.requestUpdate());this.isRemovableHandle(t)&&(this.dataChangeHandle={remove:t.remove.bind(t)})}}disconnectedCallback(){super.disconnectedCallback(),this.attributeObserver?.disconnect(),this.attributeObserver=void 0,this.dataChangeHandle?.remove(),this.dataChangeHandle=void 0}isRemovableHandle(t){return!!t&&typeof t.remove=="function"}formatResolvedNumber(t){return f(t)?F.formatNumber(t):""}getCount(){let{categoryId:t}=this,a=this.activeLayerInfo.layer.id,o=n.data[a]?.categories?.size;if((!n.data||!a||!t)&&!o)return"";let s=n.data[a];if(!s)return;let{categories:l}=s,e=l.get(t),i;return e?.nestedInfos?i=T(e,this.infoIndex):i=e,this.formatResolvedNumber(i.count)}getTotalFeatureCount(){let t=this.activeLayerInfo.layer.id;if(!n.data||!t)return"";let a=n.data[t];if(!a)return;let{categories:o}=a,s=m(o),l=x(o),e;if(l)e=w(s);else if(I(this.activeLayerInfo)){let i=C(this.activeLayerInfo.layer),h=m(i.categories)[1];e=f(h.count)?h.count:null}else e=L(s);return this.formatResolvedNumber(e)}render(){let t=p.get("compact")?c.compact:"";return u("int-legend-count",r`<div class=${d(t)}>${this.showTotal?r`<span class=${d(c.totalFeatureCount)}>${this._messages?.totalFeatureCount}: ${this.getTotalFeatureCount()}</span>`:u("element-info-count",r`<span class=${`${c.countText} ${$(this.el)}${this.selected?c.countTextSelected:""}`}>${this.getCount()}</span>`)}</div>`)}};_("instant-apps-interactive-legend-count",g);return g},"intl",a,c,e,f)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{b as o}from"./XXIEONFX.js";import{F as l,G as p,H as m,h as r,i}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([d])=>{var b=r`.display-block{display:block}`,e=class extends m{constructor(){super(...arguments),this.basemapGalleryRef=l(),this._basemapGalleryReady=()=>{this._updateBasemapSource()}}static{this.properties={basemapGalleryRef:0,mapView:0,basemapConfig:0}}static{this.styles=b}willUpdate(a){a.has("basemapConfig")&&this.basemapConfigWatchHandler()}async basemapConfigWatchHandler(){await this._updateBasemapSource()}render(){return this.mapView&&i`<arcgis-basemap-gallery auto-destroy-disabled .view=${this.mapView} @arcgisReady=${this._basemapGalleryReady} ${p(this.basemapGalleryRef)}></arcgis-basemap-gallery>`||""}disconnectedCallback(){super.disconnectedCallback(),this.basemapGalleryRef.value&&this.basemapGalleryRef.value.destroy()}async _updateBasemapSource(){let a=this.basemapGalleryRef.value;if(!a)return;let c=n=>{let t=n.portalItem?.id;return!t||!this.basemapConfig?!0:!this.basemapConfig.basemapIdsToFilter.includes(t)},s=new d({query:this.basemapConfig?.basemapGroupId?`id:${this.basemapConfig.basemapGroupId}`:null,filterFunction:c});await s.refresh(),a.source=s}};o("map-basemap-gallery",e);return e},"widgets/BasemapGallery/support/PortalBasemapsSource")
2
+ import{b as o}from"./ZRHDQGYH.js";import{F as l,G as p,H as m,h as r,i}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([d])=>{var b=r`.display-block{display:block}`,e=class extends m{constructor(){super(...arguments),this.basemapGalleryRef=l(),this._basemapGalleryReady=()=>{this._updateBasemapSource()}}static{this.properties={basemapGalleryRef:0,mapView:0,basemapConfig:0}}static{this.styles=b}willUpdate(a){a.has("basemapConfig")&&this.basemapConfigWatchHandler()}async basemapConfigWatchHandler(){await this._updateBasemapSource()}render(){return this.mapView&&i`<arcgis-basemap-gallery auto-destroy-disabled .view=${this.mapView} @arcgisReady=${this._basemapGalleryReady} ${p(this.basemapGalleryRef)}></arcgis-basemap-gallery>`||""}disconnectedCallback(){super.disconnectedCallback(),this.basemapGalleryRef.value&&this.basemapGalleryRef.value.destroy()}async _updateBasemapSource(){let a=this.basemapGalleryRef.value;if(!a)return;let c=n=>{let t=n.portalItem?.id;return!t||!this.basemapConfig?!0:!this.basemapConfig.basemapIdsToFilter.includes(t)},s=new d({query:this.basemapConfig?.basemapGroupId?`id:${this.basemapConfig.basemapGroupId}`:null,filterFunction:c});await s.refresh(),a.source=s}};o("map-basemap-gallery",e);return e},"widgets/BasemapGallery/support/PortalBasemapsSource")
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import h from"./PGR3XQ7V.js";import g from"./M6YYTOSO.js";import"./4R2OJQVH.js";import"./VVZAS55G.js";import"./ZTVNKDEK.js";import e from"./DLAKQTNZ.js";import d from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./US5FON7D.js";import c from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as _}from"./3EZYKC6C.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{b as y}from"./XXIEONFX.js";import{G as b,H as u,h as m,i as f}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([])=>{var v=m`.height-51{height:51px}.width-51{width:51px}`,p=class extends u{constructor(){super(),this._translations=_({name:"field-selection",blocking:!0}),this._fieldSortOrder="default",this._selectedFields=[],this._fieldVisibilityPopoverClickHandler=i=>{this._fieldVisibilityPopoverNode?this._isInNode(i.target,"arcgis-field-pick-list")||(document.body.removeChild(this._fieldVisibilityPopoverNode),this._fieldVisibilityPopoverNode=void 0,document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler)):document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler)},this.listenOn(window,"columnReorder",this.handleColumnReorder,{capture:!0})}static{this.properties={configExtraFields:1,layer:0,mapView:0,table:0,tableRef:0,_translations:16}}static{this.styles=v}render(){return f`<calcite-action alignment=center class="height-51 width-51" id=solutions-field-selection .text=${this._translations.fieldVisibility} scale=m @click=${()=>this._handleFieldVisibilityClick()} @mouseover=${()=>this._addTableTooltip(this._fieldVisibilityActionNode,this._translations.fieldVisibility)} @mouseout=${()=>this._removeTableTooltip()} @focus=${()=>this._addTableTooltip(this._fieldVisibilityActionNode,this._translations.fieldVisibility)} ${b(i=>this._fieldVisibilityActionNode=i)}><calcite-icon aria-hidden=true scale=s icon=gear></calcite-icon></calcite-action>`}handleColumnReorder(){this._fieldSortOrder="default",this._fieldVisibilityPopoverNode&&(this.removeFieldsPickList(),this._handleFieldVisibilityClick())}_handleFieldVisibilityClick(){if(this._fieldVisibilityPopoverNode)return;let i=this.table?.tableTemplate?.columnTemplates;if(this.layer&&this.mapView&&i&&this._fieldVisibilityActionNode){document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler);let t=this.table.fieldColumns.map(l=>({alias:l.field.alias,description:l.field.description,name:l.field.name,type:l.field.type}));if(this._hasAttachmentsEnabled(this.layer)){let l="Attachments";if(this._shouldShowField(l.toUpperCase(),!1)){if(!i.some(s=>s.fieldName.toUpperCase()===l.toUpperCase())){let s={fieldName:l,type:"attachment",visible:!0};i.push(s)}t.push({name:l,alias:"Photos and files",type:"none",description:l})}}if(this.table.relatedRecordsEnabled&&this.layer.relationships&&this.layer.relationships.length>0){let l=this.layer.parent;this.layer.relationships.forEach((s,h)=>{let o,a=this._shouldShowField(s.name||"",!0);if(!a){let n=[...l?.layers||[],...l?.tables||[]].find(c=>c.layerId===s.relatedTableId),d=n?n.title:void 0;d&&this._shouldShowField(d,!0)&&(s.name=d,a=!0)}if(!a){let n=s.keyField||`related_${h}`;this._shouldShowField(n,!0)&&(s.name=s.name||n,a=!0)}if(!i.some(n=>n.fieldName.toLowerCase()===s.name?.toLowerCase()?(o=s.name,!0):!1))if(s.name){o=s.name;let n={fieldName:o,type:"relationship",visible:!0};a=this._shouldShowField(o,!0),i.push(n)}else{let n=[...l?.layers||[],...l?.tables],d;if(n.some(c=>c.layerId===s.relatedTableId?(d=c,!0):!1),d){o=d.title,s.name=o;let c={fieldName:o,type:"relationship",visible:!0};a=this._shouldShowField(o,!0),i.push(c)}}o&&a&&t.push({name:o,alias:`Related ${o}`,type:"none",description:`related:${o}`})})}let e=this._fieldVisibilityPopoverNode?this._fieldVisibilityPopoverNode:document.createElement("arcgis-field-pick-list");e.layer=this.layer,e.fields=t,e.showFieldInfo=!0,e.showFieldName=!0,e.showDescription=!1,e.showSelectionAll=!0,e.hideCancel=!0,e.hideSort=!1,e.showFilterLength=5,e.multiple=!0,e.heading=this._translations.fieldVisibility,e.okBtnText=this._translations.doneWithFieldChanges,e.filterPlaceholderText=this._translations.filterFields,e.sortBy=this._fieldSortOrder??"default";let r=this.table?.visibleColumns.map(l=>l.fieldName.startsWith("EsriFeatureTableRelationshipColumn")||l.fieldName.startsWith("EsriFeatureTableAttachmentsColumn")?l.effectiveLabel:l.fieldName);e.selectedFields=i.reduce((l,s)=>((r?r.indexOf(s.fieldName)>-1:s.visible)&&l.push(s.fieldName),l),[]),this._selectedFields=e.selectedFields,e.style.minHeight="340px",e.popoverProps={refElement:this._fieldVisibilityActionNode,popoverWidth:300,placement:"bottom-end",offsetDistance:-20,triggerDisabled:!1,autoClose:!1},e.addEventListener("arcgisChange",l=>{l.stopPropagation();let s=l.detail.selectedFields,h=this._getDifference(s,this._selectedFields),o=this._getDifference(this._selectedFields,s);h.concat(o).forEach(a=>{let n=this.layer?.relationships?.map(d=>d.name)||[];if(a==="Attachments"){let d=this.table.columns.find(c=>"onShowAttachments"in c);d.hidden=o.indexOf(a)>-1}else n.indexOf(a)>-1?this.table.columns.filter(d=>"relationshipId"in d).forEach(d=>{o.indexOf(a)>-1,a==d.effectiveLabel&&(d.hidden=o.indexOf(a)>-1)}):this.table.toggleColumnVisibility(a)}),this._selectedFields=s,this._updateTable(this.table.tableTemplate)}),e.addEventListener("arcgisSortByChange",l=>{l.stopPropagation(),this._fieldSortOrder=l.detail,this._sortFields(l.detail)}),e.addEventListener("arcgisClose",()=>{this._closePopovers(),setTimeout(()=>this._fieldVisibilityActionNode.setFocus(),200)}),document.body.appendChild(e),this._fieldVisibilityPopoverNode=e,setTimeout(()=>document.addEventListener("click",this._fieldVisibilityPopoverClickHandler),200)}}_shouldShowField(i,t){return(this.configExtraFields||[]).some(e=>t?e.replace("related:","").toUpperCase()===i.toUpperCase():e.toUpperCase()===i.toUpperCase())}removeFieldsPickList(){this._fieldVisibilityPopoverNode&&(document.body.removeChild(this._fieldVisibilityPopoverNode),this._fieldVisibilityPopoverNode=void 0)}_sortFields(i){let t=this.table.tableTemplate.columnTemplates,e=this._getSortOrder(i),r=t.filter(s=>s.type!=="attachment"&&s.type!=="relationship").sort((s,h)=>{let o=e.indexOf(s.fieldName),a=e.indexOf(h.fieldName);return o===-1&&a!==-1?1:o!==-1&&a===-1?-1:o===-1&&a===-1?0:o-a}),l=t.filter(s=>s.type==="attachment"||s.type==="relationship");this.tableRef.setColumnOrder([...r,...l]),this._updateTable(this.table.tableTemplate)}_getSortOrder(i){let t=[...this.layer.fields];return i==="display"?t.sort((e,r)=>e.alias.localeCompare(r.alias)):i==="field"?t.sort((e,r)=>e.name.localeCompare(r.name)):i==="type"&&t.sort((e,r)=>e.type.localeCompare(r.type)),t.map(e=>e.name)}_getDifference(i,t){return i.filter(e=>!t.includes(e))}_updateTable(i){this.table.tableTemplate=i,this._isStandardView()&&this._syncAttributeTableTemplate()}async _syncAttributeTableTemplate(){let i=this.table.layer;if(i.attributeTableTemplate){let{_modules:t}=this,e=i.attributeTableTemplate.clone();t?.attributeTableTemplateUtils.syncAttributeTableTemplate(this.table,e),JSON.stringify(e)!==JSON.stringify(i.attributeTableTemplate)&&(i.attributeTableTemplate=e)}if(i.attributeTableTemplate?.orderByFields?.length>1){let t=i.attributeTableTemplate.clone(),e=this.table.activeSortOrders[0];t.orderByFields=[{field:e.fieldName,order:e.direction}],i.attributeTableTemplate=t,this._syncColumnDirectionsWithOrderByFields()}}_syncColumnDirectionsWithOrderByFields(){let i=this.table.activeSortOrders[0]?.fieldName;this.table.columns.forEach(t=>{"fieldName"in t&&t.fieldName!==i&&(t.direction=void 0)}),this.table.tableTemplate?.columnTemplates.forEach(t=>{"fieldName"in t&&t.fieldName!==i&&(t.direction=void 0)})}_isStandardView(){return!this.table.relatedTable&&!this.table.attachmentsViewOptions.objectId}_closePopovers(){document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler),this._fieldVisibilityPopoverNode&&(document.body.removeChild(this._fieldVisibilityPopoverNode),this._fieldVisibilityPopoverNode=void 0)}_addTableTooltip(i,t){let e=document.createElement("calcite-tooltip");e.className="table-tooltip",e.referenceElement=i,e.placement="trailing-start",e.open=!0;let r=document.createElement("div");r.className="tooltip",r.innerHTML=t,e.append(r),document.body.append(e)}_removeTableTooltip(){document.querySelectorAll(".table-tooltip").forEach(i=>i.parentNode?.removeChild(i))}_isInNode(i,t){for(;i;){if(i.nodeName===t.toUpperCase())return!0;i=i.parentElement}return!1}_hasAttachmentsEnabled(i){if(!i?.capabilities)return!1;let{capabilities:{data:{supportsAttachment:t},operations:{supportsQueryAttachments:e}}}=i;return t&&e}};y("field-selection",p);return p},a,c,d,e,g,h)
2
+ import h from"./7YPSCUDA.js";import g from"./5C7DC2SL.js";import"./NFLDV2BR.js";import"./VVZAS55G.js";import"./CTCWANBA.js";import e from"./NJQV2ASV.js";import d from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./US5FON7D.js";import c from"./2C4DK6YC.js";import a from"./WV7QX3ED.js";import{a as _}from"./RPYS2BGE.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{b as y}from"./ZRHDQGYH.js";import{G as b,H as u,h as m,i as f}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([])=>{var v=m`.height-51{height:51px}.width-51{width:51px}`,p=class extends u{constructor(){super(),this._translations=_({name:"field-selection",blocking:!0}),this._fieldSortOrder="default",this._selectedFields=[],this._fieldVisibilityPopoverClickHandler=i=>{this._fieldVisibilityPopoverNode?this._isInNode(i.target,"arcgis-field-pick-list")||(document.body.removeChild(this._fieldVisibilityPopoverNode),this._fieldVisibilityPopoverNode=void 0,document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler)):document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler)},this.listenOn(window,"columnReorder",this.handleColumnReorder,{capture:!0})}static{this.properties={configExtraFields:1,layer:0,mapView:0,table:0,tableRef:0,_translations:16}}static{this.styles=v}render(){return f`<calcite-action alignment=center class="height-51 width-51" id=solutions-field-selection .text=${this._translations.fieldVisibility} scale=m @click=${()=>this._handleFieldVisibilityClick()} @mouseover=${()=>this._addTableTooltip(this._fieldVisibilityActionNode,this._translations.fieldVisibility)} @mouseout=${()=>this._removeTableTooltip()} @focus=${()=>this._addTableTooltip(this._fieldVisibilityActionNode,this._translations.fieldVisibility)} ${b(i=>this._fieldVisibilityActionNode=i)}><calcite-icon aria-hidden=true scale=s icon=gear></calcite-icon></calcite-action>`}handleColumnReorder(){this._fieldSortOrder="default",this._fieldVisibilityPopoverNode&&(this.removeFieldsPickList(),this._handleFieldVisibilityClick())}_handleFieldVisibilityClick(){if(this._fieldVisibilityPopoverNode)return;let i=this.table?.tableTemplate?.columnTemplates;if(this.layer&&this.mapView&&i&&this._fieldVisibilityActionNode){document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler);let t=this.table.fieldColumns.map(l=>({alias:l.field.alias,description:l.field.description,name:l.field.name,type:l.field.type}));if(this._hasAttachmentsEnabled(this.layer)){let l="Attachments";if(this._shouldShowField(l.toUpperCase(),!1)){if(!i.some(s=>s.fieldName.toUpperCase()===l.toUpperCase())){let s={fieldName:l,type:"attachment",visible:!0};i.push(s)}t.push({name:l,alias:"Photos and files",type:"none",description:l})}}if(this.table.relatedRecordsEnabled&&this.layer.relationships&&this.layer.relationships.length>0){let l=this.layer.parent;this.layer.relationships.forEach((s,h)=>{let o,a=this._shouldShowField(s.name||"",!0);if(!a){let n=[...l?.layers||[],...l?.tables||[]].find(c=>c.layerId===s.relatedTableId),d=n?n.title:void 0;d&&this._shouldShowField(d,!0)&&(s.name=d,a=!0)}if(!a){let n=s.keyField||`related_${h}`;this._shouldShowField(n,!0)&&(s.name=s.name||n,a=!0)}if(!i.some(n=>n.fieldName.toLowerCase()===s.name?.toLowerCase()?(o=s.name,!0):!1))if(s.name){o=s.name;let n={fieldName:o,type:"relationship",visible:!0};a=this._shouldShowField(o,!0),i.push(n)}else{let n=[...l?.layers||[],...l?.tables],d;if(n.some(c=>c.layerId===s.relatedTableId?(d=c,!0):!1),d){o=d.title,s.name=o;let c={fieldName:o,type:"relationship",visible:!0};a=this._shouldShowField(o,!0),i.push(c)}}o&&a&&t.push({name:o,alias:`Related ${o}`,type:"none",description:`related:${o}`})})}let e=this._fieldVisibilityPopoverNode?this._fieldVisibilityPopoverNode:document.createElement("arcgis-field-pick-list");e.layer=this.layer,e.fields=t,e.showFieldInfo=!0,e.showFieldName=!0,e.showDescription=!1,e.showSelectionAll=!0,e.hideCancel=!0,e.hideSort=!1,e.showFilterLength=5,e.multiple=!0,e.heading=this._translations.fieldVisibility,e.okBtnText=this._translations.doneWithFieldChanges,e.filterPlaceholderText=this._translations.filterFields,e.sortBy=this._fieldSortOrder??"default";let r=this.table?.visibleColumns.map(l=>l.fieldName.startsWith("EsriFeatureTableRelationshipColumn")||l.fieldName.startsWith("EsriFeatureTableAttachmentsColumn")?l.effectiveLabel:l.fieldName);e.selectedFields=i.reduce((l,s)=>((r?r.indexOf(s.fieldName)>-1:s.visible)&&l.push(s.fieldName),l),[]),this._selectedFields=e.selectedFields,e.style.minHeight="340px",e.popoverProps={refElement:this._fieldVisibilityActionNode,popoverWidth:300,placement:"bottom-end",offsetDistance:-20,triggerDisabled:!1,autoClose:!1},e.addEventListener("arcgisChange",l=>{l.stopPropagation();let s=l.detail.selectedFields,h=this._getDifference(s,this._selectedFields),o=this._getDifference(this._selectedFields,s);h.concat(o).forEach(a=>{let n=this.layer?.relationships?.map(d=>d.name)||[];if(a==="Attachments"){let d=this.table.columns.find(c=>"onShowAttachments"in c);d.hidden=o.indexOf(a)>-1}else n.indexOf(a)>-1?this.table.columns.filter(d=>"relationshipId"in d).forEach(d=>{o.indexOf(a)>-1,a==d.effectiveLabel&&(d.hidden=o.indexOf(a)>-1)}):this.table.toggleColumnVisibility(a)}),this._selectedFields=s,this._updateTable(this.table.tableTemplate)}),e.addEventListener("arcgisSortByChange",l=>{l.stopPropagation(),this._fieldSortOrder=l.detail,this._sortFields(l.detail)}),e.addEventListener("arcgisClose",()=>{this._closePopovers(),setTimeout(()=>this._fieldVisibilityActionNode.setFocus(),200)}),document.body.appendChild(e),this._fieldVisibilityPopoverNode=e,setTimeout(()=>document.addEventListener("click",this._fieldVisibilityPopoverClickHandler),200)}}_shouldShowField(i,t){return(this.configExtraFields||[]).some(e=>t?e.replace("related:","").toUpperCase()===i.toUpperCase():e.toUpperCase()===i.toUpperCase())}removeFieldsPickList(){this._fieldVisibilityPopoverNode&&(document.body.removeChild(this._fieldVisibilityPopoverNode),this._fieldVisibilityPopoverNode=void 0)}_sortFields(i){let t=this.table.tableTemplate.columnTemplates,e=this._getSortOrder(i),r=t.filter(s=>s.type!=="attachment"&&s.type!=="relationship").sort((s,h)=>{let o=e.indexOf(s.fieldName),a=e.indexOf(h.fieldName);return o===-1&&a!==-1?1:o!==-1&&a===-1?-1:o===-1&&a===-1?0:o-a}),l=t.filter(s=>s.type==="attachment"||s.type==="relationship");this.tableRef.setColumnOrder([...r,...l]),this._updateTable(this.table.tableTemplate)}_getSortOrder(i){let t=[...this.layer.fields];return i==="display"?t.sort((e,r)=>e.alias.localeCompare(r.alias)):i==="field"?t.sort((e,r)=>e.name.localeCompare(r.name)):i==="type"&&t.sort((e,r)=>e.type.localeCompare(r.type)),t.map(e=>e.name)}_getDifference(i,t){return i.filter(e=>!t.includes(e))}_updateTable(i){this.table.tableTemplate=i,this._isStandardView()&&this._syncAttributeTableTemplate()}async _syncAttributeTableTemplate(){let i=this.table.layer;if(i.attributeTableTemplate){let{_modules:t}=this,e=i.attributeTableTemplate.clone();t?.attributeTableTemplateUtils.syncAttributeTableTemplate(this.table,e),JSON.stringify(e)!==JSON.stringify(i.attributeTableTemplate)&&(i.attributeTableTemplate=e)}if(i.attributeTableTemplate?.orderByFields?.length>1){let t=i.attributeTableTemplate.clone(),e=this.table.activeSortOrders[0];t.orderByFields=[{field:e.fieldName,order:e.direction}],i.attributeTableTemplate=t,this._syncColumnDirectionsWithOrderByFields()}}_syncColumnDirectionsWithOrderByFields(){let i=this.table.activeSortOrders[0]?.fieldName;this.table.columns.forEach(t=>{"fieldName"in t&&t.fieldName!==i&&(t.direction=void 0)}),this.table.tableTemplate?.columnTemplates.forEach(t=>{"fieldName"in t&&t.fieldName!==i&&(t.direction=void 0)})}_isStandardView(){return!this.table.relatedTable&&!this.table.attachmentsViewOptions.objectId}_closePopovers(){document.removeEventListener("click",this._fieldVisibilityPopoverClickHandler),this._fieldVisibilityPopoverNode&&(document.body.removeChild(this._fieldVisibilityPopoverNode),this._fieldVisibilityPopoverNode=void 0)}_addTableTooltip(i,t){let e=document.createElement("calcite-tooltip");e.className="table-tooltip",e.referenceElement=i,e.placement="trailing-start",e.open=!0;let r=document.createElement("div");r.className="tooltip",r.innerHTML=t,e.append(r),document.body.append(e)}_removeTableTooltip(){document.querySelectorAll(".table-tooltip").forEach(i=>i.parentNode?.removeChild(i))}_isInNode(i,t){for(;i;){if(i.nodeName===t.toUpperCase())return!0;i=i.parentElement}return!1}_hasAttachmentsEnabled(i){if(!i?.capabilities)return!1;let{capabilities:{data:{supportsAttachment:t},operations:{supportsQueryAttachments:e}}}=i;return t&&e}};y("field-selection",p);return p},a,c,d,e,g,h)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import b from"./5T64N34W.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./3EZYKC6C.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"./XXIEONFX.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,a])=>{return a},a,b)
2
+ import b from"./BG7E5RJ7.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./RPYS2BGE.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"./ZRHDQGYH.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,a])=>{return a},a,b)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import c from"./PUFUUKRQ.js";import"./PPFEO3UH.js";import b from"./DLAKQTNZ.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./3EZYKC6C.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"./XXIEONFX.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,,a])=>{return a},a,b,c)
2
+ import c from"./DC4XE3RK.js";import"./PPFEO3UH.js";import b from"./NJQV2ASV.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./RPYS2BGE.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"./ZRHDQGYH.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,,a])=>{return a},a,b,c)
@@ -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"./OKJ6QAHM.js";import{b as I}from"./ZTVNKDEK.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"./BOTOPHKQ.js";import{b as I}from"./CTCWANBA.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 as R}from"./PPFEO3UH.js";import{a as F}from"./YUWXPLTE.js";import b from"./DLAKQTNZ.js";import{a as $,b as C}from"./2B4SGB3I.js";import{b as d}from"./RLSY4VUQ.js";import{a as S}from"./3EZYKC6C.js";import{b as w}from"./XXIEONFX.js";import{F as o,G as r,H as x,J as c,K as h,h as v,i as a,q as y}from"./T3EPRHTT.js";export default $arcgis.t(([{j:u,k:f,r:_}])=>{var O=v`.display-flex{display:flex}.border-override{border-top-width:var(--calcite-border-width-none);border-bottom-width:var(--calcite-border-width-none)}.header-override{--calcite-panel-header-content-space: 0px;--calcite-panel-header-background-color: var(--calcite-color-surface-3)}.panel-override{--calcite-panel-background-color: var(--calcite-color-surface-3);--calcite-panel-border-color: none}.label-override{--calcite-label-margin-bottom: 0px;font-weight:var(--calcite-font-weight-medium)}.header-button-padding{padding-top:var(--calcite-spacing-sm);padding-bottom:var(--calcite-spacing-sm);padding-inline-start:var(--calcite-spacing-lg);padding-inline-end:var(--calcite-spacing-lg)}.padding-start{padding-inline-start:var(--calcite-spacing-sm)}.align-items-center{align-items:center}.justify-content-end{justify-content:end}.filter-width-350{--calcite-shell-panel-width: 350px}.z-index-1{z-index:1}.z-index-2{z-index:2}h1{font-weight:unset;margin:0;padding:0}@container (max-width: 800px){.filter{display:none}}.mock-fab{--calcite-fab-shadow-internal: 0 6px 20px -4px rgba(0, 0, 0, .1), 0 4px 12px -2px rgba(0, 0, 0, .08);box-shadow:var(--calcite-fab-shadow, var(--calcite-fab-shadow-internal));--calcite-button-background-color: var(--calcite-fab-background-color);--calcite-button-border-color: var(--calcite-fab-border-color);--calcite-button-text-color: var(--calcite-fab-text-color);--calcite-button-loader-color: var(--calcite-fab-loader-color)}.background-override{--calcite-shell-panel-background-color: var(--calcite-color-surface-4);--calcite-panel-background-color: var(--calcite-color-surface-4)}.chips-container{display:flex;flex-wrap:wrap;align-items:center;gap:var(--calcite-spacing-xs);flex:1;padding-block:var(--calcite-spacing-xs)}.header-content-wrapper{min-height:50px;flex-wrap:wrap;gap:var(--calcite-spacing-xs);padding-inline-start:var(--calcite-spacing-lg);padding-top:8px}.position-relative{position:relative;height:100%;overflow:hidden}.height-100{height:100%}.border-none{border:none}.height-50{height:50px}.chip-group{max-width:100%}.chip-group{display:flex;flex-wrap:wrap}.responsive-chip{max-width:100%}.responsive-chip .chip-text{display:inline-flex;align-items:center;line-height:1;max-width:100%}@container (max-width: 800px){.responsive-chip{max-width:100%;min-width:0}.responsive-chip .chip-text{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.mobile-stack{flex-direction:column;align-items:flex-start;padding-top:var(--calcite-spacing-md)}`,g=class extends x{constructor(){super(),this.solutionsCount=0,this._isLoading=!0,this._filterOpen=!0,this._filters={categories:[],searchTerm:""},this._isMobile=!1,this._translations=S({name:"solutions-all-shell",blocking:!0}),this._allSolutionsPanelRef=o(),this._solutionsFilterPanelRef=o(),this._mainPanelRef=o(),this._panelFixed=!1,this._configContextConsumer=d({context:C,subscribe:!0}),this._isMobileContextConsumer=d({context:$,subscribe:!0,callback:e=>this._isMobile=e}),this.filterRemoved=y(),this.listenOn(window,"searchChanged",e=>{e.detail&&e.detail.scope==="all-solutions"&&this._filterApplied(e.detail.option,e.detail.logSearchTelemetry)}),this.listenOn(window,"toggleFilter",this._toggleFilter),this.listenOn(window,"cardsFetched",()=>{this._isLoading=!1,this._syncSolutionChipOrderWithDisplayedCards()}),this.listenOn(window,"solutionMatchesFromAssistant",e=>{this._applyAssistantSolutionMatches(e.detail)})}static{this.properties={solutionsCount:9,_isLoading:16,_filterOpen:16,_filters:16,_isMobile:16,_translations:16}}static{this.styles=O}willUpdate(e){e.has("_isMobile")&&(this._filterOpen=!this._isMobile)}get _telemetry(){return this._configContextConsumer.value?.telemetrySession}async searchSolutions(e){if(this._allSolutionsPanelRef.value.setSearchOptions(e),"industry"in e||"domain"in e){e.displayValue=e.domain||e.industry;let t=e.industry?Object.entries(u).find(([,s])=>s===e.industry)?.[0]:void 0,i=e.domain?Object.entries(f).find(([,s])=>s===e.domain)?.[0]:void 0;e.industry=t||"",e.domain=i||"",e.value=i||t||"",this._solutionsFilterPanelRef.value.changeIndustryFilter(e.industry,e.domain,e.displayValue,!0)}else("searchTerm"in e||"sortType"in e)&&("searchTerm"in e&&(this._filters.searchTerm=e.searchTerm),this._allSolutionsPanelRef.value?.searchSolutions(e))}async load(){this._isMobileContextConsumer.value&&(this._isMobile=this._isMobileContextConsumer.value)}updated(){this._fixPanelContentWrapperFocus()}_fixPanelContentWrapperFocus(){if(!this._panelFixed&&this._mainPanelRef.value){let e=this._mainPanelRef.value;e.componentOnReady?.().then(()=>{if(e.shadowRoot){let t=e.shadowRoot.querySelector(".content-wrapper");t&&(t.tabIndex=-1,this._panelFixed=!0,this._setupPanelObserver())}}).catch(()=>{this._panelFixed=!0})}}_setupPanelObserver(){if(this._panelObserver)return;this._panelObserver=new MutationObserver(t=>{t.forEach(i=>{if(i.type==="attributes"&&i.attributeName==="tabindex"){let s=i.target;s.classList.contains("content-wrapper")&&s.tabIndex===0&&(s.tabIndex=-1)}})});let e=this._mainPanelRef.value;if(e?.shadowRoot){let t=e.shadowRoot.querySelector(".content-wrapper");t&&this._panelObserver.observe(t,{attributes:!0,attributeFilter:["tabindex"]})}}disconnectedCallback(){super.disconnectedCallback(),this._panelObserver?.disconnect()}render(){let e=this._isMobile?"justify-content-end":"",t=this._isLoading?"display-none":"";return a`<calcite-shell class=${`position-relative ${t}`}>${this._isMobile?"":this._getFilterPanel()}<h1 class="height-100"><calcite-panel class="border-override header-override panel-override z-index-1" ${r(this._mainPanelRef)}><div class=${c(this._isMobile?`mobile-stack ${e}`:`display-flex align-items-center header-content-wrapper ${e}`)} slot=header-content><calcite-label class="label-override">${this._translations.numberOfSolutions.replace("{{count}}",this.solutionsCount.toString())}</calcite-label><div class="chips-container">${this._renderChips()}${this._filters.categories&&this._filters.categories?.length>0&&a`<calcite-button appearance=transparent icon-start=reset kind=neutral @click=${()=>{let i=this._filters.categories?.some(s=>s.type==="solution")??!1;this._filters={...this._filters,categories:[]},i&&window.dispatchEvent(new CustomEvent("clearAssistantResultFilters")),this._allSolutionsPanelRef.value?.searchSolutions(this._filters.categories),this._filters.searchTerm!==""&&this._allSolutionsPanelRef.value?.searchSolutions({searchTerm:this._filters.searchTerm}),this.filterRemoved.emit([])}} .label=${this._translations.clearIndustryFilter}>${this._translations.clearIndustryFilter}</calcite-button>`||""}</div></div>${this._isMobile&&this._getFilterPanel()||""}${this._getSolutionsAllPanel()}</calcite-panel></h1></calcite-shell>`}_getFilterPanel(){let e=this._filterOpen?{display:"flex"}:"";return this._isMobile?a`<calcite-panel class=${`border-none ${this._filterOpen?"background-override":"filter background-override"}`} id=solutions-all-shell-panel-start style=${h(e)}><solutions-filter-panel class="height-100" @applyFilter=${t=>{this._filterApplied(t.detail)}} ${r(this._solutionsFilterPanelRef)}></solutions-filter-panel></calcite-panel>`:a`<calcite-shell-panel class="filter background-override filter-width-350" id=solutions-all-shell-panel-start slot=panel-start style=${h(e)}><calcite-panel class="border-none"><solutions-filter-panel class="height-100" @applyFilter=${t=>{this._filterApplied(t.detail)}} ${r(this._solutionsFilterPanelRef)}></solutions-filter-panel></calcite-panel></calcite-shell-panel>`}_getSolutionsAllPanel(){let e=this._isMobile&&this._filterOpen?{display:"none"}:"";return a`<solutions-all-panel @cardsFetched=${this._updateSolutionCount} style=${h(e)} ${r(this._allSolutionsPanelRef)}></solutions-all-panel>`}_renderChips(){if(!this._filters.categories)return;let e=this._filters.categories.filter(t=>t.type==="industry"||t.type==="domain"||t.type==="solution");if(e.length!==0)return a`<calcite-chip-group class="chip-group" .label=${this._translations.appliedFilters}>${this._filters.displayValue&&this._filters.displayValue!==""?F(`${this._filters.displayValue}`,a`<calcite-chip appearance=outline-fill class=${c(this._isMobile?"responsive-chip":"padding-start responsive-chip")} closable .label=${this._filters.displayValue??""} @calciteChipClose=${()=>this._chipClosed(this._filters.displayValue,"solution")} .value=${this._filters.displayValue}>${this._filters.displayValue}</calcite-chip>`):R(e,t=>`${t.type}:${t.value}`,t=>a`<calcite-chip appearance=outline-fill class=${c(this._isMobile?"responsive-chip":"padding-start responsive-chip")} closable .label=${t.displayValue} @calciteChipClose=${()=>this._chipClosed(t.displayValue,t.type)} .value=${t.displayValue}>${t.displayValue}</calcite-chip>`)}</calcite-chip-group>`}_updateSolutionCount(e){this.solutionsCount=e.detail}_syncSolutionChipOrderWithDisplayedCards(){if(!this._filters.categories?.length)return;let e=this._filters.categories.filter(l=>l.type==="solution");if(e.length<=1)return;let t=this._allSolutionsPanelRef.value?.getDisplayedSolutionIds?.()??[];if(!t.length)return;let i=new Map;t.forEach((l,p)=>{i.set(l,p)});let s=[...e].sort((l,p)=>{let m=i.get(String(l.value)),b=i.get(String(p.value)),T=m===void 0?Number.MAX_SAFE_INTEGER:m,P=b===void 0?Number.MAX_SAFE_INTEGER:b;return T-P}),n=this._filters.categories.filter(l=>l.type!=="solution");this._filters={...this._filters,categories:[...n,...s]}}_chipClosed(e,t){if(this._filters.categories){if(t==="solution"){this._filters={...this._filters,categories:[]},window.dispatchEvent(new CustomEvent("clearAssistantResultFilters")),this._allSolutionsPanelRef.value?.searchSolutions(),this._filters.searchTerm!==""&&this._allSolutionsPanelRef.value?.searchSolutions({searchTerm:this._filters.searchTerm});return}if(t==="industry")this._filters.categories=[];else{let i=this._filters.categories.filter(s=>s.displayValue!==e&&s.type!==t);this._filters.categories=i}this._filters.categories.length>0?this._allSolutionsPanelRef.value?.searchSolutions(this._filters.categories):this._filters.searchTerm!==""?(this._allSolutionsPanelRef.value?.searchSolutions(this._filters.categories),this._allSolutionsPanelRef.value?.searchSolutions({searchTerm:this._filters.searchTerm})):this._allSolutionsPanelRef.value?.searchSolutions(),this.filterRemoved.emit(this._filters.categories)}}_applyAssistantSolutionMatches(e){let t=Array.isArray(e?.solutionIds)?e.solutionIds:[],i=Array.isArray(e?.solutionTitles)?e.solutionTitles:[],s=t.map((n,l)=>({type:"solution",value:n,displayValue:i[l]??n}));this._filters={categories:s,searchTerm:"",displayValue:this._translations.aiAssistantResults},this.filterRemoved.emit([])}_toggleFilter(){this._filterOpen=!this._filterOpen}_logFilterTelemetry(e){if((e.type==="industry"||e.type==="domain")&&e.industry){let t=[u[e.industry]];if(e.domain){let i=f[e.domain];t.push(i)}this._telemetry?.logEvent({category:_.ALL_SOLUTIONS,action:"Filter",dimensions:t})}}_filterApplied(e,t){if(this._filters.categories)if(e){let i=e;if("displayValue"in e)this._filters.categories.push(e),this._logFilterTelemetry(e);else if(Array.isArray(e)&&e.length>0){e.length>=2&&(i=[e[e.length-1]]),this._filters={categories:e,searchTerm:this._filters.searchTerm};let s=e[e.length-1];s&&this._logFilterTelemetry(s)}if("searchTerm"in i&&(this._filters.searchTerm=i.searchTerm,t&&i.searchTerm)){this._telemetry?.logEvent({category:_.ALL_SOLUTIONS,action:"Search",dimensions:[i.searchTerm]});return}this._allSolutionsPanelRef.value?.searchSolutions(i)}else this._filters.categories=[],this._allSolutionsPanelRef.value?.searchSolutions()}};w("solutions-all-shell",g);return g},b)
2
+ import{a as R}from"./PPFEO3UH.js";import{a as F}from"./YUWXPLTE.js";import b from"./NJQV2ASV.js";import{a as $,b as C}from"./2B4SGB3I.js";import{b as d}from"./RLSY4VUQ.js";import{a as S}from"./RPYS2BGE.js";import{b as w}from"./ZRHDQGYH.js";import{F as o,G as r,H as x,J as c,K as h,h as v,i as a,q as y}from"./T3EPRHTT.js";export default $arcgis.t(([{j:u,k:f,r:_}])=>{var O=v`.display-flex{display:flex}.border-override{border-top-width:var(--calcite-border-width-none);border-bottom-width:var(--calcite-border-width-none)}.header-override{--calcite-panel-header-content-space: 0px;--calcite-panel-header-background-color: var(--calcite-color-surface-3)}.panel-override{--calcite-panel-background-color: var(--calcite-color-surface-3);--calcite-panel-border-color: none}.label-override{--calcite-label-margin-bottom: 0px;font-weight:var(--calcite-font-weight-medium)}.header-button-padding{padding-top:var(--calcite-spacing-sm);padding-bottom:var(--calcite-spacing-sm);padding-inline-start:var(--calcite-spacing-lg);padding-inline-end:var(--calcite-spacing-lg)}.padding-start{padding-inline-start:var(--calcite-spacing-sm)}.align-items-center{align-items:center}.justify-content-end{justify-content:end}.filter-width-350{--calcite-shell-panel-width: 350px}.z-index-1{z-index:1}.z-index-2{z-index:2}h1{font-weight:unset;margin:0;padding:0}@container (max-width: 800px){.filter{display:none}}.mock-fab{--calcite-fab-shadow-internal: 0 6px 20px -4px rgba(0, 0, 0, .1), 0 4px 12px -2px rgba(0, 0, 0, .08);box-shadow:var(--calcite-fab-shadow, var(--calcite-fab-shadow-internal));--calcite-button-background-color: var(--calcite-fab-background-color);--calcite-button-border-color: var(--calcite-fab-border-color);--calcite-button-text-color: var(--calcite-fab-text-color);--calcite-button-loader-color: var(--calcite-fab-loader-color)}.background-override{--calcite-shell-panel-background-color: var(--calcite-color-surface-4);--calcite-panel-background-color: var(--calcite-color-surface-4)}.chips-container{display:flex;flex-wrap:wrap;align-items:center;gap:var(--calcite-spacing-xs);flex:1;padding-block:var(--calcite-spacing-xs)}.header-content-wrapper{min-height:50px;flex-wrap:wrap;gap:var(--calcite-spacing-xs);padding-inline-start:var(--calcite-spacing-lg);padding-top:8px}.position-relative{position:relative;height:100%;overflow:hidden}.height-100{height:100%}.border-none{border:none}.height-50{height:50px}.chip-group{max-width:100%}.chip-group{display:flex;flex-wrap:wrap}.responsive-chip{max-width:100%}.responsive-chip .chip-text{display:inline-flex;align-items:center;line-height:1;max-width:100%}@container (max-width: 800px){.responsive-chip{max-width:100%;min-width:0}.responsive-chip .chip-text{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.mobile-stack{flex-direction:column;align-items:flex-start;padding-top:var(--calcite-spacing-md)}`,g=class extends x{constructor(){super(),this.solutionsCount=0,this._isLoading=!0,this._filterOpen=!0,this._filters={categories:[],searchTerm:""},this._isMobile=!1,this._translations=S({name:"solutions-all-shell",blocking:!0}),this._allSolutionsPanelRef=o(),this._solutionsFilterPanelRef=o(),this._mainPanelRef=o(),this._panelFixed=!1,this._configContextConsumer=d({context:C,subscribe:!0}),this._isMobileContextConsumer=d({context:$,subscribe:!0,callback:e=>this._isMobile=e}),this.filterRemoved=y(),this.listenOn(window,"searchChanged",e=>{e.detail&&e.detail.scope==="all-solutions"&&this._filterApplied(e.detail.option,e.detail.logSearchTelemetry)}),this.listenOn(window,"toggleFilter",this._toggleFilter),this.listenOn(window,"cardsFetched",()=>{this._isLoading=!1,this._syncSolutionChipOrderWithDisplayedCards()}),this.listenOn(window,"solutionMatchesFromAssistant",e=>{this._applyAssistantSolutionMatches(e.detail)})}static{this.properties={solutionsCount:9,_isLoading:16,_filterOpen:16,_filters:16,_isMobile:16,_translations:16}}static{this.styles=O}willUpdate(e){e.has("_isMobile")&&(this._filterOpen=!this._isMobile)}get _telemetry(){return this._configContextConsumer.value?.telemetrySession}async searchSolutions(e){if(this._allSolutionsPanelRef.value.setSearchOptions(e),"industry"in e||"domain"in e){e.displayValue=e.domain||e.industry;let t=e.industry?Object.entries(u).find(([,s])=>s===e.industry)?.[0]:void 0,i=e.domain?Object.entries(f).find(([,s])=>s===e.domain)?.[0]:void 0;e.industry=t||"",e.domain=i||"",e.value=i||t||"",this._solutionsFilterPanelRef.value.changeIndustryFilter(e.industry,e.domain,e.displayValue,!0)}else("searchTerm"in e||"sortType"in e)&&("searchTerm"in e&&(this._filters.searchTerm=e.searchTerm),this._allSolutionsPanelRef.value?.searchSolutions(e))}async load(){this._isMobileContextConsumer.value&&(this._isMobile=this._isMobileContextConsumer.value)}updated(){this._fixPanelContentWrapperFocus()}_fixPanelContentWrapperFocus(){if(!this._panelFixed&&this._mainPanelRef.value){let e=this._mainPanelRef.value;e.componentOnReady?.().then(()=>{if(e.shadowRoot){let t=e.shadowRoot.querySelector(".content-wrapper");t&&(t.tabIndex=-1,this._panelFixed=!0,this._setupPanelObserver())}}).catch(()=>{this._panelFixed=!0})}}_setupPanelObserver(){if(this._panelObserver)return;this._panelObserver=new MutationObserver(t=>{t.forEach(i=>{if(i.type==="attributes"&&i.attributeName==="tabindex"){let s=i.target;s.classList.contains("content-wrapper")&&s.tabIndex===0&&(s.tabIndex=-1)}})});let e=this._mainPanelRef.value;if(e?.shadowRoot){let t=e.shadowRoot.querySelector(".content-wrapper");t&&this._panelObserver.observe(t,{attributes:!0,attributeFilter:["tabindex"]})}}disconnectedCallback(){super.disconnectedCallback(),this._panelObserver?.disconnect()}render(){let e=this._isMobile?"justify-content-end":"",t=this._isLoading?"display-none":"";return a`<calcite-shell class=${`position-relative ${t}`}>${this._isMobile?"":this._getFilterPanel()}<h1 class="height-100"><calcite-panel class="border-override header-override panel-override z-index-1" ${r(this._mainPanelRef)}><div class=${c(this._isMobile?`mobile-stack ${e}`:`display-flex align-items-center header-content-wrapper ${e}`)} slot=header-content><calcite-label class="label-override">${this._translations.numberOfSolutions.replace("{{count}}",this.solutionsCount.toString())}</calcite-label><div class="chips-container">${this._renderChips()}${this._filters.categories&&this._filters.categories?.length>0&&a`<calcite-button appearance=transparent icon-start=reset kind=neutral @click=${()=>{let i=this._filters.categories?.some(s=>s.type==="solution")??!1;this._filters={...this._filters,categories:[]},i&&window.dispatchEvent(new CustomEvent("clearAssistantResultFilters")),this._allSolutionsPanelRef.value?.searchSolutions(this._filters.categories),this._filters.searchTerm!==""&&this._allSolutionsPanelRef.value?.searchSolutions({searchTerm:this._filters.searchTerm}),this.filterRemoved.emit([])}} .label=${this._translations.clearIndustryFilter}>${this._translations.clearIndustryFilter}</calcite-button>`||""}</div></div>${this._isMobile&&this._getFilterPanel()||""}${this._getSolutionsAllPanel()}</calcite-panel></h1></calcite-shell>`}_getFilterPanel(){let e=this._filterOpen?{display:"flex"}:"";return this._isMobile?a`<calcite-panel class=${`border-none ${this._filterOpen?"background-override":"filter background-override"}`} id=solutions-all-shell-panel-start style=${h(e)}><solutions-filter-panel class="height-100" @applyFilter=${t=>{this._filterApplied(t.detail)}} ${r(this._solutionsFilterPanelRef)}></solutions-filter-panel></calcite-panel>`:a`<calcite-shell-panel class="filter background-override filter-width-350" id=solutions-all-shell-panel-start slot=panel-start style=${h(e)}><calcite-panel class="border-none"><solutions-filter-panel class="height-100" @applyFilter=${t=>{this._filterApplied(t.detail)}} ${r(this._solutionsFilterPanelRef)}></solutions-filter-panel></calcite-panel></calcite-shell-panel>`}_getSolutionsAllPanel(){let e=this._isMobile&&this._filterOpen?{display:"none"}:"";return a`<solutions-all-panel @cardsFetched=${this._updateSolutionCount} style=${h(e)} ${r(this._allSolutionsPanelRef)}></solutions-all-panel>`}_renderChips(){if(!this._filters.categories)return;let e=this._filters.categories.filter(t=>t.type==="industry"||t.type==="domain"||t.type==="solution");if(e.length!==0)return a`<calcite-chip-group class="chip-group" .label=${this._translations.appliedFilters}>${this._filters.displayValue&&this._filters.displayValue!==""?F(`${this._filters.displayValue}`,a`<calcite-chip appearance=outline-fill class=${c(this._isMobile?"responsive-chip":"padding-start responsive-chip")} closable .label=${this._filters.displayValue??""} @calciteChipClose=${()=>this._chipClosed(this._filters.displayValue,"solution")} .value=${this._filters.displayValue}>${this._filters.displayValue}</calcite-chip>`):R(e,t=>`${t.type}:${t.value}`,t=>a`<calcite-chip appearance=outline-fill class=${c(this._isMobile?"responsive-chip":"padding-start responsive-chip")} closable .label=${t.displayValue} @calciteChipClose=${()=>this._chipClosed(t.displayValue,t.type)} .value=${t.displayValue}>${t.displayValue}</calcite-chip>`)}</calcite-chip-group>`}_updateSolutionCount(e){this.solutionsCount=e.detail}_syncSolutionChipOrderWithDisplayedCards(){if(!this._filters.categories?.length)return;let e=this._filters.categories.filter(l=>l.type==="solution");if(e.length<=1)return;let t=this._allSolutionsPanelRef.value?.getDisplayedSolutionIds?.()??[];if(!t.length)return;let i=new Map;t.forEach((l,p)=>{i.set(l,p)});let s=[...e].sort((l,p)=>{let m=i.get(String(l.value)),b=i.get(String(p.value)),T=m===void 0?Number.MAX_SAFE_INTEGER:m,P=b===void 0?Number.MAX_SAFE_INTEGER:b;return T-P}),n=this._filters.categories.filter(l=>l.type!=="solution");this._filters={...this._filters,categories:[...n,...s]}}_chipClosed(e,t){if(this._filters.categories){if(t==="solution"){this._filters={...this._filters,categories:[]},window.dispatchEvent(new CustomEvent("clearAssistantResultFilters")),this._allSolutionsPanelRef.value?.searchSolutions(),this._filters.searchTerm!==""&&this._allSolutionsPanelRef.value?.searchSolutions({searchTerm:this._filters.searchTerm});return}if(t==="industry")this._filters.categories=[];else{let i=this._filters.categories.filter(s=>s.displayValue!==e&&s.type!==t);this._filters.categories=i}this._filters.categories.length>0?this._allSolutionsPanelRef.value?.searchSolutions(this._filters.categories):this._filters.searchTerm!==""?(this._allSolutionsPanelRef.value?.searchSolutions(this._filters.categories),this._allSolutionsPanelRef.value?.searchSolutions({searchTerm:this._filters.searchTerm})):this._allSolutionsPanelRef.value?.searchSolutions(),this.filterRemoved.emit(this._filters.categories)}}_applyAssistantSolutionMatches(e){let t=Array.isArray(e?.solutionIds)?e.solutionIds:[],i=Array.isArray(e?.solutionTitles)?e.solutionTitles:[],s=t.map((n,l)=>({type:"solution",value:n,displayValue:i[l]??n}));this._filters={categories:s,searchTerm:"",displayValue:this._translations.aiAssistantResults},this.filterRemoved.emit([])}_toggleFilter(){this._filterOpen=!this._filterOpen}_logFilterTelemetry(e){if((e.type==="industry"||e.type==="domain")&&e.industry){let t=[u[e.industry]];if(e.domain){let i=f[e.domain];t.push(i)}this._telemetry?.logEvent({category:_.ALL_SOLUTIONS,action:"Filter",dimensions:t})}}_filterApplied(e,t){if(this._filters.categories)if(e){let i=e;if("displayValue"in e)this._filters.categories.push(e),this._logFilterTelemetry(e);else if(Array.isArray(e)&&e.length>0){e.length>=2&&(i=[e[e.length-1]]),this._filters={categories:e,searchTerm:this._filters.searchTerm};let s=e[e.length-1];s&&this._logFilterTelemetry(s)}if("searchTerm"in i&&(this._filters.searchTerm=i.searchTerm,t&&i.searchTerm)){this._telemetry?.logEvent({category:_.ALL_SOLUTIONS,action:"Search",dimensions:[i.searchTerm]});return}this._allSolutionsPanelRef.value?.searchSolutions(i)}else this._filters.categories=[],this._allSolutionsPanelRef.value?.searchSolutions()}};w("solutions-all-shell",g);return g},b)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import e from"./F2EGGQ3W.js";import d from"./XSJOQTEM.js";import c from"./AHI2MTG5.js";import b from"./DLAKQTNZ.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./3EZYKC6C.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"./XXIEONFX.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,,,,a])=>{return a},a,b,c,d,e)
2
+ import e from"./5GWQZCK5.js";import d from"./XSJOQTEM.js";import c from"./TPQU557H.js";import b from"./NJQV2ASV.js";import a from"./XOPNEAS5.js";import"./2B4SGB3I.js";import"./RLSY4VUQ.js";import"./AO7XKW2U.js";import"./RPYS2BGE.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"./ZRHDQGYH.js";import"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([,,,,a])=>{return a},a,b,c,d,e)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{a as n}from"./OKJ6QAHM.js";import{b as i}from"./ZTVNKDEK.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{H as o,h as a,i as s}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var p=a`[role=alert]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}`,r=class extends o{constructor(){super(),this._messages=n({name:"instant-apps-app-error"}),this._handleErrorMessage=this._handleErrorMessage.bind(this),this.listenOn(document,"instant-apps-error",this._handleErrorMessage)}static{this.properties={errorMessage:16}}static{this.styles=p}async clearErrorMessage(){this.errorMessage=void 0}_handleErrorMessage(e){if(!e.detail||!this._messages?.errorMessages)return;let t=this._messages.errorMessages[e.detail];t&&(this.errorMessage=t)}render(){return s`<div role=alert>${this.errorMessage&&s`<p>${this.errorMessage}</p>`||""}</div>`}};i("instant-apps-app-error",r);export{r as InstantAppsAppError};
2
+ import{a as n}from"./BOTOPHKQ.js";import{b as i}from"./CTCWANBA.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{H as o,h as a,i as s}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var p=a`[role=alert]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}`,r=class extends o{constructor(){super(),this._messages=n({name:"instant-apps-app-error"}),this._handleErrorMessage=this._handleErrorMessage.bind(this),this.listenOn(document,"instant-apps-error",this._handleErrorMessage)}static{this.properties={errorMessage:16}}static{this.styles=p}async clearErrorMessage(){this.errorMessage=void 0}_handleErrorMessage(e){if(!e.detail||!this._messages?.errorMessages)return;let t=this._messages.errorMessages[e.detail];t&&(this.errorMessage=t)}render(){return s`<div role=alert>${this.errorMessage&&s`<p>${this.errorMessage}</p>`||""}</div>`}};i("instant-apps-app-error",r);export{r as InstantAppsAppError};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{b as f}from"./XXIEONFX.js";import{F as a,G as o,H as h,h as s,i as r,q as t}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([i])=>{var d=s`:host{display:block}`,l=class extends h{constructor(){super(...arguments),this.enabled=!1,this.floorFilterRef=a(),this.facilityChanged=t(),this.levelChanged=t(),this.siteChanged=t(),this._floorFilterReady=()=>{this.floorFilterRef.value&&(this._facilityHandle?.remove(),this._facilityHandle=i.watch(()=>this.floorFilterRef.value?.facility,e=>{e&&this.facilityChanged.emit(e)}),this._levelHandle?.remove(),this._levelHandle=i.watch(()=>this.floorFilterRef.value?.level,e=>{e&&this.levelChanged.emit(e)}),this._siteHandle?.remove(),this._siteHandle=i.watch(()=>this.floorFilterRef.value?.site,e=>{e&&this.siteChanged.emit(e)}))}}static{this.properties={enabled:5,floorFilterRef:0,mapView:0}}static{this.styles=d}render(){return this.enabled&&this.mapView&&r`<arcgis-floor-filter auto-destroy-disabled .view=${this.mapView} @arcgisReady=${this._floorFilterReady} ${o(this.floorFilterRef)}></arcgis-floor-filter>`||""}disconnectedCallback(){super.disconnectedCallback(),this.floorFilterRef.value&&this.floorFilterRef.value.destroy()}};f("map-floor-filter",l);return l},"core/reactiveUtils")
2
+ import{b as f}from"./ZRHDQGYH.js";import{F as a,G as o,H as h,h as s,i as r,q as t}from"./T3EPRHTT.js";import"./EXBEKVP5.js";export default $arcgis.t(([i])=>{var d=s`:host{display:block}`,l=class extends h{constructor(){super(...arguments),this.enabled=!1,this.floorFilterRef=a(),this.facilityChanged=t(),this.levelChanged=t(),this.siteChanged=t(),this._floorFilterReady=()=>{this.floorFilterRef.value&&(this._facilityHandle?.remove(),this._facilityHandle=i.watch(()=>this.floorFilterRef.value?.facility,e=>{e&&this.facilityChanged.emit(e)}),this._levelHandle?.remove(),this._levelHandle=i.watch(()=>this.floorFilterRef.value?.level,e=>{e&&this.levelChanged.emit(e)}),this._siteHandle?.remove(),this._siteHandle=i.watch(()=>this.floorFilterRef.value?.site,e=>{e&&this.siteChanged.emit(e)}))}}static{this.properties={enabled:5,floorFilterRef:0,mapView:0}}static{this.styles=d}render(){return this.enabled&&this.mapView&&r`<arcgis-floor-filter auto-destroy-disabled .view=${this.mapView} @arcgisReady=${this._floorFilterReady} ${o(this.floorFilterRef)}></arcgis-floor-filter>`||""}disconnectedCallback(){super.disconnectedCallback(),this.floorFilterRef.value&&this.floorFilterRef.value.destroy()}};f("map-floor-filter",l);return l},"core/reactiveUtils")
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{a as m}from"./ONLHK7DM.js";import{a as h}from"./VVZAS55G.js";import{b as _}from"./ZTVNKDEK.js";import{b as d}from"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{H as c,J as e,K as r,h as o,i as a,l as p,q as g}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var u={CENTER:"center"},f=o`:host{--instant-apps-landing-page-background-color: var(--calcite-color-brand);--instant-apps-landing-page-text-color: var(--calcite-color-text-inverse);--instant-apps-landing-page-entry-button-color: var(--calcite-color-brand);--instant-apps-landing-page-title-text-font-size: var(--calcite-font-size-6);--instant-apps-landing-page-subtitle-text-font-size: var( --calcite-font-size-3 );--instant-apps-landing-page-description-text-font-size: var( --calcite-font-size-0 );--instant-apps-landing-page-icon-image-scale--s: 100px;--instant-apps-landing-page-icon-image-scale--m: 250px;--instant-apps-landing-page-icon-image-scale--l: 500px;--instant-apps-landing-page-entry-button-margin: 0}:host .instant-apps-landing-page,:host calcite-dialog{box-sizing:border-box;display:flex;flex-direction:column;flex:1;transition:top .5s ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;padding:60px;--calcite-dialog-background-color: var( --instant-apps-landing-page-background-color );--calcite-dialog-text-color: var(--instant-apps-landing-page-text-color);--calcite-color-text-2: var(--instant-apps-landing-page-text-color)}:host .instant-apps-landing-page__title-text,:host calcite-dialog__title-text{color:var(--instant-apps-landing-page-text-color);font-size:var(--instant-apps-landing-page-title-text-font-size);margin:10px 0}:host .instant-apps-landing-page__subtitle-text,:host calcite-dialog__subtitle-text{font-weight:var(--calcite-font-weight-medium);font-size:var(--instant-apps-landing-page-subtitle-text-font-size);margin:10px 0}:host .instant-apps-landing-page__description-text,:host calcite-dialog__description-text{font-size:var(--instant-apps-landing-page-description-text-font-size);width:50%;min-width:250px;margin-top:10px;color:var(--instant-apps-landing-page-text-color)}:host .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__subtitle-text,:host calcite-dialog__title-text,:host calcite-dialog__subtitle-text{text-shadow:0px 4px 3px rgba(0,0,0,.4),0px 8px 13px rgba(0,0,0,.1),0px 18px 23px rgba(0,0,0,.1)}:host .instant-apps-landing-page__icon-image,:host calcite-dialog__icon-image{margin-bottom:10px}:host .instant-apps-landing-page__icon-image-scale--s,:host calcite-dialog__icon-image-scale--s{width:100px}:host .instant-apps-landing-page__icon-image-scale--m,:host calcite-dialog__icon-image-scale--m{width:250px}:host .instant-apps-landing-page__icon-image-scale--l,:host calcite-dialog__icon-image-scale--l{width:500px}:host .instant-apps-landing-page__button-container,:host calcite-dialog__button-container{display:flex;padding:20px 0}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button,:host calcite-dialog__button-container .instant-apps-landing-page__entry-button{margin:var(--instant-apps-landing-page-entry-button-margin)}:host .instant-apps-landing-page__entry-button,:host calcite-dialog__entry-button{--calcite-color-brand: var( --instant-apps-landing-page-entry-button-color );--calcite-color-brand-hover: var( --instant-apps-landing-page-entry-button-color );--calcite-color-brand-press: var( --instant-apps-landing-page-entry-button-color )}:host .instant-apps-landing-page__background-action,:host calcite-dialog__background-action{position:absolute;top:1%;right:.5%;max-width:300px}:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__remove-transition{transition:none}:host .instant-apps-landing-page__remove-padding{padding:0}:host .instant-apps-landing-page--closed-no-transition{display:none}:host .instant-apps-landing-page--closed{top:-100%}:host .instant-apps-landing-page__alignment--top-center{justify-content:flex-start;align-items:center}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto}:host .instant-apps-landing-page__alignment--center{justify-content:center;align-items:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;overflow-y:auto}:host .instant-apps-landing-page__alignment--bottom-center{justify-content:flex-end;align-items:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;overflow-y:auto}:host .instant-apps-landing-page__alignment--top-left{justify-content:flex-start;align-items:flex-start}:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto}:host .instant-apps-landing-page__alignment--center-left{justify-content:center;align-items:flex-start}:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto}:host .instant-apps-landing-page__alignment--bottom-left{justify-content:flex-end;align-items:flex-start}:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto}:host .instant-apps-landing-page__alignment--top-right{justify-content:flex-start;align-items:flex-end}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto}:host .instant-apps-landing-page__alignment--center-right{justify-content:center;align-items:flex-end}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto}:host .instant-apps-landing-page__alignment--bottom-right{justify-content:flex-end;align-items:flex-end}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto}:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host instant-apps-sign-in{width:50%}@media screen and (max-width:500px){:host instant-apps-sign-in{width:100%}}@media only screen and (max-width:768px){:host .instant-apps-landing-page__icon-image{max-width:70%;margin-bottom:20px}:host .instant-apps-landing-page__description-text{width:80%}:host .instant-apps-landing-page__title-text{font-size:var(--calcite-font-size-3)}:host .instant-apps-landing-page__subtitle-text{font-size:var(--calcite-font-size-0)}:host .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;margin-top:auto}:host .instant-apps-landing-page__button-container{display:flex;flex-direction:column;width:100%;margin-top:auto}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button{width:100%;margin-right:unset;margin-bottom:10px}:host .instant-apps-landing-page instant-apps-sign-in{margin-bottom:auto}}@media only screen and (max-width:896px)and (orientation:landscape){:host .instant-apps-landing-page__icon-image{max-width:25%}}`,t={BASE:"instant-apps-landing-page",rtl:"instant-apps-landing-page--rtl",titleText:"instant-apps-landing-page__title-text",subtitleText:"instant-apps-landing-page__subtitle-text",descriptionText:"instant-apps-landing-page__description-text",iconImage:"instant-apps-landing-page__icon-image",alignment:"instant-apps-landing-page__alignment--",entryButton:"instant-apps-landing-page__entry-button",contentContainer:"instant-apps-landing-page__content-container",buttonContainer:"instant-apps-landing-page__button-container",backgroundAction:"instant-apps-landing-page__background-action",iconImageScale:{s:" instant-apps-landing-page__icon-image-scale--s",m:" instant-apps-landing-page__icon-image-scale--m",l:" instant-apps-landing-page__icon-image-scale--l"}},l=class extends c{constructor(){super(...arguments),this._sanitizer=new h({whiteList:{h1:["style"],h2:["style"],h3:["style"],h4:["style"],h5:["style"],h6:["style"],img:["style","src","width","height"],pre:["style"],p:["id","class","style"],div:["id","class","style","role"],span:["id","class","style","role"],figure:["class","style"],header:["id","class","style","role"]}},!0),this._direction=d(),this.iconImageScale="m",this.alignment=u.CENTER,this.disableTransition=!0,this.open=!0,this.entryButtonScale="l",this.fontFamily="var(--calcite-sans-family);",this.landingPageClose=g(),this.landingPageOpen=g()}static{this.properties={titleText:1,subtitleText:1,descriptionText:1,entryButtonText:1,iconImage:1,iconImageScale:1,iconImageAltText:1,alignment:1,disableTransition:5,backgroundImageSrc:1,open:5,entryButtonScale:1,fontFamily:3,enableSignIn:5,portal:0,oauthappid:1}}static{this.styles=f}willUpdate(n){n.has("open")&&(this.hasUpdated||!this.open)&&(this.open?this.landingPageOpen.emit():this.landingPageClose.emit()),this.checkEnableSignIn()}closeLandingPage(){this.open=!1}getAlignmentClass(){return` ${t.alignment}${this.alignment}`}getIconImageScale(){let{iconImageScale:n}=this,{s:i,m:s,l:x}=t.iconImageScale;return n==="l"?x:n==="s"?i:s}getContentStyle(){let n=m(this.fontFamily);return this.backgroundImageSrc?{fontFamily:n,backgroundSize:"cover",backgroundImage:`url("${this.backgroundImageSrc}")`,backgroundRepeat:"no-repeat",backgroundPosition:"center"}:{fontFamily:n}}checkEnableSignIn(){if(this.enableSignIn){let n=localStorage.getItem("signing-in")?Number(localStorage.getItem("signing-in")):null;n!=null&&((Date.now()-n)/(60*1e3)<2&&(this.open=!1),localStorage.removeItem("signing-in"))}}render(){return this.renderLandingPageContent()}renderLandingPageContent(){let n=this.getAlignmentClass(),i=this._direction==="rtl"?` ${t.rtl}`:"",s=this.getContentStyle();return a`<calcite-dialog .open=${this.open} close-disabled placement=cover><div style=${r(s)} class=${`${t.BASE}${i}${n}`}><div class=${e(t.backgroundAction)}><slot name=background-action></slot></div><div class=${e(t.contentContainer)}>${this.renderIconImage()}${this.renderTitleText()}${this.renderSubtitleText()}${this.renderDescriptionText()}</div>${this.renderEntryButtonContainer()}</div></calcite-dialog>`}renderEntryButtonContainer(){return this.enableSignIn?this.renderLandingPageSignIn():a`<div class=${e(t.buttonContainer)}>${this.renderEntryButton()}<slot name=secondary-action></slot></div>`}renderLandingPageSignIn(){return a`<instant-apps-sign-in type=landingPage landing-page .portal=${this.portal} .oauthappid=${this.oauthappid} .closeLandingPage=${this.closeLandingPage.bind(this)}></instant-apps-sign-in>`}renderIconImage(){return this.iconImage?a`<img class=${`${t.iconImage}${this.getIconImageScale()}`} src=${this.iconImage??p} alt=${this.iconImageAltText??p}>`:null}renderTitleText(){return a`<h1 class=${e(t.titleText)}>${this.titleText}</h1>`}renderSubtitleText(){return a`<span class=${e(t.subtitleText)}>${this.subtitleText}</span>`}renderDescriptionText(){return a`<p class=${e(t.descriptionText)} .innerHTML=${this._sanitizer?.sanitize(this.descriptionText)??""??""}></p>`}renderEntryButton(){return a`<calcite-button class=${e(t.entryButton)} @click=${this.closeLandingPage} .scale=${this.entryButtonScale} appearance=outline-fill>${this.entryButtonText?this.entryButtonText:"Enter"}</calcite-button>`}};_("instant-apps-landing-page",l);export{l as InstantAppsLandingPage};
2
+ import{a as m}from"./ONLHK7DM.js";import{a as h}from"./VVZAS55G.js";import{b as _}from"./CTCWANBA.js";import{b as d}from"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{H as c,J as e,K as r,h as o,i as a,l as p,q as g}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var u={CENTER:"center"},f=o`:host{--instant-apps-landing-page-background-color: var(--calcite-color-brand);--instant-apps-landing-page-text-color: var(--calcite-color-text-inverse);--instant-apps-landing-page-entry-button-color: var(--calcite-color-brand);--instant-apps-landing-page-title-text-font-size: var(--calcite-font-size-6);--instant-apps-landing-page-subtitle-text-font-size: var( --calcite-font-size-3 );--instant-apps-landing-page-description-text-font-size: var( --calcite-font-size-0 );--instant-apps-landing-page-icon-image-scale--s: 100px;--instant-apps-landing-page-icon-image-scale--m: 250px;--instant-apps-landing-page-icon-image-scale--l: 500px;--instant-apps-landing-page-entry-button-margin: 0}:host .instant-apps-landing-page,:host calcite-dialog{box-sizing:border-box;display:flex;flex-direction:column;flex:1;transition:top .5s ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;padding:60px;--calcite-dialog-background-color: var( --instant-apps-landing-page-background-color );--calcite-dialog-text-color: var(--instant-apps-landing-page-text-color);--calcite-color-text-2: var(--instant-apps-landing-page-text-color)}:host .instant-apps-landing-page__title-text,:host calcite-dialog__title-text{color:var(--instant-apps-landing-page-text-color);font-size:var(--instant-apps-landing-page-title-text-font-size);margin:10px 0}:host .instant-apps-landing-page__subtitle-text,:host calcite-dialog__subtitle-text{font-weight:var(--calcite-font-weight-medium);font-size:var(--instant-apps-landing-page-subtitle-text-font-size);margin:10px 0}:host .instant-apps-landing-page__description-text,:host calcite-dialog__description-text{font-size:var(--instant-apps-landing-page-description-text-font-size);width:50%;min-width:250px;margin-top:10px;color:var(--instant-apps-landing-page-text-color)}:host .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__subtitle-text,:host calcite-dialog__title-text,:host calcite-dialog__subtitle-text{text-shadow:0px 4px 3px rgba(0,0,0,.4),0px 8px 13px rgba(0,0,0,.1),0px 18px 23px rgba(0,0,0,.1)}:host .instant-apps-landing-page__icon-image,:host calcite-dialog__icon-image{margin-bottom:10px}:host .instant-apps-landing-page__icon-image-scale--s,:host calcite-dialog__icon-image-scale--s{width:100px}:host .instant-apps-landing-page__icon-image-scale--m,:host calcite-dialog__icon-image-scale--m{width:250px}:host .instant-apps-landing-page__icon-image-scale--l,:host calcite-dialog__icon-image-scale--l{width:500px}:host .instant-apps-landing-page__button-container,:host calcite-dialog__button-container{display:flex;padding:20px 0}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button,:host calcite-dialog__button-container .instant-apps-landing-page__entry-button{margin:var(--instant-apps-landing-page-entry-button-margin)}:host .instant-apps-landing-page__entry-button,:host calcite-dialog__entry-button{--calcite-color-brand: var( --instant-apps-landing-page-entry-button-color );--calcite-color-brand-hover: var( --instant-apps-landing-page-entry-button-color );--calcite-color-brand-press: var( --instant-apps-landing-page-entry-button-color )}:host .instant-apps-landing-page__background-action,:host calcite-dialog__background-action{position:absolute;top:1%;right:.5%;max-width:300px}:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text,:host .instant-apps-landing-page--rtl.instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__remove-transition{transition:none}:host .instant-apps-landing-page__remove-padding{padding:0}:host .instant-apps-landing-page--closed-no-transition{display:none}:host .instant-apps-landing-page--closed{top:-100%}:host .instant-apps-landing-page__alignment--top-center{justify-content:flex-start;align-items:center}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto}:host .instant-apps-landing-page__alignment--center{justify-content:center;align-items:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;overflow-y:auto}:host .instant-apps-landing-page__alignment--bottom-center{justify-content:flex-end;align-items:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;overflow-y:auto}:host .instant-apps-landing-page__alignment--top-left{justify-content:flex-start;align-items:flex-start}:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto}:host .instant-apps-landing-page__alignment--center-left{justify-content:center;align-items:flex-start}:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto}:host .instant-apps-landing-page__alignment--bottom-left{justify-content:flex-end;align-items:flex-start}:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-start;overflow-y:auto}:host .instant-apps-landing-page__alignment--top-right{justify-content:flex-start;align-items:flex-end}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto}:host .instant-apps-landing-page__alignment--center-right{justify-content:center;align-items:flex-end}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto}:host .instant-apps-landing-page__alignment--bottom-right{justify-content:flex-end;align-items:flex-end}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto}:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__subtitle-text,:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container .instant-apps-landing-page__description-text{text-align:right}:host instant-apps-sign-in{width:50%}@media screen and (max-width:500px){:host instant-apps-sign-in{width:100%}}@media only screen and (max-width:768px){:host .instant-apps-landing-page__icon-image{max-width:70%;margin-bottom:20px}:host .instant-apps-landing-page__description-text{width:80%}:host .instant-apps-landing-page__title-text{font-size:var(--calcite-font-size-3)}:host .instant-apps-landing-page__subtitle-text{font-size:var(--calcite-font-size-0)}:host .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;margin-top:auto}:host .instant-apps-landing-page__button-container{display:flex;flex-direction:column;width:100%;margin-top:auto}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button{width:100%;margin-right:unset;margin-bottom:10px}:host .instant-apps-landing-page instant-apps-sign-in{margin-bottom:auto}}@media only screen and (max-width:896px)and (orientation:landscape){:host .instant-apps-landing-page__icon-image{max-width:25%}}`,t={BASE:"instant-apps-landing-page",rtl:"instant-apps-landing-page--rtl",titleText:"instant-apps-landing-page__title-text",subtitleText:"instant-apps-landing-page__subtitle-text",descriptionText:"instant-apps-landing-page__description-text",iconImage:"instant-apps-landing-page__icon-image",alignment:"instant-apps-landing-page__alignment--",entryButton:"instant-apps-landing-page__entry-button",contentContainer:"instant-apps-landing-page__content-container",buttonContainer:"instant-apps-landing-page__button-container",backgroundAction:"instant-apps-landing-page__background-action",iconImageScale:{s:" instant-apps-landing-page__icon-image-scale--s",m:" instant-apps-landing-page__icon-image-scale--m",l:" instant-apps-landing-page__icon-image-scale--l"}},l=class extends c{constructor(){super(...arguments),this._sanitizer=new h({whiteList:{h1:["style"],h2:["style"],h3:["style"],h4:["style"],h5:["style"],h6:["style"],img:["style","src","width","height"],pre:["style"],p:["id","class","style"],div:["id","class","style","role"],span:["id","class","style","role"],figure:["class","style"],header:["id","class","style","role"]}},!0),this._direction=d(),this.iconImageScale="m",this.alignment=u.CENTER,this.disableTransition=!0,this.open=!0,this.entryButtonScale="l",this.fontFamily="var(--calcite-sans-family);",this.landingPageClose=g(),this.landingPageOpen=g()}static{this.properties={titleText:1,subtitleText:1,descriptionText:1,entryButtonText:1,iconImage:1,iconImageScale:1,iconImageAltText:1,alignment:1,disableTransition:5,backgroundImageSrc:1,open:5,entryButtonScale:1,fontFamily:3,enableSignIn:5,portal:0,oauthappid:1}}static{this.styles=f}willUpdate(n){n.has("open")&&(this.hasUpdated||!this.open)&&(this.open?this.landingPageOpen.emit():this.landingPageClose.emit()),this.checkEnableSignIn()}closeLandingPage(){this.open=!1}getAlignmentClass(){return` ${t.alignment}${this.alignment}`}getIconImageScale(){let{iconImageScale:n}=this,{s:i,m:s,l:x}=t.iconImageScale;return n==="l"?x:n==="s"?i:s}getContentStyle(){let n=m(this.fontFamily);return this.backgroundImageSrc?{fontFamily:n,backgroundSize:"cover",backgroundImage:`url("${this.backgroundImageSrc}")`,backgroundRepeat:"no-repeat",backgroundPosition:"center"}:{fontFamily:n}}checkEnableSignIn(){if(this.enableSignIn){let n=localStorage.getItem("signing-in")?Number(localStorage.getItem("signing-in")):null;n!=null&&((Date.now()-n)/(60*1e3)<2&&(this.open=!1),localStorage.removeItem("signing-in"))}}render(){return this.renderLandingPageContent()}renderLandingPageContent(){let n=this.getAlignmentClass(),i=this._direction==="rtl"?` ${t.rtl}`:"",s=this.getContentStyle();return a`<calcite-dialog .open=${this.open} close-disabled placement=cover><div style=${r(s)} class=${`${t.BASE}${i}${n}`}><div class=${e(t.backgroundAction)}><slot name=background-action></slot></div><div class=${e(t.contentContainer)}>${this.renderIconImage()}${this.renderTitleText()}${this.renderSubtitleText()}${this.renderDescriptionText()}</div>${this.renderEntryButtonContainer()}</div></calcite-dialog>`}renderEntryButtonContainer(){return this.enableSignIn?this.renderLandingPageSignIn():a`<div class=${e(t.buttonContainer)}>${this.renderEntryButton()}<slot name=secondary-action></slot></div>`}renderLandingPageSignIn(){return a`<instant-apps-sign-in type=landingPage landing-page .portal=${this.portal} .oauthappid=${this.oauthappid} .closeLandingPage=${this.closeLandingPage.bind(this)}></instant-apps-sign-in>`}renderIconImage(){return this.iconImage?a`<img class=${`${t.iconImage}${this.getIconImageScale()}`} src=${this.iconImage??p} alt=${this.iconImageAltText??p}>`:null}renderTitleText(){return a`<h1 class=${e(t.titleText)}>${this.titleText}</h1>`}renderSubtitleText(){return a`<span class=${e(t.subtitleText)}>${this.subtitleText}</span>`}renderDescriptionText(){return a`<p class=${e(t.descriptionText)} .innerHTML=${this._sanitizer?.sanitize(this.descriptionText)??""??""}></p>`}renderEntryButton(){return a`<calcite-button class=${e(t.entryButton)} @click=${this.closeLandingPage} .scale=${this.entryButtonScale} appearance=outline-fill>${this.entryButtonText?this.entryButtonText:"Enter"}</calcite-button>`}};_("instant-apps-landing-page",l);export{l as InstantAppsLandingPage};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{a as v}from"./OKJ6QAHM.js";import{b as u}from"./ZTVNKDEK.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{F as m,G as d,H as h,J as o,h as l,i as n,q as r,u as p}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var T=l`@layer{.instant-apps-measurement-panel{width:300px}.instant-apps-measurement-panel calcite-action-bar{--calcite-action-bar-items-space: 1.5em}.instant-apps-measurement-panel .esri-coordinate-conversion__conversions-view,.instant-apps-measurement-panel .esri-coordinate-conversion{max-width:300px}}`,$={content:"instant-apps-measurement__content"},c=class extends h{constructor(){super(...arguments),this._messages=v({name:"instant-apps-measurement",blocking:!0}),this.measureTool=m(),this.showHeading=!0,this.closable=!1,this.measureActive=r()}static{this.properties={view:0,areaUnit:1,linearUnit:1,coordinateFormat:1,showHeading:5,activeToolType:1,closable:5}}static{this.styles=T}static{this.shadowRootOptions=p}_handleToolClick(e){if(!this?.measureTool)return;let a=e?.target;if(!(a instanceof HTMLElement))return;let t=a?.dataset.value;if(t!=="distance"&&t!=="area"&&t!=="point"&&t!=="clear")return;t&&this.measureTool.value&&(this.measureTool.value.activeTool=t);let s=document.getElementsByClassName("active-tool");for(let i=0;i<s?.length;i++)s[i]?.classList?.remove("active-tool");a?.classList.add("active-tool"),this.measureActive.emit(!(t===void 0||t==="clear"))}render(){return n`<calcite-panel class="instant-apps-measurement-panel" .heading=${this.showHeading?this._messages.label:void 0} .closable=${this.closable}>${this.renderActionBar()}${this.renderMeasureToolPanel()}</calcite-panel>`}renderMeasureToolPanel(){let{view:e,coordinateFormat:a,areaUnit:t,linearUnit:s,activeToolType:i}=this;return n`<calcite-panel class=${o($.content)}><instant-apps-measurement-tool .view=${e} .measureConfiguration=${{coordinateFormat:a,areaUnit:t,linearUnit:s,activeToolType:i}} .activeTool=${this.activeToolType} ${d(this.measureTool)}></instant-apps-measurement-tool></calcite-panel>`}renderActionBar(){let{_messages:e,activeToolType:a}=this;return n`<calcite-action-bar expand-disabled selection-appearance=highlight slot=action-bar><calcite-action class=${o(a==="distance"?"active-tool":"")} .text=${e.line} scale=m icon=measure data-value=distance @click=${this._handleToolClick} id=distanceTool><calcite-tooltip reference-element=distanceTool overlay-positioning=fixed close-on-click placement=top>${e.line}</calcite-tooltip></calcite-action><calcite-action class=${o(a==="area"?"active-tool":"")} .text=${e.area} icon=measure-area scale=m data-value=area @click=${this._handleToolClick} id=areaTool><calcite-tooltip reference-element=areaTool overlay-positioning=fixed close-on-click placement=top>${e.area}</calcite-tooltip></calcite-action><calcite-action class=${o(a==="point"?"active-tool":"")} .text=${e.point} scale=m icon=pin-plus data-value=point @click=${this._handleToolClick} id=pointTool><calcite-tooltip reference-element=pointTool overlay-positioning=fixed close-on-click placement=top>${e.point}</calcite-tooltip></calcite-action><calcite-action .text=${e.clear} scale=m icon=trash data-value=clear @click=${this._handleToolClick} id=trashTool><calcite-tooltip reference-element=trashTool overlay-positioning=fixed close-on-click placement=top>${e.clear}</calcite-tooltip></calcite-action></calcite-action-bar>`}};u("instant-apps-measurement",c);export{c as InstantAppsMeasurement};
2
+ import{a as v}from"./BOTOPHKQ.js";import{b as u}from"./CTCWANBA.js";import"./QMAV4UTN.js";import"./Y2AUIXNK.js";import{F as m,G as d,H as h,J as o,h as l,i as n,q as r,u as p}from"./T3EPRHTT.js";import"./EXBEKVP5.js";var T=l`@layer{.instant-apps-measurement-panel{width:300px}.instant-apps-measurement-panel calcite-action-bar{--calcite-action-bar-items-space: 1.5em}.instant-apps-measurement-panel .esri-coordinate-conversion__conversions-view,.instant-apps-measurement-panel .esri-coordinate-conversion{max-width:300px}}`,$={content:"instant-apps-measurement__content"},c=class extends h{constructor(){super(...arguments),this._messages=v({name:"instant-apps-measurement",blocking:!0}),this.measureTool=m(),this.showHeading=!0,this.closable=!1,this.measureActive=r()}static{this.properties={view:0,areaUnit:1,linearUnit:1,coordinateFormat:1,showHeading:5,activeToolType:1,closable:5}}static{this.styles=T}static{this.shadowRootOptions=p}_handleToolClick(e){if(!this?.measureTool)return;let a=e?.target;if(!(a instanceof HTMLElement))return;let t=a?.dataset.value;if(t!=="distance"&&t!=="area"&&t!=="point"&&t!=="clear")return;t&&this.measureTool.value&&(this.measureTool.value.activeTool=t);let s=document.getElementsByClassName("active-tool");for(let i=0;i<s?.length;i++)s[i]?.classList?.remove("active-tool");a?.classList.add("active-tool"),this.measureActive.emit(!(t===void 0||t==="clear"))}render(){return n`<calcite-panel class="instant-apps-measurement-panel" .heading=${this.showHeading?this._messages.label:void 0} .closable=${this.closable}>${this.renderActionBar()}${this.renderMeasureToolPanel()}</calcite-panel>`}renderMeasureToolPanel(){let{view:e,coordinateFormat:a,areaUnit:t,linearUnit:s,activeToolType:i}=this;return n`<calcite-panel class=${o($.content)}><instant-apps-measurement-tool .view=${e} .measureConfiguration=${{coordinateFormat:a,areaUnit:t,linearUnit:s,activeToolType:i}} .activeTool=${this.activeToolType} ${d(this.measureTool)}></instant-apps-measurement-tool></calcite-panel>`}renderActionBar(){let{_messages:e,activeToolType:a}=this;return n`<calcite-action-bar expand-disabled selection-appearance=highlight slot=action-bar><calcite-action class=${o(a==="distance"?"active-tool":"")} .text=${e.line} scale=m icon=measure data-value=distance @click=${this._handleToolClick} id=distanceTool><calcite-tooltip reference-element=distanceTool overlay-positioning=fixed close-on-click placement=top>${e.line}</calcite-tooltip></calcite-action><calcite-action class=${o(a==="area"?"active-tool":"")} .text=${e.area} icon=measure-area scale=m data-value=area @click=${this._handleToolClick} id=areaTool><calcite-tooltip reference-element=areaTool overlay-positioning=fixed close-on-click placement=top>${e.area}</calcite-tooltip></calcite-action><calcite-action class=${o(a==="point"?"active-tool":"")} .text=${e.point} scale=m icon=pin-plus data-value=point @click=${this._handleToolClick} id=pointTool><calcite-tooltip reference-element=pointTool overlay-positioning=fixed close-on-click placement=top>${e.point}</calcite-tooltip></calcite-action><calcite-action .text=${e.clear} scale=m icon=trash data-value=clear @click=${this._handleToolClick} id=trashTool><calcite-tooltip reference-element=trashTool overlay-positioning=fixed close-on-click placement=top>${e.clear}</calcite-tooltip></calcite-action></calcite-action-bar>`}};u("instant-apps-measurement",c);export{c as InstantAppsMeasurement};