@arcgis/core 4.26.0-next.20221217 → 4.26.0-next.20221219

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 (85) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/{d0411fe75475c00bd04c.js → 365372b903d5715bf9b7.js} +1 -1
  3. package/assets/esri/core/workers/chunks/{5fa7c3ffdf2782f86dab.js → d431821ed03a6e7f4fd3.js} +1 -1
  4. package/chunks/cameraUtilsSpherical.js +1 -1
  5. package/package.json +1 -1
  6. package/renderers/support/DictionaryLoader.js +1 -1
  7. package/support/revision.js +1 -1
  8. package/views/3d/analysis/AreaMeasurement/support/MeasurementData.js +1 -1
  9. package/views/3d/analysis/Dimension/DimensionVisualization.js +1 -1
  10. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  11. package/views/3d/analysis/Dimension/lengthDimensionManipulatorUtils.js +1 -1
  12. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  13. package/views/3d/analysis/LineOfSight/LineOfSightRayIntersector.js +1 -1
  14. package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
  15. package/views/3d/analysis/LineOfSight/lineOfSightToolUtils.js +1 -1
  16. package/views/3d/analysis/Slice/SliceController.js +1 -1
  17. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  18. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  19. package/views/3d/camera/constraintUtils/altitude.js +1 -1
  20. package/views/3d/camera/constraintUtils/distance.js +1 -1
  21. package/views/3d/camera/constraintUtils/tilt.js +1 -1
  22. package/views/3d/camera/intersectionUtils.js +1 -1
  23. package/views/3d/environment/SimpleAtmosphere.js +1 -1
  24. package/views/3d/input/SceneInputManager.js +1 -1
  25. package/views/3d/interactive/Manipulator3D.js +1 -1
  26. package/views/3d/interactive/editingTools/dragEventPipeline3D.js +1 -1
  27. package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
  28. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  29. package/views/3d/interactive/visualElements/LabelVisualElement.js +1 -1
  30. package/views/3d/interactive/visualElements/MeasurementArrowVisualElement.js +1 -1
  31. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  32. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  33. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  34. package/views/3d/interactive/visualElements/VisualElementResources.js +1 -1
  35. package/views/3d/layers/graphics/Graphics3DSymbolFactory.js +1 -1
  36. package/views/3d/layers/graphics/Labeler.js +1 -1
  37. package/views/3d/layers/graphics/symbolComplexity.js +1 -1
  38. package/views/3d/state/ConstraintsManager.js +1 -1
  39. package/views/3d/state/GoToOperation.js +1 -1
  40. package/views/3d/state/SurfaceCollisionConstraint.js +1 -1
  41. package/views/3d/state/ViewState.js +1 -1
  42. package/views/3d/state/ViewStateManager.js +1 -1
  43. package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
  44. package/views/3d/state/controllers/RotateController.js +1 -1
  45. package/views/3d/state/controllers/global/PinchAndPanController.js +1 -1
  46. package/views/3d/state/controllers/global/ZoomController.js +1 -1
  47. package/views/3d/state/controllers/global/ZoomStepController.js +1 -1
  48. package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
  49. package/views/3d/state/controllers/local/ZoomController.js +1 -1
  50. package/views/3d/state/controllers/local/ZoomStepController.js +1 -1
  51. package/views/3d/state/controllers/momentum/ZoomPlanarMomentumController.js +1 -1
  52. package/views/3d/support/CombinedElevationProvider.js +1 -1
  53. package/views/3d/support/GraphicsMap.js +1 -1
  54. package/views/3d/support/HighlightOptions.js +1 -1
  55. package/views/3d/support/LaserlinePathData.js +1 -1
  56. package/views/3d/support/MapCoordsHelper.js +1 -1
  57. package/views/3d/support/ResourceController.js +1 -1
  58. package/views/3d/support/SceneViewPerformanceInfo.js +1 -1
  59. package/views/3d/support/StreamTextureCollection.js +1 -1
  60. package/views/3d/support/TextureCollection.js +1 -1
  61. package/views/3d/support/cameraUtils.js +1 -1
  62. package/views/3d/support/pointsOfInterest/CameraOnSurface.js +1 -1
  63. package/views/3d/support/pointsOfInterest/ContentGeometryUpdates.js +1 -1
  64. package/views/3d/support/pointsOfInterest/Focus.js +1 -1
  65. package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
  66. package/views/3d/support/pointsOfInterest/SurfaceGeometryUpdates.js +1 -1
  67. package/views/3d/support/renderInfoUtils/line.js +1 -1
  68. package/views/3d/support/renderInfoUtils/polygon.js +1 -1
  69. package/views/3d/support/viewpointUtils.js +1 -1
  70. package/views/3d/terrain/tileUtils.js +1 -1
  71. package/views/3d/webgl-engine/lib/TextRenderParameters.js +1 -1
  72. package/views/3d/webgl-engine/lib/Util.js +1 -1
  73. package/views/animation/pointToPoint/apex/Path.js +1 -1
  74. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  75. package/widgets/Editor/CreateWorkflow.js +1 -1
  76. package/widgets/Editor/EditorViewModel.js +1 -1
  77. package/widgets/Editor/Edits.js +1 -1
  78. package/widgets/Editor/UpdateWorkflow.js +1 -1
  79. package/widgets/Editor/workflowUtils.js +1 -1
  80. package/widgets/Editor.js +1 -1
  81. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  82. package/widgets/FeatureTemplates/ItemList.js +1 -1
  83. package/widgets/FeatureTemplates/TemplateItem.js +1 -1
  84. package/widgets/support/SnappingControls/SnappingControlsViewModel.js +1 -1
  85. package/widgets/support/SnappingControls.js +1 -1
