@arcgis/core 4.32.4 → 4.32.6

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 (28) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/57526c9dae5fa38154cb.js +1 -0
  3. package/assets/esri/core/workers/chunks/6ec1cdb0f6411dd1cb48.js +1 -0
  4. package/assets/esri/core/workers/chunks/c03e6e35082beaec02a6.js +1 -0
  5. package/interfaces.d.ts +13 -7
  6. package/kernel.js +1 -1
  7. package/layers/mixins/ArcGISImageService.js +1 -1
  8. package/layers/support/SubtypeSublayer.js +1 -1
  9. package/package.json +1 -1
  10. package/rest/support/IdentifyParameters.js +1 -1
  11. package/support/revision.js +1 -1
  12. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  13. package/widgets/Editor/Edits.js +1 -1
  14. package/widgets/Editor/workflowUtils.js +1 -1
  15. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  16. package/widgets/Feature/FeatureRelationship.js +1 -1
  17. package/widgets/Feature/FeatureUtilityNetworkAssociationList.js +1 -1
  18. package/widgets/Feature/support/featureUtils.js +1 -1
  19. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  20. package/widgets/FeatureForm/FieldInput.js +1 -1
  21. package/widgets/FeatureForm/UtilityNetworkAssociationAddAssociationViewModel.js +1 -1
  22. package/widgets/Features/FeaturesDrillIn.js +1 -1
  23. package/widgets/Features/FeaturesViewModel.js +1 -1
  24. package/widgets/Features.js +1 -1
  25. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeaturesDrillIn.js +1 -1
  26. package/assets/esri/core/workers/chunks/8940dfad0ec8a8cc2d3e.js +0 -1
  27. package/assets/esri/core/workers/chunks/94225d92afbdb10dfedb.js +0 -1
  28. package/assets/esri/core/workers/chunks/95047f145ebda65c3d8e.js +0 -1
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4541],{30633:(e,t,i)=>{i.r(t),i.d(t,{default:()=>Ei});var r=i(90237),s=i(13874),n=i(69540),o=i(49186),a=i(92071),l=i(74887),u=i(10107),p=(i(44208),i(53966)),c=(i(87811),i(40608)),m=i(43937),d=i(4146),y=i(52106),h=i(78888),f=i(4718),g=i(36708),w=i(84952),v=i(56507),R=i(36005),_=i(5443),b=i(39829),S=i(16930),M=i(21325),A=i(10873),x=i(45617),I=i(25482),F=i(22796),D=i(16019);const j={StretchFunction:{arguments:{ComputeGamma:{isDataset:!1,isPublic:!1,name:"ComputeGamma",type:"RasterFunctionVariable",value:!1},DRA:{isDataset:!1,isPublic:!1,name:"DRA",type:"RasterFunctionVariable",value:!1},EstimateStatsHistogram:{isDataset:!1,isPublic:!1,name:"EstimateStatsHistogram",type:"RasterFunctionVariable",value:!1},Gamma:{displayName:"Gamma",isDataset:!1,isPublic:!1,name:"Gamma",type:"RasterFunctionVariable"},Histograms:{isDataset:!1,isPublic:!1,name:"Histograms",type:"RasterFunctionVariable"},Max:{isDataset:!1,isPublic:!1,name:"Max",type:"RasterFunctionVariable",value:255},MaxPercent:{isDataset:!1,isPublic:!1,name:"MaxPercent",type:"RasterFunctionVariable",value:.5},Min:{isDataset:!1,isPublic:!1,name:"Min",type:"RasterFunctionVariable",value:0},MinPercent:{isDataset:!1,isPublic:!1,name:"MinPercent",type:"RasterFunctionVariable",value:.25},NumberOfStandardDeviations:{isDataset:!1,isPublic:!1,name:"NumberOfStandardDeviation",type:"RasterFunctionVariable",value:2},Raster:{isDataset:!0,isPublic:!1,name:"Raster",type:"RasterFunctionVariable"},SigmoidStrengthLevel:{isDataset:!1,isPublic:!1,name:"SigmoidStrengthLevel",type:"RasterFunctionVariable",value:2},Statistics:{isDataset:!1,isPublic:!1,name:"Statistics",type:"RasterFunctionVariable"},StretchType:{isDataset:!1,isPublic:!1,name:"StretchType",type:"RasterFunctionVariable",value:0},type:"StretchFunctionArguments",UseGamma:{isDataset:!1,isPublic:!1,name:"UseGamma",type:"RasterFunctionVariable",value:!1}},description:"Enhances an image by adjusting the range of values displayed. This does not alter the underlying pixel values. If a pixel has a value outside of the specified range, it will appear as either the minimum or maximum value.",function:{description:"Enhances an image by adjusting the range of values displayed. This does not alter the underlying pixel values. If a pixel has a value outside of the specified range, it will appear as either the minimum or maximum value.",name:"Stretch",pixelType:"UNKNOWN",type:"StretchFunction"},functionType:0,name:"Stretch",thumbnail:""},RemapFunction:{name:"Remap",description:"Changes pixel values by assigning new values to ranges of pixel values or using an external table.",function:{type:"RemapFunction",pixelType:"UNKNOWN",name:"Remap",description:"Changes pixel values by assigning new values to ranges of pixel values or using an external table."},arguments:{Raster:{name:"Raster",isPublic:!1,isDataset:!0,type:"RasterFunctionVariable"},UseTable:{name:"UseTable",isPublic:!1,isDataset:!1,value:!1,type:"RasterFunctionVariable"},InputRanges:{name:"InputRanges",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable",displayName:"Input Ranges"},OutputValues:{name:"OutputValues",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable",displayName:"Output Values"},NoDataRanges:{name:"NoDataRanges",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable",displayName:"NoData Ranges"},Table:{name:"Table",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},InputField:{name:"InputField",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},OutputField:{name:"OutputField",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},InputMaxField:{name:"InputMaxField",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},RemapTableType:{name:"RemapTableType",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},AllowUnmatched:{name:"AllowUnmatched",isPublic:!1,isDataset:!1,value:!0,type:"RasterFunctionVariable"},type:"RemapFunctionArguments"},functionType:0,thumbnail:""},ColormapFunction:{name:"Colormap",description:"Changes pixel values to display the raster data as either a grayscale or a red, green, blue (RGB) image, based on a colormap or a color ramp.",function:{type:"ColormapFunction",pixelType:"UNKNOWN",name:"Colormap",description:"Changes pixel values to display the raster data as either a grayscale or a red, green, blue (RGB) image, based on a colormap or a color ramp."},arguments:{Raster:{name:"Raster",isPublic:!1,isDataset:!0,type:"RasterFunctionVariable"},ColorSchemeType:{name:"ColorSchemeType",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},Colormap:{name:"Colormap",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},ColormapName:{name:"ColormapName",isPublic:!1,isDataset:!1,value:"Gray",type:"RasterFunctionVariable"},ColorRamp:{name:"ColorRamp",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},type:"ColormapFunctionArguments"},functionType:0,thumbnail:""},ShadedReliefFunction:{name:"Shaded Relief",description:"Creates a multiband, color coded, 3D representation of the surface, with the sun's relative position taken into account for shading the image.",function:{type:"ShadedReliefFunction",pixelType:"UNKNOWN",name:"Shaded Relief",description:"Creates a multiband, color coded, 3D representation of the surface, with the sun's relative position taken into account for shading the image."},arguments:{Raster:{name:"Raster",isPublic:!1,isDataset:!0,type:"RasterFunctionVariable"},ColorSchemeType:{name:"ColorSchemeType",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},ColorRamp:{name:"ColorRamp",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},HillshadeType:{name:"HillshadeType",isPublic:!1,isDataset:!1,value:0,type:"RasterFunctionVariable"},Colormap:{name:"Colormap",isPublic:!1,isDataset:!1,type:"RasterFunctionVariable"},Azimuth:{name:"Azimuth",isPublic:!1,isDataset:!1,value:315,type:"RasterFunctionVariable"},Altitude:{name:"Altitude",isPublic:!1,isDataset:!1,value:45,type:"RasterFunctionVariable"},SlopeType:{name:"SlopeType",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},ZFactor:{name:"ZFactor",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},PSPower:{name:"PSPower",isPublic:!1,isDataset:!1,value:.664,type:"RasterFunctionVariable"},PSZFactor:{name:"PSZFactor",isPublic:!1,isDataset:!1,value:.024,type:"RasterFunctionVariable"},RemoveEdgeEffect:{name:"RemoveEdgeEffect",isPublic:!1,isDataset:!1,value:!1,type:"RasterFunctionVariable"},type:"ShadedReliefFunctionArguments"},functionType:0,thumbnail:""},HillshadeFunction:{name:"Hillshade",description:"Creates a 3D representation of the surface, with the sun's relative position taken into account for shading the image",function:{type:"HillshadeFunction",pixelType:"UNKNOWN",name:"Hillshade",description:"Creates a 3D representation of the surface, with the sun's relative position taken into account for shading the image"},arguments:{DEM:{name:"DEM",isPublic:!1,isDataset:!0,type:"RasterFunctionVariable"},HillshadeType:{name:"HillshadeType",isPublic:!1,isDataset:!1,value:0,type:"RasterFunctionVariable"},Azimuth:{name:"Azimuth",isPublic:!1,isDataset:!1,value:315,type:"RasterFunctionVariable"},Altitude:{name:"Altitude",isPublic:!1,isDataset:!1,value:45,type:"RasterFunctionVariable"},SlopeType:{name:"SlopeType",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},ZFactor:{name:"ZFactor",isPublic:!1,isDataset:!1,value:1,type:"RasterFunctionVariable"},PSPower:{name:"PSPower",isPublic:!1,isDataset:!1,value:.664,type:"RasterFunctionVariable"},PSZFactor:{name:"PSZFactor",isPublic:!1,isDataset:!1,value:.024,type:"RasterFunctionVariable"},RemoveEdgeEffect:{name:"RemoveEdgeEffect",isPublic:!1,isDataset:!1,value:!1,type:"RasterFunctionVariable"},type:"HillshadeFunctionArguments"},functionType:0,thumbnail:""},ResampleFunction:{name:"Resample",description:"Changes the cell size of a raster.",function:{type:"ResampleFunction",pixelType:"UNKNOWN",name:"Resample",description:"Changes the cell size of a raster."},arguments:{Raster:{name:"Raster",isPublic:!1,isDataset:!0,type:"RasterFunctionVariable"},ResamplingType:{name:"ResamplingType",isPublic:!1,isDataset:!1,value:0,type:"RasterFunctionVariable"},InputCellSize:{name:"InputCellsize",isPublic:!1,isDataset:!1,value:{x:0,y:0},type:"RasterFunctionVariable"},OutputCellSize:{name:"OutputCellsize",isPublic:!1,isDataset:!1,value:{x:0,y:0},type:"RasterFunctionVariable"},type:"ResampleFunctionArguments"},functionType:0,thumbnail:""}};var T=i(67369),Z=i(70274),P=i(48940);const N=new Set(["u1","u2","u4","u8","s8","u16","s16"]),C={simple_scalar:"Simple Scalar",wind_barb:"Wind Barb",single_arrow:"Single Arrow",beaufort_kn:"Beaufort Wind (Knots)",beaufort_m:"Beaufort Wind (MetersPerSecond)",ocean_current_m:"Ocean Current (MetersPerSecond)",ocean_current_kn:"Ocean Current (Knots)"},O=new Set(["raster-stretch","unique-value","class-breaks","raster-shaded-relief","vector-field","raster-colormap"]);function V(e){return O.has(e.type)}function J(e,t){if(!e||!t)return(0,f.o8)(e||t);const i=(0,f.o8)(e);if(i.functionDefinition&&t.rasterFunctionDefinition){const e=t.rasterFunctionDefinition;(e.thumbnail||e.thumbnailEx)&&(e.thumbnail=e.thumbnailEx=void 0),q(i.functionDefinition.arguments,t),i.rasterFunctionDefinition=i.functionDefinition.toJSON()}else"none"!==t.functionName?.toLowerCase()&&(G(i.functionArguments).Raster=t);return i}function q(e,t){for(const i in e)"raster"===i.toLowerCase()&&("RasterFunctionVariable"===e[i].type?(e[i]=t.rasterFunctionDefinition,e[i].type="RasterFunctionTemplate"):"RasterFunctionTemplate"===e[i].type&&q(e[i].arguments,t))}function E(e){const t=(0,f.o8)(j[e.functionName+"Function"]),i=e.functionArguments;for(const e in i)"raster"===e.toLowerCase()?(t.arguments[e]=E(i[e]),t.arguments[e].type="RasterFunctionTemplate"):"colormap"===e.toLowerCase()?(t.arguments[e].value=B(i[e]),t.arguments.ColorSchemeType.value=0):t.arguments[e].value=i[e];return t}function G(e){const t=e?.Raster??e?.raster;return t&&"esri.layers.support.RasterFunction"===t.declaredClass?G(t.functionArguments):e}const $={none:0,standardDeviation:3,histogramEqualization:4,minMax:5,percentClip:6,sigmoid:9};function z(e,t){const i=N.has(t)?(0,D.hP)(t):null;return i&&e.push([Math.floor(i[0]-1),0,0,0],[Math.ceil(i[1]+1),0,0,0]),e}function L(e){if(null==e)return;const{fields:t}=e,i=t?.find((e=>e?.name&&"value"===e.name.toLowerCase()));return i?.name}function U(e){return"polygon-3d"===e.symbol?.type?e.symbol.symbolLayers?.find((e=>"fill"===e.type))?.material?.color:e.symbol?.color}function B(e){const t=[],i=[];return e.forEach((e=>{t.push(e[0]),i.push((0,T.vL)([...e.slice(1),255]))})),{type:"RasterColormap",values:t,colors:i}}var H=i(85675),k=i(13868);let Q=class extends I.A{constructor(){super(...arguments),this.layer=null,this.compression=void 0,this.lercVersion=2}get adjustAspectRatio(){return this.layer.adjustAspectRatio}writeAdjustAspectRatio(e,t,i){this.layer.version<10.3||(t[i]=e)}get bandIds(){return this.layer.bandIds}get compressionQuality(){return this.layer.compressionQuality}writeCompressionQuality(e,t,i){this.format&&this.format.toLowerCase().includes("jpg")&&null!=e&&(t[i]=e)}get compressionTolerance(){return this.layer.compressionTolerance}writeCompressionTolerance(e,t,i){"lerc"===this.format&&null!=e&&(t[i]=e)}get format(){return"vector-field"===this.layer.renderer?.type?"lerc":this.layer.format}get interpolation(){return this.layer.interpolation}get noData(){return this.layer.noData}get noDataInterpretation(){return this.layer.noDataInterpretation}get pixelType(){const{layer:e}=this;return e.pixelType!==e.serviceRasterInfo.pixelType?e.pixelType:void 0}writeLercVersion(e,t,i){"lerc"===this.format&&this.layer.version>=10.5&&(t[i]=e)}get version(){const e=this.layer;return e.commitProperty("bandIds"),e.commitProperty("format"),e.commitProperty("compressionQuality"),e.commitProperty("compressionTolerance"),e.commitProperty("interpolation"),e.commitProperty("noData"),e.commitProperty("noDataInterpretation"),e.commitProperty("mosaicRule"),e.commitProperty("rasterFunction"),e.commitProperty("adjustAspectRatio"),e.commitProperty("pixelFilter"),e.commitProperty("pixelType"),e.commitProperty("definitionExpression"),e.commitProperty("multidimensionalSubset"),(this._get("version")||0)+1}set version(e){this._set("version",e)}get mosaicRule(){const e=this.layer;let t=e.mosaicRule;const i=e.definitionExpression;return t?i&&i!==t.where&&(t=t.clone(),t.where=i):i&&(t=new H.A({where:i})),t}get rasterFunction(){const e=this.layer;let{rasterFunction:t}=e;const i=e.pixelFilter,r=!e.format||e.format.includes("jpg")||e.format.includes("png");t=this._addResampleRasterFunction(t);const s=e.multidimensionalSubset?.areaOfInterest;return s&&(t=function(e,t){return J(new F.A({functionName:"Clip",functionArguments:{ClippingGeometry:t.toJSON(),ClippingType:1}}),e)}(t,s)),r&&!i&&"vector-field"!==e.renderer?.type&&(t=this.combineRendererWithRenderingRule(t)),t}combineRendererWithRenderingRule(e){const t=this.layer,{rasterInfo:i,renderer:r}=t;return e=e||t.rasterFunction,r&&V(r)?J(function(e,t){switch(t=t||{},e.type){case"raster-stretch":return function(e,t){const i=t.convertToRFT,r=new F.A;r.functionName="Stretch";const s=$[Z.u.toJSON(e.stretchType)],n="u8",o=e.customStatistics?.map((e=>[e.min,e.max,e.avg??0,e.stddev??1])),a={StretchType:s,Statistics:o,DRA:e.dynamicRangeAdjustment,UseGamma:e.useGamma,Gamma:e.gamma,ComputeGamma:e.computeGamma};if(null!=e.outputMin&&(a.Min=e.outputMin),null!=e.outputMax&&(a.Max=e.outputMax),s===$.standardDeviation?(a.NumberOfStandardDeviations=e.numberOfStandardDeviations,r.outputPixelType=n):s===$.percentClip?(a.MinPercent=e.minPercent,a.MaxPercent=e.maxPercent,r.outputPixelType=n):s===$.minMax?r.outputPixelType=n:s===$.sigmoid&&(a.SigmoidStrengthLevel=e.sigmoidStrengthLevel),r.functionArguments=a,r.variableName="Raster",e.colorRamp){const s=e.colorRamp,n=new F.A;if(i)n.functionArguments={ColorRamp:(0,T.hf)(s)};else{const i=(0,T.hs)(s,!0);if(i)n.functionArguments={colorRampName:i};else if(!t.convertColorRampToColormap||"algorithmic"!==s.type&&"multipart"!==s.type){const t=e.colorRamp.toJSON();"algorithmic"===t.type?t.algorithm=t.algorithm||"esriCIELabAlgorithm":"multipart"===t.type&&t.colorRamps?.length&&t.colorRamps.forEach((e=>e.algorithm=e.algorithm||"esriCIELabAlgorithm")),n.functionArguments={colorRamp:t}}else n.functionArguments={Colormap:(0,T.R8)(s)}}return n.variableName="Raster",n.functionName="Colormap",n.functionArguments.Raster=r,i?new F.A({rasterFunctionDefinition:E(n)}):n}return i?new F.A({rasterFunctionDefinition:E(r)}):r}(e,t);case"class-breaks":return function(e,t){const i=[],r=[],s=[],n=[],o=1e-4,{pixelType:a,rasterAttributeTable:l}=t,u=null==l?null:l.features,p=L(l);if(p&&u&&Array.isArray(u)&&e.classBreakInfos){e.classBreakInfos.forEach(((t,i)=>{const r=t.symbol?.color;let s;r?.a&&null!=t.minValue&&null!=t.maxValue&&u.forEach((o=>{null!=t.minValue&&null!=t.maxValue&&(s=o.attributes[e.field],(s>=t.minValue&&s<t.maxValue||i===e.classBreakInfos.length-1&&s>=t.minValue)&&n.push([o.attributes[p],r.r,r.g,r.b]))}))}));const i=a?z(n,a):n,r=new F.A;return r.functionName="Colormap",r.functionArguments={},r.functionArguments.Colormap=i,r.variableName="Raster",t.convertToRFT?new F.A({rasterFunctionDefinition:E(r)}):r}e.classBreakInfos.forEach(((e,t)=>{if(null==e.minValue||null==e.maxValue)return;const a=e.symbol&&e.symbol.color;a?.a?(0===t?i.push(e.minValue,e.maxValue+o):i.push(e.minValue+o,e.maxValue+o),r.push(t),n.push([t,a.r,a.g,a.b])):s.push(e.minValue,e.maxValue)}));const c=a?z(n,a):n,m=new F.A;m.functionName="Remap",m.functionArguments={InputRanges:i,OutputValues:r,NoDataRanges:s},m.variableName="Raster";const d=new F.A;return d.functionName="Colormap",d.functionArguments={Colormap:c,Raster:m},t.convertToRFT?new F.A({rasterFunctionDefinition:E(d)}):d}(e,t);case"unique-value":return function(e,t){const i=[],{pixelType:r,rasterAttributeTable:s}=t,n=null==s?null:s.features,o=L(s),a=e.defaultSymbol?.color?.toRgb(),l=e.uniqueValueInfos;if(l)if(n){if(o){const t=new Map;l.forEach((e=>{const i=e.value,r=U(e);null!=i&&r?.a&&t.set(String(i),r.toRgb())}));const r=e.field;r&&n.forEach((({attributes:e})=>{const s=String(e[r]),n=e[o],l=t.get(s);l?i.push([n,...l]):a&&i.push([n,...a])}))}}else for(let e=0;e<l.length;e++){const t=l[e],r=U(t),s=+t.value;if(r?.a){if(isNaN(s))return null;i.push([s,r.r,r.g,r.b])}}const u=r?z(i,r):i,p=new F.A;return p.functionName="Colormap",p.functionArguments={},p.functionArguments.Colormap=u,p.variableName="Raster",t.convertToRFT?new F.A({rasterFunctionDefinition:E(p)}):p}(e,t);case"raster-colormap":return function(e,t){const i=e.extractColormap();if(!i||0===i.length)return null;const{pixelType:r}=t,s=r?z(i,r):i,n=new F.A;return n.functionName="Colormap",n.functionArguments={},n.functionArguments.Colormap=s,t.convertToRFT?new F.A({rasterFunctionDefinition:E(n)}):n}(e,t);case"vector-field":return function(e,t){const i=new F.A;i.functionName="VectorFieldRenderer";const{dataType:r,bandNames:s}=t,n="vector-uv"===r;let o,a;if(s&&2===s.length){const e=s.map((e=>e.toLowerCase()));o=e.indexOf("magnitude"),a=e.indexOf("direction")}-1!==o&&null!==o||(o=0,a=1);const l="arithmetic"===e.rotationType?1:2,u="flow-from"===e.flowRepresentation?0:1,p=e.visualVariables?e.visualVariables.find((e=>"Magnitude"===e.field)):new P.A,c={magnitudeBandID:o,directionBandID:a,isUVComponents:n,referenceSystem:l,massFlowAngleRepresentation:u,symbolTileSize:50,symbolTileSizeUnits:100,calculationMethod:"Vector Average",symbologyName:C[e.style.toLowerCase().replace("-","_")],minimumMagnitude:p.minDataValue,maximumMagnitude:p.maxDataValue,minimumSymbolSize:p.minSize,maximumSymbolSize:p.maxSize};i.functionArguments=c;const m=E(i);return t.convertToRFT?F.A.fromJSON({rasterFunctionDefinition:m}):i}(e,t);case"raster-shaded-relief":return function(e,t){const i=t.convertToRFT;if("elevation"!==t.dataType&&("generic"!==t.dataType||1!==t.bandCount||"s16"!==t.pixelType&&"s32"!==t.pixelType&&"f32"!==t.pixelType&&"f64"!==t.pixelType))return new F.A;const r=new F.A;r.functionName="Hillshade";const s="traditional"===e.hillshadeType?0:1,n="none"===e.scalingType?1:3,o={HillshadeType:s,SlopeType:n,ZFactor:e.zFactor};return 0===s&&(o.Azimuth=e.azimuth,o.Altitude=e.altitude),3===n&&(o.PSPower=e.pixelSizePower,o.PSZFactor=e.pixelSizeFactor),r.functionArguments=o,r.variableName="Raster",e.colorRamp&&(r.functionName="ShadedRelief",i?o.ColorRamp=(0,T.hf)(e.colorRamp):o.Colormap=(0,T.R8)(e.colorRamp)),i?new F.A({rasterFunctionDefinition:E(r)}):r}(e,t);case"flow":throw new Error("Unsupported rendering rule.")}}(r,{rasterAttributeTable:i.attributeTable,pixelType:i.pixelType,dataType:i.dataType,bandNames:i.bandInfos.map((({name:e})=>e)),convertColorRampToColormap:t.version<10.6,convertToRFT:!!e?.rasterFunctionDefinition,bandCount:i.bandCount}),e):e}_addResampleRasterFunction(e){if("vector-field"!==this.layer.renderer?.type||"Resample"===e?.functionName)return e;const t="esriImageServiceDataTypeVector-UV"===this.layer.serviceDataType?7:10,i=this.layer.serviceRasterInfo.pixelSize;let r=new F.A({functionName:"Resample",functionArguments:{ResamplingType:t,InputCellSize:i}});return r=e?.rasterFunctionDefinition?new F.A({rasterFunctionDefinition:E(r)}):r,J(r,e)}};(0,r._)([(0,u.MZ)()],Q.prototype,"layer",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"adjustAspectRatio",null),(0,r._)([(0,m.K)("adjustAspectRatio")],Q.prototype,"writeAdjustAspectRatio",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"bandIds",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"compression",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"compressionQuality",null),(0,r._)([(0,m.K)("compressionQuality")],Q.prototype,"writeCompressionQuality",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"compressionTolerance",null),(0,r._)([(0,m.K)("compressionTolerance")],Q.prototype,"writeCompressionTolerance",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"format",null),(0,r._)([(0,u.MZ)({type:String,json:{read:{reader:k.SZ.read},write:{writer:k.SZ.write}}})],Q.prototype,"interpolation",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"noData",null),(0,r._)([(0,u.MZ)({type:String,json:{read:{reader:k.hm.read},write:{writer:k.hm.write}}})],Q.prototype,"noDataInterpretation",null),(0,r._)([(0,u.MZ)({type:k.e8.apiValues,json:{read:k.e8.read,write:k.e8.write}})],Q.prototype,"pixelType",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"lercVersion",void 0),(0,r._)([(0,m.K)("lercVersion")],Q.prototype,"writeLercVersion",null),(0,r._)([(0,u.MZ)({type:Number})],Q.prototype,"version",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Q.prototype,"mosaicRule",null),(0,r._)([(0,u.MZ)({json:{write:!0,name:"renderingRule"}})],Q.prototype,"rasterFunction",null),Q=(0,r._)([(0,c.$)("esri.layers.support.ExportImageServiceParameters")],Q);var K=i(20437),W=i(95466),X=i(33446),Y=i(43577),ee=i(14140),te=i(74797),ie=i(87186),re=i(69409),se=i(77301),ne=i(51244),oe=i(14636),ae=i(12711),le=i(85676),ue=i(94359),pe=i(65864),ce=i(17136),me=i(2272),de=i(86738);let ye=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.fromGeometry=null,this.toGeometry=null,this.objectIds=null,this.where=null,this.maxCount=null}};(0,r._)([(0,u.MZ)({type:de.A,json:{read:!0}})],ye.prototype,"fromGeometry",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{read:!0,write:!0}})],ye.prototype,"toGeometry",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],ye.prototype,"objectIds",void 0),(0,r._)([(0,u.MZ)({type:String,json:{write:!0}})],ye.prototype,"where",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],ye.prototype,"maxCount",void 0),ye=(0,r._)([(0,c.$)("esri.rest.support.FindImagesParameters")],ye);const he=ye,fe=e=>{let t=class extends e{constructor(){super(...arguments),this.make=null,this.model=null,this.focalLength=null,this.pixelSize=null,this.rows=null,this.cols=null}};return(0,r._)([(0,u.MZ)({json:{write:!0}})],t.prototype,"make",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],t.prototype,"model",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],t.prototype,"focalLength",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],t.prototype,"pixelSize",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],t.prototype,"rows",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],t.prototype,"cols",void 0),t=(0,r._)([(0,c.$)("esri.rest.support.CameraInfoMixin")],t),t};let ge=class extends(fe(I.A)){constructor(){super(...arguments),this.id=null,this.referenceUri=null,this.acquisitionDate=null,this.cameraID=null,this.center=null,this.perspectiveCenter=null,this.orientation=null}writeAcquisitionDate(e,t){t.acquisitionDate=e?.getTime()}};(0,r._)([(0,u.MZ)({json:{write:!0}})],ge.prototype,"id",void 0),(0,r._)([(0,u.MZ)({json:{name:"uri",write:!0}})],ge.prototype,"referenceUri",void 0),(0,r._)([(0,u.MZ)({type:Date,json:{write:!0}})],ge.prototype,"acquisitionDate",void 0),(0,r._)([(0,m.K)("acquisitionDate")],ge.prototype,"writeAcquisitionDate",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],ge.prototype,"cameraID",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],ge.prototype,"center",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],ge.prototype,"perspectiveCenter",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],ge.prototype,"orientation",void 0),ge=(0,r._)([(0,c.$)("esri.rest.support.ImageInspectionInfo")],ge);const we=ge;let ve=class extends I.A{constructor(){super(...arguments),this.images=null}};(0,r._)([(0,u.MZ)({type:[we],json:{write:!0}})],ve.prototype,"images",void 0),ve=(0,r._)([(0,c.$)("esri.rest.support.FindImagesResult")],ve);const Re=ve;var _e;let be=_e=class extends I.A{constructor(e){super(e),this.angleNames=null,this.point=null,this.spatialReference=null,this.rasterId=null}clone(){return new _e((0,f.o8)({angleNames:this.angleNames,point:this.point,spatialReference:this.spatialReference,rasterId:this.rasterId}))}};(0,r._)([(0,u.MZ)({type:[String],json:{name:"angleName",write:!0}})],be.prototype,"angleNames",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],be.prototype,"point",void 0),(0,r._)([(0,u.MZ)({type:S.A,json:{write:!0}})],be.prototype,"spatialReference",void 0),(0,r._)([(0,u.MZ)({type:v.jz,json:{write:!0}})],be.prototype,"rasterId",void 0),be=_e=(0,r._)([(0,c.$)("esri.rest.support.ImageAngleParameters")],be);const Se=be;let Me=class extends I.A{constructor(e){super(e),this.north=null,this.up=null,this.spatialReference=null}};(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],Me.prototype,"north",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],Me.prototype,"up",void 0),(0,r._)([(0,u.MZ)({type:S.A,json:{write:!0}})],Me.prototype,"spatialReference",void 0),Me=(0,r._)([(0,c.$)("esri.rest.support.ImageAngleResult")],Me);const Ae=Me;var xe=i(83047),Ie=i(50498),Fe=i(66552);const De=new Fe.J({esriMensurationPoint:"point",esriMensurationCentroid:"centroid",esriMensurationDistanceAndAngle:"distance-and-angle",esriMensurationAreaAndPerimeter:"area-and-perimeter",esriMensurationHeightFromBaseAndTop:"base-and-top",esriMensurationHeightFromBaseAndTopShadow:"base-and-top-shadow",esriMensurationHeightFromTopAndTopShadow:"top-and-top-shadow",esriMensurationPoint3D:"point-3D",esriMensurationCentroid3D:"centroid-3D",esriMensurationDistanceAndAngle3D:"distance-and-angle-3D",esriMensurationAreaAndPerimeter3D:"area-and-perimeter-3D"});let je=class extends I.A{constructor(){super(...arguments),this.value=null,this.displayValue=null,this.uncertainty=null}};(0,r._)([(0,u.MZ)({type:Number,json:{read:!0,write:!0}})],je.prototype,"value",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:!0,write:!0}})],je.prototype,"displayValue",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{read:!0,write:!0}})],je.prototype,"uncertainty",void 0),je=(0,r._)([(0,c.$)("esri.rest.support.imageMeasureUtils.BaseImageMeasureResultValue")],je);let Te=class extends je{constructor(){super(...arguments),this.unit=null}};(0,r._)([(0,u.MZ)({type:String,json:{read:xe.Sk.read,write:xe.Sk.write}})],Te.prototype,"unit",void 0),Te=(0,r._)([(0,c.$)("esri.rest.support.imageMeasureUtils.ImageMeasureResultLengthValue")],Te);let Ze=class extends je{constructor(){super(...arguments),this.unit=null}};(0,r._)([(0,u.MZ)({type:String,json:{read:xe.dk.read,write:xe.dk.write}})],Ze.prototype,"unit",void 0),Ze=(0,r._)([(0,c.$)("esri.rest.support.imageMeasureUtils.ImageMeasureResultAreaValue")],Ze);let Pe=class extends je{constructor(){super(...arguments),this.unit=null}};(0,r._)([(0,u.MZ)({type:String,json:{read:xe.b$.read,write:xe.b$.write}})],Pe.prototype,"unit",void 0),Pe=(0,r._)([(0,c.$)("esri.rest.support.imageMeasureUtils.ImageMeasureResultAngleValue")],Pe);let Ne=class extends I.A{constructor(e){super(e),this.type=null,this.measureOperation=null,this.mosaicRule=null,this.pixelSize=null,this.raster=void 0}};(0,r._)([(0,u.MZ)()],Ne.prototype,"type",void 0),(0,r._)([(0,u.MZ)({type:De.apiValues,json:{read:De.read,write:De.write}})],Ne.prototype,"measureOperation",void 0),(0,r._)([(0,u.MZ)({type:H.A,json:{write:!0}})],Ne.prototype,"mosaicRule",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],Ne.prototype,"pixelSize",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Ne.prototype,"raster",void 0),Ne=(0,r._)([(0,c.$)("esri.rest.support.BaseImageMeasureParameters")],Ne);const Ce=Ne;var Oe;let Ve=Oe=class extends Ce{constructor(){super(...arguments),this.type="area-perimeter",this.geometry=null,this.is3D=!1,this.linearUnit="meters",this.areaUnit="square-meters"}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=e.toJSON())}get measureOperation(){return this.is3D?"area-and-perimeter-3D":"area-and-perimeter"}clone(){return new Oe((0,f.o8)({geometry:this.geometry,is3D:this.is3D,linearUnit:this.linearUnit,areaUnit:this.areaUnit,mosaicRule:this.mosaicRule,pixelSize:this.pixelSize,raster:this.raster}))}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{name:"fromGeometry",read:!0,write:!0}})],Ve.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],Ve.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({type:De.apiValues,json:{write:De.write}})],Ve.prototype,"measureOperation",null),(0,r._)([(0,u.MZ)({json:{read:!0}})],Ve.prototype,"is3D",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:xe.Sk.read,write:xe.Sk.write}})],Ve.prototype,"linearUnit",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:xe.dk.read,write:xe.dk.write}})],Ve.prototype,"areaUnit",void 0),Ve=Oe=(0,r._)([(0,c.$)("esri.rest.support.ImageAreaParameters")],Ve);const Je=Ve;let qe=class extends I.A{constructor(e){super(e),this.name=null,this.sensorName=null}};(0,r._)([(0,u.MZ)({type:String,json:{read:!0,write:!0}})],qe.prototype,"name",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:!0,write:!0}})],qe.prototype,"sensorName",void 0),qe=(0,r._)([(0,c.$)("esri.rest.support.BaseImageMeasureResult")],qe);const Ee=qe;let Ge=class extends Ee{constructor(){super(...arguments),this.area=null,this.perimeter=null}};(0,r._)([(0,u.MZ)({type:Ze,json:{read:!0,write:!0}})],Ge.prototype,"area",void 0),(0,r._)([(0,u.MZ)({type:Te,json:{read:!0,write:!0}})],Ge.prototype,"perimeter",void 0),Ge=(0,r._)([(0,c.$)("esri.rest.support.ImageAreaResult")],Ge);const $e=Ge;let ze=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.outSpatialReference=null}};(0,r._)([(0,u.MZ)({type:S.A,json:{name:"outSR",write:!0}})],ze.prototype,"outSpatialReference",void 0),ze=(0,r._)([(0,c.$)("esri.rest.support.ImageBoundaryParameters")],ze);const Le=ze;let Ue=class extends I.A{constructor(){super(...arguments),this.area=null,this.geometry=null}readGeometry(e,t){return null==e?null:e.rings?b.A.fromJSON(e):_.A.fromJSON(e)}};(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],Ue.prototype,"area",void 0),(0,r._)([(0,u.MZ)({types:Ie.yR,json:{name:"shape",write:!0}})],Ue.prototype,"geometry",void 0),(0,r._)([(0,R.w)("geometry")],Ue.prototype,"readGeometry",null),Ue=(0,r._)([(0,c.$)("esri.rest.support.ImageBoundaryResult")],Ue);const Be=Ue;var He;let ke=He=class extends Ce{constructor(){super(...arguments),this.type="distance-angle",this.fromGeometry=null,this.toGeometry=null,this.is3D=!1,this.linearUnit="meters",this.angularUnit="degrees"}writeFromGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=e.toJSON())}get measureOperation(){return this.is3D?"distance-and-angle-3D":"distance-and-angle"}clone(){return new He((0,f.o8)({fromGeometry:this.fromGeometry,toGeometry:this.toGeometry,is3D:this.is3D,linearUnit:this.linearUnit,angularUnit:this.angularUnit,mosaicRule:this.mosaicRule,pixelSize:this.pixelSize,raster:this.raster}))}};(0,r._)([(0,u.MZ)({type:de.A,json:{read:!0,write:!0}})],ke.prototype,"fromGeometry",void 0),(0,r._)([(0,m.K)("fromGeometry")],ke.prototype,"writeFromGeometry",null),(0,r._)([(0,u.MZ)({type:de.A,json:{read:!0,write:!0}})],ke.prototype,"toGeometry",void 0),(0,r._)([(0,u.MZ)({type:De.apiValues,json:{write:De.write}})],ke.prototype,"measureOperation",null),(0,r._)([(0,u.MZ)({json:{read:!0}})],ke.prototype,"is3D",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:xe.Sk.read,write:xe.Sk.write}})],ke.prototype,"linearUnit",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:xe.b$.read,write:xe.b$.write}})],ke.prototype,"angularUnit",void 0),ke=He=(0,r._)([(0,c.$)("esri.rest.support.ImageDistanceParameters")],ke);const Qe=ke;let Ke=class extends Ee{constructor(){super(...arguments),this.distance=null,this.azimuthAngle=null,this.elevationAngle=null}};(0,r._)([(0,u.MZ)({type:Te,json:{read:!0,write:!0}})],Ke.prototype,"distance",void 0),(0,r._)([(0,u.MZ)({type:Pe,json:{read:!0,write:!0}})],Ke.prototype,"azimuthAngle",void 0),(0,r._)([(0,u.MZ)({type:Pe,json:{read:!0,write:!0}})],Ke.prototype,"elevationAngle",void 0),Ke=(0,r._)([(0,c.$)("esri.rest.support.ImageDistanceResult")],Ke);const We=Ke;var Xe=i(93223),Ye=i(58174),et=i(79677);let tt=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.geometry=null,this.objectIds=null,this.spatialRelationship="intersects",this.timeExtent=null,this.where=null}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=JSON.stringify(e.toJSON()))}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{read:pe.rS,write:!0}})],tt.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],tt.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],tt.prototype,"objectIds",void 0),(0,r._)([(0,Xe.e)(Ye.x,{ignoreUnknown:!1,name:"spatialRel"})],tt.prototype,"spatialRelationship",void 0),(0,r._)([(0,u.MZ)({type:et.A,json:{name:"time",write:!0}})],tt.prototype,"timeExtent",void 0),(0,r._)([(0,u.MZ)({type:String,json:{write:!0}})],tt.prototype,"where",void 0),tt=(0,r._)([(0,c.$)("esri.rest.support.ImageGPSInfoParameters")],tt);const it=tt;let rt=class extends(fe(I.A)){constructor(){super(...arguments),this.id=null}};(0,r._)([(0,u.MZ)({json:{write:!0}})],rt.prototype,"id",void 0),rt=(0,r._)([(0,c.$)("esri.rest.support.CameraInfo")],rt);const st=rt;let nt=class extends I.A{constructor(){super(...arguments),this.id=null,this.name=null,this.acquisitionDate=null,this.cameraID=null,this.center=null,this.gps=null,this.orientation=null}writeAcquisitionDate(e,t){t.acquisitionDate=e?.getTime()}};(0,r._)([(0,u.MZ)({json:{write:!0}})],nt.prototype,"id",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],nt.prototype,"name",void 0),(0,r._)([(0,u.MZ)({type:Date,json:{write:!0}})],nt.prototype,"acquisitionDate",void 0),(0,r._)([(0,m.K)("acquisitionDate")],nt.prototype,"writeAcquisitionDate",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],nt.prototype,"cameraID",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],nt.prototype,"center",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],nt.prototype,"gps",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],nt.prototype,"orientation",void 0),nt=(0,r._)([(0,c.$)("esri.rest.support.ImageGPSInfo")],nt);const ot=nt;let at=class extends I.A{constructor(){super(...arguments),this.images=null,this.cameras=null}};(0,r._)([(0,u.MZ)({type:[ot],json:{write:!0}})],at.prototype,"images",void 0),(0,r._)([(0,u.MZ)({type:[st],json:{write:!0}})],at.prototype,"cameras",void 0),at=(0,r._)([(0,c.$)("esri.rest.support.ImageGPSInfoResult")],at);const lt=at;var ut;let pt=ut=class extends Ce{constructor(){super(...arguments),this.type="height",this.fromGeometry=null,this.toGeometry=null,this.operationType="base-and-top",this.linearUnit="meters"}writeFromGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=e.toJSON())}get measureOperation(){return this.operationType}clone(){return new ut((0,f.o8)({fromGeometry:this.fromGeometry,toGeometry:this.toGeometry,operationType:this.operationType,linearUnit:this.linearUnit,mosaicRule:this.mosaicRule,pixelSize:this.pixelSize,raster:this.raster}))}};(0,r._)([(0,u.MZ)({type:de.A,json:{read:!0}})],pt.prototype,"fromGeometry",void 0),(0,r._)([(0,m.K)("fromGeometry")],pt.prototype,"writeFromGeometry",null),(0,r._)([(0,u.MZ)({type:de.A,json:{read:!0,write:!0}})],pt.prototype,"toGeometry",void 0),(0,r._)([(0,u.MZ)({type:De.apiValues,json:{write:De.write}})],pt.prototype,"measureOperation",null),(0,r._)([(0,u.MZ)({json:{read:!0}})],pt.prototype,"operationType",void 0),(0,r._)([(0,u.MZ)({type:String,json:{read:xe.Sk.read,write:xe.Sk.write}})],pt.prototype,"linearUnit",void 0),pt=ut=(0,r._)([(0,c.$)("esri.rest.support.ImageHeightParameters")],pt);const ct=pt;let mt=class extends Ee{constructor(){super(...arguments),this.height=null}};(0,r._)([(0,u.MZ)({type:Te,json:{read:!0,write:!0}})],mt.prototype,"height",void 0),mt=(0,r._)([(0,c.$)("esri.rest.support.ImageHeightResult")],mt);const dt=mt;var yt,ht=i(22048);let ft=yt=class extends I.A{constructor(){super(...arguments),this.geometry=null,this.rasterFunctions=null,this.pixelSize=null,this.returnGeometry=!0,this.returnCatalogItems=!0,this.returnPixelValues=!0,this.maxItemCount=null,this.timeExtent=null,this.raster=void 0,this.viewId=void 0,this.processAsMultidimensional=!1}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=JSON.stringify(e.toJSON()))}set mosaicRule(e){let t=e;t?.mosaicMethod&&(t=H.A.fromJSON({...t.toJSON(),mosaicMethod:t.mosaicMethod,mosaicOperation:t.mosaicOperation})),this._set("mosaicRule",t)}writeMosaicRule(e,t,i){null!=e&&(t[i]=JSON.stringify(e.toJSON()))}set rasterFunction(e){let t=e;t?.rasterFunction&&(t=F.A.fromJSON({...t.toJSON(),rasterFunction:t.rasterFunction,rasterFunctionArguments:t.rasterFunctionArguments})),this._set("rasterFunction",t)}writeRasterFunction(e,t,i){null!=e&&(t[i]=JSON.stringify(e.toJSON())),e.rasterFunctionDefinition&&(t[i]=JSON.stringify(e.rasterFunctionDefinition))}writeRasterFunctions(e,t,i){null!=e&&(t[i]=JSON.stringify(e.map((e=>e.rasterFunctionDefinition||e.toJSON()))))}writePixelSize(e,t,i){null!=e&&(t[i]=JSON.stringify(e))}writeTimeExtent(e,t,i){if(null!=e){const r=null!=e.start?e.start.getTime():null,s=null!=e.end?e.end.getTime():null;t[i]=null!=r?null!=s?`${r},${s}`:`${r}`:null}}clone(){return new yt((0,f.o8)({geometry:this.geometry,mosaicRule:this.mosaicRule,rasterFunction:this.rasterFunction,rasterFunctions:this.rasterFunctions,pixelSize:this.pixelSize,returnGeometry:this.returnGeometry,returnCatalogItems:this.returnCatalogItems,returnPixelValues:this.returnPixelValues,maxItemCount:this.maxItemCount,processAsMultidimensional:this.processAsMultidimensional,raster:this.raster,viewId:this.viewId,timeExtent:this.timeExtent}))}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{write:!0}})],ft.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],ft.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({type:H.A,json:{write:!0}})],ft.prototype,"mosaicRule",null),(0,r._)([(0,m.K)("mosaicRule")],ft.prototype,"writeMosaicRule",null),(0,r._)([(0,u.MZ)({type:F.A,json:{write:!0,name:"renderingRule"}})],ft.prototype,"rasterFunction",null),(0,r._)([(0,m.K)("rasterFunction")],ft.prototype,"writeRasterFunction",null),(0,r._)([(0,u.MZ)({type:[F.A],json:{write:!0,name:"renderingRules"}})],ft.prototype,"rasterFunctions",void 0),(0,r._)([(0,m.K)("rasterFunctions")],ft.prototype,"writeRasterFunctions",null),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],ft.prototype,"pixelSize",void 0),(0,r._)([(0,m.K)("pixelSize")],ft.prototype,"writePixelSize",null),(0,r._)([(0,u.MZ)({type:Boolean,json:{write:!0}})],ft.prototype,"returnGeometry",void 0),(0,r._)([(0,u.MZ)({type:Boolean,json:{write:!0}})],ft.prototype,"returnCatalogItems",void 0),(0,r._)([(0,u.MZ)({type:Boolean,json:{write:!0}})],ft.prototype,"returnPixelValues",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],ft.prototype,"maxItemCount",void 0),(0,r._)([(0,u.MZ)({type:et.A,json:{write:{target:"time"}}})],ft.prototype,"timeExtent",void 0),(0,r._)([(0,m.K)("timeExtent")],ft.prototype,"writeTimeExtent",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],ft.prototype,"raster",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],ft.prototype,"viewId",void 0),(0,r._)([(0,u.MZ)({type:Boolean,json:{write:!0}})],ft.prototype,"processAsMultidimensional",void 0),ft=yt=(0,r._)([(0,c.$)("esri.rest.support.ImageIdentifyParameters")],ft);const gt=ft;var wt=i(22671);let vt=class extends I.A{constructor(){super(...arguments),this.catalogItemVisibilities=null,this.catalogItems=null,this.location=null,this.name=null,this.objectId=null,this.processedValues=null,this.properties=null,this.value=null}};(0,r._)([(0,u.MZ)({json:{write:!0}})],vt.prototype,"catalogItemVisibilities",void 0),(0,r._)([(0,u.MZ)({type:wt.A,json:{write:!0}})],vt.prototype,"catalogItems",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],vt.prototype,"location",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],vt.prototype,"name",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],vt.prototype,"objectId",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],vt.prototype,"processedValues",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],vt.prototype,"properties",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],vt.prototype,"value",void 0),vt=(0,r._)([(0,c.$)("esri.rest.support.ImageIdentifyResult")],vt);const Rt=vt;var _t;let bt=_t=class extends I.A{constructor(){super(...arguments),this.geometries=null,this.rasterId=null}writeGeometry(e,t,i){t.geometries={geometryType:"esriGeometryPoint",geometries:e.map((e=>e.toJSON()))}}clone(){return new _t({geometries:this.geometries?.map((e=>e.clone()))??[],rasterId:this.rasterId})}};(0,r._)([(0,u.MZ)({type:[de.A],json:{write:!0}})],bt.prototype,"geometries",void 0),(0,r._)([(0,m.K)("geometries")],bt.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({type:v.jz,json:{write:!0}})],bt.prototype,"rasterId",void 0),bt=_t=(0,r._)([(0,c.$)("esri.rest.support.ImagePixelLocationParameters")],bt);const St=bt;let Mt=class extends I.A{constructor(){super(...arguments),this.geometries=null}};(0,r._)([(0,u.MZ)({json:{write:!0}})],Mt.prototype,"geometries",void 0),Mt=(0,r._)([(0,c.$)("esri.rest.support.ImagePixelLocationResult")],Mt);const At=Mt;var xt;let It=xt=class extends Ce{constructor(){super(...arguments),this.type="point",this.geometry=null,this.is3D=!1}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=e.toJSON())}get measureOperation(){const{is3D:e,geometry:t}=this;return"point"===t.type?e?"point-3D":"point":e?"centroid-3D":"centroid"}clone(){return new xt((0,f.o8)({geometry:this.geometry,is3D:this.is3D,mosaicRule:this.mosaicRule,pixelSize:this.pixelSize,raster:this.raster}))}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{name:"fromGeometry",read:pe.rS}})],It.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],It.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({type:De.apiValues,json:{read:De.read,write:De.write}})],It.prototype,"measureOperation",null),(0,r._)([(0,u.MZ)({json:{read:!0}})],It.prototype,"is3D",void 0),It=xt=(0,r._)([(0,c.$)("esri.rest.support.ImagePointParameters")],It);const Ft=It;let Dt=class extends Ee{constructor(){super(...arguments),this.point=null}};(0,r._)([(0,u.MZ)({type:de.A,json:{name:"point.value",read:!0,write:!0}})],Dt.prototype,"point",void 0),Dt=(0,r._)([(0,c.$)("esri.rest.support.ImagePointResult")],Dt);const jt=Dt;var Tt,Zt=i(48526);let Pt=Tt=class extends I.A{constructor(){super(...arguments),this.geometry=null,this.interpolation="nearest",this.mosaicRule=null,this.outFields=null,this.pixelSize=null,this.raster=void 0,this.returnFirstValueOnly=!0,this.sampleDistance=null,this.sampleCount=null,this.sliceId=null,this.timeExtent=null}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=e.toJSON())}set locations(e){if(e?.length){const t=new Zt.A({spatialReference:e[0].spatialReference,points:e.map((({x:e,y:t})=>[e,t]))});this._set("locations",e),this.geometry=t}}clone(){return new Tt((0,f.o8)({geometry:this.geometry,locations:this.locations,interpolation:this.interpolation,mosaicRule:this.mosaicRule,outFields:this.outFields,raster:this.raster,returnFirstValueOnly:this.returnFirstValueOnly,sampleDistance:this.sampleDistance,sampleCount:this.sampleCount,sliceId:this.sliceId,pixelSize:this.pixelSize,timeExtent:this.timeExtent}))}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{read:pe.rS}})],Pt.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],Pt.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({type:[de.A]})],Pt.prototype,"locations",null),(0,r._)([(0,u.MZ)({type:String,json:{type:k.SZ.jsonValues,read:k.SZ.read,write:k.SZ.write}})],Pt.prototype,"interpolation",void 0),(0,r._)([(0,u.MZ)({type:H.A,json:{write:!0}})],Pt.prototype,"mosaicRule",void 0),(0,r._)([(0,u.MZ)({type:[String],json:{write:!0}})],Pt.prototype,"outFields",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],Pt.prototype,"pixelSize",void 0),(0,r._)([(0,u.MZ)({type:String,json:{write:!0}})],Pt.prototype,"raster",void 0),(0,r._)([(0,u.MZ)({type:Boolean,json:{write:!0}})],Pt.prototype,"returnFirstValueOnly",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],Pt.prototype,"sampleDistance",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],Pt.prototype,"sampleCount",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],Pt.prototype,"sliceId",void 0),(0,r._)([(0,u.MZ)({type:et.A,json:{read:{source:"time"},write:{target:"time"}}})],Pt.prototype,"timeExtent",void 0),Pt=Tt=(0,r._)([(0,c.$)("esri.rest.support.ImageSampleParameters")],Pt);const Nt=Pt;let Ct=class extends I.A{constructor(){super(...arguments),this.attributes=null,this.location=null,this.locationId=null,this.rasterId=null,this.resolution=null,this.pixelValue=null}};(0,r._)([(0,u.MZ)({json:{write:!0}})],Ct.prototype,"attributes",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],Ct.prototype,"location",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Ct.prototype,"locationId",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Ct.prototype,"rasterId",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Ct.prototype,"resolution",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Ct.prototype,"pixelValue",void 0),Ct=(0,r._)([(0,c.$)("esri.rest.support.ImageSample")],Ct);const Ot=Ct;let Vt=class extends I.A{constructor(){super(...arguments),this.samples=[]}};(0,r._)([(0,u.MZ)({type:[Ot],json:{write:!0}})],Vt.prototype,"samples",void 0),Vt=(0,r._)([(0,c.$)("esri.rest.support.ImageSampleResult")],Vt);const Jt=Vt;let qt=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.geometries=[],this.rasterIds=null,this.outSpatialReference=null}writeGeometries(e,t,i){t.geometries=e?.length?{geometryType:(0,pe.$B)(e[0]),geometries:e.map((e=>({...e.toJSON(),spatialReference:void 0})))}:null}};(0,r._)([(0,u.MZ)({types:[Ie.yR]})],qt.prototype,"geometries",void 0),(0,r._)([(0,m.K)("geometries")],qt.prototype,"writeGeometries",null),(0,r._)([(0,u.MZ)({type:[v.jz],json:{write:!0}})],qt.prototype,"rasterIds",void 0),(0,r._)([(0,u.MZ)({type:S.A,json:{name:"outSR",write:!0}})],qt.prototype,"outSpatialReference",void 0),qt=(0,r._)([(0,c.$)("esri.rest.support.ImageToMapMultirayParameters")],qt);const Et=qt;let Gt=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.geometry=null,this.rasterId=null,this.outSpatialReference=null,this.depthOffset=0,this.adjust=!1}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]={...e.toJSON(),spatialReference:void 0})}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{read:pe.rS,write:!0}})],Gt.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],Gt.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],Gt.prototype,"rasterId",void 0),(0,r._)([(0,u.MZ)({type:S.A,json:{name:"outSR",write:!0}})],Gt.prototype,"outSpatialReference",void 0),(0,r._)([(0,u.MZ)({json:{name:"options.DOff",write:!0}})],Gt.prototype,"depthOffset",void 0),(0,r._)([(0,u.MZ)({json:{name:"options.Adjust",write:!0}})],Gt.prototype,"adjust",void 0),Gt=(0,r._)([(0,c.$)("esri.rest.support.ImageToMapParameters")],Gt);const $t=Gt;let zt=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.referenceUri=null,this.rasterId=null}};(0,r._)([(0,u.MZ)({type:String,json:{name:"uri",write:!0}})],zt.prototype,"referenceUri",void 0),(0,r._)([(0,u.MZ)({type:Number,json:{write:!0}})],zt.prototype,"rasterId",void 0),zt=(0,r._)([(0,c.$)("esri.rest.support.ImageUrlParameters")],zt);const Lt=zt;let Ut=class extends I.A{constructor(){super(...arguments),this.url=null}};(0,r._)([(0,u.MZ)({json:{name:"imageURL",write:!0}})],Ut.prototype,"url",void 0),Ut=(0,r._)([(0,c.$)("esri.rest.support.ImageUrlResult")],Ut);const Bt=Ut,Ht=new Fe.J({0:"constant",1:"plane",2:"minimum",3:"maximum",4:"average"},{useNumericKeys:!0});let kt=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.geometries=[],this.mosaicRule=null,this.pixelSize=null,this.constantZ=null,this.baseType="plane"}writeGeometries(e,t,i){e?.length&&(t.geometryType=(0,pe.$B)(e[0]),t.geometries=e.map((e=>e.toJSON())))}};(0,r._)([(0,u.MZ)({types:[Ie.yR]})],kt.prototype,"geometries",void 0),(0,r._)([(0,m.K)("geometries")],kt.prototype,"writeGeometries",null),(0,r._)([(0,u.MZ)({type:H.A,json:{write:!0}})],kt.prototype,"mosaicRule",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{write:!0}})],kt.prototype,"pixelSize",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],kt.prototype,"constantZ",void 0),(0,r._)([(0,u.MZ)({type:Ht.apiValues,json:{read:Ht.read,write:Ht.write}})],kt.prototype,"baseType",void 0),kt=(0,r._)([(0,c.$)("esri.rest.support.ImageVolumeParameters")],kt);const Qt=kt;let Kt=class extends I.A{constructor(){super(...arguments),this.area=null,this.cut=null,this.fill=null,this.maxZ=null,this.minZ=null,this.meanZ=null,this.cutCellCount=null,this.fillCellCount=null}};(0,r._)([(0,u.MZ)({json:{write:!0}})],Kt.prototype,"area",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Kt.prototype,"cut",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Kt.prototype,"fill",void 0),(0,r._)([(0,u.MZ)({json:{name:"maxz",write:!0}})],Kt.prototype,"maxZ",void 0),(0,r._)([(0,u.MZ)({json:{name:"minz",write:!0}})],Kt.prototype,"minZ",void 0),(0,r._)([(0,u.MZ)({json:{name:"meanz",write:!0}})],Kt.prototype,"meanZ",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Kt.prototype,"cutCellCount",void 0),(0,r._)([(0,u.MZ)({json:{write:!0}})],Kt.prototype,"fillCellCount",void 0),Kt=(0,r._)([(0,c.$)("esri.rest.support.ImageVolume")],Kt);const Wt=Kt;let Xt=class extends I.A{constructor(){super(...arguments),this.volumes=[]}};(0,r._)([(0,u.MZ)({type:[Wt],json:{write:!0}})],Xt.prototype,"volumes",void 0),Xt=(0,r._)([(0,c.$)("esri.rest.support.ImageVolumeResult")],Xt);const Yt=Xt;let ei=class extends(n.A.ClonableMixin(I.A)){constructor(){super(...arguments),this.geometry=null,this.rasterId=null,this.visibleOnly=!1}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]=JSON.stringify(e))}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{read:pe.rS,write:!0}})],ei.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],ei.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],ei.prototype,"rasterId",void 0),(0,r._)([(0,u.MZ)({json:{name:"options.VisibleOnly",write:!0}})],ei.prototype,"visibleOnly",void 0),ei=(0,r._)([(0,c.$)("esri.rest.support.MapToImageParameters")],ei);const ti=ei;let ii=class extends I.A{constructor(){super(...arguments),this.geometry=null,this.length=null,this.area=null,this.center=null}readCenter(e,t){return e.spatialReference||(e={...e,spatialReference:t.Shape.spatialReference}),de.A.fromJSON(e)}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{name:"Shape",read:pe.rS,write:!0}})],ii.prototype,"geometry",void 0),(0,r._)([(0,u.MZ)({json:{name:"Length",write:!0}})],ii.prototype,"length",void 0),(0,r._)([(0,u.MZ)({json:{name:"Area",write:!0}})],ii.prototype,"area",void 0),(0,r._)([(0,u.MZ)({type:de.A,json:{name:"Center",write:!0}})],ii.prototype,"center",void 0),(0,r._)([(0,R.w)("center")],ii.prototype,"readCenter",null),ii=(0,r._)([(0,c.$)("esri.rest.support.MeasureAreaFromImageResult")],ii);const ri=ii;var si;let ni=si=class extends I.A{constructor(){super(...arguments),this.geometry=null,this.rasterId=void 0}writeGeometry(e,t,i){null!=e&&(t.geometryType=(0,pe.$B)(e),t[i]={...e.toJSON(),spatialReference:void 0})}clone(){const e=(0,f.o8)({geometry:this.geometry,rasterId:this.rasterId});return new si(e)}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{name:"fromGeometry",read:pe.rS,write:!0}})],ni.prototype,"geometry",void 0),(0,r._)([(0,m.K)("geometry")],ni.prototype,"writeGeometry",null),(0,r._)([(0,u.MZ)({json:{write:!0}})],ni.prototype,"rasterId",void 0),ni=si=(0,r._)([(0,c.$)("esri.rest.support.MeasureFromImageParameters")],ni);const oi=ni;let ai=class extends I.A{constructor(){super(...arguments),this.geometry=null,this.length=null}};(0,r._)([(0,u.MZ)({types:Ie.yR,json:{name:"Shape",read:pe.rS,write:!0}})],ai.prototype,"geometry",void 0),(0,r._)([(0,u.MZ)({json:{name:"Length",write:!0}})],ai.prototype,"length",void 0),ai=(0,r._)([(0,c.$)("esri.rest.support.MeasureLengthFromImageResult")],ai);const li=ai;function ui(e){const t=e?.time;if(t&&(null!=t.start||null!=t.end)){const i=[];null!=t.start&&i.push(t.start),null==t.end||i.includes(t.end)||i.push(t.end),e.time=i.join(",")}}async function pi(e,t,i){t=(0,v.PZ)(ht.A,t);const r=(0,me.Dl)(e),s=t.geometry?[t.geometry]:[],n=await(0,ce.el)(s),o=t.toJSON();ui(o);const a=n?.[0];null!=a&&(o.geometry=yi(a));const l=(0,me.lF)({...r.query,f:"json",...o});return(0,me.jV)(l,i)}async function ci(e,t,i){t=(0,v.PZ)(gt,t);const r=(0,me.Dl)(e),s=t.geometry?[t.geometry]:[];return(0,ce.el)(s).then((e=>{const s=t.toJSON(),n=e?.[0];null!=n&&(s.geometry=JSON.stringify(yi(n)));const o=(0,me.lF)({...r.query,f:"json",...s}),a=(0,me.jV)(o,i);return(0,h.A)(r.path+"/identify",a)})).then((e=>Rt.fromJSON(e.data)))}async function mi(e,t,i,r){const s=(0,me.Dl)(e),n=await(0,ce.el)(i),o=t.toJSON();null!=n[0]&&(o.fromGeometry=JSON.stringify(yi(n[0]))),null!=n[1]&&(o.toGeometry=JSON.stringify(yi(n[1])));const a=(0,me.lF)({...s.query,f:"json",...o}),l=(0,me.jV)(a,r),{data:u}=await(0,h.A)(s.path+"/measure",l);return u}async function di(e,t,i){t=(0,v.PZ)(oi,t);const r=(0,me.Dl)(e),s=t.toJSON(),n=(0,me.lF)({...r.query,f:"json",...s}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(r.path+"/measureFromImage",o);return a}function yi(e){const t=e.toJSON();return e.spatialReference?.imageCoordinateSystem&&(t.spatialReference=hi(e.spatialReference)),t}function hi(e){const{imageCoordinateSystem:t}=e;if(t){const{id:e,referenceServiceName:i}=t;return null!=e?i?{icsid:e,icsns:i}:{icsid:e}:{ics:t}}return e.toJSON()}function fi(e,t){if(!e.imageCoordinateSystem)return(0,M.YX)(e);const i=hi(e),{icsid:r,icsns:s}=i;return null==r||null!=s&&!t?.toLowerCase().includes("/"+s.toLowerCase()+"/")?JSON.stringify(i):`0:${r}`}var gi=i(82371),wi=i(20223),vi=i(20615),Ri=i(78286),_i=i(99199),bi=i(61956),Si=i(4095);const Mi=new Set(["png","png8","png24","png32","jpg","bmp","gif","jpgpng","lerc","tiff"]),Ai=(0,v.Qp)(v.GB,{min:0,max:255}),xi=e=>{let t=class extends e{constructor(){super(...arguments),this._functionRasterInfos={},this._rasterJobHandler={instance:null,refCount:0,connectionPromise:null},this._cachedRendererJson=null,this._serviceSupportsMosaicRule=null,this.adjustAspectRatio=null,this.bandIds=void 0,this.capabilities=null,this.compressionQuality=void 0,this.compressionTolerance=.01,this.copyright=null,this.defaultMosaicRule=null,this.definitionExpression=null,this.exportImageServiceParameters=null,this.rasterInfo=null,this.fields=null,this.fullExtent=null,this.hasMultidimensions=!1,this.imageMaxHeight=4100,this.imageMaxWidth=4100,this.interpolation=void 0,this.minScale=0,this.maxScale=0,this.multidimensionalInfo=null,this.multidimensionalSubset=null,this.noData=null,this.noDataInterpretation=void 0,this.objectIdField=null,this.geometryType="polygon",this.typeIdField=null,this.types=[],this.pixelFilter=null,this.raster=void 0,this.sourceType=null,this.viewId=void 0,this.symbolizer=null,this.rasterFunctionInfos=null,this.serviceDataType=null,this.spatialReference=null,this.pixelType=null,this.serviceRasterInfo=null,this.sourceJSON=null,this.url=null,this.version=void 0}initialize(){this._set("exportImageServiceParameters",new Q({layer:this}))}readServiceSupportsMosaicRule(e,t){return this._isMosaicRuleSupported(t)}get _rasterFunctionNamesIndex(){const e=new Map;return!this.rasterFunctionInfos||null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.length<1||null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.forEach((t=>{e.set(t.name.toLowerCase().replaceAll(/ /gi,"_"),t.name)})),e}readBandIds(e,t){if(Array.isArray(e)&&e.length>0&&e.every((e=>"number"==typeof e)))return e}readCapabilities(e,t){return this._readCapabilities(t)}writeCompressionQuality(e,t,i){null!=e&&"lerc"!==this.format&&(t[i]=e)}writeCompressionTolerance(e,t,i){"lerc"===this.format&&null!=e&&(t[i]=e)}readDefaultMosaicRule(e,t){return this._serviceSupportsMosaicRule?H.A.fromJSON(t):null}get fieldsIndex(){return this.fields?new W.A(this.fields):null}set format(e){e&&Mi.has(e.toLowerCase())&&this._set("format",e.toLowerCase())}readFormat(e,t){return"esriImageServiceDataTypeVector-UV"===t.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===t.serviceDataType||null!=this.pixelFilter?"lerc":"jpgpng"}readMinScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}readMaxScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}set mosaicRule(e){let t=e;t?.mosaicMethod&&(t=H.A.fromJSON({...t.toJSON(),mosaicMethod:t.mosaicMethod,mosaicOperation:t.mosaicOperation})),this._set("mosaicRule",t)}readMosaicRule(e,t){const i=e||t.mosaicRule;return i?H.A.fromJSON(i):this._isMosaicRuleSupported(t)?H.A.fromJSON(t):null}writeMosaicRule(e,t,i){const{mosaicRule:r}=this;this._isValidCustomizedMosaicRule(r)&&(t[i]=r.toJSON())}writeNoData(e,t,i){null!=e&&"number"==typeof e&&(t[i]=Ai(e))}readObjectIdField(e,t){if(!e){const i=t.fields.find((e=>"esriFieldTypeOID"===e.type||"oid"===e.type));e=i?.name}return e}get parsedUrl(){return(0,w.An)(this.url)}readSourceType(e,t){return this._isMosaicDataset(t)?"mosaic-dataset":"raster-dataset"}get renderer(){const{activePresetRendererName:e,presetRenderers:t}=this;if(e){const i=t?.find((({name:t})=>t===e));return i?.renderer.clone()}return this.internalRenderer}set renderer(e){this.activePresetRendererName=null,this.internalRenderer=e}set internalRenderer(e){this.loaded&&(e=this._configRenderer(e)),this._set("internalRenderer",e)}readRenderer(e,t,i){const r=t?.layerDefinition?.drawingInfo?.renderer,s=(0,ue.LF)(r,i);return null==s?null:("vector-field"===s.type&&t.symbolTileSize&&!r.symbolTileSize&&(s.symbolTileSize=t.symbolTileSize),V(s)||p.A.getLogger(this).warn("ArcGISImageService","Imagery layer doesn't support given renderer type."),s)}writeRenderer(e,t,i){t.layerDefinition=t.layerDefinition||{},t.layerDefinition.drawingInfo=t.layerDefinition.drawingInfo||{},t.layerDefinition.drawingInfo.renderer=e.toJSON(),"vector-field"===e.type&&(t.symbolTileSize=e.symbolTileSize)}get rasterFields(){const e=this.fields?.map((e=>e.clone()))??[];e.push((0,te.rZ)()),"mosaic-dataset"===this.sourceType&&this.fields?.length&&e.push((0,te.Nd)()),this.version>=10.4&&null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.some((({name:e})=>"none"===e.toLowerCase()))&&e.push((0,te.dy)()),null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.filter((({name:e})=>"none"!==e.toLowerCase())).forEach((({name:t})=>e.push((0,te.nq)(t))));const{rasterInfo:t}=this;if(this._isVectorDataSet()){const i=t?.multidimensionalInfo?.variables[0].unit?.trim(),r=(0,te.DV)(i),s=(0,te.y6)();e.push(r,s)}if(t?.multidimensionalInfo&&"raster-dataset"===this.sourceType){const i=(0,te.AL)(t.multidimensionalInfo);e.push(...i)}const i=t?.attributeTable;if(null!=i){const t=(0,te.jC)(i);e.push(...t)}return e}set rasterFunction(e){let t=e;t?.rasterFunction&&(t=F.A.fromJSON({...t.toJSON(),rasterFunction:t.rasterFunction,rasterFunctionArguments:t.rasterFunctionArguments})),this._set("rasterFunction",t)}readRasterFunction(e,t){const i=t.rasterFunctionInfos;return t.renderingRule||i?.length&&"None"!==i[0].name?this._isRFTJson(t.renderingRule)?F.A.fromJSON({rasterFunctionDefinition:t.renderingRule}):F.A.fromJSON(t.renderingRule||{rasterFunctionInfos:t.rasterFunctionInfos}):null}readSpatialReference(e,t){const i=e||t.extent.spatialReference;return i?S.A.fromJSON(i):null}writePixelType(e,t,i){null!=this.serviceRasterInfo&&this.pixelType===this.serviceRasterInfo.pixelType||(t[i]=k.e8.toJSON(e))}readVersion(e,t){let i=t.currentVersion;return i||(i=t.hasOwnProperty("fields")||t.hasOwnProperty("timeInfo")?10:9.3),i}applyFilter(e){let t=e;return this.pixelFilter&&(t=this._clonePixelData(e),this.pixelFilter(t)),t}async applyRenderer(e,t){let i=e;const{renderer:r,symbolizer:s,pixelFilter:n,bandIds:o}=this;if(!this._isPicture()&&r&&s&&!n){const n=JSON.stringify(this._cachedRendererJson)!==JSON.stringify(r.toJSON()),a=this._rasterJobHandler.instance;if(a){n&&(s.bind(),await a.updateSymbolizer(s,t),this._cachedRendererJson=r.toJSON());const l=await a.symbolize({bandIds:o,...e},t);i={extent:e.extent,pixelBlock:l}}else i={extent:e.extent,pixelBlock:s.symbolize({bandIds:o,...e})}}return i}destroy(){this._shutdownJobHandler()}increaseRasterJobHandlerUsage(){this._rasterJobHandler.refCount++}decreaseRasterJobHandlerUsage(){this._rasterJobHandler.refCount--,this._rasterJobHandler.refCount<=0&&this._shutdownJobHandler()}async calculateVolume(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsCalculateVolume)throw new o.A("imagery-layer:compute-pixel-space-locations","this operation is not supported on the input image service");return e=(0,f.o8)(e),this.mosaicRule&&null==e.mosaicRule&&(e.mosaicRule=this.mosaicRule),async function(e,t,i){const r=(t=(0,v.PZ)(Qt,t)).toJSON();r.geometries=JSON.stringify(r.geometries);const s=(0,me.Dl)(e),n=(0,me.lF)({...s.query,f:"json",...r}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(`${s.path}/calculateVolume`,o);return Yt.fromJSON({volumes:a.results})}(this.url,e,this._getRequestOptions(t))}async computeAngles(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeAngles)throw new o.A("imagery-layer:compute-angles","this operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)(Se,t)).toJSON();null!=r.angleName&&(r.angleName=r.angleName.join(",")),t?.point?.spatialReference?.imageCoordinateSystem&&(r.point.spatialReference=hi(t.point.spatialReference)),t?.spatialReference?.imageCoordinateSystem&&(r.spatialReference=fi(t.spatialReference));const s=(0,me.Dl)(e),n=(0,me.lF)({...s.query,f:"json",...r}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(`${s.path}/computeAngles`,o);return a.spatialReference=a.spatialReference?null!=a.spatialReference.geodataXform?new S.A({wkid:0,imageCoordinateSystem:a.spatialReference}):S.A.fromJSON(a.spatialReference):null,"NaN"===a.north&&(a.north=null),"NaN"===a.up&&(a.up=null),new Ae(a)}(this.url,e,this._getRequestOptions(t))}async computePixelSpaceLocations(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputePixelLocation)throw new o.A("imagery-layer:compute-pixel-space-locations","this operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)(St,t)).toJSON(),{geometries:s}=t;if(s)for(let e=0;e<s.length;e++)s[e].spatialReference?.imageCoordinateSystem&&(r.geometries.geometries[e].spatialReference=hi(s[e].spatialReference));const n=(0,me.Dl)(e),o=(0,me.lF)({...n.query,f:"json",...r}),a=(0,me.jV)(o,i),{data:l}=await(0,h.A)(`${n.path}/computePixelLocation`,a);return At.fromJSON(l)}(this.url,e,this._getRequestOptions(t))}async computeHistograms(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeHistograms)throw new o.A("imagery-layer:compute-histograms","this operation is not supported on the input image service");return e=(0,f.o8)(e),this._applyMosaicAndRenderingRules(e),async function(e,t,i){const r=await pi(e,t,i),s=(0,me.Dl)(e),{data:n}=await(0,h.A)(`${s.path}/computeHistograms`,r);return{histograms:n.histograms}}(this.url,e,this._getRequestOptions(t))}async computeStatisticsHistograms(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeStatisticsHistograms)throw new o.A("imagery-layer:compute-statistics-histograms","this operation is not supported on the input image service");return e=(0,f.o8)(e),this._applyMosaicAndRenderingRules(e),async function(e,t,i){const r=await pi(e,t,i),s=(0,me.Dl)(e),{data:n}=await(0,h.A)(`${s.path}/computeStatisticsHistograms`,r),{statistics:o}=n;return o?.length&&o.forEach((e=>{e.avg=e.mean,e.stddev=e.standardDeviation})),{statistics:o,histograms:n.histograms}}(this.url,e,this._getRequestOptions(t))}async measureHeight(e,t){const i=await this._fetchCapabilities(t?.signal);if(!("base-and-top"===e.operationType?i.mensuration.supportsHeightFromBaseAndTop:"base-and-top-shadow"===e.operationType?i.mensuration.supportsHeightFromBaseAndTopShadow:i.mensuration.supportsHeightFromTopAndTopShadow))throw new o.A("imagery-layer:measure-height","this operation is not supported on the input image service");return e=(0,f.o8)(e),this._applyMosaicRule(e),async function(e,t,i){t=(0,v.PZ)(ct,t);const r=await mi(e,t,[t.fromGeometry,t.toGeometry],i);return dt.fromJSON(r)}(this.url,e,this._getRequestOptions(t))}async measureAreaAndPerimeter(e,t){const i=await this._fetchCapabilities(t?.signal);if(!i.mensuration.supportsAreaAndPerimeter||e.is3D&&!i.mensuration.supports3D)throw new o.A("imagery-layer:measure-area-and-perimeter","this operation is not supported on the input image service");return e=(0,f.o8)(e),this._applyMosaicRule(e),async function(e,t,i){t=(0,v.PZ)(Je,t);const r=await mi(e,t,[t.geometry],i);return $e.fromJSON(r)}(this.url,e,this._getRequestOptions(t))}async measureDistanceAndAngle(e,t){const i=await this._fetchCapabilities(t?.signal);if(!i.mensuration.supportsDistanceAndAngle||e.is3D&&!i.mensuration.supports3D)throw new o.A("imagery-layer:measure-distance-and-angle","this operation is not supported on the input image service");return e=(0,f.o8)(e),this._applyMosaicRule(e),async function(e,t,i){t=(0,v.PZ)(Qe,t);const r=await mi(e,t,[t.fromGeometry,t.toGeometry],i);return We.fromJSON(r)}(this.url,e,this._getRequestOptions(t))}async measurePointOrCentroid(e,t){const i=await this._fetchCapabilities(t?.signal);if(!i.mensuration.supportsPointOrCentroid||e.is3D&&!i.mensuration.supports3D)throw new o.A("imagery-layer:measure-point-or-centroid","this operation is not supported on the input image service");return e=(0,f.o8)(e),this._applyMosaicRule(e),async function(e,t,i){t=(0,v.PZ)(Ft,t);const r=await mi(e,t,[t.geometry],i);return jt.fromJSON(r)}(this.url,e,this._getRequestOptions(t))}async measureLengthFromImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMeasureFromImage)throw new o.A("imagery-layer:measure-length-from-image","this operation is not supported on the input image service");if("polyline"!==e.geometry.type)throw new o.A("imagery-layer:measure-length-from-image","this input geometry must be a polyline");return async function(e,t,i){const r=await di(e,t,i);return li.fromJSON(r)}(this.url,e,this._getRequestOptions(t))}async measureAreaFromImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMeasureFromImage)throw new o.A("imagery-layer:measure-area-from-image","this operation is not supported on the input image service");if("polygon"!==e.geometry.type)throw new o.A("imagery-layer:measure-area-from-image","this input geometry must be a polygon");return async function(e,t,i){const r=await di(e,t,i);return ri.fromJSON(r)}(this.url,e,this._getRequestOptions(t))}getField(e){const{fieldsIndex:t}=this;return null!=t?t.get(e):void 0}getFieldDomain(e,t){const i=this.getField(e);return i?i.domain:null}async fetchImage(e,t,r,s={}){if(null==e||null==t||null==r)throw new o.A("imagery-layer:fetch-image","Insufficient parameters for requesting an image. A valid extent, width and height values are required.");if(this.renderer||this.symbolizer){const e=await this._generateRasterInfo(this.rasterFunction,{signal:s.signal});e&&(this.rasterInfo=e)}const n=this.getExportImageServiceParameters(e,t,r,s.timeExtent);if(null==n){if(s.requestAsImageElement&&this._canRequestImageElement(this.format)){const e=document.createElement("canvas");return e.width=t,e.height=r,s.returnImageBitmap?{imageBitmap:await(0,X.m)(e,`${i(this.parsedUrl)}/exportImage`,s.signal)}:{imageOrCanvasElement:e}}const{bandIds:n,rasterInfo:o}=this,a=(n?.length||o.bandCount)??0,l=t*r,u=o.pixelType,p=[];for(let e=0;e<a;e++)p.push(ee.A.createEmptyBand(u,l));return{pixelData:{pixelBlock:new ee.A({width:t,height:r,pixels:p,mask:new Uint8Array(l),pixelType:u}),extent:e}}}const a=!!s.requestAsImageElement&&!this.pixelFilter,l=a&&!!s.returnImageBitmap,u={imageServiceParameters:n,imageProps:{extent:e,width:t,height:r,format:this.format},requestAsImageElement:a,returnImageBitmap:l,signal:s.signal};return this._requestArrayBuffer(u)}fetchKeyProperties(e){return(0,h.A)(i(this.parsedUrl)+"/keyProperties",{query:this._getQueryParams({renderingRule:this.version>=10.3?e?.rasterFunction:null})}).then((e=>e.data))}fetchRasterAttributeTable(e){return this.version<10.1?Promise.reject(new o.A("#fetchRasterAttributeTable()","Failed to get rasterAttributeTable")):(0,h.A)(i(this.parsedUrl)+"/rasterAttributeTable",{query:this._getQueryParams({renderingRule:this.version>=10.3?e?.rasterFunction:null})}).then((e=>wt.A.fromJSON(e.data)))}getCatalogItemRasterInfo(e,t){const r={...t,query:this._getQueryParams()};return async function(e,t,i){const r=(0,me.Dl)(e),s=(0,me.lF)({...r?.query,f:"json"}),n=(0,me.jV)(s,i),o=`${r?.path}/${t}/info`,a=(0,h.A)(`${o}`,n),l=(0,h.A)(`${o}/keyProperties`,n),u=await Promise.allSettled([a,l]),p="fulfilled"===u[0].status?u[0].value.data:null,c="fulfilled"===u[1].status?u[1].value.data:null;let m=null;p.statistics?.length&&(m=p.statistics.map((e=>({min:e[0],max:e[1],avg:e[2],stddev:e[3]}))));const d=_.A.fromJSON(p.extent),y=Math.ceil(d.width/p.pixelSizeX-.1),f=Math.ceil(d.height/p.pixelSizeY-.1),g=d.spatialReference,w=new de.A({x:p.pixelSizeX,y:p.pixelSizeY,spatialReference:g}),v=p.histograms?.length?p.histograms:null,R=new wi.A({origin:p.origin,blockWidth:p.blockWidth,blockHeight:p.blockHeight,firstPyramidLevel:p.firstPyramidLevel,maximumPyramidLevel:p.maxPyramidLevel});return new ie.A({width:y,height:f,bandCount:p.bandCount,extent:d,spatialReference:g,pixelSize:w,pixelType:p.pixelType.toLowerCase(),statistics:m,histograms:v,keyProperties:c,storageInfo:R})}(i(this.parsedUrl),e,r)}async getCatalogItemICSInfo(e,t){const{data:r}=await(0,h.A)(i(this.parsedUrl)+"/"+e+"/info/ics",{query:this._getQueryParams(),...t}),s=r?.ics;if(!s)return;let n=null;try{n=(await(0,h.A)(i(this.parsedUrl)+"/"+e+"/info",{query:this._getQueryParams(),...t})).data.extent}catch{}if(!n?.spatialReference)return{ics:s,icsToPixelTransform:null,icsExtent:null,northDirection:null};const o=this.version>=10.7?(0,h.A)(i(this.parsedUrl)+"/"+e+"/info/icstopixel",{query:this._getQueryParams(),...t}).then((e=>e.data)).catch((()=>({}))):{},a=n.spatialReference,l={geometries:JSON.stringify({geometryType:"esriGeometryEnvelope",geometries:[n]}),inSR:(0,M.YX)(a),outSR:"0:"+e},u=(0,h.A)(i(this.parsedUrl)+"/project",{query:this._getQueryParams(l),...t}).then((e=>e.data)).catch((()=>({}))),p=(n.xmin+n.xmax)/2,c=(n.ymax-n.ymin)/6,m=n.ymin+c,d=[];for(let e=0;e<5;e++)d.push({x:p,y:m+c*e});const y={geometries:JSON.stringify({geometryType:"esriGeometryPoint",geometries:d}),inSR:(0,M.YX)(a),outSR:"0:"+e},f=(0,h.A)(i(this.parsedUrl)+"/project",{query:this._getQueryParams(y),...t}).then((e=>e.data)).catch((()=>({}))),g=await Promise.all([o,u,f]);let w=g[0].ipxf;if(null==w){const e=s.geodataXform?.xf_0;"topup"===e?.name?.toLowerCase()&&6===e?.coefficients?.length&&(w={affine:{name:"ics [sensor: Frame] to pixel (column, row) transformation",coefficients:e.coefficients,cellsizeRatio:0,type:"GeometricXform"}})}const v=_.A.fromJSON(g[1]?.geometries?.[0]);v&&(v.spatialReference=new S.A({wkid:0,imageCoordinateSystem:s}));const R=g[2].geometries?g[2].geometries.filter((e=>null!=e?.x&&null!=e.y&&"NaN"!==e.x&&"NaN"!==e.y)):[],b=R.length;if(b<3)return{ics:s,icsToPixelTransform:w,icsExtent:v,northDirection:null};let A=0,x=0,I=0,F=0;for(let e=0;e<b;e++)A+=R[e].x,x+=R[e].y,I+=R[e].x*R[e].x,F+=R[e].x*R[e].y;const D=(b*F-A*x)/(b*I-A*A);let j=0;const T=R[4].x>R[0].x,Z=R[4].y>R[0].y;return D===1/0?j=Z?90:270:0===D?j=T?0:180:D>0?j=T?180*Math.atan(D)/Math.PI:180*Math.atan(D)/Math.PI+180:D<0&&(j=Z?180+180*Math.atan(D)/Math.PI:360+180*Math.atan(D)/Math.PI),{ics:s,icsToPixelTransform:w,icsExtent:v,northDirection:j}}async generateRasterInfo(e,t){e=(0,v.PZ)(F.A,e);const r={...t,query:this._getQueryParams()};if(!e||"none"===e.functionName?.toLowerCase()||this._isVectorFieldResampleFunction(e))return this.serviceRasterInfo??(0,gi.Tw)(i(this.parsedUrl),this.sourceJSON,r);const s=function(e){const t=JSON.stringify(e),i=t.includes('"rasterFunctionDefinition":{'),r=i?t.match(/"type":"(.*?FunctionArguments")/gi):t.match(/"rasterFunction":"(.*?")/gi),s=r?.map((e=>i?e.slice(8,-18):e.slice(18,-1)));return s?s.join("/"):null}(e);if(!s)throw new o.A("imagery-layer:generate-raster-info","the rendering rule is not supported");if(this._functionRasterInfos[s])return this._functionRasterInfos[s];const n=(0,gi.X6)(i(this.parsedUrl),e,r);this._functionRasterInfos[s]=n;try{return await n}catch(e){throw this._functionRasterInfos[s]=null,e}}getExportImageServiceParameters(e,t,r,s){const n=fi((e=e.clone().shiftCentralMeridian()).spatialReference,i(this.parsedUrl)),o=this.exportImageServiceParameters.toJSON(),{bandIds:a,noData:l}=o;let{renderingRule:u}=o;const p=this.rasterFunction?.rasterFunctionDefinition,c=this.renderer?.type,m=!c||"raster-stretch"===c||"raster-colormap"===c||"unique-value"===c||"class-breaks"===c||"raster-shaded-relief"===c;if(a?.length&&this._hasRasterFunction(this.rasterFunction)&&!p&&m){const e={rasterFunction:"ExtractBand",rasterFunctionArguments:{BandIds:a}};if("Stretch"===u.rasterFunction)e.rasterFunctionArguments.Raster=u.rasterFunctionArguments.Raster,u.rasterFunctionArguments.Raster=e;else if("Colormap"===u.rasterFunction){const t=u.rasterFunctionArguments.Raster;"Stretch"===t?.rasterFunction?(e.rasterFunctionArguments.Raster=t.rasterFunctionArguments.Raster,t.rasterFunctionArguments.Raster=e):(e.rasterFunctionArguments.Raster=t,u.rasterFunctionArguments.Raster=e)}else e.rasterFunctionArguments.Raster=u,u=e;o.bandIds=void 0}else o.bandIds=a?.join(",");Array.isArray(l)&&l.length>0&&(o.noData=l.join(","));const d=this._processMultidimensionalIntersection(null,s,this.exportImageServiceParameters.mosaicRule);if(d.isOutSide)return null;o.mosaicRule=null!=d.mosaicRule?JSON.stringify(d.mosaicRule):null,s=d.timeExtent,o.renderingRule=this._getRenderingRuleString(F.A.fromJSON(u));const y={};if(null!=s){const{start:e,end:t}=s.toJSON();e&&t&&e===t?y.time=""+e:null==e&&null==t||(y.time=`${e??"null"},${t??"null"}`)}return{bbox:e.xmin+","+e.ymin+","+e.xmax+","+e.ymax,bboxSR:n,imageSR:n,size:t+","+r,...o,...y}}async getSamples(e,t){const i=await this._fetchCapabilities(t?.signal);if(!i?.operations.supportsGetSamples)throw new o.A("imagery-layer:get-samples","getSamples operation is not supported on the input image service");e=(0,f.o8)(e);const{raster:r}=this;return r&&null==e.raster&&(e.raster=r),async function(e,t,i){const r=(t=(0,v.PZ)(Nt,t)).toJSON();ui(r),r.outFields?.length&&(r.outFields=r.outFields.join(","));const s=await(0,ce.el)(t.geometry),n=s?.[0];null!=n&&(r.geometry=yi(n));const o=(0,me.Dl)(e),a=(0,me.lF)({...o.query,f:"json",...r}),l=(0,me.jV)(a,i),{data:u}=await(0,h.A)(`${o.path}/getSamples`,l),p=u.samples.map((e=>{const t="NaN"===e.value||""===e.value?null:e.value.split(" ").map((e=>Number(e)));return{...e,pixelValue:t}}));return Jt.fromJSON({samples:p})}(this.url,e,this._getRequestOptions(t))}async identify(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsIdentify)throw new o.A("imagery-layer:identify","identify operation is not supported on the input image service");e=(0,f.o8)(e),this.version<10.91&&"extent"===e.geometry?.type&&(e.geometry=b.A.fromExtent(e.geometry));const i=this._processMultidimensionalIntersection(e.geometry,e.timeExtent,e.mosaicRule||this.mosaicRule);if(i.isOutSide)throw new o.A("imagery-layer:identify","the request cannot be fulfilled when falling outside of the multidimensional subset");e.timeExtent=i.timeExtent,e.mosaicRule=i.mosaicRule;const{raster:r,rasterFunction:s}=this;return s&&null==e.rasterFunction&&(e.rasterFunction=s),r&&null==e.raster&&(e.raster=r),ci(this.url,e,this._getRequestOptions(t))}async imageToMap(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsImageToMap)throw new o.A("imagery-layer:image-to-map","imageToMap operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)($t,t)).toJSON();t.geometry.spatialReference.imageCoordinateSystem&&(r.geometry=yi(t.geometry)),t.depthOffset&&t.adjust||delete r.options;const s=(0,me.Dl)(e),n=(0,me.lF)({...s.query,f:"json",...r}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(`${s.path}/imageToMap`,o);return(0,pe.rS)(a)}(i(this.parsedUrl),e,this._getRequestOptions(t))}async imageToMapMultiray(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsImageToMapMultiray)throw new o.A("imagery-layer:image-to-map-multiray","imageToMapMultiray operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)(Et,t)).toJSON();t.rasterIds?.length&&(r.rasterIds=t.rasterIds.join(","));const s=(0,me.Dl)(e),n=(0,me.lF)({...s.query,f:"json",...r}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(`${s.path}/imageToMapMultiray`,o);return(0,pe.rS)(a)}(i(this.parsedUrl),e,this._getRequestOptions(t))}async mapToImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMapToImage)throw new o.A("imagery-layer:map-to-image","mapToImage operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)(ti,t)).toJSON(),s=await(0,ce.el)(t.geometry),n=s?.[0];null!=n&&(r.geometry=yi(n)),t.visibleOnly||delete r.options;const o=n?.spatialReference??t.geometry?.spatialReference;o&&(r.inSR=fi(o));const a=(0,me.Dl)(e),l=(0,me.lF)({...a.query,f:"json",...r}),u=(0,me.jV)(l,i),{data:p}=await(0,h.A)(`${a.path}/mapToImage`,u);return(0,pe.rS)(p)}(i(this.parsedUrl),e,this._getRequestOptions(t))}async findImages(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsFindImages)throw new o.A("imagery-layer:find-images","findImages operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)(he,t)).toJSON(),s=await(0,ce.el)([t.fromGeometry,t.toGeometry]);null!=s[0]&&(r.fromGeometry=yi(s[0]),s[0].spatialReference&&(r.inSR=fi(s[0].spatialReference))),null!=s[1]&&(r.toGeometry=yi(s[1])),t.objectIds?.length&&(r.objectIds=r.objectIds.join(","));const n=(0,me.Dl)(e),o=(0,me.lF)({...n.query,f:"json",...r}),a=(0,me.jV)(o,i),{data:l}=await(0,h.A)(`${n.path}/find`,a);return Re.fromJSON(l)}(i(this.parsedUrl),e,this._getRequestOptions(t))}async getImageUrl(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsGetImageUrl)throw new o.A("imagery-layer:get-image-url","getImageUrl operation is not supported on the input image service");return async function(e,t,i){const r=(t=(0,v.PZ)(Lt,t)).toJSON(),s=(0,me.Dl)(e),n=(0,me.lF)({...s.query,f:"json",...r}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(`${s.path}/getImageUrl`,o);return Bt.fromJSON(a)}(i(this.parsedUrl),e,this._getRequestOptions(t))}createQuery(){return new bi.A({outFields:["*"],returnGeometry:!0,where:this.definitionExpression||"1=1"})}async queryBoundary(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQueryBoundary)throw new o.A("imagery-layer:query-boundary","queryBoundary operation is not supported on the input image service");return e=e??{outSpatialReference:this.spatialReference},async function(e,t,i){t=(0,v.PZ)(Le,t);const r=(0,me.Dl)(e),s=t.toJSON();t.outSpatialReference&&(s.outSR=fi(t.outSpatialReference));const n=(0,me.lF)({...r.query,f:"json",...s}),o=(0,me.jV)(n,i),{data:a}=await(0,h.A)(r.path+"/queryBoundary",o);return Be.fromJSON(a)}(i(this.parsedUrl),e,this._getRequestOptions(t))}async queryRasters(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),(0,_i.s)(this.url,e,t)}async queryObjectIds(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),(0,Ri.V)(this.url,e,t)}async queryGPSInfo(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQueryGPSInfo)throw new o.A("imagery-layer:query-gps-info","queryGPSInfo operation is not supported on the input image service");return e=e??{where:"1=1"},async function(e,t,i){const r=(t=(0,v.PZ)(it,t)).toJSON();ui(r),r.objectIds?.length&&(r.objectIds=r.objectIds.join(",")),r.geometry||r.objectIds||r.time||r.where||(r.where="1=1");const s=await(0,ce.el)(t.geometry),n=s?.[0];null!=n&&(r.geometry=yi(n));const o=n?.spatialReference??t.geometry?.spatialReference;o&&(r.inSR=fi(o));const a=(0,me.Dl)(e),l=(0,me.lF)({...a.query,f:"json",...r}),u=(0,me.jV)(l,i),{data:p}=await(0,h.A)(`${a.path}/queryGPSInfo`,u);return lt.fromJSON(p)}(i(this.parsedUrl),e,this._getRequestOptions(t))}async queryRasterCount(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),(0,vi.I)(this.url,e,t)}async queryVisibleRasters(e,t){if(!e)throw new o.A("imagery-layer: query-visible-rasters","missing query parameter");await this.load();const{pixelSize:i,returnDomainValues:r,returnTopmostRaster:s,showNoDataRecords:n}=t||{pixelSize:null,returnDomainValues:!1,returnTopmostRaster:!1,showNoDataRecords:!1};let a=!1,l=null,u=null;const p=te.F_.servicePixelValue.toLowerCase(),c=this._rasterFunctionNamesIndex;if(null!=e.outFields&&(a=e.outFields.some((e=>!e.toLowerCase().startsWith(p))),this.version>=10.4)){const t=e.outFields.filter((e=>e.toLowerCase().startsWith(p)&&e.length>p.length)).map((e=>{const t=e.slice(p.length+1);return[this._updateRenderingRulesFunctionName(t,c),t]}));l=t.map((e=>new F.A({functionName:e[0]}))),u=t.map((e=>e[1]));const{rasterFunction:i}=this;0===l.length?i?.functionName?(l.push(i),u.push(i.functionName)):l=null:i?.functionName&&!l.some((e=>e.functionName===i.functionName))&&(l.push(i),u.push(i.functionName))}const m=null==e.outSpatialReference||e.outSpatialReference.equals(this.spatialReference),{multidimensionalSubset:d}=this;let y=e.timeExtent||this.timeExtent;if(d){const{isOutside:t,intersection:i}=(0,se.Rp)(d,{geometry:e.geometry,timeExtent:e.timeExtent,multidimensionalDefinition:this.exportImageServiceParameters.mosaicRule?.multidimensionalDefinition});if(t)throw new o.A("imagery-layer:query-visible-rasters","the request cannot be fulfilled when falling outside of the multidimensional subset");null!=i?.timeExtent&&(y=i.timeExtent)}const h=this._combineMosaicRuleWithTimeExtent(this.exportImageServiceParameters.mosaicRule,y);let f=e.geometry;this.version<10.91&&"extent"===f?.type&&(f=b.A.fromExtent(f));const g=this._getQueryParams({geometry:f,timeExtent:y,mosaicRule:h,rasterFunction:this.version<10.4?this.rasterFunction:null,rasterFunctions:l,pixelSize:i,returnCatalogItems:a,returnGeometry:m,raster:this.raster,maxItemCount:s?1:null});delete g.f;const w=new gt(g);try{await this._generateRasterInfo(this.rasterFunction);const i=await ci(this.url,w,{signal:t?.signal,query:{...this.customParameters}}),s=e.outFields,o=null!=i.value&&i.value.toLowerCase().includes("nodata"),l=a&&!m&&i?.catalogItems?.features.length&&(n||!o),p=this.multidimensionalInfo&&"raster-dataset"===this.sourceType?(0,se.XU)({rasterInfo:this.rasterInfo,multidimensionalDefinition:h?.multidimensionalDefinition,timeExtent:y,multidimensionalSubset:this.multidimensionalSubset}):null;if(!l)return this._processVisibleRastersResponse(i,{returnDomainValues:r,templateRRFunctionNames:u,showNoDataRecords:n,templateFields:s,effectiveMultidimensionalDefinition:p});const c=this.objectIdField||"ObjectId",d=i.catalogItems?.features??[],f=d.map((e=>e.attributes?.[c])),g=new bi.A({objectIds:f,returnGeometry:!0,outSpatialReference:e.outSpatialReference,outFields:[c]}),v=await this.queryRasters(g);return v?.features?.length&&v.features.forEach((t=>{d.forEach((i=>{i.attributes[c]===t.attributes[c]&&t.geometry&&(i.geometry=t.geometry.clone(),null!=e.outSpatialReference&&(i.geometry.spatialReference=e.outSpatialReference))}))})),this._processVisibleRastersResponse(i,{returnDomainValues:r,templateRRFunctionNames:u,showNoDataRecords:n,templateFields:s,effectiveMultidimensionalDefinition:p})}catch{throw new o.A("imagery-layer:query-visible-rasters","encountered error when querying visible rasters")}}async fetchVariableStatisticsHistograms(e,t){const r=(0,h.A)(i(this.parsedUrl)+"/statistics",{query:this._getQueryParams({variable:e}),signal:t}).then((e=>e.data?.statistics)),s=(0,h.A)(i(this.parsedUrl)+"/histograms",{query:this._getQueryParams({variable:e}),signal:t}).then((e=>e.data?.histograms)),n=await Promise.all([r,s]);return n[0]&&n[0].forEach((e=>{e.avg=e.mean,e.stddev=e.standardDeviation})),{statistics:n[0]||null,histograms:n[1]||null}}async createFlowMesh(e,t){const i=this._rasterJobHandler.instance;return i?i.createFlowMesh(e,t):(0,Si.CW)(e.meshType,e.simulationSettings,e.flowData,null!=t.signal?t.signal:(new AbortController).signal)}getMultidimensionalSubsetVariables(e){const t=e??this.serviceRasterInfo.multidimensionalInfo;return(0,se.z2)(this.multidimensionalSubset,t)}async _fetchService(e){await this._fetchServiceInfo(e),this.rasterInfo||(this.rasterInfo=this.serviceRasterInfo);const t=this.sourceJSON,r=null!=this.serviceRasterInfo?Promise.resolve(this.serviceRasterInfo):(0,gi.Tw)(i(this.parsedUrl),t,{signal:e,query:this._getQueryParams()}).then((e=>(this._set("serviceRasterInfo",e),this._set("multidimensionalInfo",e.multidimensionalInfo),(0,gi.E9)(e,t),e))),s=this._hasRasterFunction(this.rasterFunction)?this._generateRasterInfo(this.rasterFunction,{signal:e}):null,n=this._getRasterFunctionInfos();return Promise.all([r,s,n]).then((e=>{e[1]?this._set("rasterInfo",e[1]):this._set("rasterInfo",e[0]),e[2]&&this._set("rasterFunctionInfos",e[2]),this.internalRenderer&&!this._isSupportedRenderer(this.internalRenderer)&&(this._set("internalRenderer",null),p.A.getLogger(this).warn("ArcGISImageService","Switching to the default renderer. Renderer applied is not valid for this Imagery Layer")),this._set("internalRenderer",this._configRenderer(this.renderer)),this.addHandles([(0,g.wB)((()=>this.rasterFunction),(e=>{(this.renderer||this.symbolizer||this.popupEnabled&&this.popupTemplate)&&this._generateRasterInfo(e).then((e=>{e&&(this.rasterInfo=e)}))}))]);const{serviceRasterInfo:t}=this;null!=t.multidimensionalInfo&&this._updateMultidimensionalDefinition(t)}))}_combineMosaicRuleWithTimeExtent(e,t){const i=this.timeInfo,{multidimensionalInfo:r}=this.serviceRasterInfo;if(null==e||null==r||null==t||null==i?.startField)return e;const{startField:s}=i,n=r.variables.some((e=>e.dimensions.some((e=>e.name===s))))?s:"StdTime";if(e=e.clone(),"mosaic-dataset"===this.sourceType)return e.multidimensionalDefinition=e.multidimensionalDefinition?.filter((e=>e.dimensionName!==n)),this._cleanupMultidimensionalDefinition(e);e.multidimensionalDefinition=e.multidimensionalDefinition||[];const o=e.multidimensionalDefinition.filter((e=>e.dimensionName===n)),a=null!=t.start?t.start.getTime():null,l=null!=t.end?t.end.getTime():null,u=null==a||null==l||a===l,p=u?[a||l]:[[a,l]],c=this.version>=10.8;if(o.length)o.forEach((e=>{e.dimensionName===n&&(c?(e.dimensionName=null,e.isSlice=!1,e.values=[]):(e.isSlice=u,e.values=p))}));else if(!c){const t=e.multidimensionalDefinition.filter((e=>null!=e.variableName&&null==e.dimensionName));t.length?t.forEach((e=>{e.dimensionName=n,e.isSlice=u,e.values=p})):e.multidimensionalDefinition.push(new x.A({variableName:"",dimensionName:n,isSlice:u,values:p}))}return this._cleanupMultidimensionalDefinition(e)}_cleanupMultidimensionalDefinition(e){return null==e?null:(e.multidimensionalDefinition&&(e.multidimensionalDefinition=e.multidimensionalDefinition.filter((e=>!(!e.variableName&&!e.dimensionName))),0===e.multidimensionalDefinition.length&&(e.multidimensionalDefinition=null)),"mosaic-dataset"!==this.sourceType&&null==e.multidimensionalDefinition?null:e)}async _prepareForQuery(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQuery)throw new o.A("imagery-layer:query-rasters","query operation is not supported on the input image service");return e=null!=e?(0,v.PZ)(bi.A,e):this.createQuery(),t=this._getRequestOptions(t),this.raster&&(t.query={...t.query,raster:this.raster}),{query:e,requestOptions:t}}async _initJobHandler(){if(null!=this._rasterJobHandler.connectionPromise)return this._rasterJobHandler.connectionPromise;const e=new re.A;this._rasterJobHandler.connectionPromise=e.initialize().then((()=>{this._rasterJobHandler.instance=e}),(()=>{})),await this._rasterJobHandler.connectionPromise}_shutdownJobHandler(){this._rasterJobHandler.instance&&this._rasterJobHandler.instance.destroy(),this._rasterJobHandler.instance=null,this._rasterJobHandler.connectionPromise=null,this._rasterJobHandler.refCount=0,this._cachedRendererJson=null}_isSupportedRenderer(e){const{rasterInfo:t,rasterFunction:i}=this;return"unique-value"===e.type&&this._hasRasterFunction(i)&&1===t?.bandCount&&["u8","s8"].includes(t.pixelType)||null!=t&&null!=e&&(0,ae.fp)(t).includes(e.type)}async _fetchCapabilities(e){return this.capabilities||await this._fetchServiceInfo(e),this.capabilities}async _fetchServiceInfo(e){let t=this.sourceJSON;if(!t){const{data:r,ssl:s}=await(0,h.A)(i(this.parsedUrl),{query:this._getQueryParams(),signal:e});t=r,this.sourceJSON=t,s&&(this.url=this.url.replace(/^http:/i,"https:"))}if(t.capabilities?.toLowerCase().split(",").map((e=>e.trim())).indexOf("tilesonly")>-1)throw new o.A("imagery-layer:fetch-service-info","use ImageryTileLayer to open tiles-only image services");this.read(t,{origin:"service",url:this.parsedUrl})}_isMosaicDataset(e){return e.serviceSourceType?"esriImageServiceSourceTypeMosaicDataset"===e.serviceSourceType:e.fields?.length>0}_isMosaicRuleSupported(e){if(!e)return!1;const t=this._isMosaicDataset(e),i=e.currentVersion>=10.71&&e.hasMultidimensions&&!(e.fields?.length>1);return t||i}_isVectorFieldResampleFunction(e){if(null==e)return!1;const{functionName:t,functionArguments:i}=e,r="resample"===t?.toLowerCase(),s=i?.ResampleType||i?.resampleType;return r&&(7===s||10===s)}_isPicture(){return!this.format||this.format.includes("jpg")||this.format.includes("png")}_configRenderer(e){const t=this._isPicture(),{rasterInfo:i}=this;if(!t&&!this.pixelFilter||this._isVectorDataSet()){const t=this.mosaicRule?.multidimensionalDefinition?.[0].variableName,r=(0,ae.I8)({variableName:t,rasterFunctionName:this.rasterFunction?.functionName,presetRenderers:this.presetRenderers});if(!this.bandIds&&i.bandCount>=3){const e=r?.bandIds??(0,ae.ci)(i);!e||3===i.bandCount&&0===e[0]&&1===e[1]&&2===e[2]||(this.bandIds=e)}e||(e=r?.renderer??(0,ae.PD)(i,{bandIds:this.bandIds,variableName:this.rasterFunction?null:t}));const s=(0,ae.$P)(e.toJSON());this.symbolizer?(this.symbolizer.rendererJSON=s,this.symbolizer.rasterInfo=i):this.symbolizer=new le.A({rendererJSON:s,rasterInfo:i}),this.symbolizer.bind().success||(this.symbolizer=null)}return e}_clonePixelData(e){return null==e?e:{extent:e.extent&&e.extent.clone(),pixelBlock:null!=e.pixelBlock?e.pixelBlock.clone():null}}_getQueryParams(e){null!=e?.renderingRule&&"string"!=typeof e.renderingRule&&(e.renderingRule=this._getRenderingRuleString(e.renderingRule));const{raster:t,viewId:i}=this;return{raster:t,viewId:i,f:"json",...e,...this.customParameters}}_getRequestOptions(e){return{...e,query:{...e?.query,...this.customParameters}}}_decodePixelBlock(e,t,i){return this._rasterJobHandler.instance?this._rasterJobHandler.instance.decode({data:e,options:t}):(0,ne.D)(e,t,i)}async _getRasterFunctionInfos(e){const t=this.sourceJSON.rasterFunctionInfos;if(this.loaded)return t;if(t&&this.version>=10.3){if(1===t.length&&"none"===t[0].name.toLowerCase())return t;const r=await(0,h.A)(i(this.parsedUrl)+"/rasterFunctionInfos",{query:this._getQueryParams(),signal:e});return r.data?.rasterFunctionInfos}return null}_canRequestImageElement(e){return!this.pixelFilter&&(!e||e.includes("png"))}async _requestArrayBuffer(e){const{imageProps:t,requestAsImageElement:r,returnImageBitmap:s,signal:n}=e;if(r&&this._canRequestImageElement(t.format)){const r=`${i(this.parsedUrl)}/exportImage`,{data:o}=await(0,h.A)(r,{responseType:s?"blob":"image",query:this._getQueryParams({f:"image",...this.refreshParameters,...e.imageServiceParameters}),signal:n});return o instanceof Blob?{imageBitmap:await(0,X.m)(o,r,n),params:t}:{imageOrCanvasElement:o,params:t}}const a=this._initJobHandler(),l=(0,h.A)(i(this.parsedUrl)+"/exportImage",{responseType:"array-buffer",query:this._getQueryParams({f:"image",...e.imageServiceParameters}),signal:n}),u=(await Promise.all([l,a]))[0].data,p=t.format||"jpgpng";let c=p;if("bsq"!==c&&"bip"!==c&&(c=(0,ne.g)(u)),!c)throw new o.A("imagery-layer:fetch-image","unsupported format signature "+String.fromCharCode.apply(null,new Uint8Array(u)));const m={signal:n},d="gif"===p||"bmp"===p||p.includes("png")&&("png"===c||"jpg"===c)?(0,ne.D)(u,{useCanvas:!0,...t},m):this._decodePixelBlock(u,{width:t.width,height:t.height,planes:null,pixelType:null,noDataValue:null,format:p},m);return{pixelData:{pixelBlock:await d,extent:t.extent},params:t}}_generateRasterInfo(e,t){return this.generateRasterInfo(e,t).catch((()=>null))}_isValidCustomizedMosaicRule(e){return e&&JSON.stringify(e.toJSON())!==JSON.stringify(this.defaultMosaicRule?.toJSON())}_updateMultidimensionalDefinition(e){if(this._isValidCustomizedMosaicRule(this.mosaicRule))return;let t=(0,se.fy)(e,{multidimensionalSubset:this.multidimensionalSubset});if(null!=t&&t.length>0){this.mosaicRule=this.mosaicRule||new H.A;const e=this.mosaicRule.multidimensionalDefinition;!this.sourceJSON.defaultVariableName&&this.rasterFunction&&"none"!==this.rasterFunction.functionName?.toLowerCase()&&t.forEach((e=>e.variableName="")),t=t.filter((({variableName:e,dimensionName:t})=>e&&"*"!==e||t)),!e?.length&&t.length&&(this.mosaicRule.multidimensionalDefinition=t)}}_processVisibleRastersResponse(e,t){t=t||{};const i=e.value,{templateRRFunctionNames:r,showNoDataRecords:s,returnDomainValues:n,templateFields:o}=t,a=e.processedValues;let l=e.catalogItems?.features,u=e.properties?.Values?.map((e=>e.replaceAll(/ /gi,", ")))||[];const p=this.objectIdField||"ObjectId",c="string"==typeof i&&i.toLowerCase().includes("nodata"),m=[];if(i&&!l&&!c){const e={};e[p]=0,u=[i],l=[new y.A({geometry:this.fullExtent,attributes:e})],this.multidimensionalInfo&&"raster-dataset"===this.sourceType&&(0,te.eS)(this.rasterFields,e,t.effectiveMultidimensionalDefinition)}if(!l)return[];this._updateResponseFieldNames(l,o),c&&!s&&(l=[]);const{itemPixelValue:d,servicePixelValue:h}=te.F_,f=this.rasterFields.some((e=>e.name===d));for(let e=0;e<l.length;e++){const t=l[e];if(null!=i){const n=u[e],o=this.rasterFunction&&a&&a.length>0&&r&&r.length>0&&r.includes(this.rasterFunction.functionName)?a[r.indexOf(this.rasterFunction.functionName)]:i;if("nodata"===n.toLowerCase()&&!s)continue;f&&(t.attributes[d]=n),t.attributes[h]=o,this._updateFeatureWithMagDirValues(t,n);const l=this.fields&&this.fields.length>0;let p=this.rasterFunction&&null!=this.serviceRasterInfo.attributeTable?l?n:i:o;this.rasterFunction||(p=l?n:i),this._updateFeatureWithRasterAttributeTableValues(t,p)}if(t.sourceLayer=t.layer=this,n&&this._updateFeatureWithDomainValues(t),r&&a&&r.length===a.length)for(let e=0;e<r.length;e++){const i=`${te.F_.servicePixelValue}.${r[e]}`;t.attributes[i]=a[e]}m.push(l[e])}return m}_processMultidimensionalIntersection(e,t,i){const{multidimensionalSubset:r}=this;if(!r)return{isOutSide:!1,timeExtent:t,mosaicRule:i=this._combineMosaicRuleWithTimeExtent(i,t)};if(r){const{isOutside:i,intersection:s}=(0,se.Rp)(r,{geometry:e,timeExtent:t});if(i)return{isOutSide:!0,timeExtent:null,mosaicRule:null};null!=s?.timeExtent&&(t=s.timeExtent)}if(i=this._combineMosaicRuleWithTimeExtent(i,t),i?.multidimensionalDefinition){const{isOutside:e}=(0,se.Rp)(r,{multidimensionalDefinition:i.multidimensionalDefinition});if(e)return{isOutSide:!0,timeExtent:null,mosaicRule:null}}return{isOutSide:!1,timeExtent:t,mosaicRule:i}}_updateFeatureWithRasterAttributeTableValues(e,t){const i=this.rasterInfo.attributeTable||this.serviceRasterInfo.attributeTable;if(null==i)return;const{features:r,fields:s}=i,n=s.map((e=>e.name)).find((e=>"value"===e.toLowerCase()));if(!n)return;const o=r.filter((e=>e.attributes[n]===(null!=t?parseInt(t,10):null)));o&&o[0]&&s.forEach((t=>{const i=te.ER+t.name;e.attributes[i]=o[0].attributes[t.name]}))}_updateFeatureWithMagDirValues(e,t){if(!this._isVectorDataSet())return;const i=t.split(/,\s*/).map((e=>parseFloat(e))),r=i.map((e=>[e])),s=i.map((e=>({minValue:e,maxValue:e,noDataValue:null}))),n=new ee.A({height:1,width:1,pixelType:"f32",pixels:r,statistics:s});null!=this.pixelFilter&&this.pixelFilter({pixelBlock:n,extent:new _.A(0,0,0,0,this.spatialReference)});const o="esriImageServiceDataTypeVector-MagDir"===this.serviceDataType?[n.pixels[0][0],n.pixels[1][0]]:(0,oe.Lu)([n.pixels[0][0],n.pixels[1][0]]);e.attributes[te.F_.magnitude]=o[0],e.attributes[te.F_.direction]=o[1]}_updateFeatureWithDomainValues(e){const t=this.fields&&this.fields.filter((e=>e.domain&&"coded-value"===e.domain.type));null!=t&&t.forEach((t=>{const i=e.attributes[t.name];if(null!=i){const r=t.domain.codedValues.find((e=>e.code===i));r&&(e.attributes[t.name]=r.name)}}))}_updateResponseFieldNames(e,t){if(!t||t.length<1)return;const i=this.fieldsIndex;null!=i&&e.forEach((e=>{if(e?.attributes)for(const r of t){const t=i.get(r)?.name;t&&t!==r&&(e.attributes[r]=e.attributes[t],delete e.attributes[t])}}))}_getRenderingRuleString(e){if(e){let t=e.toJSON();return t=t.rasterFunctionDefinition??t,(t.thumbnail||t.thumbnailEx)&&(t.thumbnail=t.thumbnailEx=null),JSON.stringify(t)}return null}_hasRasterFunction(e){return null!=e?.functionName&&"none"!==e.functionName.toLowerCase()}_updateRenderingRulesFunctionName(e,t){if(!e||e.length<1)return;if("Raw"===e)return e.replace("Raw","None");const i=e.toLowerCase().replaceAll(/ /gi,"_");return t.has(i)?t.get(i):e}_isRFTJson(e){return e?.name&&e.arguments&&e.function&&e.hasOwnProperty("functionType")}_isVectorDataSet(){return"esriImageServiceDataTypeVector-UV"===this.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===this.serviceDataType}_applyMosaicAndRenderingRules(e){const{raster:t,mosaicRule:i,rasterFunction:r}=this;r&&null==e.rasterFunction&&(e.rasterFunction=r),i&&null==e.mosaicRule&&(e.mosaicRule=i),t&&null==e.raster&&(e.raster=t)}_applyMosaicRule(e){const{raster:t,mosaicRule:i}=this;i&&null==e.mosaicRule&&(e.mosaicRule=i),t&&null==e.raster&&(e.raster=t)}_readCapabilities(e){const t=e.capabilities?e.capabilities.toLowerCase().split(",").map((e=>e.trim())):["image","catalog"],{currentVersion:i,advancedQueryCapabilities:r,maxRecordCount:s}=e,n=t.includes("image"),o="esriImageServiceDataTypeElevation"===e.serviceDataType,a=!(!e.spatialReference&&!e.extent?.spatialReference),l=t.includes("edit"),u=t.includes("mensuration")&&a,p=null==e.mensurationCapabilities?[]:e.mensurationCapabilities.toLowerCase().split(",").map((e=>e.trim())),c=u&&p.includes("basic"),m=this._isMosaicDataset(e)&&t.includes("catalog"),d=t.includes("download"),y=i>=10.7&&o||i>=11.4&&(o||u&&p.includes("3d"));return{data:{supportsAttachment:!1},operations:{supportsComputeHistograms:n,supportsExportImage:n,supportsIdentify:n,supportsImageToMap:i>=11.2&&m,supportsImageToMapMultiray:i>=11.2&&m,supportsMapToImage:i>=11.2&&m,supportsFindImages:i>=11.2&&m,supportsGetImageUrl:i>=11.3&&d,supportsMeasure:u,supportsMeasureFromImage:i>=11.2,supportsDownload:d,supportsQuery:m&&e.fields&&e.fields.length>0,supportsGetSamples:i>=10.2&&n,supportsProject:i>=10.3&&n,supportsComputeStatisticsHistograms:i>=10.4&&n,supportsQueryBoundary:i>=10.6&&n,supportsCalculateVolume:y,supportsComputePixelLocation:i>=10.7&&m,supportsComputeAngles:i>=10.91,supportsQueryGPSInfo:i>=11.2&&m,supportsAdd:l,supportsDelete:l,supportsEditing:l,supportsUpdate:l,supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsChangeTracking:!1,supportsQueryAttachments:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsExceedsLimitStatistics:!1,supportsQueryAnalytics:!1,supportsQueryBins:!1,supportsQueryTopFeatures:!1,supportsAsyncConvert3D:!1},query:{maxRecordCount:s,maxRecordCountFactor:void 0,supportsStatistics:!!r?.supportsStatistics,supportsOrderBy:!!r?.supportsOrderBy,supportsDistinct:!!r?.supportsDistinct,supportsPagination:!!r?.supportsPagination,supportsStandardizedQueriesOnly:!!r?.useStandardizedQueries,supportsPercentileStatistics:!!r?.supportsPercentileStatistics,supportsCentroid:!!r?.supportsReturningGeometryCentroid,supportsCurrentUser:!1,supportsDistance:!!r?.supportsQueryWithDistance,supportsExtent:!!r?.supportsReturningQueryExtent,supportsGeometryProperties:!!r?.supportsReturningGeometryProperties,supportsHavingClause:!!r?.supportsHavingClause,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsReturnMesh:!1,supportsMaxRecordCountFactor:!1,supportsSqlExpression:!1,supportsTopFeaturesQuery:!1,supportsQueryByAnonymous:!1,supportsQueryByOthers:!1,supportsHistoricMoment:!1,supportsFormatPBF:!1,supportsDisjointSpatialRelationship:!1,supportsCacheHint:!1,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsDefaultSpatialReference:!!r?.supportsDefaultSR,supportsFullTextSearch:!1,supportsCompactGeometry:!1,standardMaxRecordCount:void 0,tileMaxRecordCount:void 0,supportsTrueCurve:!1},mensuration:{supportsDistanceAndAngle:c,supportsAreaAndPerimeter:c,supportsPointOrCentroid:c,supportsHeightFromBaseAndTop:u&&p.includes("base-top height"),supportsHeightFromBaseAndTopShadow:u&&p.includes("base-top shadow height"),supportsHeightFromTopAndTopShadow:u&&p.includes("top-top shadow height"),supports3D:u&&p.includes("3d")}}}};function i(e){return e?.path??""}return(0,r._)([(0,u.MZ)({clonable:!1})],t.prototype,"_functionRasterInfos",void 0),(0,r._)([(0,u.MZ)({clonable:!1})],t.prototype,"_rasterJobHandler",void 0),(0,r._)([(0,u.MZ)({clonable:!1})],t.prototype,"_cachedRendererJson",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"_serviceSupportsMosaicRule",void 0),(0,r._)([(0,R.w)("_serviceSupportsMosaicRule",["currentVersion","fields"])],t.prototype,"readServiceSupportsMosaicRule",null),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"_rasterFunctionNamesIndex",null),(0,r._)([(0,u.MZ)()],t.prototype,"adjustAspectRatio",void 0),(0,r._)([(0,u.MZ)({type:[v.jz],json:{write:!0}})],t.prototype,"bandIds",void 0),(0,r._)([(0,R.w)("bandIds")],t.prototype,"readBandIds",null),(0,r._)([(0,u.MZ)({readOnly:!0,json:{read:!1}})],t.prototype,"capabilities",void 0),(0,r._)([(0,R.w)("service","capabilities",["capabilities","currentVersion","serviceDataType"])],t.prototype,"readCapabilities",null),(0,r._)([(0,u.MZ)({type:Number})],t.prototype,"compressionQuality",void 0),(0,r._)([(0,m.K)("compressionQuality")],t.prototype,"writeCompressionQuality",null),(0,r._)([(0,u.MZ)({type:Number})],t.prototype,"compressionTolerance",void 0),(0,r._)([(0,m.K)("compressionTolerance")],t.prototype,"writeCompressionTolerance",null),(0,r._)([(0,u.MZ)({json:{read:{source:"copyrightText"}}})],t.prototype,"copyright",void 0),(0,r._)([(0,u.MZ)({readOnly:!0,dependsOn:["_serviceSupportsMosaicRule"]})],t.prototype,"defaultMosaicRule",void 0),(0,r._)([(0,R.w)("defaultMosaicRule",["defaultMosaicMethod"])],t.prototype,"readDefaultMosaicRule",null),(0,r._)([(0,u.MZ)({type:String,json:{name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],t.prototype,"definitionExpression",void 0),(0,r._)([(0,u.MZ)({readOnly:!0,constructOnly:!0})],t.prototype,"exportImageServiceParameters",void 0),(0,r._)([(0,u.MZ)()],t.prototype,"rasterInfo",void 0),(0,r._)([(0,u.MZ)({readOnly:!0,type:[K.A]})],t.prototype,"fields",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"fieldsIndex",null),(0,r._)([(0,u.MZ)({type:["png","png8","png24","png32","jpg","bmp","gif","jpgpng","lerc","tiff","bip","bsq"],json:{write:!0}})],t.prototype,"format",null),(0,r._)([(0,R.w)("service","format",["serviceDataType"])],t.prototype,"readFormat",null),(0,r._)([(0,u.MZ)({type:_.A})],t.prototype,"fullExtent",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"hasMultidimensions",void 0),(0,r._)([(0,u.MZ)({json:{read:{source:"maxImageHeight"}}})],t.prototype,"imageMaxHeight",void 0),(0,r._)([(0,u.MZ)({json:{read:{source:"maxImageWidth"}}})],t.prototype,"imageMaxWidth",void 0),(0,r._)([(0,u.MZ)({type:String,json:{type:k.SZ.jsonValues,read:k.SZ.read,write:k.SZ.write}})],t.prototype,"interpolation",void 0),(0,r._)([(0,u.MZ)()],t.prototype,"minScale",void 0),(0,r._)([(0,R.w)("service","minScale")],t.prototype,"readMinScale",null),(0,r._)([(0,u.MZ)()],t.prototype,"maxScale",void 0),(0,r._)([(0,R.w)("service","maxScale")],t.prototype,"readMaxScale",null),(0,r._)([(0,u.MZ)({type:H.A})],t.prototype,"mosaicRule",null),(0,r._)([(0,R.w)("mosaicRule",["mosaicRule","defaultMosaicMethod"])],t.prototype,"readMosaicRule",null),(0,r._)([(0,m.K)("mosaicRule")],t.prototype,"writeMosaicRule",null),(0,r._)([(0,u.MZ)()],t.prototype,"multidimensionalInfo",void 0),(0,r._)([(0,u.MZ)({type:Y.A,json:{write:!0}})],t.prototype,"multidimensionalSubset",void 0),(0,r._)([(0,u.MZ)({json:{type:v.jz}})],t.prototype,"noData",void 0),(0,r._)([(0,m.K)("noData")],t.prototype,"writeNoData",null),(0,r._)([(0,u.MZ)({type:String,json:{type:k.hm.jsonValues,read:k.hm.read,write:k.hm.write}})],t.prototype,"noDataInterpretation",void 0),(0,r._)([(0,u.MZ)({type:String,readOnly:!0,json:{read:{source:["fields"]}}})],t.prototype,"objectIdField",void 0),(0,r._)([(0,R.w)("objectIdField")],t.prototype,"readObjectIdField",null),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"geometryType",void 0),(0,r._)([(0,u.MZ)({})],t.prototype,"typeIdField",void 0),(0,r._)([(0,u.MZ)({})],t.prototype,"types",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"parsedUrl",null),(0,r._)([(0,u.MZ)({type:Function})],t.prototype,"pixelFilter",void 0),(0,r._)([(0,u.MZ)()],t.prototype,"raster",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"sourceType",void 0),(0,r._)([(0,R.w)("sourceType",["serviceSourceType","fields"])],t.prototype,"readSourceType",null),(0,r._)([(0,u.MZ)()],t.prototype,"viewId",void 0),(0,r._)([(0,u.MZ)()],t.prototype,"renderer",null),(0,r._)([(0,u.MZ)({types:ue.uy,json:{name:"layerDefinition.drawingInfo.renderer",origins:{"web-scene":{types:ue.Gj,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type&&"flow"!==e.type})}}}}})],t.prototype,"internalRenderer",null),(0,r._)([(0,R.w)("internalRenderer")],t.prototype,"readRenderer",null),(0,r._)([(0,m.K)("internalRenderer")],t.prototype,"writeRenderer",null),(0,r._)([(0,u.MZ)({clonable:!1})],t.prototype,"symbolizer",void 0),(0,r._)([(0,u.MZ)(A.ke)],t.prototype,"opacity",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"rasterFields",null),(0,r._)([(0,u.MZ)({constructOnly:!0})],t.prototype,"rasterFunctionInfos",void 0),(0,r._)([(0,u.MZ)({type:F.A,json:{name:"renderingRule"}})],t.prototype,"rasterFunction",null),(0,r._)([(0,R.w)("rasterFunction",["renderingRule","rasterFunctionInfos"])],t.prototype,"readRasterFunction",null),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"serviceDataType",void 0),(0,r._)([(0,u.MZ)({readOnly:!0,type:S.A})],t.prototype,"spatialReference",void 0),(0,r._)([(0,R.w)("spatialReference",["spatialReference","extent"])],t.prototype,"readSpatialReference",null),(0,r._)([(0,u.MZ)({type:k.e8.apiValues,json:{read:k.e8.read,type:k.e8.jsonValues}})],t.prototype,"pixelType",void 0),(0,r._)([(0,m.K)("pixelType")],t.prototype,"writePixelType",null),(0,r._)([(0,u.MZ)({constructOnly:!0,type:ie.A})],t.prototype,"serviceRasterInfo",void 0),(0,r._)([(0,u.MZ)()],t.prototype,"sourceJSON",void 0),(0,r._)([(0,u.MZ)(A.OZ)],t.prototype,"url",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],t.prototype,"version",void 0),(0,r._)([(0,R.w)("version",["currentVersion","fields","timeInfo"])],t.prototype,"readVersion",null),t=(0,r._)([(0,c.$)("esri.layers.mixins.ArcGISImageService")],t),t};var Ii=i(18768),Fi=i(63074),Di=i(69208),ji=i(16131),Ti=i(8303),Zi=i(56551),Pi=i(54310),Ni=i(25036),Ci=i(82935),Oi=i(91908),Vi=i(30291),Ji=i(92935);let qi=class extends((0,Fi.dM)((0,Ci.e)((0,Ni.j)((0,ji.q)((0,Ti.A)((0,Zi.H)(xi((0,Pi.J)((0,Di.d)((0,Ii.b)((0,a.P)(n.A.ClonableMixin(d.A))))))))))))){constructor(...e){super(...e),this.isReference=null,this.operationalLayerType="ArcGISImageServiceLayer",this.popupEnabled=!0,this.popupTemplate=null,this.type="imagery",this._debouncedSaveOperations=(0,l.sg)((async(e,t,r)=>{const{save:s,saveAs:n}=await i.e(9838).then(i.bind(i,59838));switch(e){case Ji.X.SAVE:return s(this,t);case Ji.X.SAVE_AS:return n(this,r,t)}}))}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"]},e).catch(l.QP).then((()=>this._fetchService(t)))),Promise.resolve(this)}get legendEnabled(){return!this._isPreviewLayer&&(this._get("legendEnabled")??!0)}set legendEnabled(e){this._set("legendEnabled",e)}get listMode(){return this._isPreviewLayer?"hide":this._get("listMode")}set listMode(e){this._set("listMode",e)}writeOperationalLayerType(e,t,i){const r="vector-field"===this.renderer?.type;t[i]=r?"ArcGISImageServiceVectorLayer":"ArcGISImageServiceLayer"}get defaultPopupTemplate(){return this.createPopupTemplate()}get _isPreviewLayer(){return!(!this.raster||!this.url?.toLowerCase().includes("/rasterrendering/imageserver"))}createPopupTemplate(e){const{rasterFields:t}=this,i=new Set,r=te.F_.itemPixelValue.toLowerCase(),s="raster-dataset"===this.sourceType,n=te.Oo.toLowerCase(),o=`${te.F_.servicePixelValue.toLowerCase()}.`;for(const e of t){const t=e.name.toLowerCase();t===r||t.startsWith(o)||s&&t.startsWith(n)||i.add(e.name)}const a=(0,Vi.tn)({fields:t,title:this.title},{...e,visibleFieldNames:i}),{rasterInfo:l}=this;return a?.fieldInfos&&l&&(0,te.h4)(a.fieldInfos,l),a}queryFeatures(e,t){return this.queryRasters(e,t).then((e=>{if(e?.features)for(const t of e.features)t.layer=t.sourceLayer=this;return e}))}queryFeatureCount(e,t){return this.queryRasterCount(e,t)}redraw(){this.emit("redraw")}async save(e){return this._debouncedSaveOperations(Ji.X.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(Ji.X.SAVE_AS,t,e)}serviceSupportsSpatialReference(e){return(0,Oi.D)(this,e)}write(e,t){if(!this._isPreviewLayer)return super.write(e,t);if(t?.messages){const e=`${t.origin}/${t.layerContainerType||"operational-layers"}`;t.messages.push(new o.A("layer:unsupported",`Imagery preview layer (${this.title}, ${this.id}) of type '${this.declaredClass}' are not supported in the context of '${e}'`,{layer:this}))}return null}};(0,r._)([(0,u.MZ)(A.fV)],qi.prototype,"legendEnabled",null),(0,r._)([(0,u.MZ)({type:["show","hide"]})],qi.prototype,"listMode",null),(0,r._)([(0,u.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],qi.prototype,"isReference",void 0),(0,r._)([(0,u.MZ)({type:["ArcGISImageServiceLayer"],json:{origins:{"web-map":{type:["ArcGISImageServiceLayer","ArcGISImageServiceVectorLayer"],read:!1,write:{target:"layerType",ignoreOrigin:!0}}}}})],qi.prototype,"operationalLayerType",void 0),(0,r._)([(0,m.K)("web-map","operationalLayerType")],qi.prototype,"writeOperationalLayerType",null),(0,r._)([(0,u.MZ)(A.M6)],qi.prototype,"popupEnabled",void 0),(0,r._)([(0,u.MZ)({type:s.A,json:{read:{source:"popupInfo"},write:{target:"popupInfo"}}})],qi.prototype,"popupTemplate",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],qi.prototype,"defaultPopupTemplate",null),(0,r._)([(0,u.MZ)({readOnly:!0,json:{read:!1}})],qi.prototype,"type",void 0),(0,r._)([(0,u.MZ)({readOnly:!0})],qi.prototype,"_isPreviewLayer",null),qi=(0,r._)([(0,c.$)("esri.layers.ImageryLayer")],qi);const Ei=qi},18768:(e,t,i)=>{i.d(t,{b:()=>l});var r=i(90237),s=i(53966),n=i(10107),o=(i(44208),i(87811),i(40608)),a=i(60694);const l=e=>{let t=class extends e{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,a.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,a.Jf)(e,s.A.getLogger(this)))}};return(0,r._)([(0,n.MZ)()],t.prototype,"title",null),(0,r._)([(0,n.MZ)({type:String})],t.prototype,"url",null),t=(0,r._)([(0,o.$)("esri.layers.mixins.ArcGISService")],t),t}},56551:(e,t,i)=>{i.d(t,{H:()=>d});var r=i(90237),s=i(10107),n=(i(44208),i(53966),i(87811),i(40608)),o=i(69540),a=i(25482),l=i(56507),u=i(93223),p=i(94359);let c=class extends(o.A.ClonableMixin(a.A)){constructor(e){super(e),this.name=void 0,this.method="none",this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};(0,r._)([(0,s.MZ)({type:String,json:{write:{isRequired:!0}}})],c.prototype,"name",void 0),(0,r._)([(0,s.MZ)({type:["raster-function-template","variable","none"],json:{write:{isRequired:!0}}}),(0,u.e)({rasterFunctionTemplate:"raster-function-template",variable:"variable",none:"none"})],c.prototype,"method",void 0),(0,r._)([(0,s.MZ)({type:String,json:{write:{isRequired:!0}}})],c.prototype,"value",void 0),(0,r._)([(0,s.MZ)({type:[l.jz],json:{write:{isRequired:!0}}})],c.prototype,"bandIds",void 0),(0,r._)([(0,s.MZ)({types:p.uy,json:{write:!0,origins:{"web-scene":{types:p.Gj,write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type&&"flow"!==e.type})}}}}})],c.prototype,"renderer",void 0),c=(0,r._)([(0,n.$)("esri.renderers.support.RasterPresetRenderer")],c);const m=c,d=e=>{let t=class extends e{constructor(){super(...arguments),this.activePresetRendererName=null,this.presetRenderers=null}};return(0,r._)([(0,s.MZ)({type:String,json:{name:"layerDefinition.activePresetRendererName",write:{allowNull:!0}}})],t.prototype,"activePresetRendererName",void 0),(0,r._)([(0,s.MZ)({type:[m],json:{name:"layerDefinition.presetRenderers",write:!0}})],t.prototype,"presetRenderers",void 0),t=(0,r._)([(0,n.$)("esri.layers.mixins.RasterPresetRendererMixin")],t),t}},33446:(e,t,i)=>{i.d(t,{C:()=>o,m:()=>n});var r=i(49186),s=i(74887);async function n(e,t,i){let n;try{n=await createImageBitmap(e)}catch(e){throw new r.A("request:server",`Unable to load ${t}`,{url:t,error:e})}return(0,s.Te)(i),n}async function o(e,t,i,n,o){let a;try{a=await createImageBitmap(e)}catch(e){throw new r.A("request:server",`Unable to load tile ${t}/${i}/${n}`,{error:e,level:t,row:i,col:n})}return(0,s.Te)(o),a}},91908:(e,t,i)=>{i.d(t,{D:()=>n});var r=i(60694);const s=[];function n(e,t){if((0,r.Wo)(e.url??""))return!0;const{wkid:i}=t;for(const t of s){if((e.version??0)>=t[0])return!0;if("function"==typeof t[1]&&(t[1]=t[1]()),t[1].has(i))return!1}return!0}s.push([10.91,()=>{const e=new Set([9709,9716,9741,9761,9766]);for(let t=9712;t<=9713;t++)e.add(t);for(let t=9748;t<=9749;t++)e.add(t);for(let t=20904;t<=20932;t++)e.add(t);for(let t=21004;t<=21032;t++)e.add(t);for(let t=21207;t<=21264;t++)e.add(t);for(let t=21307;t<=21364;t++)e.add(t);for(let t=23301;t<=23333;t++)e.add(t);for(let t=102759;t<=102760;t++)e.add(t);for(let t=102934;t<=102955;t++)e.add(t);return e}]),s.push([10.9,()=>{const e=new Set([9300,9354,9364,9367,9373,9377,9387,9456,9473,9498,9678,9680,29874,103599,103872,104028]);for(let t=9356;t<=9360;t++)e.add(t);for(let t=9404;t<=9407;t++)e.add(t);for(let t=9476;t<=9482;t++)e.add(t);for(let t=9487;t<=9494;t++)e.add(t);for(let t=9697;t<=9699;t++)e.add(t);return e}]),s.push([10.81,()=>{const e=new Set([9265,9333,103598,103699]);for(let t=9248;t<=9254;t++)e.add(t);for(let t=9271;t<=9273;t++)e.add(t);for(let t=9284;t<=9285;t++)e.add(t);for(let t=21453;t<=21463;t++)e.add(t);return e}]),s.push([10.8,()=>{const e=new Set([8088,8395,8428,8433,8531,8687,8692,8694,8699,8900,9003,9006,9009,9012,9017,9191]);for(let t=8035;t<=8036;t++)e.add(t);for(let t=8455;t<=8456;t++)e.add(t);for(let t=8518;t<=8529;t++)e.add(t);for(let t=8533;t<=8536;t++)e.add(t);for(let t=8538;t<=8540;t++)e.add(t);for(let t=8677;t<=8679;t++)e.add(t);for(let t=8902;t<=8903;t++)e.add(t);for(let t=8907;t<=8910;t++)e.add(t);for(let t=8949;t<=8951;t++)e.add(t);for(let t=8972;t<=8987;t++)e.add(t);for(let t=9039;t<=9040;t++)e.add(t);for(let t=9068;t<=9069;t++)e.add(t);for(let t=9140;t<=9141;t++)e.add(t);for(let t=9148;t<=9150;t++)e.add(t);for(let t=9153;t<=9159;t++)e.add(t);for(let t=9205;t<=9218;t++)e.add(t);for(let t=9221;t<=9222;t++)e.add(t);for(let t=54098;t<=54101;t++)e.add(t);return e}]),s.push([10.71,()=>{const e=new Set([6316]);for(let t=8351;t<=8353;t++)e.add(t);for(let t=9294;t<=9297;t++)e.add(t);for(let t=22619;t<=22621;t++)e.add(t);for(let t=103586;t<=103594;t++)e.add(t);return e}])},82371:(e,t,i)=>{i.d(t,{E9:()=>y,Tw:()=>m,X6:()=>d});var r=i(78888),s=i(5443),n=i(86738),o=i(16930),a=i(87186),l=i(20223),u=i(2272),p=i(22671);async function c(e,t,i){const c=(0,u.Dl)(e),{rasterFunction:m,sourceJSON:d}=t||{},y=m?JSON.stringify(m.rasterFunctionDefinition||m):null,h=(0,u.lF)({...c.query,renderingRule:y,f:"json"}),f=(0,u.jV)(h,i);e=c.path;const g=d||await(0,r.A)(e,f).then((e=>e.data)),w=g.hasRasterAttributeTable?(0,r.A)(`${e}/rasterAttributeTable`,f):null,v=g.hasColormap?(0,r.A)(`${e}/colormap`,f):null,R=g.hasHistograms?(0,r.A)(`${e}/histograms`,f):null,_=g.currentVersion>=10.3?(0,r.A)(`${e}/keyProperties`,f):null,b=g.hasMultidimensions?(0,r.A)(`${e}/multidimensionalInfo`,f):null,S=await Promise.allSettled([w,v,R,_,b]);let M=null;if(g.minValues&&g.minValues.length===g.bandCount){M=[];for(let e=0;e<g.minValues.length;e++)M.push({min:g.minValues[e],max:g.maxValues[e],avg:g.meanValues[e],stddev:g.stdvValues[e]})}const A=s.A.fromJSON(g.extent),x=Math.ceil(A.width/g.pixelSizeX-.1),I=Math.ceil(A.height/g.pixelSizeY-.1),F=o.A.fromJSON(g.spatialReference||g.extent.spatialReference),D="fulfilled"===S[0].status?S[0].value?.data:null,j=D?.features?.length?p.A.fromJSON(D):null,T="fulfilled"===S[1].status?S[1].value?.data.colormap:null,Z=T?.length?T:null,P="fulfilled"===S[2].status?S[2].value?.data.histograms:null,N=P?.[0]?.counts?.length?P:null,C="fulfilled"===S[3].status?S[3].value?.data??{}:{},O="fulfilled"===S[4].status?S[4].value?.data.multidimensionalInfo:null,V=O?.variables?.length?O:null;V&&V.variables.forEach((e=>{e.statistics?.length&&e.statistics.forEach((e=>{e.avg=e.mean,e.stddev=e.standardDeviation})),e.dimensions?.forEach((e=>{"StdTime"!==e.name||e.recurring||e.unit||(e.unit="ISO8601")}))}));const{defaultVariable:J,serviceDataType:q}=g;J&&J!==C.DefaultVariable&&(C.DefaultVariable=J),q?.includes("esriImageServiceDataTypeVector")&&!q.includes(C.DataType)&&(C.DataType=q.replace("esriImageServiceDataType",""));let E=g.noDataValue;g.noDataValues?.length&&g.noDataValues.some((e=>e!==E))&&(E=g.noDataValues);const G=g.transposeInfo?new l.A({blockWidth:256,blockHeight:256,pyramidBlockWidth:256,pyramidBlockHeight:256,pyramidScalingFactor:2,compression:"lerc",origin:new n.A({x:g.extent.xmin,y:g.extent.ymax,spatialReference:F}),firstPyramidLevel:1,maximumPyramidLevel:Math.max(0,Math.round(Math.log(Math.max(x,I))/Math.LN2-8)),transposeInfo:g.transposeInfo}):void 0;return new a.A({width:x,height:I,bandCount:g.bandCount,extent:s.A.fromJSON(g.extent),spatialReference:F,pixelSize:new n.A({x:g.pixelSizeX,y:g.pixelSizeY,spatialReference:F}),pixelType:g.pixelType.toLowerCase(),statistics:M,attributeTable:j,colormap:Z,histograms:N,keyProperties:C,noDataValue:E,multidimensionalInfo:V,storageInfo:G})}function m(e,t,i){return c(e,{sourceJSON:t},i)}function d(e,t,i){return c(e,{rasterFunction:t},i)}function y(e,t){e.attributeTable||(t.hasRasterAttributeTable=!1),e.histograms||(t.hasHistograms=!1),e.colormap||(t.hasColormap=!1),e.multidimensionalInfo||(t.hasMultidimensions=!1)}},58501:(e,t,i)=>{i.d(t,{q:()=>s});var r=i(62815);function s(e,t,i){if(!i?.features||!i.hasZ)return;const s=(0,r.N)(i.geometryType,t,e.outSpatialReference);if(null!=s)for(const e of i.features)s(e.geometry)}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1162,3186],{85334:(e,t,r)=>{r.d(t,{$:()=>b,IB:()=>o,Iy:()=>I,N2:()=>g,RH:()=>v,ZD:()=>w});var n=r(68197),i=r(4576),s=r(4718);function o(e){return"r"in e&&"g"in e&&"b"in e}function a(e){return"h"in e&&"s"in e&&"v"in e}function l(e){return"l"in e&&"a"in e&&"b"in e}function u(e){return"l"in e&&"c"in e&&"h"in e}r(34727),r(87317),r(91829);const p=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],d=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]];function c(e,t){const r=[];let n,i;if(e[0].length!==t.length)throw new Error("dimensions do not match");const s=e.length,o=e[0].length;let a=0;for(n=0;n<s;n++){for(a=0,i=0;i<o;i++)a+=e[n][i]*t[i];r.push(a)}return r}function y(e){const t=[e.r/255,e.g/255,e.b/255].map((e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4)),r=c(p,t);return{x:100*r[0],y:100*r[1],z:100*r[2]}}function h(e){const t=c(d,[e.x/100,e.y/100,e.z/100]).map((e=>{const t=e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055;return Math.min(1,Math.max(t,0))}));return{r:Math.round(255*t[0]),g:Math.round(255*t[1]),b:Math.round(255*t[2])}}function f(e){const t=[e.x/95.047,e.y/100,e.z/108.883].map((e=>e>(6/29)**3?e**(1/3):1/3*(29/6)**2*e+4/29));return{l:116*t[1]-16,a:500*(t[0]-t[1]),b:200*(t[1]-t[2])}}function m(e){const t=e.l,r=[(t+16)/116+e.a/500,(t+16)/116,(t+16)/116-e.b/200].map((e=>e>6/29?e**3:3*(6/29)**2*(e-4/29)));return{x:95.047*r[0],y:100*r[1],z:108.883*r[2]}}function b(e){return o(e)?e:u(e)?function(e){return h(m(function(e){const t=e.l,r=e.c,n=e.h;return{l:t,a:r*Math.cos(n),b:r*Math.sin(n)}}(e)))}(e):l(e)?function(e){return h(m(e))}(e):function(e){return"x"in e&&"y"in e&&"z"in e}(e)?h(e):a(e)?function(e){const t=(e.h+360)%360/60,r=e.s/100,n=e.v/100*255,i=n*r,s=i*(1-Math.abs(t%2-1));let o;switch(Math.floor(t)){case 0:o={r:i,g:s,b:0};break;case 1:o={r:s,g:i,b:0};break;case 2:o={r:0,g:i,b:s};break;case 3:o={r:0,g:s,b:i};break;case 4:o={r:s,g:0,b:i};break;case 5:case 6:o={r:i,g:0,b:s};break;default:o={r:0,g:0,b:0}}return o.r=Math.round(o.r+n-i),o.g=Math.round(o.g+n-i),o.b=Math.round(o.b+n-i),o}(e):e}function g(e){return a(e)?e:function(e){const t=e.r,r=e.g,n=e.b,i=Math.max(t,r,n),s=i-Math.min(t,r,n);let o=i,a=0===s?0:i===t?(r-n)/s%6:i===r?(n-t)/s+2:(t-r)/s+4,l=0===s?0:s/o;return a<0&&(a+=6),a*=60,l*=100,o*=100/255,{h:a,s:l,v:o}}(b(e))}function w(e){return l(e)?e:function(e){return f(y(e))}(b(e))}function v(e){return u(e)?e:function(e){return function(e){const t=e.l,r=e.a,n=e.b,i=Math.sqrt(r*r+n*n);let s=Math.atan2(n,r);return s=s>0?s:s+2*Math.PI,{l:t,c:i,h:s}}(f(y(e)))}(b(e))}var M,_;function I(e,t,r={}){if(0===e.length||t<=0)return[];if(1===(e=e.map((e=>"string"==typeof e?new n.A(e):e))).length||1===t){const r=[],n=e[0];for(let e=0;e<t;e++)r.push(n.clone());return r}if(r.shuffle&&(e=(0,i.k4)((0,s.o8)(e),r.seed)),e.length>=t){const r=[],n=(e.length-1)/(t-1);for(let i=0;i<t;i++){const t=Math.round(i*n);r.push(e[t].clone())}return r}return function(e,t,r={}){const n=[],s=e.length-1,o=Math.ceil((t-e.length)/s);e:for(let i=0;i<s;i++){const s=e[i],a=e[i+1];for(let i=1;i<=o;i++){const l=i/(o+1);if(n.push(A(s,a,l,r)),n.length+e.length===t)break e}}return[...e.map((e=>e.clone())),...(0,i.k4)(n,r.seed??1)]}(e,t,r)}(_=M||(M={}))[_.Low=160]="Low",_[_.High=225]="High";const F=(e,t)=>{const r=Math.floor(10*t())-5;return Math.min(255,Math.max(0,e+r))};function A(e,t,r,s={}){const o=e.r,a=e.g,l=e.b,u=t.r,p=t.g,d=t.b,c=Math.round(o+(u-o)*r),y=Math.round(a+(p-a)*r),h=Math.round(l+(d-l)*r);if(!s.offset)return new n.A([c,y,h]);const f=(0,i.Mo)(s.seed);return new n.A([F(c,f),F(y,f),F(h,f)])}},81583:(e,t,r)=>{r.d(t,{L:()=>a,g:()=>o});var n=r(60999),i=r(5503),s=r(92474);async function o(e,t){return await e.load(),a(e,t)}async function a(e,t){const r=[],o=(...e)=>{for(const t of e)null!=t&&(Array.isArray(t)?o(...t):i.A.isCollection(t)?t.forEach((e=>o(e))):s.A.isLoadable(t)&&r.push(t))};t(o);let a=null;if(await(0,n.Tj)(r,(async e=>{const t=await(0,n.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1!==t.ok||a||(a=t)})),a)throw a.error;return e}},39516:(e,t,r)=>{let n;async function i(){return null==n&&(n=r.e(4123).then(r.bind(r,44123)).then((e=>new e.WhereClauseCache(500,500)))),n}async function s(e,t){const r=await i(),n=r.get(e,t);if(null==n)throw r.getError(e,t);return n}function o(e,t){return e||=null,t||=null,"1=1"===e?t??e:"1=1"===t?e??t:e&&t?`(${e}) AND (${t})`:e??t}function a(e,t){return e||=null,t||=null,"1=1"===e||"1=1"===t||e===t?"1=1"===e?e:t:e&&t?`(${e}) OR (${t})`:e??t}r.d(t,{GP:()=>s,IW:()=>a,mA:()=>o})},13069:(e,t,r)=>{r.d(t,{AG:()=>a,lk:()=>i,vD:()=>o,yS:()=>s});const n="randomUUID"in crypto;function i(){if(n)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function s(){return`{${i().toUpperCase()}}`}function o(){return`{${i()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},59929:(e,t,r)=>{r.r(t),r.d(t,{default:()=>Ee});var n=r(90237),i=r(69540),s=r(5503),o=r(49186),a=r(81583),l=r(92071),u=r(74887),p=r(36708),d=r(39516),c=r(84952),y=r(10107),h=(r(44208),r(53966)),f=(r(87811),r(36005)),m=r(40608),b=r(4146),g=r(52136),w=r(18768),v=r(63074),M=r(69208),_=r(6455),I=r(47685),F=r(87796),A=r(16131),x=r(8303),T=r(54310),S=r(25036),C=r(82935),k=r(60694),E=r(10873),Z=r(15426),j=r(17036),O=r(30524),P=r(85334),L=r(90360),$=r(86162),q=r(92438),R=r(96576),z=r(93618),N=r(62046),U=r(37531);const V={key:"type",base:q.A,errorContext:"renderer",typeMap:{simple:R.A,"unique-value":z.A,"class-breaks":$.A}},G=(0,L.C)({types:V}),D=["#ed5151","#149ece","#a7c636","#9e559c","#fc921f","#ffde3e","#f789d8","#b7814a","#3caf99","#6b6bd6","#b54779","#7f7f7f"];var H=r(13874),Q=r(4902),B=r(4718),K=r(92474),W=r(97768),X=r(93637),J=r(43937),Y=r(89317),ee=r(38141),te=r(16930),re=r(29005),ne=r(46499),ie=r(39383),se=r(17311),oe=r(61956),ae=r(30291),le=r(59868),ue=r(85360);const pe=(0,j.p)();let de=0;function ce(e,t){let r=e.json.write;return"object"!=typeof r&&(r=e.json.write={}),r.ignoreOrigin=!0,t?.spatialOnly&&(r.layerContainerTypes=Y.K),e}function ye(e){const t={write:{ignoreOrigin:!0}};return e?.name&&(t.name=e.name),"object"==typeof t.write&&(e?.spatialOnly&&(t.write.layerContainerTypes=Y.K),e?.target&&(t.write.target=e.target)),t}function he(e){switch(e){case"point":case"multipoint":return le.UK.clone();case"polyline":return le.A7.clone();case"polygon":case"multipatch":return le.Cx.clone();default:return null}}function fe(e,t){return null==e?null:t.subtypes?.find((t=>t.code===e))}function me(e,t){let r=null;switch(t.geometryType){case"esriGeometryPoint":case"esriGeometryMultipoint":r="point";break;case"esriGeometryPolyline":r="line";break;case"esriGeometryPolygon":case"esriGeometryMultiPatch":r="polygon";break;default:t.type,r=null}const n={},i=fe(e,t);if(null!=i){const{defaultValues:e}=i;for(const t in e)n[t]=e[t]}return n[t.subtypeField]=e,new re.A({name:"New Feature",drawingTool:r,prototype:{attributes:n}})}let be=class extends((0,l.P)(i.A.ClonableMixin(Q.A.IdentifiableMixin(K.A)))){constructor(e){super(e),this.attributeTableTemplate=null,this.charts=null,this.editingEnabled=!0,this.fieldOverrides=null,this.fieldsIndex=null,this.formTemplate=null,this.id=`${Date.now().toString(16)}-subtype-sublayer-${de++}`,this.type="subtype-sublayer",this.labelsVisible=!0,this.labelingInfo=null,this.layerType="ArcGISFeatureLayer",this.legendEnabled=!0,this.listMode="show",this.minScale=0,this.maxScale=0,this.opacity=1,this.parent=null,this.popupEnabled=!0,this.popupTemplate=null,this.subtypeCode=null,this.templates=null,this.title=null,this.visible=!0}load(e){return(0,O.yp)(this.renderer,this.fieldsIndex),Promise.resolve(this)}get _titleCreator(){const e=this._get("_titleCreator");return(0,W.pR)(e),new se.A({fieldsIndex:this.fieldsIndex,objectIdField:this.objectIdField,displayField:this.parent?.displayField??"",fields:this.fields,effectivePopupTemplate:this.popupTemplate??this.defaultPopupTemplate})}get capabilities(){return this.parent?.capabilities}get effectiveCapabilities(){return this.parent?.effectiveCapabilities}get effectiveEditingEnabled(){const{parent:e}=this;return e?e.effectiveEditingEnabled&&this.editingEnabled:this.editingEnabled}get elevationInfo(){return this.parent?.elevationInfo}get featureTitleFields(){return[...this._titleCreator.requiredFields]}writeFieldOverrides(e,t,r){const{fields:n,parent:i}=this;let s;if(n){s=[];let e=0;n.forEach((({name:t,alias:r,editable:n,visible:o})=>{if(!o)return;const a=i?.fields?.find((e=>e.name===t));if(!a)return;const l={name:t};let u=!1;r!==a.alias&&(l.alias=r,u=!0),n!==a.editable&&(l.editable=n,u=!0),s.push(l),u&&e++})),0===e&&s.length===n.length&&(s=null)}else s=(0,B.o8)(e);s?.length&&(0,X.sM)(r,s,t)}get fields(){const{parent:e,fieldOverrides:t,subtypeCode:r}=this,n=e?.fields;if(!e||!n?.length)return null;const{subtypes:i,subtypeField:s}=e,o=i?.find((e=>e.code===r)),a=o?.defaultValues,l=o?.domains,u=[];for(const e of n){const n=e.clone(),{name:i}=n,o=t?.find((e=>e.name===i));if(n.visible=!t?.length||!!o,o){const{alias:e,editable:t}=o;e&&(n.alias=e),!1===t&&(n.editable=!1)}const p=a?.[i]??null;n.defaultValue=i===s?r:p;const d=l?.[i]??null;n.domain=i===s?null:d?"inherited"===d.type?n.domain:d.clone():null,u.push(n)}return u}get floorInfo(){return this.parent?.floorInfo}get isTable(){return!!this.parent?.isTable}get geometryType(){return this.parent?.geometryType}get globalIdField(){return this.parent?this.parent.globalIdField:(h.A.getLogger(this).error(ve("globalIdField")),null)}get effectiveScaleRange(){const{minScale:e,maxScale:t}=this;return{minScale:e,maxScale:t}}get objectIdField(){return this.parent||h.A.getLogger(this).error(ve("objectIdField")),this.parent?.objectIdField}get defaultPopupTemplate(){return this.createPopupTemplate()}get relationships(){return this.parent?.relationships}set renderer(e){(0,O.yp)(e,this.fieldsIndex),this._override("renderer",e)}get renderer(){if(this._isOverridden("renderer"))return this._get("renderer");const{parent:e}=this;return e&&!e.isTable&&"mesh"!==e.geometryType?function(e){return new R.A({symbol:he(e)})}(e.geometryType):null}readRendererFromService(e,t,r){if("Table"===t.type)return null;const n=t.drawingInfo?.renderer,i=G(n,t,r);let s;const{subtypeCode:o}=this;if(null!=o&&function(e,t){return!(!t||"unique-value"!==e?.type||null==e.field||e.field.toLowerCase()!==t.toLowerCase()||e.field2||e.field3||e.valueExpression)}(i,t.subtypeField)){const e=i.uniqueValueInfos?.find((({value:e})=>(e="number"==typeof e?String(e):e)===String(o)));e&&(s=new R.A({symbol:e.symbol}))}else"simple"!==i?.type||i.visualVariables?.length||(s=i);return s}readRenderer(e,t,r){const n=t?.layerDefinition?.drawingInfo?.renderer;if(!n)return;const i=n.visualVariables?.some((e=>"rotationInfo"!==e.type));return i?void 0:G(n,t,r)||void 0}get spatialReference(){return this.parent?.spatialReference??te.A.WGS84}get subtypeField(){return this.parent?.subtypeField}readTemplatesFromService(e,t){return[me(this.subtypeCode,t)]}readTitleFromService(e,t){const r=fe(this.subtypeCode,t);return null!=r?r.name:null}get url(){return this.parent?.url}get userHasUpdateItemPrivileges(){return!!this.parent?.userHasUpdateItemPrivileges}async addAttachment(e,t){const{parent:r}=this;if(!r)throw ve("addAttachment");if(e.getAttribute(r.subtypeField)!==this.subtypeCode)throw new o.A("subtype-sublayer:addAttachment","The feature provided does not belong to this SubtypeSublayer");return r.addAttachment(e,t)}async updateAttachment(e,t,r){const{parent:n}=this;if(!n)throw ve("updateAttachment");if(e.getAttribute(n.subtypeField)!==this.subtypeCode)throw new o.A("subtype-sublayer:updateAttachment","The feature provided does not belong to this SubtypeSublayer");return n.updateAttachment(e,t,r)}async deleteAttachments(e,t){const{parent:r}=this;if(!r)throw ve("deleteAttachments");if(e.getAttribute(r.subtypeField)!==this.subtypeCode)throw new o.A("subtype-sublayer:deleteAttachments","The feature provided does not belong to this SubtypeSublayer");return r.deleteAttachments(e,t)}async applyEdits(e,t){if(!this.parent)throw ve("applyEdits");return this.parent.applyEdits(e,t)}createPopupTemplate(e){let t=this;const{parent:r,fields:n,title:i}=this;if(r){const{displayField:e,editFieldsInfo:s,objectIdField:o}=r;t={displayField:e,editFieldsInfo:s,fields:n,objectIdField:o,title:i}}return(0,ae.tn)(t,e)}createQuery(){if(!this.parent)throw ve("createQuery");const e=(0,Z.VZ)(this.parent),t=`${this.parent.subtypeField}=${this.subtypeCode}`;return e.where=(0,d.mA)(t,this.parent.definitionExpression),e}getFeatureTitle(e,t={timeZone:"system",fetchMissingFields:!1}){return this._titleCreator.getTitle(this,e,t)}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){if(!t?.excludeImpliedDomains&&this.parent){const t=(0,Z.pc)(this.parent,e);if(t)return t}return this._getLayerDomain(e)}async queryAttachments(e,t){const r=await this.load();if(!r.parent)throw ve("queryAttachments");const n=e.clone();return n.where=we(n.where,r.parent.subtypeField,r.subtypeCode),r.parent.queryAttachments(e,t)}async queryFeatureCount(e,t){const r=await this.load();if(!r.parent)throw ve("queryFeatureCount");return r.parent.queryFeatureCount(ge(r.parent,r,e),t)}async queryFeatures(e,t){const r=await this.load();if(!r.parent)throw ve("queryFeatures");return r.parent.queryFeatures(ge(r.parent,r,e),t)}async queryObjectIds(e,t){const r=await this.load();if(!r.parent)throw ve("queryObjectIds");return r.parent.queryObjectIds(ge(r.parent,r,e),t)}async queryRelatedFeatures(e,t){const r=await this.load();if(!r.parent)throw ve("queryRelatedFeatures");return r.parent.queryRelatedFeatures(e,t)}async queryRelatedFeaturesCount(e,t){const r=await this.load();if(!r.parent)throw ve("queryRelatedFeaturesCount");return r.parent.queryRelatedFeaturesCount(e,t)}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}};(0,n._)([(0,y.MZ)({clonable:!1,readOnly:!0})],be.prototype,"_titleCreator",null),(0,n._)([(0,y.MZ)({type:ue.A,json:ye({name:"attributeTableInfo"})})],be.prototype,"attributeTableTemplate",void 0),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"capabilities",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"effectiveCapabilities",null),(0,n._)([(0,y.MZ)({json:ye()})],be.prototype,"charts",void 0),(0,n._)([(0,y.MZ)({type:Boolean,nonNullable:!0,json:ye({name:"enableEditing"})})],be.prototype,"editingEnabled",void 0),(0,n._)([(0,y.MZ)({type:Boolean,readOnly:!0})],be.prototype,"effectiveEditingEnabled",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"elevationInfo",null),(0,n._)([(0,y.MZ)({clonable:!1,readOnly:!0})],be.prototype,"featureTitleFields",null),(0,n._)([(0,y.MZ)({json:{name:"layerDefinition.fieldOverrides",origins:{service:{read:!1}},write:{ignoreOrigin:!0,allowNull:!0}}})],be.prototype,"fieldOverrides",void 0),(0,n._)([(0,J.K)("fieldOverrides")],be.prototype,"writeFieldOverrides",null),(0,n._)([(0,y.MZ)({...pe.fields,readOnly:!0,json:{read:!1}})],be.prototype,"fields",null),(0,n._)([(0,y.MZ)(pe.fieldsIndex)],be.prototype,"fieldsIndex",void 0),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"floorInfo",null),(0,n._)([(0,y.MZ)({type:ee.A,json:ye({name:"formInfo"})})],be.prototype,"formTemplate",void 0),(0,n._)([(0,y.MZ)({type:String,clonable:!1,json:{origins:{service:{read:!1},"portal-item":{read:!1}},write:{ignoreOrigin:!0}}})],be.prototype,"id",void 0),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"isTable",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"geometryType",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"globalIdField",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"type",void 0),(0,n._)([(0,y.MZ)(ce((0,B.o8)(E.kF)))],be.prototype,"labelsVisible",void 0),(0,n._)([(0,y.MZ)({type:[ne.A],json:{name:"layerDefinition.drawingInfo.labelingInfo",origins:{service:{read:!1}},read:{reader:ie.w},write:{ignoreOrigin:!0,layerContainerTypes:Y.K}}})],be.prototype,"labelingInfo",void 0),(0,n._)([(0,y.MZ)({type:["ArcGISFeatureLayer"],readOnly:!0,json:{read:!1,write:{ignoreOrigin:!0,layerContainerTypes:Y.K}}})],be.prototype,"layerType",void 0),(0,n._)([(0,y.MZ)(ce((0,B.o8)(E.fV)))],be.prototype,"legendEnabled",void 0),(0,n._)([(0,y.MZ)({type:["show","hide"]})],be.prototype,"listMode",void 0),(0,n._)([(0,y.MZ)((()=>{const e=(0,B.o8)(E.hn);return e.json.origins.service.read=!1,ce(e,{spatialOnly:!0})})())],be.prototype,"minScale",void 0),(0,n._)([(0,y.MZ)((()=>{const e=(0,B.o8)(E.hG);return e.json.origins.service.read=!1,ce(e,{spatialOnly:!0})})())],be.prototype,"maxScale",void 0),(0,n._)([(0,y.MZ)({readOnly:!0})],be.prototype,"effectiveScaleRange",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"objectIdField",null),(0,n._)([(0,y.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0,json:ye({spatialOnly:!0})})],be.prototype,"opacity",void 0),(0,n._)([(0,y.MZ)({clonable:!1})],be.prototype,"parent",void 0),(0,n._)([(0,y.MZ)(ce((0,B.o8)(E.M6)))],be.prototype,"popupEnabled",void 0),(0,n._)([(0,y.MZ)({type:H.A,json:ye({name:"popupInfo"})})],be.prototype,"popupTemplate",void 0),(0,n._)([(0,y.MZ)({readOnly:!0})],be.prototype,"defaultPopupTemplate",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"relationships",null),(0,n._)([(0,y.MZ)({types:V,json:ye({target:"layerDefinition.drawingInfo.renderer",spatialOnly:!0})})],be.prototype,"renderer",null),(0,n._)([(0,f.w)("service","renderer",["drawingInfo.renderer","subtypeField","type"])],be.prototype,"readRendererFromService",null),(0,n._)([(0,f.w)("renderer",["layerDefinition.drawingInfo.renderer"])],be.prototype,"readRenderer",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"spatialReference",null),(0,n._)([(0,y.MZ)({type:Number,json:{origins:{service:{read:!1}},write:{ignoreOrigin:!0}}})],be.prototype,"subtypeCode",void 0),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"subtypeField",null),(0,n._)([(0,y.MZ)({type:[re.A],json:ye({name:"layerDefinition.templates"})})],be.prototype,"templates",void 0),(0,n._)([(0,f.w)("service","templates",["geometryType","subtypeField","subtypes","type"])],be.prototype,"readTemplatesFromService",null),(0,n._)([(0,y.MZ)({type:String,json:ye()})],be.prototype,"title",void 0),(0,n._)([(0,f.w)("service","title",["subtypes"])],be.prototype,"readTitleFromService",null),(0,n._)([(0,y.MZ)({readOnly:!0,json:{read:!1}})],be.prototype,"url",null),(0,n._)([(0,y.MZ)({readOnly:!0})],be.prototype,"userHasUpdateItemPrivileges",null),(0,n._)([(0,y.MZ)({type:Boolean,nonNullable:!0,json:ye({name:"visibility",spatialOnly:!0})})],be.prototype,"visible",void 0),be=(0,n._)([(0,m.$)("esri.layers.support.SubtypeSublayer")],be);const ge=(e,t,r)=>{if(!r)return t.createQuery();const n=oe.A.from(r);return n.where=we(n.where,e.subtypeField,t.subtypeCode),n},we=(e,t,r)=>{const n=new RegExp(`${t}\\s*=\\s*\\d+`),i=`${t}=${r}`,s=e??"";return n.test(s)?s.replace(n,i):(0,d.mA)(i,s)},ve=e=>new o.A(`This sublayer must have a parent SubtypeGroupLayer in order to use ${e}`),Me=be;var _e=r(96184),Ie=r(91908),Fe=r(54218),Ae=r(92935);const xe="SubtypeGroupLayer";function Te(e,t){return new o.A("layer:unsupported",`Layer (${e.title}, ${e.id}) of type '${e.declaredClass}' ${t}`,{layer:e})}function Se(e,t){const r=[];for(const n of e){const e=new Me;e.read(n,t),r.push(e)}return r}const Ce=(0,j.p)();let ke=class extends((0,F.j)((0,_.FJ)((0,I.w6)((0,v.dM)((0,C.e)((0,S.j)((0,T.J)((0,w.b)((0,A.q)((0,x.A)((0,l.P)((0,M.d)((0,g.p)(i.A.ClonableMixin(b.A))))))))))))))){constructor(...e){super(...e),this._sublayerLookup=new Map,this.fields=null,this.fieldsIndex=null,this.outFields=null,this.sublayers=new(s.A.ofType(Me)),this.useUniqueColorsForSublayers=!0,this.supportedSourceTypes=new Set(["Feature Layer","Table"]),this.timeInfo=null,this.title="Layer",this.type="subtype-group",this._debouncedSaveOperations=(0,u.sg)((async(e,t,n)=>{const{save:i,saveAs:s}=await r.e(5740).then(r.bind(r,33359));switch(e){case Ae.X.SAVE:return i(this,t);case Ae.X.SAVE_AS:return s(this,n,t)}})),this.addHandles((0,p.wB)((()=>this.sublayers),((e,t)=>this._handleSublayersChange(e,t)),p.OH))}destroy(){this.source?.destroy()}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Feature Service"]},e).catch(u.QP).then((async()=>{if(!this.url)throw new o.A("subtype-grouplayer:missing-url-or-source","SubtypeGroupLayer must be created with either a url or a portal item");if(null==this.layerId)throw new o.A("subtype-grouplayer:missing-layerid","layerId is required for a SubtypeGroupLayer created with url");return this._initLayerProperties(await this.createGraphicsSource(t))})).then((()=>(0,Z.VA)(this,"load",e)));return this.addResolvingPromise(r),Promise.resolve(this)}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("gdbVersion"),this.commitProperty("historicMoment"),this.commitProperty("returnZ"),this.commitProperty("capabilities"),this.commitProperty("returnM"),(this._get("createQueryVersion")??0)+1}get editingEnabled(){return this.loaded&&null!=this.capabilities&&this.capabilities.operations.supportsEditing&&this.userHasEditingPrivileges}get effectiveEditingEnabled(){return(0,Z.C$)(this)}get operationalLayerType(){return this.isTable?"SubtypeGroupTable":"SubtypeGroupLayer"}get parsedUrl(){const e=(0,c.An)(this.url);return null!=e&&null!=this.layerId&&(e.path=(0,c.fj)(e.path,this.layerId.toString())),e}set source(e){this._get("source")!==e&&this._set("source",e)}readTitleFromService(e,{name:t}){return this.url?(0,k.yG)(this.url,t):t}async addAttachment(e,t){const r=await(0,Z.Xl)(this,e,t,xe);return this.lastEditsEventDate=new Date,r}async updateAttachment(e,t,r){const n=await(0,Z.bt)(this,e,t,r,xe);return this.lastEditsEventDate=new Date,n}async applyEdits(e,t){return(0,Z.ct)(this,e,t)}on(e,t){return super.on(e,t)}async createGraphicsSource(e){const{default:t}=await(0,u.qr)(Promise.all([r.e(364),r.e(8628),r.e(2593),r.e(9062)]).then(r.bind(r,72593)),e);return new t({layer:this,supportedSourceTypes:this.supportedSourceTypes}).load({signal:e})}createQuery(){const e=(0,Z.VZ)(this),t=this.sublayers.map((e=>e.subtypeCode));return e.where=(0,d.mA)(`${this.subtypeField} IN (${t.join(",")})`,this.definitionExpression),e}async deleteAttachments(e,t){const r=await(0,Z.mm)(this,e,t,xe);return this.lastEditsEventDate=new Date,r}async fetchRecomputedExtents(e){return(0,Z.WP)(this,e,xe)}findSublayerForFeature(e){const t=this.fieldsIndex.get(this.subtypeField),r=e.attributes[t.name];return this.findSublayerForSubtypeCode(r)}findSublayerForSubtypeCode(e){return this._sublayerLookup.get(e)}getFieldDomain(e,t){if(!t?.excludeImpliedDomains){const t=(0,Z.pc)(this,e);if(t)return t}const r=(0,Z.Nv)(this,t?.feature);if(r){const t=r.domains?.[e];return"inherited"===t?.type?this._getLayerDomain(e):t}return this._getLayerDomain(e)}loadAll(){return(0,a.g)(this,(e=>{e(this.sublayers)}))}async queryAttachments(e,t){return(0,Z.lV)(this,e,t,xe)}async queryFeatures(e,t){const r=await this.load(),n=oe.A.from(e)??r.createQuery(),i=n.outFields??[];i.includes(this.subtypeField)||(i.push(this.subtypeField),n.outFields=i);const s=await r.source.queryFeatures(n,t);if(s?.features)for(const e of s.features)e.layer=e.sourceLayer=this.findSublayerForFeature(e);return s}async queryObjectIds(e,t){return(await(0,Z.sg)(this,e,t,xe)).filter(Fe.Et)}async queryFeatureCount(e,t){return(0,Z.Ye)(this,e,t,xe)}async queryExtent(e,t){return(0,Z.B5)(this,e,t,xe)}async queryRelatedFeatures(e,t){return(0,Z.hM)(this,e,t,xe)}async queryRelatedFeaturesCount(e,t){return(0,Z.S2)(this,e,t,xe)}async save(e){return this._debouncedSaveOperations(Ae.X.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(Ae.X.SAVE_AS,t,e)}write(e,t){const{origin:r,layerContainerType:n,messages:i}=t;if(this.isTable){if("web-scene"===r||"web-map"===r&&"tables"!==n)return i?.push(Te(this,"using a table source cannot be written to web scenes and web maps")),null}else if(this.loaded&&"web-map"===r&&"tables"===n)return i?.push(Te(this,"using a non-table source cannot be written to tables in web maps")),null;return this.sublayers?.length?super.write(e,t):(i?.push(new o.A("web-document-write:invalid-property",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' has invalid value for 'sublayers' property. 'sublayers' collection should contain at least one sublayer`,{layer:this})),null)}serviceSupportsSpatialReference(e){return!!this.loaded&&(0,Ie.D)(this,e)}async getFeatureTitle(e,t={timeZone:"system",fetchMissingFields:!1}){const r=this.findSublayerForFeature(e);return r?await r.getFeatureTitle(e,t):this.displayField&&this.fieldsIndex.has(this.displayField)?e.attributes[this.fieldsIndex.get(this.displayField).name]??"":this.objectIdField&&this.fieldsIndex.has(this.objectIdField)?e.attributes[this.fieldsIndex.get(this.objectIdField).name]??"":""}get featureTitleFields(){const e=new Set;for(const t of this.sublayers){const r=t.featureTitleFields;for(const t of r)e.add(t)}return[...e]}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}async _initLayerProperties(e){this._set("source",e);const{sourceJSON:t}=e;if(t&&(this.sourceJSON=t,this.read(t,{origin:"service",url:this.parsedUrl})),!this.subtypes?.length)throw new o.A("subtype-grouplayer:missing-subtypes","SubtypeGroupLayer must be created using a layer with subtypes");this._verifyFields(),(0,O.sv)(this.timeInfo,this.fieldsIndex)}async hasDataChanged(){return(0,Z.jp)(this)}_verifyFields(){const e=this.parsedUrl?.path??"undefined";this.objectIdField||console.log("SubtypeGroupLayer: 'objectIdField' property is not defined (url: "+e+")"),this.isTable||-1!==e.search(/\/FeatureServer\//i)||this.fields?.some((e=>"geometry"===e.type))||console.log("SubtypeGroupLayer: unable to find field of type 'geometry' in the layer 'fields' list. If you are using a map service layer, features will not have geometry (url: "+e+")")}_handleSublayersChange(e,t){t&&(t.forEach((e=>{e.parent=null})),this.removeHandles("sublayers-owner"),this._sublayerLookup.clear()),e&&(e.forEach((e=>{e.parent=this,this._sublayerLookup.set(e.subtypeCode,e)})),this.addHandles([e.on("after-add",(({item:e})=>{e.parent=this,this._sublayerLookup.set(e.subtypeCode,e)})),e.on("after-remove",(({item:e})=>{e.parent=null,this._sublayerLookup.delete(e.subtypeCode)}))],"sublayers-owner"))}};(0,n._)([(0,y.MZ)({readOnly:!0})],ke.prototype,"createQueryVersion",null),(0,n._)([(0,y.MZ)({readOnly:!0})],ke.prototype,"editingEnabled",null),(0,n._)([(0,y.MZ)({readOnly:!0})],ke.prototype,"effectiveEditingEnabled",null),(0,n._)([(0,y.MZ)({...Ce.fields,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}})],ke.prototype,"fields",void 0),(0,n._)([(0,y.MZ)(Ce.fieldsIndex)],ke.prototype,"fieldsIndex",void 0),(0,n._)([(0,y.MZ)(E.id)],ke.prototype,"id",void 0),(0,n._)([(0,y.MZ)({type:["show","hide","hide-children"],json:{origins:{"portal-item":{read:!1,write:!1}}}})],ke.prototype,"listMode",void 0),(0,n._)([(0,y.MZ)({type:["SubtypeGroupLayer","SubtypeGroupTable"],json:{name:"layerType",read:{enabled:!0},write:{enabled:!0,ignoreOrigin:!0,isRequired:!0},origins:{"web-document":{name:"layerType",read:{enabled:!0},write:{enabled:!0,ignoreOrigin:!0,isRequired:!0}},"portal-item":{name:"layerType",read:{enabled:!0},write:{enabled:!0,ignoreOrigin:!0,isRequired:!0}}}}})],ke.prototype,"operationalLayerType",null),(0,n._)([(0,y.MZ)(Ce.outFields)],ke.prototype,"outFields",void 0),(0,n._)([(0,y.MZ)({readOnly:!0})],ke.prototype,"parsedUrl",null),(0,n._)([(0,y.MZ)({clonable:!1})],ke.prototype,"source",null),(0,n._)([(0,y.MZ)({type:s.A.ofType(Me),json:{origins:{service:{read:{source:"subtypes",reader(e,t,r){let n=null;if(this.useUniqueColorsForSublayers){const i=function(e,t){const r=e.drawingInfo?.renderer,n=r?G(r,e,t):null;if("simple"===n?.type)return(0,U.Sx)(n.symbol,null)?n.symbol.clone():null}(t,r);n=i?function(e,t){return(0,P.Iy)(D,e,{offset:!0,shuffle:!0}).reverse().map((e=>{const r=t.clone();return"cim"===r.type?(0,N.Fe)(r,e):(0,U.dt)(r,e),new R.A({symbol:r})}))}(e.length,i):null}const i=e.map((({code:e},i)=>{const s=new Me({subtypeCode:e});s.read(t,r);const o=n?.[i];return o&&s.read({drawingInfo:{renderer:o.toJSON()}},r),s}));return new(s.A.ofType(Me))(i)}}}},read:{source:["layers","tables"],reader(e,t,r){let n;return"SubtypeGroupLayer"===t.layerType&&t.layers?.length?n=Se(t.layers,r):"SubtypeGroupTable"===t.layerType&&t.tables?.length&&(n=Se(t.tables,r)),new(s.A.ofType(Me))(n)}},write:{ignoreOrigin:!0,writer(e,t,r,n){const i=[];for(const t of e){const e=t.write({},n);i.push(e)}this.isTable?t.tables=i:t.layers=i}}}})],ke.prototype,"sublayers",void 0),(0,n._)([(0,y.MZ)()],ke.prototype,"useUniqueColorsForSublayers",void 0),(0,n._)([(0,y.MZ)({type:_e.A})],ke.prototype,"timeInfo",void 0),(0,n._)([(0,y.MZ)({json:{origins:{"portal-item":{write:{enabled:!0,ignoreOrigin:!0,writerEnsuresNonNull:!0}}}}})],ke.prototype,"title",void 0),(0,n._)([(0,f.w)("service","title",["name"])],ke.prototype,"readTitleFromService",null),(0,n._)([(0,y.MZ)({json:{read:!1}})],ke.prototype,"type",void 0),(0,n._)([(0,y.MZ)({clonable:!1,readOnly:!0})],ke.prototype,"featureTitleFields",null),ke=(0,n._)([(0,m.$)("esri.layers.SubtypeGroupLayer")],ke);const Ee=ke},17311:(e,t,r)=>{r.d(t,{A:()=>c});var n=r(90237),i=r(69622),s=r(60999),o=r(5503),a=r(10107),l=(r(44208),r(53966),r(87811),r(40608)),u=r(30524),p=r(71386);let d=class extends i.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,s.UT)((()=>(0,p.lw)())):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??r.e(9926).then(r.bind(r,29926)).then((e=>this._featureUtils=e))}get calculatedExpressions(){const e=new o.A;if(!this.expressionsUsedInTitle.length)return e;if(!this._arcadeTask?.value){for(const t of this.expressionsUsedInTitle??[])e.push({name:t.name,invalid:!0});return e}for(const t of this.expressionsUsedInTitle)try{const r=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(r.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:r,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(r,{vars:{$feature:"any"}})})}catch{e.push({name:t.name,invalid:!0});break}return e}get expressionsUsedInTitle(){let e=this.effectivePopupTemplate?.title??"";return"string"!=typeof e?[]:(e=e.toLowerCase(),this.effectivePopupTemplate?.expressionInfos?.filter((t=>e.includes(`{expression/${t.name.toLowerCase()}}`)))??[])}get fieldInfoMap(){return this._featureUtils?this._createFieldInfoMap(this._featureUtils.getAllFieldInfos(this.effectivePopupTemplate)):null}get hasBadExpressions(){return this.calculatedExpressions.some((e=>!0===e.invalid))}get requiredFields(){const e=new Set;if(this._arcadeTask?.value&&!this.hasBadExpressions)for(const t of this.calculatedExpressions?.toArray()??[])try{const r=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of r){const r=t.split("."),n=this.fieldsIndex.get(r.at(-1)??"");n&&e.add(n.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const r of t){const t=this.fieldsIndex.get(r);t&&e.add(t.name)}return e}get titleFromDisplayField(){let e="";return this.displayField&&(e=this.fieldsIndex.get(this.displayField)?.name??""),e||(e=this.fieldsIndex.get(this.objectIdField)?.name??""),e?`{${e}}`:""}get workingTitle(){const e=this.effectivePopupTemplate?this.effectivePopupTemplate.title:"";return""===e||null==e||this.hasBadExpressions||"string"!=typeof e?this.titleFromDisplayField:e}async getTitle(e,t,r){try{const{attributes:n}=t,i=r?.timeZone??"system",[{substituteFieldsInLinksAndAttributes:s}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);if(r.fetchMissingFields&&(t=await this._checkAndReQueryGraphic(e,t)),this.workingTitle&&this.fieldInfoMap){const r=this._createFormattedAttributes(e,t,i).global;return s({attributes:n,expressionAttributes:null,fieldInfoMap:this.fieldInfoMap,globalAttributes:r,layer:e,text:this.workingTitle})}return""}catch{}return""}async _checkAndReQueryGraphic(e,t){const r=t.getObjectId();if(null==r)return t;if(!(0,u.Kl)(this.requiredFields,t)){const t=e.createQuery();t.where="1=1",t.outFields=[...this.requiredFields],t.objectIds=[r];const n=await e.queryFeatures(t);if(1===n?.features.length)return n.features[0]}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const r of e){if(!r.fieldName)continue;const e=this.fieldsIndex.get(r.fieldName),n=e?.name??r.fieldName;r.fieldName=n,t.set(n.toLowerCase(),r)}return t}_createFormattedAttributes(e,t,r="system"){const n=this.effectivePopupTemplate?.fieldInfos??[],i={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const r=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{i[`expression/${e.name}`]=e.func({vars:{$feature:r}})}catch{}}const s={...t.attributes,...i};return{global:this._featureUtils.formatAttributes({fieldInfos:n,attributes:s,graphic:t,timeZone:r,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,u.nw)(e).filter((e=>!(0===e.indexOf("relationships/")||0===e.indexOf("expression/"))))}};(0,n._)([(0,a.MZ)({readOnly:!0})],d.prototype,"_arcadeTask",null),(0,n._)([(0,a.MZ)()],d.prototype,"_featureUtils",void 0),(0,n._)([(0,a.MZ)({readOnly:!0})],d.prototype,"featureUtilsPromise",null),(0,n._)([(0,a.MZ)({readOnly:!0})],d.prototype,"calculatedExpressions",null),(0,n._)([(0,a.MZ)()],d.prototype,"displayField",void 0),(0,n._)([(0,a.MZ)()],d.prototype,"effectivePopupTemplate",void 0),(0,n._)([(0,a.MZ)()],d.prototype,"expressionsUsedInTitle",null),(0,n._)([(0,a.MZ)()],d.prototype,"fieldsIndex",void 0),(0,n._)([(0,a.MZ)()],d.prototype,"fieldInfoMap",null),(0,n._)([(0,a.MZ)()],d.prototype,"fields",void 0),(0,n._)([(0,a.MZ)()],d.prototype,"objectIdField",void 0),(0,n._)([(0,a.MZ)()],d.prototype,"requiredFields",null),d=(0,n._)([(0,l.$)("esri.layers.support.TitleCreator")],d);const c=d},41560:(e,t,r)=>{r.d(t,{Ch:()=>o,mW:()=>s});var n=r(34727),i=r(39516);function s(e,t){return{...t,filterMode:e.mode}}function o(e,t,r){const s=function(e){if("manual"===u(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:r,maxScale:n}of e.filters)t[0]=Math.max(t[0],p(r)),t[1]=Math.min(t[1],d(n));return t}(e);if(s&&((0,n.gg)(t,s[0])||(0,n.ZH)(r,s[1])))return"";const o=Array.from(a(e,t,r)),l=function(e,t,r){if(0===e.length)return!0;const i=p(e.at(0)?.minScale),s=d(e.at(-1)?.maxScale);if((0,n.ZH)(i,t)||(0,n.gg)(s,r))return!0;for(let t=0;t<e.length-1;t++){const r=e[t],i=e[t+1];if((0,n.ZH)(p(i.minScale),d(r.maxScale)))return!0}return!1}(o,t,r)?"1=1":o.map((e=>e.where||"1=1")).reduce(((e,t)=>(0,i.IW)(e,t)),"");return l&&"1=1"!==l?l:""}function*a(e,t,r){if("manual"===u(e)){const t=e.filters.find((t=>t.id===e.activeFilterId));t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const n of e.filters)l(n.minScale,n.maxScale,t,r)&&(yield n)}}function l(e,t,r,i){return e=p(e),r=p(r),t=d(t),!(!(0,n.Sp)(r,e)&&(i??r)>e||(0,n.Hx)(t,r)||void 0!==i&&(0,n.Sp)(i,e))}function u(e){return"mode"in e?e.mode:e.filterMode}function p(e){return e||Number.POSITIVE_INFINITY}function d(e){return e||0}},32730:(e,t,r)=>{r.d(t,{BI:()=>m,D3:()=>h,XJ:()=>f,lc:()=>y,mX:()=>g,rU:()=>b,tH:()=>I});var n=r(799);const i="__begin__",s="__end__",o=new RegExp(i,"ig"),a=new RegExp(s,"ig"),l=new RegExp("^"+i,"i"),u=new RegExp(s+"$","i"),p='"',d=p+" + ",c=" + "+p;function y(e){return e.replaceAll(new RegExp("\\[","g"),"{").replaceAll(new RegExp("\\]","g"),"}")}function h(e){return e.replaceAll(new RegExp("\\{","g"),"[").replaceAll(new RegExp("\\}","g"),"]")}function f(e){const t={expression:"",type:"none"};return e.labelExpressionInfo?e.labelExpressionInfo.value?(t.expression=e.labelExpressionInfo.value,t.type="conventional"):e.labelExpressionInfo.expression&&(t.expression=e.labelExpressionInfo.expression,t.type="arcade"):null!=e.labelExpression&&(t.expression=y(e.labelExpression),t.type="conventional"),t}function m(e){const t=f(e);switch(t.type){case"conventional":return g(t.expression);case"arcade":return t.expression}return null}function b(e){const t=f(e);switch(t.type){case"conventional":return function(e){const t=e?.match(w);return t?.[1].trim()||null}(t.expression);case"arcade":return I(t.expression)}return null}function g(e){let t;return e?(t=(0,n.HC)(e,(e=>i+'$feature["'+e+'"]'+s)),t=l.test(t)?t.replace(l,""):p+t,t=u.test(t)?t.replace(u,""):t+p,t=t.replaceAll(o,d).replaceAll(a,c)):t='""',t}const w=/^\s*\{([^}]+)\}\s*$/i,v=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*$/i,M=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(\1|\3)(\5)\s*\));?\s*$/i,_=/^\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(.+)(\1)\s*\));?\s*$/i;function I(e){if(!e)return null;let t=v.exec(e)||M.exec(e);return t?t[1]||t[3]:(t=_.exec(e),t?t[2]:null)}},41366:(e,t,r)=>{r.d(t,{K:()=>c,Q:()=>u});var n=r(90237),i=r(66552),s=r(53966),o=r(10107),a=(r(44208),r(87811),r(93223)),l=r(40608);const u=(0,i.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),p="percent-of-total",d="field",c=e=>{let t=class extends e{constructor(){super(...arguments),this.normalizationField=null,this.normalizationMaxValue=null,this.normalizationMinValue=null,this.normalizationTotal=null}get normalizationType(){let e=this._get("normalizationType");const t=!!this.normalizationField,r=null!=this.normalizationTotal;return t||r?(e=t&&d||r&&p||null,t&&r&&s.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==d&&e!==p||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,n._)([(0,o.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],t.prototype,"normalizationField",void 0),(0,n._)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],t.prototype,"normalizationMaxValue",void 0),(0,n._)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],t.prototype,"normalizationMinValue",void 0),(0,n._)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],t.prototype,"normalizationTotal",void 0),(0,n._)([(0,a.e)(u,{name:"parameters.normalizationType"})],t.prototype,"normalizationType",null),t=(0,n._)([(0,l.$)("esri.rest.support.NormalizationBinParametersMixin")],t),t}},62046:(e,t,r)=>{r.d(t,{Fe:()=>l,Nk:()=>s});var n=r(68197),i=r(93397);function s(e){const t=[];return o((0,i.lW)(e),t),t.length?new n.A((0,i.e6)(t[0])):null}function o(e,t){if(!e)return;let r;r="CIMTextSymbol"===e.type?e.symbol:e;const n="CIMPolygonSymbol"===e.type;if(r?.symbolLayers)for(const e of r.symbolLayers)if(!(e.colorLocked||n&&((0,i.mA)(e)||(0,i.MM)(e)&&e.markerPlacement&&(0,i.zr)(e.markerPlacement))))switch(e.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":e.tintColor&&a(t,e.tintColor);break;case"CIMVectorMarker":e.markerGraphics?.forEach((e=>{o(e.symbol,t)}));break;case"CIMSolidStroke":case"CIMSolidFill":a(t,e.color);break;case"CIMHatchFill":o(e.lineSymbol,t)}}function a(e,t){for(const r of e)if(r.join(".")===t.join("."))return;e.push(t)}function l(e,t,r){t instanceof n.A||(t=new n.A(t));const s=(0,i.lW)(e);s&&u(s,t,r)}function u(e,t,r){if(!e)return;let n;n="CIMTextSymbol"===e.type?e.symbol:e;const s="CIMPolygonSymbol"===n?.type;if(n?.symbolLayers)for(const e of n.symbolLayers){if(e.colorLocked)continue;if(s)if(r){const{layersToColor:t}=r;if(((0,i.mA)(e)||(0,i.MM)(e)&&e.markerPlacement&&(0,i.zr)(e.markerPlacement))&&"fill"===t||(0,i.jn)(e)&&"outline"===t)continue}else if((0,i.mA)(e)||(0,i.MM)(e)&&e.markerPlacement&&(0,i.zr)(e.markerPlacement))continue;const n=t.toArray();switch(e.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":e.tintColor=n;break;case"CIMVectorMarker":e.markerGraphics?.forEach((e=>{u(e.symbol,t,r)}));break;case"CIMSolidStroke":case"CIMSolidFill":e.color=n;break;case"CIMHatchFill":u(e.lineSymbol,t,r)}}}},37531:(e,t,r)=>{r.d(t,{dt:()=>y,GG:()=>g,UQ:()=>b,Sx:()=>d});var n=r(68197),i=r(60999),s=(r(44208),r(51850)),o=(r(76369),r(62046)),a=(r(2741),r(78888),r(66344));new Map([["dash",[4,3]],["dashdot",[4,3,1,3]],["dot",[1,3]],["longdash",[8,3]],["longdashdot",[8,3,1,3]],["longdashdotdot",[8,3,1,3,1,3]],["shortdash",[4,1]],["shortdashdot",[4,1,1,1]],["shortdashdotdot",[4,1,1,1,1,1]],["shortdot",[1,1]],["solid",[]]]),new a.q(1e3),new n.A([128,128,128]);var l=r(78504),u=r(33910);const p=new n.A("white");function d(e,t){if(!e)return null;let r=null;return(0,u.wk)(e)?r=function(e){const t=e.symbolLayers;if(!t)return null;let r=null;return t.forEach((e=>{"object"===e.type&&e.resource?.href||(r="water"===e.type?e.color:e.material?e.material.color:null)})),r?new n.A(r):null}(e):(0,u.$y)(e)&&(r="cim"===e.type?(0,o.Nk)(e):e.color?new n.A(e.color):null),r?c(r,t):null}function c(e,t){if(null==t||null==e)return e;const r=e.toRgba();return r[3]=r[3]*t,new n.A(r)}function y(e,t,r){e&&(t||null!=r)&&(t&&(t=new n.A(t)),(0,u.wk)(e)?function(e,t,r){const n=e.symbolLayers;if(!n)return;const i=e=>c(t=t??e??(null!=r?p:null),r);n.forEach((e=>{if("object"!==e.type||!e.resource?.href||t)if("water"===e.type)e.color=i(e.color);else{const t=null!=e.material?e.material.color:null,n=i(t);null==e.material?e.material=new l.N({color:n}):e.material.color=n,null!=r&&"outline"in e&&null!=e.outline?.color&&(e.outline.color=c(e.outline.color,r))}}))}(e,t,r):(0,u.$y)(e)&&function(e,t,r){(t=t??e.color)&&(e.color=c(t,r)),null!=r&&"outline"in e&&e.outline?.color&&(e.outline.color=c(e.outline.color,r))}(e,t,r))}function h(e){for(const t of e)if("number"==typeof t)return t;return null}function f(e,t,r){for(let n=0;n<3;n++){const i=e[n];switch(i){case"symbol-value":{const e=r[n];return null!=e?e/t[n]:1}case"proportional":break;default:if(i&&t[n])return i/t[n]}}return 1}function m(e,t,r,n){switch(e){case"proportional":return r*n;case"symbol-value":return null!=t?t:r;default:return e}}async function b(e,t){if(e&&t)return(0,u.wk)(e)?async function(e,t){const n=e.symbolLayers;n&&await(0,i.jJ)(n,(async e=>async function(e,t){switch(e.type){case"extrude":!function(e,t){e.size="number"==typeof t[2]?t[2]:0}(e,t);break;case"icon":case"line":case"text":!function(e,t){const r=h(t);null!=r&&(e.size=r)}(e,t);break;case"path":!function(e,t){const r=f(t,s.Un,[e.width,void 0,e.height]);e.width=m(t[0],e.width,1,r),e.height=m(t[2],e.height,1,r)}(e,t);break;case"object":await async function(e,t){const{resourceSize:n,symbolSize:i}=await async function(e){const{computeObjectLayerResourceSize:t}=await r.e(5404).then(r.bind(r,95404)),n=await t(e,10),{width:i,height:s,depth:o}=e,a=[i,o,s];let l=1;for(let e=0;e<3;e++){const t=a[e];if(null!=t){l=t/n[e];break}}for(let e=0;e<3;e++)null==a[e]&&(a[e]=n[e]*l);return{resourceSize:n,symbolSize:a}}(e),s=f(t,n,i);e.width=m(t[0],i[0],n[0],s),e.depth=m(t[1],i[1],n[1],s),e.height=m(t[2],i[2],n[2],s)}(e,t)}}(e,t)))}(e,t):void((0,u.$y)(e)&&function(e,t){const r=h(t);if(null!=r)switch(e.type){case"simple-marker":e.size=r;break;case"picture-marker":{const t=e.width/e.height;t>1?(e.width=r,e.height=r*t):(e.width=r*t,e.height=r);break}case"simple-line":e.width=r;break;case"text":e.font.size=r}}(e,t))}function g(e,t,r){if(e&&null!=t)if((0,u.wk)(e)){const n=e.symbolLayers;n&&n.forEach((e=>{if("object"===e.type)switch(r){case"tilt":e.tilt=(e.tilt??0)+t;break;case"roll":e.roll=(e.roll??0)+t;break;default:e.heading=(e.heading??0)+t}"icon"===e.type&&(e.angle+=t)}))}else(0,u.$y)(e)&&("simple-marker"!==e.type&&"picture-marker"!==e.type&&"text"!==e.type||(e.angle+=t))}},92935:(e,t,r)=>{var n;r.d(t,{X:()=>n}),function(e){e[e.SAVE=0]="SAVE",e[e.SAVE_AS=1]="SAVE_AS"}(n||(n={}))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9926],{18047:(e,t,n)=>{n.d(t,{ZV:()=>u,yx:()=>l});var r=n(73444);const i={ar:"ar-u-nu-latn"};let a=new WeakMap,o={};function l(e={}){const t={};return null!=e.digitSeparator&&(t.useGrouping=e.digitSeparator),null!=e.places&&(t.minimumFractionDigits=t.maximumFractionDigits=e.places),t}function u(e,t){return Object.is(e,-0)&&(e=0),function(e){const t=e||o;if(!a.has(t)){const n=(0,r.JK)(),o=i[(0,r.JK)()]||n;a.set(t,new Intl.NumberFormat(o,e))}return a.get(t)}(t).format(e)}(0,r.Ml)((()=>{a=new WeakMap,o={}})),new Map},29926:(e,t,n)=>{n.r(t),n.d(t,{applyTextFormattingHTML:()=>_,createFieldInfoMap:()=>V,findRelatedLayer:()=>oe,findUtilityNetwork:()=>le,fixTokens:()=>j,formatAttributes:()=>Y,formatEditInfo:()=>Q,formatValueToFieldInfo:()=>G,getAllFieldInfos:()=>K,getFieldInfo:()=>J,getFieldInfoLabel:()=>A,getFixedFieldName:()=>k,getFixedFieldNames:()=>q,getHighlightKeyForFeature:()=>fe,getSourceLayer:()=>N,graphicCallback:()=>x,htmlEntities:()=>P,isAssociatedFeatureSupportedLayer:()=>O,isExpressionField:()=>Z,isFeatureSupportedLayer:()=>$,isGraphicForRelatableFeatureSupportedLayer:()=>z,isRelatableFeatureSupportedLayer:()=>S,isRelatableLayer:()=>D,isRelatedField:()=>ee,preLayerQueryCallback:()=>ie,preRequestCallback:()=>ae,querySourceLayer:()=>B,queryUpdatedFeature:()=>X,shouldOpenInNewTab:()=>C,substituteAttributes:()=>v,substituteFieldsInLinksAndAttributes:()=>M});var r=n(44208),i=n(53966),a=n(799),o=n(97770),l=n(18047),u=n(30524),s=n(83531),f=n(4560),c=n(71386),d=n(56400);const p=()=>i.A.getLogger("esri.widgets.Feature.support.featureUtils"),y=/href=(""|'')/gi,m=/(\{([^{\r\n]+)\})/g,b=/'/g,g=/^\s*expression\//i,h=/(\n)/gi,I=/[\u00A0-\u9999<>&]/gim,F=/href\s*=\s*(?:"([^"]+)"|'([^']+)')/gi,w=/^(?:mailto:|tel:)/,T="relationships/",L=(0,o.J2)("short-date-short-time");function N(e){if(null!=e)return(e.sourceLayer||e.layer)??void 0}async function x({type:e,value:t,event:n}){try{return"function"==typeof t?t(n):await t}catch(r){return void p().error("error",`An error occurred when calling the "${e}" function`,{error:r,graphic:n.graphic,value:t})}}function C(e=""){if(e)return!w.test(e.trim().toLowerCase())}function Z(e){return!!e&&g.test(e)}function A(e,t){const n=function(e,t){if(!t||!Z(t)||!e)return;const n=t.replace(g,"").toLowerCase();return e.find((({name:e})=>e.toLowerCase()===n))}(t,e?.fieldName);return n?n.title||null:e?e.label||e.fieldName:null}function k(e,t){const n=R(t,e);return n?n.name:e}function q(e,t){return e&&e.map((e=>k(e,t)))}function R(e,t){return e&&"function"==typeof e.getField&&t?e.getField(t)??null:null}function E(e){return`${e}`.trim()}function M({attributes:e,globalAttributes:t,layer:n,text:r,expressionAttributes:i,fieldInfoMap:a}){return r?v({formattedAttributes:t,template:U(r,{...t,...i,...e},n),fieldInfoMap:a}):""}function v({formattedAttributes:e,template:t,fieldInfoMap:n}){return E(function(e){return e.replaceAll(y,"")}((0,a.HC)((0,a.HC)(t,(e=>function(e,t){const n=t.get(e.toLowerCase());return`{${n?.fieldName||e}}`}(e,n))),e)))}function j(e,t){return e.replaceAll(m,((e,n,r)=>{const i=R(t,r);return i?`{${i.name}}`:n}))}function U(e,t,n){const r=j(e,n);return r?r.replaceAll(F,((e,n,r)=>function(e,t,n){const r=(t=E(t))&&"{"!==t[0];return(0,a.HC)(e,function(e,t=!1){const n={...e};return Object.keys(n).forEach((e=>function(e,t,n=!1){const r=t[e];if("string"==typeof r){const i="%27",a=(n?encodeURIComponent(r):r).replaceAll(b,i);t[e]=a}}(e,n,t))),n}(n,r||!1))}(e,n||r,t))):r}function $(e){return null!=e&&"object"==typeof e&&"fieldsIndex"in e&&"geometryType"in e&&"getField"in e&&"load"in e&&"loaded"in e&&"objectIdField"in e&&"spatialReference"in e&&"type"in e&&("feature"===e.type||"scene"===e.type||"subtype-group"===e.type||"subtype-sublayer"===e.type||"sublayer"===e.type)&&"when"in e}function D(e){return null!=e&&"object"==typeof e&&"createQuery"in e&&"queryFeatureCount"in e&&"queryObjectIds"in e&&"queryRelatedFeatures"in e&&"queryRelatedFeaturesCount"in e&&"relationships"in e}function S(e){return $(e)&&D(e)}function O(e){return!(!(e&&"object"==typeof e&&"createQuery"in e&&"getField"in e&&"queryFeatureCount"in e&&"queryFeatures"in e&&"queryObjectIds"in e&&"capabilities"in e&&"fields"in e&&"fieldsIndex"in e&&"type"in e)||"feature"!==e.type&&"subtype-group"!==e.type&&"subtype-sublayer"!==e.type&&"sublayer"!==e.type||!("when"in e))&&("subtype-sublayer"===e.type&&"parent"in e&&e.parent&&"object"==typeof e.parent?"globalIdField"in e.parent:"globalIdField"in e)}function z(e){return!!e&&"object"==typeof e&&"sourceLayer"in e&&S(e.sourceLayer)}function G(e,t){const{fieldInfos:n,fieldName:r,preventPlacesFormatting:i,layer:a,timeZone:o}=t,s=J(n,r),c=R(a,r);if(s&&!(0,u.JL)(r)){const t=c?.type,n=s.format?.dateFormat;if("date"===t||"date-only"===t||"time-only"===t||"timestamp-offset"===t||n)return(0,f.i0)(e,{format:n,fieldType:t,timeZoneOptions:{layerTimeZone:a&&"preferredTimeZone"in a?a.preferredTimeZone:null,viewTimeZone:o,datesInUnknownTimezone:!(!a||!("datesInUnknownTimezone"in a)||!a.datesInUnknownTimezone)}})}const d=s?.format;return"string"==typeof e&&(0,u.JL)(r)&&d?function(e,t){return e=e.trim(),/\d{2}-\d{2}/.test(e)?e:e.includes(",")?H(e,",",", ",t):e.includes(";")?H(e,";","; ",t):e.includes(" ")?H(e," "," ",t):(0,l.ZV)(Number(e),(0,l.yx)(t))}(e,d):"string"==typeof(e=function(e,t){if("string"==typeof e&&t&&null==t.dateFormat&&(null!=t.places||null!=t.digitSeparator)){const t=Number(e);if(!isNaN(t))return t}return e}(e,d))||null==e||null==d?_(e):(0,l.ZV)(e,i?{...(0,l.yx)(d),minimumFractionDigits:0,maximumFractionDigits:20}:(0,l.yx)(d))}function H(e,t,n,r){return e.trim().split(t).map((e=>(0,l.ZV)(Number(e),(0,l.yx)(r)))).join(n)}function J(e,t){if(e?.length&&t)return e.find((e=>e.fieldName?.toLowerCase()===t.toLowerCase()))}function Q(e,t,n,r){const{creatorField:i,creationDateField:a,editorField:l,editDateField:u}=e;if(!t)return;const s=(0,d.hv)(r&&"preferredTimeZone"in r?r.preferredTimeZone:null,!(!r||!("datesInUnknownTimezone"in r)||!r.datesInUnknownTimezone),n,L,"date"),f={...L,...s},c=t[u];if("number"==typeof c){const e=t[l];return{type:"edit",date:(0,o.Yq)(c,f),user:e}}const p=t[a];if("number"==typeof p){const e=t[i];return{type:"create",date:(0,o.Yq)(p,f),user:e}}return null}function V(e,t){const n=new Map;if(!e)return n;for(const r of e){if(!r.fieldName)continue;const e=k(r.fieldName,t);r.fieldName=e,n.set(e.toLowerCase(),r)}return n}function K(e){const t=[];if(!e)return t;const{fieldInfos:n,content:r}=e;return n&&t.push(...n),r&&Array.isArray(r)?(r.forEach((e=>{if("fields"===e.type){const n=e?.fieldInfos;n&&t.push(...n)}})),t):t}function P(e){return e.replaceAll(I,(e=>`&#${e.charCodeAt(0)};`))}function _(e){return"string"==typeof e?e.replaceAll(h,'<br class="esri-text-new-line" />'):e}function W(e){const{value:t,fieldName:n,fieldInfos:i,fieldInfoMap:a,layer:o,graphic:l,timeZone:s}=e;if(null==t)return"";const c=function({fieldName:e,value:t,graphic:n,layer:i}){if(ee(e))return null;if(!i||"function"!=typeof i.getFieldDomain)return null;const a=n&&i.getFieldDomain(e,{feature:n,excludeImpliedDomains:(0,r.A)("esri-widget-legacy-field-domain-calculation")});return a&&"coded-value"===a.type?a.getName(t):null}({fieldName:n,value:t,graphic:l,layer:o});if(c)return c;const d=function({fieldName:e,graphic:t,layer:n}){if(ee(e))return null;if(!n||"function"!=typeof n.getFeatureType)return null;const{typeIdField:r}=n;if(!r||e!==r)return null;const i=n.getFeatureType(t);return i?i.name:null}({fieldName:n,graphic:l,layer:o});if(d)return d;if(a.get(n.toLowerCase()))return G(t,{fieldInfos:i||Array.from(a.values()),fieldName:n,layer:o,timeZone:s});const p=o?.fieldsIndex?.get(n);return p&&((0,f.fs)(p)||(0,u.OH)(p))?(0,f.i0)(t,{fieldType:p.type,timeZoneOptions:{layerTimeZone:o&&"preferredTimeZone"in o?o.preferredTimeZone:null,viewTimeZone:s,datesInUnknownTimezone:!(!o||!("datesInUnknownTimezone"in o)||!o.datesInUnknownTimezone)}}):_(t)}function Y({fieldInfos:e,attributes:t,layer:n,graphic:r,fieldInfoMap:i,relatedInfos:a,timeZone:o}){const l={};return a?.forEach((t=>function({attributes:e,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:a}){e&&t&&(t.relatedFeatures?.forEach((o=>te({attributes:e,graphic:o,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:a}))),t.relatedStatsFeatures?.forEach((o=>te({attributes:e,graphic:o,relatedInfo:t,fieldInfoMap:n,fieldInfos:r,layer:i,timeZone:a}))))}({attributes:l,relatedInfo:t,fieldInfoMap:i,fieldInfos:e,layer:n,timeZone:o}))),t&&Object.keys(t).forEach((a=>{const u=t[a];l[a]=W({fieldName:a,fieldInfos:e,fieldInfoMap:i,layer:n,value:u,graphic:r,timeZone:o})})),l}async function B(e,t){const{layer:n,graphic:r,outFields:i,objectIds:a,returnGeometry:o,spatialReference:l}=e,u=a[0];if("number"!=typeof u&&"string"!=typeof u){const e="Could not query required fields for the specified feature. The feature's ID is invalid.",t={layer:n,graphic:r,objectId:u,requiredFields:i};return p().warn(e,t),null}if(!(0,s.BR)(n)?.operations?.supportsQuery){const e="The specified layer cannot be queried. The following fields will not be available.",t={layer:n,graphic:r,requiredFields:i,returnGeometry:o};return p().warn(e,t),null}const f=n.createQuery();return f.objectIds=a,f.outFields=i?.length?i:[n.objectIdField],f.returnGeometry=!!o,f.returnZ=!!o,f.returnM=!!o,f.outSpatialReference=l,(await n.queryFeatures(f,t)).features[0]}async function X({graphic:e,popupTemplate:t,layer:n,spatialReference:r},i){if(!n||!t)return;if("function"==typeof n.load&&await n.load(i),!e.attributes)return;const a=n.objectIdField,o=e.attributes[a];if(null==o)return;const l=[o],s=await t.getRequiredFields(n.fieldsIndex),f=(0,u.Kl)(s,e),d=f?[]:s.includes(a)?s:[...s,a],p=t.returnGeometry||await async function(e){if(!e.expressionInfos?.length)return!1;const t=await(0,c.lw)(),{arcadeUtils:{hasGeometryFunctions:n}}=t;return n(e)}(t);if(f&&!p)return;const y=await B({layer:n,graphic:e,outFields:d,objectIds:l,returnGeometry:p,spatialReference:r},i);y&&(y.geometry&&(e.geometry=y.geometry),y.attributes&&(e.attributes={...e.attributes,...y.attributes}))}function ee(e=""){return!!e&&e.includes(T)}function te({attributes:e,graphic:t,relatedInfo:n,fieldInfos:r,fieldInfoMap:i,layer:a,timeZone:o}){e&&t&&n&&Object.keys(t.attributes).forEach((l=>{const u=function(e){return`${T}${e.layerId}/${e.fieldName}`}({layerId:n.relation.id.toString(),fieldName:l}),s=t.attributes[l];e[u]=W({fieldName:u,fieldInfos:r,fieldInfoMap:i,layer:a,value:s,graphic:t,timeZone:o})}))}const ne=e=>{if(!e)return!1;const t=e.toUpperCase();return t.includes("CURRENT_TIMESTAMP")||t.includes("CURRENT_DATE")||t.includes("CURRENT_TIME")},re=({layer:e,method:t,query:n,definitionExpression:r})=>{if(!e.capabilities?.query?.supportsCacheHint||"attachments"===t)return;const i=null!=n.where?n.where:null,a=null!=n.geometry?n.geometry:null;ne(r)||ne(i)||"extent"===a?.type||"tile"===n.resultType||(n.cacheHint=!0)},ie=({query:e,layer:t,method:n})=>{re({layer:t,method:n,query:e,definitionExpression:`${t.definitionExpression} ${t.serviceDefinitionExpression??""}`})},ae=({queryPayload:e,layer:t,method:n})=>{re({layer:t,method:n,query:e,definitionExpression:`${t.definitionExpression} ${t.serviceDefinitionExpression??""}`})};function oe(e,t,n){return e&&t&&n?"sublayer"===t.type?se({layers:t.layer?.sublayers,map:e,relatedLayer:t,relationship:n})||se({layers:t.layer?.subtables,map:e,relatedLayer:t,relationship:n}):se({layers:e.allLayers,map:e,relatedLayer:t,relationship:n})||se({layers:e.allTables,map:e,relatedLayer:t,relationship:n}):null}function le(e,t){return e&&"utilityNetworks"in e&&t?e.utilityNetworks?.find((e=>e.isUtilityLayer(t))):null}function ue(e,t){return e?.allTables.find((e=>"feature"===e.type&&e.layerId===t.id&&e.url===t.layer?.url))}function se({map:e,relationship:t,relationship:{relatedTableId:n},relatedLayer:r,layers:i}){if(!i)return null;for(const a of i){if("map-image"===a.type){const n=se({layers:a.sublayers,map:e,relatedLayer:r,relationship:t})||se({layers:a.subtables,map:e,relatedLayer:r,relationship:t});if(n)return n;continue}if(!S(a))continue;if("sublayer"===r.type){if(a!==r&&a.id===n)return a.isTable?ue(e,a):a;continue}const i="scene"===r.type&&r.associatedLayer?r.associatedLayer.url:r.url;if(!i)return null;if("sublayer"!==a.type){if(a!==r&&a.url===i&&a.layerId===n)return a}else if(a!==r&&a.layer?.url===i&&a.id===n)return a.isTable?ue(e,a):a}return null}function fe(e){const t=e.getObjectId();return null!=t?`oid:${t}`:`uid:${e.uid}`}}}]);
package/interfaces.d.ts CHANGED
@@ -9178,7 +9178,7 @@ declare namespace __esri {
9178
9178
  * Performs the densify operation on the geometry.
9179
9179
  *
9180
9180
  * @param geometry The geometry to be densified.
9181
- * @param maxSegmentLength The maximum distance between vertices when the input geometry is densified. The number must be greater than or equal to zero. When the parameter is set to `0`, this operation only applies to curves and disables densification by length. Curves are densinfied to straight segments using the given length. And, curves are split into shorter subcurves such that the length of subcurves is shorter than `maxSegmentLength`. After that the curves are replaced with straight segments. Unless the `unit` option is set, the default is the spatial reference unit of `geometry`.
9181
+ * @param maxSegmentLength The maximum distance between vertices when the input geometry is densified. The number must be greater than or equal to zero. When the parameter is set to `0`, this operation only applies to curves and disables densification by length. Curves are densified to straight segments using the given length. And, curves are split into shorter subcurves such that the length of subcurves is shorter than `maxSegmentLength`. After that the curves are replaced with straight segments. Unless the `unit` option is set, the default is the spatial reference unit of `geometry`.
9182
9182
  * @param options Additional options.
9183
9183
  * @param options.maxAngleInDegrees The maximum angle that a new vertex can deviate from the original geometry. The number must be greater than or equal to zero. Applicable only on curves. The default value of `0` disables densification by angle. The value will be capped at 90.
9184
9184
  * @param options.maxDeviation The maximum distance a newly placed vertex on a densified polyline can deviate from the original location on the curve. The number must be greater than or equal to zero. Applicable only on curves. The default of passing `0` disables densification by deviation. Unless the `unit` option is set, the default is the geometry's spatial reference unit.
@@ -9745,8 +9745,14 @@ declare namespace __esri {
9745
9745
  *
9746
9746
  * @param geometries The input geometries to be buffered. All the geometries must have the same spatial reference.
9747
9747
  * @param distances The buffer distances for the geometries. If the size of this array is less than the number of geometries in the input `geometries`, the last distance value is used for the rest of geometries. Unless the `unit` option is set, the default is the geometries spatial reference unit.
9748
- * @param joins Defines the buffers shape where geometries are joined.
9749
- * @param caps Defines the buffers shape at the end points of the geometries.
9748
+ * @param joins
9749
+ * Defines the buffers shape where geometries are joined.
9750
+ * * Miter joins are replaced with bevel when the ratio of the miter thickness to the buffer distance is greater than miter limit. The miter thickness is the distance from the vertex to the mitered corner of the buffer that this vertex generates.
9751
+ * @param caps
9752
+ * Defines the buffers shape at the end points of the geometries.
9753
+ * * Points with square caps will be drawn as squares.
9754
+ * * Open polylines paths with square caps degenerate to a point and will be drawn as squares (degenerate with zero tolerance).
9755
+ * * Open polylines paths with round caps degenerate to a point and will be drawn as circles (degenerate with zero tolerance).
9750
9756
  * @param options Additional options.
9751
9757
  * @param options.maxDeviation The max deviation of the result buffer from the true buffer in the geometries spatial reference units. When the value is NaN, internal logic is used to select the deviation based on the buffer distance. Unless the `unit` option is set, the default is the geometries spatial reference unit.
9752
9758
  * @param options.maxVerticesInFullCircle The maximum number of vertices in the polygon produced from a buffered point.
@@ -10101,8 +10107,8 @@ declare namespace __esri {
10101
10107
  /**
10102
10108
  * Perform the overlaps operation on two geometries.
10103
10109
  *
10104
- * @param geometry1 The base geometry that is tested for the "overlaps" relationship with `geom2`.
10105
- * @param geometry2 The comparison geometry that is tested for the "overlaps" relationship with `geom1`.
10110
+ * @param geometry1 The base geometry that is tested for the "overlaps" relationship with `geometry2`.
10111
+ * @param geometry2 The comparison geometry that is tested for the "overlaps" relationship with `geometry1`.
10106
10112
  *
10107
10113
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-operators-overlapsOperator.html#execute Read more...}
10108
10114
  */
@@ -70512,7 +70518,7 @@ declare namespace __esri {
70512
70518
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-support-IdentifyParameters.html#sublayers Read more...}
70513
70519
  */
70514
70520
  get sublayers(): Collection<Sublayer> | nullish;
70515
- set sublayers(value: CollectionProperties<SublayerProperties> | nullish);
70521
+ set sublayers(value: CollectionProperties<Sublayer> | nullish);
70516
70522
  /**
70517
70523
  * Specify the time extent used by identify.
70518
70524
  *
@@ -70647,7 +70653,7 @@ declare namespace __esri {
70647
70653
  *
70648
70654
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-support-IdentifyParameters.html#sublayers Read more...}
70649
70655
  */
70650
- sublayers?: CollectionProperties<SublayerProperties> | nullish;
70656
+ sublayers?: CollectionProperties<Sublayer> | nullish;
70651
70657
  /**
70652
70658
  * Specify the time extent used by identify.
70653
70659
  *
package/kernel.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.32/esri/copyright.txt for details.
4
4
  */
5
- import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="4.32";let s,r=e;r="4.32.4";function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
5
+ import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="4.32";let s,r=e;r="4.32.6";function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};