@arcgis/core 4.34.0-next.48 → 4.34.0-next.49

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 (132) hide show
  1. package/analysis/ElevationProfileUnits.js +1 -1
  2. package/analysis/support/elevationProfileLineTypes.js +1 -1
  3. package/assets/esri/core/workers/RemoteClient.js +1 -1
  4. package/assets/esri/core/workers/chunks/{6ce2f86b9b1d2f2b8675.js → 0874b88d5ae7c2b78b3b.js} +1 -1
  5. package/assets/esri/core/workers/chunks/{90a97ffba604c1c35532.js → 0b52c0ca432761076076.js} +65 -65
  6. package/assets/esri/core/workers/chunks/0c129b78e5cfe96795e1.js +1 -0
  7. package/assets/esri/core/workers/chunks/{9f869b331dff505b6b55.js → 1d234c057a6671acc59f.js} +1 -1
  8. package/assets/esri/core/workers/chunks/4cc982c99d84e896d535.js +1 -0
  9. package/assets/esri/core/workers/chunks/4e2b125e6e3945985a54.js +1 -0
  10. package/assets/esri/core/workers/chunks/5a016dcd3192d42d363e.js +1 -0
  11. package/assets/esri/core/workers/chunks/{574ea32d6c257e0d2079.js → 5b0c42bb95d81085061d.js} +1 -1
  12. package/assets/esri/core/workers/chunks/72ecf49d03bb24bf0998.js +1 -0
  13. package/assets/esri/core/workers/chunks/781b59ba0cabe78bc122.js +1 -0
  14. package/assets/esri/core/workers/chunks/{28a85997c9003cacdefb.js → 8e3c09c3524654830b14.js} +1 -1
  15. package/assets/esri/core/workers/chunks/bd7e303dd64a27ba6846.js +1 -0
  16. package/assets/esri/core/workers/chunks/cb8f2ce22274990b359c.js +1 -0
  17. package/assets/esri/core/workers/chunks/{0b67b16d7e6c030bcfc7.js → d4766c97d97554b3b408.js} +1 -1
  18. package/assets/esri/core/workers/chunks/ddd6597a66ec6b972f9c.js +1 -0
  19. package/chunks/LineSeries.js +1 -1
  20. package/chunks/Theme.js +1 -1
  21. package/chunks/chartUtilsAm5.js +1 -1
  22. package/config.js +1 -1
  23. package/core/lang.js +1 -1
  24. package/core/timeUtils.js +1 -1
  25. package/editing/sharedTemplates/support/sharedTemplateErrors.js +1 -1
  26. package/interfaces.d.ts +44 -10
  27. package/kernel.js +1 -1
  28. package/layers/LinkChartLayer.js +1 -1
  29. package/layers/orientedImagery/transformations/updateElevationUtils.js +1 -1
  30. package/layers/orientedImagery/transformations/utils.js +1 -1
  31. package/layers/support/rasterDatasets/pixelReader.js +1 -1
  32. package/libs/linkchartlayout/LinkChartLayout.js +1 -1
  33. package/libs/parquet/parquet.js +1 -1
  34. package/networks/UtilityNetwork.js +1 -1
  35. package/networks/support/UtilityNetworkLookupHelper.js +1 -1
  36. package/networks/support/networkFieldUtils.js +1 -1
  37. package/networks/support/typeUtils.js +1 -1
  38. package/package.json +4 -4
  39. package/rest/networks/support/CircuitLocation.js +5 -0
  40. package/rest/networks/support/CircuitSection.js +5 -0
  41. package/rest/support/Query.js +1 -1
  42. package/rest/support/RelationshipQuery.js +1 -1
  43. package/rest/utils.js +1 -1
  44. package/support/revision.js +1 -1
  45. package/support/webSceneUtils.js +1 -1
  46. package/symbols/cim/utils.js +1 -1
  47. package/views/2d/LabelManager.js +1 -1
  48. package/views/2d/engine/flow/utils.js +1 -1
  49. package/views/2d/engine/imagery/RasterBitmap.js +1 -1
  50. package/views/2d/engine/webgl/DisplayId.js +1 -1
  51. package/views/2d/engine/webgl/animations/instructions.js +1 -1
  52. package/views/2d/engine/webgl/mesh/templates/templateUtils.js +1 -1
  53. package/views/2d/interactive/editingTools.js +1 -1
  54. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  55. package/views/2d/layers/features/FeatureContainer.js +1 -1
  56. package/views/2d/layers/features/RenderState.js +1 -1
  57. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  58. package/views/2d/layers/features/sources/strategies/chunks/ParquetSourceChunk.js +1 -1
  59. package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
  60. package/views/2d/layers/features/support/FeatureSetReaderIndirect.js +1 -1
  61. package/views/3d/analysis/ElevationProfile/ElevationProfileLineSceneComputation.js +5 -0
  62. package/views/3d/analysis/ElevationProfileAnalysisView3D.js +1 -1
  63. package/views/3d/environment/SunLighting.js +1 -1
  64. package/views/3d/layers/FlowSubView3D.js +1 -1
  65. package/views/3d/layers/I3SMeshView3D.js +1 -1
  66. package/views/3d/layers/graphics/Graphics3DSymbolLayerFactory.js +1 -1
  67. package/views/3d/layers/support/MediaLayerInteraction.js +1 -1
  68. package/views/3d/terrain/terrainUtils.js +1 -1
  69. package/views/3d/webgl-engine/core/FBOCacheFormats.js +1 -1
  70. package/views/3d/webgl-engine/core/shaderModules/Matrix4sDrawUniform.js +1 -1
  71. package/views/3d/webgl-engine/core/shaderModules/Matrix4sPassUniform.js +1 -1
  72. package/views/3d/webgl-engine/lib/Program.js +1 -1
  73. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  74. package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
  75. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  76. package/views/analysis/ElevationProfile/ElevationProfileController.js +5 -0
  77. package/views/analysis/ElevationProfile/ElevationProfileLineComputation.js +5 -0
  78. package/views/analysis/ElevationProfile/ElevationProfileLineGroundComputation.js +5 -0
  79. package/views/analysis/ElevationProfile/ElevationProfileLineInputComputation.js +5 -0
  80. package/views/analysis/ElevationProfile/ElevationProfileLineQueryComputation.js +5 -0
  81. package/views/analysis/ElevationProfile/ProfileGenerationError.js +5 -0
  82. package/views/analysis/ElevationProfile/constants.js +5 -0
  83. package/views/analysis/ElevationProfile/elevationQuerySourceUtils.js +5 -0
  84. package/views/analysis/ElevationProfile/geometryUtils.js +5 -0
  85. package/views/analysis/ElevationProfile/profileUtils.js +5 -0
  86. package/views/analysis/ElevationProfile/statisticsUtils.js +5 -0
  87. package/views/analysis/ElevationProfile/traversalUtils.js +5 -0
  88. package/views/analysis/ElevationProfile/unitUtils.js +5 -0
  89. package/views/analysis/ElevationProfileResult.js +1 -1
  90. package/views/support/LayerLayerViewInfo.js +1 -1
  91. package/views/support/highlightOptionsUtils.js +1 -1
  92. package/views/webgl/Program.js +1 -1
  93. package/views/webgl/textureUtils.js +1 -1
  94. package/webscene/SunLighting.js +1 -1
  95. package/widgets/Daylight/DaylightViewModel.js +1 -1
  96. package/widgets/Daylight/support/daylightUtils.js +1 -1
  97. package/widgets/Editor/EditorViewModel.js +1 -1
  98. package/widgets/Editor/support/SketchController.js +1 -1
  99. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  100. package/widgets/Features/FeaturesViewModel.js +1 -1
  101. package/widgets/Legend/support/sizeRampUtils.js +1 -1
  102. package/widgets/OrientedImageryViewer/constants.js +1 -1
  103. package/widgets/OrientedImageryViewer/navigation/errors.js +1 -1
  104. package/widgets/OrientedImageryViewer.js +1 -1
  105. package/widgets/ShadowCast/css.js +1 -1
  106. package/widgets/TimeSlider/TimeSliderViewModel.js +1 -1
  107. package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +1 -1
  108. package/widgets/UtilityNetworkTraceAnalysis/UtilityNetworkTraceAnalysisViewModel.js +1 -1
  109. package/widgets/smartMapping/SmartMappingSliderViewModel.js +1 -1
  110. package/widgets/support/GridControls/GridControlsViewModel.js +1 -1
  111. package/arcade/credentials.js +0 -5
  112. package/arcade/featureset/support/Guid.js +0 -5
  113. package/arcade/request.js +0 -5
  114. package/arcade/serviceAreaMetaData.js +0 -5
  115. package/assets/esri/core/workers/chunks/45b450c045d5fadf71b6.js +0 -1
  116. package/assets/esri/core/workers/chunks/4f5e72993a4f5180d703.js +0 -1
  117. package/assets/esri/core/workers/chunks/516b30778cd54d29e362.js +0 -1
  118. package/assets/esri/core/workers/chunks/576792b5e1e13084adba.js +0 -1
  119. package/assets/esri/core/workers/chunks/5f7dc9657803ae3140a6.js +0 -1
  120. package/assets/esri/core/workers/chunks/8d51b6823ef5d290c670.js +0 -1
  121. package/assets/esri/core/workers/chunks/947085d176bd3a930e6f.js +0 -1
  122. package/assets/esri/core/workers/chunks/d09ded9fb621491e2466.js +0 -1
  123. package/assets/esri/core/workers/chunks/eb61b47df99a54a364c8.js +0 -1
  124. package/rest/versionManagement/support/GetVersionInfosResult.js +0 -5
  125. package/symbols/cim/quantizeTime.js +0 -5
  126. package/undoredo/support/DataEditingContext.js +0 -5
  127. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/WriterRegistry.js +0 -5
  128. package/views/2d/interactive/editingTools/MediaTransformToolsWrapper.js +0 -5
  129. package/views/2d/layers/features/sources/strategies/chunks/FeatureSourceEndChunk.js +0 -5
  130. package/views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloat16Encoding.glsl.js +0 -25
  131. package/webscene/spec-certification/index.js +0 -5
  132. package/widgets/HighlightConfigurator.js +0 -5
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4307],{2272:(t,e,n)=>{n.d(e,{Dl:()=>u,gf:()=>c,jV:()=>a,lF:()=>h});var i=n(92602),s=n(70333),r=n(4718),o=n(84952),l=n(926);function a(t,e){return e?{...e,query:{...t,...e.query}}:{query:t}}function u(t){return"string"==typeof t?(0,o.An)(t):(0,r.o8)(t)}function h(t,e,n){const i={};for(const s in t){if("declaredClass"===s)continue;const r=t[s];if(null!=r&&"function"!=typeof r)if(Array.isArray(r))i[s]=r.map(t=>h(t));else if("object"==typeof r)if(r.toJSON){const t=r.toJSON(n?.[s]);i[s]=e?t:JSON.stringify(t)}else i[s]=e?r:JSON.stringify(r);else i[s]=r}return i}async function c(t,e,r){const o=function(t,e){return t?e&&(0,l.Qc)(t)?e:(0,l.CG)(t)??s.id?.findCredential(t)?.token:null}(t,e);if(o)return o;!s.id&&i.A.request.useIdentity&&await Promise.all([n.e(7330),n.e(4813),n.e(3747)]).then(n.bind(n,73747));const a=await s.id.getCredential(t,r);return a?.token}},6518:(t,e,n)=>{n.d(e,{F:()=>l});var i=n(44208),s=n(75503),r=n(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class l{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new s.wq(9,(0,i.A)("esri-csp-restrictions")?t=>({minX:t[0],minY:t[1],maxX:t[2],maxY:t[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const t=new Array(this._idByBounds.size);let e=0;this._idByBounds.forEach((n,i)=>{t[e++]=i}),this._indexInvalid=!1,this._index.clear(),this._index.load(t)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(t=>this._idByBounds.has(t))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const t=(0,r.Ie)();for(const e of this._boundsById.values())e&&(t[0]=Math.min(e[0],t[0]),t[1]=Math.min(e[1],t[1]),t[2]=Math.max(e[2],t[2]),t[3]=Math.max(e[3],t[3]));return t}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(t){const e=this._boundsById.get(t);this._boundsById.delete(t),e&&(this._idByBounds.delete(e),this._indexInvalid||this._index.remove(e))}forEachInBounds(t,e){this._loadIndex(),function(t,e,n){(function(t){o.minX=t[0],o.minY=t[1],o.maxX=t[2],o.maxY=t[3]})(e),t.search(o,n)}(this._index,t,t=>e(this._idByBounds.get(t)))}get(t){return this._boundsById.get(t)}has(t){return this._boundsById.has(t)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(t,e){if(!this._indexInvalid){const e=this._boundsById.get(t);e&&(this._index.remove(e),this._idByBounds.delete(e))}this._boundsById.set(t,e),e&&(this._idByBounds.set(e,t),this._indexInvalid||(this._boundsToLoad.push(e),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},9762:(t,e,n)=>{n.r(e),n.d(e,{projectBuffer:()=>s});var i=n(37539);function s(t,e,n,s,r,o,l=Math.floor(t.length/3)){const a=(0,i.jd)(e,r);if(null==a)return!1;if(a===i.pO){if(t===s&&n===o)return!0;const e=n+3*l;for(let i=n,r=o;i<e;i++,r++)s[r]=t[i];return!0}const u=n+3*l;for(let e=n,i=o;e<u;e+=3,i+=3)a(t,e,s,i);return!0}},36708:(t,e,n)=>{n.d(e,{C_:()=>d,OH:()=>_,Vh:()=>p,on:()=>c,pc:()=>g,wB:()=>a,z7:()=>u});var i=n(37955),s=n(36563),r=n(97768),o=n(74887),l=n(14012);function a(t,e,n={}){return h(t,e,n,f)}function u(t,e,n={}){return h(t,e,n,m)}function h(t,e,n={},i){let s=null;const o=n.once?(t,n)=>{i(t)&&((0,r.xt)(s),e(t,n))}:(t,n)=>{i(t)&&e(t,n)};if(s=(0,l.Cn)(t,o,n.sync,n.equals),n.initial){const e=t();o(e,e)}return s}function c(t,e,n,o={}){let l=null,u=null,h=null;function c(){l&&u&&(u.remove(),o.onListenerRemove?.(l),l=null,u=null)}function d(t){o.once&&o.once&&(0,r.xt)(h),n(t)}const f=a(t,(t,n)=>{c(),(0,i.wb)(t)&&(l=t,u=(0,i.on)(t,e,d),o.onListenerAdd?.(t))},{sync:o.sync,initial:!0});return h=(0,s.hA)(()=>{f.remove(),c()}),h}function d(t,e){return function(t,e,n){if((0,o.G4)(n))return Promise.reject((0,o.NK)());const i=t();if(e?.(i))return Promise.resolve(i);let l=null;function a(){l=(0,r.xt)(l)}return new Promise((i,r)=>{l=(0,s.vE)([(0,o.u7)(n,()=>{a(),r((0,o.NK)())}),h(t,t=>{a(),i(t)},{sync:!1,once:!0},e??f)])})}(t,m,e)}function f(t){return!0}function m(t){return!!t}n(80559);const _={sync:!0},p={initial:!0},g={sync:!0,initial:!0}},37539:(t,e,n)=>{n.d(e,{pO:()=>_,jd:()=>d,Tp:()=>f,w5:()=>c});var i=n(34727),s=n(83047),r=n(73941),o=n(79258);Math.PI;const l=o.$O.radius,a=o.$O.eccentricitySquared,u={a1:l*a,a2:l*a*l*a,a3:l*a*a/2,a4:l*a*l*a*2.5,a5:l*a+l*a*a/2,a6:1-a};o.$O.radius,o.$O.flattening,o.Sw.radius,o.Sw.flattening,o.sH.radius,o.sH.flattening,o.sH.radius;var h=n(21325);const c={2:{5:_,7:null,9:null,10:_,1:v,6:null,8:null,0:null,3:g,11:y,2:_,4:S},5:{5:_,7:null,9:null,10:_,1:v,6:null,8:null,0:null,3:g,11:y,2:_,4:S},7:{5:null,7:_,9:null,10:_,1:null,6:I,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:_,10:_,1:null,6:null,8:w,0:null,3:null,11:null,2:null,4:null},3:{5:p,7:null,9:null,10:p,1:function(t,e,n,i){const s=t[e]/Y,r=F-2*Math.atan(Math.exp(-t[e+1]/Y)),o=Y+t[e+2],l=Math.cos(r)*o;n[i]=Math.cos(s)*l,n[i+1]=Math.sin(s)*l,n[i+2]=Math.sin(r)*o},6:null,8:null,0:null,3:_,11:function(t,e,n,i){p(t,e,n,i),y(n,i,n,i)},2:p,4:function(t,e,n,i){p(t,e,n,i),S(n,i,n,i)}},4:{5:k,7:null,9:null,10:k,1:function(t,e,n,i){k(t,e,n,i),v(n,i,n,i)},6:null,8:null,0:null,3:function(t,e,n,i){k(t,e,n,i),g(n,i,n,i)},11:function(t,e,n,i){k(t,e,n,i),y(n,i,n,i)},2:k,4:_},1:{5:R,7:null,9:null,10:R,1:_,6:null,8:null,0:null,3:function(t,e,n,i){R(t,e,n,i),g(n,i,n,i)},11:function(t,e,n,i){R(t,e,n,i),y(n,i,n,i)},2:R,4:function(t,e,n,i){R(t,e,n,i),S(n,i,n,i)}},6:{5:null,7:B,9:null,10:B,1:null,6:_,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:z,10:z,1:null,6:null,8:_,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:_,3:null,11:null,2:null,4:null},10:{5:_,7:_,9:_,10:_,1:v,6:I,8:w,0:null,3:g,11:y,2:_,4:S},11:{5:x,7:null,9:null,10:x,1:function(t,e,n,i){x(t,e,n,i),v(n,i,n,i)},6:null,8:null,0:null,3:function(t,e,n,i){x(t,e,n,i),g(n,i,n,i)},11:_,2:x,4:function(t,e,n,i){x(t,e,n,i),S(n,i,n,i)}}};function d(t,e){return f(t,e)?.projector}function f(t,e){if(null==t||null==e)return null;if(j.source.spatialReference===t&&j.dest.spatialReference===e)return j;const n=m(t,j.source),i=m(e,j.dest);return 0===n&&0===i?(0,h.aI)(t,e)?j.projector=_:j.projector=null:j.projector=c[n][i],j}function m(t,e){return t?e.spatialReference===t?e.spatialReferenceId:(e.spatialReference=t,"metersPerUnit"in e&&(e.metersPerUnit=(0,s.GA)(t,1)),(0,r.jA)(t)?e.spatialReferenceId=1:(0,h.oT)(t)?e.spatialReferenceId=2:(0,h.K8)(t)?e.spatialReferenceId=3:(0,h.r1)(t)?e.spatialReferenceId=11:t.wkt===r.Ro.wkt?e.spatialReferenceId=4:4490===t.wkid?e.spatialReferenceId=5:t.wkt===r.FY.wkt?e.spatialReferenceId=6:t.wkt===r.LJ.wkt?e.spatialReferenceId=8:(0,h.q8)(t)?e.spatialReferenceId=7:(0,h.KQ)(t)?e.spatialReferenceId=9:e.spatialReferenceId=0):0}function _(t,e,n,i){t!==n&&(n[i++]=t[e++],n[i++]=t[e++],n[i]=t[e])}function p(t,e,n,i){n[i]=T*(t[e]/Y),n[i+1]=T*(F-2*Math.atan(Math.exp(-t[e+1]/Y))),n[i+2]=t[e+2]}function g(t,e,n,s){!function(t,e,n,s,r){const o=.4999999*Math.PI,l=(0,i.qE)(A*t[e+1],-o,o),a=Math.sin(l);n[s++]=A*t[e]*r.radius,n[s++]=r.halfSemiMajorAxis*Math.log((1+a)/(1-a)),n[s]=t[e+2]}(t,e,n,s,o.$O)}function y(t,e,n,i){n[i]=t[e]*X,n[i+1]=t[e+1]*X,n[i+2]=t[e+2]}function x(t,e,n,i){n[i]=t[e]*E,n[i+1]=t[e+1]*E,n[i+2]=t[e+2]}function M(t,e,n,i,s){const r=s+t[e+2],o=A*t[e+1],l=A*t[e],a=Math.cos(o)*r;n[i]=Math.cos(l)*a,n[i+1]=Math.sin(l)*a,n[i+2]=Math.sin(o)*r}function w(t,e,n,i){M(t,e,n,i,o.Sw.radius)}function I(t,e,n,i){M(t,e,n,i,o.sH.radius)}function v(t,e,n,i){M(t,e,n,i,o.$O.radius)}function b(t,e,n,s,r){const o=t[e],l=t[e+1],a=t[e+2],u=Math.sqrt(o*o+l*l+a*a),h=(0,i.YN)(a/(0===u?1:u)),c=Math.atan2(l,o);n[s++]=T*c,n[s++]=T*h,n[s]=u-r}function z(t,e,n,i){b(t,e,n,i,o.Sw.radius)}function B(t,e,n,i){b(t,e,n,i,o.sH.radius)}function R(t,e,n,i){b(t,e,n,i,o.$O.radius)}function S(t,e,n,i){!function(t,e,n,i,s){const r=A*t[e],o=A*t[e+1],l=t[e+2],a=Math.sin(o),u=Math.cos(o),h=s.radius/Math.sqrt(1-s.eccentricitySquared*a*a);n[i++]=(h+l)*u*Math.cos(r),n[i++]=(h+l)*u*Math.sin(r),n[i++]=(h*(1-s.eccentricitySquared)+l)*a}(t,e,n,i,o.$O)}function k(t,e,n,i){const s=u,r=t[e],l=t[e+1],a=t[e+2];let h,c,d,f,m,_,p,g,y,x,M,w,I,v,b,z,B,R,S,k,j;h=Math.abs(a),c=r*r+l*l,d=Math.sqrt(c),f=c+a*a,m=Math.sqrt(f),k=Math.atan2(l,r),_=a*a/f,p=c/f,v=s.a2/m,b=s.a3-s.a4/m,p>.3?(g=h/m*(1+p*(s.a1+v+_*b)/m),S=Math.asin(g),x=g*g,y=Math.sqrt(1-x)):(y=d/m*(1-_*(s.a5-v-p*b)/m),S=Math.acos(y),x=1-y*y,g=Math.sqrt(x)),M=1-o.$O.eccentricitySquared*x,w=o.$O.radius/Math.sqrt(M),I=s.a6*w,v=d-w*y,b=h-I*g,B=y*v+g*b,z=y*b-g*v,R=z/(I/M+B),S+=R,j=B+z*R/2,a<0&&(S=-S),n[i++]=T*k,n[i++]=T*S,n[i]=j}const j={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:_},A=(0,i.kU)(1),T=(0,i.KJ)(1),F=.5*Math.PI,Y=o.$O.radius,X=Y*Math.PI/180,E=180/(Y*Math.PI)},37730:(t,e,n)=>{n.d(e,{T:()=>s});var i=n(43334);const s={getObjectId:t=>t.objectId,getAttributes:t=>t.attributes,getAttribute:(t,e)=>t.attributes[e],cloneWithGeometry:(t,e)=>new i.Om(e,t.attributes,null,t.objectId),getGeometry:t=>t.geometry,getCentroid:(t,e)=>t.ensureCentroid(e)}},58376:(t,e,n)=>{n.d(e,{J:()=>m});var i=n(4718),s=n(74887),r=n(65864),o=n(17136),l=n(21325),a=n(31464),u=n(95422),h=n(8384),c=n(58727),d=n(62798),f=n(62660);async function m(t,e,n){const m=(0,s.Mq)(n),{point:_,distance:p,returnEdge:g,vertexMode:y}=e;if(!g&&"none"===y)return{candidates:[]};let x=(0,i.o8)(e.query);x=await t.schedule(()=>(0,c.T2)(x,t.definitionExpression,t.spatialReference),m),x=await t.reschedule(()=>(0,d.B4)(x,{availableFields:t.availableFields,fieldsIndex:t.fieldsIndex,geometryType:t.geometryType,spatialReference:t.spatialReference}),m);const M=!(0,l.aI)(_.spatialReference,t.spatialReference);M&&await(0,a.Nk)(_.spatialReference,t.spatialReference);const w="number"==typeof p?p:p.x,I="number"==typeof p?p:p.y,v={xmin:_.x-w,xmax:_.x+w,ymin:_.y-I,ymax:_.y+I,spatialReference:_.spatialReference},b=M?(0,a.Cv)(v,t.spatialReference):v;if(!b)return{candidates:[]};const z=(await(0,o.el)((0,r.rS)(_),null,{signal:m}))[0],B=(await(0,o.el)((0,r.rS)(b),null,{signal:m}))[0];if(null==z||null==B)return{candidates:[]};const R=new h.G(await t.reschedule(()=>t.searchFeatures((0,u.ux)(B.toJSON())),m),x,t);await t.reschedule(()=>t.executeObjectIdsQuery(R),m),await t.reschedule(()=>t.executeTimeQuery(R),m),await t.reschedule(()=>t.executeAttributesQuery(R),m),await t.reschedule(()=>async function(t,e,n){const{query:i}=e,{spatialRel:s}=i;if(!e?.items?.length||!i.geometry||!s)return;const r=await(0,f.xt)(s,i.geometry,t.geometryType,t.hasZ,t.hasM),o=await t.runSpatialFilter(e.items,t=>r(t.geometry),n);e.items=o}(t,R,m),m);const S=z.toJSON(),k=M?(0,a.Cv)(S,t.spatialReference):S,j=M?Math.max(b.xmax-b.xmin,b.ymax-b.ymin)/2:p;return R.createSnappingResponse({...e,point:k,distance:j},x.returnZ,_.spatialReference)}},62815:(t,e,n)=>{n.d(e,{N:()=>o});var i=n(83047),s=n(73941),r=n(21325);function o(t,e,n){if(null==e||null==n||n.vcsWkid||(0,r.aI)(e,n)||(0,s.xP)(e)||(0,s.xP)(n))return null;const o=(0,i.G9)(e)/(0,i.G9)(n);if(1===o)return null;switch(t){case"point":case"esriGeometryPoint":return t=>function(t,e){null!=t?.z&&(t.z*=e)}(t,o);case"polyline":case"esriGeometryPolyline":return t=>function(t,e){if(t)for(const n of t.paths)for(const t of n)t.length>2&&(t[2]*=e)}(t,o);case"polygon":case"esriGeometryPolygon":return t=>function(t,e){if(t)for(const n of t.rings)for(const t of n)t.length>2&&(t[2]*=e)}(t,o);case"multipoint":case"esriGeometryMultipoint":return t=>function(t,e){if(t)for(const n of t.points)n.length>2&&(n[2]*=e)}(t,o);case"extent":case"esriGeometryEnvelope":return t=>function(t,e){t&&null!=t.zmin&&null!=t.zmax&&(t.zmin*=e,t.zmax*=e)}(t,o);default:return null}}},66344:(t,e,n)=>{n.d(e,{q:()=>l});const i=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class s{get size(){return this._size}constructor(t=10485760){this._maxSize=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._users=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._users.clear(),this._db=null}register(t){this._users.set(t.id.slice(0,-1),t)}deregister(t){this.clear(t),this._sizeLimits.delete(t),this._users.delete(t.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize=Math.max(t,-1),this._checkSize()}getSize(t,e){const n=this._db.get(t.id+e);return n?.size??0}put(t,e,n,s,o){e=t.id+e;const l=this._db.get(e);if(l&&(this._size-=l.size,t.size-=l.size,this._db.delete(e),l.entry!==n&&this._notifyRemove(e,l.entry,l.size,0)),s>this._maxSize)return void this._notifyRemove(e,n,s,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return i||console.warn(`Refusing to cache entry with size ${s} for key ${e}`),void this._notifyRemove(e,n,0,0);const a=1+Math.max(o,-4)- -3;this._db.set(e,new r(n,s,a)),this._size+=s,t.size+=s,this._checkSize()}updateSize(t,e,n,i){e=t.id+e;const s=this._db.get(e);if(s&&s.entry===n){for(this._size-=s.size,t.size-=s.size;i>this._maxSize;){const t=this._notifyRemove(e,n,i,1);if(!(null!=t&&t>0))return void this._db.delete(e);i=t}s.size=i,this._size+=i,t.size+=i,this._checkSize()}}pop(t,e){e=t.id+e;const n=this._db.get(e);if(n)return this._size-=n.size,t.size-=n.size,this._db.delete(e),++this._hit,n.entry;++this._miss}get(t,e){e=t.id+e;const n=this._db.get(e);if(void 0!==n)return this._db.delete(e),n.lives=n.lifetime,this._db.set(e,n),++this._hit,n.entry;++this._miss}peek(t,e){const n=this._db.get(t.id+e);return n?++this._hit:++this._miss,n?.entry}get performanceInfo(){const t={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},e={},n=new Array;this._db.forEach((t,i)=>{const s=t.lifetime;n[s]=(n[s]||0)+t.size,this._users.forEach(n=>{const{id:s,name:r}=n;if(i.startsWith(s)){const n=e[r]||0;e[r]=n+t.size}})});const i={};this._users.forEach(t=>{const n=t.name;if("hitRate"in t&&"number"==typeof t.hitRate&&!isNaN(t.hitRate)&&t.hitRate>0){const s=e[n]||0;e[n]=s,i[n]=Math.round(100*t.hitRate)+"%"}else i[n]="0%"});const s=Object.keys(e);s.sort((t,n)=>e[n]-e[t]),s.forEach(n=>t[n]=Math.round(e[n]/2**20)+"MB / "+i[n]);for(let e=n.length-1;e>=0;--e){const i=n[e];i&&(t["Priority "+(e+-3-1)]=Math.round(i/this._size*100)+"%")}return t}resetStats(){this._hit=this._miss=0,this._users.forEach(t=>t.resetHitRate())}clear(t){const e=t.id;this._db.forEach((t,n)=>{n.startsWith(e)&&(this._size-=t.size,this._db.delete(n),this._notifyRemove(n,t.entry,t.size,0))}),t.size=0}clearAll(){this._db.forEach((t,e)=>this._notifyRemove(e,t.entry,t.size,0)),this._users.forEach(t=>t.size=0),this._size=0,this._db.clear()}*values(t){for(const[e,n]of this._db)e.startsWith(t.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(t,e,n,i){const s=this._users.get(t.split(o)[0])?.removeFunc,r=s?.(e,i,n);return"number"==typeof r?r:null}_checkSize(){this._sizeLimits.forEach((t,e)=>this._checkSizeLimits(t,e)),this._checkSizeLimits(this.maxSize)}setMaxSize(t,e){null==e||e<=0?this._sizeLimits.delete(t):this._sizeLimits.set(t,e)}_checkSizeLimits(t,e){const n=e??this;if(n.size<=t)return;const i=e?.id;let s=!0;for(;s;){s=!1;for(const[r,l]of this._db)if(0===l.lifetime&&(!i||r.startsWith(i))){const i=e??this._users.get(r.split(o)[0]);if(this._purgeItem(r,l,i),n.size<=.9*t)return;s||=this._db.has(r)}}for(const[s,r]of this._db)if(!i||s.startsWith(i)){const i=e??this._users.get(s.split(o)[0]);if(this._purgeItem(s,r,i),n.size<=.9*t)return}}_purgeItem(t,e,n){if(this._db.delete(t),e.lives<=1){this._size-=e.size,n&&(n.size-=e.size);const i=this._notifyRemove(t,e.entry,e.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),e.lives=e.lifetime,e.size=i,this._db.set(t,e))}else--e.lives,this._db.set(t,e)}}class r{constructor(t,e,n){this.entry=t,this.size=e,this.lifetime=n,this.lives=n}}const o=":";class l{constructor(t,e){this.removeFunc=e,this._storage=new s,this.id="",this.name="",this.size=0,this._storage.maxSize=t,this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy(),this._storage=null}put(t,e,n=1){this._storage.put(this,t,e,n,1)}pop(t){return this._storage.pop(this,t)}get(t){return this._storage.get(this,t)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(t){this._storage.maxSize=t}resetHitRate(){}}},69540:(t,e,n)=>{n.d(e,{O:()=>u,P:()=>h});var i=n(31635),s=n(65008),r=(n(44208),n(4718)),o=(n(53966),n(97768)),l=n(88620),a=n(40608);const u=t=>{const e=t;let n=class extends e{clone(t){const e=(0,l.oY)(this);(0,o.Lw)(e,"unable to clone instance of non-accessor class");const n=e.metadata,i=e.store,s={},a=new Map;for(const e in n){const o=n[e],l=i?.originOf(e),u=o.clonable;if(o.readOnly||!1===u||7!==l&&0!==l&&5!==l&&4!==l)continue;const h=this[e];let c=null;if("function"==typeof u)c=u(h,t);else if("reference"===u)c=h;else if(c=(0,r.TU)(h,t),null!=h&&null==c)continue;0===l?a.set(e,c):s[e]=c}const u=new(0,Object.getPrototypeOf(this).constructor)(s);if(a.size){const t=(0,l.oY)(u)?.store;if(t)for(const[e,n]of a)t.set(e,n,0)}return u}};return n=(0,i.Cg)([(0,a.$)("esri.core.Clonable")],n),n},h=u(s.A)},75503:(t,e,n)=>{n.d(e,{EC:()=>z,wq:()=>l});var i=n(4576),s=n(21818),r=(n(44208),n(15142)),o=n(11006);class l{constructor(t=9,e){this._compareMinX=d,this._compareMinY=f,this._toBBox=t=>t,this._maxEntries=Math.max(4,t||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),e&&("function"==typeof e?this._toBBox=e:this._initFormat(e)),this.clear()}destroy(){this.clear(),w.prune(),I.prune(),v.prune(),b.prune()}all(t){a(this._data,t)}search(t,e){let n=this._data;const i=this._toBBox;if(x(t,n))for(w.clear();n;){for(let s=0,r=n.children.length;s<r;s++){const r=n.children[s],o=n.leaf?i(r):r;x(t,o)&&(n.leaf?e(r):y(t,o)?a(r,e):w.push(r))}n=w.pop()}}collides(t){let e=this._data;const n=this._toBBox;if(!x(t,e))return!1;for(w.clear();e;){for(let i=0,s=e.children.length;i<s;i++){const s=e.children[i],r=e.leaf?n(s):s;if(x(t,r)){if(e.leaf||y(t,r))return!0;w.push(s)}}e=w.pop()}return!1}load(t){if(!t.length)return this;if(t.length<this._minEntries){for(let e=0,n=t.length;e<n;e++)this.insert(t[e]);return this}let e=this._build(t.slice(),0,t.length-1,0);if(this._data.children.length)if(this._data.height===e.height)this._splitRoot(this._data,e);else{if(this._data.height<e.height){const t=this._data;this._data=e,e=t}this._insert(e,this._data.height-e.height-1,!0)}else this._data=e;return this}insert(t){return t&&this._insert(t,this._data.height-1),this}clear(){return this._data=new R([]),this}remove(t){if(!t)return this;let e,n=this._data,r=null,o=0,l=!1;const a=this._toBBox(t);for(v.clear(),b.clear();n||v.length>0;){if(n||(n=v.pop(),r=v.data[v.length-1],o=b.pop()??0,l=!0),n.leaf&&(e=(0,i.qh)(n.children,(0,s.zI)(t),n.children.length,n.indexHint),-1!==e))return n.children.splice(e,1),v.push(n),this._condense(v),this;l||n.leaf||!y(n,a)?r?(o++,n=r.children[o],l=!1):n=null:(v.push(n),b.push(o),o=0,r=n,n=n.children[0])}return this}toJSON(){return this._data}fromJSON(t){return this._data=t,this}_build(t,e,n,i){const s=n-e+1;let r=this._maxEntries;if(s<=r){const i=new R(t.slice(e,n+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(s)/Math.log(r)),r=Math.ceil(s/r**(i-1)));const o=new S([]);o.height=i;const l=Math.ceil(s/r),a=l*Math.ceil(Math.sqrt(r));M(t,e,n,a,this._compareMinX);for(let s=e;s<=n;s+=a){const e=Math.min(s+a-1,n);M(t,s,e,l,this._compareMinY);for(let n=s;n<=e;n+=l){const s=Math.min(n+l-1,e);o.children.push(this._build(t,n,s,i-1))}}return u(o,this._toBBox),o}_insert(t,e,n){const i=this._toBBox,s=n?t:i(t);v.clear();const r=function(t,e,n,i){for(;i.push(e),!0!==e.leaf&&i.length-1!==n;){let n,i=1/0,s=1/0;for(let r=0,o=e.children.length;r<o;r++){const o=e.children[r],l=m(o),a=p(t,o)-l;a<s?(s=a,i=l<i?l:i,n=o):a===s&&l<i&&(i=l,n=o)}e=n||e.children[0]}return e}(s,this._data,e,v);for(r.children.push(t),c(r,s);e>=0&&v.data[e].children.length>this._maxEntries;)this._split(v,e),e--;!function(t,e,n){for(let i=n;i>=0;i--)c(e.data[i],t)}(s,v,e)}_split(t,e){const n=t.data[e],i=n.children.length,s=this._minEntries;this._chooseSplitAxis(n,s,i);const r=this._chooseSplitIndex(n,s,i);if(!r)return;const o=n.children.splice(r,n.children.length-r),l=n.leaf?new R(o):new S(o);l.height=n.height,u(n,this._toBBox),u(l,this._toBBox),e?t.data[e-1].children.push(l):this._splitRoot(n,l)}_splitRoot(t,e){this._data=new S([t,e]),this._data.height=t.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(t,e,n){let i,s,r;i=s=1/0;for(let o=e;o<=n-e;o++){const e=h(t,0,o,this._toBBox),l=h(t,o,n,this._toBBox),a=g(e,l),u=m(e)+m(l);a<i?(i=a,r=o,s=u<s?u:s):a===i&&u<s&&(s=u,r=o)}return r}_chooseSplitAxis(t,e,n){const i=t.leaf?this._compareMinX:d,s=t.leaf?this._compareMinY:f;this._allDistMargin(t,e,n,i)<this._allDistMargin(t,e,n,s)&&t.children.sort(i)}_allDistMargin(t,e,n,i){t.children.sort(i);const s=this._toBBox,r=h(t,0,e,s),o=h(t,n-e,n,s);let l=_(r)+_(o);for(let i=e;i<n-e;i++){const e=t.children[i];c(r,t.leaf?s(e):e),l+=_(r)}for(let i=n-e-1;i>=e;i--){const e=t.children[i];c(o,t.leaf?s(e):e),l+=_(o)}return l}_condense(t){for(let e=t.length-1;e>=0;e--){const n=t.data[e];if(0===n.children.length)if(e>0){const s=t.data[e-1],r=s.children;r.splice((0,i.qh)(r,n,r.length,s.indexHint),1)}else this.clear();else u(n,this._toBBox)}}_initFormat(t){const e=["return a"," - b",";"];this._compareMinX=new Function("a","b",e.join(t[0])),this._compareMinY=new Function("a","b",e.join(t[1])),this._toBBox=new Function("a","return {minX: a"+t[0]+", minY: a"+t[1]+", maxX: a"+t[2]+", maxY: a"+t[3]+"};")}}function a(t,e){let n=t;for(I.clear();n;){if(!0===n.leaf)for(const t of n.children)e((0,s.zI)(t));else I.pushArray(n.children);n=I.pop()??null}}function u(t,e){h(t,0,t.children.length,e,t)}function h(t,e,n,i,s){s||(s=new R([])),s.minX=1/0,s.minY=1/0,s.maxX=-1/0,s.maxY=-1/0;for(let r,o=e;o<n;o++)r=t.children[o],c(s,t.leaf?i(r):r);return s}function c(t,e){t.minX=Math.min(t.minX,e.minX),t.minY=Math.min(t.minY,e.minY),t.maxX=Math.max(t.maxX,e.maxX),t.maxY=Math.max(t.maxY,e.maxY)}function d(t,e){return t.minX-e.minX}function f(t,e){return t.minY-e.minY}function m(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function _(t){return t.maxX-t.minX+(t.maxY-t.minY)}function p(t,e){return(Math.max(e.maxX,t.maxX)-Math.min(e.minX,t.minX))*(Math.max(e.maxY,t.maxY)-Math.min(e.minY,t.minY))}function g(t,e){const n=Math.max(t.minX,e.minX),i=Math.max(t.minY,e.minY),s=Math.min(t.maxX,e.maxX),r=Math.min(t.maxY,e.maxY);return Math.max(0,s-n)*Math.max(0,r-i)}function y(t,e){return t.minX<=e.minX&&t.minY<=e.minY&&e.maxX<=t.maxX&&e.maxY<=t.maxY}function x(t,e){return e.minX<=t.maxX&&e.minY<=t.maxY&&e.maxX>=t.minX&&e.maxY>=t.minY}function M(t,e,n,i,s){const r=[e,n];for(;r.length;){const e=r.pop(),n=r.pop();if(e-n<=i)continue;const l=n+Math.ceil((e-n)/i/2)*i;(0,o.q)(t,l,n,e,s),r.push(n,l,l,e)}}const w=new r.A,I=new r.A,v=new r.A,b=new r.A({deallocator:void 0});class z{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class B extends z{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class R extends B{constructor(t){super(),this.children=t,this.leaf=!0}}class S extends B{constructor(t){super(),this.children=t,this.leaf=!1}}},83221:(t,e,n)=>{n.d(e,{A:()=>m});var i=n(4576),s=n(49186),r=n(65529),o=n(53966),l=n(70328),a=n(19419),u=n(90708),h=n(6518),c=n(51441),d=n(37730);const f=(0,l.vt)();class m{constructor(t){this.geometryInfo=t,this._boundsStore=new h.F,this._featuresById=new Map,this._usedMemory=0,this.events=new r.bk,this.featureAdapter=d.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let t=0;return this._featuresById.forEach(e=>{null!=e.geometry&&e.geometry.coords&&(t+=e.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:t/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(t){if(null==this.fullBounds)return null;const[e,n,i,s]=this.fullBounds;return{xmin:e,ymin:n,xmax:i,ymax:s,spatialReference:(0,c.ag)(t)}}add(t){this._add(t),this._emitChanged()}addMany(t){for(const e of t)this._add(e);this._emitChanged()}upsertMany(t){const e=t.map(t=>this._upsert(t));return this._emitChanged(),e.filter(i.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(t){const e=this._featuresById.get(t);return e?(this._remove(e),this._emitChanged(),e):null}removeManyById(t){this._boundsStore.invalidateIndex();for(const e of t){const t=this._featuresById.get(e);t&&this._remove(t)}this._emitChanged()}forEachBounds(t,e){for(const n of t){const t=this._boundsStore.get(n.objectId);t&&e((0,l.Jt)(f,t))}}getFeature(t){return this._featuresById.get(t)}has(t){return this._featuresById.has(t)}forEach(t){this._featuresById.forEach(e=>t(e))}forEachInBounds(t,e){this._boundsStore.forEachInBounds(t,t=>{e(this._featuresById.get(t))})}_emitChanged(){this.events.emit("changed",void 0)}_add(t){if(!t)return;const e=t.objectId;if(null==e)return void o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new s.A("featurestore:invalid-feature","feature id is missing",{feature:t}));const n=this._featuresById.get(e);let i;if(n?(t.displayId=n.displayId,i=this._boundsStore.get(e),this._boundsStore.delete(e),this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(t),!t.geometry?.coords?.length)return this._boundsStore.set(e,null),void this._featuresById.set(e,t);i=(0,u.jQ)(null!=i?i:(0,a.vt)(),t.geometry,this.geometryInfo.hasZ,this.geometryInfo.hasM),null!=i&&this._boundsStore.set(e,i),this._featuresById.set(e,t),this._usedMemory+=this.estimateFeatureUsedMemory?.(t)??0}_upsert(t){const e=t?.objectId;if(null==e)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new s.A("featurestore:invalid-feature","feature id is missing",{feature:t})),null;const n=this._featuresById.get(e);if(!n)return this._add(t),t;this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0;const{geometry:i,attributes:r}=t;for(const t in r)n.attributes[t]=r[t];return i&&(n.geometry=i,this._boundsStore.set(e,(0,u.jQ)((0,a.vt)(),i,this.geometryInfo.hasZ,this.geometryInfo.hasM)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(n)??0,n}_remove(t){null!=this.onFeatureRemove&&this.onFeatureRemove(t);const e=t.objectId;return this._boundsStore.delete(e),this._featuresById.delete(e),this._usedMemory-=this.estimateFeatureUsedMemory?.(t)??0,t}}},98453:(t,e,n)=>{n.d(e,{m:()=>i});const i=new(n(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},98988:(t,e,n)=>{n.r(e),n.d(e,{canProjectWithoutEngine:()=>$,getTransformation:()=>C,getTransformations:()=>q,initializeProjection:()=>U,isEqualBaseGCS:()=>J,isLoaded:()=>A,isLoadedOrLoad:()=>T,isLoadedOrLoadFor:()=>F,load:()=>X,project:()=>E,projectExtent:()=>rt,projectMany:()=>P,projectMultipoint:()=>V,projectOrLoad:()=>O,projectOrLoadMany:()=>L,projectPoint:()=>D,projectPolygon:()=>it,projectPolyline:()=>et,projectWithZConversion:()=>W,projectWithoutEngine:()=>K,requiresLoad:()=>Y,test:()=>Z,tryProjectWithZConversion:()=>H,unload:()=>N});var i=n(49186),s=n(74887),r=n(62788),o=n(95488),l=n(51850),a=n(21276),u=n(73941),h=n(5443),c=n(48526),d=n(83290),f=n(86738),m=n(39829),_=n(82799),p=n(16930),g=n(9762),y=n(37539);function x(t,e,n,i,s,r){return M[0]=t,M[1]=e,M[2]=n,(0,g.projectBuffer)(M,i,0,s,r,0)}const M=(0,l.vt)();let w=0;class I{static fromGE(t){const e=new I;return e._wkt=t.wkt,e._wkid=t.wkid,e._isInverse=t.isInverse,e}constructor(t){this.uid=w++,t?(this._wkt=null!=t.wkt?t.wkt:null,this._wkid=null!=t.wkid?t.wkid:-1,this._isInverse=null!=t.isInverse&&!0===t.isInverse):(this._wkt=null,this._wkid=-1,this._isInverse=!1)}get wkt(){return this._wkt}set wkt(t){this._wkt=t,this.uid=w++}get wkid(){return this._wkid}set wkid(t){this._wkid=t,this.uid=w++}get isInverse(){return this._isInverse}set isInverse(t){this._isInverse=t,this.uid=w++}getInverse(){const t=new I;return t._wkt=this.wkt,t._wkid=this._wkid,t._isInverse=!this.isInverse,t}}class v{static cacheKey(t,e){return[t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??"",e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??""].join()}static fromGE(t){const e=new v;let n="";for(const i of t.steps){const t=I.fromGE(i);e.steps.push(t),n+=t.uid.toString()+","}return e._cachedProjection={},e._gtlistentry=null,e._chain=n,e}constructor(t){if(this.steps=[],this._cachedProjection={},this._chain="",this._gtlistentry=null,t?.steps)for(const e of t.steps)e instanceof I?this.steps.push(e):this.steps.push(new I({wkid:e.wkid,wkt:e.wkt,isInverse:e.isInverse}))}getInverse(){const t=new v;t.steps=[];for(let e=this.steps.length-1;e>=0;e--){const n=this.steps[e];t.steps.push(n.getInverse())}return t}getGTListEntry(){let t="";for(const e of this.steps)t+=e.uid.toString()+",";return t!==this._chain&&(this._gtlistentry=null,this._cachedProjection={},this._chain=t),this._gtlistentry}assignCachedGe(t,e,n){this._cachedProjection[v.cacheKey(t,e)]=n}getCachedGeTransformation(t,e){let n="";for(const t of this.steps)n+=t.uid.toString()+",";n!==this._chain&&(this._gtlistentry=null,this._cachedProjection={},this._chain=n);const i=this._cachedProjection[v.cacheKey(t,e)];return void 0===i?null:i}}var b=n(21325),z=n(62815);let B=null,R=null,S=null,k={};const j=new o.I;function A(){return!!B&&(0,d.i)()}function T(){return!!A()||((0,r.gc)(j),X(),!1)}function F(t,e){return!t||!e||$(t,e)||T()}function Y(t,e){return!$(t,e)&&!A()}function X(t){return null==S&&(S=Promise.all([(0,d.l)(),n.e(9930).then(n.bind(n,49930)).then(t=>t.g),n.e(2731).then(n.bind(n,12731))])),S.then(([,e,{hydratedAdapter:n}])=>{(0,s.Te)(t),R=n,B=e.default,B._enableProjection(d.p),j.notify()})}function E(t,e,n=null,i=null){return Array.isArray(t)?0===t.length?[]:((0,a.H)(t),P(R,t,t[0].spatialReference,e,n,i)):((0,a.f)(t),P(R,[t],t.spatialReference,e,n,i)[0])}function P(t,e,n,i,s=null,r=null){if(null==n||null==i)return e;if($(n,i,s))return e.map(t=>K(t,n,i));if(null==s&&(0,u.jA)(n))return e.map(t=>K(t,n,p.A.WGS84)).map(t=>H(t,i));if(null==s&&(0,u.jA)(i))return e.map(t=>H(t,p.A.WGS84)).map(t=>K(t,p.A.WGS84,i));if(null==s){const t=v.cacheKey(n,i);void 0!==k[t]?s=k[t]:(null==(s=C(n,i,void 0))&&(s=new v),k[t]=s)}if(null==B||null==t)throw new G;return null!=r?B._project(t,e,n,i,s,r):B._project(t,e,n,i,s)}function O(t,e){const n=L([t],e);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function L(t,e){if(!A())for(const n of t)if(null!=n&&!(0,b.aI)(n.spatialReference,e)&&(0,b.fn)(n.spatialReference)&&(0,b.fn)(e)&&!$(n.spatialReference,e))return(0,r.gc)(j),{pending:X(),geometries:null};return{pending:null,geometries:t.map(t=>null==t?null:(0,b.aI)(t.spatialReference,e)?t:(0,b.fn)(t.spatialReference)&&(0,b.fn)(e)?H(t,e):null)}}function C(t,e,n=null){if(null==t||null==e)return null;if(null==B||null==R)throw new G;const i=B._getTransformation(R,t,e,n,n?.spatialReference);return null!==i?v.fromGE(i):null}function q(t,e,n=null){if(null==B||null==R)throw new G;const i=B._getTransformationBySuitability(R,t,e,n,n?.spatialReference);if(null!==i){const t=[];for(const e of i)t.push(v.fromGE(e));return t}return[]}class G extends i.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function N(){B=null,R=null,S=null,k={}}const Z={get loadPromise(){return S}};function H(t,e){try{const n=E(t,e);if(null==n)return null;"xmin"in t&&"xmin"in n&&(n.zmin=t.zmin,n.zmax=t.zmax);const i=(0,z.N)(n.type,t.spatialReference,e);return null!=i&&i(n),n}catch(t){if(!(t instanceof G))throw t;return null}}async function W(t,e,n){const i=t.spatialReference;return null!=i&&null!=e&&await U(i,e,null,n),H(t,e)}function $(t,e,n){return!n&&(!!(0,b.aI)(t,e)||(0,b.fn)(t)&&(0,b.fn)(e)&&!!(0,y.jd)(t,e))}function J(t,e){if((0,b.aI)(t,e))return!0;if(!(0,b.fn)(t)||!(0,b.fn)(e))return!1;const n=(0,b.oT)(t)||(0,b.K8)(t)||(0,b.x1)(t),i=(0,b.oT)(e)||(0,b.K8)(e)||(0,b.x1)(e);return n&&i}async function U(t,e,n,i){if(A())return(0,s.NO)(i);if(Array.isArray(t)){for(const{source:e,dest:n,geographicTransformation:s}of t)if(e&&n&&!$(e,n,s))return X(i)}else if(t&&e&&!$(t,e,n))return X(i);return(0,s.NO)(i)}function K(t,e,n){return t?"x"in t?Q(t,e,new f.A,n,0):"xmin"in t?ot(t,e,new h.A,n,0):"rings"in t?st(t,e,new m.A,n,0):"paths"in t?nt(t,e,new _.A,n,0):"points"in t?tt(t,e,new c.A,n,0):null:null}function D(t,e,n=e.spatialReference,i=0){return null!=n&&null!=t.spatialReference&&null!=Q(t,t.spatialReference,e,n,i)}function Q(t,e,n,i,s){at[0]=t.x,at[1]=t.y;const r=t.z;return at[2]=void 0!==r?r:s,(0,g.projectBuffer)(at,e,0,at,i,0)?(n.x=at[0],n.y=at[1],n.spatialReference=i,void 0!==r||(0,u.xP)(i)?(n.z=at[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===t.m?(n.m=void 0,n.hasM=!1):(n.m=t.m,n.hasM=!0),n):null}function V(t,e,n=e.spatialReference,i=0){return null!=t.spatialReference&&null!=n&&null!=tt(t,t.spatialReference,e,n,i)}function tt(t,e,n,i,s){const{points:r,hasZ:o,hasM:l}=t,a=[],h=r.length,c=[];for(const t of r)c.push(t[0],t[1],o?t[2]:s);if(!(0,g.projectBuffer)(c,e,0,c,i,0,h))return null;const d=o||(0,u.xP)(i);for(let t=0;t<h;++t){const e=3*t,n=c[e],i=c[e+1];d&&l?a.push([n,i,c[e+2],r[t][3]]):d?a.push([n,i,c[e+2]]):l?a.push([n,i,r[t][2]]):a.push([n,i])}return n.points=a,n.spatialReference=i,n.hasZ=o,n.hasM=l,n}function et(t,e,n=e.spatialReference,i=0){return null!=t.spatialReference&&null!=n&&null!=nt(t,t.spatialReference,e,n,i)}function nt(t,e,n,i,s){const{paths:r,hasZ:o,hasM:l}=t,a=[];if(!lt(r,o??!1,l??!1,e,a,i,s))return null;const h=o||(0,u.xP)(i);return n.paths=a,n.spatialReference=i,n.hasZ=h,n.hasM=l,n}function it(t,e,n=e.spatialReference,i=0){return null!=t.spatialReference&&null!=n&&null!=st(t,t.spatialReference,e,n,i)}function st(t,e,n,i,s){const{rings:r,hasZ:o,hasM:l}=t,a=[];if(!lt(r,o??!1,l??!1,e,a,i,s))return null;const h=o||(0,u.xP)(i);return n.rings=a,n.spatialReference=i,n.hasZ=h,n.hasM=l,n}function rt(t,e,n=e.spatialReference,i=0){return null!=t.spatialReference&&null!=n&&null!=ot(t,t.spatialReference,e,n,i)}function ot(t,e,n,i,s){const{xmin:r,ymin:o,xmax:l,ymax:a,hasZ:h,hasM:c}=t;if(!x(r,o,h?t.zmin:s,e,at,i))return null;const d=h||(0,u.xP)(i);return n.xmin=at[0],n.ymin=at[1],d&&(n.zmin=at[2]),x(l,a,h?t.zmax:s,e,at,i)?(n.xmax=at[0],n.ymax=at[1],d&&(n.zmax=at[2]),c&&(n.mmin=t.mmin,n.mmax=t.mmax),n.spatialReference=i,n):null}function lt(t,e,n,i,s,r,o=0){const l=new Array;for(const n of t)for(const t of n)l.push(t[0],t[1],e?t[2]:o);if(!(0,g.projectBuffer)(l,i,0,l,r,0))return!1;let a=0;s.length=0;const h=e||(0,u.xP)(r);for(const e of t){const t=new Array;for(const i of e)h&&n?t.push([l[a++],l[a++],l[a++],i[3]]):h?t.push([l[a++],l[a++],l[a++]]):n?(t.push([l[a++],l[a++],i[2]]),a++):(t.push([l[a++],l[a++]]),a++);s.push(t)}return!0}const at=(0,l.vt)()}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1728],{71728:(e,t,a)=>{a.r(t),a.d(t,{default:()=>R});var i=a(31635),n=a(67996),o=a(7762),s=a(49186),r=a(53966),l=a(91869),h=a(92071),d=a(74887),c=a(36708),p=a(10107),u=(a(44208),a(87811),a(40608)),y=a(35666),g=a(5443),m=a(86738),f=a(82799),M=a(4146),w=a(90708),L=a(15375);const b={MULTIPLIER:"multiplier",ABSOLUTE:"absolute-value"};var C=a(80340),k=a(90323),T=a(85342),N=a(69860),D=a(30504),x=a(63074),v=a(16131),A=a(25036),E=a(10873),I=a(8460),_=a(62568);let S=class extends((0,v.q)((0,x.dM)((0,A.j)((0,h.P)(M.A))))){constructor(e){if(super(e),this.url=null,this.dataPreloadedInLocalCache=!1,this.initializationLinkChartConfig=null,this.membershipModified=!0,this._currentLinkChartConfig={layoutMode:"organic-standard"},this._graphTypeLookup=new Map,this.dataManager=null,this.knowledgeGraph=null,this.layers=new(o.A.ofType(k.A)),this.entityLinkChartDiagramLookup=new Map,this.relationshipLinkChartDiagramLookup=new Map,this.linkChartExtent=new g.A({xmin:-1e-7,ymin:-1e-7,xmax:1e-7,ymax:1e-7}),this.memberEntityTypes=null,this.memberRelationshipTypes=null,this.operationalLayerType="LinkChartLayer",this.sublayerIdsCache=new Map,this.tables=new(o.A.ofType(k.A)),this.type="link-chart",this.chronologicalAuxiliaryGraphics=null,this._originalInclusionList=e?.initializationInclusionModeDefinition,e?.dataPreloadedInLocalCache&&!e?.initializationInclusionModeDefinition)throw new s.A("knowledge-graph:linkchart-layer-constructor","If creating a link chart composite layer and configured that data is already loaded in the cache, you must specify an inclusion list so the Composite Layer knows what records belong to it");this.addHandles((0,c.wB)(()=>this.layers.concat(this.tables),(e,t)=>this._handleSublayersChange(e,t),c.OH))}normalizeCtorArgs(e){if(!e)return{};const{url:t,title:a,dataPreloadedInLocalCache:i,initializationLinkChartConfig:n}=e;return{url:t,title:a,dataPreloadedInLocalCache:i,initializationLinkChartConfig:n}}_initializeLayerProperties(e){if(!this.title&&this.url){const e=this.url.split("/");this.title=e[e.length-2]}const t=new Set;let a=[],i=[];if(e.inclusionModeDefinition&&(!e.inclusionModeDefinition.namedTypeDefinitions||e.inclusionModeDefinition.namedTypeDefinitions.size<1))throw new s.A("knowledge-graph:composite-layer-constructor","If an explicit inclusion definition is defined, at least one namedTypeDefinition must also be defined");e.inclusionModeDefinition?.generateAllSublayers?(a=e.knowledgeGraph.dataModel.entityTypes??[],i=e.knowledgeGraph.dataModel.relationshipTypes??[]):e.inclusionModeDefinition?.namedTypeDefinitions&&e.inclusionModeDefinition?.namedTypeDefinitions.size>0?e.inclusionModeDefinition?.namedTypeDefinitions.forEach((n,o)=>{const s=this._graphTypeLookup.get(o);if(!s)return r.A.getLogger(this).warn(`A named type, ${o}, was in the inclusion list that wasn't in the data model and will be removed`),void e.inclusionModeDefinition?.namedTypeDefinitions.delete(o);"relationship"===s.type?t.has(o)||(t.add(o),i.push(s)):"entity"===s.type?t.has(o)||(t.add(o),a.push(s)):(r.A.getLogger(this).warn(`A named type, ${o}, was in the inclusion list that wasn't properly modeled and will be removed`),e.inclusionModeDefinition?.namedTypeDefinitions.delete(o))}):(a=e.knowledgeGraph.dataModel.entityTypes??[],i=e.knowledgeGraph.dataModel.relationshipTypes??[]);const n=new C.P({knowledgeGraph:e.knowledgeGraph,inclusionModeDefinition:e.inclusionModeDefinition});this.knowledgeGraph=e.knowledgeGraph,this.memberEntityTypes=a,this.memberRelationshipTypes=i,this.dataManager=n}load(e){const t=async()=>{const e=[],t=[];this.loadLayerAssumingLocalCache(),this._layersLoadedFromAuthoritativeItem()||await(0,T.qN)(this),this.dataManager.inclusionModeDefinition&&(this.dataManager.inclusionModeDefinition.generateAllSublayers=!1),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.forEach(e=>{e.useAllData=!1}),await this._initializeDiagram(),this.layers.forEach(a=>{t.push(a.refreshCachedQueryEngine()),e.push(new Promise(e=>{a.on("layerview-create",()=>{e(null)})}))}),this.tables.forEach(e=>{t.push(e.refreshCachedQueryEngine())}),await Promise.all(t)};return this.addResolvingPromise(new Promise(a=>{(0,_.fetchKnowledgeGraph)(this.url).then(async i=>{i.dataModel.entityTypes?.forEach(e=>{e.name&&this._graphTypeLookup.set(e.name,e)}),i.dataModel.relationshipTypes?.forEach(e=>{e.name&&this._graphTypeLookup.set(e.name,e)});const o=this.linkChart?.linkChartProperties;if(6===o?.originIdOf("entitiesUrl")&&(this.membershipModified=!1,this._originalInclusionList=await n.XW.fetchAndConvertSerializedLinkChart({entitiesUrl:o?.entitiesUrl,relationshipsUrl:o?.relationshipsUrl}),this._alignLayersDataModelAndInclusionDefinition(i.dataModel),this.initializationLinkChartConfig={layoutSettings:o?.layoutSettings??void 0,layoutMode:(0,D.k5)(o.layoutType)}),this._initializeLayerProperties({knowledgeGraph:i,inclusionModeDefinition:this._originalInclusionList}),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.size||(this.dataManager.inclusionModeDefinition={generateAllSublayers:!1,namedTypeDefinitions:new Map},this.dataManager.knowledgeGraph.dataModel.entityTypes?.forEach(e=>{e.name&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.set(e.name,{useAllData:!0})}),this.dataManager.knowledgeGraph.dataModel.relationshipTypes?.forEach(e=>{e.name&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.set(e.name,{useAllData:!0})})),this.dataPreloadedInLocalCache){const e=N.A.getInstance();for(const[t,a]of this.dataManager.inclusionModeDefinition?.namedTypeDefinitions??[])for(const i of a.members?.values()??[]){const a=e.readFromStoreById(`${t}__${i.id}`);a&&(0,l.tE)(this.dataManager.sublayerCaches,t,()=>new Map).set(i.id,a)}await t()}else{const a="geographic-organic-standard"===this.initializationLinkChartConfig?.layoutMode;this.addResolvingPromise(this.dataManager.refreshCacheContent(void 0,!1,a,!0).then(async()=>{(0,d.Te)(e),await t()}))}a(null)})})),Promise.resolve(this)}set initializationInclusionModeDefinition(e){"loaded"!==this.loadStatus&&"failed"!==this.loadStatus?this._set("initializationInclusionModeDefinition",e):r.A.getLogger(this).error("#initializationInclusionModeDefinition","initializationInclusionModeDefinition cannot be changed after the layer is loaded.")}get linkChart(){return this.parent}async addRecords(e,t){let a=[];t?.cascadeAddRelationshipEndNodes&&this.dataManager.knowledgeGraph.dataModel&&(a=await(0,D.aq)(e,this.dataManager.knowledgeGraph));const i=e.concat(a).filter(e=>!this.sublayerIdsCache.get(e.typeName)?.has(e.id));i.length>0&&(this.membershipModified=!0),await this._handleNewRecords(i,t)}async createSublayerForNamedType(e){await this.load();const t=this._graphTypeLookup.get(e);if(!t)throw new s.A("knowledge-graph:missing-type","The specified type does not exist in the knowledge graph.");if(this.dataManager.sublayerCaches.has(e))throw new s.A("knowledge-graph:duplicate-type","The specified type already exists as a sublayer.");this.dataManager.sublayerCaches.set(e,new Map),(0,l.tE)(this.sublayerIdsCache,e,()=>new Set);const a=this._createSublayer(t);return"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.set(e,{useAllData:!1,members:new Map}),a.geometryType?this.layers.push(a):this.tables.push(a),await(0,T.qN)(this,[e]),this._refreshNamedTypes(),a}async removeRecords(e,{cascadeRemoveRelationships:t=!0,recalculateLayout:a=!1,overrideMembershipCheck:i=!1}={cascadeRemoveRelationships:!0,recalculateLayout:!1,overrideMembershipCheck:!1}){let n=[];for(const t of e)(i||!1===this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(t.typeName)?.useAllData&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(t.typeName)?.members?.has(t.id))&&n.push(t);if(t){const e=new Set,t=[];for(const t of n)if(this.dataManager.nodeConnectionsLookup.has(t.id))for(const a of this.dataManager.nodeConnectionsLookup.get(t.id))e.add(a);for(const a of e)if(this.dataManager.memberIdTypeLookup.has(a))for(const e of this.dataManager.memberIdTypeLookup.get(a))this.dataManager.relationshipTypeNames.has(e)&&t.push({id:a,typeName:e});n=n.concat(t)}this.dataManager.removeFromLayer(n);for(const e of n)this.sublayerIdsCache.get(e.typeName)?.delete(e.id),this.dataManager.relationshipTypeNames.has(e.typeName)?this.relationshipLinkChartDiagramLookup.delete(e.id):this.entityLinkChartDiagramLookup.delete(e.id);const o=a?void 0:this.getCurrentNodeLocations();await this._calculateLayoutWithSublayerTimeInfo(this._currentLinkChartConfig.layoutMode,{layoutSettings:this._currentLinkChartConfig.layoutSettings,lockedNodeLocations:o}),n.length>0&&(this.membershipModified=!0);const s=[];return this.layers.forEach(e=>{s.push(e.refreshCachedQueryEngine())}),await Promise.all(s),this._refreshNamedTypes(),n}async expand(e,t){let a=[];try{const i=await this.dataManager.getConnectedRecordIds(e,t?.relationshipTypeNames,t);a=i.filter(e=>!this.sublayerIdsCache.get(e.typeName)?.has(e.id)),await this._handleNewRecords(a,t),i.length>0&&(this.membershipModified=!0),(0,d.Te)(t?.signal)}catch(e){throw(0,d.zf)(e)&&a.length>0&&await this.removeRecords(a,{overrideMembershipCheck:!0}),e}return{records:a}}loadLayerAssumingLocalCache(){const e=[...this.memberRelationshipTypes,...this.memberEntityTypes];this.layers.length||0===this.originIdOf("tables")?0===this.originIdOf("layers")?this._createSublayers(e,this.layers,e=>!!e.geometryType):this._updateSublayers(e,this.layers):this.layers=new o.A,this.tables.length||0===this.originIdOf("layers")?0===this.originIdOf("tables")?this._createSublayers(e,this.tables,e=>!e.geometryType):this._updateSublayers(e,this.tables):this.tables=new o.A,this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{const a=(0,l.tE)(this.sublayerIdsCache,t,()=>new Set);e.members?.forEach(({id:e,linkChartLocation:i})=>{if(a.add(e),i){const a="coords"in i&&"lengths"in i?i:(0,w.Ux)(i);this.dataManager.relationshipTypeNames.has(t)?this.relationshipLinkChartDiagramLookup.set(e,a):this.entityLinkChartDiagramLookup.set(e,a)}})})}async calculateLinkChartLayout(e="organic-standard",t){const a=[],i=[],n=[];this.dataManager.sublayerCaches.forEach((e,t)=>{this.dataManager.entityTypeNames.has(t)?e.forEach(e=>{a.push({typeName:t,feature:e})}):this.dataManager.relationshipTypeNames.has(t)&&e.forEach(e=>{i.push({typeName:t,feature:e})})}),this.entityLinkChartDiagramLookup=new Map,this.relationshipLinkChartDiagramLookup=new Map;const o=new Map,h=new Map,c=new Map,p=new Map,u=new Uint8Array(a.length),y=new Float64Array(a.length),M=new Float64Array(a.length),b=new Float64Array(a.length),C=new Float64Array(a.length),k=new Uint32Array(i.length),T=new Uint32Array(i.length),N=new Float64Array(i.length),D=new Float64Array(i.length),x=[];let v=!1;const A=new g.A({xmin:-1e-7,ymin:-1e-7,xmax:1e-7,ymax:1e-7});let E,_="organic-standard",S=0,R=0;const z=I.i6.apply;switch(_="geographic-organic-standard"===e?"organic-standard":e,_){case"organic-standard":E=I.pM.apply;break;case"organic-community":E=I.Tu.apply;break;case"hierarchical-bottom-to-top":E=I.$C.apply;break;case"radial-root-centric":E=I.vJ.apply;break;case"tree-left-to-right":E=I.Xq.apply;break;default:E=I.Wg.apply}let P=!1;a.forEach(({typeName:a,feature:i})=>{if("chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e&&t?.lockedNodeLocations?.has(i.attributes[L.dr])){"geographic-organic-standard"===e&&this.dataManager.geographicLookup.has(a)?u[S]=2:u[S]=0;const n=t.lockedNodeLocations.get(i.attributes[L.dr]);y[S]=n.x,M[S]=n.y}else if("geographic-organic-standard"===e&&this.dataManager.geographicLookup.has(a)){u[S]=2;let e=null;const t=i.attributes[this.dataManager.geographicLookup.get(a).name],n=this.dataManager.geographicLookup.get(a)?.geometryType;switch(n){case"esriGeometryPoint":y[S]=t?.x,M[S]=t?.y;break;case"esriGeometryPolygon":e=t?.centroid,null!=e?.x&&null!=e?.y?(y[S]=e.x,M[S]=e.y):u[S]=1;break;case"esriGeometryPolyline":case"esriGeometryMultipoint":e=t?.extent?.center,null!=e?.x&&null!=e?.y?(y[S]=e.x,M[S]=e.y):u[S]=1;break;default:u[S]=1}(null==y[S]||null==M[S]||Number.isNaN(y[S])||Number.isNaN(M[S]))&&(u[S]=1,y[S]=0,M[S]=0)}else if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){!P&&t?.lockedNodeLocations?.has(i.attributes[L.dr])&&(P=!0);const e=t?.timeInfoByTypeName?.get(a),n=e?.startField,o=n&&e?.startField?i.attributes[n]:null;b[S]=o?new Date(o).getTime():NaN;const s=e?.endField,r=s&&e?.endField?i.attributes[s]:null;C[S]=r?new Date(r).getTime():NaN,y[S]=0,M[S]=0,u[S]=1}else u[S]=1,y[S]=0,M[S]=0;p.set(i.attributes[L.dr],S),x[S]={feature:i,typeName:a},S++}),P&&r.A.getLogger(this).warn("Locked node locations are not supported for chronological layout at this time. Requested node locations were ignored");let G=!1;const O=new Map;i.forEach(a=>{const i=a.feature.attributes[L.Cz],o=a.feature.attributes[L.KQ],s=p.get(i),r=p.get(o),l=t?.timeInfoByTypeName?.get(a.typeName),h=t?.timeInfoByTypeName?l?.startField:null,d=h?a.feature.attributes[h]:null,c=l?.endField,u=c?a.feature.attributes[c]:null;if(void 0!==s&&void 0!==r){let t=i+"-"+o;"chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e||(t=t+"-"+d+"-"+u);const l=O.get(t),h=l?.has(a.typeName);h||(k[R]=s,T[R]=r,"chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e||(N[R]=d?new Date(d).getTime():NaN,D[R]=u?new Date(u).getTime():NaN),void 0===l?O.set(t,new Map([[a.typeName,R]])):l.set(a.typeName,R),R++),n.push(a)}else G=!0,this.relationshipLinkChartDiagramLookup.set(i,null)}),G&&r.A.getLogger(this).warn("A relationship is a member of this layer that has either origin or destination entity nodes that are not members. The diagram geometry will be set to null");const F=this._validateOrganicLayoutSettings(e,t?.layoutSettings?.organicLayoutSettings),Z=this._convertValidatedOrganicSettingsToCalculationSettings(F);await(0,I.Hh)();let B=1,U=null;if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){let a;({status:B,links:U,graphics:a}=z(()=>t?.signal?.aborted??!1,u,y,M,b,C,k.subarray(0,R),T.subarray(0,R),N.subarray(0,R),D.subarray(0,R),"chronological-multi-timeline"===e,t?.layoutSettings?.chronologicalLayoutSettings)),0===B&&(this.chronologicalAuxiliaryGraphics=a)}else({status:B,links:U}=E(()=>t?.signal?.aborted??!1,u,y,M,k.subarray(0,R),T.subarray(0,R),Z.computationBudgetTime,Z.idealEdgeLengthMultiplier,Z.repulsionRadiusMultiplier));if((0,d.Te)(t?.signal),1===B)throw new s.A("knowledge-graph:layout-failed","Attempting to arrange the records in the specified layout failed");if(2===B)throw(0,d.NK)();for(let e=0;e<x.length;e++){if(M[e]>84.9999?M[e]=84.9999:M[e]<-84.9999&&(M[e]=-84.9999),y[e]>179.9999?y[e]=179.9999:y[e]<-179.9999&&(y[e]=-179.9999),x[e].feature.attributes[L.T1]=new m.A(y[e],M[e]),o.has(x[e].typeName)){const t=o.get(x[e].typeName);t?.set(x[e].feature.attributes[L.dr],x[e].feature)}else{const t=new Map;t.set(x[e].feature.attributes[L.dr],x[e].feature),o.set(x[e].typeName,t)}c.set(x[e].feature.attributes[L.dr],x[e].feature);const t=(0,w.Ux)(x[e].feature.attributes[L.T1]);this.entityLinkChartDiagramLookup.set(x[e].feature.attributes[L.dr],x[e].feature.attributes[L.T1]?t:null);const a=(0,l.tE)(this.dataManager.inclusionModeDefinition.namedTypeDefinitions,x[e].typeName,()=>({useAllData:!1,members:new Map}));(0,l.tE)(a.members,x[e].feature.attributes[L.dr],()=>({id:x[e].feature.attributes[L.dr],linkChartLocation:void 0})).linkChartLocation=x[e].feature.attributes[L.T1];const{x:i,y:n}=x[e].feature.attributes[L.T1];if(v)A.xmin=Math.min(A.xmin,i),A.xmax=Math.max(A.xmax,i),A.ymin=Math.min(A.ymin,n),A.ymax=Math.max(A.ymax,n);else{const e=1e-7;A.xmin=i-e,A.xmax=i+e,A.ymin=n-e,A.ymax=n+e,v=!0}}if(this.linkChartExtent.xmin=A.xmin,this.linkChartExtent.xmax=A.xmax,this.linkChartExtent.ymin=A.ymin,this.linkChartExtent.ymax=A.ymax,!U)throw new s.A("knowledge-graph:layout-failed","Attempting to retrieve link geometry from diagram engine failed");const j=new Map,Q=new Map,q=new Map,W=new Set;for(let a=0;a<n.length;a++){const i=[],o=n[a],s=o.feature.attributes[L.Cz],d=o.feature.attributes[L.KQ];let u=s+"-"+d;if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){const e=t?.timeInfoByTypeName?.get(o.typeName),a=t?.timeInfoByTypeName?e?.startField:null,i=a?o.feature.attributes[a]:null,n=e?.endField;u+="-"+i+"-"+(n?o.feature.attributes[n]:null)}const y=O.get(u).get(o.typeName),g=0===y?0:U?.vertexEndIndex[y-1];if(!W.has(y)){if(W.add(y),2===U.types[y]){const e=[U.vertices[2*g],U.vertices[2*g+1]],t=[U.vertices[2*(g+1)],U.vertices[2*(g+1)+1]],a=[.5*(e[0]+t[0]),.5*(e[1]+t[1])],n=[a[0]-e[0],a[1]-e[1]],o=[a[0]+n[1],a[1]-n[0]],s=[a[0]-n[1],a[1]+n[0]];i.push(e),i.push(o),i.push(t),i.push(s),i.push(e)}else{if(0!==U.types[y]){r.A.getLogger(this).warn("A relationship generated an unsupported link geometry type. It will not be rendered");continue}for(let e=g;e<U.vertexEndIndex[y];e++)i.push([U.vertices[2*e],U.vertices[2*e+1]])}if("chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e){const e=x[p.get(s)]?.feature.attributes[L.T1],t=x[p.get(d)]?.feature.attributes[L.T1];i[0][0]===e.x&&i[0][1]===e.y||(i[0]=[e.x,e.y]),i[i.length-1][0]===t.x&&i[i.length-1][1]===t.y||(i[i.length-1]=[t.x,t.y])}for(let e=1;e<i.length-1;e++)i[e][1]>85.5?i[e][1]=85.5:i[e][1]<-85.5&&(i[e][1]=-85.5),i[e][0]>179.9999?i[e][0]=179.9999:i[e][0]<-179.9999&&(i[e][0]=-179.9999);j.has(u)?j.get(u).push(i):j.set(u,[i])}const m=j.get(u);Q.has(u)||(Q.set(u,new Map),q.set(u,new Map));const M=Q.get(u),b=q.get(u);M.has(o.typeName)||(M.set(o.typeName,m.shift()),b.set(o.typeName,0));const C=M.get(o.typeName);b.set(o.typeName,b.get(o.typeName)+1);const k=new f.A({paths:[C]});if(o.feature.attributes[L.T1]=k,h.has(o.typeName)){const e=h.get(o.typeName);e?.set(o.feature.attributes[L.dr],o.feature)}else{const e=new Map;e.set(o.feature.attributes[L.dr],o.feature),h.set(o.typeName,e)}c.set(o.feature.attributes[L.dr],o.feature);const T=(0,w.Ux)(o.feature.attributes[L.T1]);this.relationshipLinkChartDiagramLookup.set(o.feature.attributes[L.dr],o.feature.attributes[L.T1]?T:null);const N=(0,l.tE)(this.dataManager.inclusionModeDefinition.namedTypeDefinitions,o.typeName,()=>({useAllData:!1,members:new Map}));(0,l.tE)(N.members,o.feature.attributes[L.dr],()=>({id:o.feature.attributes[L.dr],linkChartLocation:void 0})).linkChartLocation=T}for(const e of n)e.feature.attributes[L.M1]=q.get(e.feature.attributes[L.Cz]+"-"+e.feature.attributes[L.KQ])?.get(e.typeName)??null;return this._currentLinkChartConfig={layoutMode:e,layoutSettings:t?.layoutSettings?.clone()},{nodes:o,links:h,idMap:c}}async applyNewLinkChartLayout(e="organic-standard",t){const a=[];await this._calculateLayoutWithSublayerTimeInfo(e,t),this.layers.forEach(e=>{a.push(e.refreshCachedQueryEngine())}),this.membershipModified=!0,await Promise.all(a),this._refreshNamedTypes()}getCurrentNodeLocations(){const e=new Map;for(const[t,a]of this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.entries()??[])this.dataManager.relationshipTypeNames.has(t)||a?.members?.forEach(t=>{const a=t.linkChartLocation;let i;const n=t.id;a&&(i="x"in a?{x:a.x,y:a.y}:{x:a.coords[0],y:a.coords[1]},e.set(n,new m.A({x:i.x,y:i.y})))});return e}async refreshLinkChartCache(e){await this.dataManager.refreshCacheContent(e);const t=[];this.layers.forEach(e=>{t.push(e.refreshCachedQueryEngine())}),await Promise.all(t),this._refreshNamedTypes()}async connectBetweenEntities(e,t){if(!e.length)return{records:[]};let a=[];try{let i=[];for(const e of this.dataManager.relationshipTypeNames){const t=this.sublayerIdsCache.get(e);t&&(i=i.concat(Array.from(t.keys())))}a=await this.dataManager.getRelationshipsBetweenNodes(e,i,t),await this._handleNewRecords(a,t),(0,d.Te)(t)}catch(e){throw(0,d.zf)(e)&&this.removeRecords(a),e}return{records:a}}async connectFromEntities(e,t){if(!e.length)return{records:[]};let a=[];try{let i=[];for(const e of this.dataManager.relationshipTypeNames){const t=this.sublayerIdsCache.get(e);t&&(i=i.concat(Array.from(t.keys())))}let n=[];for(const e of this.dataManager.entityTypeNames){const t=this.sublayerIdsCache.get(e);t&&(n=n.concat(Array.from(t)))}a=await this.dataManager.getRelationshipsFromNodes(e,n,i,t),await this._handleNewRecords(a,t),a.length>0&&(this.membershipModified=!0),(0,d.Te)(t)}catch(e){throw(0,d.zf)(e)&&this.removeRecords(a),e}return{records:a}}getCurrentLayout(){return this._currentLinkChartConfig.layoutMode}async _calculateLayoutWithSublayerTimeInfo(e="organic-standard",t){const a=new Map;this.layers.forEach(e=>{a.set(e.objectType.name,e.timeInfo)}),await this.calculateLinkChartLayout(e,{timeInfoByTypeName:a,...t}),this.linkChart?.handleChronologicalOverlay()}async _handleNewRecords(e,t){const a=new Set,i=[],n=this.layers.concat(this.tables);for(const t of e)this._graphTypeLookup.has(t.typeName)&&(!1===n.some(e=>e.objectType.name===t.typeName)&&(this.dataManager.sublayerCaches.set(t.typeName,new Map),a.add(t.typeName)),(0,l.tE)(this.sublayerIdsCache,t.typeName,()=>new Set).add(t.id),i.push(t));this.dataManager.addToLayer(i);for(const e of a){const t=this._graphTypeLookup.get(e);if(t){const a=this._createSublayer(t);"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),a.geometryType?this.layers.push(a):this.tables.push(a)}}await(0,T.qN)(this,Array.from(a),t),await this.dataManager.refreshCacheContent(e.map(e=>e.id),void 0,void 0,void 0,t);const o={layoutSettings:this._currentLinkChartConfig.layoutSettings,lockedNodeLocations:new Map};for(const[e,t]of this.entityLinkChartDiagramLookup.entries())t&&o.lockedNodeLocations.set(e,new m.A(t.coords[0],t.coords[1]));await this.applyNewLinkChartLayout(this._currentLinkChartConfig.layoutMode,o)}_createSublayers(e,t,a){e.forEach(e=>{const i=this._createSublayer(e);a(i)&&t.push(i),this._updateSublayerCaches(e)})}_updateSublayers(e,t){t.forEach(t=>{t.parentCompositeLayer=this;const a=e.find(e=>e.type===t.graphType&&e.name===t.graphTypeName);a&&(t.objectType=a,t.read({title:a.name},{origin:"service"}),this._updateSublayerCaches(a))})}_updateSublayerCaches({name:e}){if(!e)return;const t=this.dataManager.sublayerCaches;t.has(e)||t.set(e,new Map)}_layersLoadedFromAuthoritativeItem(){const e=this.originIdOf("layers");return e>=3&&e<7}async _initializeDiagram(){this.initializationLinkChartConfig?this.initializationLinkChartConfig.doNotRecalculateLayout?(this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{e?.members?.forEach(e=>{const a=e.linkChartLocation;let i;const n=e.id;if(!a)return;i="x"in a?{x:a.x,y:a.y}:{x:a.coords[0],y:a.coords[1]};const o=(0,w.Ux)(i);this.dataManager.relationshipTypeNames.has(t)?this.relationshipLinkChartDiagramLookup.set(n,o):this.entityLinkChartDiagramLookup.set(n,o),this.linkChartExtent.xmin>i.x&&(this.linkChartExtent.xmin=i.x),this.linkChartExtent.xmax<i.x&&(this.linkChartExtent.xmax=i.x),this.linkChartExtent.ymin>i.y&&(this.linkChartExtent.ymin=i.y),this.linkChartExtent.ymax<i.y&&(this.linkChartExtent.ymax=i.y)})}),this.memberRelationshipTypes.forEach(e=>{e.name&&this.dataManager.sublayerCaches.get(e.name)?.forEach(e=>{const t=this.relationshipLinkChartDiagramLookup.get(e.attributes[L.Cz]),a=this.relationshipLinkChartDiagramLookup.get(e.attributes[L.KQ]);if(t&&a){const i=(0,w.Ux)(new f.A({paths:[[[t.coords[0],t.coords[1]],[a.coords[0],a.coords[1]]]]}));this.relationshipLinkChartDiagramLookup.set(e.attributes[L.dr],i)}else this.relationshipLinkChartDiagramLookup.set(e.attributes[L.dr],null)})})):await this._calculateLayoutWithSublayerTimeInfo(this.initializationLinkChartConfig.layoutMode,{lockedNodeLocations:this.getCurrentNodeLocations(),...this.initializationLinkChartConfig||{}}):await this._calculateLayoutWithSublayerTimeInfo("organic-standard",{lockedNodeLocations:this.getCurrentNodeLocations()})}_refreshNamedTypes(){for(const e of this.layers)e.emit("refresh",{dataChanged:!0});for(const e of this.tables)e.emit("refresh",{dataChanged:!0})}_validateOrganicLayoutSettings(e,t){const a=e=>"number"==typeof e&&!isNaN(e),i=e=>a(e)&&e>=0,n={};if(!new Set(["organic-standard","organic-community","geographic-organic-standard","chronological-multi-timeline","chronological-mono-timeline"]).has(e)||!t)return n;const{computationBudgetTime:o,autoRepulsionRadius:s,repulsionRadiusMultiplier:l,absoluteIdealEdgeLength:h,multiplicativeIdealEdgeLength:d,idealEdgeLengthType:c}=t;return(e=>a(e)&&e>=1)(o)?n.computationBudgetTime=o:o&&r.A.getLogger(this).warn("Invalid layout computationBudgetTime setting, will revert to default setting"),n.autoRepulsionRadius=s,!s&&(e=>a(e)&&e>=1)(l)?n.repulsionRadiusMultiplier=l:s||(n.autoRepulsionRadius=!0,r.A.getLogger(this).warn("Invalid layout repulsionRadiusMultiplier setting, will revert to default setting")),"geographic-organic-standard"===e&&((e=>Object.values(b).includes(e))(c)?n.idealEdgeLengthType=c:void 0!==c&&r.A.getLogger(this).warn('Invalid layout idealEdgeLengthType setting, will revert to "multiplier" setting'),"absolute-value"===c&&i(h)?n.absoluteIdealEdgeLength=h:"absolute-value"===c&&void 0!==h?r.A.getLogger(this).warn("Invalid layout idealEdgeLength setting, will revert to default setting"):"multiplier"===c&&i(d)?n.multiplicativeIdealEdgeLength=d:"multiplier"===c&&void 0!==d&&r.A.getLogger(this).warn("Invalid layout idealEdgeLength setting, will revert to default setting")),n}_convertValidatedOrganicSettingsToCalculationSettings(e){let t=e.idealEdgeLengthType===b.ABSOLUTE?e.absoluteIdealEdgeLength:e.multiplicativeIdealEdgeLength;return e.idealEdgeLengthType===b.ABSOLUTE&&(void 0===t?t=-1:t*=-1),{computationBudgetTime:e.computationBudgetTime??void 0,repulsionRadiusMultiplier:e.repulsionRadiusMultiplier&&!e.autoRepulsionRadius?e.repulsionRadiusMultiplier:void 0,idealEdgeLengthMultiplier:t}}_createSublayer(e){return new k.A({objectType:e,parentCompositeLayer:this,graphType:e.type})}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner")),e&&(e.forEach(e=>{e.parent=this}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this}),e.on("after-remove",({item:e})=>{e.parent=null})],"sublayers-owner"))}_alignLayersDataModelAndInclusionDefinition(e){const t=new Set((e.entityTypes??[]).map(e=>e.name).concat((e.relationshipTypes??[]).map(e=>e.name))),a=new Set((e.entityTypes??[]).map(e=>e.name)),i=new Set((e.relationshipTypes??[]).map(e=>e.name));if(this.layers){for(const e of this.layers)!e.graphType&&t.has(e.graphTypeName)&&(e.graphType=a.has(e.graphTypeName)?"entity":"relationship");const e=this.layers.filter(e=>t.has(e.graphTypeName)&&("entity"===e.graphType?a.has(e.graphTypeName):i.has(e.graphTypeName)));this.setAtOrigin("layers",e,(0,y.OL)(this.originIdOf("layers")))}else this.layers=new o.A;if(this.layers&&this._originalInclusionList){const e=new Set(this._originalInclusionList.namedTypeDefinitions.keys()),t=this.tables?.map(e=>e.graphTypeName)??[],a=this.layers.map(e=>e.graphTypeName).concat(t);for(const t of a)e.has(t)||this._originalInclusionList.namedTypeDefinitions.set(t,{useAllData:!1,members:new Map});const i=[];for(const e of this._originalInclusionList.namedTypeDefinitions.keys())a.includes(e)||(r.A.getLogger(this).warn(`A named type, ${e}, was in the serialized feature collection but did not have a sublayer config in the item, so will be removed`),i.push(e));for(const e of i)this._originalInclusionList.namedTypeDefinitions.delete(e)}}};(0,i.Cg)([(0,p.MZ)(E.OZ)],S.prototype,"url",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"dataPreloadedInLocalCache",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"initializationLinkChartConfig",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"membershipModified",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"dataManager",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"initializationInclusionModeDefinition",null),(0,i.Cg)([(0,p.MZ)()],S.prototype,"knowledgeGraph",void 0),(0,i.Cg)([(0,p.MZ)({type:o.A.ofType(k.A),json:{write:{ignoreOrigin:!0}}})],S.prototype,"layers",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],S.prototype,"linkChart",null),(0,i.Cg)([(0,p.MZ)()],S.prototype,"entityLinkChartDiagramLookup",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"relationshipLinkChartDiagramLookup",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"linkChartExtent",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"memberEntityTypes",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"memberRelationshipTypes",void 0),(0,i.Cg)([(0,p.MZ)({type:["LinkChartLayer"]})],S.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"sublayerIdsCache",void 0),(0,i.Cg)([(0,p.MZ)({type:o.A.ofType(k.A),json:{write:{ignoreOrigin:!0}}})],S.prototype,"tables",void 0),(0,i.Cg)([(0,p.MZ)({json:{read:!1}})],S.prototype,"type",void 0),(0,i.Cg)([(0,p.MZ)({json:{read:!1}})],S.prototype,"chronologicalAuxiliaryGraphics",void 0),S=(0,i.Cg)([(0,u.$)("esri.layers.LinkChartLayer")],S);const R=S}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1728],{71728:(e,t,a)=>{a.r(t),a.d(t,{default:()=>R});var i=a(31635),n=a(67996),o=a(7762),s=a(49186),r=a(53966),l=a(91869),h=a(92071),d=a(74887),c=a(36708),p=a(10107),u=(a(44208),a(87811),a(40608)),y=a(35666),g=a(5443),m=a(86738),f=a(82799),M=a(4146),w=a(90708),L=a(15375);const b={MULTIPLIER:"multiplier",ABSOLUTE:"absolute-value"};var C=a(80340),k=a(90323),T=a(85342),N=a(69860),D=a(30504),x=a(63074),v=a(16131),A=a(25036),E=a(10873),I=a(8460),_=a(62568);let S=class extends((0,v.q)((0,x.dM)((0,A.j)((0,h.P)(M.A))))){constructor(e){if(super(e),this.url=null,this.dataPreloadedInLocalCache=!1,this.initializationLinkChartConfig=null,this.membershipModified=!0,this._currentLinkChartConfig={layoutMode:"organic-standard"},this._graphTypeLookup=new Map,this.dataManager=null,this.knowledgeGraph=null,this.layers=new(o.A.ofType(k.A)),this.entityLinkChartDiagramLookup=new Map,this.relationshipLinkChartDiagramLookup=new Map,this.linkChartExtent=new g.A({xmin:-1e-7,ymin:-1e-7,xmax:1e-7,ymax:1e-7}),this.memberEntityTypes=null,this.memberRelationshipTypes=null,this.operationalLayerType="LinkChartLayer",this.sublayerIdsCache=new Map,this.tables=new(o.A.ofType(k.A)),this.type="link-chart",this.chronologicalAuxiliaryGraphics=null,this._originalInclusionList=e?.initializationInclusionModeDefinition,e?.dataPreloadedInLocalCache&&!e?.initializationInclusionModeDefinition)throw new s.A("knowledge-graph:linkchart-layer-constructor","If creating a link chart composite layer and configured that data is already loaded in the cache, you must specify an inclusion list so the Composite Layer knows what records belong to it");this.addHandles((0,c.wB)(()=>this.layers.concat(this.tables),(e,t)=>this._handleSublayersChange(e,t),c.OH))}normalizeCtorArgs(e){if(!e)return{};const{url:t,title:a,dataPreloadedInLocalCache:i,initializationLinkChartConfig:n}=e;return{url:t,title:a,dataPreloadedInLocalCache:i,initializationLinkChartConfig:n}}_initializeLayerProperties(e){if(!this.title&&this.url){const e=this.url.split("/");this.title=e[e.length-2]}const t=new Set;let a=[],i=[];if(e.inclusionModeDefinition&&(!e.inclusionModeDefinition.namedTypeDefinitions||e.inclusionModeDefinition.namedTypeDefinitions.size<1))throw new s.A("knowledge-graph:composite-layer-constructor","If an explicit inclusion definition is defined, at least one namedTypeDefinition must also be defined");e.inclusionModeDefinition?.generateAllSublayers?(a=e.knowledgeGraph.dataModel.entityTypes??[],i=e.knowledgeGraph.dataModel.relationshipTypes??[]):e.inclusionModeDefinition?.namedTypeDefinitions&&e.inclusionModeDefinition?.namedTypeDefinitions.size>0?e.inclusionModeDefinition?.namedTypeDefinitions.forEach((n,o)=>{const s=this._graphTypeLookup.get(o);if(!s)return r.A.getLogger(this).warn(`A named type, ${o}, was in the inclusion list that wasn't in the data model and will be removed`),void e.inclusionModeDefinition?.namedTypeDefinitions.delete(o);"relationship"===s.type?t.has(o)||(t.add(o),i.push(s)):"entity"===s.type?t.has(o)||(t.add(o),a.push(s)):(r.A.getLogger(this).warn(`A named type, ${o}, was in the inclusion list that wasn't properly modeled and will be removed`),e.inclusionModeDefinition?.namedTypeDefinitions.delete(o))}):(a=e.knowledgeGraph.dataModel.entityTypes??[],i=e.knowledgeGraph.dataModel.relationshipTypes??[]);const n=new C.P({knowledgeGraph:e.knowledgeGraph,inclusionModeDefinition:e.inclusionModeDefinition});this.knowledgeGraph=e.knowledgeGraph,this.memberEntityTypes=a,this.memberRelationshipTypes=i,this.dataManager=n}load(e){const t=async()=>{const e=[],t=[];this.loadLayerAssumingLocalCache(),this._layersLoadedFromAuthoritativeItem()||await(0,T.qN)(this),this.dataManager.inclusionModeDefinition&&(this.dataManager.inclusionModeDefinition.generateAllSublayers=!1),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.forEach(e=>{e.useAllData=!1}),await this._initializeDiagram(),this.layers.forEach(a=>{t.push(a.refreshCachedQueryEngine()),e.push(new Promise(e=>{a.on("layerview-create",()=>{e(null)})}))}),this.tables.forEach(e=>{t.push(e.refreshCachedQueryEngine())}),await Promise.all(t)};return this.addResolvingPromise(new Promise(a=>{(0,_.fetchKnowledgeGraph)(this.url).then(async i=>{i.dataModel.entityTypes?.forEach(e=>{e.name&&this._graphTypeLookup.set(e.name,e)}),i.dataModel.relationshipTypes?.forEach(e=>{e.name&&this._graphTypeLookup.set(e.name,e)});const o=this.linkChart?.linkChartProperties;if(6===o?.originIdOf("entitiesUrl")&&(this.membershipModified=!1,this._originalInclusionList=await n.XW.fetchAndConvertSerializedLinkChart({entitiesUrl:o?.entitiesUrl,relationshipsUrl:o?.relationshipsUrl}),this._alignLayersDataModelAndInclusionDefinition(i.dataModel),this.initializationLinkChartConfig={layoutSettings:o?.layoutSettings??void 0,layoutMode:(0,D.k5)(o.layoutType)}),this._initializeLayerProperties({knowledgeGraph:i,inclusionModeDefinition:this._originalInclusionList}),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.size||(this.dataManager.inclusionModeDefinition={generateAllSublayers:!1,namedTypeDefinitions:new Map},this.dataManager.knowledgeGraph.dataModel.entityTypes?.forEach(e=>{e.name&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.set(e.name,{useAllData:!0})}),this.dataManager.knowledgeGraph.dataModel.relationshipTypes?.forEach(e=>{e.name&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.set(e.name,{useAllData:!0})})),this.dataPreloadedInLocalCache){const e=N.A.getInstance();for(const[t,a]of this.dataManager.inclusionModeDefinition?.namedTypeDefinitions??[])for(const i of a.members?.values()??[]){const a=e.readFromStoreById(`${t}__${i.id}`);a&&(0,l.tE)(this.dataManager.sublayerCaches,t,()=>new Map).set(i.id,a)}await t()}else{const a="geographic-organic-standard"===this.initializationLinkChartConfig?.layoutMode;this.addResolvingPromise(this.dataManager.refreshCacheContent(void 0,!1,a,!0).then(async()=>{(0,d.Te)(e),await t()}))}a(null)})})),Promise.resolve(this)}set initializationInclusionModeDefinition(e){"loaded"!==this.loadStatus&&"failed"!==this.loadStatus?this._set("initializationInclusionModeDefinition",e):r.A.getLogger(this).error("#initializationInclusionModeDefinition","initializationInclusionModeDefinition cannot be changed after the layer is loaded.")}get linkChart(){return this.parent}async addRecords(e,t){let a=[];t?.cascadeAddRelationshipEndNodes&&this.dataManager.knowledgeGraph.dataModel&&(a=await(0,D.aq)(e,this.dataManager.knowledgeGraph));const i=e.concat(a).filter(e=>!this.sublayerIdsCache.get(e.typeName)?.has(e.id));i.length>0&&(this.membershipModified=!0),await this._handleNewRecords(i,t)}async createSublayerForNamedType(e){await this.load();const t=this._graphTypeLookup.get(e);if(!t)throw new s.A("knowledge-graph:missing-type","The specified type does not exist in the knowledge graph.");if(this.dataManager.sublayerCaches.has(e))throw new s.A("knowledge-graph:duplicate-type","The specified type already exists as a sublayer.");this.dataManager.sublayerCaches.set(e,new Map),(0,l.tE)(this.sublayerIdsCache,e,()=>new Set);const a=this._createSublayer(t);return"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.set(e,{useAllData:!1,members:new Map}),a.geometryType?this.layers.push(a):this.tables.push(a),await(0,T.qN)(this,[e]),this._refreshNamedTypes(),a}async removeRecords(e,{cascadeRemoveRelationships:t=!0,recalculateLayout:a=!1,overrideMembershipCheck:i=!1}={cascadeRemoveRelationships:!0,recalculateLayout:!1,overrideMembershipCheck:!1}){let n=[];for(const t of e)(i||!1===this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(t.typeName)?.useAllData&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(t.typeName)?.members?.has(t.id))&&n.push(t);if(t){const e=new Set,t=[];for(const t of n)if(this.dataManager.nodeConnectionsLookup.has(t.id))for(const a of this.dataManager.nodeConnectionsLookup.get(t.id))e.add(a);for(const a of e)if(this.dataManager.memberIdTypeLookup.has(a))for(const e of this.dataManager.memberIdTypeLookup.get(a))this.dataManager.relationshipTypeNames.has(e)&&t.push({id:a,typeName:e});n=n.concat(t)}this.dataManager.removeFromLayer(n);for(const e of n)this.sublayerIdsCache.get(e.typeName)?.delete(e.id),this.dataManager.relationshipTypeNames.has(e.typeName)?this.relationshipLinkChartDiagramLookup.delete(e.id):this.entityLinkChartDiagramLookup.delete(e.id);const o=a?void 0:this.getCurrentNodeLocations();await this._calculateLayoutWithSublayerTimeInfo(this._currentLinkChartConfig.layoutMode,{layoutSettings:this._currentLinkChartConfig.layoutSettings,lockedNodeLocations:o}),n.length>0&&(this.membershipModified=!0);const s=[];return this.layers.forEach(e=>{s.push(e.refreshCachedQueryEngine())}),await Promise.all(s),this._refreshNamedTypes(),n}async expand(e,t){let a=[];try{const i=await this.dataManager.getConnectedRecordIds(e,t?.relationshipTypeNames,t);a=i.filter(e=>!this.sublayerIdsCache.get(e.typeName)?.has(e.id)),await this._handleNewRecords(a,t),i.length>0&&(this.membershipModified=!0),(0,d.Te)(t?.signal)}catch(e){throw(0,d.zf)(e)&&a.length>0&&await this.removeRecords(a,{overrideMembershipCheck:!0}),e}return{records:a}}loadLayerAssumingLocalCache(){const e=[...this.memberRelationshipTypes,...this.memberEntityTypes];this.layers.length||0===this.originIdOf("tables")?0===this.originIdOf("layers")?this._createSublayers(e,this.layers,e=>!!e.geometryType):this._updateSublayers(e,this.layers):this.layers=new o.A,this.tables.length||0===this.originIdOf("layers")?0===this.originIdOf("tables")?this._createSublayers(e,this.tables,e=>!e.geometryType):this._updateSublayers(e,this.tables):this.tables=new o.A,this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{const a=(0,l.tE)(this.sublayerIdsCache,t,()=>new Set);e.members?.forEach(({id:e,linkChartLocation:i})=>{if(a.add(e),i){const a="coords"in i&&"lengths"in i?i:(0,w.Ux)(i);this.dataManager.relationshipTypeNames.has(t)?this.relationshipLinkChartDiagramLookup.set(e,a):this.entityLinkChartDiagramLookup.set(e,a)}})})}async calculateLinkChartLayout(e="organic-standard",t){const a=[],i=[],n=[];this.dataManager.sublayerCaches.forEach((e,t)=>{this.dataManager.entityTypeNames.has(t)?e.forEach(e=>{a.push({typeName:t,feature:e})}):this.dataManager.relationshipTypeNames.has(t)&&e.forEach(e=>{i.push({typeName:t,feature:e})})}),this.entityLinkChartDiagramLookup=new Map,this.relationshipLinkChartDiagramLookup=new Map;const o=new Map,h=new Map,c=new Map,p=new Map,u=new Uint8Array(a.length),y=new Float64Array(a.length),M=new Float64Array(a.length),b=new Float64Array(a.length),C=new Float64Array(a.length),k=new Uint32Array(i.length),T=new Uint32Array(i.length),N=new Float64Array(i.length),D=new Float64Array(i.length),x=[];let v=!1;const A=new g.A({xmin:-1e-7,ymin:-1e-7,xmax:1e-7,ymax:1e-7});let E,_="organic-standard",S=0,R=0;const z=I.i6.apply;switch(_="geographic-organic-standard"===e?"organic-standard":e,_){case"organic-standard":E=I.pM.apply;break;case"organic-community":E=I.Tu.apply;break;case"hierarchical-bottom-to-top":E=I.$C.apply;break;case"radial-root-centric":E=I.vJ.apply;break;case"tree-left-to-right":E=I.Xq.apply;break;default:E=I.Wg.apply}let P=!1;a.forEach(({typeName:a,feature:i})=>{if("chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e&&t?.lockedNodeLocations?.has(i.attributes[L.dr])){"geographic-organic-standard"===e&&this.dataManager.geographicLookup.has(a)?u[S]=2:u[S]=0;const n=t.lockedNodeLocations.get(i.attributes[L.dr]);y[S]=n.x,M[S]=n.y}else if("geographic-organic-standard"===e&&this.dataManager.geographicLookup.has(a)){u[S]=2;let e=null;const t=i.attributes[this.dataManager.geographicLookup.get(a).name],n=this.dataManager.geographicLookup.get(a)?.geometryType;switch(n){case"esriGeometryPoint":y[S]=t?.x,M[S]=t?.y;break;case"esriGeometryPolygon":e=t?.centroid,null!=e?.x&&null!=e?.y?(y[S]=e.x,M[S]=e.y):u[S]=1;break;case"esriGeometryPolyline":case"esriGeometryMultipoint":e=t?.extent?.center,null!=e?.x&&null!=e?.y?(y[S]=e.x,M[S]=e.y):u[S]=1;break;default:u[S]=1}(null==y[S]||null==M[S]||Number.isNaN(y[S])||Number.isNaN(M[S]))&&(u[S]=1,y[S]=0,M[S]=0)}else if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){!P&&t?.lockedNodeLocations?.has(i.attributes[L.dr])&&(P=!0);const e=t?.timeInfoByTypeName?.get(a),n=e?.startField,o=n&&e?.startField?i.attributes[n]:null;b[S]=o?new Date(o).getTime():NaN;const s=e?.endField,r=s&&e?.endField?i.attributes[s]:null;C[S]=r?new Date(r).getTime():NaN,y[S]=0,M[S]=0,u[S]=1}else u[S]=1,y[S]=0,M[S]=0;p.set(i.attributes[L.dr],S),x[S]={feature:i,typeName:a},S++}),P&&r.A.getLogger(this).warn("Locked node locations are not supported for chronological layout at this time. Requested node locations were ignored");let G=!1;const O=new Map;i.forEach(a=>{const i=a.feature.attributes[L.Cz],o=a.feature.attributes[L.KQ],s=p.get(i),r=p.get(o),l=t?.timeInfoByTypeName?.get(a.typeName),h=t?.timeInfoByTypeName?l?.startField:null,d=h?a.feature.attributes[h]:null,c=l?.endField,u=c?a.feature.attributes[c]:null;if(void 0!==s&&void 0!==r){let t=i+"-"+o;"chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e||(t=t+"-"+d+"-"+u);const l=O.get(t),h=l?.has(a.typeName);h||(k[R]=s,T[R]=r,"chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e||(N[R]=d?new Date(d).getTime():NaN,D[R]=u?new Date(u).getTime():NaN),void 0===l?O.set(t,new Map([[a.typeName,R]])):l.set(a.typeName,R),R++),n.push(a)}else G=!0,this.relationshipLinkChartDiagramLookup.set(i,null)}),G&&r.A.getLogger(this).warn("A relationship is a member of this layer that has either origin or destination entity nodes that are not members. The diagram geometry will be set to null");const F=this._validateOrganicLayoutSettings(e,t?.layoutSettings?.organicLayoutSettings),Z=this._convertValidatedOrganicSettingsToCalculationSettings(F);await(0,I.Hh)();let B=1,U=null;if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){let a;({status:B,links:U,graphics:a}=z(()=>t?.signal?.aborted??!1,u,y,M,b,C,k.subarray(0,R),T.subarray(0,R),N.subarray(0,R),D.subarray(0,R),"chronological-multi-timeline"===e,t?.layoutSettings?.chronologicalLayoutSettings)),0===B&&(this.chronologicalAuxiliaryGraphics=a)}else({status:B,links:U}=E(()=>t?.signal?.aborted??!1,u,y,M,k.subarray(0,R),T.subarray(0,R),Z.computationBudgetTime,Z.idealEdgeLengthMultiplier,Z.repulsionRadiusMultiplier));if((0,d.Te)(t?.signal),1===B)throw new s.A("knowledge-graph:layout-failed","Attempting to arrange the records in the specified layout failed");if(2===B)throw(0,d.NK)();for(let e=0;e<x.length;e++){if(M[e]>84.9999?M[e]=84.9999:M[e]<-84.9999&&(M[e]=-84.9999),y[e]>179.9999?y[e]=179.9999:y[e]<-179.9999&&(y[e]=-179.9999),x[e].feature.attributes[L.T1]=new m.A(y[e],M[e]),o.has(x[e].typeName)){const t=o.get(x[e].typeName);t?.set(x[e].feature.attributes[L.dr],x[e].feature)}else{const t=new Map;t.set(x[e].feature.attributes[L.dr],x[e].feature),o.set(x[e].typeName,t)}c.set(x[e].feature.attributes[L.dr],x[e].feature);const t=(0,w.Ux)(x[e].feature.attributes[L.T1]);this.entityLinkChartDiagramLookup.set(x[e].feature.attributes[L.dr],x[e].feature.attributes[L.T1]?t:null);const a=(0,l.tE)(this.dataManager.inclusionModeDefinition.namedTypeDefinitions,x[e].typeName,()=>({useAllData:!1,members:new Map}));(0,l.tE)(a.members,x[e].feature.attributes[L.dr],()=>({id:x[e].feature.attributes[L.dr],linkChartLocation:void 0})).linkChartLocation=x[e].feature.attributes[L.T1];const{x:i,y:n}=x[e].feature.attributes[L.T1];if(v)A.xmin=Math.min(A.xmin,i),A.xmax=Math.max(A.xmax,i),A.ymin=Math.min(A.ymin,n),A.ymax=Math.max(A.ymax,n);else{const e=1e-7;A.xmin=i-e,A.xmax=i+e,A.ymin=n-e,A.ymax=n+e,v=!0}}if(this.linkChartExtent.xmin=A.xmin,this.linkChartExtent.xmax=A.xmax,this.linkChartExtent.ymin=A.ymin,this.linkChartExtent.ymax=A.ymax,!U)throw new s.A("knowledge-graph:layout-failed","Attempting to retrieve link geometry from diagram engine failed");const j=new Map,Q=new Map,q=new Map,W=new Set;for(let a=0;a<n.length;a++){const i=[],o=n[a],s=o.feature.attributes[L.Cz],d=o.feature.attributes[L.KQ];let u=s+"-"+d;if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){const e=t?.timeInfoByTypeName?.get(o.typeName),a=t?.timeInfoByTypeName?e?.startField:null,i=a?o.feature.attributes[a]:null,n=e?.endField;u+="-"+i+"-"+(n?o.feature.attributes[n]:null)}const y=O.get(u).get(o.typeName),g=0===y?0:U?.vertexEndIndex[y-1];if(!W.has(y)){if(W.add(y),2===U.types[y]){const e=[U.vertices[2*g],U.vertices[2*g+1]],t=[U.vertices[2*(g+1)],U.vertices[2*(g+1)+1]],a=[.5*(e[0]+t[0]),.5*(e[1]+t[1])],n=[a[0]-e[0],a[1]-e[1]],o=[a[0]+n[1],a[1]-n[0]],s=[a[0]-n[1],a[1]+n[0]];i.push(e),i.push(o),i.push(t),i.push(s),i.push(e)}else{if(0!==U.types[y]){r.A.getLogger(this).warn("A relationship generated an unsupported link geometry type. It will not be rendered");continue}for(let e=g;e<U.vertexEndIndex[y];e++)i.push([U.vertices[2*e],U.vertices[2*e+1]])}if("chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e){const e=x[p.get(s)]?.feature.attributes[L.T1],t=x[p.get(d)]?.feature.attributes[L.T1];i[0][0]===e.x&&i[0][1]===e.y||(i[0]=[e.x,e.y]),i[i.length-1][0]===t.x&&i[i.length-1][1]===t.y||(i[i.length-1]=[t.x,t.y])}for(let e=1;e<i.length-1;e++)i[e][1]>85.5?i[e][1]=85.5:i[e][1]<-85.5&&(i[e][1]=-85.5),i[e][0]>179.9999?i[e][0]=179.9999:i[e][0]<-179.9999&&(i[e][0]=-179.9999);j.has(u)?j.get(u).push(i):j.set(u,[i])}const m=j.get(u);Q.has(u)||(Q.set(u,new Map),q.set(u,new Map));const M=Q.get(u),b=q.get(u);M.has(o.typeName)||(M.set(o.typeName,m.shift()),b.set(o.typeName,0));const C=M.get(o.typeName);b.set(o.typeName,b.get(o.typeName)+1);const k=new f.A({paths:[C]});if(o.feature.attributes[L.T1]=k,h.has(o.typeName)){const e=h.get(o.typeName);e?.set(o.feature.attributes[L.dr],o.feature)}else{const e=new Map;e.set(o.feature.attributes[L.dr],o.feature),h.set(o.typeName,e)}c.set(o.feature.attributes[L.dr],o.feature);const T=(0,w.Ux)(o.feature.attributes[L.T1]);this.relationshipLinkChartDiagramLookup.set(o.feature.attributes[L.dr],o.feature.attributes[L.T1]?T:null);const N=(0,l.tE)(this.dataManager.inclusionModeDefinition.namedTypeDefinitions,o.typeName,()=>({useAllData:!1,members:new Map}));(0,l.tE)(N.members,o.feature.attributes[L.dr],()=>({id:o.feature.attributes[L.dr],linkChartLocation:void 0})).linkChartLocation=T}for(const e of n)e.feature.attributes[L.M1]=q.get(e.feature.attributes[L.Cz]+"-"+e.feature.attributes[L.KQ])?.get(e.typeName)??null;return this._currentLinkChartConfig={layoutMode:e,layoutSettings:t?.layoutSettings?.clone()},{nodes:o,links:h,idMap:c}}async applyNewLinkChartLayout(e="organic-standard",t){const a=[];await this._calculateLayoutWithSublayerTimeInfo(e,t),this.layers.forEach(e=>{a.push(e.refreshCachedQueryEngine())}),this.membershipModified=!0,await Promise.all(a),this._refreshNamedTypes()}getCurrentNodeLocations(){const e=new Map;for(const[t,a]of this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.entries()??[])this.dataManager.relationshipTypeNames.has(t)||a?.members?.forEach(t=>{const a=t.linkChartLocation;let i;const n=t.id;a&&(i="x"in a?{x:a.x,y:a.y}:{x:a.coords[0],y:a.coords[1]},e.set(n,new m.A({x:i.x,y:i.y})))});return e}async refreshLinkChartCache(e){await this.dataManager.refreshCacheContent(e);const t=[];this.layers.forEach(e=>{t.push(e.refreshCachedQueryEngine())}),await Promise.all(t),this._refreshNamedTypes()}async connectBetweenEntities(e,t){if(!e.length)return{records:[]};let a=[];try{let i=[];for(const e of this.dataManager.relationshipTypeNames){const t=this.sublayerIdsCache.get(e);t&&(i=i.concat(Array.from(t.keys())))}a=await this.dataManager.getRelationshipsBetweenNodes(e,i,t),await this._handleNewRecords(a,t),(0,d.Te)(t)}catch(e){throw(0,d.zf)(e)&&this.removeRecords(a),e}return{records:a}}async connectFromEntities(e,t){if(!e.length)return{records:[]};let a=[];try{let i=[];for(const e of this.dataManager.relationshipTypeNames){const t=this.sublayerIdsCache.get(e);t&&(i=i.concat(Array.from(t.keys())))}let n=[];for(const e of this.dataManager.entityTypeNames){const t=this.sublayerIdsCache.get(e);t&&(n=n.concat(Array.from(t)))}a=await this.dataManager.getRelationshipsFromNodes(e,n,i,t),await this._handleNewRecords(a,t),a.length>0&&(this.membershipModified=!0),(0,d.Te)(t)}catch(e){throw(0,d.zf)(e)&&this.removeRecords(a),e}return{records:a}}getCurrentLayout(){return this._currentLinkChartConfig.layoutMode}async _calculateLayoutWithSublayerTimeInfo(e="organic-standard",t){const a=new Map;this.layers.forEach(e=>{a.set(e.objectType.name,e.timeInfo)}),await this.calculateLinkChartLayout(e,{timeInfoByTypeName:a,...t}),this.linkChart?.handleChronologicalOverlay()}async _handleNewRecords(e,t){const a=new Set,i=[],n=this.layers.concat(this.tables);for(const t of e)this._graphTypeLookup.has(t.typeName)&&(!1===n.some(e=>e.objectType.name===t.typeName)&&(this.dataManager.sublayerCaches.set(t.typeName,new Map),a.add(t.typeName)),(0,l.tE)(this.sublayerIdsCache,t.typeName,()=>new Set).add(t.id),i.push(t));this.dataManager.addToLayer(i);for(const e of a){const t=this._graphTypeLookup.get(e);if(t){const a=this._createSublayer(t);"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),a.geometryType?this.layers.push(a):this.tables.push(a)}}await(0,T.qN)(this,Array.from(a),t),await this.dataManager.refreshCacheContent(e.map(e=>e.id),void 0,void 0,void 0,t);const o={layoutSettings:this._currentLinkChartConfig.layoutSettings,lockedNodeLocations:new Map};for(const[e,t]of this.entityLinkChartDiagramLookup.entries())t&&o.lockedNodeLocations.set(e,new m.A(t.coords[0],t.coords[1]));await this.applyNewLinkChartLayout(this._currentLinkChartConfig.layoutMode,o)}_createSublayers(e,t,a){e.forEach(e=>{const i=this._createSublayer(e);a(i)&&t.push(i),this._updateSublayerCaches(e)})}_updateSublayers(e,t){t.forEach(t=>{t.parentCompositeLayer=this;const a=e.find(e=>e.type===t.graphType&&e.name===t.graphTypeName);a&&(t.objectType=a,t.read({title:a.name},{origin:"service"}),this._updateSublayerCaches(a))})}_updateSublayerCaches({name:e}){if(!e)return;const t=this.dataManager.sublayerCaches;t.has(e)||t.set(e,new Map)}_layersLoadedFromAuthoritativeItem(){const e=this.originIdOf("layers");return e>=3&&e<7}async _initializeDiagram(){this.initializationLinkChartConfig?this.initializationLinkChartConfig.doNotRecalculateLayout?(this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{e?.members?.forEach(e=>{const a=e.linkChartLocation;let i;const n=e.id;if(!a)return;i="x"in a?{x:a.x,y:a.y}:{x:a.coords[0],y:a.coords[1]};const o=(0,w.Ux)(i);this.dataManager.relationshipTypeNames.has(t)?this.relationshipLinkChartDiagramLookup.set(n,o):this.entityLinkChartDiagramLookup.set(n,o),this.linkChartExtent.xmin>i.x&&(this.linkChartExtent.xmin=i.x),this.linkChartExtent.xmax<i.x&&(this.linkChartExtent.xmax=i.x),this.linkChartExtent.ymin>i.y&&(this.linkChartExtent.ymin=i.y),this.linkChartExtent.ymax<i.y&&(this.linkChartExtent.ymax=i.y)})}),this.memberRelationshipTypes.forEach(e=>{e.name&&this.dataManager.sublayerCaches.get(e.name)?.forEach(e=>{const t=this.relationshipLinkChartDiagramLookup.get(e.attributes[L.Cz]),a=this.relationshipLinkChartDiagramLookup.get(e.attributes[L.KQ]);if(t&&a){const i=(0,w.Ux)(new f.A({paths:[[[t.coords[0],t.coords[1]],[a.coords[0],a.coords[1]]]]}));this.relationshipLinkChartDiagramLookup.set(e.attributes[L.dr],i)}else this.relationshipLinkChartDiagramLookup.set(e.attributes[L.dr],null)})})):await this._calculateLayoutWithSublayerTimeInfo(this.initializationLinkChartConfig.layoutMode,{lockedNodeLocations:this.getCurrentNodeLocations(),...this.initializationLinkChartConfig}):await this._calculateLayoutWithSublayerTimeInfo("organic-standard",{lockedNodeLocations:this.getCurrentNodeLocations()})}_refreshNamedTypes(){for(const e of this.layers)e.emit("refresh",{dataChanged:!0});for(const e of this.tables)e.emit("refresh",{dataChanged:!0})}_validateOrganicLayoutSettings(e,t){const a=e=>"number"==typeof e&&!isNaN(e),i=e=>a(e)&&e>=0,n={};if(!new Set(["organic-standard","organic-community","geographic-organic-standard","chronological-multi-timeline","chronological-mono-timeline"]).has(e)||!t)return n;const{computationBudgetTime:o,autoRepulsionRadius:s,repulsionRadiusMultiplier:l,absoluteIdealEdgeLength:h,multiplicativeIdealEdgeLength:d,idealEdgeLengthType:c}=t;return(e=>a(e)&&e>=1)(o)?n.computationBudgetTime=o:o&&r.A.getLogger(this).warn("Invalid layout computationBudgetTime setting, will revert to default setting"),n.autoRepulsionRadius=s,!s&&(e=>a(e)&&e>=1)(l)?n.repulsionRadiusMultiplier=l:s||(n.autoRepulsionRadius=!0,r.A.getLogger(this).warn("Invalid layout repulsionRadiusMultiplier setting, will revert to default setting")),"geographic-organic-standard"===e&&((e=>Object.values(b).includes(e))(c)?n.idealEdgeLengthType=c:void 0!==c&&r.A.getLogger(this).warn('Invalid layout idealEdgeLengthType setting, will revert to "multiplier" setting'),"absolute-value"===c&&i(h)?n.absoluteIdealEdgeLength=h:"absolute-value"===c&&void 0!==h?r.A.getLogger(this).warn("Invalid layout idealEdgeLength setting, will revert to default setting"):"multiplier"===c&&i(d)?n.multiplicativeIdealEdgeLength=d:"multiplier"===c&&void 0!==d&&r.A.getLogger(this).warn("Invalid layout idealEdgeLength setting, will revert to default setting")),n}_convertValidatedOrganicSettingsToCalculationSettings(e){let t=e.idealEdgeLengthType===b.ABSOLUTE?e.absoluteIdealEdgeLength:e.multiplicativeIdealEdgeLength;return e.idealEdgeLengthType===b.ABSOLUTE&&(void 0===t?t=-1:t*=-1),{computationBudgetTime:e.computationBudgetTime??void 0,repulsionRadiusMultiplier:e.repulsionRadiusMultiplier&&!e.autoRepulsionRadius?e.repulsionRadiusMultiplier:void 0,idealEdgeLengthMultiplier:t}}_createSublayer(e){return new k.A({objectType:e,parentCompositeLayer:this,graphType:e.type})}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner")),e&&(e.forEach(e=>{e.parent=this}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this}),e.on("after-remove",({item:e})=>{e.parent=null})],"sublayers-owner"))}_alignLayersDataModelAndInclusionDefinition(e){const t=new Set((e.entityTypes??[]).map(e=>e.name).concat((e.relationshipTypes??[]).map(e=>e.name))),a=new Set((e.entityTypes??[]).map(e=>e.name)),i=new Set((e.relationshipTypes??[]).map(e=>e.name));if(this.layers){for(const e of this.layers)!e.graphType&&t.has(e.graphTypeName)&&(e.graphType=a.has(e.graphTypeName)?"entity":"relationship");const e=this.layers.filter(e=>t.has(e.graphTypeName)&&("entity"===e.graphType?a.has(e.graphTypeName):i.has(e.graphTypeName)));this.setAtOrigin("layers",e,(0,y.OL)(this.originIdOf("layers")))}else this.layers=new o.A;if(this.layers&&this._originalInclusionList){const e=new Set(this._originalInclusionList.namedTypeDefinitions.keys()),t=this.tables?.map(e=>e.graphTypeName)??[],a=this.layers.map(e=>e.graphTypeName).concat(t);for(const t of a)e.has(t)||this._originalInclusionList.namedTypeDefinitions.set(t,{useAllData:!1,members:new Map});const i=[];for(const e of this._originalInclusionList.namedTypeDefinitions.keys())a.includes(e)||(r.A.getLogger(this).warn(`A named type, ${e}, was in the serialized feature collection but did not have a sublayer config in the item, so will be removed`),i.push(e));for(const e of i)this._originalInclusionList.namedTypeDefinitions.delete(e)}}};(0,i.Cg)([(0,p.MZ)(E.OZ)],S.prototype,"url",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"dataPreloadedInLocalCache",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"initializationLinkChartConfig",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"membershipModified",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"dataManager",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"initializationInclusionModeDefinition",null),(0,i.Cg)([(0,p.MZ)()],S.prototype,"knowledgeGraph",void 0),(0,i.Cg)([(0,p.MZ)({type:o.A.ofType(k.A),json:{write:{ignoreOrigin:!0}}})],S.prototype,"layers",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],S.prototype,"linkChart",null),(0,i.Cg)([(0,p.MZ)()],S.prototype,"entityLinkChartDiagramLookup",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"relationshipLinkChartDiagramLookup",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"linkChartExtent",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"memberEntityTypes",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"memberRelationshipTypes",void 0),(0,i.Cg)([(0,p.MZ)({type:["LinkChartLayer"]})],S.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,p.MZ)()],S.prototype,"sublayerIdsCache",void 0),(0,i.Cg)([(0,p.MZ)({type:o.A.ofType(k.A),json:{write:{ignoreOrigin:!0}}})],S.prototype,"tables",void 0),(0,i.Cg)([(0,p.MZ)({json:{read:!1}})],S.prototype,"type",void 0),(0,i.Cg)([(0,p.MZ)({json:{read:!1}})],S.prototype,"chronologicalAuxiliaryGraphics",void 0),S=(0,i.Cg)([(0,u.$)("esri.layers.LinkChartLayer")],S);const R=S}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5294],{31635:(e,t,n)=>{function r(e,t,n,r){var s,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var o=e.length-1;o>=0;o--)(s=e[o])&&(a=(i<3?s(a):i>3?s(t,n,a):s(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function s(e,t,n){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var r,s;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=t[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=t[Symbol.dispose],n&&(s=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");s&&(r=function(){try{s.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}n.d(t,{Cg:()=>r,hk:()=>a,mS:()=>s}),Object.create,Object.create;var i="function"==typeof SuppressedError?SuppressedError:function(e,t,n){var r=new Error(n);return r.name="SuppressedError",r.error=e,r.suppressed=t,r};function a(e){function t(t){e.error=e.hasError?new i(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}var n,r=0;return function s(){for(;n=e.stack.pop();)try{if(!n.async&&1===r)return r=0,e.stack.push(n),Promise.resolve().then(s);if(n.dispose){var i=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(i).then(s,function(e){return t(e),s()})}else r|=1}catch(e){t(e)}if(1===r)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}()}},34304:(e,t,n)=>{n.d(t,{DF:()=>l,FD:()=>s,Ov:()=>i,ct:()=>h});let r=1e-6;function s(){return r}const i=Math.random,a=Math.PI/180,o=180/Math.PI;function l(e){return e*a}function h(e){return e*o}Object.freeze(Object.defineProperty({__proto__:null,RANDOM:i,equals:function(e,t){return Math.abs(e-t)<=r*Math.max(1,Math.abs(e),Math.abs(t))},getEpsilon:s,setEpsilon:function(e){r=e},toDegree:h,toRadian:l},Symbol.toStringTag,{value:"Module"}))},40876:(e,t,n)=>{n.d(t,{Eq:()=>d,G1:()=>p,TS:()=>i,Tf:()=>_,V6:()=>s,Vm:()=>x,ay:()=>l,c1:()=>y,c4:()=>a,j5:()=>h,lT:()=>u,oW:()=>c});const r={transparent:[0,0,0,0],black:[0,0,0,1],silver:[192,192,192,1],gray:[128,128,128,1],white:[255,255,255,1],maroon:[128,0,0,1],red:[255,0,0,1],purple:[128,0,128,1],fuchsia:[255,0,255,1],green:[0,128,0,1],lime:[0,255,0,1],olive:[128,128,0,1],yellow:[255,255,0,1],navy:[0,0,128,1],blue:[0,0,255,1],teal:[0,128,128,1],aqua:[0,255,255,1],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],blanchedalmond:[255,235,205,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],oldlace:[253,245,230,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],rebeccapurple:[102,51,153,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],whitesmoke:[245,245,245,1],yellowgreen:[154,205,50,1]};function s(e){return!!r[e]||!!r[e.toLowerCase()]}function i(e){return r[e]??r[e.toLowerCase()]}function a(e){return[...i(e)]}function o(e,t,n){n<0&&++n,n>1&&--n;const r=6*n;return r<1?e+(t-e)*r:2*n<1?t:3*n<2?e+(t-e)*(2/3-n)*6:e}function l(e,t,n,r=1){const s=(e%360+360)%360/360,i=n<=.5?n*(t+1):n+t-n*t,a=2*n-i;return[Math.round(255*o(a,i,s+1/3)),Math.round(255*o(a,i,s)),Math.round(255*o(a,i,s-1/3)),r]}function h(e){const t=e.length>5,n=t?8:4,r=(1<<n)-1,s=t?1:17,i=t?9===e.length:5===e.length;let a=Number("0x"+e.slice(1));if(isNaN(a))return null;const o=[0,0,0,1];let l;return i&&(l=a&r,a>>=n,o[3]=s*l/255),l=a&r,a>>=n,o[2]=s*l,l=a&r,a>>=n,o[1]=s*l,l=a&r,a>>=n,o[0]=s*l,o}function c(e){if(!e.startsWith("#")||isNaN(Number(`0x${e.slice(1)}`)))return null;switch(e.length){case 4:case 5:{const t=parseInt(e.slice(1,2),16),n=parseInt(e.slice(2,3),16),r=parseInt(e.slice(3,4),16),s=4===e.length?15:parseInt(e.slice(4),16);return[t+16*t,n+16*n,r+16*r,(s+16*s)/255]}case 7:case 9:return[parseInt(e.slice(1,3),16),parseInt(e.slice(3,5),16),parseInt(e.slice(5,7),16),(7===e.length?255:parseInt(e.slice(7),16))/255];default:return null}}function u(e){const t=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(t){const e=t[2].split(/\s*,\s*/),n=t[1];if("rgb"===n&&3===e.length||"rgba"===n&&4===e.length){if(e[0].endsWith("%")){const t=e.map(e=>2.56*parseFloat(e));return 4===e.length&&(t[3]=parseFloat(e[3])),f(t)}return f(e.map(e=>parseFloat(e)))}if("hsl"===n&&3===e.length||"hsla"===n&&4===e.length)return l(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3]??"1"))}return null}function f(e){return e[0]=y(e[0]),e[1]=y(e[1]),e[2]=y(e[2]),e[3]=4===e.length?p(e[3]):1,e}function d(e){let t=s(e)?i(e):null;return t??=u(e),t??=c(e),t}function x(e){const t=d(e);return null!=t?[t[0]/255,t[1]/255,t[2]/255,t[3]]:null}function p(e){return g(e,0,1)}function y(e){return Math.round(g(e,0,255))}function g(e,t,n){return e=Number(e),isNaN(e)?n:e<t?t:e>n?n:e}const _=2.2},51624:(e,t,n)=>{n.d(t,{A:()=>h});var r=n(44208),s=n(69397),i=n(93687);const a=4294967296,o=new TextDecoder("utf-8"),l=(0,r.A)("safari")||(0,r.A)("ios")?6:(0,r.A)("ff")?12:32;class h{constructor(e,t,n=0,r=(e?e.byteLength:0)){this._tag=0,this._dataType=99,this._init(e,t,n,r)}_init(e,t,n,r){this._data=e,this._dataView=t,this._pos=n,this._end=r}get usedMemory(){return 64+(0,s.Qf)(this._data)}asUnsafe(){return this}clone(){return new h(this._data,this._dataView,this._pos,this._end)}pos(){return this._pos}move(e){this._pos=e}nextTag(e){for(;;){if(this._pos===this._end)return!1;const t=this._decodeVarint();if(this._tag=t>>3,this._dataType=7&t,!e||e===this._tag)break;this.skip()}return!0}next(){if(this._pos===this._end)return!1;const e=this._decodeVarint();return this._tag=e>>3,this._dataType=7&e,!0}empty(){return this._pos>=this._end}tag(){return this._tag}getInt32(){return this._decodeVarint()}getInt64(){return this._decodeVarint()}getUInt32(){let e=4294967295;if(e=(127&this._data[this._pos])>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<7)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<14)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<21)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(15&this._data[this._pos])<<28)>>>0,this._data[this._pos++]<128)return e;throw new Error("Varint overflow")}getUInt64(){return this._decodeVarint()}getSInt32(){const e=this.getUInt32();return e>>>1^-(1&e)}getSInt64(){return this._decodeSVarint()}getBool(){const e=0!==this._data[this._pos];return this._skip(1),e}getEnum(){return this._decodeVarint()}getFixed64(){const e=this._dataView,t=this._pos,n=e.getUint32(t,!0)+e.getUint32(t+4,!0)*a;return this._skip(8),n}getSFixed64(){const e=this._dataView,t=this._pos,n=e.getUint32(t,!0)+e.getInt32(t+4,!0)*a;return this._skip(8),n}getDouble(){const e=this._dataView.getFloat64(this._pos,!0);return this._skip(8),e}getFixed32(){const e=this._dataView.getUint32(this._pos,!0);return this._skip(4),e}getSFixed32(){const e=this._dataView.getInt32(this._pos,!0);return this._skip(4),e}getFloat(){const e=this._dataView.getFloat32(this._pos,!0);return this._skip(4),e}getString(){const e=this._getLength(),t=this._pos,n=this._toString(this._data,t,t+e);return this._skip(e),n}getBytes(){const e=this._getLength(),t=this._pos,n=this._toBytes(this._data,t,t+e);return this._skip(e),n}getLength(){return this._getLengthUnsafe()}processMessageWithArgs(e,t,n,r){const s=this.getMessage(),i=e(s,t,n,r);return s.release(),i}processMessage(e){const t=this.getMessage(),n=e(t);return t.release(),n}getMessage(){const e=this._getLength(),t=h.pool.acquire();return t._init(this._data,this._dataView,this._pos,this._pos+e),this._skip(e),t}release(){h.pool.release(this)}dataType(){return this._dataType}skip(){switch(this._dataType){case 0:this._decodeVarint();break;case 1:this._skip(8);break;case 2:this._skip(this._getLength());break;case 5:this._skip(4);break;default:throw new Error("Invalid data type!")}}skipLen(e){this._skip(e)}_skip(e){if(this._pos+e>this._end)throw new Error("Attempt to skip past the end of buffer!");this._pos+=e}_decodeVarint(){const e=this._data;let t=this._pos,n=0,r=0;if(this._end-t>=10)do{if(r=e[t++],n|=127&r,!(128&r))break;if(r=e[t++],n|=(127&r)<<7,!(128&r))break;if(r=e[t++],n|=(127&r)<<14,!(128&r))break;if(r=e[t++],n|=(127&r)<<21,!(128&r))break;if(r=e[t++],n+=268435456*(127&r),!(128&r))break;if(r=e[t++],n+=34359738368*(127&r),!(128&r))break;if(r=e[t++],n+=4398046511104*(127&r),!(128&r))break;if(r=e[t++],n+=562949953421312*(127&r),!(128&r))break;if(r=e[t++],n+=72057594037927940*(127&r),!(128&r))break;if(r=e[t++],n+=0x8000000000000000*(127&r),!(128&r))break;throw new Error("Varint too long!")}while(0);else{let s=1;for(;t!==this._end&&(r=e[t],128&r);)++t,n+=(127&r)*s,s*=128;if(t===this._end)throw new Error("Varint overrun!");++t,n+=r*s}return this._pos=t,n}_decodeSVarint(){const e=this._data;let t,n=0,r=0;const s=1&e[this._pos];if(r=e[this._pos++],n|=127&r,!(128&r))return s?-(n+1)/2:n/2;if(r=e[this._pos++],n|=(127&r)<<7,!(128&r))return s?-(n+1)/2:n/2;if(r=e[this._pos++],n|=(127&r)<<14,!(128&r))return s?-(n+1)/2:n/2;if(r=e[this._pos++],n|=(127&r)<<21,!(128&r))return s?-(n+1)/2:n/2;if(r=e[this._pos++],n+=268435456*(127&r),!(128&r))return s?-(n+1)/2:n/2;if(r=e[this._pos++],n+=34359738368*(127&r),!(128&r))return s?-(n+1)/2:n/2;if(r=e[this._pos++],n+=4398046511104*(127&r),!(128&r))return s?-(n+1)/2:n/2;if(t=BigInt(n),r=e[this._pos++],t+=0x2000000000000n*BigInt(127&r),!(128&r))return Number(s?-(t+1n)/2n:t/2n);if(r=e[this._pos++],t+=0x100000000000000n*BigInt(127&r),!(128&r))return Number(s?-(t+1n)/2n:t/2n);if(r=e[this._pos++],t+=0x8000000000000000n*BigInt(127&r),!(128&r))return Number(s?-(t+1n)/2n:t/2n);throw new Error("Varint too long!")}_getLength(){if(2!==this._dataType)throw new Error("Not a delimited data type!");return this._decodeVarint()}_getLengthUnsafe(){return this.getUInt32()}_toString(e,t,n){if((n=Math.min(this._end,n))-t>l){const r=e.subarray(t,n);return o.decode(r)}let r="",s="";for(let i=t;i<n;++i){const t=e[i];128&t?s+="%"+t.toString(16):(r+=decodeURIComponent(s)+String.fromCharCode(t),s="")}return s.length&&(r+=decodeURIComponent(s)),r}_toBytes(e,t,n){return n=Math.min(this._end,n),new Uint8Array(e.buffer,t,n-t)}static{this.pool=new i.A(h,void 0,e=>{e._data=null,e._dataView=null})}}},69286:(e,t,n)=>{n.r(t),n.d(t,{default:()=>J});var r=n(74887),s=n(6774),i=n(83027),a=n(13195);function o(e){return 746===e||747===e||!(e<4352)&&(e>=12704&&e<=12735||e>=12544&&e<=12591||e>=65072&&e<=65103&&!(e>=65097&&e<=65103)||e>=63744&&e<=64255||e>=13056&&e<=13311||e>=11904&&e<=12031||e>=12736&&e<=12783||e>=12288&&e<=12351&&!(e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||e>=13312&&e<=19903||e>=19968&&e<=40959||e>=12800&&e<=13055||e>=12592&&e<=12687||e>=43360&&e<=43391||e>=55216&&e<=55295||e>=4352&&e<=4607||e>=44032&&e<=55215||e>=12352&&e<=12447||e>=12272&&e<=12287||e>=12688&&e<=12703||e>=12032&&e<=12255||e>=12784&&e<=12799||e>=12448&&e<=12543&&12540!==e||e>=65280&&e<=65519&&!(65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||e>=65104&&e<=65135&&!(e>=65112&&e<=65118||e>=65123&&e<=65126)||e>=5120&&e<=5759||e>=6320&&e<=6399||e>=65040&&e<=65055||e>=19904&&e<=19967||e>=40960&&e<=42127||e>=42128&&e<=42191)}function l(e){return!(e<11904)&&(e>=12704&&e<=12735||e>=12544&&e<=12591||e>=65072&&e<=65103||e>=63744&&e<=64255||e>=13056&&e<=13311||e>=11904&&e<=12031||e>=12736&&e<=12783||e>=12288&&e<=12351||e>=13312&&e<=19903||e>=19968&&e<=40959||e>=12800&&e<=13055||e>=65280&&e<=65519||e>=12352&&e<=12447||e>=12272&&e<=12287||e>=12032&&e<=12255||e>=12784&&e<=12799||e>=12448&&e<=12543||e>=65040&&e<=65055||e>=42128&&e<=42191||e>=40960&&e<=42127)}function h(e){switch(e){case 10:case 32:case 38:case 40:case 41:case 43:case 45:case 47:case 173:case 183:case 8203:case 8208:case 8211:case 8231:return!0}return!1}function c(e){switch(e){case 9:case 10:case 11:case 12:case 13:case 32:return!0}return!1}var u=n(18989);const f=24;class d{constructor(e,t,n,r,s,i,a){this._glyphItems=e,this._maxWidth=t,this._lineHeight=n,this._letterSpacing=r,this._hAnchor=s,this._vAnchor=i,this._justify=a}getShaping(e,t,n){const r=this._letterSpacing,s=this._lineHeight,i=this._justify,a=this._maxWidth,u=[];let f=0,d=0;for(const t of e){const e=t.codePointAt(0);if(null==e)continue;const s=n&&o(e);let i;for(const t of this._glyphItems)if(i=t[e],i)break;u.push({codePoint:e,x:f,y:d,vertical:s,glyphMosaicItem:i}),i&&(f+=i.metrics.advance+r)}let x=f;a>0&&(x=f/Math.max(1,Math.ceil(f/a)));const p=e.includes("​"),y=[],g=u.length;for(let e=0;e<g-1;e++){const t=u[e].codePoint,n=l(t);if(h(t)||n){let r=0;if(10===t)r-=1e4;else if(n&&p)r+=150;else{40!==t&&65288!==t||(r+=50);const n=u[e+1].codePoint;41!==n&&65289!==n||(r+=50)}y.push(this._buildBreak(e+1,u[e].x,x,y,r,!1))}}const _=this._optimalBreaks(this._buildBreak(g,f,x,y,0,!0));let m=0;const b=t?-s:s;let I=0;for(let e=0;e<_.length;e++){const t=_[e];let n=I;for(;n<t&&c(u[n].codePoint);)u[n].glyphMosaicItem=null,++n;let r=t-1;for(;r>n&&c(u[r].codePoint);)u[r].glyphMosaicItem=null,--r;if(n<=r){const e=u[n].x;for(let t=n;t<=r;t++)u[t].x-=e,u[t].y=d;let t=u[r].x;u[r].glyphMosaicItem&&(t+=u[r].glyphMosaicItem.metrics.advance),m=Math.max(t,m),i&&this._applyJustification(u,n,r)}I=t,d+=b}if(u.length>0){const e=_.length-1,n=(i-this._hAnchor)*m;let r=(-this._vAnchor*(e+1)+.5)*s;t&&e&&(r+=e*s);for(const e of u)e.x+=n,e.y+=r}return u.filter(e=>e.glyphMosaicItem)}static getTextBox(e,t){if(!e.length)return null;let n=1/0,r=1/0,s=0,i=0;for(const a of e){const e=a.glyphMosaicItem.metrics.advance,o=a.x,l=a.y-17,h=o+e,c=l+t;n=Math.min(n,o),s=Math.max(s,h),r=Math.min(r,l),i=Math.max(i,c)}return{x:n,y:r,width:s-n,height:i-r}}static getBox(e){if(!e.length)return null;let t=1/0,n=1/0,r=0,s=0;for(const i of e){const{height:e,left:a,top:o,width:l}=i.glyphMosaicItem.metrics,h=i.x,c=i.y-(e-Math.abs(o)),u=h+l+a,f=c+e;t=Math.min(t,h),r=Math.max(r,u),n=Math.min(n,c),s=Math.max(s,f)}return{x:t,y:n,width:r-t,height:s-n}}static addDecoration(e,t){const n=e.length;if(0===n)return;let r=e[0].x+e[0].glyphMosaicItem.metrics.left,s=e[0].y;for(let i=1;i<n;i++){const n=e[i];if(n.y!==s){const a=e[i-1].x+e[i-1].glyphMosaicItem.metrics.left+e[i-1].glyphMosaicItem.metrics.width;e.push({codePoint:0,x:r,y:s+t-3,vertical:!1,glyphMosaicItem:{sdf:!0,rect:new u.A(4,0,4,8),metrics:{width:a-r,height:8,left:0,top:0,advance:0},page:0,code:0}}),s=n.y,r=n.x+n.glyphMosaicItem.metrics.left}}const i=e[n-1].x+e[n-1].glyphMosaicItem.metrics.left+e[n-1].glyphMosaicItem.metrics.width;e.push({codePoint:0,x:r,y:s+t-3,vertical:!1,glyphMosaicItem:{sdf:!0,rect:new u.A(4,0,4,8),metrics:{width:i-r,height:8,left:0,top:0,advance:0},page:0,code:0}})}_breakScore(e,t,n,r){const s=(e-t)*(e-t);return r?e<t?s/2:2*s:s+Math.abs(n)*n}_buildBreak(e,t,n,r,s,i){let a=null,o=this._breakScore(t,n,s,i);for(const e of r){const r=t-e.x,l=this._breakScore(r,n,s,i)+e.score;l<=o&&(a=e,o=l)}return{index:e,x:t,score:o,previousBreak:a}}_optimalBreaks(e){return e?this._optimalBreaks(e.previousBreak).concat(e.index):[]}_applyJustification(e,t,n){const r=e[n],s=r.vertical?f:r.glyphMosaicItem?r.glyphMosaicItem.metrics.advance:0,i=(r.x+s)*this._justify;for(let r=t;r<=n;r++)e[r].x-=i}}const x=.5;class p{constructor(e,t,n=0,r=-1,s=x){this.x=e,this.y=t,this.angle=n,this.segment=r,this.minzoom=s}}class y{constructor(e,t,n,r,s,i=x,o=a.MG){this.anchor=e,this.labelAngle=t,this.glyphAngle=n,this.page=r,this.alternateVerticalGlyph=s,this.minzoom=i,this.maxzoom=o}}class g{constructor(e,t,n,r,s,i,a,o,l,h,c,u){this.tl=e,this.tr=t,this.bl=n,this.br=r,this.mosaicRect=s,this.labelAngle=i,this.minAngle=a,this.maxAngle=o,this.anchor=l,this.minzoom=h,this.maxzoom=c,this.page=u}}class _{constructor(e){this.shapes=e}}class m{getIconPlacement(e,t,n){const r=new s.bR(e.x,e.y),i=0===n.rotationAlignment,o=n.keepUpright;let l=n.rotate*a.os;i&&(l+=e.angle);const h=new _([]);return n.allowOverlap&&n.ignorePlacement||(h.iconColliders=[]),this._addIconPlacement(h,r,t,n,l),i&&o&&this._addIconPlacement(h,r,t,n,l+a.Jo),h}_addIconPlacement(e,t,n,r,i){const o=n.rasterizationScale,l=n.width/o,h=n.height/o,c=r.offset;let u=c[0],f=c[1];switch(r.anchor){case 0:u-=l/2,f-=h/2;break;case 1:f-=h/2;break;case 2:u-=l,f-=h/2;break;case 3:u-=l/2;break;case 4:u-=l/2,f-=h;break;case 5:break;case 7:f-=h;break;case 6:u-=l;break;case 8:u-=l,f-=h}const d=n.rect,p=2/o,y=u-p,_=f-p,m=y+d.width/o,b=_+d.height/o,I=new s.bR(y,_),w=new s.bR(m,b),v=new s.bR(y,b),M=new s.bR(m,_);if(0!==i){const e=Math.cos(i),t=Math.sin(i);I.rotate(e,t),w.rotate(e,t),v.rotate(e,t),M.rotate(e,t)}const k=new g(I,M,v,w,d,i,0,256,t,x,a.MG,0);if(e.shapes.push(k),!r.allowOverlap||!r.ignorePlacement){const n=r.size,s=r.padding,o={xTile:t.x,yTile:t.y,dxPixels:u*n-s,dyPixels:f*n-s,hard:!r.optional,partIndex:0,width:l*n+2*s,height:h*n+2*s,angle:i,minLod:x,maxLod:a.MG};e.iconColliders.push(o)}}getTextPlacement(e,t,n,r){const o=new s.bR(e.x,e.y),l=r.rotate*a.os,h=0===r.rotationAlignment,c=r.keepUpright,u=r.padding;let p=x;const m=h?e.angle:0,b=e.segment>=0&&h,I=r.allowOverlap&&r.ignorePlacement?null:[],w=[],v=!b;let M=Number.POSITIVE_INFINITY,k=Number.NEGATIVE_INFINITY,P=M,V=k;const A=(b||h)&&c,D=r.size/f;let B=!1;for(const e of t)if(e.vertical){B=!0;break}let L,S=0,T=0;if(!b&&B){const e=d.getTextBox(t,r.lineHeight*f);switch(r.anchor){case 1:S=e.height/2,T=-e.width/2;break;case 2:S=-e.height/2,T=e.width/2;break;case 3:S=e.height/2,T=e.width/2;break;case 4:S=-e.height/2,T=-e.width/2;break;case 5:S=e.height;break;case 7:T=-e.width;break;case 6:T=e.width;break;case 8:S=-e.height}}S+=r.offset[0]*f,T+=r.offset[1]*f;for(const f of t){const t=f.glyphMosaicItem;if(!t||t.rect.isEmpty)continue;const d=t.rect,_=t.metrics,R=t.page;if(I&&v){if(void 0!==L&&L!==f.y){let t,n,s,i;B?(t=-V+S,n=M+T,s=V-P,i=k-M):(t=M+S,n=P+T,s=k-M,i=V-P);const o={xTile:e.x,yTile:e.y,dxPixels:t*D-u,dyPixels:n*D-u,hard:!r.optional,partIndex:1,width:s*D+2*u,height:i*D+2*u,angle:l,minLod:x,maxLod:a.MG};I.push(o),M=Number.POSITIVE_INFINITY,k=Number.NEGATIVE_INFINITY,P=M,V=k}L=f.y}const C=[];if(b){const r=.5*t.metrics.width,s=(f.x+_.left-4+r)*D*i.ih;if(p=this._placeGlyph(e,p,s,n,e.segment,1,f.vertical,R,C),c&&(p=this._placeGlyph(e,p,s,n,e.segment,-1,f.vertical,R,C)),p>=2)break}else C.push(new y(o,m,m,R,!1)),h&&c&&C.push(new y(o,m+a.Jo,m+a.Jo,R,!1));const z=f.x+_.left,U=f.y-17-_.top,F=z+_.width,E=U+_.height;let N,O,G,q,j,W,Z,K;if(!b&&B)if(f.vertical){const e=(z+F)/2-_.height/2,t=(U+E)/2+_.width/2;N=new s.bR(-t-4+S,e-4+T),O=new s.bR(N.x+d.width,N.y+d.height),G=new s.bR(N.x,O.y),q=new s.bR(O.x,N.y)}else N=new s.bR(4-U+S,z-4+T),O=new s.bR(N.x-d.height,N.y+d.width),G=new s.bR(O.x,N.y),q=new s.bR(N.x,O.y);else N=new s.bR(z-4+S,U-4+T),O=new s.bR(N.x+d.width,N.y+d.height),G=new s.bR(N.x,O.y),q=new s.bR(O.x,N.y);for(const t of C){let n,i,a,o;if(t.alternateVerticalGlyph){if(!j){const e=(U+E)/2+T;j=new s.bR((z+F)/2+S-_.height/2-4,e+_.width/2+4),W=new s.bR(j.x+d.height,j.y-d.width),Z=new s.bR(W.x,j.y),K=new s.bR(j.x,W.y)}n=j,i=Z,a=K,o=W}else n=N,i=G,a=q,o=O;const h=U,c=E,x=t.glyphAngle+l;if(0!==x){const e=Math.cos(x),t=Math.sin(x);n=n.clone(),i=i?.clone(),a=a?.clone(),o=o?.clone(),n.rotate(e,t),o?.rotate(e,t),i?.rotate(e,t),a?.rotate(e,t)}let p=0,y=256;if(b&&B?f.vertical?t.alternateVerticalGlyph?(p=32,y=96):(p=224,y=32):(p=224,y=96):(p=192,y=64),w.push(new g(n,a,i,o,d,t.labelAngle,p,y,t.anchor,t.minzoom,t.maxzoom,t.page)),I&&(!A||this._legible(t.labelAngle)))if(v)z<M&&(M=z),h<P&&(P=h),F>k&&(k=F),c>V&&(V=c);else if(t.minzoom<2){const n={xTile:e.x,yTile:e.y,dxPixels:(z+S)*D-u,dyPixels:(h+S)*D-u,hard:!r.optional,partIndex:1,width:(F-z)*D+2*u,height:(c-h)*D+2*u,angle:x,minLod:t.minzoom,maxLod:t.maxzoom};I.push(n)}}}if(p>=2)return null;if(I&&v){let t,n,s,i;B?(t=-V+S,n=M+T,s=V-P,i=k-M):(t=M+S,n=P+T,s=k-M,i=V-P);const o={xTile:e.x,yTile:e.y,dxPixels:t*D-u,dyPixels:n*D-u,hard:!r.optional,partIndex:1,width:s*D+2*u,height:i*D+2*u,angle:l,minLod:x,maxLod:a.MG};I.push(o)}const R=new _(w);return I&&I.length>0&&(R.textColliders=I),R}_legible(e){const t=(0,a.z0)(e);return t<65||t>=193}_placeGlyph(e,t,n,r,i,o,l,h,c){let u=o;const f=u<0?(0,a.Wh)(e.angle+a.Jo,a.pJ):e.angle;let d=0;n<0&&(u*=-1,n*=-1,d=a.Jo),u>0&&++i;let x=new s.bR(e.x,e.y),p=r[i],g=a.MG;if(r.length<=i)return g;for(;;){const e=p.x-x.x,s=p.y-x.y,o=Math.sqrt(e*e+s*s),_=Math.max(n/o,t),m=e/o,b=s/o,I=(0,a.Wh)(Math.atan2(b,m)+d,a.pJ);if(c.push(new y(x,f,I,h,!1,_,g)),l&&c.push(new y(x,f,I,h,!0,_,g)),_<=t)return _;x=p.clone();do{if(i+=u,r.length<=i||i<0)return _;p=r[i]}while(x.isEqual(p));let w=p.x-x.x,v=p.y-x.y;const M=Math.sqrt(w*w+v*v);w*=o/M,v*=o/M,x.x-=w,x.y-=v,g=_}}}var b=n(51624),I=n(15585);class w{constructor(e,t,n=0){this.values={},this._geometry=void 0,this._pbfGeometry=null,this.featureIndex=n;const r=t.keys,s=t.values,i=e.asUnsafe();for(;i.next();)switch(i.tag()){case 1:this.id=i.getUInt64();break;case 2:{const e=i.getMessage().asUnsafe(),t=this.values;for(;!e.empty();){const n=e.getUInt32(),i=e.getUInt32();t[r[n]]=s[i]}e.release();break}case 3:this.type=i.getUInt32();break;case 4:this._pbfGeometry=i.getMessage();break;default:i.skip()}}getGeometry(e){if(void 0!==this._geometry)return this._geometry;if(!this._pbfGeometry)return null;const t=this._pbfGeometry.asUnsafe();let n,r;this._pbfGeometry=null,e?e.reset(this.type):n=[];let i,a=1,o=0,l=0,h=0;for(;!t.empty();){if(0===o){const e=t.getUInt32();a=7&e,o=e>>3}switch(o--,a){case 1:l+=t.getSInt32(),h+=t.getSInt32(),e?e.moveTo(l,h):n&&(r&&n.push(r),r=[],r.push(new s.bR(l,h)));break;case 2:l+=t.getSInt32(),h+=t.getSInt32(),e?e.lineTo(l,h):r&&r.push(new s.bR(l,h));break;case 7:e?e.close():r&&!r[0].equals(l,h)&&r.push(r[0].clone());break;default:throw t.release(),new Error("Invalid path operation")}}return e?i=e.result():n&&(r&&n.push(r),i=n),t.release(),this._geometry=i,i}}var v=n(80081);class M extends v.A{constructor(){super(12)}add(e,t,n){const r=this.array;r.push(e),r.push(t),r.push(n)}}v.A;class k{constructor(e){this.extent=i.vA,this.keys=[],this.values=[],this._pbfLayer=e.clone();const t=e.asUnsafe();for(;t.next();)switch(t.tag()){case 1:this.name=t.getString();break;case 3:this.keys.push(t.getString());break;case 4:this.values.push(t.processMessage(k._parseValue));break;case 5:this.extent=t.getUInt32();break;default:t.skip()}}getData(){return this._pbfLayer}static _parseValue(e){for(;e.next();)switch(e.tag()){case 1:return e.getString();case 2:return e.getFloat();case 3:return e.getDouble();case 4:return e.getInt64();case 5:return e.getUInt64();case 6:return e.getSInt64();case 7:return e.getBool();default:e.skip()}return null}}class P extends v.A{constructor(e){super(e)}add(e,t,n,r,s,i,a,o,l,h,c,u){const f=this.array;let d=v.A.i1616to32(e,t);f.push(d);const x=31;d=v.A.i8888to32(Math.round(x*n),Math.round(x*r),Math.round(x*s),Math.round(x*i)),f.push(d),d=v.A.i8888to32(Math.round(x*a),Math.round(x*o),Math.round(x*l),Math.round(x*h)),f.push(d),d=v.A.i1616to32(c,0),f.push(d),u&&f.push(...u)}}class V extends v.A{constructor(e){super(e)}add(e,t,n){const r=this.array;r.push(v.A.i1616to32(e,t)),n&&r.push(...n)}}class A extends v.A{constructor(e){super(e)}add(e,t,n,r,s,i,a){const o=this.array,l=this.index;let h=v.A.i1616to32(e,t);return o.push(h),h=v.A.i8888to32(Math.round(15*n),Math.round(15*r),s,i),o.push(h),a&&o.push(...a),l}}class D extends v.A{constructor(e){super(e)}add(e,t,n,r,s,i,o,l,h,c,u,f){const d=this.array;let x=v.A.i1616to32(e,t);d.push(x),x=v.A.i1616to32(Math.round(8*n),Math.round(8*r)),d.push(x),x=v.A.i8888to32(s/4,i/4,l,h),d.push(x),x=v.A.i8888to32(0,(0,a.z0)(o),10*c,Math.min(10*u,255)),d.push(x),f&&d.push(...f)}}class B extends v.A{constructor(e){super(e)}add(e,t,n,r,s){const i=this.array,a=v.A.i1616to32(2*e+n,2*t+r);i.push(a),s&&i.push(...s)}}class L{constructor(e,t,n){this.layerExtent=i.vA,this._features=[],this.layer=e,this.zoom=t,this._spriteInfo=n,this._filter=e.getFeatureFilter()}pushFeature(e){this._filter&&!this._filter.filter(e,this.zoom)||this._features.push(e)}hasFeatures(){return this._features.length>0}getResources(e,t,n){}}class S extends L{constructor(e,t,n,r,s){super(e,t,n),this.type=4,this._circleVertexBuffer=r,this._circleIndexBuffer=s}get circleIndexStart(){return this._circleIndexStart}get circleIndexCount(){return this._circleIndexCount}processFeatures(e){const t=this._circleVertexBuffer,n=this._circleIndexBuffer;this._circleIndexStart=3*n.index,this._circleIndexCount=0;const r=this.layer,s=this.zoom;e&&e.setExtent(this.layerExtent);for(const i of this._features){const a=i.getGeometry(e);if(!a)continue;const o=r.circleMaterial.encodeAttributes(i,s,r);for(const e of a)if(e)for(const r of e){const e=t.index;t.add(r.x,r.y,0,0,o),t.add(r.x,r.y,0,1,o),t.add(r.x,r.y,1,0,o),t.add(r.x,r.y,1,1,o),n.add(e,e+1,e+2),n.add(e+1,e+2,e+3),this._circleIndexCount+=6}}}serialize(){let e=6;e+=this.layerUIDs.length,e+=this._circleVertexBuffer.array.length,e+=this._circleIndexBuffer.array.length;const t=new Uint32Array(e),n=new Int32Array(t.buffer);let r=0;t[r++]=this.type,t[r++]=this.layerUIDs.length;for(let e=0;e<this.layerUIDs.length;e++)t[r++]=this.layerUIDs[e];t[r++]=this._circleIndexStart,t[r++]=this._circleIndexCount,t[r++]=this._circleVertexBuffer.array.length;for(let e=0;e<this._circleVertexBuffer.array.length;e++)n[r++]=this._circleVertexBuffer.array[e];t[r++]=this._circleIndexBuffer.array.length;for(let e=0;e<this._circleIndexBuffer.array.length;e++)t[r++]=this._circleIndexBuffer.array[e];return t.buffer}}var T=n(98291),R=n(83349);class C extends L{constructor(e,t,n,r,s,i,a){super(e,t,n),this.type=1,this._patternMap=new Map,this._fillVertexBuffer=r,this._fillIndexBuffer=s,this._outlineVertexBuffer=i,this._outlineIndexBuffer=a}get fillIndexStart(){return this._fillIndexStart}get fillIndexCount(){return this._fillIndexCount}get outlineIndexStart(){return this._outlineIndexStart}get outlineIndexCount(){return this._outlineIndexCount}getResources(e,t,n){const r=this.layer,s=this.zoom,i=r.getPaintProperty("fill-pattern");if(i)if(i.isDataDriven)for(const e of this._features)t(i.getValue(s,e),!0);else t(i.getValue(s),!0)}processFeatures(e){this._fillIndexStart=3*this._fillIndexBuffer.index,this._fillIndexCount=0,this._outlineIndexStart=3*this._outlineIndexBuffer.index,this._outlineIndexCount=0;const t=this.layer,n=this.zoom,{fillMaterial:r,outlineMaterial:s,hasDataDrivenFill:i,hasDataDrivenOutline:a}=t;e&&e.setExtent(this.layerExtent);const o=t.getPaintProperty("fill-pattern"),l=o?.isDataDriven;let h=!o&&t.getPaintValue("fill-antialias",n);if(t.outlineUsesFillColor){if(h&&!t.hasDataDrivenOpacity){const e=t.getPaintValue("fill-opacity",n),r=t.getPaintValue("fill-opacity",n+1);e<1&&r<1&&(h=!1)}if(h&&!t.hasDataDrivenColor){const e=t.getPaintValue("fill-color",n),r=t.getPaintValue("fill-color",n+1);e[3]<1&&r[3]<1&&(h=!1)}}const c=this._features,u=e?.validateTessellation;if(l){const i=[];for(const l of c){const c=o.getValue(n,l),f=this._spriteInfo[c];if(!f?.rect)continue;const d=r.encodeAttributes(l,n,t,f),x=h&&a?s.encodeAttributes(l,n,t):[],p=l.getGeometry(e);i.push({ddFillAttributes:d,ddOutlineAttributes:x,page:f.page,geometry:p}),i.sort((e,t)=>e.page-t.page);for(const{ddFillAttributes:e,ddOutlineAttributes:n,page:r,geometry:s}of i)this._processFeature(s,h,t.outlineUsesFillColor,e,n,u,r)}}else for(const o of c){const l=i?r.encodeAttributes(o,n,t):null,c=h&&a?s.encodeAttributes(o,n,t):null,f=o.getGeometry(e);this._processFeature(f,h,t.outlineUsesFillColor,l,c,u)}}serialize(){let e=10;e+=this.layerUIDs.length,e+=this._fillVertexBuffer.array.length,e+=this._fillIndexBuffer.array.length,e+=this._outlineVertexBuffer.array.length,e+=this._outlineIndexBuffer.array.length,e+=3*this._patternMap.size+1;const t=new Uint32Array(e),n=new Int32Array(t.buffer);let r=0;t[r++]=this.type,t[r++]=this.layerUIDs.length;for(let e=0;e<this.layerUIDs.length;e++)t[r++]=this.layerUIDs[e];t[r++]=this._fillIndexStart,t[r++]=this._fillIndexCount,t[r++]=this._outlineIndexStart,t[r++]=this._outlineIndexCount;const s=this._patternMap,i=s.size;if(t[r++]=i,i>0)for(const[e,[n,i]]of s)t[r++]=e,t[r++]=n,t[r++]=i;t[r++]=this._fillVertexBuffer.array.length;for(let e=0;e<this._fillVertexBuffer.array.length;e++)n[r++]=this._fillVertexBuffer.array[e];t[r++]=this._fillIndexBuffer.array.length;for(let e=0;e<this._fillIndexBuffer.array.length;e++)t[r++]=this._fillIndexBuffer.array[e];t[r++]=this._outlineVertexBuffer.array.length;for(let e=0;e<this._outlineVertexBuffer.array.length;e++)n[r++]=this._outlineVertexBuffer.array[e];t[r++]=this._outlineIndexBuffer.array.length;for(let e=0;e<this._outlineIndexBuffer.array.length;e++)t[r++]=this._outlineIndexBuffer.array[e];return t.buffer}_processFeature(e,t,n,r,s,i,a){if(!e)return;const o=e.length,l=!s||0===s.length;if(t&&(!n||l))for(let t=0;t<o;t++)this._processOutline(e[t],s);let h;for(let t=0;t<o;t++){const n=C._area(e[t]);n>32?(void 0!==h&&this._processFill(e,h,r,i,a),h=[t]):n<-32&&void 0!==h&&h.push(t)}void 0!==h&&this._processFill(e,h,r,i,a)}_processOutline(e,t){const n=this._outlineVertexBuffer,r=this._outlineIndexBuffer,i=r.index;let a,o,l;const h=new s.bR(0,0),c=new s.bR(0,0),u=new s.bR(0,0);let f=-1,d=-1,x=-1,p=-1,y=-1,g=!1,_=e.length;if(_<2)return;const m=e[0];let b=e[_-1];for(;_&&b.isEqual(m);)--_,b=e[_-1];if(!(_-0<2)){for(let s=0;s<_;++s){0===s?(a=e[_-1],o=e[0],l=e[1],h.assignSub(o,a),h.normalize(),h.rightPerpendicular()):(a=o,o=l,l=s!==_-1?e[s+1]:e[0],h.assign(c));const i=this._isClipEdge(a,o);-1===p&&(g=i),c.assignSub(l,o),c.normalize(),c.rightPerpendicular();const m=h.x*c.y-h.y*c.x;u.assignAdd(h,c),u.normalize();const b=-u.x*-h.x+-u.y*-h.y;let I=Math.abs(0!==b?1/b:1);I>8&&(I=8),m>=0?(x=n.add(o.x,o.y,h.x,h.y,0,1,t),-1===p&&(p=x),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x),d=n.add(o.x,o.y,I*-u.x,I*-u.y,0,-1,t),-1===y&&(y=d),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x),f=d,d=x,x=n.add(o.x,o.y,u.x,u.y,0,1,t),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x),d=n.add(o.x,o.y,c.x,c.y,0,1,t),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x)):(x=n.add(o.x,o.y,I*u.x,I*u.y,0,1,t),-1===p&&(p=x),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x),d=n.add(o.x,o.y,-h.x,-h.y,0,-1,t),-1===y&&(y=d),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x),f=d,d=x,x=n.add(o.x,o.y,-u.x,-u.y,0,-1,t),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x),f=n.add(o.x,o.y,-c.x,-c.y,0,-1,t),f>=0&&d>=0&&x>=0&&!i&&r.add(f,d,x))}f>=0&&d>=0&&p>=0&&!g&&r.add(f,d,p),f>=0&&p>=0&&y>=0&&!g&&r.add(f,y,p),this._outlineIndexCount+=3*(r.index-i)}}_processFill(e,t,n,r,s){let i;t.length>1&&(i=[]);let a=0;for(const n of t)0!==a&&i.push(a),a+=e[n].length;const o=2*a,l=T.A.acquire();for(const n of t){const t=e[n],r=t.length;for(let e=0;e<r;++e)l.push(t[e].x,t[e].y)}const h=(0,R.e)(l,i,2);if(R.e.deviation(l,i,2,h)>0){const r=t.map(t=>e[t].length),{buffer:i,vertexCount:a}=(0,I.l)(l,r);if(a>0){const e=this._fillVertexBuffer.index;for(let e=0;e<a;e++)this._fillVertexBuffer.add(i[2*e],i[2*e+1],n);for(let t=0;t<a;t+=3){const n=e+t;this._fillIndexBuffer.add(n,n+1,n+2)}if(void 0!==s){const e=this._patternMap,t=e.get(s);t?t[1]+=a:e.set(s,[this._fillIndexStart+this._fillIndexCount,a])}this._fillIndexCount+=a}}else{const e=h.length;if(e>0){const t=this._fillVertexBuffer.index;let r=0;for(;r<o;)this._fillVertexBuffer.add(l[r++],l[r++],n);let i=0;for(;i<e;)this._fillIndexBuffer.add(t+h[i++],t+h[i++],t+h[i++]);if(void 0!==s){const t=this._patternMap,n=t.get(s);n?n[1]+=e:t.set(s,[this._fillIndexStart+this._fillIndexCount,e])}this._fillIndexCount+=e}}T.A.release(l)}_isClipEdge(e,t){return e.x===t.x?e.x<=-64||e.x>=4160:e.y===t.y&&(e.y<=-64||e.y>=4160)}static _area(e){let t=0;const n=e.length-1;for(let r=0;r<n;r++)t+=(e[r].x-e[r+1].x)*(e[r].y+e[r+1].y);return t+=(e[n].x-e[0].x)*(e[n].y+e[0].y),.5*t}}var z=n(83773);class U extends L{constructor(e,t,n,r,s){super(e,t,n),this.type=2,this._tessellationOptions={pixelCoordRatio:8,halfWidth:0,offset:0},this._patternMap=new Map,this.tessellationProperties={_lineVertexBuffer:null,_lineIndexBuffer:null,_ddValues:null},this.tessellationProperties._lineVertexBuffer=r,this.tessellationProperties._lineIndexBuffer=s,this._lineTessellator=new z.i(F(this.tessellationProperties),E(this.tessellationProperties),e.canUseThinTessellation)}get lineIndexStart(){return this._lineIndexStart}get lineIndexCount(){return this._lineIndexCount}getResources(e,t,n){const r=this.layer,s=this.zoom,i=r.getPaintProperty("line-pattern"),a=r.getPaintProperty("line-dasharray"),o=r.getLayoutProperty("line-cap");if(!i&&!a)return;const l=o?.getValue(s)||0,h=o?.isDataDriven,c=i?.isDataDriven,u=a?.isDataDriven;if(c||u)for(const e of this._features)t(c?i.getValue(s,e):this._getDashArrayKey(e,s,r,a,h,o,l));else if(i)t(i.getValue(s));else if(a){const e=a.getValue(s);t(r.getDashKey(e,l))}}processFeatures(e){this._lineIndexStart=3*this.tessellationProperties._lineIndexBuffer.index,this._lineIndexCount=0;const t=this.layer,n=this.zoom,r=this._features,s=this._tessellationOptions,{hasDataDrivenLine:i,lineMaterial:a}=t;e&&e.setExtent(this.layerExtent);const o=t.getPaintProperty("line-pattern"),l=t.getPaintProperty("line-dasharray"),h=o?.isDataDriven,c=l?.isDataDriven;let u;u=t.getLayoutProperty("line-cap");const f=u?.isDataDriven?u:null,d=f?null:t.getLayoutValue("line-cap",n),x=d||0,p=!!f;u=t.getLayoutProperty("line-join");const y=u?.isDataDriven?u:null,g=y?null:t.getLayoutValue("line-join",n);u=t.getLayoutProperty("line-miter-limit");const _=u?.isDataDriven?u:null,m=_?null:t.getLayoutValue("line-miter-limit",n);u=t.getLayoutProperty("line-round-limit");const b=u?.isDataDriven?u:null,I=b?null:t.getLayoutValue("line-round-limit",n);u=t.getPaintProperty("line-width");const w=u?.isDataDriven?u:null,v=w?null:t.getPaintValue("line-width",n);u=t.getPaintProperty("line-offset");const M=u?.isDataDriven?u:null,k=M?null:t.getPaintValue("line-offset",n);if(h||c){const i=[];for(const s of r){const r=h?o.getValue(n,s):this._getDashArrayKey(s,n,t,l,p,f,x),c=this._spriteInfo[r];if(!c?.rect)continue;const u=a.encodeAttributes(s,n,t,c),P=s.getGeometry(e);i.push({ddAttributes:u,page:c.page,cap:f?f.getValue(n,s):d,join:y?y.getValue(n,s):g,miterLimit:_?_.getValue(n,s):m,roundLimit:b?b.getValue(n,s):I,halfWidth:.5*(w?w.getValue(n,s):v),offset:M?M.getValue(n,s):k,geometry:P})}i.sort((e,t)=>e.page-t.page),s.textured=!0;for(const{ddAttributes:e,page:t,cap:n,join:r,miterLimit:a,roundLimit:o,halfWidth:l,offset:h,geometry:c}of i)s.capType=n,s.joinType=r,s.miterLimit=a,s.roundLimit=o,s.halfWidth=l,s.offset=h,this._processFeature(c,e,t)}else{if(o){const e=o.getValue(n),t=this._spriteInfo[e];if(!t?.rect)return}s.textured=!(!o&&!l),s.capType=d,s.joinType=g,s.miterLimit=m,s.roundLimit=I,s.halfWidth=.5*v,s.offset=k;for(const o of r){const r=i?a.encodeAttributes(o,n,t):null;f&&(s.capType=f.getValue(n,o)),y&&(s.joinType=y.getValue(n,o)),_&&(s.miterLimit=_.getValue(n,o)),b&&(s.roundLimit=b.getValue(n,o)),w&&(s.halfWidth=.5*w.getValue(n,o)),M&&(s.offset=M.getValue(n,o));const l=o.getGeometry(e);this._processFeature(l,r)}}}serialize(){let e=6;e+=this.layerUIDs.length,e+=this.tessellationProperties._lineVertexBuffer.array.length,e+=this.tessellationProperties._lineIndexBuffer.array.length,e+=3*this._patternMap.size+1;const t=new Uint32Array(e),n=new Int32Array(t.buffer);let r=0;t[r++]=this.type,t[r++]=this.layerUIDs.length;for(let e=0;e<this.layerUIDs.length;e++)t[r++]=this.layerUIDs[e];t[r++]=this._lineIndexStart,t[r++]=this._lineIndexCount;const s=this._patternMap,i=s.size;if(t[r++]=i,i>0)for(const[e,[n,i]]of s)t[r++]=e,t[r++]=n,t[r++]=i;t[r++]=this.tessellationProperties._lineVertexBuffer.array.length;for(let e=0;e<this.tessellationProperties._lineVertexBuffer.array.length;e++)n[r++]=this.tessellationProperties._lineVertexBuffer.array[e];t[r++]=this.tessellationProperties._lineIndexBuffer.array.length;for(let e=0;e<this.tessellationProperties._lineIndexBuffer.array.length;e++)t[r++]=this.tessellationProperties._lineIndexBuffer.array[e];return t.buffer}_processFeature(e,t,n){if(!e)return;const r=e.length;for(let s=0;s<r;s++)this._processGeometry(e[s],t,n)}_processGeometry(e,t,n){if(e.length<2)return;let r,s,i=e[0],a=1;for(;a<e.length;)r=e[a].x-i.x,s=e[a].y-i.y,r*r+s*s<1e-6?e.splice(a,1):(i=e[a],++a);if(e.length<2)return;const o=this.tessellationProperties._lineIndexBuffer,l=3*o.index;this._tessellationOptions.initialDistance=0,this._tessellationOptions.wrapDistance=65535,this.tessellationProperties._ddValues=t,this._lineTessellator.tessellate(e,this._tessellationOptions);const h=3*o.index-l;if(void 0!==n){const e=this._patternMap,t=e.get(n);t?t[1]+=h:e.set(n,[l+this._lineIndexCount,h])}this._lineIndexCount+=h}_getDashArrayKey(e,t,n,r,s,i,a){const o=s?i.getValue(t,e):a,l=r.getValue(t,e);return n.getDashKey(l,o)}}const F=e=>(t,n,r,s,i,a,o,l,h,c,u)=>(e._lineVertexBuffer.add(t,n,o,l,r,s,i,a,h,c,u,e._ddValues),e._lineVertexBuffer.index-1),E=e=>(t,n,r)=>{e._lineIndexBuffer.add(t,n,r)};var N=n(32488),O=n(97768),G=n(799),q=n(4264);function j(e,t){return e.iconMosaicItem&&t.iconMosaicItem?e.iconMosaicItem.page===t.iconMosaicItem.page?0:e.iconMosaicItem.page-t.iconMosaicItem.page:e.iconMosaicItem&&!t.iconMosaicItem?1:!e.iconMosaicItem&&t.iconMosaicItem?-1:0}class W extends L{constructor(e,t,n,r,s,i,a,o,l){super(t,n,l.getSpriteItems()),this.type=3,this._markerMap=new Map,this._glyphMap=new Map,this._glyphBufferDataStorage=new Map,this._isIconSDF=!1,this._sourceTileKey=e,this._iconVertexBuffer=r,this._iconIndexBuffer=s,this._textVertexBuffer=i,this._textIndexBuffer=a,this._placementEngine=o,this._workerTileHandler=l}get markerPageMap(){return this._markerMap}get glyphsPageMap(){return this._glyphMap}get symbolInstances(){return this._symbolInstances}static{this._bidiEngine=new N.A}getResources(e,t,n){const r=this.layer,s=this.zoom;e&&e.setExtent(this.layerExtent);const i=r.getLayoutProperty("icon-image"),a=r.getLayoutProperty("text-field");let o=r.getLayoutProperty("text-transform"),l=r.getLayoutProperty("text-font");const h=[];let c,u,f,d;i&&!i.isDataDriven&&(c=i.getValue(s)),a&&!a.isDataDriven&&(u=a.getValue(s)),o&&o.isDataDriven||(f=r.getLayoutValue("text-transform",s),o=null),l&&l.isDataDriven||(d=r.getLayoutValue("text-font",s),l=null);for(const x of this._features){const p=x.getGeometry(e);if(!p||0===p.length)continue;let y,g;i&&(y=i.isDataDriven?i.getValue(s,x):this._replaceKeys(c,x.values),y&&t(y));let _=!1;if(a&&(g=a.isDataDriven?a.getValue(s,x):this._replaceKeys(u,x.values),g)){switch(g=g.replaceAll("\\n","\n"),o&&(f=o.getValue(s,x)),f){case 2:g=g.toLowerCase();break;case 1:g=g.toUpperCase()}if(W._bidiEngine.hasBidiChar(g)){let e;e="rtl"===W._bidiEngine.checkContextual(g)?"IDNNN":"ICNNN",g=W._bidiEngine.bidiTransform(g,e,"VLYSN"),_=!0}if(g.length>0){l&&(d=l.getValue(s,x));for(const e of d){let t=n[e];t||(t=n[e]=new Set);for(const e of g){const n=e.codePointAt(0);null!=n&&t.add(n)}}}}if(!y&&!g)continue;const m=r.getLayoutValue("symbol-sort-key",s,x),b={feature:x,sprite:y,label:g,rtl:_,geometry:p,hash:(g?(0,G.Wm)(g):0)^(y?(0,G.Wm)(y):0),priority:m,textFont:d};h.push(b)}this._symbolFeatures=h}processFeatures(e){e&&e.setExtent(this.layerExtent);const t=this.layer,n=this.zoom,r=t.getLayoutValue("symbol-placement",n),s=0!==r,o=t.getLayoutValue("symbol-spacing",n)*i.ih,l=t.getLayoutProperty("icon-image"),h=t.getLayoutProperty("text-field"),c=l?new q.aR(t,n,s):null,u=h?new q.uU(t,n,s):null,x=this._workerTileHandler;let y;l&&(y=x.getSpriteItems()),this._iconIndexStart=3*this._iconIndexBuffer.index,this._textIndexStart=3*this._textIndexBuffer.index,this._iconIndexCount=0,this._textIndexCount=0,this._markerMap.clear(),this._glyphMap.clear();const g=[];let _=1;u?.size&&(_=u.size/f);const m=u?u.maxAngle*a.os:0,b=u?u.size*i.ih:0;for(const e of this._symbolFeatures){let t,a;c&&y&&e.sprite&&(t=y[e.sprite],t&&t.sdf&&(this._isIconSDF=!0)),t&&c.update(n,e.feature);let l=0;const h=e.label;if(h){(0,O.Lw)(u),u.update(n,e.feature);const t=s&&0===u.rotationAlignment?u.keepUpright:u.writingMode&&u.writingMode.includes(1);let r=.5;switch(u.anchor){case 5:case 1:case 7:r=0;break;case 6:case 2:case 8:r=1}let o=.5;switch(u.anchor){case 5:case 3:case 6:o=0;break;case 7:case 4:case 8:o=1}let c=.5;switch(u.justify){case 0:c=r;break;case 1:c=0;break;case 3:c=1}const p=u.letterSpacing*f,y=s?0:u.maxWidth*f,g=u.lineHeight*f,m=e.textFont.map(e=>x.getGlyphItems(e));if(a=new d(m,y,g,p,r,o,c).getShaping(h,e.rtl,t),a&&a.length>0){let e=1e30,t=-1e30;for(const n of a)e=Math.min(e,n.x),t=Math.max(t,n.x);l=(t-e+48)*_*i.ih}}for(let n of e.geometry){const h=[];if(1===r){if(a?.length&&u?.size){const e=u.size*i.ih*(2+Math.min(2,4*Math.abs(u.offset[1])));n=W._smoothVertices(n,e)}W._pushAnchors(h,n,o,l)}else 2===r?W._pushCenterAnchor(h,n):3===e.feature.type?W._pushCentroid(h,n):h.push(new p(n[0].x,n[0].y));for(const r of h){if(r.x<0||r.x>i.vA||r.y<0||r.y>i.vA)continue;if(s&&l>0&&0===u?.rotationAlignment&&!W._honorsTextMaxAngle(n,r,l,m,b))continue;const o={shaping:a,line:n,iconMosaicItem:t,anchor:r,symbolFeature:e,textColliders:[],iconColliders:[],textVertexRanges:[],iconVertexRanges:[]};g.push(o),this._processFeature(o,c,u)}}}g.sort(j),this._addPlacedGlyphs(),this._symbolInstances=g}serialize(){let e=14;e+=this.layerUIDs.length,e+=3*this.markerPageMap.size,e+=3*this.glyphsPageMap.size,e+=W._symbolsSerializationLength(this._symbolInstances),e+=this._iconVertexBuffer.array.length,e+=this._iconIndexBuffer.array.length,e+=this._textVertexBuffer.array.length,e+=this._textIndexBuffer.array.length;const t=new Uint32Array(e),n=new Int32Array(t.buffer),r=new Float32Array(t.buffer),[s,i,a]=this._sourceTileKey.split("/");let o=0;t[o++]=this.type,t[o++]=this.layerUIDs.length;for(let e=0;e<this.layerUIDs.length;e++)t[o++]=this.layerUIDs[e];t[o++]=this._isIconSDF?1:0,t[o++]=parseFloat(s),t[o++]=parseFloat(i),t[o++]=parseFloat(a),t[o++]=this.markerPageMap.size;for(const[e,[n,r]]of this.markerPageMap)t[o++]=e,t[o++]=n,t[o++]=r;t[o++]=this.glyphsPageMap.size;for(const[e,[n,r]]of this.glyphsPageMap)t[o++]=e,t[o++]=n,t[o++]=r;t[o++]=this._iconVertexBuffer.index/4,t[o++]=this._textVertexBuffer.index/4,o=W.serializeSymbols(t,n,r,o,this._symbolInstances),t[o++]=this._iconVertexBuffer.array.length;for(let e=0;e<this._iconVertexBuffer.array.length;e++)n[o++]=this._iconVertexBuffer.array[e];t[o++]=this._iconIndexBuffer.array.length;for(let e=0;e<this._iconIndexBuffer.array.length;e++)t[o++]=this._iconIndexBuffer.array[e];t[o++]=this._textVertexBuffer.array.length;for(let e=0;e<this._textVertexBuffer.array.length;e++)n[o++]=this._textVertexBuffer.array[e];t[o++]=this._textIndexBuffer.array.length;for(let e=0;e<this._textIndexBuffer.array.length;e++)t[o++]=this._textIndexBuffer.array[e];return t.buffer}static _symbolsSerializationLength(e){let t=0;t+=1;for(const n of e||[]){t+=5,t+=1;for(const e of n.textColliders)t+=10;for(const e of n.iconColliders)t+=10;t+=1,t+=2*n.textVertexRanges.length,t+=1,t+=2*n.iconVertexRanges.length}return t}static serializeSymbols(e,t,n,r,s){s=s||[],t[r++]=s.length;for(const e of s){t[r++]=e.anchor.x,t[r++]=e.anchor.y,t[r++]=e.symbolFeature.hash,t[r++]=e.symbolFeature.priority,t[r++]=e.symbolFeature.feature.featureIndex,t[r++]=e.textColliders.length+e.iconColliders.length;for(const s of e.textColliders)t[r++]=s.xTile,t[r++]=s.yTile,t[r++]=s.dxPixels,t[r++]=s.dyPixels,t[r++]=s.hard?1:0,t[r++]=s.partIndex,n[r++]=s.minLod,n[r++]=s.maxLod,t[r++]=s.width,t[r++]=s.height;for(const s of e.iconColliders)t[r++]=s.xTile,t[r++]=s.yTile,t[r++]=s.dxPixels,t[r++]=s.dyPixels,t[r++]=s.hard?1:0,t[r++]=s.partIndex,n[r++]=s.minLod,n[r++]=s.maxLod,t[r++]=s.width,t[r++]=s.height;t[r++]=e.textVertexRanges.length;for(const[n,s]of e.textVertexRanges)t[r++]=n,t[r++]=s;t[r++]=e.iconVertexRanges.length;for(const[n,s]of e.iconVertexRanges)t[r++]=n,t[r++]=s}return r}_replaceKeys(e,t){return e.replaceAll(/{([^{}]+)}/g,(e,n)=>n in t?t[n]:"")}_processFeature(e,t,n){const{line:r,iconMosaicItem:s,shaping:i,anchor:o}=e,l=this.zoom,h=this.layer,c=!!s;let u=!0;c&&(u=t?.optional||!s);const f=i&&i.length>0,d=!f||n?.optional;let x,p;if(c&&(x=this._placementEngine.getIconPlacement(o,s,t)),(x||u)&&(f&&(p=this._placementEngine.getTextPlacement(o,i,r,n)),p||d)){if(x&&p||(d||u?d||p?u||x||(p=null):x=null:(x=null,p=null)),p){const t=h.hasDataDrivenText?h.textMaterial.encodeAttributes(e.symbolFeature.feature,l,h):null;if(this._storePlacedGlyphs(e,p.shapes,l,n.rotationAlignment,t),p.textColliders){e.textColliders=p.textColliders;for(const e of p.textColliders){e.minLod=Math.max(l+(0,a.p6)(e.minLod),0),e.maxLod=Math.min(l+(0,a.p6)(e.maxLod),25);const t=e.angle;if(t){const n=Math.cos(t),r=Math.sin(t),s=e.dxPixels*n-e.dyPixels*r,i=e.dxPixels*r+e.dyPixels*n,a=(e.dxPixels+e.width)*n-e.dyPixels*r,o=(e.dxPixels+e.width)*r+e.dyPixels*n,l=e.dxPixels*n-(e.dyPixels+e.height)*r,h=e.dxPixels*r+(e.dyPixels+e.height)*n,c=(e.dxPixels+e.width)*n-(e.dyPixels+e.height)*r,u=(e.dxPixels+e.width)*r+(e.dyPixels+e.height)*n,f=Math.min(s,a,l,c),d=Math.max(s,a,l,c),x=Math.min(i,o,h,u),p=Math.max(i,o,h,u);e.dxPixels=f,e.dyPixels=x,e.width=d-f,e.height=p-x}}}}if(x){const n=h.hasDataDrivenIcon?h.iconMaterial.encodeAttributes(e.symbolFeature.feature,l,h):null;if(this._addPlacedIcons(e,x.shapes,l,s.page,1===t.rotationAlignment,n),x.iconColliders){e.iconColliders=x.iconColliders;for(const e of x.iconColliders){e.minLod=Math.max(l+(0,a.p6)(e.minLod),0),e.maxLod=Math.min(l+(0,a.p6)(e.maxLod),25);const t=e.angle;if(t){const n=Math.cos(t),r=Math.sin(t),s=e.dxPixels*n-e.dyPixels*r,i=e.dxPixels*r+e.dyPixels*n,a=(e.dxPixels+e.width)*n-e.dyPixels*r,o=(e.dxPixels+e.width)*r+e.dyPixels*n,l=e.dxPixels*n-(e.dyPixels+e.height)*r,h=e.dxPixels*r+(e.dyPixels+e.height)*n,c=(e.dxPixels+e.width)*n-(e.dyPixels+e.height)*r,u=(e.dxPixels+e.width)*r+(e.dyPixels+e.height)*n,f=Math.min(s,a,l,c),d=Math.max(s,a,l,c),x=Math.min(i,o,h,u),p=Math.max(i,o,h,u);e.dxPixels=f,e.dyPixels=x,e.width=d-f,e.height=p-x}}}}}}_addPlacedIcons(e,t,n,r,s,i){const o=Math.max(n-1,0),l=this._iconVertexBuffer,h=this._iconIndexBuffer,c=this._markerMap;for(const u of t){const t=s?0:Math.max(n+(0,a.p6)(u.minzoom),o),f=s?25:Math.min(n+(0,a.p6)(u.maxzoom),25);if(f<=t)continue;const d=u.tl,x=u.tr,p=u.bl,y=u.br,g=u.mosaicRect,_=u.labelAngle,m=u.minAngle,b=u.maxAngle,I=u.anchor,w=l.index,v=g.x,M=g.y,k=v+g.width,P=M+g.height,V=l.index;l.add(I.x,I.y,d.x,d.y,v,M,_,m,b,t,f,i),l.add(I.x,I.y,x.x,x.y,k,M,_,m,b,t,f,i),l.add(I.x,I.y,p.x,p.y,v,P,_,m,b,t,f,i),l.add(I.x,I.y,y.x,y.y,k,P,_,m,b,t,f,i),e.iconVertexRanges.length>0&&e.iconVertexRanges[0][0]+e.iconVertexRanges[0][1]===V?e.iconVertexRanges[0][1]+=4:e.iconVertexRanges.push([V,4]),h.add(w,w+1,w+2),h.add(w+1,w+2,w+3),c.has(r)?c.get(r)[1]+=6:c.set(r,[this._iconIndexStart+this._iconIndexCount,6]),this._iconIndexCount+=6}}_addPlacedGlyphs(){const e=this._textVertexBuffer,t=this._textIndexBuffer,n=this._glyphMap;for(const[r,s]of this._glyphBufferDataStorage)for(const i of s){const s=e.index,a=i.symbolInstance,o=i.ddAttributes,l=e.index;e.add(i.glyphAnchor[0],i.glyphAnchor[1],i.tl[0],i.tl[1],i.xmin,i.ymin,i.labelAngle,i.minAngle,i.maxAngle,i.minLod,i.maxLod,o),e.add(i.glyphAnchor[0],i.glyphAnchor[1],i.tr[0],i.tr[1],i.xmax,i.ymin,i.labelAngle,i.minAngle,i.maxAngle,i.minLod,i.maxLod,o),e.add(i.glyphAnchor[0],i.glyphAnchor[1],i.bl[0],i.bl[1],i.xmin,i.ymax,i.labelAngle,i.minAngle,i.maxAngle,i.minLod,i.maxLod,o),e.add(i.glyphAnchor[0],i.glyphAnchor[1],i.br[0],i.br[1],i.xmax,i.ymax,i.labelAngle,i.minAngle,i.maxAngle,i.minLod,i.maxLod,o),a.textVertexRanges.length>0&&a.textVertexRanges[0][0]+a.textVertexRanges[0][1]===l?a.textVertexRanges[0][1]+=4:a.textVertexRanges.push([l,4]),t.add(s,s+1,s+2),t.add(s+1,s+2,s+3),n.has(r)?n.get(r)[1]+=6:n.set(r,[this._textIndexStart+this._textIndexCount,6]),this._textIndexCount+=6}this._glyphBufferDataStorage.clear()}_storePlacedGlyphs(e,t,n,r,s){const i=Math.max(n-1,0),o=1===r;let l,h,c,u,f,d,x,p,y,g,_;for(const r of t)l=o?0:Math.max(n+(0,a.p6)(r.minzoom),i),h=o?25:Math.min(n+(0,a.p6)(r.maxzoom),25),h<=l||(c=r.tl,u=r.tr,f=r.bl,d=r.br,x=r.labelAngle,p=r.minAngle,y=r.maxAngle,g=r.anchor,_=r.mosaicRect,this._glyphBufferDataStorage.has(r.page)||this._glyphBufferDataStorage.set(r.page,[]),this._glyphBufferDataStorage.get(r.page).push({glyphAnchor:[g.x,g.y],tl:[c.x,c.y],tr:[u.x,u.y],bl:[f.x,f.y],br:[d.x,d.y],xmin:_.x,ymin:_.y,xmax:_.x+_.width,ymax:_.y+_.height,labelAngle:x,minAngle:p,maxAngle:y,minLod:l,maxLod:h,placementLod:i,symbolInstance:e,ddAttributes:s}))}static _pushAnchors(e,t,n,r){n+=r;let i=0;const o=t.length-1;for(let e=0;e<o;e++)i+=s.bR.distance(t[e],t[e+1]);let l=r||n;if(l*=.5,i<=l)return;const h=l/i;let c=0,u=-(n=i/Math.max(Math.round(i/n),1))/2;const f=t.length-1;for(let r=0;r<f;r++){const s=t[r],i=t[r+1],o=i.x-s.x,l=i.y-s.y,f=Math.sqrt(o*o+l*l);let d;for(;u+n<c+f;){u+=n;const t=(u-c)/f,x=(0,a.GW)(s.x,i.x,t),y=(0,a.GW)(s.y,i.y,t);void 0===d&&(d=Math.atan2(l,o)),e.push(new p(x,y,d,r,h))}c+=f}}static _pushCenterAnchor(e,t){let n=0;const r=t.length-1;for(let e=0;e<r;e++)n+=s.bR.distance(t[e],t[e+1]);const i=n/2;let o=0;const l=t.length-1;for(let n=0;n<l;n++){const r=t[n],s=t[n+1],l=s.x-r.x,h=s.y-r.y,c=Math.sqrt(l*l+h*h);if(i<o+c){const t=(i-o)/c,u=(0,a.GW)(r.x,s.x,t),f=(0,a.GW)(r.y,s.y,t),d=Math.atan2(h,l);return void e.push(new p(u,f,d,n,0))}o+=c}}static _deviation(e,t,n){const r=(t.x-e.x)*(n.x-t.x)+(t.y-e.y)*(n.y-t.y),s=(t.x-e.x)*(n.y-t.y)-(t.y-e.y)*(n.x-t.x);return Math.atan2(s,r)}static _honorsTextMaxAngle(e,t,n,r,i){let a=0;const o=n/2;let l=new s.bR(t.x,t.y),h=t.segment+1;for(;a>-o;){if(--h,h<0)return!1;a-=s.bR.distance(e[h],l),l=e[h]}a+=s.bR.distance(e[h],e[h+1]);const c=[];let u=0;const f=e.length;for(;a<o;){const t=e[h];let n,o=h;do{if(++o,o===f)return!1;n=e[o]}while(n.isEqual(t));let l,d=o;do{if(++d,d===f)return!1;l=e[d]}while(l.isEqual(n));const x=this._deviation(t,n,l);for(c.push({deviation:x,distToAnchor:a}),u+=x;a-c[0].distToAnchor>i;)u-=c.shift().deviation;if(Math.abs(u)>r)return!1;a+=s.bR.distance(n,l),h=o}return!0}static _smoothVertices(e,t){if(t<=0)return e;let n=e.length;if(n<3)return e;const r=[];let i=0,a=0;r.push(0);for(let t=1;t<n;t++){const n=s.bR.distance(e[t],e[t-1]);n>0&&(i+=n,r.push(i),a++,a!==t&&(e[a]=e[t]))}if(n=a+1,n<3)return e;t=Math.min(t,.2*i);const o=e[0].x,l=e[0].y,h=e[n-1].x,c=e[n-1].y,u=s.bR.sub(e[0],e[1]);u.normalize(),e[0].x+=t*u.x,e[0].y+=t*u.y,u.assignSub(e[n-1],e[n-2]),u.normalize(),e[n-1].x+=t*u.x,e[n-1].y+=t*u.y,r[0]-=t,r[n-1]+=t;const f=[];f.push(new s.bR(o,l));const d=1e-6,x=.5*t;for(let i=1;i<n-1;i++){let a=0,o=0,l=0;for(let n=i-1;n>=0;n--){const s=x+r[n+1]-r[i];if(s<0)break;const h=r[n+1]-r[n],c=r[i]-r[n]<x?1:s/h;if(c<d)break;const u=c*c,f=c*s-.5*u*h,p=c*h/t,y=e[n+1],g=e[n].x-y.x,_=e[n].y-y.y;a+=p/f*(y.x*c*s+.5*u*(s*g-h*y.x)-u*c*h*g/3),o+=p/f*(y.y*c*s+.5*u*(s*_-h*y.y)-u*c*h*_/3),l+=p}for(let s=i+1;s<n;s++){const n=x-r[s-1]+r[i];if(n<0)break;const h=r[s]-r[s-1],c=r[s]-r[i]<x?1:n/h;if(c<d)break;const u=c*c,f=c*n-.5*u*h,p=c*h/t,y=e[s-1],g=e[s].x-y.x,_=e[s].y-y.y;a+=p/f*(y.x*c*n+.5*u*(n*g-h*y.x)-u*c*h*g/3),o+=p/f*(y.y*c*n+.5*u*(n*_-h*y.y)-u*c*h*_/3),l+=p}f.push(new s.bR(a/l,o/l))}return f.push(new s.bR(h,c)),e[0].x=o,e[0].y=l,e[n-1].x=h,e[n-1].y=c,f}static _pushCentroid(e,t){const n=i.vA,r=i.vA,s=t.length-1;let a=0,o=0,l=0,h=t[0].x,c=t[0].y;h>n&&(h=n),h<0&&(h=0),c>r&&(c=r),c<0&&(c=0);for(let e=1;e<s;e++){let s=t[e].x,i=t[e].y,u=t[e+1].x,f=t[e+1].y;s>n&&(s=n),s<0&&(s=0),i>r&&(i=r),i<0&&(i=0),u>n&&(u=n),u<0&&(u=0),f>r&&(f=r),f<0&&(f=0);const d=(s-h)*(f-c)-(u-h)*(i-c);a+=d*(h+s+u),o+=d*(c+i+f),l+=d}a/=3*l,o/=3*l,isNaN(a)||isNaN(o)||e.push(new p(a,o))}}class Z{constructor(e,t,n,r,i,o){if(this._pbfTiles={},this._tileClippers={},this._client=n,this._tile=t,this._sourceDataMaxLOD=r,o){this._styleLayerUIDs=new Set;for(const e of o)this._styleLayerUIDs.add(e)}this._styleRepository=i,this._layers=this._styleRepository?.layers??[];const[l,h,c]=t.tileKey.split("/").map(parseFloat);this._level=l;const u=(0,a.IU)(this._level);for(const t of Object.keys(e)){const n=e[t];if(this._pbfTiles[t]=new b.A(new Uint8Array(n.protobuff),new DataView(n.protobuff)),n.refKey){const[e]=n.refKey.split("/").map(parseFloat),r=l-e;if(r>0){const e=(1<<r)-1,n=h&e,i=c&e;this._tileClippers[t]=new s.O3(r,n,i,8,u)}}this._tileClippers[t]||(this._tileClippers[t]=new s.Ox)}}_canParseStyleLayer(e){return!this._styleLayerUIDs||this._styleLayerUIDs.has(e)}async parse(e){const t=(0,I.F)(),n=this._initialize(e),{returnedBuckets:r}=n;this._processLayers(n),this._linkReferences(n),this._filterFeatures(n);const s=[],i=new Set,a=(e,t)=>{i.has(e)||(s.push({name:e,repeat:t}),i.add(e))},o={};for(const e of r)e.getResources(e.tileClipper,a,o);if(4===this._tile.status)return[];const l=this._fetchResources(s,o,e);return Promise.all([...l,t]).then(()=>this._processFeatures(n.returnedBuckets))}_initialize(e){const t=e?.signal;return{signal:t,sourceNameToTileData:this._parseTileData(this._pbfTiles),layers:this._layers,zoom:this._level,sourceNameToTileClipper:this._tileClippers,sourceNameToUniqueSourceLayerBuckets:{},sourceNameToUniqueSourceLayers:{},returnedBuckets:[],layerIdToBucket:{},referencerUIDToReferencedId:new Map}}_processLayers(e){const{sourceNameToTileData:t,zoom:n,layers:r,sourceNameToTileClipper:s,sourceNameToUniqueSourceLayerBuckets:i,sourceNameToUniqueSourceLayers:a,returnedBuckets:o,layerIdToBucket:l,referencerUIDToReferencedId:h}=e,c=this._sourceDataMaxLOD;for(let e=r.length-1;e>=0;e--){const u=r[e];if(n<c){if(u.minzoom&&n<Math.floor(u.minzoom)||u.maxzoom&&n>=u.maxzoom)continue}else if(u.maxzoom&&n>=u.maxzoom)continue;if(0===u.type||!this._canParseStyleLayer(u.uid)||!t[u.source]||!s[u.source])continue;const f=t[u.source],d=s[u.source],x=u.sourceLayer,p=f[x];if(p){let e=a[u.source];if(e||(e=a[u.source]=new Set),e.add(u.sourceLayer),u.refLayerId)h.set(u.uid,u.refLayerId);else{const e=this._createBucket(u);if(e){e.layerUIDs=[u.uid],e.layerExtent=p.extent,e.tileClipper=d;let t=i[u.source];t||(t=i[u.source]={});let n=t[x];n||(n=t[x]=[]),n.push(e),o.push(e),l[u.id]=e}}}}}_linkReferences(e){const{layerIdToBucket:t,referencerUIDToReferencedId:n}=e;n.forEach((e,n)=>{t[e]&&t[e].layerUIDs.push(n)})}_filterFeatures(e){const{signal:t,sourceNameToTileData:n,sourceNameToUniqueSourceLayerBuckets:s,sourceNameToUniqueSourceLayers:i}=e,a=10*this._level,o=10*(this._level+1),l=[],h=[];for(const e of Object.keys(i))i[e].forEach(t=>{l.push(t),h.push(e)});for(let e=0;e<l.length;e++){const i=h[e],c=l[e];if(!n[i]||!s[i])continue;const u=n[i][c],f=s[i][c];if(!f||0===f.length)continue;if((0,r.G4)(t))return;let d=0;const x=u.getData();for(;x.nextTag(2);){const e=x.getMessage(),t=new w(e,u,d++);e.release();const n=t.values;if(n){const e=n._minzoom;if(e&&e>=o)continue;const t=n._maxzoom;if(t&&t<=a)continue}for(const e of f)e.pushFeature(t)}}}_fetchResources(e,t,n){const r=[],s=this._tile.getWorkerTileHandler();let i,a;e.length>0&&(i=s.fetchSprites(e,this._client,n),r.push(i));for(const e in t){const i=t[e];i.size>0&&(a=s.fetchGlyphs(this._tile.tileKey,e,i,this._client,n),r.push(a))}return r}_processFeatures(e){const t=e.filter(e=>e.hasFeatures()||this._canParseStyleLayer(e.layer.uid));for(const e of t)e.processFeatures(e.tileClipper);return t}_parseTileData(e){const t={};for(const n of Object.keys(e)){const r=e[n],s={};for(;r.next();)switch(r.tag()){case 3:{const e=r.getMessage(),t=new k(e);e.release(),s[t.name]=t;break}default:r.skip()}t[n]=s}return t}_createBucket(e){switch(e.type){case 0:return null;case 1:return this._createFillBucket(e);case 2:return this._createLineBucket(e);case 4:return this._createCircleBucket(e);case 3:return this._createSymbolBucket(e)}}_createFillBucket(e){return new C(e,this._level,this._tile.getWorkerTileHandler().getSpriteItems(),new V(e.fillMaterial.getStride()),new M,new A(e.outlineMaterial.getStride()),new M)}_createLineBucket(e){return new U(e,this._level,this._tile.getWorkerTileHandler().getSpriteItems(),new P(e.lineMaterial.getStride()),new M)}_createCircleBucket(e){return new S(e,this._level,this._tile.getWorkerTileHandler().getSpriteItems(),new B(e.circleMaterial.getStride()),new M)}_createSymbolBucket(e){const t=this._tile;return new W(t.tileKey,e,this._level,new D(e.iconMaterial.getStride()),new M,new D(e.textMaterial.getStride()),new M,t.placementEngine,t.getWorkerTileHandler())}}class K{constructor(e,t,n,r){this.status=0,this.placementEngine=new m,this.tileKey=e,this.refKeys=t,this._workerTileHandler=n,this._styleRepository=r}release(){this.tileKey="",this.refKeys=null,this.status=0,this._workerTileHandler=null}async parse(e,t){const n=t?.signal;if(null!=n){const e=()=>{n.removeEventListener("abort",e),this.status=4};n.addEventListener("abort",e)}let s;const i={bucketsWithData:[],emptyBuckets:null};try{s=await this._parse(e,t)}catch(e){if((0,r.zf)(e))throw e;return{result:i,transferList:[]}}this.status=2;const a=i.bucketsWithData,o=[];for(const e of s)if(e.hasFeatures()){const t=e.serialize();a.push(t)}else o.push(e.layer.uid);const l=[...a];let h=null;return o.length>0&&(h=Uint32Array.from(o),l.push(h.buffer)),i.emptyBuckets=h,{result:i,transferList:l}}setObsolete(){this.status=4}getLayers(){return this._workerTileHandler.getLayers()}getWorkerTileHandler(){return this._workerTileHandler}async _parse(e,t){const n=e.sourceName2DataAndRefKey;return 0===Object.keys(n).length?[]:(this.status=3,new Z(n,this,t.client,e.sourceDataMaxLOD,this._styleRepository,e.styleLayerUIDs).parse(t))}}var H=n(45013);class J{constructor(){this._spriteInfo={},this._glyphInfo={},this._sourceDataMaxLOD=25}reset(){return this._spriteInfo={},this._glyphInfo={},Promise.resolve()}getLayers(){return this._styleRepository?.layers??[]}async createTileAndParse(e,t){const{key:n}=e,s={};for(const t of Object.keys(e.sourceName2DataAndRefKey)){const n=e.sourceName2DataAndRefKey[t];s[t]=n.refKey}const i=new K(n,s,this,this._styleRepository);try{return await i.parse({...e,sourceDataMaxLOD:this._sourceDataMaxLOD},t)}catch(e){if(i.setObsolete(),i.release(),!(0,r.zf)(e))throw e;return null}}updateStyle(e){if(!e||0===e.length||!this._styleRepository)return;const t=this._styleRepository;for(const n of e){const e=n.type,r=n.data;switch(e){case 0:t.setPaintProperties(r.layer,r.paint);break;case 1:t.setLayoutProperties(r.layer,r.layout);break;case 3:t.deleteStyleLayer(r.layer);break;case 2:t.setStyleLayer(r.layer,r.index);break;case 4:this._spriteInfo={}}}}setStyle(e){const{style:t,sourceDataMaxLOD:n}=e;this._styleRepository=new H.A(t),this._sourceDataMaxLOD=n,this._spriteInfo={},this._glyphInfo={}}fetchSprites(e,t,n){const r=[],s=this._spriteInfo;for(const t of e)void 0===s[t.name]&&r.push(t);return 0===r.length?Promise.resolve():t.invoke("getSprites",r,{signal:n?.signal}).then(e=>{for(const t in e){const n=e[t];s[t]=n}})}getSpriteItems(){return this._spriteInfo}fetchGlyphs(e,t,n,r,s){const i=[];let a=this._glyphInfo[t];return a?n.forEach(e=>{a[e]||i.push(e)}):(a=this._glyphInfo[t]=[],n.forEach(e=>i.push(e))),0===i.length?Promise.resolve():r.invoke("getGlyphs",{tileID:e,font:t,codePoints:i},s).then(e=>{for(let t=0;t<e.length;t++)e[t]&&(a[t]=e[t])})}getGlyphItems(e){return this._glyphInfo[e]}}},83349:(e,t,n)=>{function r(e,t,n){n=n||2;var r,i,o,l,h,c,f,d=t&&t.length,x=d?t[0]*n:e.length,p=s(e,0,x,n,!0),y=[];if(!p||p.next===p.prev)return y;if(d&&(p=u(e,t,p,n)),e.length>80*n){r=o=e[0],i=l=e[1];for(var g=n;g<x;g+=n)(h=e[g])<r&&(r=h),(c=e[g+1])<i&&(i=c),h>o&&(o=h),c>l&&(l=c);f=0!==(f=Math.max(o-r,l-i))?1/f:0}return a(p,y,n,r,i,f),y}function s(e,t,n,r,s){var i,a;if(s===L(e,t,n,r)>0)for(i=t;i<n;i+=r)a=A(i,e[i],e[i+1],a);else for(i=n-r;i>=t;i-=r)a=A(i,e[i],e[i+1],a);if(a&&w(a,a.next)){var o=a.next;D(a),a=o}return a}function i(e,t){if(!e)return e;t||(t=e);var n,r=e;do{if(n=!1,r.steiner||!w(r,r.next)&&0!==I(r.prev,r,r.next))r=r.next;else{var s=r.prev;if(D(r),(r=t=s)===r.next)break;n=!0}}while(n||r!==t);return t}function a(e,t,n,r,s,u,f){if(e){!f&&u&&y(e,r,s,u);for(var d,x,p=e;e.prev!==e.next;)if(d=e.prev,x=e.next,u?l(e,r,s,u):o(e))t.push(d.i/n),t.push(e.i/n),t.push(x.i/n),D(e),e=x.next,p=x.next;else if((e=x)===p){f?1===f?a(e=h(i(e),t,n),t,n,r,s,u,2):2===f&&c(e,t,n,r,s,u):a(i(e),t,n,r,s,u,1);break}}}function o(e){var t=e.prev,n=e,r=e.next;if(I(t,n,r)>=0)return!1;for(var s=e.next.next;s!==e.prev;){if(m(t.x,t.y,n.x,n.y,r.x,r.y,s.x,s.y)&&I(s.prev,s,s.next)>=0)return!1;s=s.next}return!0}function l(e,t,n,r){var s=e.prev,i=e,a=e.next;if(I(s,i,a)>=0)return!1;for(var o=s.x<i.x?s.x<a.x?s.x:a.x:i.x<a.x?i.x:a.x,l=s.y<i.y?s.y<a.y?s.y:a.y:i.y<a.y?i.y:a.y,h=s.x>i.x?s.x>a.x?s.x:a.x:i.x>a.x?i.x:a.x,c=s.y>i.y?s.y>a.y?s.y:a.y:i.y>a.y?i.y:a.y,u=g(o,l,t,n,r),f=g(h,c,t,n,r),d=e.prevZ,x=e.nextZ;d&&d.z>=u&&x&&x.z<=f;){if(d!==e.prev&&d!==e.next&&m(s.x,s.y,i.x,i.y,a.x,a.y,d.x,d.y)&&I(d.prev,d,d.next)>=0)return!1;if(d=d.prevZ,x!==e.prev&&x!==e.next&&m(s.x,s.y,i.x,i.y,a.x,a.y,x.x,x.y)&&I(x.prev,x,x.next)>=0)return!1;x=x.nextZ}for(;d&&d.z>=u;){if(d!==e.prev&&d!==e.next&&m(s.x,s.y,i.x,i.y,a.x,a.y,d.x,d.y)&&I(d.prev,d,d.next)>=0)return!1;d=d.prevZ}for(;x&&x.z<=f;){if(x!==e.prev&&x!==e.next&&m(s.x,s.y,i.x,i.y,a.x,a.y,x.x,x.y)&&I(x.prev,x,x.next)>=0)return!1;x=x.nextZ}return!0}function h(e,t,n){var r=e;do{var s=r.prev,a=r.next.next;!w(s,a)&&v(s,r,r.next,a)&&P(s,a)&&P(a,s)&&(t.push(s.i/n),t.push(r.i/n),t.push(a.i/n),D(r),D(r.next),r=e=a),r=r.next}while(r!==e);return i(r)}function c(e,t,n,r,s,o){var l=e;do{for(var h=l.next.next;h!==l.prev;){if(l.i!==h.i&&b(l,h)){var c=V(l,h);return l=i(l,l.next),c=i(c,c.next),a(l,t,n,r,s,o),void a(c,t,n,r,s,o)}h=h.next}l=l.next}while(l!==e)}function u(e,t,n,r){var a,o,l,h=[];for(a=0,o=t.length;a<o;a++)(l=s(e,t[a]*r,a<o-1?t[a+1]*r:e.length,r,!1))===l.next&&(l.steiner=!0),h.push(_(l));for(h.sort(f),a=0;a<h.length;a++)n=i(n=x(h[a],n),n.next);return n}function f(e,t){return e.x-t.x}function d(e){if(e.next.prev===e)return e;let t=e;for(;;){const n=t.next;if(n.prev===t||n===t||n===e)break;t=n}return t}function x(e,t){var n=function(e,t){var n,r=t,s=e.x,i=e.y,a=-1/0;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){var o=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(o<=s&&o>a){if(a=o,o===s){if(i===r.y)return r;if(i===r.next.y)return r.next}n=r.x<r.next.x?r:r.next}}r=r.next}while(r!==t);if(!n)return null;if(s===a)return n;var l,h=n,c=n.x,u=n.y,f=1/0;r=n;do{s>=r.x&&r.x>=c&&s!==r.x&&m(i<u?s:a,i,c,u,i<u?a:s,i,r.x,r.y)&&(l=Math.abs(i-r.y)/(s-r.x),P(r,e)&&(l<f||l===f&&(r.x>n.x||r.x===n.x&&p(n,r)))&&(n=r,f=l)),r=r.next}while(r!==h);return n}(e,t);if(!n)return t;var r=V(n,e),s=i(n,n.next);let a=d(r);return i(a,a.next),s=d(s),d(t===n?s:t)}function p(e,t){return I(e.prev,e,t.prev)<0&&I(t.next,e,e.next)<0}function y(e,t,n,r){var s=e;do{null===s.z&&(s.z=g(s.x,s.y,t,n,r)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next}while(s!==e);s.prevZ.nextZ=null,s.prevZ=null,function(e){var t,n,r,s,i,a,o,l,h=1;do{for(n=e,e=null,i=null,a=0;n;){for(a++,r=n,o=0,t=0;t<h&&(o++,r=r.nextZ);t++);for(l=h;o>0||l>0&&r;)0!==o&&(0===l||!r||n.z<=r.z)?(s=n,n=n.nextZ,o--):(s=r,r=r.nextZ,l--),i?i.nextZ=s:e=s,s.prevZ=i,i=s;n=r}i.nextZ=null,h*=2}while(a>1)}(s)}function g(e,t,n,r,s){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*s)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*s)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function _(e){var t=e,n=e;do{(t.x<n.x||t.x===n.x&&t.y<n.y)&&(n=t),t=t.next}while(t!==e);return n}function m(e,t,n,r,s,i,a,o){return(s-a)*(t-o)-(e-a)*(i-o)>=0&&(e-a)*(r-o)-(n-a)*(t-o)>=0&&(n-a)*(i-o)-(s-a)*(r-o)>=0}function b(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&v(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}(e,t)&&(P(e,t)&&P(t,e)&&function(e,t){var n=e,r=!1,s=(e.x+t.x)/2,i=(e.y+t.y)/2;do{n.y>i!=n.next.y>i&&n.next.y!==n.y&&s<(n.next.x-n.x)*(i-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==e);return r}(e,t)&&(I(e.prev,e,t.prev)||I(e,t.prev,t))||w(e,t)&&I(e.prev,e,e.next)>0&&I(t.prev,t,t.next)>0)}function I(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function w(e,t){return e.x===t.x&&e.y===t.y}function v(e,t,n,r){var s=k(I(e,t,n)),i=k(I(e,t,r)),a=k(I(n,r,e)),o=k(I(n,r,t));return s!==i&&a!==o||!(0!==s||!M(e,n,t))||!(0!==i||!M(e,r,t))||!(0!==a||!M(n,e,r))||!(0!==o||!M(n,t,r))}function M(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function k(e){return e>0?1:e<0?-1:0}function P(e,t){return I(e.prev,e,e.next)<0?I(e,t,e.next)>=0&&I(e,e.prev,t)>=0:I(e,t,e.prev)<0||I(e,e.next,t)<0}function V(e,t){var n=new B(e.i,e.x,e.y),r=new B(t.i,t.x,t.y),s=e.next,i=t.prev;return e.next=t,t.prev=e,n.next=s,s.prev=n,r.next=n,n.prev=r,i.next=r,r.prev=i,r}function A(e,t,n,r){var s=new B(e,t,n);return r?(s.next=r.next,s.prev=r,r.next.prev=s,r.next=s):(s.prev=s,s.next=s),s}function D(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function B(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function L(e,t,n,r){for(var s=0,i=t,a=n-r;i<n;i+=r)s+=(e[a]-e[i])*(e[i+1]+e[a+1]),a=i;return s}n.d(t,{e:()=>r}),r.deviation=function(e,t,n,r){var s=t&&t.length,i=s?t[0]*n:e.length,a=Math.abs(L(e,0,i,n));if(s)for(var o=0,l=t.length;o<l;o++){var h=t[o]*n,c=o<l-1?t[o+1]*n:e.length;a-=Math.abs(L(e,h,c,n))}var u=0;for(o=0;o<r.length;o+=3){var f=r[o]*n,d=r[o+1]*n,x=r[o+2]*n;u+=Math.abs((e[f]-e[x])*(e[d+1]-e[f+1])-(e[f]-e[d])*(e[x+1]-e[f+1]))}return 0===a&&0===u?0:Math.abs((u-a)/a)},r.flatten=function(e){for(var t=e[0][0].length,n={vertices:[],holes:[],dimensions:t},r=0,s=0;s<e.length;s++){for(var i=0;i<e[s].length;i++)for(var a=0;a<t;a++)n.vertices.push(e[s][i][a]);s>0&&(r+=e[s-1].length,n.holes.push(r))}return n}},87317:(e,t,n)=>{n.d(t,{a:()=>m,b:()=>x,c:()=>s,d:()=>c,e:()=>b,f:()=>f,g:()=>a,h:()=>y,j:()=>d,l:()=>g,n:()=>p,s:()=>i,t:()=>_});var r=n(34304);function s(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function i(e,t,n,r,s){return e[0]=t,e[1]=n,e[2]=r,e[3]=s,e}function a(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e}function o(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e}function l(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e[3]=t[3]*n[3],e}function h(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e[3]=t[3]/n[3],e}function c(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function u(e,t){const n=t[0]-e[0],r=t[1]-e[1],s=t[2]-e[2],i=t[3]-e[3];return Math.sqrt(n*n+r*r+s*s+i*i)}function f(e,t){const n=t[0]-e[0],r=t[1]-e[1],s=t[2]-e[2],i=t[3]-e[3];return n*n+r*r+s*s+i*i}function d(e){const t=e[0],n=e[1],r=e[2],s=e[3];return Math.sqrt(t*t+n*n+r*r+s*s)}function x(e){const t=e[0],n=e[1],r=e[2],s=e[3];return t*t+n*n+r*r+s*s}function p(e,t){const n=t[0],r=t[1],s=t[2],i=t[3];let a=n*n+r*r+s*s+i*i;return a>0&&(a=1/Math.sqrt(a),e[0]=n*a,e[1]=r*a,e[2]=s*a,e[3]=i*a),e}function y(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function g(e,t,n,r){const s=t[0],i=t[1],a=t[2],o=t[3];return e[0]=s+r*(n[0]-s),e[1]=i+r*(n[1]-i),e[2]=a+r*(n[2]-a),e[3]=o+r*(n[3]-o),e}function _(e,t,n){const r=t[0],s=t[1],i=t[2],a=t[3];return e[0]=n[0]*r+n[4]*s+n[8]*i+n[12]*a,e[1]=n[1]*r+n[5]*s+n[9]*i+n[13]*a,e[2]=n[2]*r+n[6]*s+n[10]*i+n[14]*a,e[3]=n[3]*r+n[7]*s+n[11]*i+n[15]*a,e}function m(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]}function b(e,t){const n=e[0],s=e[1],i=e[2],a=e[3],o=t[0],l=t[1],h=t[2],c=t[3],u=(0,r.FD)();return Math.abs(n-o)<=u*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(s-l)<=u*Math.max(1,Math.abs(s),Math.abs(l))&&Math.abs(i-h)<=u*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(a-c)<=u*Math.max(1,Math.abs(a),Math.abs(c))}const I=o,w=l,v=h,M=u,k=f,P=d,V=x;Object.freeze(Object.defineProperty({__proto__:null,add:a,ceil:function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e[3]=Math.ceil(t[3]),e},copy:s,copyVec3:function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},dist:M,distance:u,div:v,divide:h,dot:y,equals:b,exactEquals:m,floor:function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e[3]=Math.floor(t[3]),e},inverse:function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e},len:P,length:d,lerp:g,max:function(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e[3]=Math.max(t[3],n[3]),e},min:function(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e[3]=Math.min(t[3],n[3]),e},mul:w,multiply:l,negate:function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e},normalize:p,random:function(e,t=1){const n=r.Ov;let s,i,a,o,l,h;do{s=2*n()-1,i=2*n()-1,l=s*s+i*i}while(l>=1);do{a=2*n()-1,o=2*n()-1,h=a*a+o*o}while(h>=1);const c=Math.sqrt((1-l)/h);return e[0]=t*s,e[1]=t*i,e[2]=t*a*c,e[3]=t*o*c,e},round:function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e[3]=Math.round(t[3]),e},scale:c,scaleAndAdd:function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e},set:i,sqrDist:k,sqrLen:V,squaredDistance:f,squaredLength:x,str:function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},sub:I,subtract:o,transformMat4:_,transformQuat:function(e,t,n){const r=t[0],s=t[1],i=t[2],a=n[0],o=n[1],l=n[2],h=n[3],c=h*r+o*i-l*s,u=h*s+l*r-a*i,f=h*i+a*s-o*r,d=-a*r-o*s-l*i;return e[0]=c*h+d*-a+u*-l-f*-o,e[1]=u*h+d*-o+f*-a-c*-l,e[2]=f*h+d*-l+c*-o-u*-a,e[3]=t[3],e}},Symbol.toStringTag,{value:"Module"}))},91829:(e,t,n)=>{function r(){return[0,0,0,0]}function s(e){return[e[0],e[1],e[2],e[3]]}function i(e,t,n,r){return[e,t,n,r]}function a(e,t,n,r){return[e,t,n,r]}function o(e,t=[0,0,0,0]){const n=Math.min(4,e.length);for(let r=0;r<n;++r)t[r]=e[r];return t}function l(){return i(1,1,1,1)}function h(){return i(1,0,0,0)}function c(){return i(0,1,0,0)}function u(){return i(0,0,1,0)}function f(){return i(0,0,0,1)}n.d(t,{CN:()=>a,Un:()=>x,ci:()=>o,fA:()=>i,o8:()=>s,uY:()=>d,vt:()=>r});const d=[0,0,0,0],x=l(),p=h(),y=c(),g=u(),_=f();Object.freeze(Object.defineProperty({__proto__:null,ONES:x,UNIT_W:_,UNIT_X:p,UNIT_Y:y,UNIT_Z:g,ZEROS:d,clone:s,create:r,freeze:a,fromArray:o,fromValues:i,ones:l,unitW:f,unitX:h,unitY:c,unitZ:u,zeros:function(){return[0,0,0,0]}},Symbol.toStringTag,{value:"Module"}))},95108:(e,t,n)=>{n.d(t,{$3:()=>h,Ng:()=>a,R3:()=>s,Yl:()=>l,gR:()=>i,m3:()=>u,t9:()=>o});var r=n(4576);function s(e,t){const n=t[0]-e[0],r=t[1]-e[1];if(e.length>2&&t.length>2){const s=e[2]-t[2];return Math.sqrt(n*n+r*r+s*s)}return Math.sqrt(n*n+r*r)}function i(e,t,n,r){const[s,i]=t,[a,o]=n,[l,h]=r,c=l-a,u=h-o,f=c*c+u*u,d=(s-a)*c+(i-o)*u,x=Math.min(1,Math.max(0,d/f));return e[0]=a+c*x,e[1]=o+u*x,e}function a(e,t,n,r,s,i){let a=n,o=r,l=s-a,h=i-o;if(0!==l||0!==h){const n=((e-a)*l+(t-o)*h)/(l*l+h*h);n>1?(a=s,o=i):n>0&&(a+=l*n,o+=h*n)}return l=e-a,h=t-o,l*l+h*h}function o(e,t){return function(e,t,n){const r=e[0]+n*(t[0]-e[0]),s=e[1]+n*(t[1]-e[1]);return e.length>2&&t.length>2?[r,s,e[2]+n*(t[2]-e[2])]:[r,s]}(e,t,.5)}function l(e){const t=e.length;let n=0;for(let r=0;r<t-1;++r)n+=s(e[r],e[r+1]);return n}function h(e,t=0,n=1){let r=0;const s=e.length;let i=e[0];for(let a=1;a<s;a++){const s=e[a];r+=(s[t]-i[t])*(s[n]+i[n]),i=s}if(c(e)){const s=e[0];r+=(s[t]-i[t])*(s[n]+i[n])}return r>=0}function c(e){const t=e.length;return t>0&&!(0,r.aI)(e[0],e[t-1])}function u(e){if("rings"in e)for(const t of e.rings)c(t)&&t.push(t[0].slice())}n(21325)}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4796],{15426:(e,t,r)=>{r.d(t,{Xl:()=>x,ct:()=>M,pc:()=>H,C$:()=>W,PD:()=>X,VZ:()=>q,mm:()=>j,VA:()=>K,WP:()=>F,iX:()=>A,Nv:()=>z,xd:()=>ee,Vq:()=>k,GA:()=>Y,rQ:()=>Q,jp:()=>N,tG:()=>_,lV:()=>E,B5:()=>O,Ye:()=>B,sg:()=>Z,hM:()=>R,S2:()=>D,jD:()=>T,Zm:()=>V,$4:()=>G,Pt:()=>te,bt:()=>I,rn:()=>L,ZJ:()=>re});var n=r(70333),i=r(60999),o=r(49186),s=r(66552),a=r(39516),l=r(13069),u=r(90360),c=r(39357),p=r(53177),d=r(61956);async function y(e,t,r){t=t.clone(),e.capabilities.query.supportsMaxRecordCountFactor&&(t.maxRecordCountFactor=h(e));const n=function(e){return h(e)*function(e){return e.capabilities.query.maxRecordCount||2e3}(e)}(e),i=e.capabilities.query.supportsPagination;t.start=0,t.num=n;let o=null;for(;;){const s=await e.source.queryFeaturesJSON(t,r);if(null==o?o=s:o.features=o.features.concat(s.features),o.exceededTransferLimit=s.exceededTransferLimit,!i||!s.exceededTransferLimit)break;t.start+=n}return o}function h(e){return e.capabilities.query.supportsMaxRecordCountFactor?d.A.MAX_MAX_RECORD_COUNT_FACTOR:1}var m=r(30524),f=r(77548),b=r(96576),w=r(93618),g=r(54546),v=r(41366),C=r(26591),S=r(33910);const A=new s.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"});async function x(e,t,r,n){const i=await J(e);if(await P(e,t,n),!i.addAttachment)throw new o.A(n,"Layer source does not support addAttachment capability");return i.addAttachment(t,r)}function P(e,t,r){const{attributes:n}=t,{objectIdField:i}=e;return e.capabilities?.data?.supportsAttachment?t?n?i&&n[i]?Promise.resolve():Promise.reject(new o.A(r,`feature is missing the identifying attribute ${i}`)):Promise.reject(new o.A(r,"'attributes' are required on a feature to query attachments")):Promise.reject(new o.A(r,"A feature is required to add/delete/update attachments")):Promise.reject(new o.A(r,"this layer doesn't support attachments"))}async function I(e,t,r,n,i){const s=await J(e);if(await P(e,t,i),!s.updateAttachment)throw new o.A(i,"Layer source does not support updateAttachment capability");return s.updateAttachment(t,r,n)}async function M(e,t,n){const{applyEdits:i}=await Promise.all([r.e(8628),r.e(3513)]).then(r.bind(r,78628)),o=await e.load();let s=n;return"feature"===o.type&&o.infoFor3D&&null!=t.deleteFeatures&&null!=o.globalIdField&&(s={...s,globalIdToObjectId:await Y(o,t.deleteFeatures,o.globalIdField)}),i(o,o.source,t,n)}async function L(e,t,n){const{uploadAssets:i}=await Promise.all([r.e(8628),r.e(3513)]).then(r.bind(r,78628)),o=await e.load();return i(o,o.source,t,n)}async function j(e,t,r,n){const i=await J(e);if(await P(e,t,n),!i.deleteAttachments)throw new o.A(n,"Layer source does not support deleteAttachments capability");return i.deleteAttachments(t,r)}async function F(e,t,r){const n=(await e.load({signal:t?.signal})).source;if(!n.fetchRecomputedExtents)throw new o.A(r,"Layer source does not support fetchUpdates capability");return n.fetchRecomputedExtents(t)}async function E(e,t,r,n){t=g.A.from(t),await e.load();const i=e.source,s=e.capabilities;if(!s?.data?.supportsAttachment)throw new o.A(n,"this layer doesn't support attachments");const{attachmentTypes:a,objectIds:l,globalIds:u,num:c,size:p,start:d,where:y}=t;if(!s?.operations?.supportsQueryAttachments&&(a?.length>0||u?.length>0||p?.length>0||c||d||y))throw new o.A(n,"when 'capabilities.operations.supportsQueryAttachments' is false, only objectIds is supported",t);if(!(l?.length||u?.length||y))throw new o.A(n,"'objectIds', 'globalIds', or 'where' are required to perform attachment query",t);if(!i.queryAttachments)throw new o.A(n,"Layer source does not support queryAttachments capability",t);return!s?.attachment?.supportsOrderByFields&&t.orderByFields?.length&&((t=t.clone()).orderByFields=null),i.queryAttachments(t)}async function Z(e,t,r,n){const i=await J(e);if(!i.queryObjectIds)throw new o.A(n,"Layer source does not support queryObjectIds capability");return i.queryObjectIds(d.A.from(t)??e.createQuery(),r)}async function B(e,t,r,n){const i=await J(e);if(!i.queryFeatureCount)throw new o.A(n,"Layer source does not support queryFeatureCount capability");return i.queryFeatureCount(d.A.from(t)??e.createQuery(),r)}async function O(e,t,r,n){const i=await J(e);if(!i.queryExtent)throw new o.A(n,"Layer source does not support queryExtent capability");return i.queryExtent(d.A.from(t)??e.createQuery(),r)}async function R(e,t,r,n){const i=await J(e);if(!i.queryRelatedFeatures)throw new o.A(n,"Layer source does not support queryRelatedFeatures capability");return i.queryRelatedFeatures(C.default.from(t),r)}async function D(e,t,r,n){const i=await J(e);if(!i.queryRelatedFeaturesCount)throw new o.A(n,"Layer source does not support queryRelatedFeaturesCount capability");return i.queryRelatedFeaturesCount(C.default.from(t),r)}async function N(e){const t=e.source;if(t?.refresh)try{const{dataChanged:r,updates:n}=await t.refresh();if(null!=n&&(e.sourceJSON={...e.sourceJSON,...n},e.read(n,{origin:"service",url:e.parsedUrl})),r)return!0}catch{}if(e.definitionExpression)try{return(await(0,a.GP)(e.definitionExpression,e.fieldsIndex)).hasDateFunctions}catch{}return!1}function q(e){const t=new d.A;t.historicMoment=e.historicMoment,t.gdbVersion=e.gdbVersion,t.returnGeometry=!0,t.outFields=["*"],t.multipatchOption="multipatch"===e.geometryType?"xyFootprint":null;const r=e.capabilities?.query;r&&(t.compactGeometryEnabled=r.supportsCompactGeometry,t.defaultSpatialReferenceEnabled=r.supportsDefaultSpatialReference);const n=e.capabilities?.data;n?.supportsZ&&null!=e.returnZ&&(t.returnZ=e.returnZ),n?.supportsM&&null!=e.returnM&&(t.returnM=e.returnM);const{timeOffset:i,timeExtent:o}=e;return t.timeExtent=null!=i&&null!=o?o.offset(-i.value,i.unit):o||null,t}function T(e){const{globalIdField:t,fields:r}=e;if(t)return t;if(r)for(const e of r)if("esriFieldTypeGlobalID"===e.type)return e.name}function V(e){const{objectIdField:t,fields:r}=e;if(t)return t;if(r)for(const e of r)if("esriFieldTypeOID"===e.type)return e.name}function G(e){return e.currentVersion?e.currentVersion:e.hasOwnProperty("capabilities")||e.hasOwnProperty("drawingInfo")||e.hasOwnProperty("hasAttachments")||e.hasOwnProperty("htmlPopupType")||e.hasOwnProperty("relationships")||e.hasOwnProperty("timeInfo")||e.hasOwnProperty("typeIdField")||e.hasOwnProperty("types")?10:9.3}function k(e,t,r,n){const i=r?.feature,o=!!e.subtypes?.length;if(o&&!r?.excludeImpliedDomains){const r=H(e,t);if(r)return r}const s=o&&z(e,i);if(s){const e=s?.domains?.[t];return"inherited"===e?.type?n:e}const a=ee(e.types,e.typeIdField,i);if(a){const e=a.domains&&a.domains[t];if(e&&"inherited"!==e?.type)return e}if(n)return n;if(!r?.excludeImpliedDomains){const r=function(e,t){const{fieldsIndex:r}=e,{name:n,type:i}=r.get(t)??{};if(!n)return null;if(("typeIdField"in e?r.get(e.typeIdField)?.name:null)===n&&"types"in e&&e.types?.length){const t=e.types.map(e=>new c.H({code:$(e.id,i),name:e.name}));return new p.A({codedValues:t})}return null}(e,t);if(r)return r}return null}function z(e,t){const{subtypes:r,subtypeField:n}=e;if(!t?.attributes||!r?.length||!n)return null;const i=t.attributes[n];return null==i?null:r.find(e=>e.code===i)}function H(e,t){const{fieldsIndex:r,subtypeField:n}=e,{name:i,type:o}=r.get(t)??{};if(!i)return null;if((n&&r.get(n)?.name)===i&&e.subtypes?.length){const t=e.subtypes.map(e=>new c.H({code:$(e.code,o),name:e.name}));if(t?.length)return new p.A({codedValues:t})}return null}function $(e,t){return t?(0,m.yM)({type:t})&&"number"==typeof e?`${e}`:(0,m.R3)({type:t})&&"string"==typeof e?Number.parseInt(e,10):e:e}async function J(e){return(await e.load()).source}async function K(e,t,r){const i=e.parsedUrl?.path;i&&e.authenticationTriggerEvent===t&&await async function(e,t){if(!n.id)return;if(n.id.findCredential(e))return;let r;try{const i=await(0,f.wI)(e,t);i&&(r=await n.id.checkSignInStatus(`${i}/sharing`))}catch(e){}if(r)try{const r=null!=t?t.signal:null;await n.id.getCredential(e,{signal:r})}catch(e){}}(i,r)}function Q(e){return!!e?.toLowerCase().includes("current_user")}function W(e){return!te(e)&&(e.userHasUpdateItemPrivileges||e.editingEnabled)}const U=(0,u.C)({types:S.xK});function X(e,t){if(e.defaultSymbol)return e.types?.length?new w.A({defaultSymbol:U(e.defaultSymbol,e,t),field:e.typeIdField,uniqueValueInfos:e.types.map(e=>({id:e.id,symbol:U(e.symbol,e,t)}))}):new b.A({symbol:U(e.defaultSymbol,e,t)})}function _(e){let t=e.sourceJSON?.cacheMaxAge;if(!t)return!1;const r=e.editingInfo?.lastEditDate?.getTime();return null==r||(t*=1e3,Date.now()-r<t)}async function Y(e,t,r){if(null==t)return null;const n=[],{objectIdField:o}=e;if(t.forEach(e=>{let t=null;if("attributes"in e){const{attributes:n}=e;t={globalId:n[r],objectId:null!=n[o]&&-1!==n[o]?n[o]:null}}else t={globalId:e.globalId,objectId:null!=e.objectId&&-1!==e.objectId?e.objectId:null};null!=t.globalId&&(null!=t.objectId&&-1!==t.objectId||n.push(t.globalId))}),0===n.length)return null;const s=e.createQuery();s.where=n.map(e=>`${r}='${e}'`).join(" OR "),s.returnGeometry=!1,s.outFields=[o,r],s.cacheHint=!1;const a=await(0,i.DZ)(y(e,s));if(!a.ok)return null;const u=new Map,c=a.value.features;for(const e of c){const t=e.attributes[r],n=e.attributes[o];null!=t&&null!=n&&-1!==n&&u.set((0,l.AG)(t),n)}return u}function ee(e,t,r){if(!t||!r||!e)return null;const n=r.getAttribute(t);return null==n?null:e.find(e=>{const{id:t}=e;return null!=t&&t.toString()===n.toString()})??null}function te(e){return e.sourceJSON?.isMultiServicesView||function(e){return!!e.sourceJSON?.capabilities?.toLowerCase().split(",").map(e=>e.trim()).includes("map")}(e)}function re(e,t,r){const n=t?.queryAttributeBins;if(!t?.operations?.supportsQueryBins||!n)throw new o.A(r,"Layer source does not support binning");switch(e.binParameters.type){case"auto-interval":if(!n.supportsAutoInterval)throw new o.A(r,"Layer source does not support auto-interval binning");if(e.binParameters.normalizationType&&(!n.supportsNormalization||!ne(e.binParameters.normalizationType,n.supportedNormalizationTypes)))throw new o.A(r,"Layer source does not support normalization binning");break;case"date":if(!n.supportsDate)throw new o.A(r,"Layer source does not support date binning");if(e.binParameters.snapToData&&!n.supportsSnapToData)throw new o.A(r,"Layer source does not support snapToData binning");if(e.binParameters.returnFullIntervalBin&&!n.supportsReturnFullIntervalBin)throw new o.A(r,"Layer source does not support returnFullIntervalBin binning");break;case"fixed-boundaries":if(!n.supportsFixedBoundaries)throw new o.A(r,"Layer source does not support fixed-boundaries binning");break;case"fixed-interval":if(!n.supportsFixedInterval)throw new o.A(r,"Layer source does not support fixed-interval binning");if(e.binParameters.normalizationType&&(!n.supportsNormalization||!ne(e.binParameters.normalizationType,n.supportedNormalizationTypes)))throw new o.A(r,"Layer source does not support normalization binning")}if(e.binParameters.stackBy&&!n.supportsStackBy)throw new o.A(r,"Layer source does not support stackBy binning");if(e.binParameters.splitBy&&!n.supportsSplitBy)throw new o.A(r,"Layer source does not support splitBy binning");if(e.binParameters.firstDayOfWeek&&!n.supportsFirstDayOfWeek)throw new o.A(r,"Layer source does not support firstDayOfWeek binning");const i=n?.supportedStatistics;if(e.outStatistics&&i){const t=new Map([["count","count"],["sum","sum"],["min","min"],["max","max"],["avg","avg"],["stddev","stddev"],["var","var"],["percentile-continuous","percentileContinuous"],["percentile-discrete","percentileDiscrete"],["centroid-aggregate","centroid"],["convex-hull-aggregate","convexHull"],["envelope-aggregate","envelope"]]);for(const{statisticType:n}of e.outStatistics){const e=t.get(n);if(e&&!i[e])throw new o.A(r,`Layer source does not support ${n} statistic type`)}}}function ne(e,t){return null!=e&&!!t?.[v.Q.toJSON(e)]}},26591:(e,t,r)=>{r.r(t),r.d(t,{default:()=>y});var n,i=r(31635),o=r(25482),s=r(4718),a=r(10107),l=r(56507),u=r(40608),c=r(43937),p=r(16930),d=r(27733);let y=class extends o.o{static{n=this}constructor(e){super(e),this.cacheHint=void 0,this.dynamicDataSource=void 0,this.gdbVersion=null,this.geometryPrecision=void 0,this.historicMoment=null,this.maxAllowableOffset=void 0,this.objectIds=null,this.orderByFields=null,this.outFields=null,this.outSpatialReference=null,this.relationshipId=void 0,this.start=void 0,this.num=void 0,this.returnGeometry=!1,this.returnM=void 0,this.returnZ=void 0,this.where=null}_writeHistoricMoment(e,t){t.historicMoment=e&&e.getTime()}writeStart(e,t){t.resultOffset=this.start,t.resultRecordCount=this.num||10,this.start>0&&null==this.where&&(t.definitionExpression="1=1")}clone(){return new n((0,s.o8)({cacheHint:this.cacheHint,dynamicDataSource:this.dynamicDataSource,gdbVersion:this.gdbVersion,geometryPrecision:this.geometryPrecision,historicMoment:this.historicMoment&&new Date(this.historicMoment),maxAllowableOffset:this.maxAllowableOffset,objectIds:this.objectIds,orderByFields:this.orderByFields,outFields:this.outFields,outSpatialReference:this.outSpatialReference,relationshipId:this.relationshipId,start:this.start,num:this.num,returnGeometry:this.returnGeometry,where:this.where,returnZ:this.returnZ,returnM:this.returnM}))}};(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],y.prototype,"cacheHint",void 0),(0,i.Cg)([(0,a.MZ)({type:d.L,json:{write:!0}})],y.prototype,"dynamicDataSource",void 0),(0,i.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],y.prototype,"gdbVersion",void 0),(0,i.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],y.prototype,"geometryPrecision",void 0),(0,i.Cg)([(0,a.MZ)({type:Date})],y.prototype,"historicMoment",void 0),(0,i.Cg)([(0,c.K)("historicMoment")],y.prototype,"_writeHistoricMoment",null),(0,i.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],y.prototype,"maxAllowableOffset",void 0),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],y.prototype,"objectIds",void 0),(0,i.Cg)([(0,a.MZ)({type:[String],json:{write:!0}})],y.prototype,"orderByFields",void 0),(0,i.Cg)([(0,a.MZ)({type:[String],json:{write:!0}})],y.prototype,"outFields",void 0),(0,i.Cg)([(0,a.MZ)({type:p.A,json:{read:{source:"outSR"},write:{target:"outSR"}}})],y.prototype,"outSpatialReference",void 0),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],y.prototype,"relationshipId",void 0),(0,i.Cg)([(0,a.MZ)({type:Number,json:{read:{source:"resultOffset"}}})],y.prototype,"start",void 0),(0,i.Cg)([(0,c.K)("start"),(0,c.K)("num")],y.prototype,"writeStart",null),(0,i.Cg)([(0,a.MZ)({type:Number,json:{read:{source:"resultRecordCount"}}})],y.prototype,"num",void 0),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],y.prototype,"returnGeometry",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],y.prototype,"returnM",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],y.prototype,"returnZ",void 0),(0,i.Cg)([(0,a.MZ)({type:String,json:{read:{source:"definitionExpression"},write:{target:"definitionExpression"}}})],y.prototype,"where",void 0),y=n=(0,i.Cg)([(0,u.$)("esri.rest.support.RelationshipQuery")],y),y.from=(0,l.dp)(y)},30291:(e,t,r)=>{r.d(t,{tn:()=>u});var n=r(13874),i=r(30524),o=r(89893),s=(r(84424),r(80737),r(96808),r(66159)),a=(r(67336),r(92094),r(23721),r(47582),r(41227)),l=r(68780);function u({displayField:e,editFieldsInfo:t,fields:r,objectIdField:l,title:u},y){if(!r)return null;const m=function(e,t){const r=t?.visibleFieldNames;return function({fields:e,ignoreFieldTypes:t,sortDisabled:r}){const n=e;return t&&(e=e.filter(e=>!t.includes(e.type))),e===n&&(e=e.slice()),!0!==r&&e.sort(p),e}({fields:e.fields??[],ignoreFieldTypes:t?.ignoreFieldTypes||h,sortDisabled:t?.sortDisabled}).map(t=>new a.A({fieldName:t.name,isEditable:(0,i.R$)(t,e),label:t.alias,format:d(t),visible:c(t,{...e,visibleFieldNames:r})}))}({editFieldsInfo:t,fields:r,objectIdField:l},y);if(!m.length)return null;const f=function(e){const t=(0,i.mB)(e),{titleBase:r}=e;return t?`${r}: {${t.trim()}}`:r??""}({titleBase:u,fields:r,displayField:e}),b=[new s.A,new o.A];return new n.A({title:f,content:b,fieldInfos:m})}const c=(e,t)=>t.visibleFieldNames?t.visibleFieldNames.has(e.name):(0,i.Bz)(e,t);function p(e,t){return"oid"===e.type?-1:"oid"===t.type?1:y(e)?-1:y(t)?1:(e.alias||e.name).toLocaleLowerCase().localeCompare((t.alias||t.name).toLocaleLowerCase())}function d(e){switch(e.type){case"small-integer":case"integer":case"single":return new l.A({digitSeparator:!0,places:0});case"double":return new l.A({digitSeparator:!0,places:2});case"string":return(0,i.JL)(e.name)?new l.A({digitSeparator:!0,places:0}):void 0;default:return}}function y(e){if("name"===(e.name&&e.name.toLowerCase()))return!0;const t=e.alias?.toLowerCase();return"name"===t}const h=["geometry","blob","raster","guid","xml"]},39383:(e,t,r)=>{r.d(t,{w:()=>l,z:()=>p});var n=r(49186),i=r(53966),o=r(46499);const s=()=>i.A.getLogger("esri.layers.support.labelingInfo"),a=/\[([^[\]]+)\]/gi;function l(e,t,r){return e?e.map(e=>{const n=new o.A;if(n.read(e,r),n.labelExpression){const e=t.fields||t.layerDefinition?.fields||this.fields;n.labelExpression=n.labelExpression.replaceAll(a,(t,r)=>`[${function(e,t){if(!t)return e;const r=e.toLowerCase();for(let e=0;e<t.length;e++){const n=t[e].name;if(n.toLowerCase()===r)return n}return e}(r,e)}]`)}return n}):null}const u=["above-right","above-center","above-left","center-center","center-left","center-right","below-center","below-left","below-right"],c={esriGeometryPoint:u,esriGeometryMultiPatch:["always-horizontal"],esriGeometryPolygon:["always-horizontal"],esriGeometryPolyline:["center-along","above-along","below-along"],esriGeometryMultipoint:u,esriGeometryEnvelope:null};function p(e,t){const r=[];for(const i of e){const e=i.labelPlacement,o=c[t];if(!i.symbol)return s().warn("No ILabelClass symbol specified."),[];if(!o)return s().error(new n.A("labeling:unsupported-geometry-type",`Unable to create labels for layer, geometry type '${t}' is not supported`)),[];if(o.includes(e))r.push(i);else{const n=o[0];e&&s().warn(`Found invalid label placement type ${e} for ${t}. Defaulting to ${n}`);const a=i.clone();a.labelPlacement=n,r.push(a)}}return r}},46499:(e,t,r)=>{r.d(t,{A:()=>A});var n,i=r(31635),o=(r(44208),r(66552)),s=r(25482),a=r(4718),l=r(90629),u=r(10107),c=(r(53966),r(36005)),p=r(40608),d=r(43937),y=r(73913),h=r(32730),m=r(77548),f=r(59868),b=r(73838),w=r(33910);const g=new o.J({esriServerPointLabelPlacementAboveCenter:"above-center",esriServerPointLabelPlacementAboveLeft:"above-left",esriServerPointLabelPlacementAboveRight:"above-right",esriServerPointLabelPlacementBelowCenter:"below-center",esriServerPointLabelPlacementBelowLeft:"below-left",esriServerPointLabelPlacementBelowRight:"below-right",esriServerPointLabelPlacementCenterCenter:"center-center",esriServerPointLabelPlacementCenterLeft:"center-left",esriServerPointLabelPlacementCenterRight:"center-right",esriServerLinePlacementAboveAfter:"above-after",esriServerLinePlacementAboveAlong:"above-along",esriServerLinePlacementAboveBefore:"above-before",esriServerLinePlacementAboveStart:"above-start",esriServerLinePlacementAboveEnd:"above-end",esriServerLinePlacementBelowAfter:"below-after",esriServerLinePlacementBelowAlong:"below-along",esriServerLinePlacementBelowBefore:"below-before",esriServerLinePlacementBelowStart:"below-start",esriServerLinePlacementBelowEnd:"below-end",esriServerLinePlacementCenterAfter:"center-after",esriServerLinePlacementCenterAlong:"center-along",esriServerLinePlacementCenterBefore:"center-before",esriServerLinePlacementCenterStart:"center-start",esriServerLinePlacementCenterEnd:"center-end",esriServerPolygonPlacementAlwaysHorizontal:"always-horizontal"},{ignoreUnknown:!0});function v(e,t,r){return{enabled:!(0,m.TU)(r?.layer)}}function C(e){return!e||"service"!==e.origin&&!("map-image"===e.layer?.type)}function S(e){return!!function(e){return"map-image"===e?.type}(e)&&!!e.capabilities?.exportMap?.supportsArcadeExpressionForLabeling}let A=class extends s.o{static{n=this}static evaluateWhere(e,t){const r=(e,t,r)=>{switch(t){case"=":return e==r;case"<>":return e!=r;case">":return e>r;case">=":return e>=r;case"<":return e<r;case"<=":return e<=r}return!1};try{if(null==e)return!0;const n=e.split(" ");if(3===n.length)return r(t[n[0]],n[1],n[2]);if(7===n.length){const e=r(t[n[0]],n[1],n[2]),i=n[3],o=r(t[n[4]],n[5],n[6]);switch(i){case"AND":return e&&o;case"OR":return e||o}}return!1}catch(e){}}constructor(e){super(e),this.type="label",this.name=null,this.allowOverrun=!1,this.deconflictionStrategy="static",this.labelExpression=null,this.labelExpressionInfo=null,this.labelPlacement=null,this.labelPosition="curved",this.maxScale=0,this.minScale=0,this.repeatLabel=!0,this.repeatLabelDistance=null,this.symbol=f.Hk,this.useCodedValues=void 0,this.where=null}readLabelExpression(e,t){const r=t.labelExpressionInfo;if(!r||!r.value&&!r.expression)return e}writeLabelExpression(e,t,r){if(this.labelExpressionInfo)if(null!=this.labelExpressionInfo.value)e=(0,h.D3)(this.labelExpressionInfo.value);else if(null!=this.labelExpressionInfo.expression){const t=(0,h.tH)(this.labelExpressionInfo.expression);t&&(e="["+t+"]")}null!=e&&(t[r]=e)}writeLabelExpressionInfo(e,t,r,n){if(null==e&&null!=this.labelExpression&&C(n))e=new y.A({expression:this.getLabelExpressionArcade()});else if(!e)return;const i=e.toJSON(n);i.expression&&(t[r]=i)}writeMaxScale(e,t){(e||this.minScale)&&(t.maxScale=e)}writeMinScale(e,t){(e||this.maxScale)&&(t.minScale=e)}getLabelExpression(){return(0,h.XJ)(this)}getLabelExpressionArcade(){return(0,h.BI)(this)}getLabelExpressionSingleField(){return(0,h.rU)(this)}hash(){return JSON.stringify(this)}clone(){return new n({allowOverrun:this.allowOverrun,deconflictionStrategy:this.deconflictionStrategy,labelExpression:this.labelExpression,labelExpressionInfo:(0,a.o8)(this.labelExpressionInfo),labelPosition:this.labelPosition,labelPlacement:this.labelPlacement,maxScale:this.maxScale,minScale:this.minScale,name:this.name,repeatLabel:this.repeatLabel,repeatLabelDistance:this.repeatLabelDistance,symbol:(0,a.o8)(this.symbol),where:this.where,useCodedValues:this.useCodedValues})}};(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],A.prototype,"name",void 0),(0,i.Cg)([(0,u.MZ)({type:Boolean,json:{write:!0,default:!1,origins:{"web-scene":{write:!1},"portal-item":{default:!1,write:{overridePolicy:v}}}}})],A.prototype,"allowOverrun",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0,default:"static",origins:{"web-scene":{write:!1},"portal-item":{default:"static",write:{overridePolicy:v}}}}})],A.prototype,"deconflictionStrategy",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:{overridePolicy(e,t,r){return this.labelExpressionInfo&&"service"===r?.origin&&S(r.layer)?{enabled:!1}:{allowNull:!0}}}}})],A.prototype,"labelExpression",void 0),(0,i.Cg)([(0,c.w)("labelExpression")],A.prototype,"readLabelExpression",null),(0,i.Cg)([(0,d.K)("labelExpression")],A.prototype,"writeLabelExpression",null),(0,i.Cg)([(0,u.MZ)({type:y.A,json:{write:{overridePolicy:(e,t,r)=>function(e){return C(e)||S(e?.layer)}(r)?{allowNull:!0}:{enabled:!1}}}})],A.prototype,"labelExpressionInfo",void 0),(0,i.Cg)([(0,d.K)("labelExpressionInfo")],A.prototype,"writeLabelExpressionInfo",null),(0,i.Cg)([(0,u.MZ)({type:g.apiValues,json:{type:g.jsonValues,read:g.read,write:g.write}})],A.prototype,"labelPlacement",void 0),(0,i.Cg)([(0,u.MZ)({type:["curved","parallel"],json:{write:!0,origins:{"web-map":{write:!1},"web-scene":{write:!1},"portal-item":{write:!1}}}})],A.prototype,"labelPosition",void 0),(0,i.Cg)([(0,u.MZ)({type:Number})],A.prototype,"maxScale",void 0),(0,i.Cg)([(0,d.K)("maxScale")],A.prototype,"writeMaxScale",null),(0,i.Cg)([(0,u.MZ)({type:Number})],A.prototype,"minScale",void 0),(0,i.Cg)([(0,d.K)("minScale")],A.prototype,"writeMinScale",null),(0,i.Cg)([(0,u.MZ)({type:Boolean,json:{write:!0,origins:{"web-scene":{write:!1},"portal-item":{write:{overridePolicy:v}}}}})],A.prototype,"repeatLabel",void 0),(0,i.Cg)([(0,u.MZ)({type:Number,cast:l.cr,json:{write:!0,origins:{"web-scene":{write:!1},"portal-item":{write:{overridePolicy:v}}}}})],A.prototype,"repeatLabelDistance",void 0),(0,i.Cg)([(0,u.MZ)({types:w.em,json:{origins:{"web-scene":{types:w.Rv,write:b.oO,default:null}},write:b.oO,default:null}})],A.prototype,"symbol",void 0),(0,i.Cg)([(0,u.MZ)({type:Boolean,json:{write:!0}})],A.prototype,"useCodedValues",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],A.prototype,"where",void 0),A=n=(0,i.Cg)([(0,p.$)("esri.layers.support.LabelClass")],A)},54546:(e,t,r)=>{r.d(t,{A:()=>p});var n,i=r(31635),o=r(25482),s=r(4718),a=r(10107),l=r(56507),u=r(40608),c=r(43937);let p=class extends o.o{static{n=this}constructor(e){super(e),this.attachmentTypes=null,this.attachmentsWhere=null,this.cacheHint=void 0,this.keywords=null,this.globalIds=null,this.name=null,this.num=null,this.objectIds=null,this.orderByFields=null,this.returnMetadata=!1,this.size=null,this.start=null,this.where=null}writeStart(e,t){t.resultOffset=this.start,t.resultRecordCount=this.num||10}clone(){return new n((0,s.o8)({attachmentTypes:this.attachmentTypes,attachmentsWhere:this.attachmentsWhere,cacheHint:this.cacheHint,keywords:this.keywords,where:this.where,globalIds:this.globalIds,name:this.name,num:this.num,objectIds:this.objectIds,orderByFields:this.orderByFields,returnMetadata:this.returnMetadata,size:this.size,start:this.start}))}};(0,i.Cg)([(0,a.MZ)({type:[String],json:{write:!0}})],p.prototype,"attachmentTypes",void 0),(0,i.Cg)([(0,a.MZ)({type:String,json:{read:{source:"attachmentsDefinitionExpression"},write:{target:"attachmentsDefinitionExpression"}}})],p.prototype,"attachmentsWhere",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"cacheHint",void 0),(0,i.Cg)([(0,a.MZ)({type:[String],json:{write:!0}})],p.prototype,"keywords",void 0),(0,i.Cg)([(0,a.MZ)({type:[String],json:{write:!0}})],p.prototype,"globalIds",void 0),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],p.prototype,"name",void 0),(0,i.Cg)([(0,a.MZ)({type:Number,json:{read:{source:"resultRecordCount"}}})],p.prototype,"num",void 0),(0,i.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],p.prototype,"objectIds",void 0),(0,i.Cg)([(0,a.MZ)({type:[String],json:{write:!0}})],p.prototype,"orderByFields",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{default:!1,write:!0}})],p.prototype,"returnMetadata",void 0),(0,i.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],p.prototype,"size",void 0),(0,i.Cg)([(0,a.MZ)({type:Number,json:{read:{source:"resultOffset"}}})],p.prototype,"start",void 0),(0,i.Cg)([(0,c.K)("start"),(0,c.K)("num")],p.prototype,"writeStart",null),(0,i.Cg)([(0,a.MZ)({type:String,json:{read:{source:"definitionExpression"},write:{target:"definitionExpression"}}})],p.prototype,"where",void 0),p=n=(0,i.Cg)([(0,u.$)("esri.rest.support.AttachmentQuery")],p),p.from=(0,l.dp)(p)},73913:(e,t,r)=>{r.d(t,{A:()=>p});var n,i=r(31635),o=r(25482),s=r(10107),a=(r(44208),r(53966),r(87811),r(36005)),l=r(40608),u=r(43937),c=r(32730);let p=class extends o.o{constructor(){super(...arguments),this.expression=null,this.title=null,this.value=null}static{n=this}readExpression(e,t){return t.value?(0,c.mX)(t.value):e}writeExpression(e,t,r){null!=this.value&&(e=(0,c.mX)(this.value)),null!=e&&(t[r]=e)}clone(){return new n({expression:this.expression,title:this.title,value:this.value})}};(0,i.Cg)([(0,s.MZ)({type:String,json:{write:{writerEnsuresNonNull:!0}}})],p.prototype,"expression",void 0),(0,i.Cg)([(0,a.w)("expression",["expression","value"])],p.prototype,"readExpression",null),(0,i.Cg)([(0,u.K)("expression")],p.prototype,"writeExpression",null),(0,i.Cg)([(0,s.MZ)({type:String,json:{write:!0,origins:{"web-scene":{write:!1}}}})],p.prototype,"title",void 0),(0,i.Cg)([(0,s.MZ)({json:{read:!1,write:!1}})],p.prototype,"value",void 0),p=n=(0,i.Cg)([(0,l.$)("esri.layers.support.LabelExpressionInfo")],p)},96576:(e,t,r)=>{r.d(t,{A:()=>d});var n,i=r(31635),o=r(4718),s=r(10107),a=(r(44208),r(53966),r(93223)),l=r(40608),u=r(92438),c=r(63988),p=r(49849);let d=n=class extends((0,c.h)(u.A)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.type="simple"}async collectRequiredFields(e,t){await Promise.all([this.collectSymbolFields(e,t),this.collectVVRequiredFields(e,t)])}async collectSymbolFields(e,t){await Promise.all(this.symbols.map(r=>r.collectRequiredFields(e,t)))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}get symbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables?.reduce((e,t)=>e+t.getAttributeHash(),"")??""}getMeshHash(){return this.symbols.reduce((e,t)=>e+JSON.stringify(t),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new n({description:this.description,label:this.label,symbol:(0,o.o8)(this.symbol),visualVariables:(0,o.o8)(this.visualVariables),authoringInfo:(0,o.o8)(this.authoringInfo)})}};(0,i.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],d.prototype,"description",void 0),(0,i.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,i.Cg)([(0,s.MZ)(p.Wp)],d.prototype,"symbol",void 0),(0,i.Cg)([(0,a.e)({simple:"simple"})],d.prototype,"type",void 0),d=n=(0,i.Cg)([(0,l.$)("esri.renderers.SimpleRenderer")],d)}}]);