@@ -1 +1 @@
1
- var RemoteClient;(()=>{var e={88277:(e,t,r)=>{r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},68773:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s}),r(80442);var n=r(78286),o=r(17202);const s={analysisTheme:{accentColor:[255,128,0],textColor:"white"},apiKey:void 0,applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",portalUrl:"https://www.arcgis.com",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&((0,n.RH)(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="4.26.0";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${o.r}/assets`}s.defaultAssetsPath=s.assetsPath}},20102:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(22974),o=r(92604),s=r(58896);class i extends s.Z{constructor(e,t,r){if(super(e,t,r),!(this instanceof i))return new i(e,t,r)}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.d9)(t)}catch(e){return"[object]"}})))}}catch(e){throw o.Z.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new i(e.name,e.message,e.details)}}i.prototype.type="error"},92604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(68773),o=(r(80442),r(70586)),s=r(19153);const i={info:0,warn:1,error:2,none:3};class a{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,a._loggers[this.module]=this;const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=a.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){const e=this;return{loggedMessages:e._loggedMessages,clearLoggedWarnings:()=>e._loggedMessages.warn.clear()}}static get testSingleton(){return{resetLoggers(e={}){const t=a._loggers;return a._loggers=e,t},set throttlingDisabled(e){a._throttlingDisabled=e}}}static getLogger(e){let t=a._loggers[e];return t||(t=new a({module:e})),t}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!a._throttlingDisabled){const n=this._argsToKey(r),o=this._loggedMessages[e].get(n);if("once"===t&&null!=o||"oncePerTick"===t&&o&&o>=a._tickCounter)return;this._loggedMessages[e].set(n,a._tickCounter),a._scheduleTickCounterIncrement()}for(const t of n.Z.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;(0,o.pC)(r);){const t=r[e];if((0,o.pC)(t))return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",this._consoleWriter)}_consoleWriter(e,t,...r){console[e](`[${t}]`,...r)}_matchLevel(e){const t=n.Z.log.level?n.Z.log.level:"warn";return i[this._parentWithMember("level",t)]<=i[e]}_argsToKey(...e){return(0,s.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){a._tickCounterScheduled||(a._tickCounterScheduled=!0,Promise.resolve().then((()=>{a._tickCounter++,a._tickCounterScheduled=!1})))}}a._loggers={},a._tickCounter=0,a._tickCounterScheduled=!1,a._throttlingDisabled=!1},58896:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(78286);class o{constructor(e,t,r){this.name=e,this.details=r,this instanceof o&&(this.message=(t&&function(e,t){return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,((e,r)=>{if(""===r)return"$";const o=(0,n.hS)(r,t)??"";if(void 0===o)throw new Error(`could not find key "${r}" in template`);return o.toString()}))}(t,r))??"")}toString(){return"["+this.name+"]: "+this.message}}},77734:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=e??Math.random()*n._m}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}n._m=2147483647,n._a=48271,n._c=0},67676:(e,t,r)=>{"use strict";r.d(t,{FY:()=>m,Od:()=>y,SO:()=>d,Vx:()=>i,a9:()=>u,cq:()=>p,e$:()=>b,e5:()=>a,fS:()=>s,w6:()=>f,zG:()=>c});var n=r(70586),o=r(77734);function s(e,t,r){if((0,n.Wi)(e)&&(0,n.Wi)(t))return!0;if((0,n.Wi)(e)||(0,n.Wi)(t)||e.length!==t.length)return!1;if(r){for(let n=0;n<e.length;n++)if(!r(e[n],t[n]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function i(e,t){let r=e.length!==t.length;r&&(e.length=t.length);for(let n=0;n<t.length;++n)e[n]!==t[n]&&(e[n]=t[n],r=!0);return r}function a(e,t,r){let n,o;return r?(n=t.filter((t=>!e.some((e=>r(e,t))))),o=e.filter((e=>!t.some((t=>r(t,e)))))):(n=t.filter((t=>!e.includes(t))),o=e.filter((e=>!t.includes(e)))),{added:n,removed:o}}function c(e){return e&&"number"==typeof e.length}const l=!!Array.prototype.fill;function u(e,t){if(l)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function f(e,t){void 0===t&&(t=e,e=0);const r=new Array(t-e);for(let n=e;n<t;n++)r[n-e]=n;return r}class d{constructor(){this.last=0}}const h=new d;function p(e,t,r,n){n=n||h;const o=Math.max(0,n.last-10);for(let s=o;s<r;++s)if(e[s]===t)return n.last=s,s;const s=Math.min(o,r);for(let r=0;r<s;++r)if(e[r]===t)return n.last=r,r;return-1}function b(e,t,r,n){const o=r??e.length,s=p(e,t,o,n);if(-1!==s)return e[s]=e[o-1],null==r&&e.pop(),t}const g=new Set;function m(e,t,r=e.length,n=t.length,o,s){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);o=o||h;const i=Math.max(0,o.last-10);for(let t=i;t<r;++t)if(g.has(e[t])&&(s&&s.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;for(let t=0;t<i;++t)if(g.has(e[t])&&(s&&s.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;return g.clear(),r}function y(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}new o.Z},60235:(e,t,r)=>{"use strict";r.d(t,{Mr:()=>i,x9:()=>a});var n=r(80442);const o=new Set;function s(e,t,r=!1){r&&o.has(t)||(r&&o.add(t),e.warn(`🛑 DEPRECATED - ${t}`))}function i(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;a(e,"Property: "+(n?n+"::":"")+t,r)}}function a(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{replacement:n,version:o,see:i,warnOnce:a}=r;let c=t;n&&(c+=`\n\t🛠️ Replacement: ${n}`),o&&(c+=`\n\t⚙️ Version: ${o}`),i&&(c+=`\n\t🔗 See ${i} for more details.`),s(e,c,a)}}},91460:(e,t,r)=>{"use strict";function n(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function o(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("on"in e)return e.on(t,r);if(Array.isArray(t)){const n=t.slice();for(const t of n)e.addEventListener(t,r);return{remove(){for(const t of n)e.removeEventListener(t,r)}}}return e.addEventListener(t,r),{remove(){e.removeEventListener(t,r)}}}function s(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const s=o(e,t,(t=>{s.remove(),r.call(e,t)}));return{remove(){s.remove()}}}r.d(t,{IH:()=>s,on:()=>o,vT:()=>n})},80442:(e,t,r)=>{"use strict";let n;function o(e){return"function"==typeof n[e]?n[e]=n[e](globalThis):n[e]}r.d(t,{Z:()=>o}),n=globalThis.dojoConfig?.has||globalThis.esriConfig?.has?{...globalThis.dojoConfig?.has,...globalThis.esriConfig?.has}:{},o.add=(e,t,r,s)=>((s||void 0===n[e])&&(n[e]=t),r&&o(e)),o.cache=n,o.add("esri-deprecation-warnings",!0),(()=>{o.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(o.add("host-browser",e),o.add("host-node","object"==typeof globalThis.process&&globalThis.process.versions?.node&&globalThis.process.versions.v8),o.add("dom",e),o("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(o.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),o.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),o.add("khtml",r.includes("Konqueror")?n:void 0),o.add("edge",parseFloat(t.split("Edge/")[1])||void 0),o.add("opr",parseFloat(t.split("OPR/")[1])||void 0),o.add("webkit",!o("wp")&&!o("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),o.add("chrome",!o("edge")&&!o("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),o.add("android",!o("wp")&&parseFloat(t.split("Android ")[1])||void 0),o.add("safari",!r.includes("Safari")||o("wp")||o("chrome")||o("android")||o("edge")||o("opr")?void 0:parseFloat(r.split("Version/")[1])),o.add("mac",r.includes("Macintosh")),!o("wp")&&t.match(/(iPhone|iPod|iPad)/)){const e=RegExp.$1.replace(/P/,"p"),r=t.match(/OS ([\d_]+)/)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replace(/_/g,""));o.add(e,n),o.add("ios",n)}o("webkit")||(!t.includes("Gecko")||o("wp")||o("khtml")||o("edge")||o.add("mozilla",n),o("mozilla")&&o.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&o.add("esri-mobile",t),r&&o.add("esri-iPhone",r),o.add("esri-geolocation",!!navigator.geolocation)}o.add("esri-wasm","WebAssembly"in globalThis),o.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),o.add("wasm-simd",(()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])))),o.add("esri-atomics","Atomics"in globalThis),o.add("esri-workers","Worker"in globalThis),o.add("web-feat:cache","caches"in globalThis),o.add("esri-workers-arraybuffer-transfer",!o("safari")||Number(o("safari"))>=12),o.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),o.add("featurelayer-simplify-payload-size-factors",[1,1,4]),o.add("featurelayer-snapshot-enabled",!0),o.add("featurelayer-snapshot-point-min-threshold",8e4),o.add("featurelayer-snapshot-point-max-threshold",4e5),o.add("featurelayer-snapshot-point-coverage",.1),o.add("featurelayer-advanced-symbols",!1),o.add("featurelayer-pbf",!0),o.add("featurelayer-pbf-statistics",!1),o.add("feature-layers-workers",!0),o.add("feature-polyline-generalization-factor",1),o.add("mapview-transitions-duration",200),o.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),o.add("mapserver-pbf-version-support",10.81),o.add("mapimagelayer-popup-identify-max-tolerance",20),o.add("heatmap-allow-raster-fallback",!0),o.add("heatmap-force-raster",!1),o("host-webworker")||o("host-browser")&&(o.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),o.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{o.add("esri-image-decode",!0,!0,!0)})).catch((()=>{o.add("esri-image-decode",!1,!0,!0)}))}return!1})),o.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},22974:(e,t,r)=>{"use strict";r.d(t,{Vo:()=>c,d9:()=>a,fS:()=>p,y7:()=>b,yd:()=>i});var n=r(67676),o=r(70586),s=r(1533);function i(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&i(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function a(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=h(e);if((0,o.pC)(t))return t;if(l(e))return e.clone();if(u(e))return e.map(a);if(f(e))return e.clone();const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=a(e[t]);return r}function c(e){if(!e||"object"!=typeof e||"function"==typeof e||"HTMLElement"in globalThis&&e instanceof HTMLElement)return e;const t=h(e);if((0,o.pC)(t))return t;if(u(e)){let t=!0;const r=e.map((e=>{const r=c(e);return null!=e&&null==r&&(t=!1),r}));return t?r:null}if(l(e))return e.clone();if(!f(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],o=c(n);if(null!=n&&null==o)return null;t[r]=o}return t}return null}function l(e){return"function"==typeof e.clone}function u(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function f(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function d(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function h(e){if((0,s.W0)(e)||(0,s.lq)(e)||(0,s.KZ)(e)||(0,s.z3)(e)||(0,s.Uc)(e)||(0,s.Hx)(e)||(0,s.ZY)(e)||(0,s.xZ)(e)||(0,s.fS)(e))return e.slice();if(e instanceof Date)return new Date(e.getTime());if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;for(const[r,n]of e)t.set(r,a(n));return t}if(e instanceof Set){const t=new Set;for(const r of e)t.add(a(r));return t}return null}function p(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof(e||{}).getTime&&"function"==typeof(t||{}).getTime&&e.getTime()===t.getTime()||!1}function b(e,t){return e===t||(null==e||"string"==typeof e?e===t:"number"==typeof e?e===t||"number"==typeof t&&isNaN(e)&&isNaN(t):e instanceof Date?t instanceof Date&&e.getTime()===t.getTime():Array.isArray(e)?Array.isArray(t)&&(0,n.fS)(e,t):e instanceof Set?t instanceof Set&&function(e,t){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}(e,t):e instanceof Map?t instanceof Map&&function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e){const e=t.get(r);if(e!==n||void 0===e&&!t.has(r))return!1}return!0}(e,t):!!d(e)&&d(t)&&function(e,t){if(null===e||null===t)return!1;const r=Object.keys(e);if(null===t||Object.keys(t).length!==r.length)return!1;for(const n of r)if(e[n]!==t[n]||!Object.prototype.hasOwnProperty.call(t,n))return!1;return!0}(e,t))}},70586:(e,t,r)=>{"use strict";function n(e){return null!=e}function o(e){return null==e}function s(e,t){return n(e)?t(e):null}function i(e){return e}function a(e,t){return c(e,t),e}function c(e,t){if(o(e))throw new Error(t??"value is None")}function l(e,t){return n(e)?e:"function"==typeof t?t():t}function u(e,t){return n(e)?e:t}function f(e){return n(e)&&e.destroy(),null}function d(e){return n(e)&&e.dispose(),null}function h(e){return n(e)&&e.remove(),null}function p(e){return n(e)&&e.abort(),null}function b(e){return n(e)&&e.release(),null}function g(e,t,r){return n(e)&&n(t)?n(r)?r(e,t):e.equals(t):e===t}function m(e){return null}function y(e,t){const r=new Array;for(const n of e)r.push(v(n,null,t));return r}function w(e,t){for(const r of e)s(r,t)}function v(e,t,r){return n(e)?r(e):t}function _(e){return e.filter((e=>n(e)))}function O(e,...t){let r=e;for(let e=0;e<t.length&&r;++e)r=r[t[e]];return r}function k(e){return e}r.d(t,{Fd:()=>y,IM:()=>p,JR:()=>w,M2:()=>d,O3:()=>c,Pt:()=>l,R2:()=>v,RY:()=>b,SC:()=>f,U2:()=>O,Wg:()=>i,Wi:()=>o,_W:()=>g,hw:()=>h,j0:()=>k,lV:()=>_,pC:()=>n,s3:()=>a,wN:()=>m,yl:()=>u,yw:()=>s})},78286:(e,t,r)=>{"use strict";r.d(t,{RB:()=>i,RH:()=>o,hS:()=>s});var n=r(22974);function o(e,t,r=!1){return c(e,t,r)}function s(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function i(e,t,r){const n=e.split("."),o=n.pop(),s=a(n,!0,r);s&&o&&(s[o]=t)}function a(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function c(e,t,r){return t?Object.keys(t).reduce(((e,o)=>{let s=e[o],i=t[o];return s===i?e:void 0===s?(e[o]=(0,n.d9)(i),e):(Array.isArray(i)||Array.isArray(e)?(s=s?Array.isArray(s)?e[o]=s.concat():e[o]=[s]:e[o]=[],i&&(Array.isArray(i)||(i=[i]),r?i.forEach((e=>{s.includes(e)||s.push(e)})):e[o]=i.concat())):i&&"object"==typeof i?e[o]=c(s,i,r):e.hasOwnProperty(o)&&!t.hasOwnProperty(o)||(e[o]=i),e)}),e||{}):e}},95330:(e,t,r)=>{"use strict";r.d(t,{e4:()=>O,zE:()=>c,dD:()=>w,hh:()=>C,Ds:()=>P,as:()=>v,WW:()=>_,R8:()=>y,D_:()=>m,Hc:()=>f,y8:()=>k,fu:()=>p,$F:()=>b,r9:()=>d,k_:()=>l,H9:()=>h,Yn:()=>j,gx:()=>S,Hl:()=>g});const n=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return{remove:()=>o.clearTimeout(r)}}});var o;r(60235);var s=r(20102),i=r(91460),a=(r(92604),r(70586));function c(e="Aborted"){return new s.Z("AbortError",e)}function l(e,t="Aborted"){if(f(e))throw c(t)}function u(e){return(0,a.pC)(e)?"aborted"in e?e:e.signal:e}function f(e){const t=u(e);return(0,a.pC)(t)&&t.aborted}function d(e){if(m(e))throw e}function h(e){if(!m(e))throw e}function p(e,t){const r=u(e);if(!(0,a.Wi)(r)){if(!r.aborted)return(0,i.IH)(r,"abort",(()=>t()));t()}}function b(e,t){const r=u(e);if(!(0,a.Wi)(r))return l(r),(0,i.IH)(r,"abort",(()=>t(c())))}function g(e,t){const r=u(t);return(0,a.Wi)(r)?e:new Promise(((r,n)=>{let o=p(t,(()=>n(c())));const s=()=>o=(0,a.hw)(o);e.then(s,s),e.then(r,n)}))}function m(e){return"AbortError"===e?.name}async function y(e){try{return await e}catch(e){if(!m(e))throw e;return}}function w(){let e=null;const t=new Promise(((t,r)=>{e={promise:void 0,resolve:t,reject:r}}));return e.promise=t,e}async function v(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e),r=t.map((t=>e[t])),n=await v(r),o={};return t.map(((e,t)=>o[e]=n[t])),o}const t=e;return new Promise((e=>{const r=[];let n=t.length;0===n&&e(r),t.forEach((t=>{const o={promise:t||Promise.resolve(t)};r.push(o),o.promise.then((e=>{o.value=e})).catch((e=>{o.error=e})).then((()=>{--n,0===n&&e(r)}))}))}))}async function _(e){return(await v(e)).filter((e=>!!e.value)).map((e=>e.value))}function O(e,t,r){const n=new AbortController;return p(r,(()=>n.abort())),new Promise(((r,o)=>{let s=setTimeout((()=>{s=0,r(t)}),e);p(n,(()=>{s&&(clearTimeout(s),o(c()))}))}))}function k(e){return e&&"function"==typeof e.then}function S(e){return k(e)?e:Promise.resolve(e)}function P(e,t=-1){let r,n,o,s,i=null;const l=(...u)=>{if(r){n=u,s&&s.reject(c()),s=w();const e=(0,a.j0)(s.promise);if(i){const e=i;i=null,e.abort()}return e}if(o=s||w(),s=null,t>0){const n=new AbortController;r=S(e(...u,n.signal));const o=r;O(t).then((()=>{r===o&&(s?n.abort():i=n)}))}else r=1,r=S(e(...u));const f=()=>{const e=n;n=o=r=i=null,null!=e&&l(...e)},d=r,h=o;return d.then(f,f),d.then(h.resolve,h.reject),(0,a.j0)(h.promise)};return l}function C(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n})),o=t=>{e(t)};return o.resolve=t=>e(t),o.reject=e=>t(e),o.timeout=(e,t)=>n.setTimeout((()=>o.reject(t)),e),o.promise=r,o}async function j(e){await Promise.resolve(),l(e)}},19153:(e,t,r)=>{"use strict";r.d(t,{Cb:()=>l,Qs:()=>a,gx:()=>i,hP:()=>c});var n=r(78286);const o=/\{([^\}]+)\}/g;function s(e){return e??""}function i(e,t){return e.replace(o,"object"==typeof t?(e,r)=>s((0,n.hS)(r,t)):(e,r)=>s(t(r)))}function a(e,t){return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&t.includes(e)?e:`\\${e}`))}function c(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}function l(e){return(new DOMParser).parseFromString(e||"","text/html").body.innerText||""}},1533:(e,t,r)=>{"use strict";function n(e){return e instanceof ArrayBuffer}function o(e){return e&&e.constructor&&"Int8Array"===e.constructor.name}function s(e){return e&&e.constructor&&"Uint8Array"===e.constructor.name}function i(e){return e&&e.constructor&&"Uint8ClampedArray"===e.constructor.name}function a(e){return e&&e.constructor&&"Int16Array"===e.constructor.name}function c(e){return e&&e.constructor&&"Uint16Array"===e.constructor.name}function l(e){return e&&e.constructor&&"Int32Array"===e.constructor.name}function u(e){return e&&e.constructor&&"Uint32Array"===e.constructor.name}function f(e){return e&&e.constructor&&"Float32Array"===e.constructor.name}function d(e){return e&&e.constructor&&"Float64Array"===e.constructor.name}r.d(t,{DB:()=>h,Hx:()=>l,KZ:()=>i,Uc:()=>c,W0:()=>o,ZY:()=>u,eP:()=>n,fS:()=>d,lq:()=>s,xZ:()=>f,z3:()=>a});const h=1024},17452:(e,t,r)=>{"use strict";r.d(t,{$U:()=>ne,AH:()=>V,B7:()=>j,D6:()=>L,Fv:()=>F,HK:()=>K,Hu:()=>de,Ie:()=>ue,L:()=>k,Ml:()=>be,P$:()=>B,PF:()=>Z,Qj:()=>le,R9:()=>y,TI:()=>O,YP:()=>H,Yd:()=>ae,ZN:()=>he,_l:()=>X,b7:()=>E,ed:()=>N,fZ:()=>ge,fl:()=>pe,hF:()=>q,hO:()=>oe,io:()=>ee,jc:()=>z,kl:()=>U,mN:()=>S,oC:()=>te,oh:()=>W,qg:()=>T,rS:()=>Q,sJ:()=>Y,tD:()=>$,tm:()=>I,u0:()=>P,v_:()=>D,vt:()=>ce});var n=r(68773),o=r(20102),s=r(92604),i=r(70586);const a=s.Z.getLogger("esri.core.urlUtils"),c=n.Z.request,l="esri/config: esriConfig.request.proxyUrl is not set.",u=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,f=/^\s*http:/i,d=/^\s*https:/i,h=/^\s*file:/i,p=/:\d+$/,b=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,g=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),m=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class y{constructor(e=""){this.uri=e,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let t=(0,i.j0)(this.uri.match(g));this.scheme=t[2]||(t[1]?"":null),this.authority=t[4]||(t[3]?"":null),this.path=t[5],this.query=t[7]||(t[6]?"":null),this.fragment=t[9]||(t[8]?"":null),null!=this.authority&&(t=(0,i.j0)(this.authority.match(m)),this.user=t[3]||null,this.password=t[4]||null,this.host=t[6]||t[7],this.port=t[9]||null)}toString(){return this.uri}}const w={};let v=new y(n.Z.applicationUrl);let _=function(){const e=(0,i.j0)(v.path),t=e.substring(0,e.lastIndexOf(e.split("/")[e.split("/").length-1]));return`${v.scheme}://${v.host}${null!=v.port?`:${v.port}`:""}${t}`}();const O=()=>v,k=()=>_;function S(e){if(!e)return null;const t={path:null,query:null},r=new y(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.substring(0,n),t.query=P(r.query)),r.fragment&&(t.hash=r.fragment,null===r.query&&(t.path=t.path.substring(0,t.path.length-(r.fragment.length+1)))),t}function P(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,o;t<0?(n=decodeURIComponent(e),o=""):(n=decodeURIComponent(e.slice(0,t)),o=decodeURIComponent(e.slice(t+1)));let s=r[n];"string"==typeof s&&(s=r[n]=[s]),Array.isArray(s)?s.push(o):r[n]=o}return r}function C(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}function j(e,t){return e?t&&"function"==typeof t?Object.keys(e).map((r=>encodeURIComponent(r)+"="+encodeURIComponent(t(r,e[r])))).join("&"):Object.keys(e).map((r=>{const n=e[r];if(null==n)return"";const o=encodeURIComponent(r)+"=",s=t&&t[r];return s?o+encodeURIComponent(s(n)):Array.isArray(n)?n.map((e=>C(e)?o+encodeURIComponent(JSON.stringify(e)):o+encodeURIComponent(e))).join("&"):C(n)?o+encodeURIComponent(JSON.stringify(n)):o+encodeURIComponent(n)})).filter((e=>e)).join("&"):""}function E(e=!1){let t,r=c.proxyUrl;if("string"==typeof e){t=ne(e);const n=N(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw a.warn(l),new o.Z("urlutils:proxy-not-set",l);return t&&se()&&(r=oe(r)),S(r)}function T(e){const t=N(e);let r,n;if(t){const e=A(t.proxyUrl);r=e.path,n=e.query?P(e.query):null}if(r){const t=S(e);e=r+"?"+t.path;const o=j({...n,...t.query});o&&(e=`${e}?${o}`)}return e}const x={path:"",query:""};function A(e){const t=e.indexOf("?");return-1!==t?(x.path=e.slice(0,t),x.query=e.slice(t+1)):(x.path=e,x.query=null),x}function M(e){return(e=ie(e=function(e){return e&&"/"===e[e.length-1]?e:`${e}/`}(e=A(e).path),!0)).toLowerCase()}function $(e){const t={proxyUrl:e.proxyUrl,urlPrefix:M(e.urlPrefix)},r=c.proxyRules,n=t.urlPrefix;let o=r.length;for(let e=0;e<r.length;e++){const t=r[e].urlPrefix;if(0===n.indexOf(t)){if(n.length===t.length)return-1;o=e;break}0===t.indexOf(n)&&(o=e+1)}return r.splice(o,0,t),o}function N(e){const t=c.proxyRules,r=M(e);for(let e=0;e<t.length;e++)if(0===r.indexOf(t[e].urlPrefix))return t[e]}function I(e,t){return e=R(e),t=R(t),ie(e)===ie(t)}function R(e){const t=(e=F(e)).indexOf("/sharing");return t>0?e.substring(0,t):e.replace(/\/+$/,"")}function W(e){const t=t=>null==t||t instanceof RegExp&&t.test(e)||"string"==typeof t&&e.startsWith(t),r=c.interceptors;if(r)for(const e of r)if(Array.isArray(e.urls)){if(e.urls.some(t))return e}else if(t(e.urls))return e;return null}function L(e,t,r=!1){if(!e||!t)return!1;const n=fe(e),o=fe(t);return!(!r&&n.scheme!==o.scheme)&&null!=n.host&&null!=o.host&&n.host.toLowerCase()===o.host.toLowerCase()&&n.port===o.port}function U(e){if("string"==typeof e){if(!H(e))return!0;e=fe(e)}if(L(e,v))return!0;const t=c.trustedServers||[];for(let r=0;r<t.length;r++){const n=J(t[r]);for(let t=0;t<n.length;t++)if(L(e,n[t]))return!0}return!1}function J(e){return w[e]||(re(e)||te(e)?w[e]=[new y(q(e))]:w[e]=[new y(`http://${e}`),new y(`https://${e}`)]),w[e]}function q(e,t=_,r){return te(e)?r&&r.preserveProtocolRelative?e:"http"===v.scheme&&v.authority===B(e).slice(2)?`http:${e}`:`https:${e}`:re(e)?e:(0,i.j0)(D("/"===e[0]?function(e){const t=e.indexOf("//"),r=e.indexOf("/",t+2);return-1===r?e:e.slice(0,r)}(t):t,e))}function Z(e,t=_,r){if(null==e||!H(e))return e;const n=F(e),o=n.toLowerCase(),s=F(t).toLowerCase().replace(/\/+$/,""),i=r?F(r).toLowerCase().replace(/\/+$/,""):null;if(i&&0!==s.indexOf(i))return e;const a=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=a(o,"/",o.indexOf("//")+2),l=-1;for(;o.slice(0,c+1)===s.slice(0,c)+"/"&&(l=c+1,c!==o.length);)c=a(o,"/",c+1);if(-1===l)return e;if(i&&l<i.length)return e;e=n.slice(l);const u=s.slice(l-1).replace(/[^/]+/g,"").length;if(u>0)for(let t=0;t<u;t++)e=`../${e}`;else e=`./${e}`;return e}function F(e){return function(e){const t=c.httpsDomains;if(!function(e){return null!=e&&f.test(e)||"http"===v.scheme&&te(e)}(e))return e;const r=e.indexOf("/",7);let n;if(n=-1===r?e:e.slice(0,r),n=n.toLowerCase().slice(7),p.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===v.scheme&&n===v.authority&&!b.test(e)||(se()&&n===v.authority||t&&t.some((e=>n===e||n.endsWith(`.${e}`)))||se()&&!N(e))&&(e=oe(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=A(e);e=(e=t.path.replace(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=q(e=e.trim()))))}function D(...e){const t=e.filter(i.pC);if(!t||!t.length)return;const r=[];if(H(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return null!=e&&h.test(e)}(t[0])&&(r[0]+="/"),t[0]=e.slice(n+2))}else"/"===t[0][0]&&r.push("");const n=t.reduce(((e,t)=>t?e.concat(t.split("/")):e),[]);for(let e=0;e<n.length;e++){const t=n[e];".."===t&&r.length>0&&".."!==r[r.length-1]?r.pop():(!t&&e===n.length-1||t&&("."!==t||0===r.length))&&r.push(t)}return r.join("/")}function B(e,t=!1){if(null==e||z(e)||K(e))return null;let r=e.indexOf("://");if(-1===r&&te(e))r=2;else{if(-1===r)return null;r+=3}const n=e.indexOf("/",r);return-1!==n&&(e=e.slice(0,n)),t&&(e=ie(e,!0)),e}function H(e){return te(e)||re(e)}function z(e){return null!=e&&"blob:"===e.slice(0,5)}function K(e){return null!=e&&"data:"===e.slice(0,5)}function V(e){const t=Y(e);if(!t||!t.isBase64)return null;const r=atob(t.data),n=new Uint8Array(r.length);for(let e=0;e<r.length;e++)n[e]=r.charCodeAt(e);return n.buffer}function Q(e){return btoa(String.fromCharCode.apply(null,e)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}const G=/^data:(.*?)(;base64)?,(.*)$/;function Y(e){const t=e.match(G);if(!t)return null;const[,r,n,o]=t;return{mediaType:r,isBase64:!!n,data:o}}function X(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}function ee(e,t){(function(e,t){if(!e)return!1;const r=document.createElement("a");if(!("download"in r))return!1;const n=URL.createObjectURL(e);return r.download=t,r.href=n,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n),!0})(e,t)||function(e,t){!!window.navigator.msSaveOrOpenBlob&&window.navigator.msSaveOrOpenBlob(e,t)}(e,t)}function te(e){return null!=e&&"/"===e[0]&&"/"===e[1]}function re(e){return null!=e&&u.test(e)}function ne(e){return null!=e&&d.test(e)||"https"===v.scheme&&te(e)}function oe(e){return te(e)?`https:${e}`:e.replace(f,"https:")}function se(){return"https"===v.scheme}function ie(e,t=!1){return te(e)?e.slice(2):(e=e.replace(u,""),t&&e.length>1&&"/"===e[0]&&"/"===e[1]&&(e=e.slice(2)),e)}function ae(e){let t=0;if(H(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function ce(e,t){if(!e)return"";const r=S(e).path.replace(/\/+$/,""),n=r.substring(r.lastIndexOf("/")+1);if(!t?.length)return n;const o=new RegExp(`.(${t.join("|")})$`,"ig");return n.replace(o,"")}function le(e){return e.replace(/\/+$/,"")}function ue(e,t,r){if(!(t&&r&&e&&H(e)))return e;const n=e.indexOf("//"),o=e.indexOf("/",n+2),s=e.indexOf(":",n+2),i=Math.min(o<0?e.length:o,s<0?e.length:s);return e.slice(n+2,i).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(i)}`}function fe(e){return"string"==typeof e?new y(q(e)):(e.scheme||(e.scheme=v.scheme),e)}function de(e,t){const r=S(e),n=Object.keys(r.query||{});return n.length>0&&t&&t.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${n.join(", ")}.`),r.path}function he(e,t,r){const n=S(e),o=n.query||{};return o[t]=String(r),`${n.path}?${j(o)}`}function pe(e,t){const r=S(e),n=r.query||{};for(const e in t)n[e]=t[e];const o=j(n);return o?`${r.path}?${o}`:r.path}function be(e){if((0,i.Wi)(e))return null;const t=e.match(me);return t?t[2]:null}function ge(e){if((0,i.Wi)(e))return null;const t=e.match(me);return t?{path:t[1],extension:t[2]}:{path:e,extension:null}}const me=/([^.]*)\.([^\/]*)$/},25045:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>y});var n=r(40330),o=r(20102),s=r(91460),i=r(70586),a=r(95330),c=r(94362),l=r(17202);const u={statsWorker:()=>Promise.all([r.e(1400),r.e(1562),r.e(3847),r.e(6841)]).then(r.bind(r,36841)),geometryEngineWorker:()=>Promise.all([r.e(5837),r.e(8227)]).then(r.bind(r,48227)),CSVSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7154)]).then(r.bind(r,27793)),EdgeProcessingWorker:()=>Promise.all([r.e(6481),r.e(212),r.e(2062)]).then(r.bind(r,49594)),ElevationSamplerWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1562),r.e(4807),r.e(6481),r.e(6459),r.e(98)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(4547),r.e(5795),r.e(1400),r.e(1534),r.e(1562),r.e(4599),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(3660)]).then(r.bind(r,65967)),GeoJSONSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7774),r.e(7845)]).then(r.bind(r,97845)),LercWorker:()=>r.e(3027).then(r.bind(r,23027)),MemorySourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7774),r.e(639)]).then(r.bind(r,30639)),PBFDecoderWorker:()=>Promise.all([r.e(1400),r.e(1562),r.e(5886),r.e(1916)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(4547),r.e(4321),r.e(5795),r.e(1400),r.e(1534),r.e(1562),r.e(4599),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4325),r.e(7483)]).then(r.bind(r,37138)),PointCloudWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1562),r.e(9324)]).then(r.bind(r,90447)),RasterWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1562),r.e(8363),r.e(3645),r.e(4370)]).then(r.bind(r,61576)),SceneLayerSnappingSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(6481),r.e(212),r.e(1391)]).then(r.bind(r,73248)),SceneLayerWorker:()=>r.e(1412).then(r.bind(r,31412)),WFSSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7774),r.e(3230)]).then(r.bind(r,43230)),WorkerTileHandler:()=>Promise.all([r.e(4325),r.e(1785),r.e(6810),r.e(3388)]).then(r.bind(r,56456))},{CLOSE:f,ABORT:d,INVOKE:h,RESPONSE:p,OPEN_PORT:b,ON:g}=c.Cs;class m{constructor(e){this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._invoke=e,this._timer=null,this._process=this._process.bind(this)}push(e){e.type===c.Cs.ABORT?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class y{static connect(e){const t=new MessageChannel;let r;r="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const n=new y(t.port1,{channel:t,client:r},(()=>null));return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=n),y.clients.set(n,r),t.port2}static loadWorker(e){const t=u[e];return t?t():Promise.resolve(null)}constructor(e,t,r){this._port=e,this._getNextJob=r,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new m((e=>this._onInvokeMessage(e))),this._client=t.client,this._onMessage=this._onMessage.bind(this),this._channel=t.channel,this._schedule=t.schedule,this._port.addEventListener("message",this._onMessage),this._port.start()}close(){this._post({type:f}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const n=r&&r.signal,s=r&&r.transferList;if(!this._port)return Promise.reject(new o.Z("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const l=(0,c.jt)();return new Promise(((r,o)=>{if((0,a.Hc)(n))return this._processWork(),void o((0,a.zE)());const c=(0,a.fu)(n,(()=>{const e=this._outJobs.get(l);e&&(this._outJobs.delete(l),this._processWork(),(0,i.hw)(e.abortHandle),this._post({type:d,jobId:l}),o((0,a.zE)()))})),u={resolve:r,reject:o,abortHandle:c,debugInfo:e};this._outJobs.set(l,u),this._post({type:h,jobId:l,methodName:e,abortable:null!=n},t,s)}))}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:c.Cs.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),{remove(){r.port1.postMessage({type:c.Cs.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",n)}}}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:b,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=2)return;const e=this._getNextJob();if(!e)return;const{methodName:t,data:r,invokeOptions:n,deferred:o}=e;this.invoke(t,r,n).then((e=>o.resolve(e))).catch((e=>o.reject(e)))}_close(){this._channel&&(this._channel=void 0),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{(0,i.hw)(e.abortHandle),e.reject((0,a.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=this._client=this._schedule=null}_onMessage(e){(0,i.pC)(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,c.QM)(e);if(t)switch(t.type){case p:this._onResponseMessage(t);break;case h:this._invokeQueue.push(t);break;case d:this._onAbortMessage(t);break;case f:this._onCloseMessage();break;case b:this._onOpenPortMessage(t);break;case g:this._onOnMessage(t)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,n=t.get(r);this._invokeQueue.push(e),n&&(n.controller&&n.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&y.clients.get(this)===e&&e.destroy(),y.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n,abortable:o}=e,s=o?new AbortController:null,i=this._inJobs;let l,u=this._client,f=u[t];try{if(!f&&t&&t.includes(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)u=u[e[t]],f=u[e[t+1]]}if("function"!=typeof f)throw new TypeError(`${t} is not a function`);l=f.call(u,n,{client:this,signal:s?s.signal:null})}catch(e){return void this._post({type:p,jobId:r,error:(0,c.AB)(e)})}(0,a.y8)(l)?(i.set(r,{controller:s,promise:l}),l.then((e=>{i.has(r)&&(i.delete(r),this._post({type:p,jobId:r},e))}),(e=>{i.has(r)&&(i.delete(r),(0,a.D_)(e)||this._post({type:p,jobId:r,error:(0,c.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:p,jobId:r},l)}_onOpenPortMessage(e){new y(e.port,{client:this._client},(()=>null))}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),n=(0,s.on)(e.port,"message",(e=>{(0,c.QM)(e)?.type===c.Cs.CLOSE&&(n.remove(),r.remove(),t.close())}))}_onResponseMessage(e){const{jobId:t,error:r,data:n}=e,s=this._outJobs;if(!s.has(t))return;const a=s.get(t);s.delete(t),this._processWork(),(0,i.hw)(a.abortHandle),r?a.reject(o.Z.fromJSON(JSON.parse(r))):a.resolve(n)}_post(e,t,r){return(0,c.oi)(this._port,e,t,r)}}y.kernelInfo={revision:l.$,version:n.i8,buildDate:l.r},y.clients=new Map},94362:(e,t,r)=>{"use strict";r.d(t,{AB:()=>a,Cs:()=>n,QM:()=>l,jt:()=>i,oi:()=>c});var n,o=r(80442);!function(e){e[e.HANDSHAKE=0]="HANDSHAKE",e[e.OPEN=1]="OPEN",e[e.OPENED=2]="OPENED",e[e.RESPONSE=3]="RESPONSE",e[e.INVOKE=4]="INVOKE",e[e.ABORT=5]="ABORT",e[e.CLOSE=6]="CLOSE",e[e.OPEN_PORT=7]="OPEN_PORT",e[e.ON=8]="ON"}(n||(n={}));let s=0;function i(){return s++}function a(e){return e?"string"==typeof e?JSON.stringify({name:"message",message:e}):e.toJSON?JSON.stringify(e):JSON.stringify({name:e.name,message:e.message,details:e.details||{stack:e.stack}}):null}function c(e,t,r,s){if(t.type===n.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==n.INVOKE&&t.type!==n.RESPONSE)return void e.postMessage(t);let i;if(function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(i=u(r.transferList),t.data=r.result):(i=u(s),t.data=r),i){if((0,o.Z)("ff"))for(const r of i)if("byteLength"in r&&r.byteLength>267386880){const r="Worker call with large ArrayBuffer would crash Firefox";switch(t.type){case n.INVOKE:throw r;case n.RESPONSE:return void c(e,{type:n.RESPONSE,jobId:t.jobId,error:a(r)})}}e.postMessage(t,i)}else e.postMessage(t)}function l(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function u(e){if(!e||!e.length)return null;if((0,o.Z)("esri-workers-arraybuffer-transfer"))return e;const t=e.filter((e=>!function(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}(e)));return t.length?t:null}},40330:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>l,Nv:()=>i,i8:()=>s,id:()=>a,qh:()=>c});var n=r(80442),o=r(17452);const s="4.26",i={async request(e,t){const{default:n}=await r.e(3172).then(r.bind(r,3172)),s=e.options,i=s.responseType;s.signal=t?.signal,s.responseType="native"===i||"native-request-init"===i?"native-request-init":i&&["blob","json","text"].includes(i)&&(0,o.oh)(e.url)?.after?i:"array-buffer";const a=await n(e.url,s),c={data:a.data,ssl:a.ssl};switch(a.requestOptions?.responseType){case"native-request-init":return delete c.data.signal,c;case"blob":c.data=await c.data.arrayBuffer();break;case"json":c.data=(new TextEncoder).encode(JSON.stringify(c.data)).buffer;break;case"text":c.data=(new TextEncoder).encode(c.data).buffer}return{result:c,transferList:[c.data]}}};let a;function c(e){a=e}function l(e){const t=a&&a.findCredential(e);return t&&t.token?(0,o.ZN)(e,"token",t.token):e}(0,n.Z)("host-webworker")},17202:(e,t,r)=>{"use strict";r.d(t,{$:()=>o,r:()=>n});const n="20221217",o="3d6e5db13487a1d9a318719338422fe6f1965b63"}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"chunks/"+{9:"3abaa21e87938a93d483",81:"74d86e7e5ec52a2f6018",98:"54266eadd3abaf20c808",212:"f3f2759b39ab76cde66c",223:"acf800382cbcd4875865",247:"9d9e3a38c54c41f7764c",402:"1cbffa96ea6683e5f3ec",540:"96536f507bc6e501a4f7",565:"e967ffca641947212992",576:"5ec4fedbbcbb0053cf74",632:"099765dff2b7e6958d3d",639:"e048641971aef9dd4da9",661:"0419bb1a147a2c464980",690:"ee91401507833875facc",739:"5983c9f28b7f63c7e1e0",759:"13a6431055eaae030cc8",819:"d1ead6e8aa7e8e21fbc6",837:"38d8d7e5ae339230dd99",908:"fb35df950949fa4200c9",911:"2187672a72e776b9b153",1070:"d9bc849d04147471aa31",1073:"7bc7b6cf75771687d81f",1074:"fa059d94d5051ded85b3",1158:"3714482f3a829d122da1",1227:"89003e387684af5ebeac",1391:"d3299b1e1502d8d20eef",1400:"87579d06ffd2a491f7e2",1412:"ff0e678218bbc01bc39f",1421:"6196cfdeb91ceba52af3",1423:"5fa7c3ffdf2782f86dab",1433:"4d5bdf18feeb9c8cb6ff",1534:"933f9b62a3a20e768927",1545:"c2c288d42129354dc218",1562:"a082bd3e6c6cbae3dba4",1612:"8412644b1ae7c03ddf84",1761:"fc197a387187daab1df3",1773:"6ecca49fdba2618fb972",1785:"c815d4e0fa4f3ad201b6",1790:"3a00f94f8f0d49c60969",1916:"bbccf69f4aa1b1761265",1932:"e08dae3eab225eb83e4e",2062:"072f5a672171424668eb",2133:"3c412bbbf65225d1b5a9",2134:"edc08ffed2d5bb161c8d",2422:"2247b07f59959c5e0767",2592:"3a306358d1e76659f4ca",2664:"06ef2a1a43b2b0b66086",2710:"719ee5c4a064ea9bdfcf",2855:"0877bab7c03a1de2e713",3027:"c1ef0d8977c5c19b135f",3055:"a51c2c5d3e7f764f44d5",3172:"52b6711572ac7e058ce6",3230:"e3fd383aee378cbb0dae",3388:"f45ea484e96f44d69b20",3529:"d9a4af329531d6921f8b",3572:"3b689bb038ebc301c3b2",3645:"c9d57014385bff9d0b06",3660:"7f3ac66cee7e68ce945e",3668:"cc5f2321c2d4ada25f00",3743:"3c505cf66d538f84ce4b",3810:"6b589f47cb4731df1639",3847:"937a39fa2b24ab80fd13",3852:"b71a0a8a2f446c671161",3929:"ccbd36c83dc087b07f1c",3992:"4a2b4574b87be7b98481",4046:"34f7836121679aa03358",4166:"5f61db625e7f836f96c3",4242:"25f51196669db91dc5fc",4268:"78355fac58191d886786",4321:"9b4bbf3dd916f36bc1c7",4325:"e95e449c3fab1a03498c",4358:"b14fd92aa29a1f554e59",4370:"3ebb0a2247cc3e33b764",4371:"4b56a15d904a64747e64",4475:"d0411fe75475c00bd04c",4499:"423955dd5f10692daf3b",4547:"f2e5c6b7894793b8bd7d",4599:"bb8a670d4a1eaa458bef",4695:"247bc54f3553e91eee66",4807:"1a78eefaa1bd6431f977",5004:"faea681c279486b7a5e7",5015:"5ef9489ce7e0425148db",5132:"3326536d183a858a2a4d",5159:"ee50d5d0afe9bdccc84d",5179:"700373e83c24e24f7772",5235:"7227df502cacbb6d0529",5329:"0e21e5b4d065567a6a91",5468:"7c6427767c26ef2bdf2c",5546:"52d1496c5b224690da1c",5587:"c11d857dca43de2229fc",5590:"f9d01ca95849d589b00b",5732:"83f7e22a12d90ef93e62",5795:"13da7d992cbeb39cc2c7",5837:"ed59ec7a8688437ebdbc",5853:"a7bd0f0fe942973e9a22",5886:"c010210770a67a5a0429",5935:"60a08ce29d09cb07ef06",6233:"4cb64ccb5fba126f9a66",6237:"1aaf284ce0ee24053bd1",6261:"43b2e17ffd5ffcbcf269",6459:"296cf6c6f3f48665a93e",6481:"2e3a4fc59789013185f4",6502:"78ff7a0a6422df4d9b4c",6584:"4c0d7a074083aa9614bb",6636:"e192b7e75931b218fe24",6710:"d828a0656e7351a74fc4",6748:"7bef95b168303bdc4bf1",6774:"129700cbb943494c18fb",6785:"634e7957696f72c8b8b1",6794:"39ba00c44253a590a717",6810:"9bbcf17003f5650c4d96",6841:"31de71018575457155e5",6904:"f27d1065876097390d7e",6925:"bad2ec88d0ed090daf56",7035:"46fbfb2f815f4a543d5f",7066:"e9dd3a5c61bae6235f8e",7126:"21396e5788a07a159d77",7154:"75ce17cf13aab0440572",7202:"e9c81eee503c1b112bad",7269:"02497309e0f848bf2879",7277:"ad65c24558098f21bbf3",7374:"96e2589668159601db7e",7386:"eed89430c7bece3e752a",7476:"7a54c711fea397105ebf",7483:"7ce1b3056f392cd10031",7541:"190c9feab5f80e586d84",7663:"8273f5059682a0ed5541",7774:"1f742c3b11c76814fa4d",7845:"f8ab6e354834b9c0e857",7873:"21f7d3400c070aa45596",8092:"f1b26b73101210b8f29c",8096:"22a990a8d4d4587866a5",8227:"ee04b1c0c42cb1b18b24",8244:"be3a99c767bf3e613fc5",8363:"ff7c1f6450c50422c086",8383:"1d9f7e62d1ef9471c045",8636:"e0b40a4bd4b096db7a33",8691:"8fbb25f0c9fa3f023853",8758:"803492088780e18de801",8828:"2eb2d49c549e53934b8b",8833:"ae2c7dcdf458043f4fdf",8880:"d58d6c656066e44b9d55",8882:"9c6d64dc3fc89edabac4",9070:"038dc3f9ef06ef3c960c",9169:"ac4c10194e904840a4ad",9230:"df8963df0766e26d20a0",9238:"f05b5b66d4d59b0c3636",9243:"d15dd77b6ac668647ab6",9291:"179efcf889111d2576c5",9296:"f86ee9fd7ac176f86796",9300:"ae725a187df8ce45adb2",9324:"b7922573eda9a43136e3",9513:"6ad6dcb4961d4854852a",9675:"078a0b134210167b629d",9771:"8914f5e72a51636a59d3",9777:"83c7c2500839c79ae9d4",9880:"1b5bdd80db9a1a410ff8",9884:"356db8b8297282c77291",9903:"a5b2db394447aac6d970",9904:"2163b9ee4d639d5ed6f3"}[e]+".js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{var e={134:1};r.f.i=(t,n)=>{e[t]||importScripts(r.p+r.u(t))};var t=self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[],n=t.push.bind(t);t.push=t=>{var[o,s,i]=t;for(var a in s)r.o(s,a)&&(r.m[a]=s[a]);for(i&&i(r);o.length;)e[o.pop()]=1;n(t)}})(),r(88277);var n=r(25045);RemoteClient=n})();
1
+ var RemoteClient;(()=>{var e={88277:(e,t,r)=>{r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},68773:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s}),r(80442);var n=r(78286),o=r(17202);const s={analysisTheme:{accentColor:[255,128,0],textColor:"white"},apiKey:void 0,applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",portalUrl:"https://www.arcgis.com",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&((0,n.RH)(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="4.26.0";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${o.r}/assets`}s.defaultAssetsPath=s.assetsPath}},20102:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(22974),o=r(92604),s=r(58896);class i extends s.Z{constructor(e,t,r){if(super(e,t,r),!(this instanceof i))return new i(e,t,r)}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.d9)(t)}catch(e){return"[object]"}})))}}catch(e){throw o.Z.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new i(e.name,e.message,e.details)}}i.prototype.type="error"},92604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(68773),o=(r(80442),r(70586)),s=r(19153);const i={info:0,warn:1,error:2,none:3};class a{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,a._loggers[this.module]=this;const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=a.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){const e=this;return{loggedMessages:e._loggedMessages,clearLoggedWarnings:()=>e._loggedMessages.warn.clear()}}static get testSingleton(){return{resetLoggers(e={}){const t=a._loggers;return a._loggers=e,t},set throttlingDisabled(e){a._throttlingDisabled=e}}}static getLogger(e){let t=a._loggers[e];return t||(t=new a({module:e})),t}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!a._throttlingDisabled){const n=this._argsToKey(r),o=this._loggedMessages[e].get(n);if("once"===t&&null!=o||"oncePerTick"===t&&o&&o>=a._tickCounter)return;this._loggedMessages[e].set(n,a._tickCounter),a._scheduleTickCounterIncrement()}for(const t of n.Z.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;(0,o.pC)(r);){const t=r[e];if((0,o.pC)(t))return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",this._consoleWriter)}_consoleWriter(e,t,...r){console[e](`[${t}]`,...r)}_matchLevel(e){const t=n.Z.log.level?n.Z.log.level:"warn";return i[this._parentWithMember("level",t)]<=i[e]}_argsToKey(...e){return(0,s.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){a._tickCounterScheduled||(a._tickCounterScheduled=!0,Promise.resolve().then((()=>{a._tickCounter++,a._tickCounterScheduled=!1})))}}a._loggers={},a._tickCounter=0,a._tickCounterScheduled=!1,a._throttlingDisabled=!1},58896:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(78286);class o{constructor(e,t,r){this.name=e,this.details=r,this instanceof o&&(this.message=(t&&function(e,t){return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,((e,r)=>{if(""===r)return"$";const o=(0,n.hS)(r,t)??"";if(void 0===o)throw new Error(`could not find key "${r}" in template`);return o.toString()}))}(t,r))??"")}toString(){return"["+this.name+"]: "+this.message}}},77734:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=e??Math.random()*n._m}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}n._m=2147483647,n._a=48271,n._c=0},67676:(e,t,r)=>{"use strict";r.d(t,{FY:()=>m,Od:()=>y,SO:()=>d,Vx:()=>i,a9:()=>u,cq:()=>p,e$:()=>b,e5:()=>a,fS:()=>s,w6:()=>f,zG:()=>c});var n=r(70586),o=r(77734);function s(e,t,r){if((0,n.Wi)(e)&&(0,n.Wi)(t))return!0;if((0,n.Wi)(e)||(0,n.Wi)(t)||e.length!==t.length)return!1;if(r){for(let n=0;n<e.length;n++)if(!r(e[n],t[n]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function i(e,t){let r=e.length!==t.length;r&&(e.length=t.length);for(let n=0;n<t.length;++n)e[n]!==t[n]&&(e[n]=t[n],r=!0);return r}function a(e,t,r){let n,o;return r?(n=t.filter((t=>!e.some((e=>r(e,t))))),o=e.filter((e=>!t.some((t=>r(t,e)))))):(n=t.filter((t=>!e.includes(t))),o=e.filter((e=>!t.includes(e)))),{added:n,removed:o}}function c(e){return e&&"number"==typeof e.length}const l=!!Array.prototype.fill;function u(e,t){if(l)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function f(e,t){void 0===t&&(t=e,e=0);const r=new Array(t-e);for(let n=e;n<t;n++)r[n-e]=n;return r}class d{constructor(){this.last=0}}const h=new d;function p(e,t,r,n){n=n||h;const o=Math.max(0,n.last-10);for(let s=o;s<r;++s)if(e[s]===t)return n.last=s,s;const s=Math.min(o,r);for(let r=0;r<s;++r)if(e[r]===t)return n.last=r,r;return-1}function b(e,t,r,n){const o=r??e.length,s=p(e,t,o,n);if(-1!==s)return e[s]=e[o-1],null==r&&e.pop(),t}const g=new Set;function m(e,t,r=e.length,n=t.length,o,s){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);o=o||h;const i=Math.max(0,o.last-10);for(let t=i;t<r;++t)if(g.has(e[t])&&(s&&s.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;for(let t=0;t<i;++t)if(g.has(e[t])&&(s&&s.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;return g.clear(),r}function y(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}new o.Z},60235:(e,t,r)=>{"use strict";r.d(t,{Mr:()=>i,x9:()=>a});var n=r(80442);const o=new Set;function s(e,t,r=!1){r&&o.has(t)||(r&&o.add(t),e.warn(`🛑 DEPRECATED - ${t}`))}function i(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;a(e,"Property: "+(n?n+"::":"")+t,r)}}function a(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{replacement:n,version:o,see:i,warnOnce:a}=r;let c=t;n&&(c+=`\n\t🛠️ Replacement: ${n}`),o&&(c+=`\n\t⚙️ Version: ${o}`),i&&(c+=`\n\t🔗 See ${i} for more details.`),s(e,c,a)}}},91460:(e,t,r)=>{"use strict";function n(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function o(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("on"in e)return e.on(t,r);if(Array.isArray(t)){const n=t.slice();for(const t of n)e.addEventListener(t,r);return{remove(){for(const t of n)e.removeEventListener(t,r)}}}return e.addEventListener(t,r),{remove(){e.removeEventListener(t,r)}}}function s(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const s=o(e,t,(t=>{s.remove(),r.call(e,t)}));return{remove(){s.remove()}}}r.d(t,{IH:()=>s,on:()=>o,vT:()=>n})},80442:(e,t,r)=>{"use strict";let n;function o(e){return"function"==typeof n[e]?n[e]=n[e](globalThis):n[e]}r.d(t,{Z:()=>o}),n=globalThis.dojoConfig?.has||globalThis.esriConfig?.has?{...globalThis.dojoConfig?.has,...globalThis.esriConfig?.has}:{},o.add=(e,t,r,s)=>((s||void 0===n[e])&&(n[e]=t),r&&o(e)),o.cache=n,o.add("esri-deprecation-warnings",!0),(()=>{o.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(o.add("host-browser",e),o.add("host-node","object"==typeof globalThis.process&&globalThis.process.versions?.node&&globalThis.process.versions.v8),o.add("dom",e),o("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(o.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),o.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),o.add("khtml",r.includes("Konqueror")?n:void 0),o.add("edge",parseFloat(t.split("Edge/")[1])||void 0),o.add("opr",parseFloat(t.split("OPR/")[1])||void 0),o.add("webkit",!o("wp")&&!o("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),o.add("chrome",!o("edge")&&!o("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),o.add("android",!o("wp")&&parseFloat(t.split("Android ")[1])||void 0),o.add("safari",!r.includes("Safari")||o("wp")||o("chrome")||o("android")||o("edge")||o("opr")?void 0:parseFloat(r.split("Version/")[1])),o.add("mac",r.includes("Macintosh")),!o("wp")&&t.match(/(iPhone|iPod|iPad)/)){const e=RegExp.$1.replace(/P/,"p"),r=t.match(/OS ([\d_]+)/)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replace(/_/g,""));o.add(e,n),o.add("ios",n)}o("webkit")||(!t.includes("Gecko")||o("wp")||o("khtml")||o("edge")||o.add("mozilla",n),o("mozilla")&&o.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&o.add("esri-mobile",t),r&&o.add("esri-iPhone",r),o.add("esri-geolocation",!!navigator.geolocation)}o.add("esri-wasm","WebAssembly"in globalThis),o.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),o.add("wasm-simd",(()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])))),o.add("esri-atomics","Atomics"in globalThis),o.add("esri-workers","Worker"in globalThis),o.add("web-feat:cache","caches"in globalThis),o.add("esri-workers-arraybuffer-transfer",!o("safari")||Number(o("safari"))>=12),o.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),o.add("featurelayer-simplify-payload-size-factors",[1,1,4]),o.add("featurelayer-snapshot-enabled",!0),o.add("featurelayer-snapshot-point-min-threshold",8e4),o.add("featurelayer-snapshot-point-max-threshold",4e5),o.add("featurelayer-snapshot-point-coverage",.1),o.add("featurelayer-advanced-symbols",!1),o.add("featurelayer-pbf",!0),o.add("featurelayer-pbf-statistics",!1),o.add("feature-layers-workers",!0),o.add("feature-polyline-generalization-factor",1),o.add("mapview-transitions-duration",200),o.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),o.add("mapserver-pbf-version-support",10.81),o.add("mapimagelayer-popup-identify-max-tolerance",20),o.add("heatmap-allow-raster-fallback",!0),o.add("heatmap-force-raster",!1),o("host-webworker")||o("host-browser")&&(o.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),o.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{o.add("esri-image-decode",!0,!0,!0)})).catch((()=>{o.add("esri-image-decode",!1,!0,!0)}))}return!1})),o.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},22974:(e,t,r)=>{"use strict";r.d(t,{Vo:()=>c,d9:()=>a,fS:()=>p,y7:()=>b,yd:()=>i});var n=r(67676),o=r(70586),s=r(1533);function i(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&i(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function a(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=h(e);if((0,o.pC)(t))return t;if(l(e))return e.clone();if(u(e))return e.map(a);if(f(e))return e.clone();const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=a(e[t]);return r}function c(e){if(!e||"object"!=typeof e||"function"==typeof e||"HTMLElement"in globalThis&&e instanceof HTMLElement)return e;const t=h(e);if((0,o.pC)(t))return t;if(u(e)){let t=!0;const r=e.map((e=>{const r=c(e);return null!=e&&null==r&&(t=!1),r}));return t?r:null}if(l(e))return e.clone();if(!f(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],o=c(n);if(null!=n&&null==o)return null;t[r]=o}return t}return null}function l(e){return"function"==typeof e.clone}function u(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function f(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function d(e){if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function h(e){if((0,s.W0)(e)||(0,s.lq)(e)||(0,s.KZ)(e)||(0,s.z3)(e)||(0,s.Uc)(e)||(0,s.Hx)(e)||(0,s.ZY)(e)||(0,s.xZ)(e)||(0,s.fS)(e))return e.slice();if(e instanceof Date)return new Date(e.getTime());if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;for(const[r,n]of e)t.set(r,a(n));return t}if(e instanceof Set){const t=new Set;for(const r of e)t.add(a(r));return t}return null}function p(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof(e||{}).getTime&&"function"==typeof(t||{}).getTime&&e.getTime()===t.getTime()||!1}function b(e,t){return e===t||(null==e||"string"==typeof e?e===t:"number"==typeof e?e===t||"number"==typeof t&&isNaN(e)&&isNaN(t):e instanceof Date?t instanceof Date&&e.getTime()===t.getTime():Array.isArray(e)?Array.isArray(t)&&(0,n.fS)(e,t):e instanceof Set?t instanceof Set&&function(e,t){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}(e,t):e instanceof Map?t instanceof Map&&function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e){const e=t.get(r);if(e!==n||void 0===e&&!t.has(r))return!1}return!0}(e,t):!!d(e)&&d(t)&&function(e,t){if(null===e||null===t)return!1;const r=Object.keys(e);if(null===t||Object.keys(t).length!==r.length)return!1;for(const n of r)if(e[n]!==t[n]||!Object.prototype.hasOwnProperty.call(t,n))return!1;return!0}(e,t))}},70586:(e,t,r)=>{"use strict";function n(e){return null!=e}function o(e){return null==e}function s(e,t){return n(e)?t(e):null}function i(e){return e}function a(e,t){return c(e,t),e}function c(e,t){if(o(e))throw new Error(t??"value is None")}function l(e,t){return n(e)?e:"function"==typeof t?t():t}function u(e,t){return n(e)?e:t}function f(e){return n(e)&&e.destroy(),null}function d(e){return n(e)&&e.dispose(),null}function h(e){return n(e)&&e.remove(),null}function p(e){return n(e)&&e.abort(),null}function b(e){return n(e)&&e.release(),null}function g(e,t,r){return n(e)&&n(t)?n(r)?r(e,t):e.equals(t):e===t}function m(e){return null}function y(e,t){const r=new Array;for(const n of e)r.push(v(n,null,t));return r}function w(e,t){for(const r of e)s(r,t)}function v(e,t,r){return n(e)?r(e):t}function _(e){return e.filter((e=>n(e)))}function O(e,...t){let r=e;for(let e=0;e<t.length&&r;++e)r=r[t[e]];return r}function k(e){return e}r.d(t,{Fd:()=>y,IM:()=>p,JR:()=>w,M2:()=>d,O3:()=>c,Pt:()=>l,R2:()=>v,RY:()=>b,SC:()=>f,U2:()=>O,Wg:()=>i,Wi:()=>o,_W:()=>g,hw:()=>h,j0:()=>k,lV:()=>_,pC:()=>n,s3:()=>a,wN:()=>m,yl:()=>u,yw:()=>s})},78286:(e,t,r)=>{"use strict";r.d(t,{RB:()=>i,RH:()=>o,hS:()=>s});var n=r(22974);function o(e,t,r=!1){return c(e,t,r)}function s(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function i(e,t,r){const n=e.split("."),o=n.pop(),s=a(n,!0,r);s&&o&&(s[o]=t)}function a(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function c(e,t,r){return t?Object.keys(t).reduce(((e,o)=>{let s=e[o],i=t[o];return s===i?e:void 0===s?(e[o]=(0,n.d9)(i),e):(Array.isArray(i)||Array.isArray(e)?(s=s?Array.isArray(s)?e[o]=s.concat():e[o]=[s]:e[o]=[],i&&(Array.isArray(i)||(i=[i]),r?i.forEach((e=>{s.includes(e)||s.push(e)})):e[o]=i.concat())):i&&"object"==typeof i?e[o]=c(s,i,r):e.hasOwnProperty(o)&&!t.hasOwnProperty(o)||(e[o]=i),e)}),e||{}):e}},95330:(e,t,r)=>{"use strict";r.d(t,{e4:()=>O,zE:()=>c,dD:()=>w,hh:()=>C,Ds:()=>P,as:()=>v,WW:()=>_,R8:()=>y,D_:()=>m,Hc:()=>f,y8:()=>k,fu:()=>p,$F:()=>b,r9:()=>d,k_:()=>l,H9:()=>h,Yn:()=>j,gx:()=>S,Hl:()=>g});const n=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return{remove:()=>o.clearTimeout(r)}}});var o;r(60235);var s=r(20102),i=r(91460),a=(r(92604),r(70586));function c(e="Aborted"){return new s.Z("AbortError",e)}function l(e,t="Aborted"){if(f(e))throw c(t)}function u(e){return(0,a.pC)(e)?"aborted"in e?e:e.signal:e}function f(e){const t=u(e);return(0,a.pC)(t)&&t.aborted}function d(e){if(m(e))throw e}function h(e){if(!m(e))throw e}function p(e,t){const r=u(e);if(!(0,a.Wi)(r)){if(!r.aborted)return(0,i.IH)(r,"abort",(()=>t()));t()}}function b(e,t){const r=u(e);if(!(0,a.Wi)(r))return l(r),(0,i.IH)(r,"abort",(()=>t(c())))}function g(e,t){const r=u(t);return(0,a.Wi)(r)?e:new Promise(((r,n)=>{let o=p(t,(()=>n(c())));const s=()=>o=(0,a.hw)(o);e.then(s,s),e.then(r,n)}))}function m(e){return"AbortError"===e?.name}async function y(e){try{return await e}catch(e){if(!m(e))throw e;return}}function w(){let e=null;const t=new Promise(((t,r)=>{e={promise:void 0,resolve:t,reject:r}}));return e.promise=t,e}async function v(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e),r=t.map((t=>e[t])),n=await v(r),o={};return t.map(((e,t)=>o[e]=n[t])),o}const t=e;return new Promise((e=>{const r=[];let n=t.length;0===n&&e(r),t.forEach((t=>{const o={promise:t||Promise.resolve(t)};r.push(o),o.promise.then((e=>{o.value=e})).catch((e=>{o.error=e})).then((()=>{--n,0===n&&e(r)}))}))}))}async function _(e){return(await v(e)).filter((e=>!!e.value)).map((e=>e.value))}function O(e,t,r){const n=new AbortController;return p(r,(()=>n.abort())),new Promise(((r,o)=>{let s=setTimeout((()=>{s=0,r(t)}),e);p(n,(()=>{s&&(clearTimeout(s),o(c()))}))}))}function k(e){return e&&"function"==typeof e.then}function S(e){return k(e)?e:Promise.resolve(e)}function P(e,t=-1){let r,n,o,s,i=null;const l=(...u)=>{if(r){n=u,s&&s.reject(c()),s=w();const e=(0,a.j0)(s.promise);if(i){const e=i;i=null,e.abort()}return e}if(o=s||w(),s=null,t>0){const n=new AbortController;r=S(e(...u,n.signal));const o=r;O(t).then((()=>{r===o&&(s?n.abort():i=n)}))}else r=1,r=S(e(...u));const f=()=>{const e=n;n=o=r=i=null,null!=e&&l(...e)},d=r,h=o;return d.then(f,f),d.then(h.resolve,h.reject),(0,a.j0)(h.promise)};return l}function C(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n})),o=t=>{e(t)};return o.resolve=t=>e(t),o.reject=e=>t(e),o.timeout=(e,t)=>n.setTimeout((()=>o.reject(t)),e),o.promise=r,o}async function j(e){await Promise.resolve(),l(e)}},19153:(e,t,r)=>{"use strict";r.d(t,{Cb:()=>l,Qs:()=>a,gx:()=>i,hP:()=>c});var n=r(78286);const o=/\{([^\}]+)\}/g;function s(e){return e??""}function i(e,t){return e.replace(o,"object"==typeof t?(e,r)=>s((0,n.hS)(r,t)):(e,r)=>s(t(r)))}function a(e,t){return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&t.includes(e)?e:`\\${e}`))}function c(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}function l(e){return(new DOMParser).parseFromString(e||"","text/html").body.innerText||""}},1533:(e,t,r)=>{"use strict";function n(e){return e instanceof ArrayBuffer}function o(e){return e&&e.constructor&&"Int8Array"===e.constructor.name}function s(e){return e&&e.constructor&&"Uint8Array"===e.constructor.name}function i(e){return e&&e.constructor&&"Uint8ClampedArray"===e.constructor.name}function a(e){return e&&e.constructor&&"Int16Array"===e.constructor.name}function c(e){return e&&e.constructor&&"Uint16Array"===e.constructor.name}function l(e){return e&&e.constructor&&"Int32Array"===e.constructor.name}function u(e){return e&&e.constructor&&"Uint32Array"===e.constructor.name}function f(e){return e&&e.constructor&&"Float32Array"===e.constructor.name}function d(e){return e&&e.constructor&&"Float64Array"===e.constructor.name}r.d(t,{DB:()=>h,Hx:()=>l,KZ:()=>i,Uc:()=>c,W0:()=>o,ZY:()=>u,eP:()=>n,fS:()=>d,lq:()=>s,xZ:()=>f,z3:()=>a});const h=1024},17452:(e,t,r)=>{"use strict";r.d(t,{$U:()=>ne,AH:()=>V,B7:()=>j,D6:()=>L,Fv:()=>F,HK:()=>K,Hu:()=>de,Ie:()=>ue,L:()=>k,Ml:()=>be,P$:()=>B,PF:()=>Z,Qj:()=>le,R9:()=>y,TI:()=>O,YP:()=>H,Yd:()=>ae,ZN:()=>he,_l:()=>X,b7:()=>E,ed:()=>N,fZ:()=>ge,fl:()=>pe,hF:()=>q,hO:()=>oe,io:()=>ee,jc:()=>z,kl:()=>U,mN:()=>S,oC:()=>te,oh:()=>W,qg:()=>T,rS:()=>Q,sJ:()=>Y,tD:()=>$,tm:()=>I,u0:()=>P,v_:()=>D,vt:()=>ce});var n=r(68773),o=r(20102),s=r(92604),i=r(70586);const a=s.Z.getLogger("esri.core.urlUtils"),c=n.Z.request,l="esri/config: esriConfig.request.proxyUrl is not set.",u=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,f=/^\s*http:/i,d=/^\s*https:/i,h=/^\s*file:/i,p=/:\d+$/,b=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,g=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),m=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class y{constructor(e=""){this.uri=e,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let t=(0,i.j0)(this.uri.match(g));this.scheme=t[2]||(t[1]?"":null),this.authority=t[4]||(t[3]?"":null),this.path=t[5],this.query=t[7]||(t[6]?"":null),this.fragment=t[9]||(t[8]?"":null),null!=this.authority&&(t=(0,i.j0)(this.authority.match(m)),this.user=t[3]||null,this.password=t[4]||null,this.host=t[6]||t[7],this.port=t[9]||null)}toString(){return this.uri}}const w={};let v=new y(n.Z.applicationUrl);let _=function(){const e=(0,i.j0)(v.path),t=e.substring(0,e.lastIndexOf(e.split("/")[e.split("/").length-1]));return`${v.scheme}://${v.host}${null!=v.port?`:${v.port}`:""}${t}`}();const O=()=>v,k=()=>_;function S(e){if(!e)return null;const t={path:null,query:null},r=new y(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.substring(0,n),t.query=P(r.query)),r.fragment&&(t.hash=r.fragment,null===r.query&&(t.path=t.path.substring(0,t.path.length-(r.fragment.length+1)))),t}function P(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,o;t<0?(n=decodeURIComponent(e),o=""):(n=decodeURIComponent(e.slice(0,t)),o=decodeURIComponent(e.slice(t+1)));let s=r[n];"string"==typeof s&&(s=r[n]=[s]),Array.isArray(s)?s.push(o):r[n]=o}return r}function C(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}function j(e,t){return e?t&&"function"==typeof t?Object.keys(e).map((r=>encodeURIComponent(r)+"="+encodeURIComponent(t(r,e[r])))).join("&"):Object.keys(e).map((r=>{const n=e[r];if(null==n)return"";const o=encodeURIComponent(r)+"=",s=t&&t[r];return s?o+encodeURIComponent(s(n)):Array.isArray(n)?n.map((e=>C(e)?o+encodeURIComponent(JSON.stringify(e)):o+encodeURIComponent(e))).join("&"):C(n)?o+encodeURIComponent(JSON.stringify(n)):o+encodeURIComponent(n)})).filter((e=>e)).join("&"):""}function E(e=!1){let t,r=c.proxyUrl;if("string"==typeof e){t=ne(e);const n=N(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw a.warn(l),new o.Z("urlutils:proxy-not-set",l);return t&&se()&&(r=oe(r)),S(r)}function T(e){const t=N(e);let r,n;if(t){const e=A(t.proxyUrl);r=e.path,n=e.query?P(e.query):null}if(r){const t=S(e);e=r+"?"+t.path;const o=j({...n,...t.query});o&&(e=`${e}?${o}`)}return e}const x={path:"",query:""};function A(e){const t=e.indexOf("?");return-1!==t?(x.path=e.slice(0,t),x.query=e.slice(t+1)):(x.path=e,x.query=null),x}function M(e){return(e=ie(e=function(e){return e&&"/"===e[e.length-1]?e:`${e}/`}(e=A(e).path),!0)).toLowerCase()}function $(e){const t={proxyUrl:e.proxyUrl,urlPrefix:M(e.urlPrefix)},r=c.proxyRules,n=t.urlPrefix;let o=r.length;for(let e=0;e<r.length;e++){const t=r[e].urlPrefix;if(0===n.indexOf(t)){if(n.length===t.length)return-1;o=e;break}0===t.indexOf(n)&&(o=e+1)}return r.splice(o,0,t),o}function N(e){const t=c.proxyRules,r=M(e);for(let e=0;e<t.length;e++)if(0===r.indexOf(t[e].urlPrefix))return t[e]}function I(e,t){return e=R(e),t=R(t),ie(e)===ie(t)}function R(e){const t=(e=F(e)).indexOf("/sharing");return t>0?e.substring(0,t):e.replace(/\/+$/,"")}function W(e){const t=t=>null==t||t instanceof RegExp&&t.test(e)||"string"==typeof t&&e.startsWith(t),r=c.interceptors;if(r)for(const e of r)if(Array.isArray(e.urls)){if(e.urls.some(t))return e}else if(t(e.urls))return e;return null}function L(e,t,r=!1){if(!e||!t)return!1;const n=fe(e),o=fe(t);return!(!r&&n.scheme!==o.scheme)&&null!=n.host&&null!=o.host&&n.host.toLowerCase()===o.host.toLowerCase()&&n.port===o.port}function U(e){if("string"==typeof e){if(!H(e))return!0;e=fe(e)}if(L(e,v))return!0;const t=c.trustedServers||[];for(let r=0;r<t.length;r++){const n=J(t[r]);for(let t=0;t<n.length;t++)if(L(e,n[t]))return!0}return!1}function J(e){return w[e]||(re(e)||te(e)?w[e]=[new y(q(e))]:w[e]=[new y(`http://${e}`),new y(`https://${e}`)]),w[e]}function q(e,t=_,r){return te(e)?r&&r.preserveProtocolRelative?e:"http"===v.scheme&&v.authority===B(e).slice(2)?`http:${e}`:`https:${e}`:re(e)?e:(0,i.j0)(D("/"===e[0]?function(e){const t=e.indexOf("//"),r=e.indexOf("/",t+2);return-1===r?e:e.slice(0,r)}(t):t,e))}function Z(e,t=_,r){if(null==e||!H(e))return e;const n=F(e),o=n.toLowerCase(),s=F(t).toLowerCase().replace(/\/+$/,""),i=r?F(r).toLowerCase().replace(/\/+$/,""):null;if(i&&0!==s.indexOf(i))return e;const a=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=a(o,"/",o.indexOf("//")+2),l=-1;for(;o.slice(0,c+1)===s.slice(0,c)+"/"&&(l=c+1,c!==o.length);)c=a(o,"/",c+1);if(-1===l)return e;if(i&&l<i.length)return e;e=n.slice(l);const u=s.slice(l-1).replace(/[^/]+/g,"").length;if(u>0)for(let t=0;t<u;t++)e=`../${e}`;else e=`./${e}`;return e}function F(e){return function(e){const t=c.httpsDomains;if(!function(e){return null!=e&&f.test(e)||"http"===v.scheme&&te(e)}(e))return e;const r=e.indexOf("/",7);let n;if(n=-1===r?e:e.slice(0,r),n=n.toLowerCase().slice(7),p.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===v.scheme&&n===v.authority&&!b.test(e)||(se()&&n===v.authority||t&&t.some((e=>n===e||n.endsWith(`.${e}`)))||se()&&!N(e))&&(e=oe(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=A(e);e=(e=t.path.replace(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=q(e=e.trim()))))}function D(...e){const t=e.filter(i.pC);if(!t||!t.length)return;const r=[];if(H(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return null!=e&&h.test(e)}(t[0])&&(r[0]+="/"),t[0]=e.slice(n+2))}else"/"===t[0][0]&&r.push("");const n=t.reduce(((e,t)=>t?e.concat(t.split("/")):e),[]);for(let e=0;e<n.length;e++){const t=n[e];".."===t&&r.length>0&&".."!==r[r.length-1]?r.pop():(!t&&e===n.length-1||t&&("."!==t||0===r.length))&&r.push(t)}return r.join("/")}function B(e,t=!1){if(null==e||z(e)||K(e))return null;let r=e.indexOf("://");if(-1===r&&te(e))r=2;else{if(-1===r)return null;r+=3}const n=e.indexOf("/",r);return-1!==n&&(e=e.slice(0,n)),t&&(e=ie(e,!0)),e}function H(e){return te(e)||re(e)}function z(e){return null!=e&&"blob:"===e.slice(0,5)}function K(e){return null!=e&&"data:"===e.slice(0,5)}function V(e){const t=Y(e);if(!t||!t.isBase64)return null;const r=atob(t.data),n=new Uint8Array(r.length);for(let e=0;e<r.length;e++)n[e]=r.charCodeAt(e);return n.buffer}function Q(e){return btoa(String.fromCharCode.apply(null,e)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}const G=/^data:(.*?)(;base64)?,(.*)$/;function Y(e){const t=e.match(G);if(!t)return null;const[,r,n,o]=t;return{mediaType:r,isBase64:!!n,data:o}}function X(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}function ee(e,t){(function(e,t){if(!e)return!1;const r=document.createElement("a");if(!("download"in r))return!1;const n=URL.createObjectURL(e);return r.download=t,r.href=n,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n),!0})(e,t)||function(e,t){!!window.navigator.msSaveOrOpenBlob&&window.navigator.msSaveOrOpenBlob(e,t)}(e,t)}function te(e){return null!=e&&"/"===e[0]&&"/"===e[1]}function re(e){return null!=e&&u.test(e)}function ne(e){return null!=e&&d.test(e)||"https"===v.scheme&&te(e)}function oe(e){return te(e)?`https:${e}`:e.replace(f,"https:")}function se(){return"https"===v.scheme}function ie(e,t=!1){return te(e)?e.slice(2):(e=e.replace(u,""),t&&e.length>1&&"/"===e[0]&&"/"===e[1]&&(e=e.slice(2)),e)}function ae(e){let t=0;if(H(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function ce(e,t){if(!e)return"";const r=S(e).path.replace(/\/+$/,""),n=r.substring(r.lastIndexOf("/")+1);if(!t?.length)return n;const o=new RegExp(`.(${t.join("|")})$`,"ig");return n.replace(o,"")}function le(e){return e.replace(/\/+$/,"")}function ue(e,t,r){if(!(t&&r&&e&&H(e)))return e;const n=e.indexOf("//"),o=e.indexOf("/",n+2),s=e.indexOf(":",n+2),i=Math.min(o<0?e.length:o,s<0?e.length:s);return e.slice(n+2,i).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(i)}`}function fe(e){return"string"==typeof e?new y(q(e)):(e.scheme||(e.scheme=v.scheme),e)}function de(e,t){const r=S(e),n=Object.keys(r.query||{});return n.length>0&&t&&t.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${n.join(", ")}.`),r.path}function he(e,t,r){const n=S(e),o=n.query||{};return o[t]=String(r),`${n.path}?${j(o)}`}function pe(e,t){const r=S(e),n=r.query||{};for(const e in t)n[e]=t[e];const o=j(n);return o?`${r.path}?${o}`:r.path}function be(e){if((0,i.Wi)(e))return null;const t=e.match(me);return t?t[2]:null}function ge(e){if((0,i.Wi)(e))return null;const t=e.match(me);return t?{path:t[1],extension:t[2]}:{path:e,extension:null}}const me=/([^.]*)\.([^\/]*)$/},25045:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>y});var n=r(40330),o=r(20102),s=r(91460),i=r(70586),a=r(95330),c=r(94362),l=r(17202);const u={statsWorker:()=>Promise.all([r.e(1400),r.e(1562),r.e(3847),r.e(6841)]).then(r.bind(r,36841)),geometryEngineWorker:()=>Promise.all([r.e(5837),r.e(8227)]).then(r.bind(r,48227)),CSVSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7154)]).then(r.bind(r,27793)),EdgeProcessingWorker:()=>Promise.all([r.e(6481),r.e(212),r.e(2062)]).then(r.bind(r,49594)),ElevationSamplerWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1562),r.e(4807),r.e(6481),r.e(6459),r.e(98)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(4547),r.e(5795),r.e(1400),r.e(1534),r.e(1562),r.e(4599),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(3660)]).then(r.bind(r,65967)),GeoJSONSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7774),r.e(7845)]).then(r.bind(r,97845)),LercWorker:()=>r.e(3027).then(r.bind(r,23027)),MemorySourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7774),r.e(639)]).then(r.bind(r,30639)),PBFDecoderWorker:()=>Promise.all([r.e(1400),r.e(1562),r.e(5886),r.e(1916)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(4547),r.e(4321),r.e(5795),r.e(1400),r.e(1534),r.e(1562),r.e(4599),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4325),r.e(7483)]).then(r.bind(r,37138)),PointCloudWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1562),r.e(9324)]).then(r.bind(r,90447)),RasterWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1562),r.e(8363),r.e(3645),r.e(4370)]).then(r.bind(r,61576)),SceneLayerSnappingSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(6481),r.e(212),r.e(1391)]).then(r.bind(r,73248)),SceneLayerWorker:()=>r.e(1412).then(r.bind(r,31412)),WFSSourceWorker:()=>Promise.all([r.e(4547),r.e(1400),r.e(1534),r.e(1562),r.e(5886),r.e(3847),r.e(9777),r.e(8833),r.e(4807),r.e(7774),r.e(3230)]).then(r.bind(r,43230)),WorkerTileHandler:()=>Promise.all([r.e(4325),r.e(1785),r.e(6810),r.e(3388)]).then(r.bind(r,56456))},{CLOSE:f,ABORT:d,INVOKE:h,RESPONSE:p,OPEN_PORT:b,ON:g}=c.Cs;class m{constructor(e){this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._invoke=e,this._timer=null,this._process=this._process.bind(this)}push(e){e.type===c.Cs.ABORT?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class y{static connect(e){const t=new MessageChannel;let r;r="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const n=new y(t.port1,{channel:t,client:r},(()=>null));return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=n),y.clients.set(n,r),t.port2}static loadWorker(e){const t=u[e];return t?t():Promise.resolve(null)}constructor(e,t,r){this._port=e,this._getNextJob=r,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new m((e=>this._onInvokeMessage(e))),this._client=t.client,this._onMessage=this._onMessage.bind(this),this._channel=t.channel,this._schedule=t.schedule,this._port.addEventListener("message",this._onMessage),this._port.start()}close(){this._post({type:f}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const n=r&&r.signal,s=r&&r.transferList;if(!this._port)return Promise.reject(new o.Z("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const l=(0,c.jt)();return new Promise(((r,o)=>{if((0,a.Hc)(n))return this._processWork(),void o((0,a.zE)());const c=(0,a.fu)(n,(()=>{const e=this._outJobs.get(l);e&&(this._outJobs.delete(l),this._processWork(),(0,i.hw)(e.abortHandle),this._post({type:d,jobId:l}),o((0,a.zE)()))})),u={resolve:r,reject:o,abortHandle:c,debugInfo:e};this._outJobs.set(l,u),this._post({type:h,jobId:l,methodName:e,abortable:null!=n},t,s)}))}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:c.Cs.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),{remove(){r.port1.postMessage({type:c.Cs.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",n)}}}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:b,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=2)return;const e=this._getNextJob();if(!e)return;const{methodName:t,data:r,invokeOptions:n,deferred:o}=e;this.invoke(t,r,n).then((e=>o.resolve(e))).catch((e=>o.reject(e)))}_close(){this._channel&&(this._channel=void 0),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{(0,i.hw)(e.abortHandle),e.reject((0,a.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=this._client=this._schedule=null}_onMessage(e){(0,i.pC)(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,c.QM)(e);if(t)switch(t.type){case p:this._onResponseMessage(t);break;case h:this._invokeQueue.push(t);break;case d:this._onAbortMessage(t);break;case f:this._onCloseMessage();break;case b:this._onOpenPortMessage(t);break;case g:this._onOnMessage(t)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,n=t.get(r);this._invokeQueue.push(e),n&&(n.controller&&n.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&y.clients.get(this)===e&&e.destroy(),y.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n,abortable:o}=e,s=o?new AbortController:null,i=this._inJobs;let l,u=this._client,f=u[t];try{if(!f&&t&&t.includes(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)u=u[e[t]],f=u[e[t+1]]}if("function"!=typeof f)throw new TypeError(`${t} is not a function`);l=f.call(u,n,{client:this,signal:s?s.signal:null})}catch(e){return void this._post({type:p,jobId:r,error:(0,c.AB)(e)})}(0,a.y8)(l)?(i.set(r,{controller:s,promise:l}),l.then((e=>{i.has(r)&&(i.delete(r),this._post({type:p,jobId:r},e))}),(e=>{i.has(r)&&(i.delete(r),(0,a.D_)(e)||this._post({type:p,jobId:r,error:(0,c.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:p,jobId:r},l)}_onOpenPortMessage(e){new y(e.port,{client:this._client},(()=>null))}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),n=(0,s.on)(e.port,"message",(e=>{(0,c.QM)(e)?.type===c.Cs.CLOSE&&(n.remove(),r.remove(),t.close())}))}_onResponseMessage(e){const{jobId:t,error:r,data:n}=e,s=this._outJobs;if(!s.has(t))return;const a=s.get(t);s.delete(t),this._processWork(),(0,i.hw)(a.abortHandle),r?a.reject(o.Z.fromJSON(JSON.parse(r))):a.resolve(n)}_post(e,t,r){return(0,c.oi)(this._port,e,t,r)}}y.kernelInfo={revision:l.$,version:n.i8,buildDate:l.r},y.clients=new Map},94362:(e,t,r)=>{"use strict";r.d(t,{AB:()=>a,Cs:()=>n,QM:()=>l,jt:()=>i,oi:()=>c});var n,o=r(80442);!function(e){e[e.HANDSHAKE=0]="HANDSHAKE",e[e.OPEN=1]="OPEN",e[e.OPENED=2]="OPENED",e[e.RESPONSE=3]="RESPONSE",e[e.INVOKE=4]="INVOKE",e[e.ABORT=5]="ABORT",e[e.CLOSE=6]="CLOSE",e[e.OPEN_PORT=7]="OPEN_PORT",e[e.ON=8]="ON"}(n||(n={}));let s=0;function i(){return s++}function a(e){return e?"string"==typeof e?JSON.stringify({name:"message",message:e}):e.toJSON?JSON.stringify(e):JSON.stringify({name:e.name,message:e.message,details:e.details||{stack:e.stack}}):null}function c(e,t,r,s){if(t.type===n.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==n.INVOKE&&t.type!==n.RESPONSE)return void e.postMessage(t);let i;if(function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(i=u(r.transferList),t.data=r.result):(i=u(s),t.data=r),i){if((0,o.Z)("ff"))for(const r of i)if("byteLength"in r&&r.byteLength>267386880){const r="Worker call with large ArrayBuffer would crash Firefox";switch(t.type){case n.INVOKE:throw r;case n.RESPONSE:return void c(e,{type:n.RESPONSE,jobId:t.jobId,error:a(r)})}}e.postMessage(t,i)}else e.postMessage(t)}function l(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function u(e){if(!e||!e.length)return null;if((0,o.Z)("esri-workers-arraybuffer-transfer"))return e;const t=e.filter((e=>!function(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}(e)));return t.length?t:null}},40330:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>l,Nv:()=>i,i8:()=>s,id:()=>a,qh:()=>c});var n=r(80442),o=r(17452);const s="4.26",i={async request(e,t){const{default:n}=await r.e(3172).then(r.bind(r,3172)),s=e.options,i=s.responseType;s.signal=t?.signal,s.responseType="native"===i||"native-request-init"===i?"native-request-init":i&&["blob","json","text"].includes(i)&&(0,o.oh)(e.url)?.after?i:"array-buffer";const a=await n(e.url,s),c={data:a.data,ssl:a.ssl};switch(a.requestOptions?.responseType){case"native-request-init":return delete c.data.signal,c;case"blob":c.data=await c.data.arrayBuffer();break;case"json":c.data=(new TextEncoder).encode(JSON.stringify(c.data)).buffer;break;case"text":c.data=(new TextEncoder).encode(c.data).buffer}return{result:c,transferList:[c.data]}}};let a;function c(e){a=e}function l(e){const t=a&&a.findCredential(e);return t&&t.token?(0,o.ZN)(e,"token",t.token):e}(0,n.Z)("host-webworker")},17202:(e,t,r)=>{"use strict";r.d(t,{$:()=>o,r:()=>n});const n="20221219",o="c9c6ec98ad7f806fc2137d80fbc33552b901889c"}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"chunks/"+{9:"3abaa21e87938a93d483",81:"74d86e7e5ec52a2f6018",98:"54266eadd3abaf20c808",212:"f3f2759b39ab76cde66c",223:"acf800382cbcd4875865",247:"9d9e3a38c54c41f7764c",402:"1cbffa96ea6683e5f3ec",540:"96536f507bc6e501a4f7",565:"e967ffca641947212992",576:"5ec4fedbbcbb0053cf74",632:"099765dff2b7e6958d3d",639:"e048641971aef9dd4da9",661:"0419bb1a147a2c464980",690:"ee91401507833875facc",739:"5983c9f28b7f63c7e1e0",759:"13a6431055eaae030cc8",819:"d1ead6e8aa7e8e21fbc6",837:"38d8d7e5ae339230dd99",908:"fb35df950949fa4200c9",911:"2187672a72e776b9b153",1070:"d9bc849d04147471aa31",1073:"7bc7b6cf75771687d81f",1074:"fa059d94d5051ded85b3",1158:"3714482f3a829d122da1",1227:"89003e387684af5ebeac",1391:"d3299b1e1502d8d20eef",1400:"87579d06ffd2a491f7e2",1412:"ff0e678218bbc01bc39f",1421:"6196cfdeb91ceba52af3",1423:"d431821ed03a6e7f4fd3",1433:"4d5bdf18feeb9c8cb6ff",1534:"933f9b62a3a20e768927",1545:"c2c288d42129354dc218",1562:"a082bd3e6c6cbae3dba4",1612:"8412644b1ae7c03ddf84",1761:"fc197a387187daab1df3",1773:"6ecca49fdba2618fb972",1785:"c815d4e0fa4f3ad201b6",1790:"3a00f94f8f0d49c60969",1916:"bbccf69f4aa1b1761265",1932:"e08dae3eab225eb83e4e",2062:"072f5a672171424668eb",2133:"3c412bbbf65225d1b5a9",2134:"edc08ffed2d5bb161c8d",2422:"2247b07f59959c5e0767",2592:"3a306358d1e76659f4ca",2664:"06ef2a1a43b2b0b66086",2710:"719ee5c4a064ea9bdfcf",2855:"0877bab7c03a1de2e713",3027:"c1ef0d8977c5c19b135f",3055:"a51c2c5d3e7f764f44d5",3172:"52b6711572ac7e058ce6",3230:"e3fd383aee378cbb0dae",3388:"f45ea484e96f44d69b20",3529:"d9a4af329531d6921f8b",3572:"3b689bb038ebc301c3b2",3645:"c9d57014385bff9d0b06",3660:"7f3ac66cee7e68ce945e",3668:"cc5f2321c2d4ada25f00",3743:"3c505cf66d538f84ce4b",3810:"6b589f47cb4731df1639",3847:"937a39fa2b24ab80fd13",3852:"b71a0a8a2f446c671161",3929:"ccbd36c83dc087b07f1c",3992:"4a2b4574b87be7b98481",4046:"34f7836121679aa03358",4166:"5f61db625e7f836f96c3",4242:"25f51196669db91dc5fc",4268:"78355fac58191d886786",4321:"9b4bbf3dd916f36bc1c7",4325:"e95e449c3fab1a03498c",4358:"b14fd92aa29a1f554e59",4370:"3ebb0a2247cc3e33b764",4371:"4b56a15d904a64747e64",4475:"365372b903d5715bf9b7",4499:"423955dd5f10692daf3b",4547:"f2e5c6b7894793b8bd7d",4599:"bb8a670d4a1eaa458bef",4695:"247bc54f3553e91eee66",4807:"1a78eefaa1bd6431f977",5004:"faea681c279486b7a5e7",5015:"5ef9489ce7e0425148db",5132:"3326536d183a858a2a4d",5159:"ee50d5d0afe9bdccc84d",5179:"700373e83c24e24f7772",5235:"7227df502cacbb6d0529",5329:"0e21e5b4d065567a6a91",5468:"7c6427767c26ef2bdf2c",5546:"52d1496c5b224690da1c",5587:"c11d857dca43de2229fc",5590:"f9d01ca95849d589b00b",5732:"83f7e22a12d90ef93e62",5795:"13da7d992cbeb39cc2c7",5837:"ed59ec7a8688437ebdbc",5853:"a7bd0f0fe942973e9a22",5886:"c010210770a67a5a0429",5935:"60a08ce29d09cb07ef06",6233:"4cb64ccb5fba126f9a66",6237:"1aaf284ce0ee24053bd1",6261:"43b2e17ffd5ffcbcf269",6459:"296cf6c6f3f48665a93e",6481:"2e3a4fc59789013185f4",6502:"78ff7a0a6422df4d9b4c",6584:"4c0d7a074083aa9614bb",6636:"e192b7e75931b218fe24",6710:"d828a0656e7351a74fc4",6748:"7bef95b168303bdc4bf1",6774:"129700cbb943494c18fb",6785:"634e7957696f72c8b8b1",6794:"39ba00c44253a590a717",6810:"9bbcf17003f5650c4d96",6841:"31de71018575457155e5",6904:"f27d1065876097390d7e",6925:"bad2ec88d0ed090daf56",7035:"46fbfb2f815f4a543d5f",7066:"e9dd3a5c61bae6235f8e",7126:"21396e5788a07a159d77",7154:"75ce17cf13aab0440572",7202:"e9c81eee503c1b112bad",7269:"02497309e0f848bf2879",7277:"ad65c24558098f21bbf3",7374:"96e2589668159601db7e",7386:"eed89430c7bece3e752a",7476:"7a54c711fea397105ebf",7483:"7ce1b3056f392cd10031",7541:"190c9feab5f80e586d84",7663:"8273f5059682a0ed5541",7774:"1f742c3b11c76814fa4d",7845:"f8ab6e354834b9c0e857",7873:"21f7d3400c070aa45596",8092:"f1b26b73101210b8f29c",8096:"22a990a8d4d4587866a5",8227:"ee04b1c0c42cb1b18b24",8244:"be3a99c767bf3e613fc5",8363:"ff7c1f6450c50422c086",8383:"1d9f7e62d1ef9471c045",8636:"e0b40a4bd4b096db7a33",8691:"8fbb25f0c9fa3f023853",8758:"803492088780e18de801",8828:"2eb2d49c549e53934b8b",8833:"ae2c7dcdf458043f4fdf",8880:"d58d6c656066e44b9d55",8882:"9c6d64dc3fc89edabac4",9070:"038dc3f9ef06ef3c960c",9169:"ac4c10194e904840a4ad",9230:"df8963df0766e26d20a0",9238:"f05b5b66d4d59b0c3636",9243:"d15dd77b6ac668647ab6",9291:"179efcf889111d2576c5",9296:"f86ee9fd7ac176f86796",9300:"ae725a187df8ce45adb2",9324:"b7922573eda9a43136e3",9513:"6ad6dcb4961d4854852a",9675:"078a0b134210167b629d",9771:"8914f5e72a51636a59d3",9777:"83c7c2500839c79ae9d4",9880:"1b5bdd80db9a1a410ff8",9884:"356db8b8297282c77291",9903:"a5b2db394447aac6d970",9904:"2163b9ee4d639d5ed6f3"}[e]+".js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{var e={134:1};r.f.i=(t,n)=>{e[t]||importScripts(r.p+r.u(t))};var t=self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[],n=t.push.bind(t);t.push=t=>{var[o,s,i]=t;for(var a in s)r.o(s,a)&&(r.m[a]=s[a]);for(i&&i(r);o.length;)e[o.pop()]=1;n(t)}})(),r(88277);var n=r(25045);RemoteClient=n})();
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4475],{84475:(e,t,s)=>{s.r(t),s.d(t,{DictionaryLoader:()=>p});var i=s(22303),o=s(3172),r=s(20102),n=s(92604),a=s(13867),l=s(70586),c=s(95330),y=s(19153),h=s(59266),u=s(17386);const f="esri.renderers.support.DictionaryLoader",m={type:"CIMSimpleLineCallout",lineSymbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",width:.5,color:[0,0,0,255]}]}};class p{constructor(e,t,s){this.config=null,this.fieldMap=null,this.url=null,this._ongoingRequests=new Map,this._symbolCache=new a.Z(100),this._dictionaryPromise=null,this.url=e,this.config=t,this.fieldMap=s}getSymbolFields(){return this._symbolFields}async getSymbolAsync(e,t){let s;this._dictionaryPromise||(this._dictionaryPromise=this.fetchResources(t));try{s=await this._dictionaryPromise}catch(e){if((0,c.D_)(e))return this._dictionaryPromise=null,null}const o={};if(this.fieldMap)for(const t of this._symbolFields){const s=this.fieldMap[t];if(s&&null!=e.attributes[s]){const i=""+e.attributes[s];o[t]=i}else o[t]=""}const r=s?.(o,t);if(!r||"string"!=typeof r)return null;const n=(0,y.hP)(r).toString(),a=this._symbolCache.get(n);if(a)return a.catch((()=>{this._symbolCache.pop(n)})),a;const h=r.split(";"),u=[],f=[];for(const e of h)if(e)if(e.includes("po:")){const t=e.substr(3).split("|");if(3===t.length){const e=t[0],s=t[1];let o=t[2];if("DashTemplate"===s)o=o.split(" ").map((e=>Number(e)));else if("Color"===s){const e=new i.Z(o).toRgba();o=[e[0],e[1],e[2],255*e[3]]}else o=Number(o);f.push({primitiveName:e,propertyName:s,value:o})}}else if(e.includes("|")){for(const t of e.split("|"))if(this._itemNames.has(t)){u.push(t);break}}else this._itemNames.has(e)&&u.push(e);const m=!(0,l.pC)(e.geometry)||!e.geometry.hasZ&&"point"===e.geometry.type,p=this._cimPartsToCIMSymbol(u,f,m,t);return this._symbolCache.put(n,p,1),p}async fetchResources(e){if(this._dictionaryPromise)return this._dictionaryPromise;if(!this.url)return void n.Z.getLogger(f).error("no valid URL!");const t=(0,o.default)(this.url+"/resources/styles/dictionary-info.json",{responseType:"json",query:{f:"json"},signal:(0,l.pC)(e)?e.signal:null}),[{data:s}]=await Promise.all([t,(0,h.LC)()]);if(!s)throw this._dictionaryPromise=null,new r.Z("esri.renderers.DictionaryRenderer","Bad dictionary data!");const i=s.expression,a=s.authoringInfo;this._refSymbolUrlTemplate=this.url+"/"+s.cimRefTemplateUrl,this._itemNames=new Set(s.itemsNames),this._symbolFields=a.symbol;const c={};if(this.config){const e=this.config;for(const t in e)c[t]=e[t]}if(a.configuration)for(const e of a.configuration)c.hasOwnProperty(e.name)||(c[e.name]=e.value);const y=[];if((0,l.pC)(e)&&e.fields&&this.fieldMap)for(const t of this._symbolFields){const s=this.fieldMap[t],i=e.fields.filter((e=>e.name===s));i.length>0&&y.push({...i[0],name:t})}const u=(0,h.pp)(i,(0,l.pC)(e)?e.spatialReference:null,y,c).then((e=>{const t={scale:0};return(s,i)=>{if((0,l.Wi)(e))return null;const o=e.repurposeFeature({geometry:null,attributes:s});return t.scale=(0,l.pC)(i)?i.scale:void 0,e.evaluate({$feature:o,$view:t})}})).catch((e=>(n.Z.getLogger(f).error("Creating dictinoary expression failed:",e),null)));return this._dictionaryPromise=u,u}async _cimPartsToCIMSymbol(e,t,s,i){const o=new Array(e.length);for(let t=0;t<e.length;t++)o[t]=this._getSymbolPart(e[t],i);const r=await Promise.all(o),n=this.fieldMap;if(n)for(const e of r)d(e,n);return new u.Z({data:this._combineSymbolParts(r,t,s)})}async _getSymbolPart(e,t){if(this._ongoingRequests.has(e))return this._ongoingRequests.get(e).then((e=>e.data));const s=this._refSymbolUrlTemplate.replace(/\{itemName\}/gi,e),i=(0,o.default)(s,{responseType:"json",query:{f:"json"},...t});this._ongoingRequests.set(e,i);try{return(await i).data}catch(t){throw this._ongoingRequests.delete(e),t}}_combineSymbolParts(e,t,s){if(!e||0===e.length)return null;const i={...e[0]};if(e.length>1){i.symbolLayers=[];for(const t of e){const e=t;i.symbolLayers.unshift(...e.symbolLayers)}}return s&&(i.callout=m),{type:"CIMSymbolReference",symbol:i,primitiveOverrides:t}}}function d(e,t){if(!e)return;const s=e.symbolLayers;if(!s)return;let i=s.length;for(;i--;){const e=s[i];e&&!1!==e.enable&&"CIMVectorMarker"===e.type&&b(e,t)}}function b(e,t){const s=e.markerGraphics;if(s)for(const e of s){if(!e)continue;const s=e.symbol;if(s)switch(s.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":d(s,t);break;case"CIMTextSymbol":s.fieldMap=t}}}},17386:(e,t,s)=>{s.d(t,{Z:()=>p});var i,o=s(43697),r=s(22974),n=s(19153),a=s(5600),l=(s(75215),s(36030)),c=s(71715),y=s(52011),h=s(30556),u=s(35671),f=s(89164);let m=i=class extends f.Z{constructor(e){super(e),this.data=null,this.type="cim"}readData(e,t){return t}writeData(e,t){if(e)for(const s in e)t[s]=e[s]}async collectRequiredFields(e,t){if("CIMSymbolReference"===this.data?.type){const s=this.data.primitiveOverrides;if(s){const i=s.map((s=>{const i=s.valueExpressionInfo;return(0,u.io)(e,t,i.expression)}));await Promise.all(i)}}}clone(){return new i({data:(0,r.d9)(this.data)})}hash(){return(0,n.hP)(JSON.stringify(this.data)).toString()}};(0,o._)([(0,a.Cb)({json:{write:!1}})],m.prototype,"color",void 0),(0,o._)([(0,a.Cb)({json:{write:!0}})],m.prototype,"data",void 0),(0,o._)([(0,c.r)("data",["symbol"])],m.prototype,"readData",null),(0,o._)([(0,h.c)("data",{})],m.prototype,"writeData",null),(0,o._)([(0,l.J)({CIMSymbolReference:"cim"},{readOnly:!0})],m.prototype,"type",void 0),m=i=(0,o._)([(0,y.j)("esri.symbols.CIMSymbol")],m);const p=m}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4475],{84475:(e,t,s)=>{s.r(t),s.d(t,{DictionaryLoader:()=>p});var i=s(22303),o=s(3172),r=s(20102),n=s(92604),a=s(13867),l=s(70586),c=s(95330),y=s(19153),h=s(59266),u=s(17386);const f="esri.renderers.support.DictionaryLoader",m={type:"CIMSimpleLineCallout",lineSymbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",width:.5,color:[0,0,0,255]}]}};class p{constructor(e,t,s){this.config=null,this.fieldMap=null,this.url=null,this._ongoingRequests=new Map,this._symbolCache=new a.Z(100),this._dictionaryPromise=null,this.url=e,this.config=t,this.fieldMap=s}getSymbolFields(){return this._symbolFields}async getSymbolAsync(e,t){let s;this._dictionaryPromise||(this._dictionaryPromise=this.fetchResources(t));try{s=await this._dictionaryPromise}catch(e){if((0,c.D_)(e))return this._dictionaryPromise=null,null}const o={};if(this.fieldMap)for(const t of this._symbolFields){const s=this.fieldMap[t];if(s&&null!=e.attributes[s]){const i=""+e.attributes[s];o[t]=i}else o[t]=""}const r=s?.(o,t);if(!r||"string"!=typeof r)return null;const n=(0,y.hP)(r).toString(),a=this._symbolCache.get(n);if(a)return a.catch((()=>{this._symbolCache.pop(n)})),a;const h=r.split(";"),u=[],f=[];for(const e of h)if(e)if(e.includes("po:")){const t=e.substr(3).split("|");if(3===t.length){const e=t[0],s=t[1];let o=t[2];if("DashTemplate"===s)o=o.split(" ").map((e=>Number(e)));else if("Color"===s){const e=new i.Z(o).toRgba();o=[e[0],e[1],e[2],255*e[3]]}else o=Number(o);f.push({primitiveName:e,propertyName:s,value:o})}}else if(e.includes("|")){for(const t of e.split("|"))if(this._itemNames.has(t)){u.push(t);break}}else this._itemNames.has(e)&&u.push(e);const m=!(0,l.pC)(e.geometry)||!e.geometry.hasZ&&"point"===e.geometry.type,p=this._cimPartsToCIMSymbol(u,f,m,t);return this._symbolCache.put(n,p,1),p}async fetchResources(e){if(this._dictionaryPromise)return this._dictionaryPromise;if(!this.url)return void n.Z.getLogger(f).error("no valid URL!");const t=(0,o.default)(this.url+"/resources/styles/dictionary-info.json",{responseType:"json",query:{f:"json"},signal:(0,l.pC)(e)?e.signal:null}),[{data:s}]=await Promise.all([t,(0,h.LC)()]);if(!s)throw this._dictionaryPromise=null,new r.Z("esri.renderers.DictionaryRenderer","Bad dictionary data!");const i=s.expression,a=s.authoringInfo;this._refSymbolUrlTemplate=this.url+"/"+s.cimRefTemplateUrl,this._itemNames=new Set(s.itemsNames),this._symbolFields=a.symbol;const c={};if(this.config){const e=this.config;for(const t in e)c[t]=e[t]}if(a.configuration)for(const e of a.configuration)c.hasOwnProperty(e.name)||(c[e.name]=e.value);const y=[];if((0,l.pC)(e)&&e.fields&&this.fieldMap)for(const t of this._symbolFields){const s=this.fieldMap[t],i=e.fields.filter((e=>e.name===s));i.length>0&&y.push({...i[0],name:t})}const u=(0,h.pp)(i,(0,l.pC)(e)?e.spatialReference:null,y,c).then((e=>{const t={scale:0};return(s,i)=>{if((0,l.Wi)(e))return null;const o=e.repurposeFeature({geometry:null,attributes:s});return t.scale=(0,l.pC)(i)?i.scale??void 0:void 0,e.evaluate({$feature:o,$view:t})}})).catch((e=>(n.Z.getLogger(f).error("Creating dictinoary expression failed:",e),null)));return this._dictionaryPromise=u,u}async _cimPartsToCIMSymbol(e,t,s,i){const o=new Array(e.length);for(let t=0;t<e.length;t++)o[t]=this._getSymbolPart(e[t],i);const r=await Promise.all(o),n=this.fieldMap;if(n)for(const e of r)d(e,n);return new u.Z({data:this._combineSymbolParts(r,t,s)})}async _getSymbolPart(e,t){if(this._ongoingRequests.has(e))return this._ongoingRequests.get(e).then((e=>e.data));const s=this._refSymbolUrlTemplate.replace(/\{itemName\}/gi,e),i=(0,o.default)(s,{responseType:"json",query:{f:"json"},...t});this._ongoingRequests.set(e,i);try{return(await i).data}catch(t){throw this._ongoingRequests.delete(e),t}}_combineSymbolParts(e,t,s){if(!e||0===e.length)return null;const i={...e[0]};if(e.length>1){i.symbolLayers=[];for(const t of e){const e=t;i.symbolLayers.unshift(...e.symbolLayers)}}return s&&(i.callout=m),{type:"CIMSymbolReference",symbol:i,primitiveOverrides:t}}}function d(e,t){if(!e)return;const s=e.symbolLayers;if(!s)return;let i=s.length;for(;i--;){const e=s[i];e&&!1!==e.enable&&"CIMVectorMarker"===e.type&&b(e,t)}}function b(e,t){const s=e.markerGraphics;if(s)for(const e of s){if(!e)continue;const s=e.symbol;if(s)switch(s.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":d(s,t);break;case"CIMTextSymbol":s.fieldMap=t}}}},17386:(e,t,s)=>{s.d(t,{Z:()=>p});var i,o=s(43697),r=s(22974),n=s(19153),a=s(5600),l=(s(75215),s(36030)),c=s(71715),y=s(52011),h=s(30556),u=s(35671),f=s(89164);let m=i=class extends f.Z{constructor(e){super(e),this.data=null,this.type="cim"}readData(e,t){return t}writeData(e,t){if(e)for(const s in e)t[s]=e[s]}async collectRequiredFields(e,t){if("CIMSymbolReference"===this.data?.type){const s=this.data.primitiveOverrides;if(s){const i=s.map((s=>{const i=s.valueExpressionInfo;return(0,u.io)(e,t,i.expression)}));await Promise.all(i)}}}clone(){return new i({data:(0,r.d9)(this.data)})}hash(){return(0,n.hP)(JSON.stringify(this.data)).toString()}};(0,o._)([(0,a.Cb)({json:{write:!1}})],m.prototype,"color",void 0),(0,o._)([(0,a.Cb)({json:{write:!0}})],m.prototype,"data",void 0),(0,o._)([(0,c.r)("data",["symbol"])],m.prototype,"readData",null),(0,o._)([(0,h.c)("data",{})],m.prototype,"writeData",null),(0,o._)([(0,l.J)({CIMSymbolReference:"cim"},{readOnly:!0})],m.prototype,"type",void 0),m=i=(0,o._)([(0,y.j)("esri.symbols.CIMSymbol")],m);const p=m}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1423],{88669:(e,t,i)=>{function s(){return[0,0,0,0]}function r(e,t,i,s){return[e,t,i,s]}function o(e,t){return new Float64Array(e,t,4)}function n(){return r(1,1,1,1)}function l(){return r(1,0,0,0)}function a(){return r(0,1,0,0)}function u(){return r(0,0,1,0)}function p(){return r(0,0,0,1)}i.d(t,{a:()=>o,c:()=>s,f:()=>r});const c=n(),d=l(),y=a(),h=u(),b=p();Object.freeze(Object.defineProperty({__proto__:null,create:s,clone:function(e){return[e[0],e[1],e[2],e[3]]},fromValues:r,fromArray:function(e){const t=[0,0,0,0],i=Math.min(4,e.length);for(let s=0;s<i;++s)t[s]=e[s];return t},createView:o,zeros:function(){return[0,0,0,0]},ones:n,unitX:l,unitY:a,unitZ:u,unitW:p,ZEROS:[0,0,0,0],ONES:c,UNIT_X:d,UNIT_Y:y,UNIT_Z:h,UNIT_W:b},Symbol.toStringTag,{value:"Module"}))},13867:(e,t,i)=>{i.d(t,{Z:()=>r});var s=i(69801);class r{constructor(e,t){this._storage=new s.WJ,this._storage.maxSize=e,t&&this._storage.registerRemoveFunc("",t)}put(e,t,i){this._storage.put(e,t,i,1)}pop(e){return this._storage.pop(e)}get(e){return this._storage.get(e)}clear(){this._storage.clearAll()}destroy(){this._storage.destroy()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}}},12501:(e,t,i)=>{i.d(t,{Z:()=>h});var s,r=i(43697),o=i(22974),n=i(5600),l=(i(75215),i(52011)),a=i(30556),u=i(35671),p=i(5499),c=i(41733),d=i(84475);let y=s=class extends((0,c.W)(p.Z)){constructor(e){super(e),this.config=null,this.fieldMap=null,this.scaleExpression=null,this.scaleExpressionTitle=null,this.url=null,this.type="dictionary"}get _loader(){return new d.DictionaryLoader(this.url,this.config,this.fieldMap)}writeData(e,t){e&&(t.scalingExpressionInfo={expression:e,returnType:"number"})}writeVisualVariables(e,t,i,s){s?.origin||super.writeVisualVariables(e,t,i,s)}clone(){return new s({config:(0,o.d9)(this.config),scaleExpression:this.scaleExpression,scaleExpressionTitle:this.scaleExpressionTitle,fieldMap:(0,o.d9)(this.fieldMap),url:(0,o.d9)(this.url),visualVariables:(0,o.d9)(this.visualVariables)})}async getSymbolAsync(e,t){return this._loader.getSymbolAsync(e,t)}async collectRequiredFields(e,t){await this.collectVVRequiredFields(e,t),this.scaleExpression&&await(0,u.io)(e,t,this.scaleExpression);for(const i in this.fieldMap){const s=this.fieldMap[i];t.has(s)&&e.add(s)}}get arcadeRequired(){return!0}getSymbol(){return null}getSymbols(){return[]}getAttributeHash(){return this.visualVariables&&this.visualVariables.reduce(((e,t)=>e+t.getAttributeHash()),"")}getMeshHash(){return`${this.url}-${JSON.stringify(this.fieldMap)}`}getSymbolFields(){return this._loader.getSymbolFields()}};(0,r._)([(0,n.Cb)({type:d.DictionaryLoader})],y.prototype,"_loader",null),(0,r._)([(0,n.Cb)({type:Object,json:{read:{source:"configuration"},write:{target:"configuration"}}})],y.prototype,"config",void 0),(0,r._)([(0,n.Cb)({type:Object,json:{write:!0}})],y.prototype,"fieldMap",void 0),(0,r._)([(0,n.Cb)({type:String,json:{read:{source:"scalingExpressionInfo.expression"},write:!0}})],y.prototype,"scaleExpression",void 0),(0,r._)([(0,a.c)("scaleExpression")],y.prototype,"writeData",null),(0,r._)([(0,n.Cb)({type:String,json:{read:{source:"scalingExpressionInfo.title"},write:{target:"scalingExpressionInfo.title",overridePolicy(e){return{enabled:!!e&&!!this.scaleExpression}}}}})],y.prototype,"scaleExpressionTitle",void 0),(0,r._)([(0,n.Cb)({type:String,json:{write:!0}})],y.prototype,"url",void 0),(0,r._)([(0,a.c)("visualVariables")],y.prototype,"writeVisualVariables",null),y=s=(0,r._)([(0,l.j)("esri.renderers.DictionaryRenderer")],y);const h=y},28756:(e,t,i)=>{i.d(t,{Z:()=>v});var s,r=i(43697),o=i(22303),n=i(22974),l=i(5600),a=(i(75215),i(36030)),u=i(52011),p=i(35671),c=i(5499),d=i(41733),y=i(79887),h=i(96674);i(67676);let b=s=class extends h.wq{constructor(){super(...arguments),this.unit=null}clone(){return new s({unit:this.unit})}};(0,r._)([(0,l.Cb)({type:String,json:{write:!0}})],b.prototype,"unit",void 0),b=s=(0,r._)([(0,u.j)("esri.renderers.support.DotDensityLegendOptions")],b);const m=b;var g,f=i(20256),_=i(4095);let w=g=class extends((0,d.W)(c.Z)){constructor(e){super(e),this.attributes=null,this.backgroundColor=new o.Z([0,0,0,0]),this.dotBlendingEnabled=!0,this.dotShape="square",this.dotSize=1,this.legendOptions=null,this.outline=new _.Z,this.dotValue=null,this.referenceScale=null,this.seed=1,this.type="dot-density"}calculateDotValue(e){if(null==this.referenceScale)return this.dotValue;const t=e/this.referenceScale*this.dotValue;return t<1?1:t}getSymbol(){return new f.Z({outline:this.outline})}async getSymbolAsync(){return this.getSymbol()}getSymbols(){return[this.getSymbol()]}getAttributeHash(){return this.attributes?.reduce(((e,t)=>e+t.getAttributeHash()),"")??""}getMeshHash(){return JSON.stringify(this.outline)}clone(){return new g({attributes:(0,n.d9)(this.attributes),backgroundColor:(0,n.d9)(this.backgroundColor),dotBlendingEnabled:(0,n.d9)(this.dotBlendingEnabled),dotShape:(0,n.d9)(this.dotShape),dotSize:(0,n.d9)(this.dotSize),dotValue:(0,n.d9)(this.dotValue),legendOptions:(0,n.d9)(this.legendOptions),outline:(0,n.d9)(this.outline),referenceScale:(0,n.d9)(this.referenceScale),visualVariables:(0,n.d9)(this.visualVariables),authoringInfo:this.authoringInfo&&this.authoringInfo.clone()})}getControllerHash(){const e=this.attributes?.map((e=>e.field||e.valueExpression||""));return`${e}-${this.outline&&JSON.stringify(this.outline.toJSON())||""}`}async collectRequiredFields(e,t){await this.collectVVRequiredFields(e,t);for(const i of this.attributes??[])i.valueExpression&&await(0,p.io)(e,t,i.valueExpression),i.field&&e.add(i.field)}};(0,r._)([(0,l.Cb)({type:[y.Z],json:{write:!0}})],w.prototype,"attributes",void 0),(0,r._)([(0,l.Cb)({type:o.Z,json:{write:!0}})],w.prototype,"backgroundColor",void 0),(0,r._)([(0,l.Cb)({type:Boolean,json:{write:!0}})],w.prototype,"dotBlendingEnabled",void 0),(0,r._)([(0,l.Cb)({type:String,json:{write:!1}})],w.prototype,"dotShape",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"dotSize",void 0),(0,r._)([(0,l.Cb)({type:m,json:{write:!0}})],w.prototype,"legendOptions",void 0),(0,r._)([(0,l.Cb)({type:_.Z,json:{default:null,write:!0}})],w.prototype,"outline",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"dotValue",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"referenceScale",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"seed",void 0),(0,r._)([(0,a.J)({dotDensity:"dot-density"})],w.prototype,"type",void 0),w=g=(0,r._)([(0,u.j)("esri.renderers.DotDensityRenderer")],w);const v=w},92271:(e,t,i)=>{i.d(t,{Z:()=>E});var s,r=i(43697),o=i(22303),n=(i(9790),i(60235)),l=i(22974),a=i(92604),u=i(1654),p=i(62357),c=i(5600),d=i(75215),y=i(1153),h=i(36030),b=i(52011),m=i(35671),g=i(5499),f=i(69237),_=i(96674);i(67676);let w=s=class extends _.wq{constructor(e){super(e),this.color=null,this.ratio=null}clone(){return new s({color:this.color,ratio:this.ratio})}};(0,r._)([(0,c.Cb)({type:o.Z,json:{type:[d.z8],default:null,write:!0}})],w.prototype,"color",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{write:!0}})],w.prototype,"ratio",void 0),w=s=(0,r._)([(0,b.j)("esri.renderers.support.HeatmapColorStop")],w);const v=w;var S=i(2368);let x=class extends((0,S.J)(_.wq)){constructor(){super(...arguments),this.minLabel=null,this.maxLabel=null,this.title=null}};(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],x.prototype,"minLabel",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],x.prototype,"maxLabel",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],x.prototype,"title",void 0),x=(0,r._)([(0,b.j)("esri.renderers.support.HeatmapLegendOptions")],x);var C,j=i(73572),I=i(77987);const Z="esri.renderers.HeatmapRenderer",P=a.Z.getLogger(Z);function M(e){if(null!=e){const{maxDensity:t,minDensity:i,radius:s}=e;if(null!=t||null!=i||null!=s){const{blurRadius:t,maxPixelIntensity:i,minPixelIntensity:s,...r}=e;return r}}return e}let D=C=class extends g.Z{constructor(e){super(e),this.authoringInfo=null,this.colorStops=[new v({ratio:0,color:new o.Z("rgba(255, 140, 0, 0)")}),new v({ratio:.75,color:new o.Z("rgba(255, 140, 0, 1)")}),new v({ratio:.9,color:new o.Z("rgba(255, 0, 0, 1)")})],this.field=null,this.fieldOffset=0,this.legendOptions=null,this.maxDensity=.04,this.minDensity=0,this.radius=18,this.referenceScale=0,this.type="heatmap",this.valueExpression=null,this.valueExpressionTitle=null,this._warnedProps={blurRadius:!1,maxPixelIntensity:!1,minPixelIntensity:!1}}normalizeCtorArgs(e){return M(e)}get blurRadius(){return(0,j.AJ)(this.radius)}set blurRadius(e){const t=this.maxPixelIntensity,i=this.minPixelIntensity;this._set("radius",(0,j.k0)(e)),this._warnAboutDeprecatedGaussianBlurProp("blurRadius","radius"),this._set("maxDensity",t*this._pixelIntensityToDensity),this._set("minDensity",i*this._pixelIntensityToDensity)}get maxPixelIntensity(){return this.maxDensity/this._pixelIntensityToDensity}set maxPixelIntensity(e){this._set("maxDensity",e*this._pixelIntensityToDensity),this._warnAboutDeprecatedGaussianBlurProp("maxPixelIntensity","maxDensity")}get minPixelIntensity(){return this.minDensity/this._pixelIntensityToDensity}set minPixelIntensity(e){this._set("minDensity",e*this._pixelIntensityToDensity),this._warnAboutDeprecatedGaussianBlurProp("minPixelIntensity","minDensity")}get _pixelIntensityToDensity(){return 24/(j.nu**2*this.blurRadius**4)}_warnAboutDeprecatedGaussianBlurProp(e,t){this._warnedProps[e]||"user"===(0,y.vw)(this).getDefaultOrigin()&&(this._warnedProps[e]=!0,(0,u.Os)((()=>{(0,n.Mr)(P,e,{replacement:`${String(t)} (suggested value: ${this._get(t)})`,version:"4.24"})})))}read(e,t){e=M(e),super.read(e,t)}getSymbol(){return new I.Z}async getSymbolAsync(){return this.getSymbol()}getSymbols(){return[this.getSymbol()]}async collectRequiredFields(e,t){const i=this.field,s=this.valueExpression;i&&"string"==typeof i&&await(0,m.AB)(e,t,i),s&&"string"==typeof s&&await(0,m.io)(e,t,s)}getAttributeHash(){return null}getMeshHash(){return`${JSON.stringify(this.colorStops)}.${this.blurRadius}.${this.field}`}clone(){return new C({authoringInfo:this.authoringInfo&&this.authoringInfo.clone(),colorStops:(0,l.d9)(this.colorStops),field:this.field,legendOptions:(0,l.d9)(this.legendOptions),maxDensity:this.maxDensity,minDensity:this.minDensity,radius:this.radius,referenceScale:this.referenceScale,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle})}};(0,r._)([(0,c.Cb)({type:f.Z,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],D.prototype,"authoringInfo",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],D.prototype,"blurRadius",null),(0,r._)([(0,c.Cb)({type:[v],json:{write:!0}})],D.prototype,"colorStops",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],D.prototype,"field",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{write:{overridePolicy:(e,t,i)=>({enabled:null==i})},origins:{"web-scene":{write:!1}}}})],D.prototype,"fieldOffset",void 0),(0,r._)([(0,c.Cb)({type:x,json:{write:!0}})],D.prototype,"legendOptions",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{write:!0}})],D.prototype,"maxDensity",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],D.prototype,"maxPixelIntensity",null),(0,r._)([(0,c.Cb)({type:Number,json:{write:!0}})],D.prototype,"minDensity",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],D.prototype,"minPixelIntensity",null),(0,r._)([(0,c.Cb)({type:Number,cast:p.t_,json:{write:!0}})],D.prototype,"radius",void 0),(0,r._)([(0,c.Cb)({type:Number,range:{min:0},json:{default:0,write:!0}})],D.prototype,"referenceScale",void 0),(0,r._)([(0,h.J)({heatmap:"heatmap"})],D.prototype,"type",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0,origins:{"web-document":{write:!1},"portal-item":{write:!1}}}})],D.prototype,"valueExpression",void 0),(0,r._)([(0,c.Cb)({type:String})],D.prototype,"valueExpressionTitle",void 0),(0,r._)([(0,c.Cb)({readOnly:!0})],D.prototype,"_pixelIntensityToDensity",null),D=C=(0,r._)([(0,b.j)(Z)],D);const E=D},72529:(e,t,i)=>{i.d(t,{Z:()=>S});var s=i(43697),r=i(22303),o=(i(9790),i(2368)),n=i(70586),l=i(62357),a=i(5600),u=(i(75215),i(67676),i(36030)),p=i(52011),c=i(35671),d=i(5499),y=i(41733),h=i(79887),b=i(96674);let m=class extends((0,o.J)(b.wq)){constructor(){super(...arguments),this.color=new r.Z([0,0,0,0]),this.label=null,this.threshold=0}};(0,s._)([(0,a.Cb)({type:r.Z,json:{write:!0}})],m.prototype,"color",void 0),(0,s._)([(0,a.Cb)({type:String,json:{write:!0}})],m.prototype,"label",void 0),(0,s._)([(0,a.Cb)({type:Number,range:{min:0,max:1},json:{write:!0}})],m.prototype,"threshold",void 0),m=(0,s._)([(0,p.j)("esri.renderers.support.OthersCategory")],m);let g=class extends((0,o.J)(b.wq)){constructor(){super(...arguments),this.title=null}};(0,s._)([(0,a.Cb)({type:String,json:{write:!0}})],g.prototype,"title",void 0),g=(0,s._)([(0,p.j)("esri.renderers.support.PieChartLegendOptions")],g);var f=i(77987),_=i(20256),w=i(4095);let v=class extends((0,y.W)((0,o.J)(d.Z))){constructor(e){super(e),this.attributes=null,this.backgroundFillSymbol=null,this.defaultColor=new r.Z([0,0,0,0]),this.defaultLabel=null,this.holePercentage=0,this.othersCategory=new m,this.legendOptions=null,this.outline=null,this.size=12,this.type="pie-chart"}getSymbol(){return new f.Z({size:this.size?this.size/2+(this.outline?.width||0):0})}async getSymbolAsync(){return this.getSymbol()}getSymbols(){return[this.getSymbol(),this.backgroundFillSymbol].filter(n.pC)}getAttributeHash(){return this.visualVariables&&this.visualVariables.reduce(((e,t)=>e+t.getAttributeHash()),"")}getMeshHash(){return this.getSymbols().reduce(((e,t)=>e+JSON.stringify(t)),"")}async collectRequiredFields(e,t){await this.collectVVRequiredFields(e,t);for(const i of this.attributes)i.valueExpression&&await(0,c.io)(e,t,i.valueExpression),i.field&&e.add(i.field)}};(0,s._)([(0,a.Cb)({type:[h.Z],json:{write:!0}})],v.prototype,"attributes",void 0),(0,s._)([(0,a.Cb)({type:_.Z,json:{default:null,write:!0}})],v.prototype,"backgroundFillSymbol",void 0),(0,s._)([(0,a.Cb)({type:r.Z,json:{write:!0}})],v.prototype,"defaultColor",void 0),(0,s._)([(0,a.Cb)({type:String,json:{write:!0}})],v.prototype,"defaultLabel",void 0),(0,s._)([(0,a.Cb)({type:Number,range:{min:0,max:1},json:{write:!0}})],v.prototype,"holePercentage",void 0),(0,s._)([(0,a.Cb)({type:m,json:{write:!0}})],v.prototype,"othersCategory",void 0),(0,s._)([(0,a.Cb)({type:g,json:{write:!0}})],v.prototype,"legendOptions",void 0),(0,s._)([(0,a.Cb)({type:w.Z,json:{default:null,write:!0}})],v.prototype,"outline",void 0),(0,s._)([(0,a.Cb)({type:Number,cast:l.t_,json:{write:!0}})],v.prototype,"size",void 0),(0,s._)([(0,u.J)({pieChart:"pie-chart"})],v.prototype,"type",void 0),v=(0,s._)([(0,p.j)("esri.renderers.PieChartRenderer")],v);const S=v},84382:(e,t,i)=>{i.d(t,{Z:()=>y});var s,r=i(43697),o=i(22974),n=i(5600),l=(i(75215),i(36030)),a=i(52011),u=i(5499),p=i(41733),c=i(9833);let d=s=class extends((0,p.W)(u.Z)){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.getSymbols().map((i=>i.collectRequiredFields(e,t))))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}getSymbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables&&this.visualVariables.reduce(((e,t)=>e+t.getAttributeHash()),"")}getMeshHash(){return this.getSymbols().reduce(((e,t)=>e+JSON.stringify(t)),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new s({description:this.description,label:this.label,symbol:this.symbol&&this.symbol.clone(),visualVariables:(0,o.d9)(this.visualVariables),authoringInfo:this.authoringInfo&&this.authoringInfo.clone()})}};(0,r._)([(0,n.Cb)({type:String,json:{write:!0}})],d.prototype,"description",void 0),(0,r._)([(0,n.Cb)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,r._)([(0,n.Cb)(c.Gn)],d.prototype,"symbol",void 0),(0,r._)([(0,l.J)({simple:"simple"})],d.prototype,"type",void 0),d=s=(0,r._)([(0,a.j)("esri.renderers.SimpleRenderer")],d);const y=d},79887:(e,t,i)=>{i.d(t,{Z:()=>y});var s,r=i(43697),o=i(22303),n=i(96674),l=i(92604),a=i(5600),u=i(90578),p=(i(67676),i(52011)),c=i(75215);let d=s=class extends n.wq{constructor(e){super(e),this.color=null,this.field=null,this.label=null,this.valueExpression=null,this.valueExpressionTitle=null}castField(e){return null==e?e:"function"==typeof e?(l.Z.getLogger(this.declaredClass).error(".field: field must be a string value"),null):(0,c.Zs)(e)}getAttributeHash(){return`${this.field}-${this.valueExpression}`}clone(){return new s({color:this.color&&this.color.clone(),field:this.field,label:this.label,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle})}};(0,r._)([(0,a.Cb)({type:o.Z,json:{type:[Number],write:!0}})],d.prototype,"color",void 0),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"field",void 0),(0,r._)([(0,u.p)("field")],d.prototype,"castField",null),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"valueExpression",void 0),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"valueExpressionTitle",void 0),d=s=(0,r._)([(0,p.j)("esri.renderers.support.AttributeColorInfo")],d);const y=d},84475:(e,t,i)=>{i.r(t),i.d(t,{DictionaryLoader:()=>b});var s=i(22303),r=i(3172),o=i(20102),n=i(92604),l=i(13867),a=i(70586),u=i(95330),p=i(19153),c=i(59266),d=i(17386);const y="esri.renderers.support.DictionaryLoader",h={type:"CIMSimpleLineCallout",lineSymbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",width:.5,color:[0,0,0,255]}]}};class b{constructor(e,t,i){this.config=null,this.fieldMap=null,this.url=null,this._ongoingRequests=new Map,this._symbolCache=new l.Z(100),this._dictionaryPromise=null,this.url=e,this.config=t,this.fieldMap=i}getSymbolFields(){return this._symbolFields}async getSymbolAsync(e,t){let i;this._dictionaryPromise||(this._dictionaryPromise=this.fetchResources(t));try{i=await this._dictionaryPromise}catch(e){if((0,u.D_)(e))return this._dictionaryPromise=null,null}const r={};if(this.fieldMap)for(const t of this._symbolFields){const i=this.fieldMap[t];if(i&&null!=e.attributes[i]){const s=""+e.attributes[i];r[t]=s}else r[t]=""}const o=i?.(r,t);if(!o||"string"!=typeof o)return null;const n=(0,p.hP)(o).toString(),l=this._symbolCache.get(n);if(l)return l.catch((()=>{this._symbolCache.pop(n)})),l;const c=o.split(";"),d=[],y=[];for(const e of c)if(e)if(e.includes("po:")){const t=e.substr(3).split("|");if(3===t.length){const e=t[0],i=t[1];let r=t[2];if("DashTemplate"===i)r=r.split(" ").map((e=>Number(e)));else if("Color"===i){const e=new s.Z(r).toRgba();r=[e[0],e[1],e[2],255*e[3]]}else r=Number(r);y.push({primitiveName:e,propertyName:i,value:r})}}else if(e.includes("|")){for(const t of e.split("|"))if(this._itemNames.has(t)){d.push(t);break}}else this._itemNames.has(e)&&d.push(e);const h=!(0,a.pC)(e.geometry)||!e.geometry.hasZ&&"point"===e.geometry.type,b=this._cimPartsToCIMSymbol(d,y,h,t);return this._symbolCache.put(n,b,1),b}async fetchResources(e){if(this._dictionaryPromise)return this._dictionaryPromise;if(!this.url)return void n.Z.getLogger(y).error("no valid URL!");const t=(0,r.default)(this.url+"/resources/styles/dictionary-info.json",{responseType:"json",query:{f:"json"},signal:(0,a.pC)(e)?e.signal:null}),[{data:i}]=await Promise.all([t,(0,c.LC)()]);if(!i)throw this._dictionaryPromise=null,new o.Z("esri.renderers.DictionaryRenderer","Bad dictionary data!");const s=i.expression,l=i.authoringInfo;this._refSymbolUrlTemplate=this.url+"/"+i.cimRefTemplateUrl,this._itemNames=new Set(i.itemsNames),this._symbolFields=l.symbol;const u={};if(this.config){const e=this.config;for(const t in e)u[t]=e[t]}if(l.configuration)for(const e of l.configuration)u.hasOwnProperty(e.name)||(u[e.name]=e.value);const p=[];if((0,a.pC)(e)&&e.fields&&this.fieldMap)for(const t of this._symbolFields){const i=this.fieldMap[t],s=e.fields.filter((e=>e.name===i));s.length>0&&p.push({...s[0],name:t})}const d=(0,c.pp)(s,(0,a.pC)(e)?e.spatialReference:null,p,u).then((e=>{const t={scale:0};return(i,s)=>{if((0,a.Wi)(e))return null;const r=e.repurposeFeature({geometry:null,attributes:i});return t.scale=(0,a.pC)(s)?s.scale:void 0,e.evaluate({$feature:r,$view:t})}})).catch((e=>(n.Z.getLogger(y).error("Creating dictinoary expression failed:",e),null)));return this._dictionaryPromise=d,d}async _cimPartsToCIMSymbol(e,t,i,s){const r=new Array(e.length);for(let t=0;t<e.length;t++)r[t]=this._getSymbolPart(e[t],s);const o=await Promise.all(r),n=this.fieldMap;if(n)for(const e of o)m(e,n);return new d.Z({data:this._combineSymbolParts(o,t,i)})}async _getSymbolPart(e,t){if(this._ongoingRequests.has(e))return this._ongoingRequests.get(e).then((e=>e.data));const i=this._refSymbolUrlTemplate.replace(/\{itemName\}/gi,e),s=(0,r.default)(i,{responseType:"json",query:{f:"json"},...t});this._ongoingRequests.set(e,s);try{return(await s).data}catch(t){throw this._ongoingRequests.delete(e),t}}_combineSymbolParts(e,t,i){if(!e||0===e.length)return null;const s={...e[0]};if(e.length>1){s.symbolLayers=[];for(const t of e){const e=t;s.symbolLayers.unshift(...e.symbolLayers)}}return i&&(s.callout=h),{type:"CIMSymbolReference",symbol:s,primitiveOverrides:t}}}function m(e,t){if(!e)return;const i=e.symbolLayers;if(!i)return;let s=i.length;for(;s--;){const e=i[s];e&&!1!==e.enable&&"CIMVectorMarker"===e.type&&g(e,t)}}function g(e,t){const i=e.markerGraphics;if(i)for(const e of i){if(!e)continue;const i=e.symbol;if(i)switch(i.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":m(i,t);break;case"CIMTextSymbol":i.fieldMap=t}}}},73572:(e,t,i)=>{i.d(t,{AJ:()=>n,If:()=>a,QM:()=>l,k0:()=>o,nu:()=>r,wx:()=>u}),i(22021);var s=i(62357);i(98766),i(88669);const r=2.4;function o(e){return(0,s.Wz)(e*r)}function n(e){return(0,s.F2)(e)/r}function l(e,t,i,r){const{radius:o,fieldOffset:n,field:l}=t,u=Math.round((0,s.F2)(o)),p=new Float64Array(i*r);let c,d=Number.NEGATIVE_INFINITY;const y=function(e,t){return null!=e?"string"==typeof t?t=>-1*+t.readAttribute(e):i=>+i.readAttribute(e)+t:e=>1}(l,n),h=new Set;for(const t of e){const e=t.getCursor();for(;e.next();){const t=e.getObjectId();if(h.has(t))continue;h.add(t);const s=e.readLegacyPointGeometry(),o=128;if(s.x<-o||s.x>=i+o||s.y<-o||s.y>r+o)continue;const n=+y(e),l=Math.max(0,Math.round(s.x)-u),b=Math.max(0,Math.round(s.y)-u),m=Math.min(r,Math.round(s.y)+u),g=Math.min(i,Math.round(s.x)+u);for(let e=b;e<m;e++)for(let t=l;t<g;t++){const r=e*i+t,o=a(s.x-t,s.y-e,u);c=p[r]+=o*n,c>d&&(d=c)}}}return{matrix:p.buffer,max:d}}function a(e,t,i){const s=Math.sqrt(e**2+t**2)/i;return s>1?0:3/(Math.PI*i**2)*(1-s**2)**2}function u(e,t){return"function"==typeof e?e:e?"string"==typeof t?t=>-1*+t[e]:i=>+i[e]+t:()=>1}},91423:(e,t,i)=>{i.d(t,{a:()=>l});var s=i(20941),r=i(63213),o=i(32400);const n=(0,r.d)({types:o.A});function l(e,t,i){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?(i&&i.messages&&i.messages.push(new s.Z("renderer:unsupported","Only UniqueValueRenderer can be referenced from a web style, but found '"+e.type+"'",{definition:e,context:i})),null):n(e,t,i):null}},32400:(e,t,i)=>{i.d(t,{A:()=>c,o:()=>d});var s=i(16050),r=i(12501),o=i(28756),n=i(92271),l=i(72529),a=i(5499),u=i(84382),p=i(81571);const c={key:"type",base:a.Z,typeMap:{heatmap:n.Z,simple:u.Z,"unique-value":p.Z,"class-breaks":s.Z,"dot-density":o.Z,dictionary:r.Z,"pie-chart":l.Z},errorContext:"renderer"},d={key:"type",base:a.Z,typeMap:{simple:u.Z,"unique-value":p.Z,"class-breaks":s.Z,heatmap:n.Z},errorContext:"renderer"}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1423],{88669:(e,t,i)=>{function s(){return[0,0,0,0]}function r(e,t,i,s){return[e,t,i,s]}function o(e,t){return new Float64Array(e,t,4)}function n(){return r(1,1,1,1)}function l(){return r(1,0,0,0)}function a(){return r(0,1,0,0)}function u(){return r(0,0,1,0)}function p(){return r(0,0,0,1)}i.d(t,{a:()=>o,c:()=>s,f:()=>r});const c=n(),d=l(),y=a(),h=u(),b=p();Object.freeze(Object.defineProperty({__proto__:null,create:s,clone:function(e){return[e[0],e[1],e[2],e[3]]},fromValues:r,fromArray:function(e){const t=[0,0,0,0],i=Math.min(4,e.length);for(let s=0;s<i;++s)t[s]=e[s];return t},createView:o,zeros:function(){return[0,0,0,0]},ones:n,unitX:l,unitY:a,unitZ:u,unitW:p,ZEROS:[0,0,0,0],ONES:c,UNIT_X:d,UNIT_Y:y,UNIT_Z:h,UNIT_W:b},Symbol.toStringTag,{value:"Module"}))},13867:(e,t,i)=>{i.d(t,{Z:()=>r});var s=i(69801);class r{constructor(e,t){this._storage=new s.WJ,this._storage.maxSize=e,t&&this._storage.registerRemoveFunc("",t)}put(e,t,i){this._storage.put(e,t,i,1)}pop(e){return this._storage.pop(e)}get(e){return this._storage.get(e)}clear(){this._storage.clearAll()}destroy(){this._storage.destroy()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}}},12501:(e,t,i)=>{i.d(t,{Z:()=>h});var s,r=i(43697),o=i(22974),n=i(5600),l=(i(75215),i(52011)),a=i(30556),u=i(35671),p=i(5499),c=i(41733),d=i(84475);let y=s=class extends((0,c.W)(p.Z)){constructor(e){super(e),this.config=null,this.fieldMap=null,this.scaleExpression=null,this.scaleExpressionTitle=null,this.url=null,this.type="dictionary"}get _loader(){return new d.DictionaryLoader(this.url,this.config,this.fieldMap)}writeData(e,t){e&&(t.scalingExpressionInfo={expression:e,returnType:"number"})}writeVisualVariables(e,t,i,s){s?.origin||super.writeVisualVariables(e,t,i,s)}clone(){return new s({config:(0,o.d9)(this.config),scaleExpression:this.scaleExpression,scaleExpressionTitle:this.scaleExpressionTitle,fieldMap:(0,o.d9)(this.fieldMap),url:(0,o.d9)(this.url),visualVariables:(0,o.d9)(this.visualVariables)})}async getSymbolAsync(e,t){return this._loader.getSymbolAsync(e,t)}async collectRequiredFields(e,t){await this.collectVVRequiredFields(e,t),this.scaleExpression&&await(0,u.io)(e,t,this.scaleExpression);for(const i in this.fieldMap){const s=this.fieldMap[i];t.has(s)&&e.add(s)}}get arcadeRequired(){return!0}getSymbol(){return null}getSymbols(){return[]}getAttributeHash(){return this.visualVariables&&this.visualVariables.reduce(((e,t)=>e+t.getAttributeHash()),"")}getMeshHash(){return`${this.url}-${JSON.stringify(this.fieldMap)}`}getSymbolFields(){return this._loader.getSymbolFields()}};(0,r._)([(0,n.Cb)({type:d.DictionaryLoader})],y.prototype,"_loader",null),(0,r._)([(0,n.Cb)({type:Object,json:{read:{source:"configuration"},write:{target:"configuration"}}})],y.prototype,"config",void 0),(0,r._)([(0,n.Cb)({type:Object,json:{write:!0}})],y.prototype,"fieldMap",void 0),(0,r._)([(0,n.Cb)({type:String,json:{read:{source:"scalingExpressionInfo.expression"},write:!0}})],y.prototype,"scaleExpression",void 0),(0,r._)([(0,a.c)("scaleExpression")],y.prototype,"writeData",null),(0,r._)([(0,n.Cb)({type:String,json:{read:{source:"scalingExpressionInfo.title"},write:{target:"scalingExpressionInfo.title",overridePolicy(e){return{enabled:!!e&&!!this.scaleExpression}}}}})],y.prototype,"scaleExpressionTitle",void 0),(0,r._)([(0,n.Cb)({type:String,json:{write:!0}})],y.prototype,"url",void 0),(0,r._)([(0,a.c)("visualVariables")],y.prototype,"writeVisualVariables",null),y=s=(0,r._)([(0,l.j)("esri.renderers.DictionaryRenderer")],y);const h=y},28756:(e,t,i)=>{i.d(t,{Z:()=>v});var s,r=i(43697),o=i(22303),n=i(22974),l=i(5600),a=(i(75215),i(36030)),u=i(52011),p=i(35671),c=i(5499),d=i(41733),y=i(79887),h=i(96674);i(67676);let b=s=class extends h.wq{constructor(){super(...arguments),this.unit=null}clone(){return new s({unit:this.unit})}};(0,r._)([(0,l.Cb)({type:String,json:{write:!0}})],b.prototype,"unit",void 0),b=s=(0,r._)([(0,u.j)("esri.renderers.support.DotDensityLegendOptions")],b);const m=b;var g,f=i(20256),_=i(4095);let w=g=class extends((0,d.W)(c.Z)){constructor(e){super(e),this.attributes=null,this.backgroundColor=new o.Z([0,0,0,0]),this.dotBlendingEnabled=!0,this.dotShape="square",this.dotSize=1,this.legendOptions=null,this.outline=new _.Z,this.dotValue=null,this.referenceScale=null,this.seed=1,this.type="dot-density"}calculateDotValue(e){if(null==this.referenceScale)return this.dotValue;const t=e/this.referenceScale*this.dotValue;return t<1?1:t}getSymbol(){return new f.Z({outline:this.outline})}async getSymbolAsync(){return this.getSymbol()}getSymbols(){return[this.getSymbol()]}getAttributeHash(){return this.attributes?.reduce(((e,t)=>e+t.getAttributeHash()),"")??""}getMeshHash(){return JSON.stringify(this.outline)}clone(){return new g({attributes:(0,n.d9)(this.attributes),backgroundColor:(0,n.d9)(this.backgroundColor),dotBlendingEnabled:(0,n.d9)(this.dotBlendingEnabled),dotShape:(0,n.d9)(this.dotShape),dotSize:(0,n.d9)(this.dotSize),dotValue:(0,n.d9)(this.dotValue),legendOptions:(0,n.d9)(this.legendOptions),outline:(0,n.d9)(this.outline),referenceScale:(0,n.d9)(this.referenceScale),visualVariables:(0,n.d9)(this.visualVariables),authoringInfo:this.authoringInfo&&this.authoringInfo.clone()})}getControllerHash(){const e=this.attributes?.map((e=>e.field||e.valueExpression||""));return`${e}-${this.outline&&JSON.stringify(this.outline.toJSON())||""}`}async collectRequiredFields(e,t){await this.collectVVRequiredFields(e,t);for(const i of this.attributes??[])i.valueExpression&&await(0,p.io)(e,t,i.valueExpression),i.field&&e.add(i.field)}};(0,r._)([(0,l.Cb)({type:[y.Z],json:{write:!0}})],w.prototype,"attributes",void 0),(0,r._)([(0,l.Cb)({type:o.Z,json:{write:!0}})],w.prototype,"backgroundColor",void 0),(0,r._)([(0,l.Cb)({type:Boolean,json:{write:!0}})],w.prototype,"dotBlendingEnabled",void 0),(0,r._)([(0,l.Cb)({type:String,json:{write:!1}})],w.prototype,"dotShape",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"dotSize",void 0),(0,r._)([(0,l.Cb)({type:m,json:{write:!0}})],w.prototype,"legendOptions",void 0),(0,r._)([(0,l.Cb)({type:_.Z,json:{default:null,write:!0}})],w.prototype,"outline",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"dotValue",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"referenceScale",void 0),(0,r._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"seed",void 0),(0,r._)([(0,a.J)({dotDensity:"dot-density"})],w.prototype,"type",void 0),w=g=(0,r._)([(0,u.j)("esri.renderers.DotDensityRenderer")],w);const v=w},92271:(e,t,i)=>{i.d(t,{Z:()=>E});var s,r=i(43697),o=i(22303),n=(i(9790),i(60235)),l=i(22974),a=i(92604),u=i(1654),p=i(62357),c=i(5600),d=i(75215),y=i(1153),h=i(36030),b=i(52011),m=i(35671),g=i(5499),f=i(69237),_=i(96674);i(67676);let w=s=class extends _.wq{constructor(e){super(e),this.color=null,this.ratio=null}clone(){return new s({color:this.color,ratio:this.ratio})}};(0,r._)([(0,c.Cb)({type:o.Z,json:{type:[d.z8],default:null,write:!0}})],w.prototype,"color",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{write:!0}})],w.prototype,"ratio",void 0),w=s=(0,r._)([(0,b.j)("esri.renderers.support.HeatmapColorStop")],w);const v=w;var S=i(2368);let x=class extends((0,S.J)(_.wq)){constructor(){super(...arguments),this.minLabel=null,this.maxLabel=null,this.title=null}};(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],x.prototype,"minLabel",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],x.prototype,"maxLabel",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],x.prototype,"title",void 0),x=(0,r._)([(0,b.j)("esri.renderers.support.HeatmapLegendOptions")],x);var C,j=i(73572),I=i(77987);const Z="esri.renderers.HeatmapRenderer",P=a.Z.getLogger(Z);function M(e){if(null!=e){const{maxDensity:t,minDensity:i,radius:s}=e;if(null!=t||null!=i||null!=s){const{blurRadius:t,maxPixelIntensity:i,minPixelIntensity:s,...r}=e;return r}}return e}let D=C=class extends g.Z{constructor(e){super(e),this.authoringInfo=null,this.colorStops=[new v({ratio:0,color:new o.Z("rgba(255, 140, 0, 0)")}),new v({ratio:.75,color:new o.Z("rgba(255, 140, 0, 1)")}),new v({ratio:.9,color:new o.Z("rgba(255, 0, 0, 1)")})],this.field=null,this.fieldOffset=0,this.legendOptions=null,this.maxDensity=.04,this.minDensity=0,this.radius=18,this.referenceScale=0,this.type="heatmap",this.valueExpression=null,this.valueExpressionTitle=null,this._warnedProps={blurRadius:!1,maxPixelIntensity:!1,minPixelIntensity:!1}}normalizeCtorArgs(e){return M(e)}get blurRadius(){return(0,j.AJ)(this.radius)}set blurRadius(e){const t=this.maxPixelIntensity,i=this.minPixelIntensity;this._set("radius",(0,j.k0)(e)),this._warnAboutDeprecatedGaussianBlurProp("blurRadius","radius"),this._set("maxDensity",t*this._pixelIntensityToDensity),this._set("minDensity",i*this._pixelIntensityToDensity)}get maxPixelIntensity(){return this.maxDensity/this._pixelIntensityToDensity}set maxPixelIntensity(e){this._set("maxDensity",e*this._pixelIntensityToDensity),this._warnAboutDeprecatedGaussianBlurProp("maxPixelIntensity","maxDensity")}get minPixelIntensity(){return this.minDensity/this._pixelIntensityToDensity}set minPixelIntensity(e){this._set("minDensity",e*this._pixelIntensityToDensity),this._warnAboutDeprecatedGaussianBlurProp("minPixelIntensity","minDensity")}get _pixelIntensityToDensity(){return 24/(j.nu**2*this.blurRadius**4)}_warnAboutDeprecatedGaussianBlurProp(e,t){this._warnedProps[e]||"user"===(0,y.vw)(this).getDefaultOrigin()&&(this._warnedProps[e]=!0,(0,u.Os)((()=>{(0,n.Mr)(P,e,{replacement:`${String(t)} (suggested value: ${this._get(t)})`,version:"4.24"})})))}read(e,t){e=M(e),super.read(e,t)}getSymbol(){return new I.Z}async getSymbolAsync(){return this.getSymbol()}getSymbols(){return[this.getSymbol()]}async collectRequiredFields(e,t){const i=this.field,s=this.valueExpression;i&&"string"==typeof i&&await(0,m.AB)(e,t,i),s&&"string"==typeof s&&await(0,m.io)(e,t,s)}getAttributeHash(){return null}getMeshHash(){return`${JSON.stringify(this.colorStops)}.${this.blurRadius}.${this.field}`}clone(){return new C({authoringInfo:this.authoringInfo&&this.authoringInfo.clone(),colorStops:(0,l.d9)(this.colorStops),field:this.field,legendOptions:(0,l.d9)(this.legendOptions),maxDensity:this.maxDensity,minDensity:this.minDensity,radius:this.radius,referenceScale:this.referenceScale,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle})}};(0,r._)([(0,c.Cb)({type:f.Z,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],D.prototype,"authoringInfo",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],D.prototype,"blurRadius",null),(0,r._)([(0,c.Cb)({type:[v],json:{write:!0}})],D.prototype,"colorStops",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0}})],D.prototype,"field",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{write:{overridePolicy:(e,t,i)=>({enabled:null==i})},origins:{"web-scene":{write:!1}}}})],D.prototype,"fieldOffset",void 0),(0,r._)([(0,c.Cb)({type:x,json:{write:!0}})],D.prototype,"legendOptions",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{write:!0}})],D.prototype,"maxDensity",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],D.prototype,"maxPixelIntensity",null),(0,r._)([(0,c.Cb)({type:Number,json:{write:!0}})],D.prototype,"minDensity",void 0),(0,r._)([(0,c.Cb)({type:Number,json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],D.prototype,"minPixelIntensity",null),(0,r._)([(0,c.Cb)({type:Number,cast:p.t_,json:{write:!0}})],D.prototype,"radius",void 0),(0,r._)([(0,c.Cb)({type:Number,range:{min:0},json:{default:0,write:!0}})],D.prototype,"referenceScale",void 0),(0,r._)([(0,h.J)({heatmap:"heatmap"})],D.prototype,"type",void 0),(0,r._)([(0,c.Cb)({type:String,json:{write:!0,origins:{"web-document":{write:!1},"portal-item":{write:!1}}}})],D.prototype,"valueExpression",void 0),(0,r._)([(0,c.Cb)({type:String})],D.prototype,"valueExpressionTitle",void 0),(0,r._)([(0,c.Cb)({readOnly:!0})],D.prototype,"_pixelIntensityToDensity",null),D=C=(0,r._)([(0,b.j)(Z)],D);const E=D},72529:(e,t,i)=>{i.d(t,{Z:()=>S});var s=i(43697),r=i(22303),o=(i(9790),i(2368)),n=i(70586),l=i(62357),a=i(5600),u=(i(75215),i(67676),i(36030)),p=i(52011),c=i(35671),d=i(5499),y=i(41733),h=i(79887),b=i(96674);let m=class extends((0,o.J)(b.wq)){constructor(){super(...arguments),this.color=new r.Z([0,0,0,0]),this.label=null,this.threshold=0}};(0,s._)([(0,a.Cb)({type:r.Z,json:{write:!0}})],m.prototype,"color",void 0),(0,s._)([(0,a.Cb)({type:String,json:{write:!0}})],m.prototype,"label",void 0),(0,s._)([(0,a.Cb)({type:Number,range:{min:0,max:1},json:{write:!0}})],m.prototype,"threshold",void 0),m=(0,s._)([(0,p.j)("esri.renderers.support.OthersCategory")],m);let g=class extends((0,o.J)(b.wq)){constructor(){super(...arguments),this.title=null}};(0,s._)([(0,a.Cb)({type:String,json:{write:!0}})],g.prototype,"title",void 0),g=(0,s._)([(0,p.j)("esri.renderers.support.PieChartLegendOptions")],g);var f=i(77987),_=i(20256),w=i(4095);let v=class extends((0,y.W)((0,o.J)(d.Z))){constructor(e){super(e),this.attributes=null,this.backgroundFillSymbol=null,this.defaultColor=new r.Z([0,0,0,0]),this.defaultLabel=null,this.holePercentage=0,this.othersCategory=new m,this.legendOptions=null,this.outline=null,this.size=12,this.type="pie-chart"}getSymbol(){return new f.Z({size:this.size?this.size/2+(this.outline?.width||0):0})}async getSymbolAsync(){return this.getSymbol()}getSymbols(){return[this.getSymbol(),this.backgroundFillSymbol].filter(n.pC)}getAttributeHash(){return this.visualVariables&&this.visualVariables.reduce(((e,t)=>e+t.getAttributeHash()),"")}getMeshHash(){return this.getSymbols().reduce(((e,t)=>e+JSON.stringify(t)),"")}async collectRequiredFields(e,t){await this.collectVVRequiredFields(e,t);for(const i of this.attributes)i.valueExpression&&await(0,c.io)(e,t,i.valueExpression),i.field&&e.add(i.field)}};(0,s._)([(0,a.Cb)({type:[h.Z],json:{write:!0}})],v.prototype,"attributes",void 0),(0,s._)([(0,a.Cb)({type:_.Z,json:{default:null,write:!0}})],v.prototype,"backgroundFillSymbol",void 0),(0,s._)([(0,a.Cb)({type:r.Z,json:{write:!0}})],v.prototype,"defaultColor",void 0),(0,s._)([(0,a.Cb)({type:String,json:{write:!0}})],v.prototype,"defaultLabel",void 0),(0,s._)([(0,a.Cb)({type:Number,range:{min:0,max:1},json:{write:!0}})],v.prototype,"holePercentage",void 0),(0,s._)([(0,a.Cb)({type:m,json:{write:!0}})],v.prototype,"othersCategory",void 0),(0,s._)([(0,a.Cb)({type:g,json:{write:!0}})],v.prototype,"legendOptions",void 0),(0,s._)([(0,a.Cb)({type:w.Z,json:{default:null,write:!0}})],v.prototype,"outline",void 0),(0,s._)([(0,a.Cb)({type:Number,cast:l.t_,json:{write:!0}})],v.prototype,"size",void 0),(0,s._)([(0,u.J)({pieChart:"pie-chart"})],v.prototype,"type",void 0),v=(0,s._)([(0,p.j)("esri.renderers.PieChartRenderer")],v);const S=v},84382:(e,t,i)=>{i.d(t,{Z:()=>y});var s,r=i(43697),o=i(22974),n=i(5600),l=(i(75215),i(36030)),a=i(52011),u=i(5499),p=i(41733),c=i(9833);let d=s=class extends((0,p.W)(u.Z)){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.getSymbols().map((i=>i.collectRequiredFields(e,t))))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}getSymbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables&&this.visualVariables.reduce(((e,t)=>e+t.getAttributeHash()),"")}getMeshHash(){return this.getSymbols().reduce(((e,t)=>e+JSON.stringify(t)),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new s({description:this.description,label:this.label,symbol:this.symbol&&this.symbol.clone(),visualVariables:(0,o.d9)(this.visualVariables),authoringInfo:this.authoringInfo&&this.authoringInfo.clone()})}};(0,r._)([(0,n.Cb)({type:String,json:{write:!0}})],d.prototype,"description",void 0),(0,r._)([(0,n.Cb)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,r._)([(0,n.Cb)(c.Gn)],d.prototype,"symbol",void 0),(0,r._)([(0,l.J)({simple:"simple"})],d.prototype,"type",void 0),d=s=(0,r._)([(0,a.j)("esri.renderers.SimpleRenderer")],d);const y=d},79887:(e,t,i)=>{i.d(t,{Z:()=>y});var s,r=i(43697),o=i(22303),n=i(96674),l=i(92604),a=i(5600),u=i(90578),p=(i(67676),i(52011)),c=i(75215);let d=s=class extends n.wq{constructor(e){super(e),this.color=null,this.field=null,this.label=null,this.valueExpression=null,this.valueExpressionTitle=null}castField(e){return null==e?e:"function"==typeof e?(l.Z.getLogger(this.declaredClass).error(".field: field must be a string value"),null):(0,c.Zs)(e)}getAttributeHash(){return`${this.field}-${this.valueExpression}`}clone(){return new s({color:this.color&&this.color.clone(),field:this.field,label:this.label,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle})}};(0,r._)([(0,a.Cb)({type:o.Z,json:{type:[Number],write:!0}})],d.prototype,"color",void 0),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"field",void 0),(0,r._)([(0,u.p)("field")],d.prototype,"castField",null),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"valueExpression",void 0),(0,r._)([(0,a.Cb)({type:String,json:{write:!0}})],d.prototype,"valueExpressionTitle",void 0),d=s=(0,r._)([(0,p.j)("esri.renderers.support.AttributeColorInfo")],d);const y=d},84475:(e,t,i)=>{i.r(t),i.d(t,{DictionaryLoader:()=>b});var s=i(22303),r=i(3172),o=i(20102),n=i(92604),l=i(13867),a=i(70586),u=i(95330),p=i(19153),c=i(59266),d=i(17386);const y="esri.renderers.support.DictionaryLoader",h={type:"CIMSimpleLineCallout",lineSymbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",width:.5,color:[0,0,0,255]}]}};class b{constructor(e,t,i){this.config=null,this.fieldMap=null,this.url=null,this._ongoingRequests=new Map,this._symbolCache=new l.Z(100),this._dictionaryPromise=null,this.url=e,this.config=t,this.fieldMap=i}getSymbolFields(){return this._symbolFields}async getSymbolAsync(e,t){let i;this._dictionaryPromise||(this._dictionaryPromise=this.fetchResources(t));try{i=await this._dictionaryPromise}catch(e){if((0,u.D_)(e))return this._dictionaryPromise=null,null}const r={};if(this.fieldMap)for(const t of this._symbolFields){const i=this.fieldMap[t];if(i&&null!=e.attributes[i]){const s=""+e.attributes[i];r[t]=s}else r[t]=""}const o=i?.(r,t);if(!o||"string"!=typeof o)return null;const n=(0,p.hP)(o).toString(),l=this._symbolCache.get(n);if(l)return l.catch((()=>{this._symbolCache.pop(n)})),l;const c=o.split(";"),d=[],y=[];for(const e of c)if(e)if(e.includes("po:")){const t=e.substr(3).split("|");if(3===t.length){const e=t[0],i=t[1];let r=t[2];if("DashTemplate"===i)r=r.split(" ").map((e=>Number(e)));else if("Color"===i){const e=new s.Z(r).toRgba();r=[e[0],e[1],e[2],255*e[3]]}else r=Number(r);y.push({primitiveName:e,propertyName:i,value:r})}}else if(e.includes("|")){for(const t of e.split("|"))if(this._itemNames.has(t)){d.push(t);break}}else this._itemNames.has(e)&&d.push(e);const h=!(0,a.pC)(e.geometry)||!e.geometry.hasZ&&"point"===e.geometry.type,b=this._cimPartsToCIMSymbol(d,y,h,t);return this._symbolCache.put(n,b,1),b}async fetchResources(e){if(this._dictionaryPromise)return this._dictionaryPromise;if(!this.url)return void n.Z.getLogger(y).error("no valid URL!");const t=(0,r.default)(this.url+"/resources/styles/dictionary-info.json",{responseType:"json",query:{f:"json"},signal:(0,a.pC)(e)?e.signal:null}),[{data:i}]=await Promise.all([t,(0,c.LC)()]);if(!i)throw this._dictionaryPromise=null,new o.Z("esri.renderers.DictionaryRenderer","Bad dictionary data!");const s=i.expression,l=i.authoringInfo;this._refSymbolUrlTemplate=this.url+"/"+i.cimRefTemplateUrl,this._itemNames=new Set(i.itemsNames),this._symbolFields=l.symbol;const u={};if(this.config){const e=this.config;for(const t in e)u[t]=e[t]}if(l.configuration)for(const e of l.configuration)u.hasOwnProperty(e.name)||(u[e.name]=e.value);const p=[];if((0,a.pC)(e)&&e.fields&&this.fieldMap)for(const t of this._symbolFields){const i=this.fieldMap[t],s=e.fields.filter((e=>e.name===i));s.length>0&&p.push({...s[0],name:t})}const d=(0,c.pp)(s,(0,a.pC)(e)?e.spatialReference:null,p,u).then((e=>{const t={scale:0};return(i,s)=>{if((0,a.Wi)(e))return null;const r=e.repurposeFeature({geometry:null,attributes:i});return t.scale=(0,a.pC)(s)?s.scale??void 0:void 0,e.evaluate({$feature:r,$view:t})}})).catch((e=>(n.Z.getLogger(y).error("Creating dictinoary expression failed:",e),null)));return this._dictionaryPromise=d,d}async _cimPartsToCIMSymbol(e,t,i,s){const r=new Array(e.length);for(let t=0;t<e.length;t++)r[t]=this._getSymbolPart(e[t],s);const o=await Promise.all(r),n=this.fieldMap;if(n)for(const e of o)m(e,n);return new d.Z({data:this._combineSymbolParts(o,t,i)})}async _getSymbolPart(e,t){if(this._ongoingRequests.has(e))return this._ongoingRequests.get(e).then((e=>e.data));const i=this._refSymbolUrlTemplate.replace(/\{itemName\}/gi,e),s=(0,r.default)(i,{responseType:"json",query:{f:"json"},...t});this._ongoingRequests.set(e,s);try{return(await s).data}catch(t){throw this._ongoingRequests.delete(e),t}}_combineSymbolParts(e,t,i){if(!e||0===e.length)return null;const s={...e[0]};if(e.length>1){s.symbolLayers=[];for(const t of e){const e=t;s.symbolLayers.unshift(...e.symbolLayers)}}return i&&(s.callout=h),{type:"CIMSymbolReference",symbol:s,primitiveOverrides:t}}}function m(e,t){if(!e)return;const i=e.symbolLayers;if(!i)return;let s=i.length;for(;s--;){const e=i[s];e&&!1!==e.enable&&"CIMVectorMarker"===e.type&&g(e,t)}}function g(e,t){const i=e.markerGraphics;if(i)for(const e of i){if(!e)continue;const i=e.symbol;if(i)switch(i.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":m(i,t);break;case"CIMTextSymbol":i.fieldMap=t}}}},73572:(e,t,i)=>{i.d(t,{AJ:()=>n,If:()=>a,QM:()=>l,k0:()=>o,nu:()=>r,wx:()=>u}),i(22021);var s=i(62357);i(98766),i(88669);const r=2.4;function o(e){return(0,s.Wz)(e*r)}function n(e){return(0,s.F2)(e)/r}function l(e,t,i,r){const{radius:o,fieldOffset:n,field:l}=t,u=Math.round((0,s.F2)(o)),p=new Float64Array(i*r);let c,d=Number.NEGATIVE_INFINITY;const y=function(e,t){return null!=e?"string"==typeof t?t=>-1*+t.readAttribute(e):i=>+i.readAttribute(e)+t:e=>1}(l,n),h=new Set;for(const t of e){const e=t.getCursor();for(;e.next();){const t=e.getObjectId();if(h.has(t))continue;h.add(t);const s=e.readLegacyPointGeometry(),o=128;if(s.x<-o||s.x>=i+o||s.y<-o||s.y>r+o)continue;const n=+y(e),l=Math.max(0,Math.round(s.x)-u),b=Math.max(0,Math.round(s.y)-u),m=Math.min(r,Math.round(s.y)+u),g=Math.min(i,Math.round(s.x)+u);for(let e=b;e<m;e++)for(let t=l;t<g;t++){const r=e*i+t,o=a(s.x-t,s.y-e,u);c=p[r]+=o*n,c>d&&(d=c)}}}return{matrix:p.buffer,max:d}}function a(e,t,i){const s=Math.sqrt(e**2+t**2)/i;return s>1?0:3/(Math.PI*i**2)*(1-s**2)**2}function u(e,t){return"function"==typeof e?e:e?"string"==typeof t?t=>-1*+t[e]:i=>+i[e]+t:()=>1}},91423:(e,t,i)=>{i.d(t,{a:()=>l});var s=i(20941),r=i(63213),o=i(32400);const n=(0,r.d)({types:o.A});function l(e,t,i){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?(i&&i.messages&&i.messages.push(new s.Z("renderer:unsupported","Only UniqueValueRenderer can be referenced from a web style, but found '"+e.type+"'",{definition:e,context:i})),null):n(e,t,i):null}},32400:(e,t,i)=>{i.d(t,{A:()=>c,o:()=>d});var s=i(16050),r=i(12501),o=i(28756),n=i(92271),l=i(72529),a=i(5499),u=i(84382),p=i(81571);const c={key:"type",base:a.Z,typeMap:{heatmap:n.Z,simple:u.Z,"unique-value":p.Z,"class-breaks":s.Z,"dot-density":o.Z,dictionary:r.Z,"pie-chart":l.Z},errorContext:"renderer"},d={key:"type",base:a.Z,typeMap:{simple:u.Z,"unique-value":p.Z,"class-breaks":s.Z,heatmap:n.Z},errorContext:"renderer"}}}]);
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.26/esri/copyright.txt for details.
4
4
  */
