@arcgis/map-components 5.0.0-next.161 → 5.0.0-next.162

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 (183) hide show
  1. package/dist/cdn/{JAGDFQG6.js → 25HB2UBJ.js} +1 -1
  2. package/dist/cdn/{VFMEHZZD.js → 2AHY7O7C.js} +1 -1
  3. package/dist/cdn/{IJ55LHCM.js → 2FTXKTA4.js} +1 -1
  4. package/dist/cdn/{HRF5IALK.js → 3HYCJV4V.js} +1 -1
  5. package/dist/cdn/{GQVWDA6I.js → 42WUBROP.js} +1 -1
  6. package/dist/cdn/{SA36LNKO.js → 4WMWNIPN.js} +1 -1
  7. package/dist/cdn/522HNMQI.js +2 -0
  8. package/dist/cdn/{5ZA7DJQS.js → 5LG4S2WV.js} +1 -1
  9. package/dist/cdn/{ZUNZDQUR.js → 6424II7L.js} +1 -1
  10. package/dist/cdn/{W3OOBNAC.js → 67DKLGTW.js} +1 -1
  11. package/dist/cdn/{YMUDLENL.js → 6IPVLMFQ.js} +1 -1
  12. package/dist/cdn/6IUQ5UHX.js +2 -0
  13. package/dist/cdn/{XC73PUXJ.js → 7AGJFQHK.js} +1 -1
  14. package/dist/cdn/{YK2QFDB6.js → 7NOD6U2Y.js} +1 -1
  15. package/dist/cdn/{VZERD7WA.js → 7OOAOM5T.js} +1 -1
  16. package/dist/cdn/{K2WVDLY4.js → AEMKZZZS.js} +1 -1
  17. package/dist/cdn/{QZPZSZPM.js → AJ64UYFM.js} +1 -1
  18. package/dist/cdn/{7SLLFJRR.js → AJIZTCGT.js} +1 -1
  19. package/dist/cdn/{OOUV2QP3.js → ANP7PYGJ.js} +1 -1
  20. package/dist/cdn/{LS7DJQ5K.js → AX23Q2XH.js} +1 -1
  21. package/dist/cdn/{IIMYW42S.js → B7SDETM6.js} +1 -1
  22. package/dist/cdn/{4JVUUWOR.js → BHPXKX47.js} +1 -1
  23. package/dist/cdn/{S74R5TS2.js → BKYII5LQ.js} +1 -1
  24. package/dist/cdn/{227PGZWD.js → CEB3VR24.js} +1 -1
  25. package/dist/cdn/{UUFU74F2.js → CO7UZYM2.js} +1 -1
  26. package/dist/cdn/{WR7YFN6J.js → CSU7GLED.js} +1 -1
  27. package/dist/cdn/{ZM4HRRLA.js → CXHSL2Y4.js} +1 -1
  28. package/dist/cdn/{PFYBNJ7Q.js → D4PJU376.js} +1 -1
  29. package/dist/cdn/{DNDFQB6M.js → DB2NOQ3D.js} +1 -1
  30. package/dist/cdn/{GPRLA5XG.js → E5SXPWDJ.js} +1 -1
  31. package/dist/cdn/{AELXLN3Z.js → EO66UQLI.js} +1 -1
  32. package/dist/cdn/{JM5UC74N.js → ESNK6MCY.js} +1 -1
  33. package/dist/cdn/{KLCFGWID.js → F2HPTFLQ.js} +1 -1
  34. package/dist/cdn/{APTCZIC5.js → F6QNNUIN.js} +1 -1
  35. package/dist/cdn/{PZEM6N6R.js → FA3Z6QOE.js} +1 -1
  36. package/dist/cdn/{USU73B2B.js → FD4A66OJ.js} +1 -1
  37. package/dist/cdn/{OYYIEGIF.js → FKQSJXNW.js} +1 -1
  38. package/dist/cdn/{7BVN4DHV.js → FRGWWVJK.js} +1 -1
  39. package/dist/cdn/{ZFIWGLC3.js → G4FP7GXM.js} +1 -1
  40. package/dist/cdn/{ND443SHN.js → GAH6OGQE.js} +1 -1
  41. package/dist/cdn/{YIMKE3ZS.js → GCFNRINR.js} +1 -1
  42. package/dist/cdn/{TWRNR5SM.js → GMR2QJNU.js} +1 -1
  43. package/dist/cdn/{VPFMRSZ6.js → H5RGMC7S.js} +1 -1
  44. package/dist/cdn/{ND6JN4YZ.js → HKVQWRPL.js} +1 -1
  45. package/dist/cdn/{ZEJQO6MG.js → HYBTGX3N.js} +1 -1
  46. package/dist/cdn/{CABYEVH5.js → I5M2Z7WS.js} +1 -1
  47. package/dist/cdn/{XOMA7SZS.js → IKOLSNGV.js} +1 -1
  48. package/dist/cdn/{WBIRVQFF.js → IL56ZRDO.js} +1 -1
  49. package/dist/cdn/{JBDUMA6A.js → ILFME5US.js} +1 -1
  50. package/dist/cdn/{COSJIIOV.js → IQ7EVFBF.js} +1 -1
  51. package/dist/cdn/{T5J4CTR7.js → IWY2NPAG.js} +1 -1
  52. package/dist/cdn/{HAGRUIX6.js → J4XU75P7.js} +1 -1
  53. package/dist/cdn/{XX7YW667.js → JCW65STL.js} +1 -1
  54. package/dist/cdn/{2VP56JYP.js → JUHCPSPF.js} +1 -1
  55. package/dist/cdn/{3PBCQSML.js → JZXMWXVD.js} +1 -1
  56. package/dist/cdn/K4PC3ILQ.js +2 -0
  57. package/dist/cdn/{ECEHRM4F.js → K6ZTEDKX.js} +1 -1
  58. package/dist/cdn/{S2OPU6EB.js → KAZBQ6OA.js} +1 -1
  59. package/dist/cdn/{TEZDBCLU.js → KGJGLAWM.js} +1 -1
  60. package/dist/cdn/{VXRHLDSF.js → KRVBBG4M.js} +1 -1
  61. package/dist/cdn/{FZJKT7BV.js → KWIBK4I5.js} +1 -1
  62. package/dist/cdn/{CNAGRWBY.js → L5JWLRD3.js} +1 -1
  63. package/dist/cdn/{VWFVE3N5.js → LT5ALQM5.js} +1 -1
  64. package/dist/cdn/{T6MNZWQJ.js → MAM7YHLA.js} +1 -1
  65. package/dist/cdn/{S2WF243X.js → MD36SH63.js} +1 -1
  66. package/dist/cdn/{YGRKF7FM.js → N7QKWBTM.js} +1 -1
  67. package/dist/cdn/{VU4FTMX6.js → NWXN5M4S.js} +1 -1
  68. package/dist/cdn/{JWX6Z3ZF.js → O4RXVEMK.js} +1 -1
  69. package/dist/cdn/{GSULD3SQ.js → ODGGFBDK.js} +1 -1
  70. package/dist/cdn/{THO22RHZ.js → OFQNQF6N.js} +1 -1
  71. package/dist/cdn/{NYXESRIT.js → ONPN5M3Z.js} +1 -1
  72. package/dist/cdn/{N472QGAH.js → ORVYHFUJ.js} +1 -1
  73. package/dist/cdn/{CGXCY6GA.js → P76K34HQ.js} +1 -1
  74. package/dist/cdn/{SGG7SP3T.js → P7PWOUNZ.js} +1 -1
  75. package/dist/cdn/{6TBMOJWN.js → PQ5PGLJM.js} +1 -1
  76. package/dist/cdn/{RM2HMUW5.js → PYMUS3H4.js} +1 -1
  77. package/dist/cdn/{BFJ4VLH7.js → PZ2JPHRS.js} +1 -1
  78. package/dist/cdn/{FHDRIX57.js → Q4B4MXH4.js} +1 -1
  79. package/dist/cdn/{XLPNOCX2.js → QF7RABZH.js} +1 -1
  80. package/dist/cdn/{T3ZQTVDW.js → QKSSTPS3.js} +1 -1
  81. package/dist/cdn/{CFNAG4UQ.js → QUHJMEBB.js} +1 -1
  82. package/dist/cdn/{QCAKPRXK.js → QZPDQ6B7.js} +1 -1
  83. package/dist/cdn/{GIIC5RQS.js → R2FIOZIL.js} +1 -1
  84. package/dist/cdn/{ZA6HMKG3.js → RB7GCEEB.js} +1 -1
  85. package/dist/cdn/{U7UXBPOB.js → RE2BXNZ3.js} +1 -1
  86. package/dist/cdn/{OLRMETYO.js → RMFIN5AS.js} +1 -1
  87. package/dist/cdn/{Z2BF5ON2.js → RN57AN5P.js} +1 -1
  88. package/dist/cdn/{7DRCEN4I.js → RU5U2DVA.js} +1 -1
  89. package/dist/cdn/{AR4EHDQE.js → RYKRMJMK.js} +1 -1
  90. package/dist/cdn/{2WRZHA7I.js → RZ4T32PU.js} +1 -1
  91. package/dist/cdn/{K5TOSB65.js → SDWQW3ZX.js} +1 -1
  92. package/dist/cdn/{UBCQ3OXU.js → SK6O74LF.js} +1 -1
  93. package/dist/cdn/SKIP3GUP.js +2 -0
  94. package/dist/cdn/{FKFLM37F.js → T3JWZEB6.js} +1 -1
  95. package/dist/cdn/{WBEN5CWQ.js → TGUIWWDN.js} +1 -1
  96. package/dist/cdn/TQRR2FH6.js +2 -0
  97. package/dist/cdn/{W2Z72SWO.js → U3H7EVCU.js} +1 -1
  98. package/dist/cdn/{Y27IRNJL.js → U4TAMNG3.js} +1 -1
  99. package/dist/cdn/{OE3W5FEW.js → UBGE4QNR.js} +1 -1
  100. package/dist/cdn/{RAXYFKPT.js → UELD2T53.js} +1 -1
  101. package/dist/cdn/{JKBRLNJZ.js → UNLAUFXF.js} +1 -1
  102. package/dist/cdn/{H6TQCFMC.js → UW3G2BPO.js} +1 -1
  103. package/dist/cdn/{LEJDJAPO.js → W53OMY3O.js} +1 -1
  104. package/dist/cdn/{PTIYROPJ.js → WBGZAAEK.js} +1 -1
  105. package/dist/cdn/{ZX4R6K46.js → WDTFIXMM.js} +1 -1
  106. package/dist/cdn/{NS2J3AS6.js → WLNRPTCN.js} +1 -1
  107. package/dist/cdn/{ETJEFAUU.js → WTTBFFC2.js} +1 -1
  108. package/dist/cdn/{TRID34Q5.js → WV6XSMZW.js} +1 -1
  109. package/dist/cdn/{KEJZKHZZ.js → XCDPFMHG.js} +1 -1
  110. package/dist/cdn/{C45HGFAM.js → XIOIZK7A.js} +1 -1
  111. package/dist/cdn/{A724KY7J.js → Y4RMI55P.js} +1 -1
  112. package/dist/cdn/YLLIMNEW.js +2 -0
  113. package/dist/cdn/{DETI55RG.js → YXYCWJFF.js} +1 -1
  114. package/dist/cdn/{OE46TF5I.js → Z6LXLPK7.js} +1 -1
  115. package/dist/cdn/{WWASOGVO.js → ZOBY4YF2.js} +1 -1
  116. package/dist/cdn/{DHY6U2TQ.js → ZVTV4UKT.js} +1 -1
  117. package/dist/cdn/index.js +1 -1
  118. package/dist/chunks/useArcgisViewReadyError.js +7 -7
  119. package/dist/components/arcgis-area-measurement-2d/customElement.d.ts +5 -5
  120. package/dist/components/arcgis-area-measurement-3d/customElement.d.ts +7 -7
  121. package/dist/components/arcgis-basemap-toggle/customElement.d.ts +1 -1
  122. package/dist/components/arcgis-bookmarks/customElement.d.ts +1 -1
  123. package/dist/components/arcgis-building-explorer/customElement.d.ts +4 -4
  124. package/dist/components/arcgis-coordinate-conversion/customElement.d.ts +1 -1
  125. package/dist/components/arcgis-daylight/customElement.d.ts +13 -13
  126. package/dist/components/arcgis-daylight/customElement.js +2 -1
  127. package/dist/components/arcgis-direct-line-measurement-3d/customElement.d.ts +7 -7
  128. package/dist/components/arcgis-distance-measurement-2d/customElement.d.ts +5 -5
  129. package/dist/components/arcgis-elevation-profile/customElement.d.ts +8 -8
  130. package/dist/components/arcgis-feature/customElement.d.ts +7 -7
  131. package/dist/components/arcgis-feature-fields/customElement.js +7 -7
  132. package/dist/components/arcgis-feature-form/customElement.d.ts +2 -2
  133. package/dist/components/arcgis-features/customElement.d.ts +35 -35
  134. package/dist/components/arcgis-floor-filter/customElement.d.ts +3 -3
  135. package/dist/components/arcgis-grid-controls/customElement.d.ts +8 -8
  136. package/dist/components/arcgis-legend/customElement.d.ts +1 -1
  137. package/dist/components/arcgis-line-of-sight/customElement.d.ts +5 -5
  138. package/dist/components/arcgis-link-chart/customElement.d.ts +5 -5
  139. package/dist/components/arcgis-locate/customElement.d.ts +1 -1
  140. package/dist/components/arcgis-map/customElement.d.ts +41 -41
  141. package/dist/components/arcgis-measurement/customElement.d.ts +3 -3
  142. package/dist/components/arcgis-multi-feature-form/customElement.d.ts +1 -1
  143. package/dist/components/arcgis-navigation-toggle/customElement.d.ts +1 -1
  144. package/dist/components/arcgis-popup/customElement.d.ts +42 -42
  145. package/dist/components/arcgis-print/customElement.d.ts +6 -6
  146. package/dist/components/arcgis-scene/customElement.d.ts +32 -32
  147. package/dist/components/arcgis-search/customElement.d.ts +11 -11
  148. package/dist/components/arcgis-shadow-cast/customElement.d.ts +26 -26
  149. package/dist/components/arcgis-slice/customElement.d.ts +12 -12
  150. package/dist/components/arcgis-slider-binary-color-size-legacy/customElement.d.ts +6 -6
  151. package/dist/components/arcgis-slider-classed-color-legacy/customElement.d.ts +4 -4
  152. package/dist/components/arcgis-slider-classed-size-legacy/customElement.d.ts +5 -5
  153. package/dist/components/arcgis-slider-color-legacy/customElement.d.ts +9 -9
  154. package/dist/components/arcgis-slider-color-size-legacy/customElement.d.ts +16 -16
  155. package/dist/components/arcgis-slider-heatmap-legacy/customElement.d.ts +1 -1
  156. package/dist/components/arcgis-slider-opacity-legacy/customElement.d.ts +5 -5
  157. package/dist/components/arcgis-slider-size-legacy/customElement.d.ts +9 -9
  158. package/dist/components/arcgis-swipe/customElement.d.ts +5 -5
  159. package/dist/components/arcgis-time-zone-label/customElement.d.ts +6 -29
  160. package/dist/components/arcgis-time-zone-label/customElement.js +15 -48
  161. package/dist/components/arcgis-time-zone-label/index.js +1 -1
  162. package/dist/components/arcgis-track/customElement.d.ts +1 -1
  163. package/dist/components/arcgis-value-picker-legacy/customElement.d.ts +15 -15
  164. package/dist/components/arcgis-video-player/customElement.d.ts +1 -1
  165. package/dist/components/arcgis-volume-measurement/customElement.d.ts +14 -14
  166. package/dist/components/arcgis-volume-measurement/customElement.js +1 -1
  167. package/dist/components/arcgis-weather/customElement.d.ts +5 -5
  168. package/dist/docs/api.json +1 -1
  169. package/dist/docs/docs.json +1 -1
  170. package/dist/docs/vscode.html-custom-data.json +1 -1
  171. package/dist/docs/web-types.json +1 -1
  172. package/dist/loader.js +1 -1
  173. package/dist/types/lumina.d.ts +1 -2
  174. package/dist/types/preact.d.ts +1 -2
  175. package/dist/types/react.d.ts +1 -2
  176. package/dist/types/stencil.d.ts +1 -2
  177. package/package.json +4 -4
  178. package/dist/cdn/43GVPQTY.js +0 -2
  179. package/dist/cdn/BVJCLI2O.js +0 -2
  180. package/dist/cdn/F6ZBZTSB.js +0 -2
  181. package/dist/cdn/LT6PKSRL.js +0 -2
  182. package/dist/cdn/MTTO5ISS.js +0 -2
  183. package/dist/cdn/RHWPLIDI.js +0 -2
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import a from"./GYSZA7D4.js";import{a as C,b as L}from"./MATFNQVX.js";import{a as $}from"./PJKBRX3P.js";import{a as N}from"./2VP56JYP.js";import{h as T}from"./LT6PKSRL.js";import"./UQKKALKO.js";import"./LEUHIPSJ.js";import{M as y,N as k,O as _,U as S,a as f,b as s,p as d,r as w,s as b,x as c}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([{queryAllJSON:v},l,{substitute:U},I,P,A,E,g,M,{watch:x},{r:u}])=>{var B=f`:host{flex-grow:1}calcite-flow{min-height:var(--arcgis-internal-panel-height-sm, 240px)}calcite-block-group{flex-grow:1;padding-bottom:var(--calcite-spacing-md);background-color:var(--calcite-color-foreground-1)}calcite-block{--calcite-block-content-space: 0;--calcite-block-border-color: transparent;margin:0}calcite-block calcite-select,calcite-block calcite-input{margin:0 var(--calcite-spacing-md)}calcite-block calcite-input-message{padding:var(--calcite-spacing-sm) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}calcite-block calcite-label:last-child{--calcite-label-margin-bottom: 0}calcite-notice{margin:var(--calcite-spacing-md)}#subnetwork-info-block{margin:var(--calcite-spacing-md) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}.inline-loader{--calcite-loader-spacing: var(--calcite-spacing-md)}.add-spatial-mode{display:flex;flex-direction:column;gap:var(--calcite-spacing-md);margin:var(--calcite-spacing-md)}.heading{color:var(--calcite-color-text-1);margin:0 0 var(--calcite-spacing-md) 0;font-size:var(--calcite-font-size);font-style:normal;font-weight:var(--calcite-font-weight-medium)}`,F=`utility-network-trace-inputs-sketch-${Date.now()}`,h=`utility-network-trace-inputs-flags-${Date.now()}`,R=20,p=class extends _{constructor(){super(...arguments),this._messages=N({blocking:!0}),this._layerIdToLayer=new Map,this._startingPoints=new l,this._barriers=new l,this._stoppingPoints=new l,this._subnetworkTraceTypes=new Set(["subnetwork","subnetwork-controller","upstream","downstream","isolation"]),this._removeDuplicateSubnetworkNames=(e,t,i)=>t===0||e.getAttribute("SUBNETWORKNAME")!==i[t-1].getAttribute("SUBNETWORKNAME"),this._hitTestPromise=null,this._featuresFromHitTest=[],this._featuresComponentRef=y(),this._displayLimit=20,this.compatibleSubnetworkNames=[],this.traceConfigurations=[],this._state="ready",this._exceedDisplayLimit=!1,this.mode="default",this.arcgisTraceInputsChange=c(),this.arcgisUtilityNetworkChange=c(),this.arcgisSelectedNamedTraceConfigurationChange=c(),this.arcgisTraceLocationSelectStart=c(),this.arcgisTraceLocationSelectEnd=c(),this.arcgisPropertyChange=T()("mode"),this.renderFeatureListItem=e=>{let{feature:t,label:i}=e;return s`<calcite-list-item .label=${i} @calciteListItemSelect=${()=>this._handleFeatureSelectChange(t)}><calcite-icon icon=chevron-right slot=content-end></calcite-icon></calcite-list-item>`}}static{this.properties={compatibleSubnetworkNames:16,subnetworksTable:16,traceConfigurations:16,utilityNetworks:16,_unTraceConfiguration:16,_state:16,_activeTraceLocationType:16,_selectedFeature:16,_exceedDisplayLimit:16,beforeTraceLocationSelectStart:0,view:0,selectedUtilityNetwork:0,selectedNamedTraceConfiguration:0,unTraceConfiguration:32,referenceElement:1,mode:3,traceLocations:32}}static{this.styles=B}get isSubnetworkNameTraceSelected(){let e=this.selectedNamedTraceConfiguration?.traceType;return!!this.selectedNamedTraceConfiguration?.traceConfiguration?.subnetworkName&&e==="subnetwork"}get selectedSubnetworkName(){return this._unTraceConfiguration?.subnetworkName??void 0}set selectedSubnetworkName(e){this._unTraceConfiguration&&(this._unTraceConfiguration.subnetworkName=e)}get _allLayers(){let{view:e}=this;return e?.map?e.map.allLayers.toArray().concat(e.map.allTables.toArray()):[]}get unTraceConfiguration(){return this._unTraceConfiguration}get traceLocations(){let e=[],t=i=>{i.flagProperties.terminalConfiguration&&i.flagProperties.selectedTerminals?i.flagProperties.selectedTerminals.forEach(a=>{e.push(new A({type:i.traceLocation.type,isFilterBarrier:i.traceLocation.isFilterBarrier,globalId:i.traceLocation.globalId,percentAlong:i.traceLocation.percentAlong,terminalId:a}))}):e.push(i.traceLocation)};return this._startingPoints.forEach(i=>t(i)),this._barriers.forEach(i=>t(i)),this._stoppingPoints.forEach(i=>t(i)),e}load(){this.manager.onLifecycle(()=>[x(()=>this.view?.map,()=>{this._setupUtilityNetwork(),this._setupSketchViewModel()},{initial:!0})])}willUpdate(e){let{utilityNetworks:t,selectedUtilityNetwork:i}=this;(e.has("utilityNetworks")||!t||t.length===0||!i||!t?.includes(i))&&this._handleUtilityNetworksChange(),e.has("selectedUtilityNetwork")&&(this.arcgisUtilityNetworkChange.emit(),this._handleSelectedUtilityNetworkChange()),e.has("selectedNamedTraceConfiguration")&&(this.arcgisTraceInputsChange.emit(),this.arcgisSelectedNamedTraceConfigurationChange.emit(),this._handleTraceConfigChange()),e.has("selectedSubnetworkName")&&this.arcgisTraceInputsChange.emit()}_clearTraceLocations(){this._getGraphicLayer(h)?.removeAll(),this._startingPoints.removeAll(),this._barriers.removeAll(),this._stoppingPoints.removeAll()}_createGraphicLayer(e){let{map:t}=this.view;if(!t?.findLayerById(e)){let i=new I({id:e,listMode:"hide",title:e});C(this.view,i)}}_getGraphicLayer(e){let{map:t}=this.view;if(t){let i=t.findLayerById(e);if(L(i))return t.reorder(i,t.layers.length-1),i}return null}_setSnappingOption(){let{_sketchViewModel:e,_unLayers:t}=this;if(e&&t&&t.length>0){let i=new l;t.forEach(a=>{a.type==="subtype-group"?a.sublayers.forEach(r=>{i.add(new g({layer:r,enabled:!0}))}):i.add(new g({layer:a,enabled:!0}))}),e.snappingOptions={enabled:!0,featureEnabled:!0,featureSources:i}}}_initializeSketchViewModel(){let{view:e,_unLayers:t}=this,i=this._getGraphicLayer(F),a=new l;return t?.forEach(r=>a.add(new g({layer:r,enabled:!0}))),new M({layer:i,view:e})}_setupSketchViewModel(){this._createGraphicLayer(F),this._createGraphicLayer(h),this._sketchViewModel=this._initializeSketchViewModel()}_clearSubnetworks(){this.selectedSubnetworkName=void 0,this.subnetworksTable=void 0,this.compatibleSubnetworkNames=[]}async _loadSubnetworksTable(){this.subnetworksTable||(this.subnetworksTable=await this.selectedUtilityNetwork?.loadSubnetworksTable())}async _querySubnetworks(){let{subnetworksTable:e}=this;if(!e)return;let t=e.createQuery();t.gdbVersion=this.selectedUtilityNetwork?.gdbVersion,t.where=this._getSubnetworkQueryWhereClause(),t.outFields=["SUBNETWORKNAME"],t.orderByFields=["SUBNETWORKNAME"];let i=E.fromJSON(await v(e,t));this.compatibleSubnetworkNames=i.features.filter(this._removeDuplicateSubnetworkNames).map(a=>a.getAttribute("SUBNETWORKNAME"))}_getSubnetworkQueryWhereClause(){let e=this._unTraceConfiguration,t=`DOMAINNETWORKNAME = '${e.domainNetworkName}'`,i=`TIERNAME = '${e.tierName}'`;return[t,i].join(" AND ")}async _handleSubnetworkTraceConfigChange(e){await this._loadSubnetworksTable(),await this._querySubnetworks();let{compatibleSubnetworkNames:t}=this;e.subnetworkName&&!t.some(i=>i===e.subnetworkName)&&(this.selectedSubnetworkName=t.at(0))}_selectTraceConfigurationByGuid(e){let t=this.selectedUtilityNetwork?.sharedNamedTraceConfigurations.find(i=>i.globalId===e);if(!t){d("error",this,"`traceConfig` not found in `selectedUtilityNetwork.sharedNamedTraceConfigurations`");return}this.selectedNamedTraceConfiguration=t}_handleTraceConfigChange(){let{selectedNamedTraceConfiguration:e}=this;if(!(e?.traceConfiguration instanceof P)){d("error",this,w("selectedNamedTraceConfiguration.traceConfiguration")),this._unTraceConfiguration=void 0;return}switch(this._unTraceConfiguration=e.traceConfiguration.clone(),e.traceType){case"subnetwork":this._state="loading",this._handleSubnetworkTraceConfigChange(this._unTraceConfiguration).finally(()=>this._state="ready");break}}async _handleSelectedUtilityNetworkChange(){await this.selectedUtilityNetwork?.load(),this._clearSubnetworks(),this._setupTraceConfigurations(),this._filterUnLayers(),this._clearTraceLocations()}_setupTraceConfigurations(){this._unTraceConfiguration=void 0,this.traceConfigurations=this.selectedUtilityNetwork?.sharedNamedTraceConfigurations.filter(e=>e.traceType!=="path"&&e.traceType!=="circuit")||[],this.selectedNamedTraceConfiguration=this.traceConfigurations.at(0)}_filterUnLayers(){let{selectedUtilityNetwork:e}=this;this._unLayers=new l(this._allLayers.filter(t=>e?.isUtilityLayer(t))),this._setSnappingOption()}_handleUtilityNetworksChange(){let{utilityNetworks:e}=this;if(!e||e.length===0){this._state="error",d("error",this,b("utilityNetworks"));return}(!this.selectedUtilityNetwork||!e.includes(this.selectedUtilityNetwork))&&(this.selectedUtilityNetwork=e.at(0))}async _setupUtilityNetwork(){if(this.view?.map){let e=this.view.map;await e.load(),this.utilityNetworks=e.utilityNetworks||void 0}else this._state="disabled",d("error",this,"The property `view.map` is required to load utility networks but is missing.")}_handleTraceLocationSelectStart(e){if(e.stopPropagation(),this.arcgisTraceLocationSelectStart.emit(e.detail).defaultPrevented){e.preventDefault();return}this._activeTraceLocationType=e?.target?.traceLocationType,this.mode="add-spatial-instructions"}_getLayerByLayerId(e){if(e==null)return;let{_layerIdToLayer:t,_unLayers:i}=this;if(t.get(e))return t.get(e);if(!i)return;let a=i.find(r=>"layerId"in r&&r.layerId===e);return a&&t.set(e,a),a}async _queryFeatures(e,t){let i=e.createQuery();i.gdbVersion=this.selectedUtilityNetwork?.gdbVersion,i.objectIds=t.map(r=>r.getObjectId()),i.outFields=["*"];let{features:a}=E.fromJSON(await v(e,i));return a.forEach(r=>{r.layer=e.type==="subtype-group"?e.findSublayerForFeature(r):e,r.origin=r.layer}),a}async _populateFeaturesWithLabel(e){let t=new Map;e.forEach(a=>{let r=a.layer?.type==="subtype-sublayer"?a.layer.parent:a.layer;if(r){let o=r.layerId,n=this._getLayerByLayerId(o);if(n){let m=t.get(n)||[];m.push(a),t.set(n,m)}}});let i=[];return await Promise.all(Array.from(t.keys()).map(async a=>{let r=t.get(a)??[],o=await this._queryFeatures(a,r);i.push(...o)})),await Promise.all(i.map(async a=>{let r=a.layer;if(r&&"getFeatureTitle"in r){let o=await r.getFeatureTitle(a)||u(a);return{feature:a,label:o}}return{feature:a,label:u(a)}}))}async _handleHitTestComplete(e){return this._exceedDisplayLimit=e.length>this._displayLimit,this._featuresFromHitTest=await this._populateFeaturesWithLabel(e.slice(0,this._displayLimit)),this._featuresFromHitTest.length===0?(this._handleAddSpatialCancelClick(),await Promise.reject(Error("No features found"))):(this.mode="add-spatial-feature-list",this._hitTestPromise?.reject(),this._hitTestPromise=Promise.withResolvers(),await this._hitTestPromise.promise)}_handleTraceLocationSelectEnd(e){e.stopPropagation(),this.arcgisTraceLocationSelectEnd.emit(),this._activeTraceLocationType=void 0,this.mode="default",this._handleAddSpatialCancelClick()}_handleAddSpatialCancelClick(e){e?.stopPropagation();let t=this._featuresComponentRef.value;t&&t.clear(),this._selectedFeature=void 0,this.mode="default",this._sketchViewModel?.cancel(),this._hitTestPromise?.reject(),this._hitTestPromise=null}_handleFeaturesClose(){this.mode="add-spatial-feature-list",this._selectedFeature=void 0}_handleAddSpatialAddClick(){let{_hitTestPromise:e,_featuresComponentRef:t}=this;if(e&&t?.value){let i=t.value,a=i.selectedDrillInFeature??i.selectedFeature;if(!a)return;e.resolve(a),this._hitTestPromise=null}}_handleFeatureSelectChange(e){this._selectedFeature=e,this.mode="add-spatial-feature"}renderError(e,t=!1,i){return s`<calcite-notice .closable=${t} kind=danger open scale=s width=auto .icon=${i}><div slot=message>${e}</div></calcite-notice>`}renderLoader(){return s`<calcite-loader label=loading></calcite-loader>`}renderTraceSelection(){let{_messages:e,traceConfigurations:t}=this,i=e.labels.traceConfiguration;if(t.length===0)return this.renderError(e.errors.noTraceConfigurationError,!0);let a=$(t,r=>r.globalId,r=>s`<calcite-option .value=${r.globalId}>${r.title}</calcite-option>`);return s`<calcite-block .heading=${i} .label=${i} expanded><calcite-select .label=${i} .value=${this.selectedNamedTraceConfiguration?.globalId||void 0} @calciteSelectChange=${r=>{this._selectTraceConfigurationByGuid(r.target.value)}}>${a}</calcite-select></calcite-block>`}renderUtilityNetworkSelection(){let{_messages:e}=this,t=e.labels.utilityNetwork,i=this.utilityNetworks?.map(a=>s`<calcite-option .value=${a.id}>${a.title}</calcite-option>`);return s`<calcite-block .heading=${t} .label=${t} expanded><calcite-select .label=${t} .value=${this.selectedUtilityNetwork?.id} @calciteSelectChange=${a=>{this.selectedUtilityNetwork?.id!==a.target.value&&(this.selectedUtilityNetwork=this.utilityNetworks?.find(r=>r.id===a.target.value))}}>${i}</calcite-select></calcite-block>`}renderDefaultMode(){let{_messages:e,_state:t,mode:i}=this;return s`<calcite-flow-item .selected=${i==="default"}>${t==="disabled"?this.renderError(e.errors.noMapError):this.renderContent()}</calcite-flow-item>`}renderSpatialSelectInstructions(){let{_messages:e,_activeTraceLocationType:t,mode:i}=this,a=t==="starting-point"?e.labels.addSpatial.startingPoint:t==="barrier"?e.labels.addSpatial.barrier:e.labels.addSpatial.stoppingPoint;return s`<calcite-flow-item .selected=${i==="add-spatial-instructions"} .heading=${a} @calciteFlowItemBack=${r=>this._handleAddSpatialCancelClick(r)}><div class="add-spatial-mode"><div><h5 class="heading">${e.instructions.addSpatial.selectFeature.heading}</h5>${e.instructions.addSpatial.selectFeature.subheading}</div><div><h5 class="heading">${e.instructions.addSpatial.selectAssociatedFeature.heading}</h5>${e.instructions.addSpatial.selectAssociatedFeature.subheading}</div></div></calcite-flow-item>`}renderFeaturesList(e){return s`<calcite-list label="Feature list">${e.map(this.renderFeatureListItem)}</calcite-list>`}renderHitTestResults(){let{_messages:e,_activeTraceLocationType:t,_featuresFromHitTest:i,mode:a}=this,r=t==="starting-point"?e.labels.addSpatial.startingPoint:t==="barrier"?e.labels.addSpatial.barrier:e.labels.addSpatial.stoppingPoint;return s`<calcite-flow-item .selected=${a==="add-spatial-feature-list"} .heading=${r} @calciteFlowItemBack=${o=>this._handleAddSpatialCancelClick(o)}>${this.renderFeaturesList(i)}</calcite-flow-item>`}renderSelectedFeature(){let{_selectedFeature:e}=this;if(!e)return this.mode="default",null;let t=this._featuresComponentRef.value,i=t?.selectedFeature?[t.selectedFeature]:[e];return s`<arcgis-features .referenceElement=${this.referenceElement} .features=${i} .view=${this.view} open @arcgisClose=${()=>this._handleFeaturesClose()} ${k(this._featuresComponentRef)}></arcgis-features>`}renderAddSpatialFooter(){let{mode:e,_messages:t,selectedUtilityNetwork:i,_selectedFeature:a}=this,r=U(t.warnings.exceededDisplayLimit,{limit:this._displayLimit.toString()}),o=e==="add-spatial-feature-list"&&this._exceedDisplayLimit,n=a?!(i?.isUtilityLayer(a.layer)??!0):!0;return s`${o&&s`<calcite-input-message icon=exclamation-mark-circle status=idle>${r}</calcite-input-message>`||""}<calcite-button appearance=outline width=full @click=${()=>{this._handleAddSpatialCancelClick()}} slot=footer>${t.buttons.cancel}</calcite-button>${e==="add-spatial-feature"&&s`<calcite-button width=full slot=footer appearance=solid @click=${()=>{this._handleAddSpatialAddClick()}} .disabled=${n}>${t.buttons.add}</calcite-button>`||""}`}renderStartingPointSelection(){return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=starting-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${()=>this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(h)} .traceLocations=${this._startingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`}renderStoppingPointSelection(){return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=stopping-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${()=>this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(h)} .traceLocations=${this._stoppingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`}renderBarrierSelection(){return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=barrier .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${()=>this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(h)} .traceLocations=${this._barriers} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`}renderSubnetworkNameInput(){return s`<calcite-input clearable type=text .placeholder=${this._messages.instructions.enterSubnetworkName} max-length=64 .value=${this.selectedSubnetworkName} @calciteInputInput=${e=>this.selectedSubnetworkName=e.target.value}></calcite-input><calcite-input-message icon=exclamation-mark-triangle status=idle>${this._messages.labels.tooManySubnetworks}</calcite-input-message>`}renderSubnetworkSelectList(){return s`<calcite-select .label=${this._messages.labels.subnetworkName} .value=${this.selectedSubnetworkName} @calciteSelectChange=${e=>this.selectedSubnetworkName=e.target.value}>${this.compatibleSubnetworkNames.map(e=>s`<calcite-option .value=${e}>${e}</calcite-option>`)}</calcite-select>`}renderSubnetworkSelection(){let{compatibleSubnetworkNames:e}=this,t=this._messages.labels.subnetworkName;return this.isSubnetworkNameTraceSelected?this._state==="loading"?s`<calcite-loader class="inline-loader" label=loading scale=s></calcite-loader>`:e.length?s`<calcite-block .heading=${t} .label=${t} expanded>${e.length>R?this.renderSubnetworkNameInput():this.renderSubnetworkSelectList()}</calcite-block>`:this.renderError(this._messages.errors.noCompatibleSubnetworks,!1,"exclamation-mark-triangle"):null}renderSubnetworkInfo(){let{_messages:e,selectedNamedTraceConfiguration:t,_unTraceConfiguration:i}=this;return i&&t?.traceType&&this._subnetworkTraceTypes.has(t.traceType)?s`<calcite-block id=subnetwork-info-block expanded .label=${e.labels.subnetworkInfo}><arcgis-utility-network-subnetwork-info .namedTraceConfig=${t}></arcgis-utility-network-subnetwork-info></calcite-block>`:null}renderContent(){let{utilityNetworks:e}=this,t=this.selectedNamedTraceConfiguration?.traceConfiguration;if(!e||e.length===0)return this.renderError(this._messages.errors.noUtilityNetworkError);let i=s`${this.renderTraceSelection()}${this.renderSubnetworkInfo()}${this.renderSubnetworkSelection()}`,a=this.selectedNamedTraceConfiguration?.traceType,r=!this.isSubnetworkNameTraceSelected,o=a==="path"||a==="circuit",n=s`${r?this.renderStartingPointSelection():null}${o?this.renderStoppingPointSelection():null}${this.renderBarrierSelection()}`;return s`<calcite-block-group .label=${this._messages.labels.traceInputs}>${e.length>1?this.renderUtilityNetworkSelection():null}${this.selectedUtilityNetwork?.loaded?i:this.renderLoader()}${t?n:null}</calcite-block-group>`}render(){let{mode:e}=this;return s`<calcite-panel>${e==="add-spatial-feature"?this.renderSelectedFeature():s`<calcite-flow>${this.renderDefaultMode()}${this.renderSpatialSelectInstructions()}${this.renderHitTestResults()}</calcite-flow>`}${e!=="default"?this.renderAddSpatialFooter():null}</calcite-panel>`}};S("arcgis-utility-network-trace-inputs",p);return p},"applications/Components/featureUtils","core/Collection","intl","layers/GraphicsLayer","networks/support/UNTraceConfiguration","rest/networks/support/TraceLocation","rest/support/FeatureSet","views/interactive/snapping/FeatureSnappingLayerSource","widgets/Sketch/SketchViewModel","core/reactiveUtils",a)
2
+ import a from"./GYSZA7D4.js";import{a as C,b as L}from"./MATFNQVX.js";import{a as $}from"./PJKBRX3P.js";import{a as N}from"./JUHCPSPF.js";import{g as T}from"./6IUQ5UHX.js";import"./UQKKALKO.js";import"./LEUHIPSJ.js";import{M as y,N as k,O as _,U as S,a as f,b as s,p as d,r as w,s as b,x as c}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([{queryAllJSON:v},l,{substitute:U},I,P,A,E,g,M,{watch:x},{r:u}])=>{var B=f`:host{flex-grow:1}calcite-flow{min-height:var(--arcgis-internal-panel-height-sm, 240px)}calcite-block-group{flex-grow:1;padding-bottom:var(--calcite-spacing-md);background-color:var(--calcite-color-foreground-1)}calcite-block{--calcite-block-content-space: 0;--calcite-block-border-color: transparent;margin:0}calcite-block calcite-select,calcite-block calcite-input{margin:0 var(--calcite-spacing-md)}calcite-block calcite-input-message{padding:var(--calcite-spacing-sm) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}calcite-block calcite-label:last-child{--calcite-label-margin-bottom: 0}calcite-notice{margin:var(--calcite-spacing-md)}#subnetwork-info-block{margin:var(--calcite-spacing-md) var(--calcite-spacing-md) 0 var(--calcite-spacing-md)}.inline-loader{--calcite-loader-spacing: var(--calcite-spacing-md)}.add-spatial-mode{display:flex;flex-direction:column;gap:var(--calcite-spacing-md);margin:var(--calcite-spacing-md)}.heading{color:var(--calcite-color-text-1);margin:0 0 var(--calcite-spacing-md) 0;font-size:var(--calcite-font-size);font-style:normal;font-weight:var(--calcite-font-weight-medium)}`,F=`utility-network-trace-inputs-sketch-${Date.now()}`,h=`utility-network-trace-inputs-flags-${Date.now()}`,R=20,p=class extends _{constructor(){super(...arguments),this._messages=N({blocking:!0}),this._layerIdToLayer=new Map,this._startingPoints=new l,this._barriers=new l,this._stoppingPoints=new l,this._subnetworkTraceTypes=new Set(["subnetwork","subnetwork-controller","upstream","downstream","isolation"]),this._removeDuplicateSubnetworkNames=(e,t,i)=>t===0||e.getAttribute("SUBNETWORKNAME")!==i[t-1].getAttribute("SUBNETWORKNAME"),this._hitTestPromise=null,this._featuresFromHitTest=[],this._featuresComponentRef=y(),this._displayLimit=20,this.compatibleSubnetworkNames=[],this.traceConfigurations=[],this._state="ready",this._exceedDisplayLimit=!1,this.mode="default",this.arcgisTraceInputsChange=c(),this.arcgisUtilityNetworkChange=c(),this.arcgisSelectedNamedTraceConfigurationChange=c(),this.arcgisTraceLocationSelectStart=c(),this.arcgisTraceLocationSelectEnd=c(),this.arcgisPropertyChange=T()("mode"),this.renderFeatureListItem=e=>{let{feature:t,label:i}=e;return s`<calcite-list-item .label=${i} @calciteListItemSelect=${()=>this._handleFeatureSelectChange(t)}><calcite-icon icon=chevron-right slot=content-end></calcite-icon></calcite-list-item>`}}static{this.properties={compatibleSubnetworkNames:16,subnetworksTable:16,traceConfigurations:16,utilityNetworks:16,_unTraceConfiguration:16,_state:16,_activeTraceLocationType:16,_selectedFeature:16,_exceedDisplayLimit:16,beforeTraceLocationSelectStart:0,view:0,selectedUtilityNetwork:0,selectedNamedTraceConfiguration:0,unTraceConfiguration:32,referenceElement:1,mode:3,traceLocations:32}}static{this.styles=B}get isSubnetworkNameTraceSelected(){let e=this.selectedNamedTraceConfiguration?.traceType;return!!this.selectedNamedTraceConfiguration?.traceConfiguration?.subnetworkName&&e==="subnetwork"}get selectedSubnetworkName(){return this._unTraceConfiguration?.subnetworkName??void 0}set selectedSubnetworkName(e){this._unTraceConfiguration&&(this._unTraceConfiguration.subnetworkName=e)}get _allLayers(){let{view:e}=this;return e?.map?e.map.allLayers.toArray().concat(e.map.allTables.toArray()):[]}get unTraceConfiguration(){return this._unTraceConfiguration}get traceLocations(){let e=[],t=i=>{i.flagProperties.terminalConfiguration&&i.flagProperties.selectedTerminals?i.flagProperties.selectedTerminals.forEach(a=>{e.push(new A({type:i.traceLocation.type,isFilterBarrier:i.traceLocation.isFilterBarrier,globalId:i.traceLocation.globalId,percentAlong:i.traceLocation.percentAlong,terminalId:a}))}):e.push(i.traceLocation)};return this._startingPoints.forEach(i=>t(i)),this._barriers.forEach(i=>t(i)),this._stoppingPoints.forEach(i=>t(i)),e}load(){this.manager.onLifecycle(()=>[x(()=>this.view?.map,()=>{this._setupUtilityNetwork(),this._setupSketchViewModel()},{initial:!0})])}willUpdate(e){let{utilityNetworks:t,selectedUtilityNetwork:i}=this;(e.has("utilityNetworks")||!t||t.length===0||!i||!t?.includes(i))&&this._handleUtilityNetworksChange(),e.has("selectedUtilityNetwork")&&(this.arcgisUtilityNetworkChange.emit(),this._handleSelectedUtilityNetworkChange()),e.has("selectedNamedTraceConfiguration")&&(this.arcgisTraceInputsChange.emit(),this.arcgisSelectedNamedTraceConfigurationChange.emit(),this._handleTraceConfigChange()),e.has("selectedSubnetworkName")&&this.arcgisTraceInputsChange.emit()}_clearTraceLocations(){this._getGraphicLayer(h)?.removeAll(),this._startingPoints.removeAll(),this._barriers.removeAll(),this._stoppingPoints.removeAll()}_createGraphicLayer(e){let{map:t}=this.view;if(!t?.findLayerById(e)){let i=new I({id:e,listMode:"hide",title:e});C(this.view,i)}}_getGraphicLayer(e){let{map:t}=this.view;if(t){let i=t.findLayerById(e);if(L(i))return t.reorder(i,t.layers.length-1),i}return null}_setSnappingOption(){let{_sketchViewModel:e,_unLayers:t}=this;if(e&&t&&t.length>0){let i=new l;t.forEach(a=>{a.type==="subtype-group"?a.sublayers.forEach(r=>{i.add(new g({layer:r,enabled:!0}))}):i.add(new g({layer:a,enabled:!0}))}),e.snappingOptions={enabled:!0,featureEnabled:!0,featureSources:i}}}_initializeSketchViewModel(){let{view:e,_unLayers:t}=this,i=this._getGraphicLayer(F),a=new l;return t?.forEach(r=>a.add(new g({layer:r,enabled:!0}))),new M({layer:i,view:e})}_setupSketchViewModel(){this._createGraphicLayer(F),this._createGraphicLayer(h),this._sketchViewModel=this._initializeSketchViewModel()}_clearSubnetworks(){this.selectedSubnetworkName=void 0,this.subnetworksTable=void 0,this.compatibleSubnetworkNames=[]}async _loadSubnetworksTable(){this.subnetworksTable||(this.subnetworksTable=await this.selectedUtilityNetwork?.loadSubnetworksTable())}async _querySubnetworks(){let{subnetworksTable:e}=this;if(!e)return;let t=e.createQuery();t.gdbVersion=this.selectedUtilityNetwork?.gdbVersion,t.where=this._getSubnetworkQueryWhereClause(),t.outFields=["SUBNETWORKNAME"],t.orderByFields=["SUBNETWORKNAME"];let i=E.fromJSON(await v(e,t));this.compatibleSubnetworkNames=i.features.filter(this._removeDuplicateSubnetworkNames).map(a=>a.getAttribute("SUBNETWORKNAME"))}_getSubnetworkQueryWhereClause(){let e=this._unTraceConfiguration,t=`DOMAINNETWORKNAME = '${e.domainNetworkName}'`,i=`TIERNAME = '${e.tierName}'`;return[t,i].join(" AND ")}async _handleSubnetworkTraceConfigChange(e){await this._loadSubnetworksTable(),await this._querySubnetworks();let{compatibleSubnetworkNames:t}=this;e.subnetworkName&&!t.some(i=>i===e.subnetworkName)&&(this.selectedSubnetworkName=t.at(0))}_selectTraceConfigurationByGuid(e){let t=this.selectedUtilityNetwork?.sharedNamedTraceConfigurations.find(i=>i.globalId===e);if(!t){d("error",this,"`traceConfig` not found in `selectedUtilityNetwork.sharedNamedTraceConfigurations`");return}this.selectedNamedTraceConfiguration=t}_handleTraceConfigChange(){let{selectedNamedTraceConfiguration:e}=this;if(!(e?.traceConfiguration instanceof P)){d("error",this,w("selectedNamedTraceConfiguration.traceConfiguration")),this._unTraceConfiguration=void 0;return}switch(this._unTraceConfiguration=e.traceConfiguration.clone(),e.traceType){case"subnetwork":this._state="loading",this._handleSubnetworkTraceConfigChange(this._unTraceConfiguration).finally(()=>this._state="ready");break}}async _handleSelectedUtilityNetworkChange(){await this.selectedUtilityNetwork?.load(),this._clearSubnetworks(),this._setupTraceConfigurations(),this._filterUnLayers(),this._clearTraceLocations()}_setupTraceConfigurations(){this._unTraceConfiguration=void 0,this.traceConfigurations=this.selectedUtilityNetwork?.sharedNamedTraceConfigurations.filter(e=>e.traceType!=="path"&&e.traceType!=="circuit")||[],this.selectedNamedTraceConfiguration=this.traceConfigurations.at(0)}_filterUnLayers(){let{selectedUtilityNetwork:e}=this;this._unLayers=new l(this._allLayers.filter(t=>e?.isUtilityLayer(t))),this._setSnappingOption()}_handleUtilityNetworksChange(){let{utilityNetworks:e}=this;if(!e||e.length===0){this._state="error",d("error",this,b("utilityNetworks"));return}(!this.selectedUtilityNetwork||!e.includes(this.selectedUtilityNetwork))&&(this.selectedUtilityNetwork=e.at(0))}async _setupUtilityNetwork(){if(this.view?.map){let e=this.view.map;await e.load(),this.utilityNetworks=e.utilityNetworks||void 0}else this._state="disabled",d("error",this,"The property `view.map` is required to load utility networks but is missing.")}_handleTraceLocationSelectStart(e){if(e.stopPropagation(),this.arcgisTraceLocationSelectStart.emit(e.detail).defaultPrevented){e.preventDefault();return}this._activeTraceLocationType=e?.target?.traceLocationType,this.mode="add-spatial-instructions"}_getLayerByLayerId(e){if(e==null)return;let{_layerIdToLayer:t,_unLayers:i}=this;if(t.get(e))return t.get(e);if(!i)return;let a=i.find(r=>"layerId"in r&&r.layerId===e);return a&&t.set(e,a),a}async _queryFeatures(e,t){let i=e.createQuery();i.gdbVersion=this.selectedUtilityNetwork?.gdbVersion,i.objectIds=t.map(r=>r.getObjectId()),i.outFields=["*"];let{features:a}=E.fromJSON(await v(e,i));return a.forEach(r=>{r.layer=e.type==="subtype-group"?e.findSublayerForFeature(r):e,r.origin=r.layer}),a}async _populateFeaturesWithLabel(e){let t=new Map;e.forEach(a=>{let r=a.layer?.type==="subtype-sublayer"?a.layer.parent:a.layer;if(r){let o=r.layerId,n=this._getLayerByLayerId(o);if(n){let m=t.get(n)||[];m.push(a),t.set(n,m)}}});let i=[];return await Promise.all(Array.from(t.keys()).map(async a=>{let r=t.get(a)??[],o=await this._queryFeatures(a,r);i.push(...o)})),await Promise.all(i.map(async a=>{let r=a.layer;if(r&&"getFeatureTitle"in r){let o=await r.getFeatureTitle(a)||u(a);return{feature:a,label:o}}return{feature:a,label:u(a)}}))}async _handleHitTestComplete(e){return this._exceedDisplayLimit=e.length>this._displayLimit,this._featuresFromHitTest=await this._populateFeaturesWithLabel(e.slice(0,this._displayLimit)),this._featuresFromHitTest.length===0?(this._handleAddSpatialCancelClick(),await Promise.reject(Error("No features found"))):(this.mode="add-spatial-feature-list",this._hitTestPromise?.reject(),this._hitTestPromise=Promise.withResolvers(),await this._hitTestPromise.promise)}_handleTraceLocationSelectEnd(e){e.stopPropagation(),this.arcgisTraceLocationSelectEnd.emit(),this._activeTraceLocationType=void 0,this.mode="default",this._handleAddSpatialCancelClick()}_handleAddSpatialCancelClick(e){e?.stopPropagation();let t=this._featuresComponentRef.value;t&&t.clear(),this._selectedFeature=void 0,this.mode="default",this._sketchViewModel?.cancel(),this._hitTestPromise?.reject(),this._hitTestPromise=null}_handleFeaturesClose(){this.mode="add-spatial-feature-list",this._selectedFeature=void 0}_handleAddSpatialAddClick(){let{_hitTestPromise:e,_featuresComponentRef:t}=this;if(e&&t?.value){let i=t.value,a=i.selectedDrillInFeature??i.selectedFeature;if(!a)return;e.resolve(a),this._hitTestPromise=null}}_handleFeatureSelectChange(e){this._selectedFeature=e,this.mode="add-spatial-feature"}renderError(e,t=!1,i){return s`<calcite-notice .closable=${t} kind=danger open scale=s width=auto .icon=${i}><div slot=message>${e}</div></calcite-notice>`}renderLoader(){return s`<calcite-loader label=loading></calcite-loader>`}renderTraceSelection(){let{_messages:e,traceConfigurations:t}=this,i=e.labels.traceConfiguration;if(t.length===0)return this.renderError(e.errors.noTraceConfigurationError,!0);let a=$(t,r=>r.globalId,r=>s`<calcite-option .value=${r.globalId}>${r.title}</calcite-option>`);return s`<calcite-block .heading=${i} .label=${i} expanded><calcite-select .label=${i} .value=${this.selectedNamedTraceConfiguration?.globalId||void 0} @calciteSelectChange=${r=>{this._selectTraceConfigurationByGuid(r.target.value)}}>${a}</calcite-select></calcite-block>`}renderUtilityNetworkSelection(){let{_messages:e}=this,t=e.labels.utilityNetwork,i=this.utilityNetworks?.map(a=>s`<calcite-option .value=${a.id}>${a.title}</calcite-option>`);return s`<calcite-block .heading=${t} .label=${t} expanded><calcite-select .label=${t} .value=${this.selectedUtilityNetwork?.id} @calciteSelectChange=${a=>{this.selectedUtilityNetwork?.id!==a.target.value&&(this.selectedUtilityNetwork=this.utilityNetworks?.find(r=>r.id===a.target.value))}}>${i}</calcite-select></calcite-block>`}renderDefaultMode(){let{_messages:e,_state:t,mode:i}=this;return s`<calcite-flow-item .selected=${i==="default"}>${t==="disabled"?this.renderError(e.errors.noMapError):this.renderContent()}</calcite-flow-item>`}renderSpatialSelectInstructions(){let{_messages:e,_activeTraceLocationType:t,mode:i}=this,a=t==="starting-point"?e.labels.addSpatial.startingPoint:t==="barrier"?e.labels.addSpatial.barrier:e.labels.addSpatial.stoppingPoint;return s`<calcite-flow-item .selected=${i==="add-spatial-instructions"} .heading=${a} @calciteFlowItemBack=${r=>this._handleAddSpatialCancelClick(r)}><div class="add-spatial-mode"><div><h5 class="heading">${e.instructions.addSpatial.selectFeature.heading}</h5>${e.instructions.addSpatial.selectFeature.subheading}</div><div><h5 class="heading">${e.instructions.addSpatial.selectAssociatedFeature.heading}</h5>${e.instructions.addSpatial.selectAssociatedFeature.subheading}</div></div></calcite-flow-item>`}renderFeaturesList(e){return s`<calcite-list label="Feature list">${e.map(this.renderFeatureListItem)}</calcite-list>`}renderHitTestResults(){let{_messages:e,_activeTraceLocationType:t,_featuresFromHitTest:i,mode:a}=this,r=t==="starting-point"?e.labels.addSpatial.startingPoint:t==="barrier"?e.labels.addSpatial.barrier:e.labels.addSpatial.stoppingPoint;return s`<calcite-flow-item .selected=${a==="add-spatial-feature-list"} .heading=${r} @calciteFlowItemBack=${o=>this._handleAddSpatialCancelClick(o)}>${this.renderFeaturesList(i)}</calcite-flow-item>`}renderSelectedFeature(){let{_selectedFeature:e}=this;if(!e)return this.mode="default",null;let t=this._featuresComponentRef.value,i=t?.selectedFeature?[t.selectedFeature]:[e];return s`<arcgis-features .referenceElement=${this.referenceElement} .features=${i} .view=${this.view} open @arcgisClose=${()=>this._handleFeaturesClose()} ${k(this._featuresComponentRef)}></arcgis-features>`}renderAddSpatialFooter(){let{mode:e,_messages:t,selectedUtilityNetwork:i,_selectedFeature:a}=this,r=U(t.warnings.exceededDisplayLimit,{limit:this._displayLimit.toString()}),o=e==="add-spatial-feature-list"&&this._exceedDisplayLimit,n=a?!(i?.isUtilityLayer(a.layer)??!0):!0;return s`${o&&s`<calcite-input-message icon=exclamation-mark-circle status=idle>${r}</calcite-input-message>`||""}<calcite-button appearance=outline width=full @click=${()=>{this._handleAddSpatialCancelClick()}} slot=footer>${t.buttons.cancel}</calcite-button>${e==="add-spatial-feature"&&s`<calcite-button width=full slot=footer appearance=solid @click=${()=>{this._handleAddSpatialAddClick()}} .disabled=${n}>${t.buttons.add}</calcite-button>`||""}`}renderStartingPointSelection(){return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=starting-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${()=>this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(h)} .traceLocations=${this._startingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`}renderStoppingPointSelection(){return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=stopping-point .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${()=>this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(h)} .traceLocations=${this._stoppingPoints} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`}renderBarrierSelection(){return s`<arcgis-utility-network-trace-location .view=${this.view} trace-location-type=barrier .beforeTraceLocationSelectStart=${this.beforeTraceLocationSelectStart} @arcgisTraceLocationSelectStart=${this._handleTraceLocationSelectStart} @arcgisTraceLocationSelectEnd=${this._handleTraceLocationSelectEnd} @arcgisTraceLocationChange=${()=>this.arcgisTraceInputsChange.emit()} .sketchViewModel=${this._sketchViewModel} .utilityNetwork=${this.selectedUtilityNetwork} .filterLayers=${this._unLayers} .flagLayer=${this._getGraphicLayer(h)} .traceLocations=${this._barriers} .afterHitTest=${this._handleHitTestComplete.bind(this)}></arcgis-utility-network-trace-location>`}renderSubnetworkNameInput(){return s`<calcite-input clearable type=text .placeholder=${this._messages.instructions.enterSubnetworkName} max-length=64 .value=${this.selectedSubnetworkName} @calciteInputInput=${e=>this.selectedSubnetworkName=e.target.value}></calcite-input><calcite-input-message icon=exclamation-mark-triangle status=idle>${this._messages.labels.tooManySubnetworks}</calcite-input-message>`}renderSubnetworkSelectList(){return s`<calcite-select .label=${this._messages.labels.subnetworkName} .value=${this.selectedSubnetworkName} @calciteSelectChange=${e=>this.selectedSubnetworkName=e.target.value}>${this.compatibleSubnetworkNames.map(e=>s`<calcite-option .value=${e}>${e}</calcite-option>`)}</calcite-select>`}renderSubnetworkSelection(){let{compatibleSubnetworkNames:e}=this,t=this._messages.labels.subnetworkName;return this.isSubnetworkNameTraceSelected?this._state==="loading"?s`<calcite-loader class="inline-loader" label=loading scale=s></calcite-loader>`:e.length?s`<calcite-block .heading=${t} .label=${t} expanded>${e.length>R?this.renderSubnetworkNameInput():this.renderSubnetworkSelectList()}</calcite-block>`:this.renderError(this._messages.errors.noCompatibleSubnetworks,!1,"exclamation-mark-triangle"):null}renderSubnetworkInfo(){let{_messages:e,selectedNamedTraceConfiguration:t,_unTraceConfiguration:i}=this;return i&&t?.traceType&&this._subnetworkTraceTypes.has(t.traceType)?s`<calcite-block id=subnetwork-info-block expanded .label=${e.labels.subnetworkInfo}><arcgis-utility-network-subnetwork-info .namedTraceConfig=${t}></arcgis-utility-network-subnetwork-info></calcite-block>`:null}renderContent(){let{utilityNetworks:e}=this,t=this.selectedNamedTraceConfiguration?.traceConfiguration;if(!e||e.length===0)return this.renderError(this._messages.errors.noUtilityNetworkError);let i=s`${this.renderTraceSelection()}${this.renderSubnetworkInfo()}${this.renderSubnetworkSelection()}`,a=this.selectedNamedTraceConfiguration?.traceType,r=!this.isSubnetworkNameTraceSelected,o=a==="path"||a==="circuit",n=s`${r?this.renderStartingPointSelection():null}${o?this.renderStoppingPointSelection():null}${this.renderBarrierSelection()}`;return s`<calcite-block-group .label=${this._messages.labels.traceInputs}>${e.length>1?this.renderUtilityNetworkSelection():null}${this.selectedUtilityNetwork?.loaded?i:this.renderLoader()}${t?n:null}</calcite-block-group>`}render(){let{mode:e}=this;return s`<calcite-panel>${e==="add-spatial-feature"?this.renderSelectedFeature():s`<calcite-flow>${this.renderDefaultMode()}${this.renderSpatialSelectInstructions()}${this.renderHitTestResults()}</calcite-flow>`}${e!=="default"?this.renderAddSpatialFooter():null}</calcite-panel>`}};S("arcgis-utility-network-trace-inputs",p);return p},"applications/Components/featureUtils","core/Collection","intl","layers/GraphicsLayer","networks/support/UNTraceConfiguration","rest/networks/support/TraceLocation","rest/support/FeatureSet","views/interactive/snapping/FeatureSnappingLayerSource","widgets/Sketch/SketchViewModel","core/reactiveUtils",a)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import{a as V}from"./SX4N3DR3.js";import{a as N}from"./FEY5WPXT.js";import{a as L}from"./26SX6MF4.js";import"./VEYJ5V4O.js";import{a as z}from"./2VP56JYP.js";import"./DHVEHATY.js";import b from"./WWASOGVO.js";import{h as A}from"./LT6PKSRL.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import{b as F}from"./LEUHIPSJ.js";import{B as I,N as _,O as C,P as D,R as w,U,a as T,b as a,x as f}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([q,E,v,Z,j,,H,{property:g,subclass:G},{isHTTPSProtocol:b,isDataProtocol:y},{formatDate:P,convertDateFormatToIntlOptions:R},{watch:B},{a:O}])=>{var M=Object.defineProperty,J=Object.getOwnPropertyDescriptor,h=(l,t,e,i)=>{for(var r=i>1?void 0:i?J(t,e):t,o=l.length-1,n;o>=0;o--)(n=l[o])&&(r=(i?n(t,e,r):n(r))||r);return i&&r&&M(t,e,r),r},d=class extends H{constructor(l){super(l)}get editedBookmark(){let{bookmark:l}=this;return l?this._get("editedBookmark")||l.clone():null}get customUrl(){if(this._customUrl)return this._customUrl;let l=this.editedBookmark?.thumbnail?.url??"";return l??(b(l)?l:null)}set customUrl(l){this._customUrl=l}get screenshotUrl(){if(this._screenshotUrl)return this._screenshotUrl;let l=this.editedBookmark?.thumbnail?.url??"";return l??(y(l)?l:null)}set screenshotUrl(l){this._screenshotUrl=l}get state(){return this._get("state")}set state(l){this.validationState=void 0,this.creatingBookmark=void 0,this._set("state",l)}get thumbnailState(){if(this._thumbnailState)return this._thumbnailState;let l=this.editedBookmark?.thumbnail?.url;return l?b(l)?"url":"screenshot":"none"}set thumbnailState(l){this._thumbnailState=l}};h([g()],d.prototype,"bookmark",2);h([g({readOnly:!0})],d.prototype,"editedBookmark",1);h([g()],d.prototype,"_customUrl",2);h([g()],d.prototype,"customUrl",1);h([g()],d.prototype,"_screenshotUrl",2);h([g()],d.prototype,"screenshotUrl",1);h([g()],d.prototype,"state",1);h([g()],d.prototype,"_thumbnailState",2);h([g()],d.prototype,"thumbnailState",1);h([g()],d.prototype,"validationState",2);h([g()],d.prototype,"creatingBookmark",2);d=h([G("UserState")],d);var K=T`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-hidden{display:none!important}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}:host{display:flex}.root{width:100%;overflow:hidden auto;transition:max-height .25s ease-in-out}:host([closed]) .root{display:none}.empty{display:flex;flex-flow:column wrap;align-items:center;padding:var(--calcite-spacing-md) var(--calcite-spacing-lg);text-align:center;color:var(--calcite-color-text-1)}.root .arcgis-widget__content--empty{background-color:var(--calcite-color-foreground-2)}.root calcite-flow-item[loading]{min-height:150px}.loader{margin-inline-end:0}.filter-no-results{padding:var(--calcite-spacing-md) var(--calcite-spacing-lg)}.bookmark-image-container{display:flex;position:relative;margin:0;margin-inline-start:var(--calcite-spacing-xs);min-width:16px;min-height:16px}.bookmark-image-container .bookmark-image{max-width:64px;overflow:hidden}.drag-enabled .bookmark-image-container{margin-inline-start:0}.no-bookmarks-heading{margin:0;margin-block-start:var(--calcite-spacing-md);font-size:var(--calcite-font-size-md);line-height:var(--calcite-font-line-height-relative-tight);font-weight:var(--calcite-font-weight-regular)}.authoring{display:flex;flex-direction:column}.authoring-image-container{display:flex;align-items:middle;justify-content:center;margin-block-end:var(--calcite-spacing-md);margin-inline-end:var(--calcite-spacing-lg);background-image:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%);background-position:0 0,10px 10px;background-size:20px 20px;background-color:#fff;width:128px;height:128px;text-align:center}.authoring-image-container .bookmark-image{max-width:128px;max-height:128px}.form{display:flex;height:100%}.form-content{padding-block:var(--calcite-spacing-md);padding-inline:var(--calcite-spacing-lg)}.authoring-refresh-thumbnail-button{margin-block-end:var(--calcite-spacing-md)}.bookmark-content-label{color:var(--calcite-color-text-1);font-size:var(--calcite-font-size-sm);line-height:var(--calcite-font-line-height-relative-normal)}.bookmark-content calcite-table{margin-inline-start:-.25rem}.bookmark-content calcite-table,.bookmark-content calcite-table-row{--calcite-table-border-color: transparent;--calcite-color-text-1: var(--calcite-color-text-3);--calcite-table-row-background-color: transparent;pointer-events:none}`,Q=E.ofType(q),W={width:128,height:128,format:"png"},$={takeScreenshot:!0,captureViewpoint:!0,captureRotation:!0,captureScale:!0,captureTimeExtent:!0},S=class extends C{constructor(){super(...arguments),this._bookmarks=null,this._defaultCreateOptions={...$},this._defaultEditOptions={...$},this._defaultBookmarks=new Q,this._guid=I(),this._addInputNode=null,this._editInputNode=null,this._urlEditInputNode=null,this._lastDragDetail=null,this.messages=z({}),this._storeEditFlowItemNode=t=>{this._editFlowItemEl=t},this._storeRootFlowItem=t=>{this._rootFlowItemEl=t},this._storeAddFlowItemNode=t=>{this._addFlowItemEl=t},this._activeBookmark=null,this._userState=null,this._userCreatingBookmark=!1,this.editIncludeTimeExtent=!1,this.view=O(this),this.icon="bookmark",this.closed=!1,this.disabled=!1,this.dragEnabled=!1,this.filterPlaceholder="",this.filterText="",this.headingLevel=2,this.showAddBookmarkButton=!1,this.showCloseButton=!1,this.showCollapseButton=!1,this.showEditBookmarkButton=!1,this.showFilter=!1,this.showHeading=!1,this.hideThumbnail=!1,this.hideTime=!1,this.timeDisabled=!1,this.autoDestroyDisabled=!1,this.state=this._state,this.arcgisBookmarkEdit=f(),this.arcgisBookmarkSelect=f(),this.arcgisPropertyChange=A()("state"),this.arcgisReady=f(),this.arcgisClose=f()}static{this.properties={_activeBookmark:16,_userState:16,_userStateValue:16,_userValidationState:16,_userThumbnailState:16,_userCreatingBookmark:16,editIncludeTimeExtent:16,_state:16,view:0,referenceElement:1,icon:1,closed:7,defaultCreateOptions:0,defaultEditOptions:0,bookmarks:[1,{type:E}],disabled:5,dragEnabled:5,filterPlaceholder:1,filterText:1,headingLevel:9,goToOverride:0,showAddBookmarkButton:5,showCloseButton:5,showCollapseButton:5,showEditBookmarkButton:5,showFilter:5,showHeading:5,hideThumbnail:5,hideTime:5,timeDisabled:5,autoDestroyDisabled:5,messageOverrides:0,label:1,state:32}}static{this.styles=K}get _state(){let{view:t}=this;return t&&!t.ready?"loading":"ready"}get defaultCreateOptions(){return this._defaultCreateOptions}set defaultCreateOptions(t){this._defaultCreateOptions={...$,...t}}get defaultEditOptions(){return this._defaultEditOptions}set defaultEditOptions(t){this._defaultEditOptions={...$,...t}}get bookmarks(){return this._bookmarks??this.view?.map?.bookmarks??this._defaultBookmarks}set bookmarks(t){this._bookmarks=E.isCollection(t)?t:new E(t)}async destroy(){await this.manager.destroy(),this._activeBookmark=null}goTo(t){let{view:e}=this;if(!e)throw new v("go-to:invalid-view","Cannot go to a bookmark without a view");let i=t?.viewpoint;if(!i)throw new v("go-to:invalid-bookmark","Cannot go to a bookmark that does not contain a 'viewpoint'.",{bookmark:t});this._activeBookmark=t;let r=V({target:i},e,this.goToOverride),o=t?.timeExtent;return!this.timeDisabled&&o&&(e.timeExtent=o),this.arcgisBookmarkSelect.emit({bookmark:t}),r.catch().then(()=>this._activeBookmark=null),r}loaded(){this.manager.onLifecycle(()=>[B(()=>this._userState?.state,t=>this._userStateValue=t,{initial:!0}),B(()=>this._userState?.validationState,t=>this._userValidationState=t,{initial:!0}),B(()=>this._userState?.thumbnailState,t=>this._userThumbnailState=t,{initial:!0}),B(()=>this._userState?.creatingBookmark,t=>this._userCreatingBookmark=!!t,{initial:!0})])}async _createBookmark(t){let{view:e,defaultCreateOptions:i}=this;if(!e)throw new v("create-bookmark:invalid-view","Cannot create a bookmark without a view.");let{takeScreenshot:r,screenshotSettings:o,captureViewpoint:n,captureRotation:s,captureScale:m,captureTimeExtent:u}={...i,...t},c=r?await this._createThumbnail(o):void 0,p=!this.timeDisabled&&u&&e.timeExtent!=null?e.timeExtent.clone():void 0;return new q({...c&&{thumbnail:c},...u&&{timeExtent:p},...n&&{viewpoint:this._createViewpoint({view:e,captureScale:m,captureRotation:s})}})}async _editBookmark(t,e){if(!t)return t;let{view:i,defaultEditOptions:r}=this;if(!i)throw new v("edit-bookmark:invalid-view","Cannot edit a bookmark without a view.");let{takeScreenshot:o,screenshotSettings:n,captureViewpoint:s,captureRotation:m,captureScale:u,captureTimeExtent:c}={...r,...e},p=o?await this._createThumbnail(n):void 0;return p&&(t.thumbnail=p),s&&(t.viewpoint=this._createViewpoint({view:i,captureScale:u,captureRotation:m})),c&&i.timeExtent!=null&&(t.timeExtent=i.timeExtent.clone()),this.arcgisBookmarkEdit.emit({bookmark:t}),t}async _createThumbnail(t){let{view:e}=this;if(!e)throw new v("bookmark:invalid-view","Cannot create slide thumbnail without a view");let i=await e.takeScreenshot({...W,...t});return new Z({url:i.dataUrl})}_createViewpoint({view:t,captureRotation:e,captureScale:i}){let r=t.viewpoint?.clone();return new j({targetGeometry:t.extent?.clone(),rotation:(e?r?.rotation:null)??0,scale:(i?r?.scale:null)??0})}_handleClose(){this.closed=!0,this.arcgisClose.emit()}startAddBookmark(){this._userState=new d({state:"add"}),requestAnimationFrame(()=>{this._addFlowItemEl?.setFocus()})}_clearState(){this._userState=null}_getTimeExtentStrings(t){let{hideTime:e}=this,{timeExtent:i}=t;if(!i)return{};let{start:r,end:o}=i,n=o!=null&&(r==null||r.getTime()!==o.getTime()),s=r?this._formatDate(r):"",m=r&&!e?this._formatTime(r):"";if(!n)return{startDate:s,startTime:m};let u=this._formatDate(o),c=e?"":this._formatTime(o);return{startDate:s,startTime:m,endDate:u,endTime:c}}_handleUrlEditInputChange(){let{_userState:t,_urlEditInputNode:e}=this,i=e?.value;if(!t?.editedBookmark||!i)return;t.validationState=void 0,y(t.editedBookmark.thumbnail?.url??"")&&(t.screenshotUrl=t.editedBookmark.thumbnail?.url);let r={url:i};b(r.url)&&(t.customUrl=i,t.editedBookmark.thumbnail=r)}_getBookmarkTitle(t){return(t?.name||this.messages.untitled)??""}_formatDate(t){if(!t)return"";let e=this.view,i=e&&"timeZone"in e?e.timeZone:"system";return P(t,{...R("short-date"),timeZone:i})}_formatTime(t){if(!t)return"";let e=this.view,i=e&&"timeZone"in e?e.timeZone:"system";return P(t,{...R("long-time"),timeZone:i})}_onCalciteListOrderChange(t){let{_lastDragDetail:e,bookmarks:i}=this,{toEl:r,fromEl:o,dragEl:n,newIndex:s}=t;if(!i.length)return;let m=e?.newIndex===s&&e?.dragEl===n&&e?.toEl===r&&e?.fromEl===o;if(!o||!r||m)return;this._lastDragDetail=t;let u=Array.from(o.children).filter(c=>c?.matches("calcite-list-item")).map(c=>c.value);i.sort((c,p)=>{let x=u.indexOf(c.uid),k=u.indexOf(p.uid);return x>k?1:x<k?-1:0})}_endAddBookmark(){this._clearState(),this._focusRootFlowItem()}_showEditBookmarkForm(t){t&&(this.editIncludeTimeExtent=!!t.timeExtent,this._userState=new d({bookmark:t,state:"edit"}),requestAnimationFrame(()=>{this._editFlowItemEl?.setFocus()}),this.goTo(t))}async _createNewScreenshotUrl(){return(await this._createBookmark()).thumbnail?.url??null}_storeCurrentUrl(){let{_userState:t}=this,e=t?.editedBookmark?.thumbnail?.url;e&&(b(e)?t.customUrl=e:y(e)&&(t.screenshotUrl=e))}async _handleThumbnailTypeSelect(t){let{_userState:e}=this;if(!e)return;let{screenshotUrl:i,customUrl:r,editedBookmark:o}=e,n=t==="screenshot"?i??await this._createNewScreenshotUrl():t==="url"&&r?r:null;this._storeCurrentUrl(),o&&n&&(o.thumbnail={url:n}),e.validationState=void 0,e.thumbnailState=t}_focusRootFlowItem(){requestAnimationFrame(()=>{this._rootFlowItemEl?.setFocus()})}_closeEditBookmarkForm(){this._clearState(),this._focusRootFlowItem()}_addBookmarkSubmitClick(t){t.preventDefault(),this._addBookmarkSubmit()}async _addBookmarkSubmit(){let{_addInputNode:t,_userState:e,bookmarks:i}=this;if(!e)return;let r=t?t.value.trim():null;if(!r){e.validationState="name-required";return}e.creatingBookmark=!0;let o=await this._createBookmark();o.name=r,i.add(o),this._endAddBookmark()}async _editBookmarkAndClose(t,e){let{defaultEditOptions:i}=this;await this._editBookmark(t,{...i,...e}),this._closeEditBookmarkForm()}_editBookmarkSubmit(t){t.preventDefault();let{_userState:e,_editInputNode:i,editIncludeTimeExtent:r,_urlEditInputNode:o}=this;if(!e?.bookmark||!e.editedBookmark)return;e.validationState=void 0,e.customUrl=void 0,e.screenshotUrl=void 0;let n=i?.value.trim();if(!n){e.validationState="name-required";return}if(e.bookmark.name=n,e.bookmark.thumbnail=e.editedBookmark.thumbnail,r||(e.bookmark.timeExtent=null),e.thumbnailState==="url"&&o){let s={url:o.value};if(!b(s.url)){e.validationState="absolute-url-required";return}e.bookmark.thumbnail=s}else e.thumbnailState==="none"&&(e.bookmark.thumbnail=null);this._editBookmarkAndClose(e.bookmark,{takeScreenshot:!1,captureTimeExtent:r})}_storeEditInput(t){this._editInputNode=t}_storeAddInput(t){this._addInputNode=t}_storeUrlEditInput(t){this._urlEditInputNode=t}_deleteBookmark(t){this._closeEditBookmarkForm(),t&&(this.bookmarks.remove(t),t.destroy())}_goToBookmark(t){this._clearState(),this.goTo(t)}async _updateThumbnail(){let{_userState:t}=this;t&&(t.validationState=void 0,await this._editBookmark(t.editedBookmark,{takeScreenshot:!0,captureViewpoint:!1,captureRotation:!1,captureScale:!1,captureTimeExtent:!1}))}_handleCalciteListDragEnd(t){let{fromEl:e,dragEl:i,oldIndex:r}=t;e.insertBefore(i,e.children[r])}render(){return a`<div class="root">${this._renderBookmarksContainer()}</div>`}_renderNoBookmarksContainer(t){let{messages:e,_state:i}=this;return!t.length&&i!=="loading"?a`<div class="empty"><calcite-icon .icon=${this.icon} scale=l></calcite-icon>${L({class:"no-bookmarks-heading",level:this.headingLevel,children:e.noBookmarksHeading})}<p class="no-bookmarks-description">${e.noBookmarksDescription}</p></div>`:null}_renderEditBookmarkFlowItems(){let t=this._userStateValue==="edit",e=this._userState?.editedBookmark;return!e||!t?[]:this._renderEditingBookmark(e)}_renderBookmarkItems(t){return t?t.toArray().map(e=>this._renderBookmark(e)):[]}_renderBookmarksContainer(){let{_state:t,bookmarks:e,dragEnabled:i,messages:r,disabled:o,filterPlaceholder:n,filterText:s,closed:m,headingLevel:u}=this,c=e.filter(k=>k!=null),p=c.length?a`<calcite-list class="list" display-mode=flat .dragEnabled=${i} .filterEnabled=${this.showFilter} .filterPlaceholder=${n} .filterProps=${["label","description","metadata"]} .filterText=${s} .group=${`bookmarks-${this._guid}`} .label=${r.componentLabel??""} selection-appearance=border selection-mode=none @calciteListDragEnd=${k=>this._handleCalciteListDragEnd(k.detail)} @calciteListFilter=${k=>this.filterText=k.currentTarget?.filterText??""} @calciteListOrderChange=${k=>this._onCalciteListOrderChange(k.detail)}>${this._renderBookmarkItems(c)}${this.showFilter?a`<div class="filter-no-results" slot=filter-no-results><calcite-notice kind=info open width=full><div slot=message>${r.noBookmarksHeading}</div>;</calcite-notice></div>`:null}</calcite-list>`:null,x=[a`<calcite-flow-item .closable=${this.showCloseButton} .closed=${m} .collapsible=${this.showCollapseButton} .disabled=${o} .heading=${this.showHeading?r.componentLabel:void 0} .headingLevel=${u} .loading=${t==="loading"} .selected=${!this._userStateValue} @calciteFlowItemClose=${this._handleClose} ${_(this._storeRootFlowItem)}>${this._renderNoBookmarksContainer(c)}${p}${this._renderAddBookmarkButton()}</calcite-flow-item>`,this._renderAddingBookmark(),this._renderEditBookmarkFlowItems()];return m?null:a`<calcite-flow>${x}</calcite-flow>`}_renderAddBookmarkButton(){let{messages:t,disabled:e,view:i,_state:r}=this,o=this._userCreatingBookmark;return i&&r!=="loading"&&this.showAddBookmarkButton?a`<calcite-fab appearance=outline-fill class="add-bookmark-button" .disabled=${e||o} icon=plus kind=neutral .loading=${o} @click=${this.startAddBookmark} slot=fab .text=${t.addBookmark} text-enabled title=${t.addBookmark??w}></calcite-fab>`:null}_renderEditContainer(t){let{messages:e}=this,i=`${e.edit} ${this._getBookmarkTitle(t)}`;return this.showEditBookmarkButton?a`<calcite-action icon=pencil @click=${()=>this._showEditBookmarkForm(t)} slot=actions-end .text=${i} title=${i??w}></calcite-action>`:null}_renderBookmarkImage(t,e){return e?a`<img alt class="bookmark-image" src=${t.thumbnail?.url??w}>`:null}_renderBookmarkTimeSwitch(t){let{messages:e,view:i}=this,{timeExtent:r}=t;return i?.timeExtent??r?a`<calcite-label layout=inline-space-between>${e.includeTimeExtent}<calcite-switch .checked=${!!r} @calciteSwitchChange=${o=>{this.editIncludeTimeExtent=o.currentTarget.checked}}></calcite-switch></calcite-label>`:null}_renderEditBookmarkTimeExtent(t){return this.editIncludeTimeExtent?this._renderBookmarkTimeExtent(t):null}_renderTimeExtentDescription(t){let{startDate:e,startTime:i,endDate:r,endTime:o}=this._getTimeExtentStrings(t);if(!e)return"";let n=`${e} ${i}`,s=`${r} ${o}`;return r?`${n} - ${s}`:n}_renderBookmarkTimeExtent(t,e=!1){let{messages:i}=this,{startDate:r,startTime:o,endDate:n,endTime:s}=this._getTimeExtentStrings(t),m=e?null:a`<calcite-table-row slot=table-header><calcite-table-header .heading=${i.startDate}></calcite-table-header>${n?a`<calcite-table-header .heading=${i.endDate}></calcite-table-header>`:null}</calcite-table-row>`;return r?a`<calcite-table .caption=${i.timeExtent??""} scale=s>${m}<calcite-table-row><calcite-table-cell>${r} ${o?[a`<br>`,o]:null}</calcite-table-cell>${n?a`<calcite-table-cell>${n}${s?[a`<br>`,s]:null}</calcite-table-cell>`:null}</calcite-table-row></calcite-table>`:null}_renderBookmarkActiveScrim(t,e){return this._activeBookmark===t&&e?a`<calcite-scrim loading></calcite-scrim>`:null}_renderBookmarkActiveLoader(t,e){return this._activeBookmark===t&&!e?a`<calcite-loader class="loader" inline .label=${this.messages.loading??""}></calcite-loader>`:null}_renderBookmarkImageIcon(t,e){return this._activeBookmark!==t&&!e?a`<calcite-icon icon=bookmark scale=s></calcite-icon>`:null}_renderBookmarkThumbnail(t){let e=!this.hideThumbnail&&!!t.thumbnail?.url;return a`<div class="bookmark-image-container" slot=content-start>${this._renderBookmarkActiveScrim(t,e)}${this._renderBookmarkImage(t,e)}${this._renderBookmarkActiveLoader(t,e)}${this._renderBookmarkImageIcon(t,e)}</div>`}_renderBookmark(t){return N(t.uid,a`<calcite-list-item class=${D(F({"drag-enabled":this.dragEnabled}))} .description=${this._renderTimeExtentDescription(t)} .label=${this._getBookmarkTitle(t)} .value=${t.uid} @calciteListItemSelect=${()=>this._goToBookmark(t)}>${this._renderBookmarkThumbnail(t)}${this._renderBookmarkContent(t)}${this._renderEditContainer(t)}</calcite-list-item>`)}_renderBookmarkContent(t){return a`<div class="bookmark-content" slot=content><span class="bookmark-content-label">${this._getBookmarkTitle(t)}</span>${this._renderBookmarkTimeExtent(t,!0)}</div>`}_renderEditingBookmarkName(t){let{messages:e}=this,i=this._userValidationState==="name-required";return a`<calcite-label>${e.title}<calcite-input class="edit-bookmark-input" name=bookmark-name .placeholder=${e.titlePlaceholder} required type=text .value=${t.name} ${_(this._storeEditInput)}></calcite-input>${i?a`<calcite-input-message icon=exclamation-mark-triangle status=invalid>${e.invalidTitle}</calcite-input-message>`:null}</calcite-label>`}_renderEditingBookmarkActions(){let{messages:t,_userState:e}=this,i=e?.bookmark;return[a`<calcite-button appearance=transparent kind=danger @click=${()=>this._deleteBookmark(i)} slot=footer type=button width=full>${t.delete}</calcite-button>`,a`<calcite-button appearance=outline @click=${this._closeEditBookmarkForm} slot=footer type=button width=full>${t.cancel}</calcite-button>`,a`<calcite-button slot=footer type=submit width=full>${t.save}</calcite-button>`]}_renderEditingTimeExtent(t){let{view:e}=this,{timeExtent:i}=t;return!this.timeDisabled&&(e?.timeExtent??i)?a`<div>${this._renderBookmarkTimeSwitch(t)}${this._renderEditBookmarkTimeExtent(t)}</div>`:null}_renderEditingBookmarkImage(t){let{_userThumbnailState:e}=this,i=t.thumbnail?.url??"",r=b(i)?e==="url":y(i)?e==="screenshot":null;if(r)return this._renderBookmarkImage(t,r)}_renderEditingThumbnail(t){let{_userThumbnailState:e,hideThumbnail:i}=this;return!i&&e!=="none"?a`<div class="authoring-image-container">${this._renderEditingBookmarkImage(t)}</div>`:null}_renderUpdateThumbnailButton(){let{hideThumbnail:t,messages:e,_userThumbnailState:i}=this;return!t&&i==="screenshot"?a`<calcite-button appearance=outline class="authoring-refresh-thumbnail-button" icon-start=refresh kind=neutral @click=${()=>void this._updateThumbnail()} width=full>${e.updateThumbnail}</calcite-button>`:null}_renderEditingBookmarkUrlInput(t){let{messages:e,_userValidationState:i,_userThumbnailState:r}=this,o=t.thumbnail?.url??"",n=b(o)?o:void 0,s=o&&i==="absolute-url-required";return r==="url"?a`<calcite-label><calcite-input name=bookmark-thumbnail-url pattern=https://.* .placeholder=${e?`https://<${e.imageUrlPlaceholder}>`:void 0} required title=${e.imageUrlTooltip??w} type=text .value=${n} @calciteInputChange=${this._handleUrlEditInputChange} @calciteInputInput=${this._handleUrlEditInputChange} ${_(this._storeUrlEditInput)}></calcite-input>${s?a`<calcite-input-message icon=exclamation-mark-triangle status=invalid>${e.invalidImageUrl}</calcite-input-message>`:null}</calcite-label>`:null}_renderThumbnailSelector(){let{hideThumbnail:t,messages:e,_userThumbnailState:i}=this;return t?null:a`<calcite-label>${e.thumbnail}<calcite-chip-group .label=${e.thumbnail??""} selection-mode=single-persist @calciteChipGroupSelect=${r=>this._handleThumbnailTypeSelect(r.currentTarget.selectedItems[0].value)}><calcite-chip .label=${e.screenshot??""} .selected=${i==="screenshot"} value=screenshot>${e.screenshot}</calcite-chip><calcite-chip .label=${e.url??""} .selected=${i==="url"} value=url>${e.url}</calcite-chip><calcite-chip .label=${e.none??""} .selected=${i==="none"} value=none>${e.none}</calcite-chip></calcite-chip-group></calcite-label>`}_renderEditingBookmark(t){let{disabled:e,messages:i,headingLevel:r}=this;return t?a`<form class="form" @submit=${this._editBookmarkSubmit}><calcite-flow-item .disabled=${e} .heading=${i.edit??""} .headingLevel=${r} .selected=${this._userStateValue==="edit"} @calciteFlowItemBack=${o=>{o.preventDefault(),this._closeEditBookmarkForm()}} ${_(this._storeEditFlowItemNode)}><div class="form-content"><div class="authoring">${this._renderEditingBookmarkName(t)}${this._renderThumbnailSelector()}${this._renderEditingThumbnail(t)}${this._renderEditingBookmarkUrlInput(t)}${this._renderUpdateThumbnailButton()}${this._renderEditingTimeExtent(t)}</div></div>${this._renderEditingBookmarkActions()}</calcite-flow-item></form>`:null}_renderAddingBookmarkName(){let{messages:t}=this,e=this._userValidationState==="name-required";return a`<calcite-label>${t.title}<calcite-input class="add-bookmark-input" name=bookmark-name .placeholder=${t.titlePlaceholder} required type=text value ${_(this._storeAddInput)}></calcite-input>${e?a`<calcite-input-message icon=exclamation-mark-triangle status=invalid>${t.invalidTitle}</calcite-input-message>`:null}</calcite-label>`}_renderAddingBookmarkActions(){let{messages:t}=this;return[a`<calcite-button appearance=outline @click=${this._endAddBookmark} slot=footer type=button width=full>${t.cancel}</calcite-button>`,a`<calcite-button slot=footer type=submit width=full>${t.add}</calcite-button>`]}_renderAddingBookmark(){let{disabled:t,messages:e,headingLevel:i,_userStateValue:r}=this;return r==="add"?a`<form class="form" @submit=${this._addBookmarkSubmitClick}><calcite-flow-item .disabled=${t} .heading=${e.addBookmark} .headingLevel=${i} selected @calciteFlowItemBack=${o=>{o.preventDefault(),this._endAddBookmark()}} ${_(this._storeAddFlowItemNode)}><div class="form-content">${this._renderAddingBookmarkName()}</div>${this._renderAddingBookmarkActions()}</calcite-flow-item></form>`:null}};U("arcgis-bookmarks",S);return S},"webmap/Bookmark","core/Collection","core/Error","webdoc/support/SlideThumbnail","Viewpoint","WebMap","core/Accessor","core/accessorSupport/decorators","core/urlUtils","intl","core/reactiveUtils",b)
2
+ import{a as V}from"./SX4N3DR3.js";import{a as N}from"./FEY5WPXT.js";import{a as L}from"./26SX6MF4.js";import"./VEYJ5V4O.js";import{a as z}from"./JUHCPSPF.js";import"./DHVEHATY.js";import b from"./ZOBY4YF2.js";import{g as A}from"./6IUQ5UHX.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import{b as F}from"./LEUHIPSJ.js";import{B as I,N as _,O as C,P as D,R as w,U,a as T,b as a,x as f}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([q,E,v,Z,j,,H,{property:g,subclass:G},{isHTTPSProtocol:b,isDataProtocol:y},{formatDate:P,convertDateFormatToIntlOptions:R},{watch:B},{a:O}])=>{var M=Object.defineProperty,J=Object.getOwnPropertyDescriptor,h=(l,t,e,i)=>{for(var r=i>1?void 0:i?J(t,e):t,o=l.length-1,n;o>=0;o--)(n=l[o])&&(r=(i?n(t,e,r):n(r))||r);return i&&r&&M(t,e,r),r},d=class extends H{constructor(l){super(l)}get editedBookmark(){let{bookmark:l}=this;return l?this._get("editedBookmark")||l.clone():null}get customUrl(){if(this._customUrl)return this._customUrl;let l=this.editedBookmark?.thumbnail?.url??"";return l??(b(l)?l:null)}set customUrl(l){this._customUrl=l}get screenshotUrl(){if(this._screenshotUrl)return this._screenshotUrl;let l=this.editedBookmark?.thumbnail?.url??"";return l??(y(l)?l:null)}set screenshotUrl(l){this._screenshotUrl=l}get state(){return this._get("state")}set state(l){this.validationState=void 0,this.creatingBookmark=void 0,this._set("state",l)}get thumbnailState(){if(this._thumbnailState)return this._thumbnailState;let l=this.editedBookmark?.thumbnail?.url;return l?b(l)?"url":"screenshot":"none"}set thumbnailState(l){this._thumbnailState=l}};h([g()],d.prototype,"bookmark",2);h([g({readOnly:!0})],d.prototype,"editedBookmark",1);h([g()],d.prototype,"_customUrl",2);h([g()],d.prototype,"customUrl",1);h([g()],d.prototype,"_screenshotUrl",2);h([g()],d.prototype,"screenshotUrl",1);h([g()],d.prototype,"state",1);h([g()],d.prototype,"_thumbnailState",2);h([g()],d.prototype,"thumbnailState",1);h([g()],d.prototype,"validationState",2);h([g()],d.prototype,"creatingBookmark",2);d=h([G("UserState")],d);var K=T`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-hidden{display:none!important}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}:host{display:flex}.root{width:100%;overflow:hidden auto;transition:max-height .25s ease-in-out}:host([closed]) .root{display:none}.empty{display:flex;flex-flow:column wrap;align-items:center;padding:var(--calcite-spacing-md) var(--calcite-spacing-lg);text-align:center;color:var(--calcite-color-text-1)}.root .arcgis-widget__content--empty{background-color:var(--calcite-color-foreground-2)}.root calcite-flow-item[loading]{min-height:150px}.loader{margin-inline-end:0}.filter-no-results{padding:var(--calcite-spacing-md) var(--calcite-spacing-lg)}.bookmark-image-container{display:flex;position:relative;margin:0;margin-inline-start:var(--calcite-spacing-xs);min-width:16px;min-height:16px}.bookmark-image-container .bookmark-image{max-width:64px;overflow:hidden}.drag-enabled .bookmark-image-container{margin-inline-start:0}.no-bookmarks-heading{margin:0;margin-block-start:var(--calcite-spacing-md);font-size:var(--calcite-font-size-md);line-height:var(--calcite-font-line-height-relative-tight);font-weight:var(--calcite-font-weight-regular)}.authoring{display:flex;flex-direction:column}.authoring-image-container{display:flex;align-items:middle;justify-content:center;margin-block-end:var(--calcite-spacing-md);margin-inline-end:var(--calcite-spacing-lg);background-image:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%);background-position:0 0,10px 10px;background-size:20px 20px;background-color:#fff;width:128px;height:128px;text-align:center}.authoring-image-container .bookmark-image{max-width:128px;max-height:128px}.form{display:flex;height:100%}.form-content{padding-block:var(--calcite-spacing-md);padding-inline:var(--calcite-spacing-lg)}.authoring-refresh-thumbnail-button{margin-block-end:var(--calcite-spacing-md)}.bookmark-content-label{color:var(--calcite-color-text-1);font-size:var(--calcite-font-size-sm);line-height:var(--calcite-font-line-height-relative-normal)}.bookmark-content calcite-table{margin-inline-start:-.25rem}.bookmark-content calcite-table,.bookmark-content calcite-table-row{--calcite-table-border-color: transparent;--calcite-color-text-1: var(--calcite-color-text-3);--calcite-table-row-background-color: transparent;pointer-events:none}`,Q=E.ofType(q),W={width:128,height:128,format:"png"},$={takeScreenshot:!0,captureViewpoint:!0,captureRotation:!0,captureScale:!0,captureTimeExtent:!0},S=class extends C{constructor(){super(...arguments),this._bookmarks=null,this._defaultCreateOptions={...$},this._defaultEditOptions={...$},this._defaultBookmarks=new Q,this._guid=I(),this._addInputNode=null,this._editInputNode=null,this._urlEditInputNode=null,this._lastDragDetail=null,this.messages=z({}),this._storeEditFlowItemNode=t=>{this._editFlowItemEl=t},this._storeRootFlowItem=t=>{this._rootFlowItemEl=t},this._storeAddFlowItemNode=t=>{this._addFlowItemEl=t},this._activeBookmark=null,this._userState=null,this._userCreatingBookmark=!1,this.editIncludeTimeExtent=!1,this.view=O(this),this.icon="bookmark",this.closed=!1,this.disabled=!1,this.dragEnabled=!1,this.filterPlaceholder="",this.filterText="",this.headingLevel=2,this.showAddBookmarkButton=!1,this.showCloseButton=!1,this.showCollapseButton=!1,this.showEditBookmarkButton=!1,this.showFilter=!1,this.showHeading=!1,this.hideThumbnail=!1,this.hideTime=!1,this.timeDisabled=!1,this.autoDestroyDisabled=!1,this.state=this._state,this.arcgisBookmarkEdit=f(),this.arcgisBookmarkSelect=f(),this.arcgisPropertyChange=A()("state"),this.arcgisReady=f(),this.arcgisClose=f()}static{this.properties={_activeBookmark:16,_userState:16,_userStateValue:16,_userValidationState:16,_userThumbnailState:16,_userCreatingBookmark:16,editIncludeTimeExtent:16,_state:16,view:0,referenceElement:1,icon:1,closed:7,defaultCreateOptions:0,defaultEditOptions:0,bookmarks:[1,{type:E}],disabled:5,dragEnabled:5,filterPlaceholder:1,filterText:1,headingLevel:9,goToOverride:0,showAddBookmarkButton:5,showCloseButton:5,showCollapseButton:5,showEditBookmarkButton:5,showFilter:5,showHeading:5,hideThumbnail:5,hideTime:5,timeDisabled:5,autoDestroyDisabled:5,messageOverrides:0,label:1,state:32}}static{this.styles=K}get _state(){let{view:t}=this;return t&&!t.ready?"loading":"ready"}get defaultCreateOptions(){return this._defaultCreateOptions}set defaultCreateOptions(t){this._defaultCreateOptions={...$,...t}}get defaultEditOptions(){return this._defaultEditOptions}set defaultEditOptions(t){this._defaultEditOptions={...$,...t}}get bookmarks(){return this._bookmarks??this.view?.map?.bookmarks??this._defaultBookmarks}set bookmarks(t){this._bookmarks=E.isCollection(t)?t:new E(t)}async destroy(){await this.manager.destroy(),this._activeBookmark=null}goTo(t){let{view:e}=this;if(!e)throw new v("go-to:invalid-view","Cannot go to a bookmark without a view");let i=t?.viewpoint;if(!i)throw new v("go-to:invalid-bookmark","Cannot go to a bookmark that does not contain a 'viewpoint'.",{bookmark:t});this._activeBookmark=t;let r=V({target:i},e,this.goToOverride),o=t?.timeExtent;return!this.timeDisabled&&o&&(e.timeExtent=o),this.arcgisBookmarkSelect.emit({bookmark:t}),r.catch().then(()=>this._activeBookmark=null),r}loaded(){this.manager.onLifecycle(()=>[B(()=>this._userState?.state,t=>this._userStateValue=t,{initial:!0}),B(()=>this._userState?.validationState,t=>this._userValidationState=t,{initial:!0}),B(()=>this._userState?.thumbnailState,t=>this._userThumbnailState=t,{initial:!0}),B(()=>this._userState?.creatingBookmark,t=>this._userCreatingBookmark=!!t,{initial:!0})])}async _createBookmark(t){let{view:e,defaultCreateOptions:i}=this;if(!e)throw new v("create-bookmark:invalid-view","Cannot create a bookmark without a view.");let{takeScreenshot:r,screenshotSettings:o,captureViewpoint:n,captureRotation:s,captureScale:m,captureTimeExtent:u}={...i,...t},c=r?await this._createThumbnail(o):void 0,p=!this.timeDisabled&&u&&e.timeExtent!=null?e.timeExtent.clone():void 0;return new q({...c&&{thumbnail:c},...u&&{timeExtent:p},...n&&{viewpoint:this._createViewpoint({view:e,captureScale:m,captureRotation:s})}})}async _editBookmark(t,e){if(!t)return t;let{view:i,defaultEditOptions:r}=this;if(!i)throw new v("edit-bookmark:invalid-view","Cannot edit a bookmark without a view.");let{takeScreenshot:o,screenshotSettings:n,captureViewpoint:s,captureRotation:m,captureScale:u,captureTimeExtent:c}={...r,...e},p=o?await this._createThumbnail(n):void 0;return p&&(t.thumbnail=p),s&&(t.viewpoint=this._createViewpoint({view:i,captureScale:u,captureRotation:m})),c&&i.timeExtent!=null&&(t.timeExtent=i.timeExtent.clone()),this.arcgisBookmarkEdit.emit({bookmark:t}),t}async _createThumbnail(t){let{view:e}=this;if(!e)throw new v("bookmark:invalid-view","Cannot create slide thumbnail without a view");let i=await e.takeScreenshot({...W,...t});return new Z({url:i.dataUrl})}_createViewpoint({view:t,captureRotation:e,captureScale:i}){let r=t.viewpoint?.clone();return new j({targetGeometry:t.extent?.clone(),rotation:(e?r?.rotation:null)??0,scale:(i?r?.scale:null)??0})}_handleClose(){this.closed=!0,this.arcgisClose.emit()}startAddBookmark(){this._userState=new d({state:"add"}),requestAnimationFrame(()=>{this._addFlowItemEl?.setFocus()})}_clearState(){this._userState=null}_getTimeExtentStrings(t){let{hideTime:e}=this,{timeExtent:i}=t;if(!i)return{};let{start:r,end:o}=i,n=o!=null&&(r==null||r.getTime()!==o.getTime()),s=r?this._formatDate(r):"",m=r&&!e?this._formatTime(r):"";if(!n)return{startDate:s,startTime:m};let u=this._formatDate(o),c=e?"":this._formatTime(o);return{startDate:s,startTime:m,endDate:u,endTime:c}}_handleUrlEditInputChange(){let{_userState:t,_urlEditInputNode:e}=this,i=e?.value;if(!t?.editedBookmark||!i)return;t.validationState=void 0,y(t.editedBookmark.thumbnail?.url??"")&&(t.screenshotUrl=t.editedBookmark.thumbnail?.url);let r={url:i};b(r.url)&&(t.customUrl=i,t.editedBookmark.thumbnail=r)}_getBookmarkTitle(t){return(t?.name||this.messages.untitled)??""}_formatDate(t){if(!t)return"";let e=this.view,i=e&&"timeZone"in e?e.timeZone:"system";return P(t,{...R("short-date"),timeZone:i})}_formatTime(t){if(!t)return"";let e=this.view,i=e&&"timeZone"in e?e.timeZone:"system";return P(t,{...R("long-time"),timeZone:i})}_onCalciteListOrderChange(t){let{_lastDragDetail:e,bookmarks:i}=this,{toEl:r,fromEl:o,dragEl:n,newIndex:s}=t;if(!i.length)return;let m=e?.newIndex===s&&e?.dragEl===n&&e?.toEl===r&&e?.fromEl===o;if(!o||!r||m)return;this._lastDragDetail=t;let u=Array.from(o.children).filter(c=>c?.matches("calcite-list-item")).map(c=>c.value);i.sort((c,p)=>{let x=u.indexOf(c.uid),k=u.indexOf(p.uid);return x>k?1:x<k?-1:0})}_endAddBookmark(){this._clearState(),this._focusRootFlowItem()}_showEditBookmarkForm(t){t&&(this.editIncludeTimeExtent=!!t.timeExtent,this._userState=new d({bookmark:t,state:"edit"}),requestAnimationFrame(()=>{this._editFlowItemEl?.setFocus()}),this.goTo(t))}async _createNewScreenshotUrl(){return(await this._createBookmark()).thumbnail?.url??null}_storeCurrentUrl(){let{_userState:t}=this,e=t?.editedBookmark?.thumbnail?.url;e&&(b(e)?t.customUrl=e:y(e)&&(t.screenshotUrl=e))}async _handleThumbnailTypeSelect(t){let{_userState:e}=this;if(!e)return;let{screenshotUrl:i,customUrl:r,editedBookmark:o}=e,n=t==="screenshot"?i??await this._createNewScreenshotUrl():t==="url"&&r?r:null;this._storeCurrentUrl(),o&&n&&(o.thumbnail={url:n}),e.validationState=void 0,e.thumbnailState=t}_focusRootFlowItem(){requestAnimationFrame(()=>{this._rootFlowItemEl?.setFocus()})}_closeEditBookmarkForm(){this._clearState(),this._focusRootFlowItem()}_addBookmarkSubmitClick(t){t.preventDefault(),this._addBookmarkSubmit()}async _addBookmarkSubmit(){let{_addInputNode:t,_userState:e,bookmarks:i}=this;if(!e)return;let r=t?t.value.trim():null;if(!r){e.validationState="name-required";return}e.creatingBookmark=!0;let o=await this._createBookmark();o.name=r,i.add(o),this._endAddBookmark()}async _editBookmarkAndClose(t,e){let{defaultEditOptions:i}=this;await this._editBookmark(t,{...i,...e}),this._closeEditBookmarkForm()}_editBookmarkSubmit(t){t.preventDefault();let{_userState:e,_editInputNode:i,editIncludeTimeExtent:r,_urlEditInputNode:o}=this;if(!e?.bookmark||!e.editedBookmark)return;e.validationState=void 0,e.customUrl=void 0,e.screenshotUrl=void 0;let n=i?.value.trim();if(!n){e.validationState="name-required";return}if(e.bookmark.name=n,e.bookmark.thumbnail=e.editedBookmark.thumbnail,r||(e.bookmark.timeExtent=null),e.thumbnailState==="url"&&o){let s={url:o.value};if(!b(s.url)){e.validationState="absolute-url-required";return}e.bookmark.thumbnail=s}else e.thumbnailState==="none"&&(e.bookmark.thumbnail=null);this._editBookmarkAndClose(e.bookmark,{takeScreenshot:!1,captureTimeExtent:r})}_storeEditInput(t){this._editInputNode=t}_storeAddInput(t){this._addInputNode=t}_storeUrlEditInput(t){this._urlEditInputNode=t}_deleteBookmark(t){this._closeEditBookmarkForm(),t&&(this.bookmarks.remove(t),t.destroy())}_goToBookmark(t){this._clearState(),this.goTo(t)}async _updateThumbnail(){let{_userState:t}=this;t&&(t.validationState=void 0,await this._editBookmark(t.editedBookmark,{takeScreenshot:!0,captureViewpoint:!1,captureRotation:!1,captureScale:!1,captureTimeExtent:!1}))}_handleCalciteListDragEnd(t){let{fromEl:e,dragEl:i,oldIndex:r}=t;e.insertBefore(i,e.children[r])}render(){return a`<div class="root">${this._renderBookmarksContainer()}</div>`}_renderNoBookmarksContainer(t){let{messages:e,_state:i}=this;return!t.length&&i!=="loading"?a`<div class="empty"><calcite-icon .icon=${this.icon} scale=l></calcite-icon>${L({class:"no-bookmarks-heading",level:this.headingLevel,children:e.noBookmarksHeading})}<p class="no-bookmarks-description">${e.noBookmarksDescription}</p></div>`:null}_renderEditBookmarkFlowItems(){let t=this._userStateValue==="edit",e=this._userState?.editedBookmark;return!e||!t?[]:this._renderEditingBookmark(e)}_renderBookmarkItems(t){return t?t.toArray().map(e=>this._renderBookmark(e)):[]}_renderBookmarksContainer(){let{_state:t,bookmarks:e,dragEnabled:i,messages:r,disabled:o,filterPlaceholder:n,filterText:s,closed:m,headingLevel:u}=this,c=e.filter(k=>k!=null),p=c.length?a`<calcite-list class="list" display-mode=flat .dragEnabled=${i} .filterEnabled=${this.showFilter} .filterPlaceholder=${n} .filterProps=${["label","description","metadata"]} .filterText=${s} .group=${`bookmarks-${this._guid}`} .label=${r.componentLabel??""} selection-appearance=border selection-mode=none @calciteListDragEnd=${k=>this._handleCalciteListDragEnd(k.detail)} @calciteListFilter=${k=>this.filterText=k.currentTarget?.filterText??""} @calciteListOrderChange=${k=>this._onCalciteListOrderChange(k.detail)}>${this._renderBookmarkItems(c)}${this.showFilter?a`<div class="filter-no-results" slot=filter-no-results><calcite-notice kind=info open width=full><div slot=message>${r.noBookmarksHeading}</div>;</calcite-notice></div>`:null}</calcite-list>`:null,x=[a`<calcite-flow-item .closable=${this.showCloseButton} .closed=${m} .collapsible=${this.showCollapseButton} .disabled=${o} .heading=${this.showHeading?r.componentLabel:void 0} .headingLevel=${u} .loading=${t==="loading"} .selected=${!this._userStateValue} @calciteFlowItemClose=${this._handleClose} ${_(this._storeRootFlowItem)}>${this._renderNoBookmarksContainer(c)}${p}${this._renderAddBookmarkButton()}</calcite-flow-item>`,this._renderAddingBookmark(),this._renderEditBookmarkFlowItems()];return m?null:a`<calcite-flow>${x}</calcite-flow>`}_renderAddBookmarkButton(){let{messages:t,disabled:e,view:i,_state:r}=this,o=this._userCreatingBookmark;return i&&r!=="loading"&&this.showAddBookmarkButton?a`<calcite-fab appearance=outline-fill class="add-bookmark-button" .disabled=${e||o} icon=plus kind=neutral .loading=${o} @click=${this.startAddBookmark} slot=fab .text=${t.addBookmark} text-enabled title=${t.addBookmark??w}></calcite-fab>`:null}_renderEditContainer(t){let{messages:e}=this,i=`${e.edit} ${this._getBookmarkTitle(t)}`;return this.showEditBookmarkButton?a`<calcite-action icon=pencil @click=${()=>this._showEditBookmarkForm(t)} slot=actions-end .text=${i} title=${i??w}></calcite-action>`:null}_renderBookmarkImage(t,e){return e?a`<img alt class="bookmark-image" src=${t.thumbnail?.url??w}>`:null}_renderBookmarkTimeSwitch(t){let{messages:e,view:i}=this,{timeExtent:r}=t;return i?.timeExtent??r?a`<calcite-label layout=inline-space-between>${e.includeTimeExtent}<calcite-switch .checked=${!!r} @calciteSwitchChange=${o=>{this.editIncludeTimeExtent=o.currentTarget.checked}}></calcite-switch></calcite-label>`:null}_renderEditBookmarkTimeExtent(t){return this.editIncludeTimeExtent?this._renderBookmarkTimeExtent(t):null}_renderTimeExtentDescription(t){let{startDate:e,startTime:i,endDate:r,endTime:o}=this._getTimeExtentStrings(t);if(!e)return"";let n=`${e} ${i}`,s=`${r} ${o}`;return r?`${n} - ${s}`:n}_renderBookmarkTimeExtent(t,e=!1){let{messages:i}=this,{startDate:r,startTime:o,endDate:n,endTime:s}=this._getTimeExtentStrings(t),m=e?null:a`<calcite-table-row slot=table-header><calcite-table-header .heading=${i.startDate}></calcite-table-header>${n?a`<calcite-table-header .heading=${i.endDate}></calcite-table-header>`:null}</calcite-table-row>`;return r?a`<calcite-table .caption=${i.timeExtent??""} scale=s>${m}<calcite-table-row><calcite-table-cell>${r} ${o?[a`<br>`,o]:null}</calcite-table-cell>${n?a`<calcite-table-cell>${n}${s?[a`<br>`,s]:null}</calcite-table-cell>`:null}</calcite-table-row></calcite-table>`:null}_renderBookmarkActiveScrim(t,e){return this._activeBookmark===t&&e?a`<calcite-scrim loading></calcite-scrim>`:null}_renderBookmarkActiveLoader(t,e){return this._activeBookmark===t&&!e?a`<calcite-loader class="loader" inline .label=${this.messages.loading??""}></calcite-loader>`:null}_renderBookmarkImageIcon(t,e){return this._activeBookmark!==t&&!e?a`<calcite-icon icon=bookmark scale=s></calcite-icon>`:null}_renderBookmarkThumbnail(t){let e=!this.hideThumbnail&&!!t.thumbnail?.url;return a`<div class="bookmark-image-container" slot=content-start>${this._renderBookmarkActiveScrim(t,e)}${this._renderBookmarkImage(t,e)}${this._renderBookmarkActiveLoader(t,e)}${this._renderBookmarkImageIcon(t,e)}</div>`}_renderBookmark(t){return N(t.uid,a`<calcite-list-item class=${D(F({"drag-enabled":this.dragEnabled}))} .description=${this._renderTimeExtentDescription(t)} .label=${this._getBookmarkTitle(t)} .value=${t.uid} @calciteListItemSelect=${()=>this._goToBookmark(t)}>${this._renderBookmarkThumbnail(t)}${this._renderBookmarkContent(t)}${this._renderEditContainer(t)}</calcite-list-item>`)}_renderBookmarkContent(t){return a`<div class="bookmark-content" slot=content><span class="bookmark-content-label">${this._getBookmarkTitle(t)}</span>${this._renderBookmarkTimeExtent(t,!0)}</div>`}_renderEditingBookmarkName(t){let{messages:e}=this,i=this._userValidationState==="name-required";return a`<calcite-label>${e.title}<calcite-input class="edit-bookmark-input" name=bookmark-name .placeholder=${e.titlePlaceholder} required type=text .value=${t.name} ${_(this._storeEditInput)}></calcite-input>${i?a`<calcite-input-message icon=exclamation-mark-triangle status=invalid>${e.invalidTitle}</calcite-input-message>`:null}</calcite-label>`}_renderEditingBookmarkActions(){let{messages:t,_userState:e}=this,i=e?.bookmark;return[a`<calcite-button appearance=transparent kind=danger @click=${()=>this._deleteBookmark(i)} slot=footer type=button width=full>${t.delete}</calcite-button>`,a`<calcite-button appearance=outline @click=${this._closeEditBookmarkForm} slot=footer type=button width=full>${t.cancel}</calcite-button>`,a`<calcite-button slot=footer type=submit width=full>${t.save}</calcite-button>`]}_renderEditingTimeExtent(t){let{view:e}=this,{timeExtent:i}=t;return!this.timeDisabled&&(e?.timeExtent??i)?a`<div>${this._renderBookmarkTimeSwitch(t)}${this._renderEditBookmarkTimeExtent(t)}</div>`:null}_renderEditingBookmarkImage(t){let{_userThumbnailState:e}=this,i=t.thumbnail?.url??"",r=b(i)?e==="url":y(i)?e==="screenshot":null;if(r)return this._renderBookmarkImage(t,r)}_renderEditingThumbnail(t){let{_userThumbnailState:e,hideThumbnail:i}=this;return!i&&e!=="none"?a`<div class="authoring-image-container">${this._renderEditingBookmarkImage(t)}</div>`:null}_renderUpdateThumbnailButton(){let{hideThumbnail:t,messages:e,_userThumbnailState:i}=this;return!t&&i==="screenshot"?a`<calcite-button appearance=outline class="authoring-refresh-thumbnail-button" icon-start=refresh kind=neutral @click=${()=>void this._updateThumbnail()} width=full>${e.updateThumbnail}</calcite-button>`:null}_renderEditingBookmarkUrlInput(t){let{messages:e,_userValidationState:i,_userThumbnailState:r}=this,o=t.thumbnail?.url??"",n=b(o)?o:void 0,s=o&&i==="absolute-url-required";return r==="url"?a`<calcite-label><calcite-input name=bookmark-thumbnail-url pattern=https://.* .placeholder=${e?`https://<${e.imageUrlPlaceholder}>`:void 0} required title=${e.imageUrlTooltip??w} type=text .value=${n} @calciteInputChange=${this._handleUrlEditInputChange} @calciteInputInput=${this._handleUrlEditInputChange} ${_(this._storeUrlEditInput)}></calcite-input>${s?a`<calcite-input-message icon=exclamation-mark-triangle status=invalid>${e.invalidImageUrl}</calcite-input-message>`:null}</calcite-label>`:null}_renderThumbnailSelector(){let{hideThumbnail:t,messages:e,_userThumbnailState:i}=this;return t?null:a`<calcite-label>${e.thumbnail}<calcite-chip-group .label=${e.thumbnail??""} selection-mode=single-persist @calciteChipGroupSelect=${r=>this._handleThumbnailTypeSelect(r.currentTarget.selectedItems[0].value)}><calcite-chip .label=${e.screenshot??""} .selected=${i==="screenshot"} value=screenshot>${e.screenshot}</calcite-chip><calcite-chip .label=${e.url??""} .selected=${i==="url"} value=url>${e.url}</calcite-chip><calcite-chip .label=${e.none??""} .selected=${i==="none"} value=none>${e.none}</calcite-chip></calcite-chip-group></calcite-label>`}_renderEditingBookmark(t){let{disabled:e,messages:i,headingLevel:r}=this;return t?a`<form class="form" @submit=${this._editBookmarkSubmit}><calcite-flow-item .disabled=${e} .heading=${i.edit??""} .headingLevel=${r} .selected=${this._userStateValue==="edit"} @calciteFlowItemBack=${o=>{o.preventDefault(),this._closeEditBookmarkForm()}} ${_(this._storeEditFlowItemNode)}><div class="form-content"><div class="authoring">${this._renderEditingBookmarkName(t)}${this._renderThumbnailSelector()}${this._renderEditingThumbnail(t)}${this._renderEditingBookmarkUrlInput(t)}${this._renderUpdateThumbnailButton()}${this._renderEditingTimeExtent(t)}</div></div>${this._renderEditingBookmarkActions()}</calcite-flow-item></form>`:null}_renderAddingBookmarkName(){let{messages:t}=this,e=this._userValidationState==="name-required";return a`<calcite-label>${t.title}<calcite-input class="add-bookmark-input" name=bookmark-name .placeholder=${t.titlePlaceholder} required type=text value ${_(this._storeAddInput)}></calcite-input>${e?a`<calcite-input-message icon=exclamation-mark-triangle status=invalid>${t.invalidTitle}</calcite-input-message>`:null}</calcite-label>`}_renderAddingBookmarkActions(){let{messages:t}=this;return[a`<calcite-button appearance=outline @click=${this._endAddBookmark} slot=footer type=button width=full>${t.cancel}</calcite-button>`,a`<calcite-button slot=footer type=submit width=full>${t.add}</calcite-button>`]}_renderAddingBookmark(){let{disabled:t,messages:e,headingLevel:i,_userStateValue:r}=this;return r==="add"?a`<form class="form" @submit=${this._addBookmarkSubmitClick}><calcite-flow-item .disabled=${t} .heading=${e.addBookmark} .headingLevel=${i} selected @calciteFlowItemBack=${o=>{o.preventDefault(),this._endAddBookmark()}} ${_(this._storeAddFlowItemNode)}><div class="form-content">${this._renderAddingBookmarkName()}</div>${this._renderAddingBookmarkActions()}</calcite-flow-item></form>`:null}};U("arcgis-bookmarks",S);return S},"webmap/Bookmark","core/Collection","core/Error","webdoc/support/SlideThumbnail","Viewpoint","WebMap","core/Accessor","core/accessorSupport/decorators","core/urlUtils","intl","core/reactiveUtils",b)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import{a as v}from"./2VP56JYP.js";import"./LT6PKSRL.js";import"./UQKKALKO.js";import"./LEUHIPSJ.js";import{O as h,P as g,U as p,a as u,b as l,x as m}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([b,{locationToAddress:f},{substitute:$},{watch:_}])=>{var R=u`.coordinates{font-size:var(--calcite-font-size-sm);color:var(--calcite-color-text-3);padding-inline-start:var(--calcite-spacing-md);padding-block-end:var(--calcite-spacing-sm)}`,C={coordinates:"coordinates"},c=class extends h{constructor(){super(...arguments),this.messages=v(),this._abortController=null,this._results=null,this.headingLevel=3,this.portal=b.getDefault(),this.arcgisReverseGeocodeResultsChange=m()}static{this.properties={_abortController:16,_results:16,headingLevel:9,portal:0,location:0,messageOverrides:0,reverseGeocodeResults:32}}static{this.styles=R}get reverseGeocodeResults(){return this._results}async destroy(){await this.manager.destroy(),this._cancelQueries()}loaded(){this.manager.onLifecycle(()=>[_(()=>[this.portal,this.location],()=>void this._update(),{initial:!0}),_(()=>this._results,()=>{this.arcgisReverseGeocodeResultsChange.emit()})])}_cancelQueries(){this._abortController?.abort(),this._abortController=null}async _update(){let{location:e,messages:t}=this;if(this._cancelQueries(),!e){this._results=null;return}let s=new AbortController,a=s.signal;this._abortController=s,await this.portal?.load({signal:a});let i=this.portal?.helperServices?.geocode?.filter(o=>o.reverseGeocode??!0);if(!i){this._results=null;return}let r=i.map(async o=>await f(o.url,{location:e},{signal:a})),n=await Promise.allSettled(r);this._abortController=null,this._results=i.map((o,d)=>({name:o.name??t?.untitledService??"",address:(n[d].status==="fulfilled"?n[d].value.address:null)??t?.noResultsFound??"",url:o.url}))}_renderMoreResults(e){let{messages:t}=this;return!this._abortController&&e?.length?l`<calcite-block collapsible .headingLevel=${this.headingLevel} .heading=${$(t?.showMoreResults??"",{count:e.length})}><calcite-list display-mode=flat interaction-mode=static selection-mode=none .label=${t?.moreResults??""}>${e?.map(s=>l`<calcite-list-item .label=${s.name} .description=${s.address}></calcite-list-item>`)}</calcite-list></calcite-block>`:null}render(){let{_abortController:e,location:t,_results:s,messages:a}=this;if(!t)return null;let i=s?.slice(),r=i?.shift(),n=l`<div class=${g(C.coordinates)} slot=content-bottom>${`${t.latitude?.toFixed(6)}, ${t.longitude?.toFixed(6)}`}</div>`;return l`<calcite-list .loading=${!!e} display-mode=flat interaction-mode=static selection-mode=none .label=${a.label??""}>${r?l`<calcite-list-item .label=${r.name} .description=${r.address}>${n}</calcite-list-item>`:e?null:l`<calcite-list-item .label=${a.noResultsFound??""}>${n}</calcite-list-item>`}</calcite-list>${this._renderMoreResults(i)}`}};p("arcgis-reverse-geocode-list",c);return c},"portal/Portal","rest/locator","intl","core/reactiveUtils")
2
+ import{a as v}from"./JUHCPSPF.js";import"./6IUQ5UHX.js";import"./UQKKALKO.js";import"./LEUHIPSJ.js";import{O as h,P as g,U as p,a as u,b as l,x as m}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([b,{locationToAddress:f},{substitute:$},{watch:_}])=>{var R=u`.coordinates{font-size:var(--calcite-font-size-sm);color:var(--calcite-color-text-3);padding-inline-start:var(--calcite-spacing-md);padding-block-end:var(--calcite-spacing-sm)}`,C={coordinates:"coordinates"},c=class extends h{constructor(){super(...arguments),this.messages=v(),this._abortController=null,this._results=null,this.headingLevel=3,this.portal=b.getDefault(),this.arcgisReverseGeocodeResultsChange=m()}static{this.properties={_abortController:16,_results:16,headingLevel:9,portal:0,location:0,messageOverrides:0,reverseGeocodeResults:32}}static{this.styles=R}get reverseGeocodeResults(){return this._results}async destroy(){await this.manager.destroy(),this._cancelQueries()}loaded(){this.manager.onLifecycle(()=>[_(()=>[this.portal,this.location],()=>void this._update(),{initial:!0}),_(()=>this._results,()=>{this.arcgisReverseGeocodeResultsChange.emit()})])}_cancelQueries(){this._abortController?.abort(),this._abortController=null}async _update(){let{location:e,messages:t}=this;if(this._cancelQueries(),!e){this._results=null;return}let s=new AbortController,a=s.signal;this._abortController=s,await this.portal?.load({signal:a});let i=this.portal?.helperServices?.geocode?.filter(o=>o.reverseGeocode??!0);if(!i){this._results=null;return}let r=i.map(async o=>await f(o.url,{location:e},{signal:a})),n=await Promise.allSettled(r);this._abortController=null,this._results=i.map((o,d)=>({name:o.name??t?.untitledService??"",address:(n[d].status==="fulfilled"?n[d].value.address:null)??t?.noResultsFound??"",url:o.url}))}_renderMoreResults(e){let{messages:t}=this;return!this._abortController&&e?.length?l`<calcite-block collapsible .headingLevel=${this.headingLevel} .heading=${$(t?.showMoreResults??"",{count:e.length})}><calcite-list display-mode=flat interaction-mode=static selection-mode=none .label=${t?.moreResults??""}>${e?.map(s=>l`<calcite-list-item .label=${s.name} .description=${s.address}></calcite-list-item>`)}</calcite-list></calcite-block>`:null}render(){let{_abortController:e,location:t,_results:s,messages:a}=this;if(!t)return null;let i=s?.slice(),r=i?.shift(),n=l`<div class=${g(C.coordinates)} slot=content-bottom>${`${t.latitude?.toFixed(6)}, ${t.longitude?.toFixed(6)}`}</div>`;return l`<calcite-list .loading=${!!e} display-mode=flat interaction-mode=static selection-mode=none .label=${a.label??""}>${r?l`<calcite-list-item .label=${r.name} .description=${r.address}>${n}</calcite-list-item>`:e?null:l`<calcite-list-item .label=${a.noResultsFound??""}>${n}</calcite-list-item>`}</calcite-list>${this._renderMoreResults(i)}`}};p("arcgis-reverse-geocode-list",c);return c},"portal/Portal","rest/locator","intl","core/reactiveUtils")
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import{g as r}from"./LT6PKSRL.js";import{V as o}from"./MQTZFCXF.js";var s=r(o);export{s as a};
2
+ import{f as r}from"./6IUQ5UHX.js";import{V as o}from"./MQTZFCXF.js";var s=r(o);export{s as a};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import{a as E}from"./26SX6MF4.js";import"./VEYJ5V4O.js";import c from"./VPFMRSZ6.js";import{a as L}from"./2VP56JYP.js";import{a as w}from"./DHVEHATY.js";import b from"./SA36LNKO.js";import a from"./WWASOGVO.js";import{f as O,h as B}from"./LT6PKSRL.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import{b as W}from"./LEUHIPSJ.js";import{N as z,O as M,P as v,Q as T,R as g,U as A,a as k,b as l,x as C}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([q,{property:p,subclass:V},{watch:Z},F,j,D,R,H,,,S])=>{var I=k`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-hidden{display:none!important}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}:host{width:300px;min-width:180px}.root{position:relative;padding:var(--arcgis-internal-padding);container-type:inline-size;width:100%}.content{display:flex;flex-direction:column;gap:var(--calcite-spacing-lg)}.content.error{visibility:hidden;height:0;overflow:hidden;pointer-events:none}.weather-type-selector{--button-gap: var(--calcite-spacing-sm);display:flex;flex-wrap:wrap;justify-content:center;width:100%;margin-inline:auto;gap:var(--button-gap);>calcite-button{display:block;position:relative;height:var(--button-size);flex-shrink:0;flex-grow:0;--total-gap: calc((var(--weather-type-count) - 1) * var(--button-gap));--basis: clamp(24px, calc((100% - var(--total-gap)) / var(--weather-type-count)), 64px);flex-basis:round(down,var(--basis),1px)}}@container (max-width: 280px){.weather-type-selector{--button-gap: var(--calcite-spacing-xs)}}@container (max-width: 220px){.weather-type-selector{--button-gap: var(--calcite-spacing-xxs)}}.options{display:flex;flex-direction:column;gap:var(--calcite-spacing-md);calcite-label{--calcite-label-margin-bottom: 0}&.hidden{display:none}}.warning-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}`,U=Object.defineProperty,G=Object.getOwnPropertyDescriptor,c=(o,e,t,i)=>{for(var r=i>1?void 0:i?G(e,t):e,a=o.length-1,n;a>=0;a--)(n=o[a])&&(r=(i?n(e,t,r):n(r))||r);return i&&r&&U(e,t,r),r},J={sunny:H,cloudy:F,rainy:D,snowy:R,foggy:j},u=Object.keys(J),s=class extends q{constructor(o){super(o),this._settingWeather=!1,this._weatherByType={sunny:new H,cloudy:new F,rainy:new D,snowy:new R,foggy:new j}}initialize(){this.addHandles([Z(()=>this.current,o=>{this._settingWeather||o==null||(this._weatherByType={...this._weatherByType,[o.type]:o})},{sync:!0,initial:!0})])}get state(){if(!this.view?.ready)return"disabled";if(this.error!=null)switch(this.error){case"not-visible":return"ready";default:return"error"}return"ready"}get disabled(){return this.state==="disabled"}get weatherByType(){return this._weatherByType}get error(){let o=this.view;return o?.ready?o.type!=="3d"?"unsupported-view":o.viewingMode==="local"?"local-scene":o.environment.atmosphereEnabled?o.environment.weatherAvailable?null:"not-visible":"no-atmosphere":null}get current(){return this._environment?.weather??this._weatherByType.sunny}set current(o){let e=this._environment;e&&(e.weather=o)}get _environment(){let o=this.view;return o?.type==="3d"?o.environment:null}setWeatherByType(o){let e=this._environment;e!=null&&(this._settingWeather=!0,e.weather=this._weatherByType[o],this._settingWeather=!1)}setSnowCoverEnabled(o){let e=this.current;"snowCover"in e&&(e.snowCover=o?"enabled":"disabled")}};c([p()],s.prototype,"view",2);c([p()],s.prototype,"state",1);c([p()],s.prototype,"disabled",1);c([p()],s.prototype,"weatherByType",1);c([p()],s.prototype,"error",1);c([p()],s.prototype,"current",1);c([p()],s.prototype,"_weatherByType",2);c([p()],s.prototype,"_environment",1);s=c([V("components.weather.WeatherViewModel")],s);function h({label:o,ariaLabel:e,value:t,disabled:i,onChange:r}){let a=n=>{let d=n.currentTarget.value;r?.(d??0)};return l`<calcite-label .scale=${"m"}><calcite-slider .disabled=${i} .ariaLabel=${e} .labelText=${o} .value=${t} min=0 max=1 step=0.01 .scale=${"m"} @calciteSliderChange=${a} @calciteSliderInput=${a}></calcite-slider></calcite-label>`}var K=S(s),Q={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"},_=class extends M{constructor(){super(...arguments),this.viewModel=K(this),this.messages=L(),this.direction=O(),this._resizeAnimationFrame=void 0,this._resizeObserver=new ResizeObserver(e=>{for(let t of e)t.target instanceof HTMLElement&&this._updateButtonMetrics(t.contentRect.width)}),this._buttonWidth=0,this.view=this.viewModel.view,this.autoDestroyDisabled=!1,this.headingLevel=4,this.hideHeader=!1,this.icon="partly-cloudy",this.label=this.messages.componentLabel,this.state=this.viewModel.state,this.arcgisPropertyChange=B()("state"),this.arcgisReady=C()}static{this.properties={_buttonWidth:16,view:0,autoDestroyDisabled:5,headingLevel:9,hideHeader:5,icon:1,label:1,messageOverrides:0,referenceElement:1,state:32}}static{this.styles=I}async destroy(){await this.manager.destroy()}_makeWeatherTypeButtonRef(){let e;return t=>{t?(e=t,this._resizeObserver.observe(t),this._updateButtonMetrics(t.clientWidth)):e&&(this._resizeObserver.unobserve(e),e=void 0)}}_updateButtonMetrics(e){this._resizeAnimationFrame&&cancelAnimationFrame(this._resizeAnimationFrame),this._resizeAnimationFrame=requestAnimationFrame(()=>{this._buttonWidth=e,this._resizeAnimationFrame=void 0})}_getWarningMessage(){switch(this.viewModel.error){case"not-visible":{let{view:e}=this.viewModel;return e?.type==="3d"&&e.environment.atmosphereEnabled?this.messages.error?.notVisible:void 0}default:return}}_getErrorMessage(){let e=this.messages.error;if(e)switch(this.viewModel.error){case"local-scene":return e.localScene;case"no-atmosphere":return e.noAtmosphere;case"unsupported-view":return e.unsupported;default:return}}render(){return l`<div aria-label=${this.messages.componentLabelAccessible??g} class=${v({root:!0,[w.widget]:!0,[w.widgetDisabled]:this.viewModel.disabled})} role=region>${this._renderContent()}</div>`}_renderContent(){let{headingLevel:e,messages:t,viewModel:i}=this,r=this._getWarningMessage(),a=i.current,n=i.state==="error";return l`${this.hideHeader?void 0:E({level:e,children:t.componentLabel})}${n?l`<div>${this._getErrorMessage()}</div>`:void 0}<div class=${v(W({content:!0,error:n}))}><div .ariaLabel=${t.weatherType} class="weather-type-selector" role=radiogroup style=${T({"--weather-type-count":String(u.length),"--button-size":`${this._buttonWidth}px`})}>${u.map(this._renderWeatherTypeButton,this)}</div>${Object.values(i.weatherByType).map(d=>l`<div class=${v({options:!0,hidden:d.type!==a?.type})}>${this._renderOptions(d)}</div>`)}${r?this._renderWarning(r):void 0}</div>`}_renderWeatherTypeButton(e){let t=this.messages[e]?.label??"",{disabled:i}=this.viewModel,r=!i&&this.viewModel.current.type===e;return l`<calcite-button role=radio .label=${t} .name=${t} .appearance=${r?"solid":"outline"} .ariaChecked=${r?"true":"false"} tabindex=${(r?void 0:-1)??g} .disabled=${i} .iconStart=${Q[e]} .kind=${r?"brand":"neutral"} width=full .scale=${this._buttonWidth<32?"s":this._buttonWidth<64?"m":"l"} @keydown=${a=>{let n=a.key,d=["ArrowRight","ArrowDown"],m=["ArrowLeft","ArrowUp"];if(this.direction==="rtl"){let b=d;d=m,m=b}let P=d.includes(n),f=m.includes(n);if(P||f){a.preventDefault();let b=u.indexOf(e),y=u.length,x=(b+(f?-1:1)+y)%y;this.viewModel.setWeatherByType(u[x]);let $=a.currentTarget.parentElement?.parentElement;$&&Array.from($.querySelectorAll("calcite-button")??[])[x]?.setFocus()}}} @click=${a=>{if(r)return;this.viewModel.setWeatherByType(e);let n=a.currentTarget;requestAnimationFrame(()=>{this.viewModel.current.type===e&&n.setFocus()})}} title=${t??g} ${z(this._makeWeatherTypeButtonRef())}></calcite-button>`}_renderOptions(e){switch(e.type){case"sunny":return this._renderSunnyOptions(e);case"cloudy":return this._renderCloudyOptions(e);case"rainy":return this._renderRainyOptions(e);case"snowy":return this._renderSnowyOptions(e);case"foggy":return this._renderFoggyOptions(e)}}_renderSunnyOptions(e){let t=this.messages.sunny;return h({disabled:this.viewModel.disabled,ariaLabel:t?.cloudCoverAria,label:t?.cloudCover,value:e.cloudCover,onChange:i=>{e.cloudCover=i}})}_renderCloudyOptions(e){let t=this.messages.cloudy;return h({disabled:this.viewModel.disabled,ariaLabel:t?.cloudCoverAria,label:t?.cloudCover,value:e.cloudCover,onChange:i=>{e.cloudCover=i}})}_renderRainyOptions(e){let{disabled:t}=this.viewModel,i=this.messages.rainy;return l`${h({disabled:t,ariaLabel:i?.cloudCoverAria,label:i?.cloudCover,value:e.cloudCover,onChange:r=>{e.cloudCover=r}})}${h({disabled:t,ariaLabel:i?.precipitationAria,label:i?.precipitation,value:e.precipitation,onChange:r=>{e.precipitation=r}})}`}_renderSnowyOptions(e){let{disabled:t}=this.viewModel,i=this.messages.snowy;return l`${h({disabled:t,ariaLabel:i?.cloudCoverAria,label:i?.cloudCover,value:e.cloudCover,onChange:r=>{e.cloudCover=r}})}${h({disabled:t,ariaLabel:i?.precipitationAria,label:i?.precipitation,value:e.precipitation,onChange:r=>{e.precipitation=r}})}<calcite-label layout=inline title=${i?.snowCoverTooltip??g}><calcite-checkbox .checked=${e.snowCover==="enabled"} .disabled=${t} @calciteCheckboxChange=${r=>{this.viewModel.setSnowCoverEnabled(r.currentTarget.checked)}}></calcite-checkbox>${i?.snowCover}</calcite-label>`}_renderFoggyOptions(e){let t=this.messages.foggy;return h({disabled:this.viewModel.disabled,ariaLabel:t?.fogStrengthAria,label:t?.fogStrength,value:e.fogStrength,onChange:i=>{e.fogStrength=i}})}_renderWarning(e){return l`<calcite-notice aria-live=polite open icon=exclamation-mark-triangle-f kind=warning><div slot=title class="warning-title">${this.messages.warningTitle}</div><div slot=message>${e}</div></calcite-notice>`}};A("arcgis-weather",_);return _},"core/Accessor","core/accessorSupport/decorators","core/reactiveUtils","views/3d/environment/CloudyWeather","views/3d/environment/FoggyWeather","views/3d/environment/RainyWeather","views/3d/environment/SnowyWeather","views/3d/environment/SunnyWeather",a,b,c)
2
+ import{a as E}from"./26SX6MF4.js";import"./VEYJ5V4O.js";import c from"./H5RGMC7S.js";import{a as L}from"./JUHCPSPF.js";import{a as w}from"./DHVEHATY.js";import b from"./4WMWNIPN.js";import a from"./ZOBY4YF2.js";import{e as O,g as B}from"./6IUQ5UHX.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import{b as W}from"./LEUHIPSJ.js";import{N as z,O as M,P as v,Q as T,R as g,U as A,a as k,b as l,x as C}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([q,{property:p,subclass:V},{watch:Z},F,j,D,R,H,,,S])=>{var I=k`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-hidden{display:none!important}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}:host{width:300px;min-width:180px}.root{position:relative;padding:var(--arcgis-internal-padding);container-type:inline-size;width:100%}.content{display:flex;flex-direction:column;gap:var(--calcite-spacing-lg)}.content.error{visibility:hidden;height:0;overflow:hidden;pointer-events:none}.weather-type-selector{--button-gap: var(--calcite-spacing-sm);display:flex;flex-wrap:wrap;justify-content:center;width:100%;margin-inline:auto;gap:var(--button-gap);>calcite-button{display:block;position:relative;height:var(--button-size);flex-shrink:0;flex-grow:0;--total-gap: calc((var(--weather-type-count) - 1) * var(--button-gap));--basis: clamp(24px, calc((100% - var(--total-gap)) / var(--weather-type-count)), 64px);flex-basis:round(down,var(--basis),1px)}}@container (max-width: 280px){.weather-type-selector{--button-gap: var(--calcite-spacing-xs)}}@container (max-width: 220px){.weather-type-selector{--button-gap: var(--calcite-spacing-xxs)}}.options{display:flex;flex-direction:column;gap:var(--calcite-spacing-md);calcite-label{--calcite-label-margin-bottom: 0}&.hidden{display:none}}.warning-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}`,U=Object.defineProperty,G=Object.getOwnPropertyDescriptor,c=(o,e,t,i)=>{for(var r=i>1?void 0:i?G(e,t):e,a=o.length-1,n;a>=0;a--)(n=o[a])&&(r=(i?n(e,t,r):n(r))||r);return i&&r&&U(e,t,r),r},J={sunny:H,cloudy:F,rainy:D,snowy:R,foggy:j},u=Object.keys(J),s=class extends q{constructor(o){super(o),this._settingWeather=!1,this._weatherByType={sunny:new H,cloudy:new F,rainy:new D,snowy:new R,foggy:new j}}initialize(){this.addHandles([Z(()=>this.current,o=>{this._settingWeather||o==null||(this._weatherByType={...this._weatherByType,[o.type]:o})},{sync:!0,initial:!0})])}get state(){if(!this.view?.ready)return"disabled";if(this.error!=null)switch(this.error){case"not-visible":return"ready";default:return"error"}return"ready"}get disabled(){return this.state==="disabled"}get weatherByType(){return this._weatherByType}get error(){let o=this.view;return o?.ready?o.type!=="3d"?"unsupported-view":o.viewingMode==="local"?"local-scene":o.environment.atmosphereEnabled?o.environment.weatherAvailable?null:"not-visible":"no-atmosphere":null}get current(){return this._environment?.weather??this._weatherByType.sunny}set current(o){let e=this._environment;e&&(e.weather=o)}get _environment(){let o=this.view;return o?.type==="3d"?o.environment:null}setWeatherByType(o){let e=this._environment;e!=null&&(this._settingWeather=!0,e.weather=this._weatherByType[o],this._settingWeather=!1)}setSnowCoverEnabled(o){let e=this.current;"snowCover"in e&&(e.snowCover=o?"enabled":"disabled")}};c([p()],s.prototype,"view",2);c([p()],s.prototype,"state",1);c([p()],s.prototype,"disabled",1);c([p()],s.prototype,"weatherByType",1);c([p()],s.prototype,"error",1);c([p()],s.prototype,"current",1);c([p()],s.prototype,"_weatherByType",2);c([p()],s.prototype,"_environment",1);s=c([V("components.weather.WeatherViewModel")],s);function h({label:o,ariaLabel:e,value:t,disabled:i,onChange:r}){let a=n=>{let d=n.currentTarget.value;r?.(d??0)};return l`<calcite-label .scale=${"m"}><calcite-slider .disabled=${i} .ariaLabel=${e} .labelText=${o} .value=${t} min=0 max=1 step=0.01 .scale=${"m"} @calciteSliderChange=${a} @calciteSliderInput=${a}></calcite-slider></calcite-label>`}var K=S(s),Q={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"},_=class extends M{constructor(){super(...arguments),this.viewModel=K(this),this.messages=L(),this.direction=O(),this._resizeAnimationFrame=void 0,this._resizeObserver=new ResizeObserver(e=>{for(let t of e)t.target instanceof HTMLElement&&this._updateButtonMetrics(t.contentRect.width)}),this._buttonWidth=0,this.view=this.viewModel.view,this.autoDestroyDisabled=!1,this.headingLevel=4,this.hideHeader=!1,this.icon="partly-cloudy",this.label=this.messages.componentLabel,this.state=this.viewModel.state,this.arcgisPropertyChange=B()("state"),this.arcgisReady=C()}static{this.properties={_buttonWidth:16,view:0,autoDestroyDisabled:5,headingLevel:9,hideHeader:5,icon:1,label:1,messageOverrides:0,referenceElement:1,state:32}}static{this.styles=I}async destroy(){await this.manager.destroy()}_makeWeatherTypeButtonRef(){let e;return t=>{t?(e=t,this._resizeObserver.observe(t),this._updateButtonMetrics(t.clientWidth)):e&&(this._resizeObserver.unobserve(e),e=void 0)}}_updateButtonMetrics(e){this._resizeAnimationFrame&&cancelAnimationFrame(this._resizeAnimationFrame),this._resizeAnimationFrame=requestAnimationFrame(()=>{this._buttonWidth=e,this._resizeAnimationFrame=void 0})}_getWarningMessage(){switch(this.viewModel.error){case"not-visible":{let{view:e}=this.viewModel;return e?.type==="3d"&&e.environment.atmosphereEnabled?this.messages.error?.notVisible:void 0}default:return}}_getErrorMessage(){let e=this.messages.error;if(e)switch(this.viewModel.error){case"local-scene":return e.localScene;case"no-atmosphere":return e.noAtmosphere;case"unsupported-view":return e.unsupported;default:return}}render(){return l`<div aria-label=${this.messages.componentLabelAccessible??g} class=${v({root:!0,[w.widget]:!0,[w.widgetDisabled]:this.viewModel.disabled})} role=region>${this._renderContent()}</div>`}_renderContent(){let{headingLevel:e,messages:t,viewModel:i}=this,r=this._getWarningMessage(),a=i.current,n=i.state==="error";return l`${this.hideHeader?void 0:E({level:e,children:t.componentLabel})}${n?l`<div>${this._getErrorMessage()}</div>`:void 0}<div class=${v(W({content:!0,error:n}))}><div .ariaLabel=${t.weatherType} class="weather-type-selector" role=radiogroup style=${T({"--weather-type-count":String(u.length),"--button-size":`${this._buttonWidth}px`})}>${u.map(this._renderWeatherTypeButton,this)}</div>${Object.values(i.weatherByType).map(d=>l`<div class=${v({options:!0,hidden:d.type!==a?.type})}>${this._renderOptions(d)}</div>`)}${r?this._renderWarning(r):void 0}</div>`}_renderWeatherTypeButton(e){let t=this.messages[e]?.label??"",{disabled:i}=this.viewModel,r=!i&&this.viewModel.current.type===e;return l`<calcite-button role=radio .label=${t} .name=${t} .appearance=${r?"solid":"outline"} .ariaChecked=${r?"true":"false"} tabindex=${(r?void 0:-1)??g} .disabled=${i} .iconStart=${Q[e]} .kind=${r?"brand":"neutral"} width=full .scale=${this._buttonWidth<32?"s":this._buttonWidth<64?"m":"l"} @keydown=${a=>{let n=a.key,d=["ArrowRight","ArrowDown"],m=["ArrowLeft","ArrowUp"];if(this.direction==="rtl"){let b=d;d=m,m=b}let P=d.includes(n),f=m.includes(n);if(P||f){a.preventDefault();let b=u.indexOf(e),y=u.length,x=(b+(f?-1:1)+y)%y;this.viewModel.setWeatherByType(u[x]);let $=a.currentTarget.parentElement?.parentElement;$&&Array.from($.querySelectorAll("calcite-button")??[])[x]?.setFocus()}}} @click=${a=>{if(r)return;this.viewModel.setWeatherByType(e);let n=a.currentTarget;requestAnimationFrame(()=>{this.viewModel.current.type===e&&n.setFocus()})}} title=${t??g} ${z(this._makeWeatherTypeButtonRef())}></calcite-button>`}_renderOptions(e){switch(e.type){case"sunny":return this._renderSunnyOptions(e);case"cloudy":return this._renderCloudyOptions(e);case"rainy":return this._renderRainyOptions(e);case"snowy":return this._renderSnowyOptions(e);case"foggy":return this._renderFoggyOptions(e)}}_renderSunnyOptions(e){let t=this.messages.sunny;return h({disabled:this.viewModel.disabled,ariaLabel:t?.cloudCoverAria,label:t?.cloudCover,value:e.cloudCover,onChange:i=>{e.cloudCover=i}})}_renderCloudyOptions(e){let t=this.messages.cloudy;return h({disabled:this.viewModel.disabled,ariaLabel:t?.cloudCoverAria,label:t?.cloudCover,value:e.cloudCover,onChange:i=>{e.cloudCover=i}})}_renderRainyOptions(e){let{disabled:t}=this.viewModel,i=this.messages.rainy;return l`${h({disabled:t,ariaLabel:i?.cloudCoverAria,label:i?.cloudCover,value:e.cloudCover,onChange:r=>{e.cloudCover=r}})}${h({disabled:t,ariaLabel:i?.precipitationAria,label:i?.precipitation,value:e.precipitation,onChange:r=>{e.precipitation=r}})}`}_renderSnowyOptions(e){let{disabled:t}=this.viewModel,i=this.messages.snowy;return l`${h({disabled:t,ariaLabel:i?.cloudCoverAria,label:i?.cloudCover,value:e.cloudCover,onChange:r=>{e.cloudCover=r}})}${h({disabled:t,ariaLabel:i?.precipitationAria,label:i?.precipitation,value:e.precipitation,onChange:r=>{e.precipitation=r}})}<calcite-label layout=inline title=${i?.snowCoverTooltip??g}><calcite-checkbox .checked=${e.snowCover==="enabled"} .disabled=${t} @calciteCheckboxChange=${r=>{this.viewModel.setSnowCoverEnabled(r.currentTarget.checked)}}></calcite-checkbox>${i?.snowCover}</calcite-label>`}_renderFoggyOptions(e){let t=this.messages.foggy;return h({disabled:this.viewModel.disabled,ariaLabel:t?.fogStrengthAria,label:t?.fogStrength,value:e.fogStrength,onChange:i=>{e.fogStrength=i}})}_renderWarning(e){return l`<calcite-notice aria-live=polite open icon=exclamation-mark-triangle-f kind=warning><div slot=title class="warning-title">${this.messages.warningTitle}</div><div slot=message>${e}</div></calcite-notice>`}};A("arcgis-weather",_);return _},"core/Accessor","core/accessorSupport/decorators","core/reactiveUtils","views/3d/environment/CloudyWeather","views/3d/environment/FoggyWeather","views/3d/environment/RainyWeather","views/3d/environment/SnowyWeather","views/3d/environment/SunnyWeather",a,b,c)
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
+ import{a as d,b as m,c as g}from"./6C7SMFB2.js";import{a as n}from"./JUHCPSPF.js";import b from"./ZOBY4YF2.js";import{g as s}from"./6IUQ5UHX.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import"./LEUHIPSJ.js";import{O as o,U as r,a,b as e,x as c}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([{a:l}])=>{var u=a`calcite-action{--calcite-action-background-color-hover: var(--calcite-color-foreground-1);--calcite-action-background-color-press: var(--calcite-color-foreground-1);--calcite-action-background-color: var(--calcite-color-foreground-1);--calcite-action-text-color-press: var(--calcite-color-text-1);--calcite-action-text-color: var(--calcite-color-text-1);cursor:default}calcite-input-time-zone{--calcite-color-background: var(--calcite-color-foreground-1);--calcite-color-border-input: transparent}calcite-label{--calcite-label-margin-bottom: 0;font-weight:var(--calcite-font-weight-medium);padding-block:var(--calcite-spacing-sm);padding-inline:var(--calcite-spacing-md)}`,i=class extends o{constructor(){super(...arguments),this._messages=n({blocking:!0}),this.disabled=!1,this.icon="time-zone",this.view=l(this),this.arcgisPropertyChange=s()("state"),this.arcgisReady=c()}static{this.properties={_interactive:16,_resolvedTimeZone:16,actionIcon:3,disabled:7,icon:3,messageOverrides:0,label:1,referenceElement:1,state:32,view:0}}static{this.styles=u}get _interactive(){return!(this.disabled||this.state==="disabled")}get _resolvedTimeZone(){let t=this.view?.timeZone;return!t||t===d?g:t}get state(){return this.view?.ready?"ready":"disabled"}render(){return e`<calcite-action .disabled=${!this._interactive} .icon=${this.actionIcon} text>${this._resolvedTimeZone===m?e`<calcite-label>${this._messages.noAdjustment}</calcite-label>`:e`<calcite-input-time-zone mode=region overlay-positioning=fixed read-only .value=${this._resolvedTimeZone}></calcite-input-time-zone>`}</calcite-action>`}};r("arcgis-time-zone-label",i);return i},b)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
2
- import{a as d}from"./E7SYUWIQ.js";import e from"./VPFMRSZ6.js";import{a as M}from"./2VP56JYP.js";import{a as C}from"./DHVEHATY.js";import c from"./SA36LNKO.js";import a from"./WWASOGVO.js";import{h as y}from"./LT6PKSRL.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import{b as x}from"./LEUHIPSJ.js";import{N as m,O as _,P as v,R as w,S as f,U as b,a as g,b as s,x as p}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([k,{isAbortError:E},{substitute:D},{watch:h,on:T},,{a:a},S])=>{var A=g`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}.esri-hidden{display:none!important}:host{width:240px}.root{--arcgis-internal-search-width: 240px;display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;width:100%}.dropdown{--calcite-color-border-1: var(--calcite-color-border-input);--calcite-dropdown-width: var(--arcgis-internal-search-width);width:31px}.autocomplete{flex:1}.container{display:flex;position:relative;flex:1 0 100%;flex-flow:row nowrap;align-items:stretch}.form{display:flex;flex:1 0;flex-flow:row nowrap;align-items:stretch;margin:0;padding:0}.submit-button{position:absolute;margin:-1px;border-width:0;padding:0;width:1px;height:1px;overflow:hidden;white-space:nowrap;clip:rect(0,0,0,0)}`,L=S(k);function $(l){return typeof l=="object"&&l!==null&&"openPopup"in l&&"closePopup"in l}var u=class extends _{constructor(){super(...arguments),this.viewModel=L(this),this._currentLocationValue="search-use-current-location",this._autocompleteEl=void 0,this._searchResultRendererEl=void 0,this._searchResultRendererContentEl=void 0,this._suggestController=void 0,this._searchController=void 0,this._lastSearchTerm="",this.messages=M({blocking:!0}),this._locateFailed=!1,this._showNoResults=!1,this.view=this.viewModel.view,this.goToOverride=this.viewModel.goToOverride,this.icon="search",this.activeMenu="none",this.activeSourceIndex=this.viewModel.activeSourceIndex,this.allPlaceholder=this.viewModel.allPlaceholder,this.allSources=this.viewModel.allSources,this.autoNavigateDisabled=this.viewModel.autoNavigate,this.autoSelectDisabled=this.viewModel.autoSelect,this.defaultSources=this.viewModel.defaultSources,this.disabled=!1,this.includeDefaultSourcesDisabled=this.viewModel.includeDefaultSources,this.locationDisabled=this.viewModel.locationEnabled,this.maxResults=this.viewModel.maxResults,this.maxSuggestions=this.viewModel.maxSuggestions,this.minSuggestCharacters=this.viewModel.minSuggestCharacters,this.popupDisabled=this.viewModel.popupEnabled,this.popupTemplate=this.viewModel.popupTemplate,this.portal=this.viewModel.portal,this.resultGraphic=this.viewModel.resultGraphic,this.resultGraphicDisabled=this.viewModel.resultGraphicEnabled,this.results=this.viewModel.results,this.searchAllDisabled=this.viewModel.searchAllEnabled,this.searchTerm=this.viewModel.searchTerm,this.selectedResult=this.viewModel.selectedResult,this.sources=this.viewModel.sources,this.suggestions=this.viewModel.suggestions,this.suggestionsDisabled=this.viewModel.suggestionsEnabled,this.topLayerDisabled=!1,this.autoDestroyDisabled=!1,this.state=this.viewModel.state,this.arcgisPropertyChange=y()("state"),this.arcgisReady=p(),this.arcgisSearchClear=a(()=>this.viewModel,"search-clear"),this.arcgisSearchComplete=a(()=>this.viewModel,"search-complete"),this.arcgisSearchStart=a(()=>this.viewModel,"search-start"),this.arcgisSelectResult=a(()=>this.viewModel,"select-result"),this.arcgisSuggestComplete=a(()=>this.viewModel,"suggest-complete"),this.arcgisSuggestStart=a(()=>this.viewModel,"suggest-start")}static{this.properties={_locateFailed:16,_showNoResults:16,_isDisabled:16,_showCurrentLocation:16,_effectiveActiveMenu:16,view:0,referenceElement:1,goToOverride:0,icon:1,activeMenu:1,activeSource:32,activeSourceIndex:9,allPlaceholder:1,allSources:0,autoNavigateDisabled:5,autoSelectDisabled:5,defaultSources:0,disabled:5,includeDefaultSourcesDisabled:5,locationDisabled:5,maxResults:9,maxSuggestions:9,minSuggestCharacters:9,popupDisabled:5,popupTemplate:0,portal:0,resultGraphic:0,resultGraphicDisabled:5,results:0,searchAllDisabled:5,searchTerm:1,selectedResult:0,sources:0,suggestions:32,suggestionsDisabled:5,topLayerDisabled:5,autoDestroyDisabled:5,messageOverrides:0,label:1,state:32}}static{this.styles=A}get _isDisabled(){let{state:e}=this.viewModel;return e==="disabled"||e==="loading"||this.disabled}get _showCurrentLocation(){return!this.locationDisabled&&!this.searchTerm?.trim()}get _effectiveActiveMenu(){return this._isDisabled?"none":this.activeMenu}get activeSource(){return this.viewModel?.activeSource}clear(){this._locateFailed=!1,this.viewModel.clear()}async destroy(){this._cancelQueries(),await this._searchResultRendererEl?.destroy(),await this._searchResultRendererContentEl?.destroy(),await this.manager.destroy()}async search(e){this._cancelQueries();let t=new AbortController,{signal:i}=t;this._searchController=t;try{let r=await this.viewModel.search(e,{signal:i});return this._searchController!==t?void 0:(r?.numResults||(this._showNoResults=!0,this.activeMenu="suggestion"),this._searchController=void 0,r)}catch{if(this._searchController!==t)return;this._searchController=void 0;return}}async suggest(e){this._cancelSuggest();let t=new AbortController,{signal:i}=t;this._suggestController=t;try{let r=await this.viewModel.suggest(e,null,{signal:i});return this._suggestController!==t?void 0:(this._suggestController=void 0,r?.numResults&&(this.activeMenu="suggestion",this._scrollToTopSuggestion()),r)}catch{return this._suggestController!==t||(this._suggestController=void 0),null}}async setFocus(){await this._autocompleteEl?.setFocus()}loaded(){this.manager.onLifecycle(()=>[h(()=>[this._searchResultRendererEl,this.viewModel?.defaultPopupTemplate],()=>{let e=this.viewModel?.defaultPopupTemplate,{_searchResultRendererEl:t}=this;if(e&&t){let i=document.createElement("div");i.appendChild(t),e.content=i,this._searchResultRendererContentEl=t}},{initial:!0}),h(()=>this.messages,e=>this.viewModel.messages=e,{initial:!0}),h(()=>this.viewModel?.resultGraphic,(e,t)=>this._closePopup(t)),T(()=>this.viewModel,"select-result",e=>{let{popupEnabled:t}=e;t&&this._openPopup()})])}_addSearchResultRenderer(){this._searchResultRendererEl=f(s`<arcgis-search-result-renderer auto-destroy-disabled .messages=${this.messages} .viewModel=${this.viewModel}></arcgis-search-result-renderer>`)}_closePopup(e){$(this.referenceElement)&&(this.referenceElement.popupElement??this.referenceElement.popup)?.selectedFeature===e&&this.referenceElement?.closePopup()}_openPopup(){if($(this.referenceElement)){let{resultGraphic:e,resultLocation:t}=this.viewModel,i={features:e?[e]:[],location:t};this.referenceElement?.openPopup(i)}else if(this.view){let{resultGraphic:e,resultLocation:t}=this.viewModel;this.view.openPopup({features:e?[e]:[],location:t})}}_handleInputKeydown(e){e.key==="Tab"&&this._cancelSuggest()}_handleAutocompleteCreate(e){this._autocompleteEl=e}_handleCalciteAutocompleteTextInput(e){let t=e.target.inputValue;t!==this.viewModel.searchTerm&&(this.viewModel.searchTerm=t,t||this.clear(),this.suggest())}_handleAutocompleteOpen(){this.activeMenu="suggestion"}_handleAutocompleteClose(){this.activeMenu==="suggestion"&&(this.activeMenu="none")}_handleCalciteAutocompleteChange(e){let t=e.target.value;if(t===this._currentLocationValue){this._useCurrentLocation();return}let i=JSON.parse(t),r=this.viewModel.suggestions?.find(({sourceIndex:o})=>o===i.sourceIndex)?.results?.find(({key:o})=>`${o}`==`${i.key}`);r&&this.search(r)}async _useCurrentLocation(){this._cancelQueries();let e=new AbortController,{signal:t}=e;this._searchController=e;try{await this.viewModel.searchNearby({signal:t})}catch(i){E(i)||(this._locateFailed=!0,this.activeMenu="suggestion")}finally{this._searchController=void 0}}_handleSourceOpen(){this.activeMenu="source"}_handleSourceClose(){this.activeMenu==="source"&&(this.activeMenu="none")}_handleSourceSelect(e){let t=e.target.selectedItems[0].getAttribute("data-source-index");t&&(this.viewModel.activeSourceIndex=Number.parseInt(t,10))}_cancelSuggest(){this.activeMenu="none",this._locateFailed=!1,this._showNoResults=!1,this._suggestController=d(this._suggestController)}_cancelQueries(){this._cancelSuggest(),this._searchController=d(this._searchController)}_scrollToTopSuggestion(){this._autocompleteEl?.scrollContentTo({top:0})}_formSubmit(e){e.preventDefault(),this.activeMenu="none",this._lastSearchTerm=this.searchTerm,this.searchTerm&&this.search()}_getSourceName(e){let{messages:t}=this,{allSources:i}=this.viewModel,r=i.at(e);return(e===-1?t.all:r?.name||t.untitledSource)||""}render(){return this._addSearchResultRenderer(),s`<div class=${v(x("root",C.widget))}><div class="container">${this._renderSourcesMenu()}${this._renderForm()}</div></div>`}_renderSourcesMenu(){let{messages:e,_isDisabled:t,_effectiveActiveMenu:i}=this,{allSources:r,searchAllEnabled:o}=this.viewModel;return r.length>1?s`<calcite-dropdown class="dropdown" .disabled=${t} .open=${i==="source"} overlay-positioning=fixed .topLayerDisabled=${this.topLayerDisabled} @calciteDropdownClose=${this._handleSourceClose} @calciteDropdownOpen=${this._handleSourceOpen} @calciteDropdownSelect=${this._handleSourceSelect}><calcite-button appearance=outline-fill icon-start=caret-down kind=neutral .label=${e.searchIn} slot=trigger></calcite-button><calcite-dropdown-group .groupTitle=${e.searchIn}>${o?this._renderSource(-1):null}${r.map((n,c)=>this._renderSource(c)).toArray()}</calcite-dropdown-group></calcite-dropdown>`:null}_renderUseCurrentLocation(){let{_currentLocationValue:e}=this;return s`<calcite-autocomplete-item .heading=${this.messages.useCurrentLocation??""} icon-start=gps-on .value=${e}></calcite-autocomplete-item>`}_renderAutocomplete(){let{_effectiveActiveMenu:e,messages:t,_isDisabled:i}=this,{maxInputLength:r,placeholder:o,searchTerm:n,state:c}=this.viewModel,R=this.label??t.searchButtonTitle??"";return s`<calcite-autocomplete autocomplete=off class="autocomplete" .disabled=${i} .icon=${this.icon||void 0} .inputValue=${n} .label=${R} .loading=${c==="searching"} .maxLength=${r} .name=${this.el.id} @keydown=${this._handleInputKeydown} .open=${e==="suggestion"} overlay-positioning=fixed .placeholder=${o} .topLayerDisabled=${this.topLayerDisabled} title=${(n?"":o)??w} @calciteAutocompleteChange=${this._handleCalciteAutocompleteChange} @calciteAutocompleteClose=${this._handleAutocompleteClose} @calciteAutocompleteOpen=${this._handleAutocompleteOpen} @calciteAutocompleteTextChange=${this._handleCalciteAutocompleteTextInput} @calciteAutocompleteTextInput=${this._handleCalciteAutocompleteTextInput} ${m(this._handleAutocompleteCreate)}>${this._renderSuggestions()}${this._renderNotices()}</calcite-autocomplete>`}_renderForm(){return s`<form class="form" @submit=${this._formSubmit} role=search>${this._renderAutocomplete()}<button class="submit-button" type=submit>${this.label??this.messages.searchButtonTitle??""}</button></form>`}_renderSuggestGroup(e){return e.results?.map(t=>this._renderSuggestion(t))}_renderSuggestions(){let{suggestions:e}=this.viewModel;return this._showNoResults?null:this._showCurrentLocation?this._renderUseCurrentLocation():e?.map(t=>this._renderSuggestResults(t))}_renderSuggestResults(e){let{allSources:t,activeSourceIndex:i}=this.viewModel,{sourceIndex:r}=e,o=e.results?.length,n=t.length>1&&i===-1,c=this._getSourceName(r);return o&&n?s`<calcite-autocomplete-item-group .heading=${c}>${this._renderSuggestGroup(e)}</calcite-autocomplete-item-group>`:this._renderSuggestGroup(e)}_renderSuggestion({key:e,sourceIndex:t,text:i}){let r={key:e,sourceIndex:t};return s`<calcite-autocomplete-item .heading=${i??this.messages.untitledResult??""} .value=${JSON.stringify(r)}></calcite-autocomplete-item>`}_renderSource(e){let t=this._getSourceName(e);return s`<calcite-dropdown-item data-source-index=${`${e}`} .selected=${e===this.viewModel.activeSourceIndex}>${t}</calcite-dropdown-item>`}_renderNoResultsWarning(e){let{messages:t}=this,i=e?D(t.noResultsFoundForValue??"",{value:`"${e}"`}):t.noResultsFound;return s`<calcite-notice icon=exclamation-mark-triangle kind=warning open slot=content-bottom><div slot=title>${t.noResults}</div><div slot=message>${i}</div></calcite-notice>`}_renderLocateError(){return s`<calcite-notice icon=exclamation-mark-circle kind=danger open slot=content-bottom><div slot=message>${this.messages.locateError}</div></calcite-notice>`}_renderNotices(){return this._locateFailed?this._renderLocateError():this._showNoResults?this._renderNoResultsWarning(this._lastSearchTerm??this.viewModel.searchTerm):null}};b("arcgis-search",u);return u},"widgets/Search/SearchViewModel","core/promiseUtils","intl","core/reactiveUtils",a,c,e)
2
+ import{a as d}from"./E7SYUWIQ.js";import e from"./H5RGMC7S.js";import{a as M}from"./JUHCPSPF.js";import{a as C}from"./DHVEHATY.js";import c from"./4WMWNIPN.js";import a from"./ZOBY4YF2.js";import{g as y}from"./6IUQ5UHX.js";import"./UQKKALKO.js";import"./74XVTUIU.js";import{b as x}from"./LEUHIPSJ.js";import{N as m,O as _,P as v,R as w,S as f,U as b,a as g,b as s,x as p}from"./MQTZFCXF.js";import"./ALDX5YZO.js";export default $arcgis.t(([k,{isAbortError:E},{substitute:D},{watch:h,on:T},,{a:a},S])=>{var A=g`.esri-widget__heading{color:var(--calcite-color-text-2);margin:0 0 .5rem;font-weight:var(--calcite-font-weight-semibold)}h1.esri-widget__heading{font-size:var(--calcite-font-size-xl)}h2.esri-widget__heading{font-size:var(--calcite-font-size-md)}h3.esri-widget__heading,h4.esri-widget__heading,h5.esri-widget__heading,h6.esri-widget__heading{font-size:var(--calcite-font-size)}.esri-widget{box-sizing:border-box;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);font-size:var(--calcite-font-size);line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget *,.esri-widget :before,.esri-widget :after{box-sizing:inherit}.esri-widget.esri-widget--disabled>*{opacity:.4;pointer-events:none}.esri-widget.esri-widget--compact{--esri-widget-padding-y: 0;--esri-widget-padding-x: 0}.esri-widget__anchor{color:var(--calcite-color-text-2)}.esri-widget__anchor:hover{color:var(--calcite-color-text-3)}.esri-widget__anchor:hover,.esri-widget__anchor:focus{text-decoration:underline}.esri-widget__anchor--disabled{opacity:.4;pointer-events:none}.esri-widget__header{background-color:var(--calcite-color-foreground-1);flex:1 0 100%;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px 0 12px 15px;display:flex}.esri-widget__heading{word-break:break-word}.esri-widget__header .esri-widget__heading{width:calc(100% - 48px);text-align:initial;color:var(--calcite-color-text-1);align-items:center;margin:0;padding:0;display:flex}.esri-widget__header-button{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background-color:var(--calcite-color-foreground-1);border:none;flex:0 0 48px;justify-content:center;align-self:stretch;align-items:center;width:48px;padding:0;display:flex}.esri-widget__footer{background-color:var(--calcite-color-foreground-1);justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.esri-widget__footer-pagination{color:var(--calcite-color-text-2);justify-content:space-between;align-items:center;display:flex}.esri-widget__footer-pagination-previous-button,.esri-widget__footer-pagination-next-button{cursor:pointer;background-color:var(--calcite-color-foreground-1);border:0;margin:0 7px;padding:12px 15px;transition:background-color .125s ease-in-out}.esri-widget__footer-pagination-previous-button:hover,.esri-widget__footer-pagination-previous-button:focus,.esri-widget__footer-pagination-next-button:hover,.esri-widget__footer-pagination-next-button:focus{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1)}.esri-menu{visibility:hidden;z-index:1;background-clip:padding;background-color:var(--calcite-color-foreground-1);background-clip:padding-box;width:100%;max-height:0;margin:2px 0 0;padding:0;font-size:var(--calcite-font-size);line-height:var(--calcite-spacing-xl);position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 1px 2px #0000004d}.esri-menu .esri-menu__header{color:var(--calcite-color-text-inverse);background-color:var(--calcite-color-inverse);padding:6px 12px}.esri-menu__list{margin:0;padding:0;list-style:none}.esri-menu__list-item{cursor:pointer;border-top:1px solid #adadad4d;border-left:3px solid #0000;padding:.8em 1em}.esri-menu__list-item [class^=esri-icon-],.esri-menu__list-item [class*=" esri-icon-"]{padding-right:2.8px}.esri-menu__list-item:first-child{border-top:none}.esri-menu__list-item--focus,.esri-menu__list-item:hover,.esri-menu__list-item:focus{background-color:var(--calcite-color-foreground-1)}.esri-menu__list-item:active{background-color:var(--calcite-color-foreground-current)}.esri-menu__list-item--active,.esri-menu__list-item--active:hover,.esri-menu__list-item--active:focus{background-color:var(--calcite-color-foreground-1);border-left-color:var(--calcite-color-brand)}.esri-widget__table{border-collapse:collapse;color:var(--calcite-color-text-1);border:none;width:100%;line-height:var(--calcite-font-line-height-relative-tight)}.esri-widget__table tr:nth-child(odd){background-color:var(--calcite-color-transparent)}.esri-widget__table tr:nth-child(2n){background-color:var(--calcite-color-transparent-press)}.esri-widget__table tr a{color:var(--calcite-color-text-2)}.esri-widget__table tr a:hover,.esri-widget__table tr a:focus{color:var(--calcite-color-text-1)}.esri-widget__table tr td,.esri-widget__table tr th{vertical-align:top;word-break:break-word;padding:.5em .7em;font-size:var(--calcite-font-size-sm);font-weight:var(--calcite-font-weight-regular)}.esri-widget__table tr th{text-align:left;border-right:3px solid #0000000d;width:50%}.esri-widget__table tr td{width:50%}.esri-input{color:var(--calcite-color-text-1);background-color:var(--calcite-color-foreground-1);border:1px solid #959595;font-size:var(--calcite-font-size)}.esri-input::-ms-clear{display:none}.esri-input::placeholder{opacity:1;color:var(--calcite-color-text-2)}.esri-input:placeholder-shown{text-overflow:ellipsis}.esri-input[type=text],.esri-input[type=password],.esri-input[type=number]{height:32px;padding:0 .5em}calcite-combobox.esri-input{border:none}.esri-widget__content--empty{text-align:center;color:var(--calcite-color-border-input);flex-flow:column wrap;align-items:center;padding:18px 22px;display:flex}.esri-widget__content--empty h1.esri-widget__heading,.esri-widget__content--empty h2.esri-widget__heading,.esri-widget__content--empty h3.esri-widget__heading,.esri-widget__content--empty h4.esri-widget__heading,.esri-widget__content--empty h5.esri-widget__heading{font-weight:var(--calcite-font-weight-regular)}.esri-widget__content-illustration--empty{width:128px;padding:1rem 0}.esri-widget__content-icon--empty{width:32px;padding:.5rem 0}.esri-select{appearance:none;cursor:pointer;color:var(--calcite-color-text-2);background:var(--calcite-color-foreground-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-8 -8 32 32' width='32' height='32'%3E%3Cpath d='M8 11.207l-4-4V5.793l4 4 4-4v1.414z' fill='%23adadad' fillrule='nonzero'/%3E%3C/svg%3E") 100% no-repeat;border:1px solid #959595;border-radius:0;width:100%;height:32px;margin:0;padding:0 .5em;font-family:inherit;font-size:.85em;display:block}.esri-select[disabled]{cursor:auto}.esri-select::-ms-expand{display:none}.esri-disabled a,.esri-disabled [role=menu],.esri-disabled [role=checkbox],.esri-disabled [class^=esri-icon-],.esri-disabled [class*=" esri-icon-"]{color:var(--calcite-color-text-3)}.keynav-mode .esri-widget:focus,.keynav-mode .esri-widget :focus{z-index:1;outline-offset:2px;outline:2px solid #adadad}.esri-widget__loader-animation{border:.15em solid #adadad4d;border-top-color:var(--calcite-color-border-input);border-radius:100%;width:1em;height:1em;font-size:var(--calcite-font-size-md);animation:1.25s linear infinite esri-rotate;display:block;transform:translateZ(0)}:dir(rtl) .esri-widget__table th{text-align:right;border-left:3px solid #0000000d;border-right:none}:dir(rtl) .esri-select{background-position:0}:dir(rtl) .esri-menu__list-item{border-left:none;border-right:3px solid #0000}:dir(rtl) .esri-menu__list-item [class^=esri-icon-],:dir(rtl) .esri-menu__list-item [class*=" esri-icon-"]{padding-left:2px;padding-right:0}:dir(rtl) .esri-menu__list-item--active{border-right-color:var(--calcite-color-brand)}.esri-icon-font-fallback-text{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.esri-rotating{animation:1.25s linear infinite esri-rotate;transform:translateZ(0)}.esri-clearfix:before,.esri-clearfix:after{content:" ";display:table}.esri-clearfix:after{clear:both}.esri-interactive{cursor:pointer}.esri-invisible{visibility:hidden!important}.esri-offscreen{position:absolute;top:-999em;left:-999em}.esri-match-height{flex-direction:column;flex:auto;display:flex;overflow:hidden}.esri-hidden{display:none!important}:host{width:240px}.root{--arcgis-internal-search-width: 240px;display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;width:100%}.dropdown{--calcite-color-border-1: var(--calcite-color-border-input);--calcite-dropdown-width: var(--arcgis-internal-search-width);width:31px}.autocomplete{flex:1}.container{display:flex;position:relative;flex:1 0 100%;flex-flow:row nowrap;align-items:stretch}.form{display:flex;flex:1 0;flex-flow:row nowrap;align-items:stretch;margin:0;padding:0}.submit-button{position:absolute;margin:-1px;border-width:0;padding:0;width:1px;height:1px;overflow:hidden;white-space:nowrap;clip:rect(0,0,0,0)}`,L=S(k);function $(l){return typeof l=="object"&&l!==null&&"openPopup"in l&&"closePopup"in l}var u=class extends _{constructor(){super(...arguments),this.viewModel=L(this),this._currentLocationValue="search-use-current-location",this._autocompleteEl=void 0,this._searchResultRendererEl=void 0,this._searchResultRendererContentEl=void 0,this._suggestController=void 0,this._searchController=void 0,this._lastSearchTerm="",this.messages=M({blocking:!0}),this._locateFailed=!1,this._showNoResults=!1,this.view=this.viewModel.view,this.goToOverride=this.viewModel.goToOverride,this.icon="search",this.activeMenu="none",this.activeSourceIndex=this.viewModel.activeSourceIndex,this.allPlaceholder=this.viewModel.allPlaceholder,this.allSources=this.viewModel.allSources,this.autoNavigateDisabled=this.viewModel.autoNavigate,this.autoSelectDisabled=this.viewModel.autoSelect,this.defaultSources=this.viewModel.defaultSources,this.disabled=!1,this.includeDefaultSourcesDisabled=this.viewModel.includeDefaultSources,this.locationDisabled=this.viewModel.locationEnabled,this.maxResults=this.viewModel.maxResults,this.maxSuggestions=this.viewModel.maxSuggestions,this.minSuggestCharacters=this.viewModel.minSuggestCharacters,this.popupDisabled=this.viewModel.popupEnabled,this.popupTemplate=this.viewModel.popupTemplate,this.portal=this.viewModel.portal,this.resultGraphic=this.viewModel.resultGraphic,this.resultGraphicDisabled=this.viewModel.resultGraphicEnabled,this.results=this.viewModel.results,this.searchAllDisabled=this.viewModel.searchAllEnabled,this.searchTerm=this.viewModel.searchTerm,this.selectedResult=this.viewModel.selectedResult,this.sources=this.viewModel.sources,this.suggestions=this.viewModel.suggestions,this.suggestionsDisabled=this.viewModel.suggestionsEnabled,this.topLayerDisabled=!1,this.autoDestroyDisabled=!1,this.state=this.viewModel.state,this.arcgisPropertyChange=y()("state"),this.arcgisReady=p(),this.arcgisSearchClear=a(()=>this.viewModel,"search-clear"),this.arcgisSearchComplete=a(()=>this.viewModel,"search-complete"),this.arcgisSearchStart=a(()=>this.viewModel,"search-start"),this.arcgisSelectResult=a(()=>this.viewModel,"select-result"),this.arcgisSuggestComplete=a(()=>this.viewModel,"suggest-complete"),this.arcgisSuggestStart=a(()=>this.viewModel,"suggest-start")}static{this.properties={_locateFailed:16,_showNoResults:16,_isDisabled:16,_showCurrentLocation:16,_effectiveActiveMenu:16,view:0,referenceElement:1,goToOverride:0,icon:1,activeMenu:1,activeSource:32,activeSourceIndex:9,allPlaceholder:1,allSources:0,autoNavigateDisabled:5,autoSelectDisabled:5,defaultSources:0,disabled:5,includeDefaultSourcesDisabled:5,locationDisabled:5,maxResults:9,maxSuggestions:9,minSuggestCharacters:9,popupDisabled:5,popupTemplate:0,portal:0,resultGraphic:0,resultGraphicDisabled:5,results:0,searchAllDisabled:5,searchTerm:1,selectedResult:0,sources:0,suggestions:32,suggestionsDisabled:5,topLayerDisabled:5,autoDestroyDisabled:5,messageOverrides:0,label:1,state:32}}static{this.styles=A}get _isDisabled(){let{state:e}=this.viewModel;return e==="disabled"||e==="loading"||this.disabled}get _showCurrentLocation(){return!this.locationDisabled&&!this.searchTerm?.trim()}get _effectiveActiveMenu(){return this._isDisabled?"none":this.activeMenu}get activeSource(){return this.viewModel?.activeSource}clear(){this._locateFailed=!1,this.viewModel.clear()}async destroy(){this._cancelQueries(),await this._searchResultRendererEl?.destroy(),await this._searchResultRendererContentEl?.destroy(),await this.manager.destroy()}async search(e){this._cancelQueries();let t=new AbortController,{signal:i}=t;this._searchController=t;try{let r=await this.viewModel.search(e,{signal:i});return this._searchController!==t?void 0:(r?.numResults||(this._showNoResults=!0,this.activeMenu="suggestion"),this._searchController=void 0,r)}catch{if(this._searchController!==t)return;this._searchController=void 0;return}}async suggest(e){this._cancelSuggest();let t=new AbortController,{signal:i}=t;this._suggestController=t;try{let r=await this.viewModel.suggest(e,null,{signal:i});return this._suggestController!==t?void 0:(this._suggestController=void 0,r?.numResults&&(this.activeMenu="suggestion",this._scrollToTopSuggestion()),r)}catch{return this._suggestController!==t||(this._suggestController=void 0),null}}async setFocus(){await this._autocompleteEl?.setFocus()}loaded(){this.manager.onLifecycle(()=>[h(()=>[this._searchResultRendererEl,this.viewModel?.defaultPopupTemplate],()=>{let e=this.viewModel?.defaultPopupTemplate,{_searchResultRendererEl:t}=this;if(e&&t){let i=document.createElement("div");i.appendChild(t),e.content=i,this._searchResultRendererContentEl=t}},{initial:!0}),h(()=>this.messages,e=>this.viewModel.messages=e,{initial:!0}),h(()=>this.viewModel?.resultGraphic,(e,t)=>this._closePopup(t)),T(()=>this.viewModel,"select-result",e=>{let{popupEnabled:t}=e;t&&this._openPopup()})])}_addSearchResultRenderer(){this._searchResultRendererEl=f(s`<arcgis-search-result-renderer auto-destroy-disabled .messages=${this.messages} .viewModel=${this.viewModel}></arcgis-search-result-renderer>`)}_closePopup(e){$(this.referenceElement)&&(this.referenceElement.popupElement??this.referenceElement.popup)?.selectedFeature===e&&this.referenceElement?.closePopup()}_openPopup(){if($(this.referenceElement)){let{resultGraphic:e,resultLocation:t}=this.viewModel,i={features:e?[e]:[],location:t};this.referenceElement?.openPopup(i)}else if(this.view){let{resultGraphic:e,resultLocation:t}=this.viewModel;this.view.openPopup({features:e?[e]:[],location:t})}}_handleInputKeydown(e){e.key==="Tab"&&this._cancelSuggest()}_handleAutocompleteCreate(e){this._autocompleteEl=e}_handleCalciteAutocompleteTextInput(e){let t=e.target.inputValue;t!==this.viewModel.searchTerm&&(this.viewModel.searchTerm=t,t||this.clear(),this.suggest())}_handleAutocompleteOpen(){this.activeMenu="suggestion"}_handleAutocompleteClose(){this.activeMenu==="suggestion"&&(this.activeMenu="none")}_handleCalciteAutocompleteChange(e){let t=e.target.value;if(t===this._currentLocationValue){this._useCurrentLocation();return}let i=JSON.parse(t),r=this.viewModel.suggestions?.find(({sourceIndex:o})=>o===i.sourceIndex)?.results?.find(({key:o})=>`${o}`==`${i.key}`);r&&this.search(r)}async _useCurrentLocation(){this._cancelQueries();let e=new AbortController,{signal:t}=e;this._searchController=e;try{await this.viewModel.searchNearby({signal:t})}catch(i){E(i)||(this._locateFailed=!0,this.activeMenu="suggestion")}finally{this._searchController=void 0}}_handleSourceOpen(){this.activeMenu="source"}_handleSourceClose(){this.activeMenu==="source"&&(this.activeMenu="none")}_handleSourceSelect(e){let t=e.target.selectedItems[0].getAttribute("data-source-index");t&&(this.viewModel.activeSourceIndex=Number.parseInt(t,10))}_cancelSuggest(){this.activeMenu="none",this._locateFailed=!1,this._showNoResults=!1,this._suggestController=d(this._suggestController)}_cancelQueries(){this._cancelSuggest(),this._searchController=d(this._searchController)}_scrollToTopSuggestion(){this._autocompleteEl?.scrollContentTo({top:0})}_formSubmit(e){e.preventDefault(),this.activeMenu="none",this._lastSearchTerm=this.searchTerm,this.searchTerm&&this.search()}_getSourceName(e){let{messages:t}=this,{allSources:i}=this.viewModel,r=i.at(e);return(e===-1?t.all:r?.name||t.untitledSource)||""}render(){return this._addSearchResultRenderer(),s`<div class=${v(x("root",C.widget))}><div class="container">${this._renderSourcesMenu()}${this._renderForm()}</div></div>`}_renderSourcesMenu(){let{messages:e,_isDisabled:t,_effectiveActiveMenu:i}=this,{allSources:r,searchAllEnabled:o}=this.viewModel;return r.length>1?s`<calcite-dropdown class="dropdown" .disabled=${t} .open=${i==="source"} overlay-positioning=fixed .topLayerDisabled=${this.topLayerDisabled} @calciteDropdownClose=${this._handleSourceClose} @calciteDropdownOpen=${this._handleSourceOpen} @calciteDropdownSelect=${this._handleSourceSelect}><calcite-button appearance=outline-fill icon-start=caret-down kind=neutral .label=${e.searchIn} slot=trigger></calcite-button><calcite-dropdown-group .groupTitle=${e.searchIn}>${o?this._renderSource(-1):null}${r.map((n,c)=>this._renderSource(c)).toArray()}</calcite-dropdown-group></calcite-dropdown>`:null}_renderUseCurrentLocation(){let{_currentLocationValue:e}=this;return s`<calcite-autocomplete-item .heading=${this.messages.useCurrentLocation??""} icon-start=gps-on .value=${e}></calcite-autocomplete-item>`}_renderAutocomplete(){let{_effectiveActiveMenu:e,messages:t,_isDisabled:i}=this,{maxInputLength:r,placeholder:o,searchTerm:n,state:c}=this.viewModel,R=this.label??t.searchButtonTitle??"";return s`<calcite-autocomplete autocomplete=off class="autocomplete" .disabled=${i} .icon=${this.icon||void 0} .inputValue=${n} .label=${R} .loading=${c==="searching"} .maxLength=${r} .name=${this.el.id} @keydown=${this._handleInputKeydown} .open=${e==="suggestion"} overlay-positioning=fixed .placeholder=${o} .topLayerDisabled=${this.topLayerDisabled} title=${(n?"":o)??w} @calciteAutocompleteChange=${this._handleCalciteAutocompleteChange} @calciteAutocompleteClose=${this._handleAutocompleteClose} @calciteAutocompleteOpen=${this._handleAutocompleteOpen} @calciteAutocompleteTextChange=${this._handleCalciteAutocompleteTextInput} @calciteAutocompleteTextInput=${this._handleCalciteAutocompleteTextInput} ${m(this._handleAutocompleteCreate)}>${this._renderSuggestions()}${this._renderNotices()}</calcite-autocomplete>`}_renderForm(){return s`<form class="form" @submit=${this._formSubmit} role=search>${this._renderAutocomplete()}<button class="submit-button" type=submit>${this.label??this.messages.searchButtonTitle??""}</button></form>`}_renderSuggestGroup(e){return e.results?.map(t=>this._renderSuggestion(t))}_renderSuggestions(){let{suggestions:e}=this.viewModel;return this._showNoResults?null:this._showCurrentLocation?this._renderUseCurrentLocation():e?.map(t=>this._renderSuggestResults(t))}_renderSuggestResults(e){let{allSources:t,activeSourceIndex:i}=this.viewModel,{sourceIndex:r}=e,o=e.results?.length,n=t.length>1&&i===-1,c=this._getSourceName(r);return o&&n?s`<calcite-autocomplete-item-group .heading=${c}>${this._renderSuggestGroup(e)}</calcite-autocomplete-item-group>`:this._renderSuggestGroup(e)}_renderSuggestion({key:e,sourceIndex:t,text:i}){let r={key:e,sourceIndex:t};return s`<calcite-autocomplete-item .heading=${i??this.messages.untitledResult??""} .value=${JSON.stringify(r)}></calcite-autocomplete-item>`}_renderSource(e){let t=this._getSourceName(e);return s`<calcite-dropdown-item data-source-index=${`${e}`} .selected=${e===this.viewModel.activeSourceIndex}>${t}</calcite-dropdown-item>`}_renderNoResultsWarning(e){let{messages:t}=this,i=e?D(t.noResultsFoundForValue??"",{value:`"${e}"`}):t.noResultsFound;return s`<calcite-notice icon=exclamation-mark-triangle kind=warning open slot=content-bottom><div slot=title>${t.noResults}</div><div slot=message>${i}</div></calcite-notice>`}_renderLocateError(){return s`<calcite-notice icon=exclamation-mark-circle kind=danger open slot=content-bottom><div slot=message>${this.messages.locateError}</div></calcite-notice>`}_renderNotices(){return this._locateFailed?this._renderLocateError():this._showNoResults?this._renderNoResultsWarning(this._lastSearchTerm??this.viewModel.searchTerm):null}};b("arcgis-search",u);return u},"widgets/Search/SearchViewModel","core/promiseUtils","intl","core/reactiveUtils",a,c,e)