5
- import{Cyclical as t,cyclical2PI as e}from"../core/Cyclical.js";import{deg2rad as o,rad2deg as n,asinClamped as a}from"../core/mathUtils.js";import{d as i,e as s}from"./mat4.js";import{c as r}from"./mat4f64.js";import{n as c,f as l,e as m,m as f,o as p,l as h,g as u}from"./vec3.js";import{f as y,c as M}from"./vec3f64.js";import d from"../geometry/Extent.js";import{getReferenceEllipsoid as g}from"../geometry/projectionEllipsoid.js";import j from"../geometry/SpatialReference.js";import{geographicToWebMercator as T}from"../geometry/support/webMercatorUtils.js";import{createDirectionUp as b,directionToHeadingTilt as x}from"../views/3d/support/cameraUtilsInternal.js";import{getLonDeltaForDistance as R}from"../views/3d/support/earthUtils.js";const I=y(0,0,1),P=c(M(),y(1,1,1)),v=new t(-180,180),w=r(),U=M(),q=M();function E(t,e,n,a=b()){l(U,t,I),0===m(U,U)&&l(U,t,P),i(w,-o(e),t),s(w,w,-o(n),U);const{up:r,direction:h}=a;return l(r,U,t),c(r,r),f(r,r,w),c(h,t),p(h,h),f(h,h,w),a}function S(t,e,o,n){const a=U,i=q;return c(a,t),l(q,a,I),0===m(q,q)&&l(q,a,P),l(i,q,a),x(e,o,n,a,i)}function _(t,e,n,i){const s={eye:M(),up:null,tilt:i,heading:n},r=U;r[0]=t[0],r[1]=t[2],r[2]=-t[1];const c=e,l=o(n),m=o(i),f=Math.sin(l),p=Math.cos(l),y=Math.sin(m),d=Math.cos(m),g=h(r);let j;if(Math.abs(m)<1e-8)j=c+g;else{const t=g/y,e=a(c/t),o=Math.PI-m-e;j=t*Math.sin(o)}const T=d*c,b=c*c*(y*y),x=p*p*b,R=j-T,I=R*R,P=x*(x+I-r[1]*r[1]);if(P<0)return u(s.eye,r,j/g),s.tilt=0,s;const v=Math.sqrt(P),w=r[1]*R,q=x+I;let E;if(E=p>0?-v+w:v+w,Math.abs(q)<1e-8)return g<1e-8?(s.eye[0]=0,s.eye[1]=0,s.eye[2]=c):u(s.eye,r,j/g),s.tilt=0,H(s.eye),W(s,t);s.eye[1]=E/q;const S=f*f*b,_=y*c,k=p*_*s.eye[1],z=s.eye[1]*s.eye[1],A=1-z,C=Math.sqrt(A),G=x*z+S-2*k*C*R+A*I;return Math.abs(G)<1e-8?(u(s.eye,r,j/g),s.tilt=0,H(s.eye),W(s,t)):(s.eye[0]=(A*(j*r[0]-T*r[0])-_*C*(r[0]*s.eye[1]*p+r[2]*f))/G,s.eye[2]=(A*(j*r[2]-T*r[2])-_*C*(r[2]*s.eye[1]*p-r[0]*f))/G,u(s.eye,s.eye,j),H(s.eye),W(s,t))}function H(t){const e=t[1];t[1]=-t[2],t[2]=e}function W(t,e){const o=E(e,t.heading,t.tilt);return t.up=o.up,t}function k(t,e,o){const i=h(e),s=Math.sqrt(o*o+i*i-2*o*i*Math.cos(Math.PI-t)),r=a(o/(s/Math.sin(t)));return n(t-r)}function z(t,e,n){const i=o(t),s=h(e);return a(n/(s/Math.sin(i)))+i}function A(t,a,i,s,r){let c,l,m,f;const p=a.latitude,h=g(t.spatialReference).radius,u=a.longitude,y=R(p,i,h)/2;c=u-y,l=u+y;const M=o(p),b=(1+Math.sin(M))/(1-Math.sin(M)),x=(b+1)*Math.tan(s/h/2),I=x*x;function P(t){const o=Math.PI/2;return(t=e.normalize(t,-o))>o&&(t=Math.PI-t),t}if(m=1.5*Math.PI-2*Math.atan(.5*(x+Math.sqrt(4*b+I))),f=m+s/h,m=P(m),f=P(f),f<m){const t=f;f=m,m=t}if(m=Math.max(n(m),-90),f=Math.min(n(f),90),l=v.monotonic(c,l),l-c>180){const t=(l-c-180)/2;c+=t,l-=t}const w=t.spatialReference&&t.spatialReference.isGeographic?t.spatialReference:j.WGS84;return r?(r.xmin=c,r.ymin=m,r.xmax=l,r.ymax=f,r.spatialReference=w):r=new d(c,m,l,f,w),t.spatialReference&&t.spatialReference.isWebMercator&&T(r,!1,r),r}const C=Object.freeze(Object.defineProperty({__proto__:null,headingTiltToDirectionUp:E,directionToHeadingTilt:S,eyeForCenterWithHeadingTilt:_,lookAtTiltToEyeTilt:k,eyeTiltToLookAtTilt:z,toExtent:A},Symbol.toStringTag,{value:"Module"}));export{z as a,C as c,S as d,_ as e,E as h,k as l,A as t};
5
+ import{Cyclical as t,cyclical2PI as e}from"../core/Cyclical.js";import{deg2rad as o,rad2deg as n,asinClamped as a}from"../core/mathUtils.js";import{d as i,e as s}from"./mat4.js";import{c as r}from"./mat4f64.js";import{n as c,f as l,e as m,m as f,o as p,l as h,g as u}from"./vec3.js";import{f as y,c as M}from"./vec3f64.js";import d from"../geometry/Extent.js";import{getReferenceEllipsoid as g}from"../geometry/projectionEllipsoid.js";import j from"../geometry/SpatialReference.js";import{geographicToWebMercator as T}from"../geometry/support/webMercatorUtils.js";import{createDirectionUp as b,directionToHeadingTilt as x}from"../views/3d/support/cameraUtilsInternal.js";import{getLonDeltaForDistance as R}from"../views/3d/support/earthUtils.js";const I=y(0,0,1),P=c(M(),y(1,1,1)),v=new t(-180,180),w=r(),U=M(),q=M();function E(t,e,n,a=b()){l(U,t,I),0===m(U,U)&&l(U,t,P),i(w,-o(e),t),s(w,w,-o(n),U);const{up:r,direction:h}=a;return l(r,U,t),c(r,r),f(r,r,w),c(h,t),p(h,h),f(h,h,w),a}function S(t,e,o,n){const a=U,i=q;return c(a,t),l(q,a,I),0===m(q,q)&&l(q,a,P),l(i,q,a),x(e,o,n,a,i)}function _(t,e,n,i){const s={eye:M(),up:null,tilt:i,heading:n},r=U;r[0]=t[0],r[1]=t[2],r[2]=-t[1];const c=e,l=o(n),m=o(i),f=Math.sin(l),p=Math.cos(l),y=Math.sin(m),d=Math.cos(m),g=h(r);let j;if(Math.abs(m)<1e-8)j=c+g;else{const t=g/y,e=a(c/t),o=Math.PI-m-e;j=t*Math.sin(o)}const T=d*c,b=c*c*(y*y),x=p*p*b,R=j-T,I=R*R,P=x*(x+I-r[1]*r[1]);if(P<0)return u(s.eye,r,j/g),s.tilt=0,W(s,t);const v=Math.sqrt(P),w=r[1]*R,q=x+I;let E;if(E=p>0?-v+w:v+w,Math.abs(q)<1e-8)return g<1e-8?(s.eye[0]=0,s.eye[1]=0,s.eye[2]=c):u(s.eye,r,j/g),s.tilt=0,H(s.eye),W(s,t);s.eye[1]=E/q;const S=f*f*b,_=y*c,k=p*_*s.eye[1],z=s.eye[1]*s.eye[1],A=1-z,C=Math.sqrt(A),G=x*z+S-2*k*C*R+A*I;return Math.abs(G)<1e-8?(u(s.eye,r,j/g),s.tilt=0,H(s.eye),W(s,t)):(s.eye[0]=(A*(j*r[0]-T*r[0])-_*C*(r[0]*s.eye[1]*p+r[2]*f))/G,s.eye[2]=(A*(j*r[2]-T*r[2])-_*C*(r[2]*s.eye[1]*p-r[0]*f))/G,u(s.eye,s.eye,j),H(s.eye),W(s,t))}function H(t){const e=t[1];t[1]=-t[2],t[2]=e}function W(t,e){const o=E(e,t.heading,t.tilt);return t.up=o.up,t}function k(t,e,o){const i=h(e),s=Math.sqrt(o*o+i*i-2*o*i*Math.cos(Math.PI-t)),r=a(o/(s/Math.sin(t)));return n(t-r)}function z(t,e,n){const i=o(t),s=h(e);return a(n/(s/Math.sin(i)))+i}function A(t,a,i,s,r){let c,l,m,f;const p=a.latitude,h=g(t.spatialReference).radius,u=a.longitude,y=R(p,i,h)/2;c=u-y,l=u+y;const M=o(p),b=(1+Math.sin(M))/(1-Math.sin(M)),x=(b+1)*Math.tan(s/h/2),I=x*x;function P(t){const o=Math.PI/2;return(t=e.normalize(t,-o))>o&&(t=Math.PI-t),t}if(m=1.5*Math.PI-2*Math.atan(.5*(x+Math.sqrt(4*b+I))),f=m+s/h,m=P(m),f=P(f),f<m){const t=f;f=m,m=t}if(m=Math.max(n(m),-90),f=Math.min(n(f),90),l=v.monotonic(c,l),l-c>180){const t=(l-c-180)/2;c+=t,l-=t}const w=t.spatialReference&&t.spatialReference.isGeographic?t.spatialReference:j.WGS84;return r?(r.xmin=c,r.ymin=m,r.xmax=l,r.ymax=f,r.spatialReference=w):r=new d(c,m,l,f,w),t.spatialReference&&t.spatialReference.isWebMercator&&T(r,!1,r),r}const C=Object.freeze(Object.defineProperty({__proto__:null,headingTiltToDirectionUp:E,directionToHeadingTilt:S,eyeForCenterWithHeadingTilt:_,lookAtTiltToEyeTilt:k,eyeTiltToLookAtTilt:z,toExtent:A},Symbol.toStringTag,{value:"Module"}));export{z as a,C as c,S as d,_ as e,E as h,k as l,A as t};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "4.26.0-next.20221217",
3
+ "version": "4.26.0-next.20221219",
4
4
  "homepage": "https://js.arcgis.com",
5
5
  "description": "ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API",
6
6
  "keywords": [
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.26/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../Color.js";import t from"../../request.js";import s from"../../core/Error.js";import o from"../../core/Logger.js";import i from"../../core/LRUCache.js";import{isSome as r,isNone as n}from"../../core/maybe.js";import{isAbortError as l}from"../../core/promiseUtils.js";import{numericHash as a}from"../../core/string.js";import{loadArcade as c,createDictionaryExpression as m}from"../../support/arcadeOnDemand.js";import f from"../../symbols/CIMSymbol.js";const h="esri.renderers.support.DictionaryLoader",y={type:"CIMSimpleLineCallout",lineSymbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",width:.5,color:[0,0,0,255]}]}};class u{constructor(e,t,s){this.config=null,this.fieldMap=null,this.url=null,this._ongoingRequests=new Map,this._symbolCache=new i(100),this._dictionaryPromise=null,this.url=e,this.config=t,this.fieldMap=s}getSymbolFields(){return this._symbolFields}async getSymbolAsync(t,s){let o;this._dictionaryPromise||(this._dictionaryPromise=this.fetchResources(s));try{o=await this._dictionaryPromise}catch(g){if(l(g))return this._dictionaryPromise=null,null}const i={};if(this.fieldMap)for(const e of this._symbolFields){const s=this.fieldMap[e];if(s&&null!=t.attributes[s]){const o=""+t.attributes[s];i[e]=o}else i[e]=""}const n=o?.(i,s);if(!n||"string"!=typeof n)return null;const c=a(n).toString(),m=this._symbolCache.get(c);if(m)return m.catch((()=>{this._symbolCache.pop(c)})),m;const f=n.split(";"),h=[],y=[];for(const r of f)if(r)if(r.includes("po:")){const t=r.substr(3).split("|");if(3===t.length){const s=t[0],o=t[1];let i=t[2];if("DashTemplate"===o)i=i.split(" ").map((e=>Number(e)));else if("Color"===o){const t=new e(i).toRgba();i=[t[0],t[1],t[2],255*t[3]]}else i=Number(i);y.push({primitiveName:s,propertyName:o,value:i})}}else if(r.includes("|")){for(const e of r.split("|"))if(this._itemNames.has(e)){h.push(e);break}}else this._itemNames.has(r)&&h.push(r);const u=!r(t.geometry)||!t.geometry.hasZ&&"point"===t.geometry.type,p=this._cimPartsToCIMSymbol(h,y,u,s);return this._symbolCache.put(c,p,1),p}async fetchResources(e){if(this._dictionaryPromise)return this._dictionaryPromise;if(!this.url)return void o.getLogger(h).error("no valid URL!");const i=t(this.url+"/resources/styles/dictionary-info.json",{responseType:"json",query:{f:"json"},signal:r(e)?e.signal:null}),[{data:l}]=await Promise.all([i,c()]);if(!l)throw this._dictionaryPromise=null,new s("esri.renderers.DictionaryRenderer","Bad dictionary data!");const a=l.expression,f=l.authoringInfo;this._refSymbolUrlTemplate=this.url+"/"+l.cimRefTemplateUrl,this._itemNames=new Set(l.itemsNames),this._symbolFields=f.symbol;const y={};if(this.config){const e=this.config;for(const t in e)y[t]=e[t]}if(f.configuration)for(const t of f.configuration)y.hasOwnProperty(t.name)||(y[t.name]=t.value);const u=[];if(r(e)&&e.fields&&this.fieldMap)for(const t of this._symbolFields){const s=this.fieldMap[t],o=e.fields.filter((e=>e.name===s));o.length>0&&u.push({...o[0],name:t})}const p=m(a,r(e)?e.spatialReference:null,u,y).then((e=>{const t={scale:0};return(s,o)=>{if(n(e))return null;const i=e.repurposeFeature({geometry:null,attributes:s});return t.scale=r(o)?o.scale:void 0,e.evaluate({$feature:i,$view:t})}})).catch((e=>(o.getLogger(h).error("Creating dictinoary expression failed:",e),null)));return this._dictionaryPromise=p,p}async _cimPartsToCIMSymbol(e,t,s,o){const i=new Array(e.length);for(let l=0;l<e.length;l++)i[l]=this._getSymbolPart(e[l],o);const r=await Promise.all(i),n=this.fieldMap;if(n)for(const l of r)p(l,n);return new f({data:this._combineSymbolParts(r,t,s)})}async _getSymbolPart(e,s){if(this._ongoingRequests.has(e))return this._ongoingRequests.get(e).then((e=>e.data));const o=this._refSymbolUrlTemplate.replace(/\{itemName\}/gi,e),i=t(o,{responseType:"json",query:{f:"json"},...s});this._ongoingRequests.set(e,i);try{return(await i).data}catch(r){throw this._ongoingRequests.delete(e),r}}_combineSymbolParts(e,t,s){if(!e||0===e.length)return null;const o={...e[0]};if(e.length>1){o.symbolLayers=[];for(const t of e){const e=t;o.symbolLayers.unshift(...e.symbolLayers)}}return s&&(o.callout=y),{type:"CIMSymbolReference",symbol:o,primitiveOverrides:t}}}function p(e,t){if(!e)return;const s=e.symbolLayers;if(!s)return;let o=s.length;for(;o--;){const e=s[o];if(e&&!1!==e.enable&&"CIMVectorMarker"===e.type)g(e,t)}}function g(e,t){const s=e.markerGraphics;if(s)for(const o of s){if(!o)continue;const e=o.symbol;if(e)switch(e.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":p(e,t);break;case"CIMTextSymbol":e.fieldMap=t}}}export{u as DictionaryLoader};
5
+ import e from"../../Color.js";import t from"../../request.js";import s from"../../core/Error.js";import o from"../../core/Logger.js";import i from"../../core/LRUCache.js";import{isSome as r,isNone as n}from"../../core/maybe.js";import{isAbortError as l}from"../../core/promiseUtils.js";import{numericHash as a}from"../../core/string.js";import{loadArcade as c,createDictionaryExpression as m}from"../../support/arcadeOnDemand.js";import f from"../../symbols/CIMSymbol.js";const h="esri.renderers.support.DictionaryLoader",y={type:"CIMSimpleLineCallout",lineSymbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",width:.5,color:[0,0,0,255]}]}};class u{constructor(e,t,s){this.config=null,this.fieldMap=null,this.url=null,this._ongoingRequests=new Map,this._symbolCache=new i(100),this._dictionaryPromise=null,this.url=e,this.config=t,this.fieldMap=s}getSymbolFields(){return this._symbolFields}async getSymbolAsync(t,s){let o;this._dictionaryPromise||(this._dictionaryPromise=this.fetchResources(s));try{o=await this._dictionaryPromise}catch(g){if(l(g))return this._dictionaryPromise=null,null}const i={};if(this.fieldMap)for(const e of this._symbolFields){const s=this.fieldMap[e];if(s&&null!=t.attributes[s]){const o=""+t.attributes[s];i[e]=o}else i[e]=""}const n=o?.(i,s);if(!n||"string"!=typeof n)return null;const c=a(n).toString(),m=this._symbolCache.get(c);if(m)return m.catch((()=>{this._symbolCache.pop(c)})),m;const f=n.split(";"),h=[],y=[];for(const r of f)if(r)if(r.includes("po:")){const t=r.substr(3).split("|");if(3===t.length){const s=t[0],o=t[1];let i=t[2];if("DashTemplate"===o)i=i.split(" ").map((e=>Number(e)));else if("Color"===o){const t=new e(i).toRgba();i=[t[0],t[1],t[2],255*t[3]]}else i=Number(i);y.push({primitiveName:s,propertyName:o,value:i})}}else if(r.includes("|")){for(const e of r.split("|"))if(this._itemNames.has(e)){h.push(e);break}}else this._itemNames.has(r)&&h.push(r);const u=!r(t.geometry)||!t.geometry.hasZ&&"point"===t.geometry.type,p=this._cimPartsToCIMSymbol(h,y,u,s);return this._symbolCache.put(c,p,1),p}async fetchResources(e){if(this._dictionaryPromise)return this._dictionaryPromise;if(!this.url)return void o.getLogger(h).error("no valid URL!");const i=t(this.url+"/resources/styles/dictionary-info.json",{responseType:"json",query:{f:"json"},signal:r(e)?e.signal:null}),[{data:l}]=await Promise.all([i,c()]);if(!l)throw this._dictionaryPromise=null,new s("esri.renderers.DictionaryRenderer","Bad dictionary data!");const a=l.expression,f=l.authoringInfo;this._refSymbolUrlTemplate=this.url+"/"+l.cimRefTemplateUrl,this._itemNames=new Set(l.itemsNames),this._symbolFields=f.symbol;const y={};if(this.config){const e=this.config;for(const t in e)y[t]=e[t]}if(f.configuration)for(const t of f.configuration)y.hasOwnProperty(t.name)||(y[t.name]=t.value);const u=[];if(r(e)&&e.fields&&this.fieldMap)for(const t of this._symbolFields){const s=this.fieldMap[t],o=e.fields.filter((e=>e.name===s));o.length>0&&u.push({...o[0],name:t})}const p=m(a,r(e)?e.spatialReference:null,u,y).then((e=>{const t={scale:0};return(s,o)=>{if(n(e))return null;const i=e.repurposeFeature({geometry:null,attributes:s});return t.scale=r(o)?o.scale??void 0:void 0,e.evaluate({$feature:i,$view:t})}})).catch((e=>(o.getLogger(h).error("Creating dictinoary expression failed:",e),null)));return this._dictionaryPromise=p,p}async _cimPartsToCIMSymbol(e,t,s,o){const i=new Array(e.length);for(let l=0;l<e.length;l++)i[l]=this._getSymbolPart(e[l],o);const r=await Promise.all(i),n=this.fieldMap;if(n)for(const l of r)p(l,n);return new f({data:this._combineSymbolParts(r,t,s)})}async _getSymbolPart(e,s){if(this._ongoingRequests.has(e))return this._ongoingRequests.get(e).then((e=>e.data));const o=this._refSymbolUrlTemplate.replace(/\{itemName\}/gi,e),i=t(o,{responseType:"json",query:{f:"json"},...s});this._ongoingRequests.set(e,i);try{return(await i).data}catch(r){throw this._ongoingRequests.delete(e),r}}_combineSymbolParts(e,t,s){if(!e||0===e.length)return null;const o={...e[0]};if(e.length>1){o.symbolLayers=[];for(const t of e){const e=t;o.symbolLayers.unshift(...e.symbolLayers)}}return s&&(o.callout=y),{type:"CIMSymbolReference",symbol:o,primitiveOverrides:t}}}function p(e,t){if(!e)return;const s=e.symbolLayers;if(!s)return;let o=s.length;for(;o--;){const e=s[o];if(e&&!1!==e.enable&&"CIMVectorMarker"===e.type)g(e,t)}}function g(e,t){const s=e.markerGraphics;if(s)for(const o of s){if(!o)continue;const e=o.symbol;if(e)switch(e.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":p(e,t);break;case"CIMTextSymbol":e.fieldMap=t}}}export{u as DictionaryLoader};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.26/esri/copyright.txt for details.
4
4
  */
5
- const d="20221217",e="3d6e5db13487a1d9a318719338422fe6f1965b63";export{d as buildDate,e as commitHash};
5
+ const c="20221219",f="c9c6ec98ad7f806fc2137d80fbc33552b901889c";export{c as buildDate,f as commitHash};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.26/esri/copyright.txt for details.
4
4
  */
5
- import{deg2rad as e}from"../../../../../core/mathUtils.js";import{isSome as t,unwrapOr as s}from"../../../../../core/maybe.js";import{createLength as i,createArea as o}from"../../../../../core/quantityUtils.js";import{s as r,d as n}from"../../../../../chunks/vec2.js";import{a as h}from"../../../../../chunks/vec2f64.js";import{n as a,i as d,c as g,f as l,o as p,b as c,e as m,g as u,a as _}from"../../../../../chunks/vec3.js";import{c as C}from"../../../../../chunks/vec3f64.js";import{c as f}from"../../../../../chunks/vec4f64.js";import{canProjectWithoutEngine as S,canProjectToWGS84ComparableLonLat as L,projectPointToVector as P,projectPointToWGS84ComparableLonLat as R,projectDirection as j,projectVectorToVector as M}from"../../../../../geometry/projection.js";import{getSphericalPCPF as A,getReferenceEllipsoid as W}from"../../../../../geometry/projectionEllipsoid.js";import v from"../../../../../geometry/SpatialReference.js";import{Axis as w}from"../../../../../geometry/support/Axis.js";import{segmentIntersects as z}from"../../../../../geometry/support/intersectsBase.js";import{areaPoints2d as I}from"../../../../../geometry/support/triangle.js";import{MeasurementMode as U}from"../../interfaces.js";import{segmentLengthGeodesicVector as G,bestFitPlane as V,fitHemisphere as y,triangleAreaGeodesic as T,planePointDistance as F,boundingSphere as b,segmentLengthGeodesic as E,segmentLengthEuclidean as N}from"../../support/measurementUtils.js";import{midpoint as x}from"../../support/viewUtils.js";import{getElevationAtPoint as k}from"../../../support/ElevationProvider.js";import{makeOrthonormal as q,tangentFrame as D}from"../../../support/mathUtils.js";import{compactIndices as B}from"../../../webgl-engine/lib/Indices.js";import{triangulate as H}from"../../../../support/euclideanAreaMeasurementUtils.js";class X{constructor(e,t){this.positionsWorldCoords=[],this.positionsRenderCoords=[],this.positionsProjectedWorldCoords=[],this.positionsFittedRenderCoords=[],this.positionsGeographic=[],this.positionsSpherical=[],this.positionsStereographic=[],this.pathSegmentLengths=[],this.geodesicPathSegmentLengths=[],this.perimeterSegmentLengths=[],this.intersectingSegments=new Set,this.geodesicIntersectingSegments=new Set,this.areaCentroidWorldCoords=C(),this.areaCentroidRenderCoords=C(),this.geodesicAreaCentroidRenderCoords=C(),this._length=0,this._centroidRenderCoords=C(),this._planeWorldCoords=f(),this._worldUp=C(),this._worldTangent=C(),this._frame=[C(),C(),C()],this._pathVersion=-1,this._validMeasurement=!1,this._hasCursorPoint=!1,this._mode=null,this._tempU=C(),this._tempV=C(),this._tempVec3=C(),this._tempSphere={center:C(),radius:0},this._sceneView=e,this.unitNormalizer=t}update(e,s,o,r,n,h,d){const g=this.unitNormalizer,l=this._sceneView.renderSpatialReference,p=this.unitNormalizer.spatialReference,c=t(s);if(this._pathVersion===e.version&&this._validMeasurement===r&&!d&&this._hasCursorPoint===c&&this._mode===h){return!e.isValidPolygon&&(this._updateCursorSegmentLength(e,s),!0)}this._pathVersion=e.version,this._validMeasurement=r,this._hasCursorPoint=c;const m=e.numVertices;this._resize(m);const u=A(o.spatialReference),_=S(o.spatialReference,u)&&L(o.spatialReference),{positionsGeographic:C,positionsWorldCoords:f,positionsRenderCoords:j,positionsSpherical:M}=this;e.forEachVertexPosition(((e,t)=>{Z(o.elevationProvider,e),P(e,f[t],p),P(e,j[t],l),_&&(R(e,C[t]),P(e,M[t],u),a(M[t],M[t]))}));const W=this._updatePathLengths(r);if(this.pathLength=this._length>1?i(g.normalizeDistance(W),"meters"):null,_){const e=this._updateGeodesicPathLengths(r,p);this.geodesicPathLength=this._length>1?i(e,"meters"):null}else this.geodesicPathLength=null;return this._updateCursorSegmentLength(e,s),this._updateMode(e,h),r?(this._updateArea(o,g,l,p,n),_&&this._updateGeodesicArea(o),!0):(this.area=null,this.geodesicArea=null,this.perimeterLength=null,this.triangleIndices=null,this.geodesicTriangleIndices=null,this.intersectingSegments.clear(),this.geodesicIntersectingSegments.clear(),!0)}getData(){return{positionsWorldCoords:this.positionsWorldCoords,positionsRenderCoords:this.positionsRenderCoords,positionsProjectedWorldCoords:this.positionsProjectedWorldCoords,positionsFittedRenderCoords:this.positionsFittedRenderCoords,positionsGeographic:this.positionsGeographic,positionsSpherical:this.positionsSpherical,positionsStereographic:this.positionsStereographic,pathSegmentLengths:this.pathSegmentLengths,geodesicPathSegmentLengths:this.geodesicPathSegmentLengths,perimeterSegmentLengths:this.perimeterSegmentLengths,intersectingSegments:this.intersectingSegments,geodesicIntersectingSegments:this.geodesicIntersectingSegments,triangleIndices:this.triangleIndices,geodesicTriangleIndices:this.geodesicTriangleIndices,areaCentroidWorldCoords:this.areaCentroidWorldCoords,areaCentroidRenderCoords:this.areaCentroidRenderCoords,geodesicAreaCentroidRenderCoords:this.geodesicAreaCentroidRenderCoords,fittingMode:this.fittingMode,area:this.area,geodesicArea:this.geodesicArea,pathLength:this.pathLength,geodesicPathLength:this.geodesicPathLength,perimeterLength:this.perimeterLength,cursorSegmentLength:this.cursorSegmentLength,geodesicCursorSegmentLength:this.geodesicCursorSegmentLength,unitNormalizer:this.unitNormalizer,actualMeasurementMode:this.actualMeasurementMode}}_resize(e){for(e<this._length&&(this.positionsWorldCoords.length=e,this.positionsRenderCoords.length=e,this.positionsProjectedWorldCoords.length=e,this.positionsFittedRenderCoords.length=e,this.positionsGeographic.length=e,this.positionsSpherical.length=e,this.positionsStereographic.length=e,this.pathSegmentLengths.length=e,this.geodesicPathSegmentLengths.length=e,this.perimeterSegmentLengths.length=e,this._length=e);this._length<e;)this.positionsWorldCoords.push(C()),this.positionsRenderCoords.push(C()),this.positionsProjectedWorldCoords.push(h()),this.positionsFittedRenderCoords.push(C()),this.positionsGeographic.push(C()),this.positionsSpherical.push(C()),this.positionsStereographic.push(h()),this.pathSegmentLengths.push(0),this.geodesicPathSegmentLengths.push(0),this.perimeterSegmentLengths.push(0),++this._length}_updatePathLengths(e){const t=this.positionsWorldCoords,s=this.pathSegmentLengths;let i=0;for(let o=0;o<this._length;++o){const r=s[o]=d(t[o],t[(o+1)%this._length]);(o<this._length-1||e)&&(i+=r)}return i}_updateGeodesicPathLengths(e,t){const s=this.positionsGeographic,i=this.geodesicPathSegmentLengths;let o=0;for(let r=0;r<this._length;++r){const n=i[r]=G(s[r],s[(r+1)%this._length],t);(r<this._length-1||e)&&(o+=n)}return o}_updateArea(e,t,s,n,h){const a=e.renderCoordsHelper,d=this.positionsWorldCoords,C=this.positionsRenderCoords,f=this.positionsProjectedWorldCoords,S=this.positionsFittedRenderCoords,L=this._planeWorldCoords,P=this._centroidRenderCoords;x(C,P),a.worldUpAtPosition(P,this._worldUp),a.worldBasisAtPosition(P,w.X,this._worldTangent),j(P,this._worldUp,s,this._worldUp,n),j(P,this._worldTangent,s,this._worldTangent,n),d.length>2&&V(d,L),this.fittingMode=this._selectFittingMode(L,d,this._worldUp,h);let R=0;if("horizontal"===this.fittingMode){let e=-1/0;C.forEach(((t,s)=>{const i=a.getAltitude(C[s]);i>e&&(e=i,R=s)}))}const A=d[R];let W=L,v=this._worldTangent;"horizontal"===this.fittingMode?W=this._worldUp:"vertical"===this.fittingMode&&(W=this._tempVec3,v=this._worldUp,q(L,this._worldUp,W)),g(this._frame[2],W),q(v,W,this._frame[0]),l(this._frame[1],this._frame[0],this._frame[2]),p(this._frame[1],this._frame[1]);const z=this._tempVec3,I=this._tempU,U=this._tempV;for(let i=0;i<this._length;++i){const e=f[i],t=S[i];c(z,d[i],A),r(e,m(this._frame[0],z),m(this._frame[1],z)),u(I,this._frame[0],e[0]),u(U,this._frame[1],e[1]),_(z,I,U),_(z,z,A),M(z,n,t,s)}this.perimeterLength=this._length>0?i(t.normalizeDistance(this._updatePerimeterLengths()),"meters"):null,x(S,this.areaCentroidRenderCoords),M(this.areaCentroidRenderCoords,s,this.areaCentroidWorldCoords,n),this._updateIntersectingSegments(),this.area=0===this.intersectingSegments.size?o(t.normalizeArea(this._computeArea()),"square-meters"):null}_updateGeodesicArea(e){const{renderCoordsHelper:t,spatialReference:s}=e,{positionsSpherical:i,positionsStereographic:n}=this,h=this._tempVec3,a=y(i,h);if(!a)return void(this.geodesicArea=null);const d=this._tempU,g=this._tempV;D(h,d,g);for(let o=0;o<this._length;++o){const e=m(i[o],d),t=m(i[o],g),s=m(i[o],h);r(n[o],e/s,t/s)}u(h,h,W(s).radius),t.toRenderCoords(h,A(s),this.geodesicAreaCentroidRenderCoords),this._updateGeodesicIntersectingSegments(),this.geodesicArea=a&&0===this.geodesicIntersectingSegments.size?o(this._computeGeodesicArea(),"square-meters"):null}_updatePerimeterLengths(){const e=this.positionsProjectedWorldCoords,t=this.perimeterSegmentLengths;let s=0;for(let i=0;i<this._length;++i){s+=t[i]=n(e[i],e[(i+1)%this._length])}return s}_updateIntersectingSegments(){const e=this.positionsProjectedWorldCoords,t=this.intersectingSegments;t.clear();for(let s=0;s<this._length;++s)for(let i=s+2;i<this._length;++i){if((i+1)%this._length===s)continue;const o=e[s],r=e[(s+1)%this._length],n=e[i],h=e[(i+1)%this._length];z(o,r,n,h)&&(t.add(s),t.add(i))}}_computeArea(){const e=this.positionsProjectedWorldCoords,t=this.triangleIndices=B(H(e));let s=0;for(let i=0;i<t.length;i+=3)s+=I(e[t[i]],e[t[i+1]],e[t[i+2]]);return s}_updateGeodesicIntersectingSegments(){const e=this.positionsStereographic,t=this.geodesicIntersectingSegments;t.clear();for(let s=0;s<this._length;++s)for(let i=s+2;i<this._length;++i){if((i+1)%this._length===s)continue;const o=e[s],r=e[(s+1)%this._length],n=e[i],h=e[(i+1)%this._length];z(o,r,n,h)&&(t.add(s),t.add(i))}}_computeGeodesicArea(){const e=this.positionsGeographic,t=this.positionsStereographic,s=this.geodesicTriangleIndices=B(H(t));let i=0;for(let o=0;o<s.length;o+=3)i+=T(e[s[o]],e[s[o+1]],e[s[o+2]],v.WGS84);return i}_selectFittingMode(t,s,i,o){const r=s.map((e=>Math.abs(F(t,e)))).reduce(((e,t)=>Math.max(e,t)),0);b(s,this._tempSphere);const n=r/(2*this._tempSphere.radius),h=n<o.maxRelativeErrorCoplanar,a=n<o.maxRelativeErrorAlmostCoplanar;let d="horizontal";if(h)d="oblique";else if(a){d=Math.abs(m(i,t))>Math.cos(e(o.verticalAngleThreshold))?"horizontal":"vertical"}return d}_updateCursorSegmentLength(e,s){const o=e.lastPoint;!e.isValidPolygon&&t(o)&&t(s)?(this.geodesicCursorSegmentLength=i(E(o,s),"meters"),this.cursorSegmentLength=i(this.unitNormalizer.normalizeDistance(N(o,s,this.unitNormalizer.spatialReference)),"meters")):(this.geodesicCursorSegmentLength=null,this.cursorSegmentLength=null)}_updateMode(e,s){if(s===U.Auto){this.actualMeasurementMode="euclidean";let s=0;null!=this.geodesicPathLength&&(s+=this.geodesicPathLength.value),!e.isValidPolygon&&t(this.geodesicCursorSegmentLength)&&(s+=this.geodesicCursorSegmentLength.value),s>J&&(this.actualMeasurementMode="geodesic")}else this.actualMeasurementMode=s===U.Euclidean?"euclidean":"geodesic";null==this.geodesicPathLength&&(this.actualMeasurementMode="euclidean"),this._mode=s}}function Z(e,t){t.hasZ||(t.z=s(k(e,t,"ground"),0))}const J=1e5;export{X as MeasurementDataManager};
5
+ import{deg2rad as e}from"../../../../../core/mathUtils.js";import{isSome as t,unwrapOr as s}from"../../../../../core/maybe.js";import{createLength as i,createArea as o}from"../../../../../core/quantityUtils.js";import{s as r,d as n}from"../../../../../chunks/vec2.js";import{a as h}from"../../../../../chunks/vec2f64.js";import{n as a,i as d,c as g,f as l,o as c,b as p,e as m,g as u,a as _}from"../../../../../chunks/vec3.js";import{c as C}from"../../../../../chunks/vec3f64.js";import{c as f}from"../../../../../chunks/vec4f64.js";import{canProjectWithoutEngine as S,canProjectToWGS84ComparableLonLat as L,projectPointToVector as P,projectPointToWGS84ComparableLonLat as R,projectDirection as j,projectVectorToVector as M}from"../../../../../geometry/projection.js";import{getSphericalPCPF as A,getReferenceEllipsoid as v}from"../../../../../geometry/projectionEllipsoid.js";import W from"../../../../../geometry/SpatialReference.js";import{Axis as w}from"../../../../../geometry/support/Axis.js";import{segmentIntersects as I}from"../../../../../geometry/support/intersectsBase.js";import{areaPoints2d as z}from"../../../../../geometry/support/triangle.js";import{MeasurementMode as U}from"../../interfaces.js";import{segmentLengthGeodesicVector as G,bestFitPlane as V,fitHemisphere as y,triangleAreaGeodesic as T,planePointDistance as F,boundingSphere as b,segmentLengthGeodesic as E,segmentLengthEuclidean as N}from"../../support/measurementUtils.js";import{midpoint as x}from"../../support/viewUtils.js";import{getElevationAtPoint as k}from"../../../support/ElevationProvider.js";import{makeOrthonormal as q,tangentFrame as D}from"../../../support/mathUtils.js";import{compactIndices as B}from"../../../webgl-engine/lib/Indices.js";import{triangulate as H}from"../../../../support/euclideanAreaMeasurementUtils.js";class X{constructor(e,t){this.positionsWorldCoords=[],this.positionsRenderCoords=[],this.positionsProjectedWorldCoords=[],this.positionsFittedRenderCoords=[],this.positionsGeographic=[],this.positionsSpherical=[],this.positionsStereographic=[],this.pathSegmentLengths=[],this.geodesicPathSegmentLengths=[],this.perimeterSegmentLengths=[],this.intersectingSegments=new Set,this.geodesicIntersectingSegments=new Set,this.triangleIndices=null,this.geodesicTriangleIndices=null,this.areaCentroidWorldCoords=C(),this.areaCentroidRenderCoords=C(),this.geodesicAreaCentroidRenderCoords=C(),this.area=null,this.geodesicArea=null,this.pathLength=null,this.geodesicPathLength=null,this.perimeterLength=null,this._length=0,this._centroidRenderCoords=C(),this._planeWorldCoords=f(),this._worldUp=C(),this._worldTangent=C(),this._frame=[C(),C(),C()],this._pathVersion=-1,this._validMeasurement=!1,this._hasCursorPoint=!1,this._mode=null,this._tempU=C(),this._tempV=C(),this._tempVec3=C(),this._tempSphere={center:C(),radius:0},this._sceneView=e,this.unitNormalizer=t}update(e,s,o,r,n,h,d){const g=this.unitNormalizer,l=this._sceneView.renderSpatialReference,c=this.unitNormalizer.spatialReference,p=t(s);if(this._pathVersion===e.version&&this._validMeasurement===r&&!d&&this._hasCursorPoint===p&&this._mode===h){return!e.isValidPolygon&&(this._updateCursorSegmentLength(e,s),!0)}this._pathVersion=e.version,this._validMeasurement=r,this._hasCursorPoint=p;const m=e.numVertices;this._resize(m);const u=A(o.spatialReference),_=S(o.spatialReference,u)&&L(o.spatialReference),{positionsGeographic:C,positionsWorldCoords:f,positionsRenderCoords:j,positionsSpherical:M}=this;e.forEachVertexPosition(((e,t)=>{Z(o.elevationProvider,e),P(e,f[t],c),P(e,j[t],l),_&&(R(e,C[t]),P(e,M[t],u),a(M[t],M[t]))}));const v=this._updatePathLengths(r);if(this.pathLength=this._length>1?i(g.normalizeDistance(v),"meters"):null,_){const e=this._updateGeodesicPathLengths(r,c);this.geodesicPathLength=this._length>1?i(e,"meters"):null}else this.geodesicPathLength=null;return this._updateCursorSegmentLength(e,s),this._updateMode(e,h),r?(this._updateArea(o,g,l,c,n),_&&this._updateGeodesicArea(o),!0):(this.area=null,this.geodesicArea=null,this.perimeterLength=null,this.triangleIndices=null,this.geodesicTriangleIndices=null,this.intersectingSegments.clear(),this.geodesicIntersectingSegments.clear(),!0)}getData(){return{positionsWorldCoords:this.positionsWorldCoords,positionsRenderCoords:this.positionsRenderCoords,positionsProjectedWorldCoords:this.positionsProjectedWorldCoords,positionsFittedRenderCoords:this.positionsFittedRenderCoords,positionsGeographic:this.positionsGeographic,positionsSpherical:this.positionsSpherical,positionsStereographic:this.positionsStereographic,pathSegmentLengths:this.pathSegmentLengths,geodesicPathSegmentLengths:this.geodesicPathSegmentLengths,perimeterSegmentLengths:this.perimeterSegmentLengths,intersectingSegments:this.intersectingSegments,geodesicIntersectingSegments:this.geodesicIntersectingSegments,triangleIndices:this.triangleIndices,geodesicTriangleIndices:this.geodesicTriangleIndices,areaCentroidWorldCoords:this.areaCentroidWorldCoords,areaCentroidRenderCoords:this.areaCentroidRenderCoords,geodesicAreaCentroidRenderCoords:this.geodesicAreaCentroidRenderCoords,fittingMode:this.fittingMode,area:this.area,geodesicArea:this.geodesicArea,pathLength:this.pathLength,geodesicPathLength:this.geodesicPathLength,perimeterLength:this.perimeterLength,cursorSegmentLength:this.cursorSegmentLength,geodesicCursorSegmentLength:this.geodesicCursorSegmentLength,unitNormalizer:this.unitNormalizer,actualMeasurementMode:this.actualMeasurementMode}}_resize(e){for(e<this._length&&(this.positionsWorldCoords.length=e,this.positionsRenderCoords.length=e,this.positionsProjectedWorldCoords.length=e,this.positionsFittedRenderCoords.length=e,this.positionsGeographic.length=e,this.positionsSpherical.length=e,this.positionsStereographic.length=e,this.pathSegmentLengths.length=e,this.geodesicPathSegmentLengths.length=e,this.perimeterSegmentLengths.length=e,this._length=e);this._length<e;)this.positionsWorldCoords.push(C()),this.positionsRenderCoords.push(C()),this.positionsProjectedWorldCoords.push(h()),this.positionsFittedRenderCoords.push(C()),this.positionsGeographic.push(C()),this.positionsSpherical.push(C()),this.positionsStereographic.push(h()),this.pathSegmentLengths.push(0),this.geodesicPathSegmentLengths.push(0),this.perimeterSegmentLengths.push(0),++this._length}_updatePathLengths(e){const t=this.positionsWorldCoords,s=this.pathSegmentLengths;let i=0;for(let o=0;o<this._length;++o){const r=s[o]=d(t[o],t[(o+1)%this._length]);(o<this._length-1||e)&&(i+=r)}return i}_updateGeodesicPathLengths(e,t){const s=this.positionsGeographic,i=this.geodesicPathSegmentLengths;let o=0;for(let r=0;r<this._length;++r){const n=i[r]=G(s[r],s[(r+1)%this._length],t??void 0);(r<this._length-1||e)&&(o+=n)}return o}_updateArea(e,t,s,n,h){const a=e.renderCoordsHelper,d=this.positionsWorldCoords,C=this.positionsRenderCoords,f=this.positionsProjectedWorldCoords,S=this.positionsFittedRenderCoords,L=this._planeWorldCoords,P=this._centroidRenderCoords;x(C,P),a.worldUpAtPosition(P,this._worldUp),a.worldBasisAtPosition(P,w.X,this._worldTangent),j(P,this._worldUp,s,this._worldUp,n),j(P,this._worldTangent,s,this._worldTangent,n),d.length>2&&V(d,L),this.fittingMode=this._selectFittingMode(L,d,this._worldUp,h);let R=0;if("horizontal"===this.fittingMode){let e=-1/0;C.forEach(((t,s)=>{const i=a.getAltitude(C[s]);i>e&&(e=i,R=s)}))}const A=d[R];let v=L,W=this._worldTangent;"horizontal"===this.fittingMode?v=this._worldUp:"vertical"===this.fittingMode&&(v=this._tempVec3,W=this._worldUp,q(L,this._worldUp,v)),g(this._frame[2],v),q(W,v,this._frame[0]),l(this._frame[1],this._frame[0],this._frame[2]),c(this._frame[1],this._frame[1]);const I=this._tempVec3,z=this._tempU,U=this._tempV;for(let i=0;i<this._length;++i){const e=f[i],t=S[i];p(I,d[i],A),r(e,m(this._frame[0],I),m(this._frame[1],I)),u(z,this._frame[0],e[0]),u(U,this._frame[1],e[1]),_(I,z,U),_(I,I,A),M(I,n,t,s)}this.perimeterLength=this._length>0?i(t.normalizeDistance(this._updatePerimeterLengths()),"meters"):null,x(S,this.areaCentroidRenderCoords),M(this.areaCentroidRenderCoords,s,this.areaCentroidWorldCoords,n),this._updateIntersectingSegments(),this.area=0===this.intersectingSegments.size?o(t.normalizeArea(this._computeArea()),"square-meters"):null}_updateGeodesicArea(e){const{renderCoordsHelper:t,spatialReference:s}=e,{positionsSpherical:i,positionsStereographic:n}=this,h=this._tempVec3,a=y(i,h);if(!a)return void(this.geodesicArea=null);const d=this._tempU,g=this._tempV;D(h,d,g);for(let o=0;o<this._length;++o){const e=m(i[o],d),t=m(i[o],g),s=m(i[o],h);r(n[o],e/s,t/s)}u(h,h,v(s).radius),t.toRenderCoords(h,A(s),this.geodesicAreaCentroidRenderCoords),this._updateGeodesicIntersectingSegments(),this.geodesicArea=a&&0===this.geodesicIntersectingSegments.size?o(this._computeGeodesicArea(),"square-meters"):null}_updatePerimeterLengths(){const e=this.positionsProjectedWorldCoords,t=this.perimeterSegmentLengths;let s=0;for(let i=0;i<this._length;++i){s+=t[i]=n(e[i],e[(i+1)%this._length])}return s}_updateIntersectingSegments(){const e=this.positionsProjectedWorldCoords,t=this.intersectingSegments;t.clear();for(let s=0;s<this._length;++s)for(let i=s+2;i<this._length;++i){if((i+1)%this._length===s)continue;const o=e[s],r=e[(s+1)%this._length],n=e[i],h=e[(i+1)%this._length];I(o,r,n,h)&&(t.add(s),t.add(i))}}_computeArea(){const e=this.positionsProjectedWorldCoords,t=this.triangleIndices=B(H(e));let s=0;for(let i=0;i<t.length;i+=3)s+=z(e[t[i]],e[t[i+1]],e[t[i+2]]);return s}_updateGeodesicIntersectingSegments(){const e=this.positionsStereographic,t=this.geodesicIntersectingSegments;t.clear();for(let s=0;s<this._length;++s)for(let i=s+2;i<this._length;++i){if((i+1)%this._length===s)continue;const o=e[s],r=e[(s+1)%this._length],n=e[i],h=e[(i+1)%this._length];I(o,r,n,h)&&(t.add(s),t.add(i))}}_computeGeodesicArea(){const e=this.positionsGeographic,t=this.positionsStereographic,s=this.geodesicTriangleIndices=B(H(t));let i=0;for(let o=0;o<s.length;o+=3)i+=T(e[s[o]],e[s[o+1]],e[s[o+2]],W.WGS84);return i}_selectFittingMode(t,s,i,o){const r=s.map((e=>Math.abs(F(t,e)))).reduce(((e,t)=>Math.max(e,t)),0);b(s,this._tempSphere);const n=r/(2*this._tempSphere.radius),h=n<o.maxRelativeErrorCoplanar,a=n<o.maxRelativeErrorAlmostCoplanar;let d="horizontal";if(h)d="oblique";else if(a){d=Math.abs(m(i,t))>Math.cos(e(o.verticalAngleThreshold))?"horizontal":"vertical"}return d}_updateCursorSegmentLength(e,s){const o=e.lastPoint;!e.isValidPolygon&&t(o)&&t(s)?(this.geodesicCursorSegmentLength=i(E(o,s),"meters"),this.cursorSegmentLength=i(this.unitNormalizer.normalizeDistance(N(o,s,this.unitNormalizer.spatialReference)),"meters")):(this.geodesicCursorSegmentLength=null,this.cursorSegmentLength=null)}_updateMode(e,s){if(s===U.Auto){this.actualMeasurementMode="euclidean";let s=0;null!=this.geodesicPathLength&&(s+=this.geodesicPathLength.value),!e.isValidPolygon&&t(this.geodesicCursorSegmentLength)&&(s+=this.geodesicCursorSegmentLength.value),s>J&&(this.actualMeasurementMode="geodesic")}else this.actualMeasurementMode=s===U.Euclidean?"euclidean":"geodesic";null==this.geodesicPathLength&&(this.actualMeasurementMode="euclidean"),this._mode=s}}function Z(e,t){t.hasZ||(t.z=s(k(e,t,"ground"),0))}const J=1e5;export{X as MeasurementDataManager};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.26/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import i from"../../../../Color.js";import"../../../../intl.js";import s from"../../../../core/Accessor.js";import{makeHandle as t}from"../../../../core/handleUtils.js";import{isSome as a,isNone as r}from"../../../../core/maybe.js";import{watch as n,syncAndInitial as o,when as l,sync as m}from"../../../../core/reactiveUtils.js";import{pt2px as d}from"../../../../core/screenUtils.js";import{property as c}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import{subclass as h}from"../../../../core/accessorSupport/decorators/subclass.js";import{Z as p}from"../../../../chunks/vec4f64.js";import{LengthDimensionVisualization as u}from"./LengthDimensionVisualization.js";import{settings as f}from"./settings.js";import{RenderOccludedFlag as _}from"../../webgl-engine/lib/Material.js";import{LineMarkerMaterial as g}from"../../webgl-engine/materials/LineMarkerMaterial.js";import{createStipplePatternSimple as M}from"../../webgl-engine/materials/lineStippleUtils.js";import{MarkerTextureCache as y}from"../../webgl-engine/materials/MarkerTextureCache.js";import{RibbonLineMaterial as w}from"../../webgl-engine/materials/RibbonLineMaterial.js";import{LineMarkerAnchor as v}from"../../webgl-engine/shaders/LineMarkerTechniqueConfiguration.js";import{onLocaleChange as L}from"../../../../intl/locale.js";import{fetchMessageBundle as b}from"../../../../intl/messages.js";let j=class extends s{get analysis(){return this.analysisViewData.analysis}get visible(){return this.analysisViewData.visible}constructor(e){super(e),this.loadingMessages=!1,this._messages=null,this._dimensionVisualizations=new Map,this._markerMaterial=new g({width:1,anchor:v.Tip,color:p,placement:"begin-end",worldSpace:!0,hideOnShortSegments:!0,hasTip:!0,renderOccluded:_.OccludeAndTransparent}),this._dimensionLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent,markerParameters:this._markerMaterial.parameters}),this._offsetLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent,stipplePattern:M(5),stippleScaleWithLineWidth:!0}),this._smallDimensionLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent}),this._smallOffsetLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent,stipplePattern:M(5),stippleScaleWithLineWidth:!0})}initialize(){const{textures:e}=this.view.sharedSymbolResources;if(a(e)){const{textureRepository:i}=this.view._stage.renderView,s=new y(e,i),a=s.acquire("triangle");this.addHandles(t((()=>s.destroy()))),this._markerMaterial.setParameters({textureId:a.id})}for(const i of this._lineMaterials())this.view._stage.add(i),this.addHandles(t((()=>{this.view._stage.remove(i),i.dispose()})));const{computations:s}=this.analysisViewData;for(const i of s)this._addComputation(i);this.addHandles([s.on("change",(({added:e,removed:i})=>{for(const s of i)this._removeComputation(s);for(const s of e)this._addComputation(s)})),n((()=>i.toUnitRGBA(this.analysis.style.color)),(e=>{for(const i of this._lineMaterials())i.setParameters({color:e})}),o),n((()=>this.analysis.style.lineSize),(e=>{const i=d(e);this._markerMaterial.setParameters({width:i*f.markers.lineSizeFraction}),this._dimensionLineMaterial.setParameters({width:i,markerParameters:this._markerMaterial.parameters});const s=Math.max(i*f.offsetLine.lineSizeFraction,1);this._offsetLineMaterial.setParameters({width:s})}),o),n((()=>({camera:this.view.state.camera,style:z(this.analysis)})),(({camera:e,style:i})=>{for(const[s,t]of this._dimensionVisualizations)t.updateCameraDependentElements(e,s.geometry,i),t.updateLabelStyle(i)})),n((()=>this.visible),(e=>{for(const i of this._dimensionVisualizations.values())i.visible=e}))]),this.addHandles([L((()=>this._updateMessageBundle())),l((()=>!this.loadingMessages),(()=>{for(const e of this._dimensionVisualizations.values())e.updateUnitsMessages(this._messages)}),m)]),this._updateMessageBundle()}destroy(){this._dimensionVisualizations.forEach((e=>{e.destroy()})),this._dimensionVisualizations.clear()}get testInfo(){return{visualizations:Array.from(this._dimensionVisualizations.values()),disablePartialOcclusion:()=>{for(const e of this._lineMaterials())e.setParameters({renderOccluded:_.Occlude})}}}_addComputation(e){this._dimensionVisualizations.has(e)||this._dimensionVisualizations.set(e,new u({analysis:this.analysis,computation:e,view:this.view,visible:this.visible,markerMaterial:this._markerMaterial,dimensionLineMaterial:this._dimensionLineMaterial,offsetLineMaterial:this._offsetLineMaterial,smallDimensionLineMaterial:this._smallDimensionLineMaterial,smallOffsetLineMaterial:this._smallOffsetLineMaterial,messages:this._messages}))}_removeComputation(e){const i=this._dimensionVisualizations.get(e);r(i)||(i.destroy(),this._dimensionVisualizations.delete(e))}_lineMaterials(){return[this._markerMaterial,this._dimensionLineMaterial,this._offsetLineMaterial,this._smallDimensionLineMaterial,this._smallOffsetLineMaterial]}async _updateMessageBundle(){this.loadingMessages=!0;try{this._messages=await b("esri/core/t9n/Units")}finally{this.loadingMessages=!1}}};function z(e){const{fontSize:i,lineSize:s,textColor:t,textBackgroundColor:a}=e.style;return{fontSize:i,lineSize:s,textBackgroundColor:a.clone(),textColor:t.clone()}}e([c({constructOnly:!0})],j.prototype,"analysisViewData",void 0),e([c({constructOnly:!0,nonNullable:!0})],j.prototype,"view",void 0),e([c()],j.prototype,"analysis",null),e([c()],j.prototype,"visible",null),e([c()],j.prototype,"loadingMessages",void 0),j=e([h("esri.views.3d.analysis.Dimension.DimensionVisualization")],j);export{j as DimensionVisualization};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import i from"../../../../Color.js";import"../../../../intl.js";import s from"../../../../core/Accessor.js";import{makeHandle as t}from"../../../../core/handleUtils.js";import{isSome as a,isNone as r}from"../../../../core/maybe.js";import{watch as n,syncAndInitial as o,when as l,sync as m}from"../../../../core/reactiveUtils.js";import{pt2px as d}from"../../../../core/screenUtils.js";import{property as c}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import{subclass as h}from"../../../../core/accessorSupport/decorators/subclass.js";import{Z as p}from"../../../../chunks/vec4f64.js";import{LengthDimensionVisualization as u}from"./LengthDimensionVisualization.js";import{settings as f}from"./settings.js";import{RenderOccludedFlag as _}from"../../webgl-engine/lib/Material.js";import{LineMarkerMaterial as g}from"../../webgl-engine/materials/LineMarkerMaterial.js";import{createStipplePatternSimple as M}from"../../webgl-engine/materials/lineStippleUtils.js";import{MarkerTextureCache as y}from"../../webgl-engine/materials/MarkerTextureCache.js";import{RibbonLineMaterial as w}from"../../webgl-engine/materials/RibbonLineMaterial.js";import{LineMarkerAnchor as v}from"../../webgl-engine/shaders/LineMarkerTechniqueConfiguration.js";import{onLocaleChange as L}from"../../../../intl/locale.js";import{fetchMessageBundle as b}from"../../../../intl/messages.js";let j=class extends s{get analysis(){return this.analysisViewData.analysis}get visible(){return this.analysisViewData.visible}constructor(e){super(e),this.loadingMessages=!1,this._messages=null,this._dimensionVisualizations=new Map,this._markerMaterial=new g({width:1,anchor:v.Tip,color:p,placement:"begin-end",worldSpace:!0,hideOnShortSegments:!0,hasTip:!0,renderOccluded:_.OccludeAndTransparent}),this._dimensionLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent,markerParameters:this._markerMaterial.parameters}),this._offsetLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent,stipplePattern:M(5),stippleScaleWithLineWidth:!0}),this._smallDimensionLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent}),this._smallOffsetLineMaterial=new w({width:1,color:p,renderOccluded:_.OccludeAndTransparent,stipplePattern:M(5),stippleScaleWithLineWidth:!0})}initialize(){const e=this.view.sharedSymbolResources?.textures;if(a(e)){const{textureRepository:i}=this.view._stage.renderView,s=new y(e,i),a=s.acquire("triangle");this.addHandles(t((()=>s.destroy()))),this._markerMaterial.setParameters({textureId:a.id})}for(const i of this._lineMaterials())this.view._stage.add(i),this.addHandles(t((()=>{this.view._stage.remove(i),i.dispose()})));const{computations:s}=this.analysisViewData;for(const i of s)this._addComputation(i);this.addHandles([s.on("change",(({added:e,removed:i})=>{for(const s of i)this._removeComputation(s);for(const s of e)this._addComputation(s)})),n((()=>i.toUnitRGBA(this.analysis.style.color)),(e=>{for(const i of this._lineMaterials())i.setParameters({color:e})}),o),n((()=>this.analysis.style.lineSize),(e=>{const i=d(e);this._markerMaterial.setParameters({width:i*f.markers.lineSizeFraction}),this._dimensionLineMaterial.setParameters({width:i,markerParameters:this._markerMaterial.parameters});const s=Math.max(i*f.offsetLine.lineSizeFraction,1);this._offsetLineMaterial.setParameters({width:s})}),o),n((()=>({camera:this.view.state.camera,style:z(this.analysis)})),(({camera:e,style:i})=>{for(const[s,t]of this._dimensionVisualizations)t.updateCameraDependentElements(e,s.geometry,i),t.updateLabelStyle(i)})),n((()=>this.visible),(e=>{for(const i of this._dimensionVisualizations.values())i.visible=e}))]),this.addHandles([L((()=>this._updateMessageBundle())),l((()=>!this.loadingMessages),(()=>{for(const e of this._dimensionVisualizations.values())e.updateUnitsMessages(this._messages)}),m)]),this._updateMessageBundle()}destroy(){this._dimensionVisualizations.forEach((e=>{e.destroy()})),this._dimensionVisualizations.clear()}get testInfo(){return{visualizations:Array.from(this._dimensionVisualizations.values()),disablePartialOcclusion:()=>{for(const e of this._lineMaterials())e.setParameters({renderOccluded:_.Occlude})}}}_addComputation(e){this._dimensionVisualizations.has(e)||this._dimensionVisualizations.set(e,new u({analysis:this.analysis,computation:e,view:this.view,visible:this.visible,markerMaterial:this._markerMaterial,dimensionLineMaterial:this._dimensionLineMaterial,offsetLineMaterial:this._offsetLineMaterial,smallDimensionLineMaterial:this._smallDimensionLineMaterial,smallOffsetLineMaterial:this._smallOffsetLineMaterial,messages:this._messages}))}_removeComputation(e){const i=this._dimensionVisualizations.get(e);r(i)||(i.destroy(),this._dimensionVisualizations.delete(e))}_lineMaterials(){return[this._markerMaterial,this._dimensionLineMaterial,this._offsetLineMaterial,this._smallDimensionLineMaterial,this._smallOffsetLineMaterial]}async _updateMessageBundle(){this.loadingMessages=!0;try{this._messages=await b("esri/core/t9n/Units")}finally{this.loadingMessages=!1}}};function z(e){const{fontSize:i,lineSize:s,textColor:t,textBackgroundColor:a}=e.style;return{fontSize:i,lineSize:s,textBackgroundColor:a.clone(),textColor:t.clone()}}e([c({constructOnly:!0})],j.prototype,"analysisViewData",void 0),e([c({constructOnly:!0,nonNullable:!0})],j.prototype,"view",void 0),e([c()],j.prototype,"analysis",null),e([c()],j.prototype,"visible",null),e([c()],j.prototype,"loadingMessages",void 0),j=e([h("esri.views.3d.analysis.Dimension.DimensionVisualization")],j);export{j as DimensionVisualization};