@arcgis/core 5.0.0-next.17 → 5.0.0-next.19
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.
- package/AttributeBinsGraphic.js +1 -1
- package/analysis/ElevationProfile/ElevationProfileLineGround.js +1 -1
- package/analysis/ElevationProfile/ElevationProfileLineInput.js +1 -1
- package/analysis/ElevationProfile/ElevationProfileLineQuery.js +1 -1
- package/analysis/ElevationProfile/ElevationProfileLineScene.js +1 -1
- package/arcade/featureSetUtils.js +1 -1
- package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
- package/arcade/featureset/sources/FeatureLayerMemory.js +1 -1
- package/arcade/featureset/sources/FeatureLayerOGC.js +5 -0
- package/arcade/featureset/sources/FeatureLayerRelated.js +1 -1
- package/arcade/featureset/support/FeatureSet.js +1 -1
- package/arcade/featureset/support/shared.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/057d59ee6144e5890780.js +1 -0
- package/assets/esri/core/workers/chunks/{adf7ccf4ef629211c7ee.js → 08aacbfb651cc2e1c054.js} +1 -1
- package/assets/esri/core/workers/chunks/{31b5900119dd7cd9e7d3.js → 0a6ad58ca4ca0cba2fa0.js} +1 -1
- package/assets/esri/core/workers/chunks/0d8d3d0de49064971874.js +1 -0
- package/assets/esri/core/workers/chunks/{b87bc987983b31c13f64.js → 0f1b9d69961dad0b922f.js} +1 -1
- package/assets/esri/core/workers/chunks/110cc01dd6af7ee125d4.js +1 -0
- package/assets/esri/core/workers/chunks/11687718c8635eb7bf37.js +1 -0
- package/assets/esri/core/workers/chunks/{5f6df4a3376b52ead53f.js → 14f994b1dd682bf2d61a.js} +1 -1
- package/assets/esri/core/workers/chunks/3538eb39ebb58acedd67.js +1 -0
- package/assets/esri/core/workers/chunks/{658cd45b5fb304fd840a.js → 3aa77696c5ea54a238da.js} +1 -1
- package/assets/esri/core/workers/chunks/{49571d6875de1f2e7e25.js → 4b9dfdc23ba3d6ebcc1b.js} +2 -2
- package/assets/esri/core/workers/chunks/{02a22dd6d208a925cc5a.js → 52cf643621662712dc85.js} +1 -1
- package/assets/esri/core/workers/chunks/5755b11272b777507612.js +1 -0
- package/assets/esri/core/workers/chunks/{d69265ceabfa92b40bb7.js → 58969dde8c3d0b2a9829.js} +1 -1
- package/assets/esri/core/workers/chunks/6e4829b52ade3e41ccc4.js +1 -0
- package/assets/esri/core/workers/chunks/{4a89e120be142ab58a27.js → 7224b321606116fd691c.js} +1 -1
- package/assets/esri/core/workers/chunks/{888f188541f8bd68e33e.js → 72f1c3d97e7b9546c113.js} +1 -1
- package/assets/esri/core/workers/chunks/{a4518f25b9f8fe704286.js → 76e945da8f30d8641c3d.js} +4 -4
- package/assets/esri/core/workers/chunks/{257f17b3836a623a9dbe.js → 795b09ff7a8f4e91f4dc.js} +1 -1
- package/assets/esri/core/workers/chunks/{3ac7562ea90f91a9f30c.js → 82b2741e75c2e9b88252.js} +1 -1
- package/assets/esri/core/workers/chunks/{5d2e5774768d8f290343.js → b656e8fd374113523404.js} +1 -1
- package/assets/esri/core/workers/chunks/bccb9ac572bc093fb177.js +1 -0
- package/assets/esri/core/workers/chunks/{79dbfa2b9b332ca0002f.js → c52161b94c0fb071747e.js} +1 -1
- package/assets/esri/core/workers/chunks/db76958fd9f54b6bd324.js +1 -0
- package/assets/esri/core/workers/chunks/e61d7762b56e36dc7e8a.js +1 -0
- package/assets/esri/core/workers/chunks/{b30897952494a3e5b9fe.js → e69c2b613bd0210e25ba.js} +1 -1
- package/assets/esri/core/workers/chunks/f43e1e1a1b2eb737e00c.js +1 -0
- package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
- package/chunks/GlowComposition.glsl.js +46 -46
- package/chunks/ImageMaterial.glsl.js +1 -1
- package/chunks/ShadedColorMaterial.glsl.js +10 -10
- package/config.js +1 -1
- package/editing/templateUtils.js +1 -1
- package/interfaces.d.ts +167 -51
- package/intl/locale.js +1 -1
- package/kernel.js +1 -1
- package/layers/BingMapsLayer.js +1 -1
- package/layers/Lyr3DWasmPerSceneView.js +1 -1
- package/layers/PointCloudLayer.js +1 -1
- package/layers/SceneLayer.js +1 -1
- package/layers/VideoLayer.js +1 -1
- package/layers/graphics/sources/OGCFeatureSource.js +1 -1
- package/layers/mixins/SceneService.js +1 -1
- package/layers/ogc/ogcFeatureUtils.js +1 -1
- package/libs/parquet/parquet.js +1 -1
- package/package.json +1 -1
- package/renderers/support/RasterSymbolizer.js +1 -1
- package/rest/support/QueryMixin.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
- package/symbols/cim/cimAnalyzer.js +1 -1
- package/undoredo/support/ServiceVersionInfo.js +1 -1
- package/undoredo/support/Services.js +1 -1
- package/views/2d/LabelManager.js +1 -1
- package/views/2d/engine/webgl/FeatureTile.js +1 -1
- package/views/2d/engine/webgl/OverlayMultipoint.js +1 -1
- package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
- package/views/2d/engine/webgl/animations/store/AnimationStore.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/colorize/ColorizeTechnique.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityResources.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/drop-shadow/DropShadowTechnique.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/opacity/OpacityTechnique.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterHighlightTechnique.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/textureUtils.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/BaseRasterHighlightShader.js +5 -0
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/RasterRangeHighlightShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/RasterXYBandHighlightShader.js +5 -0
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/processor/math.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/stretch.js +1 -1
- package/views/2d/engine/webgl/textureUtils.js +1 -1
- package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
- package/views/2d/layers/features/FeatureContainer.js +1 -1
- package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
- package/views/3d/GroundView3D.js +1 -1
- package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
- package/views/3d/analysis/Slice/RotateManipulator.js +1 -1
- package/views/3d/analysis/images/Factory.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.js +1 -1
- package/views/3d/environment/EnvironmentManager.js +1 -1
- package/views/3d/environment/SceneViewEnvironment.js +1 -1
- package/views/3d/environment/SunLighting.js +1 -1
- package/views/3d/environment/VirtualLighting.js +1 -1
- package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
- package/views/3d/layers/DrapedSubView3D.js +1 -1
- package/views/3d/layers/FlowSubView3D.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
- package/views/3d/layers/MediaLayerView3D.js +1 -1
- package/views/3d/layers/PointCloudLayerView3D.js +1 -1
- package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
- package/views/3d/layers/SceneLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
- package/views/3d/layers/graphics/pipeline/rendering/FeaturePipelineRenderManager.js +1 -1
- package/views/3d/layers/graphics/wosrLoader.js +1 -1
- package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
- package/views/3d/support/QualityProfile.js +5 -0
- package/views/3d/support/QualitySettings.js +1 -1
- package/views/3d/support/StreamTextureCollection.js +1 -1
- package/views/3d/support/TextureCollection.js +1 -1
- package/views/3d/support/engineContent/marker.js +1 -1
- package/views/3d/support/engineContent/sdfPrimitives.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatOrderTexture.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/TileCompositor.js +1 -1
- package/views/3d/webgl-engine/Stage.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/core/material/MaterialBase.js +1 -1
- package/views/3d/webgl-engine/core/material/RenderTexture.js +1 -1
- package/views/3d/webgl-engine/effects/glow/GlowRenderNode.js +1 -1
- package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
- package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
- package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
- package/views/3d/webgl-engine/lib/AnimationTimeStep.js +1 -1
- package/views/3d/webgl-engine/lib/BasisUtil.js +1 -1
- package/views/3d/webgl-engine/lib/DDSUtil.js +1 -1
- package/views/3d/webgl-engine/lib/GLTextureMaterial.js +1 -1
- package/views/3d/webgl-engine/lib/ManagedTexture.js +5 -0
- package/views/3d/webgl-engine/lib/OrderIndependentTransparency.js +1 -1
- package/views/3d/webgl-engine/lib/RenderFeature.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
- package/views/3d/webgl-engine/lib/TextTextureFactory.js +1 -1
- package/views/3d/webgl-engine/lib/TextureRepository.js +1 -1
- package/views/3d/webgl-engine/lib/glUtil3D.js +1 -1
- package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/internal/WaterTextureRepository.js +1 -1
- package/views/3d/webgl-engine/materials/stippleTextureRepository.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/GroundView.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/support/layerViewUtils.js +1 -1
- package/views/webgl/Texture.js +1 -1
- package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
- package/widgets/Editor/SplitFeatureWorkflow.js +1 -1
- package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
- package/widgets/Editor/VisibleElements.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/Editor/workflowUtils.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
- package/widgets/FeatureTable/FieldColumn.js +1 -1
- package/widgets/FeatureTable/Grid/Column.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/TriangulatedMeasurementAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
- package/widgets/OrientedImageryViewer/services/ImageMeasurementService.js +1 -1
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
- package/widgets/smartMapping/SizeSlider.js +1 -1
- package/widgets/support/SelectionList/VisibleElements.js +1 -1
- package/widgets/support/SelectionList.js +1 -1
- package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/080268f78436a2f0d996.js +0 -1
- package/assets/esri/core/workers/chunks/18474c017ddacd1d3d2c.js +0 -1
- package/assets/esri/core/workers/chunks/27e6a6c5610007ac6a54.js +0 -1
- package/assets/esri/core/workers/chunks/5415fbcc7ed203fc5575.js +0 -1
- package/assets/esri/core/workers/chunks/631fb2e62e48f8be4051.js +0 -1
- package/assets/esri/core/workers/chunks/722da7a39a0ad9300752.js +0 -1
- package/assets/esri/core/workers/chunks/9595aabbaf411eceea1e.js +0 -1
- package/assets/esri/core/workers/chunks/a470f662d73aa8d5d90f.js +0 -1
- package/assets/esri/core/workers/chunks/a57751f3d78524c876cd.js +0 -1
- package/assets/esri/core/workers/chunks/ac366221e8636b60aee5.js +0 -1
- package/assets/esri/core/workers/chunks/dec336700cfb83abbbeb.js +0 -1
- package/views/3d/support/DisplayQualityProfile.js +0 -5
- package/views/3d/webgl-engine/lib/Texture.js +0 -5
- /package/views/3d/webgl-engine/lib/{ITexture.js → IManagedTexture.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1279],{60999:(t,e,r)=>{r.d(e,{DZ:()=>f,Ke:()=>S,Tj:()=>c,UT:()=>y,aD:()=>_,jJ:()=>u});var n=r(31635),a=r(69622),i=r(97768),s=r(74887),l=r(10107),o=r(64108);function u(t,e,r){return(0,s.Lx)(t.map((t,n)=>e.apply(r,[t,n])))}async function c(t,e,r){return(await(0,s.Lx)(t.map((t,n)=>e.apply(r,[t,n])))).map(t=>t.value)}function h(t){return{ok:!0,value:t}}function p(t){return{ok:!1,error:t}}async function S(t){if(null==t)return{ok:!1,error:new Error("no promise provided")};try{return h(await t)}catch(t){return p(t)}}async function f(t){try{return h(await t)}catch(t){return(0,s.QP)(t),p(t)}}function y(t,e){return new d(t,e)}let d=class extends a.A{get value(){return null!=(t=this._result)&&!0===t.ok?t.value:null;var t}get error(){return null!=(t=this._result)&&!1===t.ok?t.error:null;var t}get finished(){return null!=this._result}constructor(t,e){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,i.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:r}=this._abortController;this.promise=t(r),this.promise.then(t=>{this._result=h(t),this._cleanup()},t=>{this._result=p(t),this._cleanup()}),this._abortHandle=(0,s.u7)(e,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,i.xt)(this._abortHandle),this._abortController=null}};(0,n.Cg)([(0,l.MZ)()],d.prototype,"value",null),(0,n.Cg)([(0,l.MZ)()],d.prototype,"error",null),(0,n.Cg)([(0,l.MZ)()],d.prototype,"finished",null),(0,n.Cg)([(0,l.MZ)()],d.prototype,"promise",void 0),(0,n.Cg)([(0,l.MZ)()],d.prototype,"_result",void 0),d=(0,n.Cg)([(0,o.$)("esri.core.asyncUtils.ReactiveTask")],d);class _{constructor(){this._sequence=Promise.resolve()}async acquire(){let t;this._sequence=new Promise(e=>{t=this._sequence.then(()=>e,()=>e)});const e=await t;return{[Symbol.dispose]:e}}async run(t){const e={stack:[],error:void 0,hasError:!1};try{return(0,n.mS)(e,await this.acquire(),!1),await t()}catch(t){e.error=t,e.hasError=!0}finally{(0,n.hk)(e)}}}},85978:(t,e,r)=>{r.d(e,{A:()=>s});var n=r(87449),a=r(11221),i=r(33325);class s extends a.t1{constructor(t){super(),this.declaredClass="esri.layers.featureset.sources.Empty",this._maxProcessing=1e3,this._parent=t.parentfeatureset,this._databaseType=0}async _queryAll(){return a.An.features}async query(t){return a.An}async queryStat(t){return await this._manualStat(t.stat,t.field,t.limit??i.gO,t.abortSignal)}async canQueryAggregate(t){return!1}async queryAggregate(t){throw new n.dr("NeverReach")}async queryAttachments(){return[]}}},87817:(t,e,r)=>{r.r(e),r.d(e,{registerFunctions:()=>y});var n=r(85935),a=r(78502),i=r(78878),s=r(48938),l=r(87449),o=r(11221),u=r(33325),c=r(71163),h=r(21818);class p extends o.t1{constructor(t){super(),this.declaredClass="esri.arcade.featureset.actions.SpatialFilter",this._maxProcessing=40,this._parent=t.parentfeatureset,this._relation=t.relation,this._relationString=t.relationString??"",this._relationGeom=t.relationGeom}get _spatialFilter(){return{relation:"esriSpatialRelRelation"!==this._relation?this._relation:`esriSpatialRelRelation:${this._relationString}`,geometry:this._relationGeom}}async _queryAll(){return(await this.query({abortSignal:s._})).features}async query(t){await this._ensureLoaded();const e=await this._parent.query({...t,spatialFilter:this._spatialFilter});return(0,l.dZ)(t.abortSignal),{...e,spatialFilterApplied:null==t.spatialFilter,features:e.spatialFilterApplied?e.features:this._applySpatialFilter(e.features,t.abortSignal)}}async*_applySpatialFilter(t,e){for await(const r of t){(0,l.dZ)(e);const t=[];for(const e of r)await this._executeSpatialRelationTest(e)&&t.push(e);t.length>0&&(yield t)}}async queryStat(t){if(null!=t.spatialFilter)return{calculated:!1};const e=await this._parent.queryStat({...t,spatialFilter:this._spatialFilter});return e.calculated?e:null==t.where&&null==t.spatialFilter?this._manualStat(t.stat,t.field,t.limit??u.gO,t.abortSignal):{calculated:!1}}async canQueryAggregate(t){return null==t.spatialFilter&&this._parent.canQueryAggregate({...t,spatialFilter:this._spatialFilter})}async queryAggregate(t){if(null!=t.spatialFilter)throw new l.dr("NeverReach");return this._parent.queryAggregate({...t,spatialFilter:this._spatialFilter})}async _executeSpatialRelationTest(t){if(null==t.geometry)return!1;switch(this._relation){case"esriSpatialRelEnvelopeIntersects":{const e=(0,a.Yc)(this._relationGeom),r=(0,a.Yc)(t.geometry);return null!=e&&null!=r&&(0,c.C)("intersects",[e.toJSON(),r.toJSON()])}case"esriSpatialRelIntersects":return(0,c.C)("intersects",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelContains":return(0,c.C)("contains",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelOverlaps":return(0,c.C)("overlaps",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelWithin":return(0,c.C)("within",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelTouches":return(0,c.C)("touches",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelCrosses":return(0,c.C)("crosses",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelRelation":return(0,c.C)("relate",[this._relationGeom.toJSON(),t.geometry.toJSON(),this._relationString]);default:return(0,h.Ur)(this._relation),!1}}getFieldsIndex(){return this._parent.getFieldsIndex()}}var S=r(85978);function f(t){return async(e,r,s)=>{if((0,i.B)(s,2,2,e,r),null===(s=(0,i.C)(s))[0]&&null===s[1])return!1;if((0,i.m)(s[0])){if((0,i.h)(s[1]))return new p({parentfeatureset:s[0],relation:t,relationGeom:s[1]});if(null===s[1])return new S.A({parentfeatureset:s[0]});throw new n.D$(e,"InvalidParameter",r)}if((0,i.h)(s[0])){if((0,i.h)(s[1])){switch(t){case"esriSpatialRelEnvelopeIntersects":{const t=(0,a.Yc)(s[0]),e=(0,a.Yc)(s[1]);return null!=t&&null!=e&&(0,c.C)("intersects",[t.toJSON(),e.toJSON()])}case"esriSpatialRelIntersects":return(0,c.C)("intersects",[s[0].toJSON(),s[1].toJSON()]);case"esriSpatialRelContains":return(0,c.C)("contains",[s[0].toJSON(),s[1].toJSON()]);case"esriSpatialRelOverlaps":return(0,c.C)("overlaps",[s[0].toJSON(),s[1].toJSON()]);case"esriSpatialRelWithin":return(0,c.C)("within",[s[0].toJSON(),s[1].toJSON()]);case"esriSpatialRelTouches":return(0,c.C)("touches",[s[0].toJSON(),s[1].toJSON()]);case"esriSpatialRelCrosses":return(0,c.C)("crosses",[s[0].toJSON(),s[1].toJSON()])}throw new n.D$(e,"InvalidParameter",r)}if((0,i.m)(s[1]))return new p({parentfeatureset:s[1],relation:t,relationGeom:s[0]});if(null===s[1])return!1;throw new n.D$(e,"InvalidParameter",r)}if(null===s[0]){if((0,i.m)(s[1]))return new S.A({parentfeatureset:s[1]});if((0,i.h)(s[1])||null===s[1])return!1}throw new n.D$(e,"InvalidParameter",r)}}function y(t){"async"===t.mode&&(t.functions.intersects=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelIntersects"))},t.functions.envelopeintersects=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelEnvelopeIntersects"))},t.signatures.push({name:"envelopeintersects",min:2,max:2}),t.functions.contains=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelContains"))},t.functions.overlaps=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelOverlaps"))},t.functions.within=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelWithin"))},t.functions.touches=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelTouches"))},t.functions.crosses=function(e,r){return t.standardFunctionAsync(e,r,f("esriSpatialRelCrosses"))},t.functions.relate=function(e,r){return t.standardFunctionAsync(e,r,async(t,a,s)=>{if(s=(0,i.C)(s),(0,i.B)(s,3,3,e,r),(0,i.h)(s[0])&&(0,i.h)(s[1]))return(0,c.C)("relate",[s[0].toJSON(),s[1].toJSON(),(0,i.u)(s[2])]);if((0,i.h)(s[0])&&null===s[1])return!1;if((0,i.h)(s[1])&&null===s[0])return!1;if((0,i.m)(s[0])&&null===s[1])return new S.A({parentfeatureset:s[0]});if((0,i.m)(s[1])&&null===s[0])return new S.A({parentfeatureset:s[1]});if((0,i.m)(s[0])&&(0,i.h)(s[1]))return new p({parentfeatureset:s[0],relation:"esriSpatialRelRelation",relationGeom:s[1],relationString:(0,i.u)(s[2])});if((0,i.m)(s[1])&&(0,i.h)(s[0]))return new p({parentfeatureset:s[1],relation:"esriSpatialRelRelation",relationGeom:s[0],relationString:(0,i.u)(s[2])});if(null===s[0]&&null===s[1])return!1;throw new n.D$(e,"InvalidParameter",r)})})}}}]);
|
|
Binary file
|
|
@@ -2,52 +2,52 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ReadDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{Gamma as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{FloatPassUniform as r}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{FloatsPassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js";import{If as s,glsl as l}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{IntegerPassUniform as a}from"../views/3d/webgl-engine/core/shaderModules/IntegerPassUniform.js";import{Texture2DBindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as d}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{lodFactorsPresets as n}from"../views/3d/webgl-engine/effects/glow/GlowPresets.glsl.js";import{RayDistanceFalloffPassParameters as m,RayDistanceFalloff as c}from"../views/3d/webgl-engine/effects/raymarching/RayDistanceFalloff.glsl.js";import{ScreenSpacePassAtmosphere as p}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{ToneMapping as g}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as u}from"../views/webgl/ShaderBuilder.js";class x extends m{constructor(){super(...arguments),this.lodFactors=[0,0,0,0,0,0],this.glowLod=-1,this.dispersionWeight=1,this.distanceModifier=1e-4}}function w(m){const x=new u,w=x.fragment,{blurEnabled:f,tonemappingEnabled:v}=m;return x.include(p,{needUVs:!0,needEyeDirection:!0}),w.include(o),w.include(c),w.include(e),x.outputs.add("fragColor","vec4",0),x.outputs.add("fragEmission","vec3",1),w.include(g),w.uniforms.add(new d("colorTexture",e=>e.color),new d("emissionTexture",e=>e.emission),new t("depthTexture",e=>e.mainDepth),new r("distanceModifier",e=>e.distanceModifier)
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
5
|
+
import{ReadDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{Gamma as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{FloatPassUniform as r}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{FloatsPassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js";import{If as s,glsl as l}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{IntegerPassUniform as a}from"../views/3d/webgl-engine/core/shaderModules/IntegerPassUniform.js";import{Texture2DBindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as d}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{lodFactorsPresets as n}from"../views/3d/webgl-engine/effects/glow/GlowPresets.glsl.js";import{RayDistanceFalloffPassParameters as m,RayDistanceFalloff as c}from"../views/3d/webgl-engine/effects/raymarching/RayDistanceFalloff.glsl.js";import{ScreenSpacePassAtmosphere as p}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{ToneMapping as g}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as u}from"../views/webgl/ShaderBuilder.js";class x extends m{constructor(){super(...arguments),this.lodFactors=[0,0,0,0,0,0],this.glowLod=-1,this.dispersionWeight=1,this.distanceModifier=1e-4}}function w(m){const x=new u,w=x.fragment,{blurEnabled:f,tonemappingEnabled:v}=m;return x.include(p,{needUVs:!0,needEyeDirection:!0}),w.include(o),w.include(c),w.include(e),x.outputs.add("fragColor","vec4",0),x.outputs.add("fragEmission","vec3",1),w.include(g),w.uniforms.add(new d("colorTexture",e=>e.color),new d("emissionTexture",e=>e.emission)),f?(w.uniforms.add(new t("depthTexture",e=>e.mainDepth),new r("distanceModifier",e=>e.distanceModifier),new d("lodTexture0",e=>e.lodTexture0),new d("lodTexture1",e=>e.lodTexture1),new d("lodTexture2",e=>e.lodTexture2),new d("lodTexture3",e=>e.lodTexture3),new d("lodTexture4",e=>e.lodTexture4),new a("glowLod",e=>e.glowLod),new i("minDisperse",()=>n.minDisperse.presets,6),new i("maxDisperse",()=>n.maxDisperse.presets,6),new r("dispersionWeight",e=>e.dispersionWeight)).main.add(l`
|
|
6
|
+
vec4 color = texture(colorTexture, uv);
|
|
7
|
+
color = vec4(linearizeGamma(color.rgb), color.a);
|
|
8
|
+
|
|
9
|
+
vec3 lod0 = texture(emissionTexture, uv).rgb;
|
|
10
|
+
vec3 lod1 = texture(lodTexture0, uv).rgb;
|
|
11
|
+
vec3 lod2 = texture(lodTexture1, uv).rgb;
|
|
12
|
+
vec3 lod3 = texture(lodTexture2, uv).rgb;
|
|
13
|
+
vec3 lod4 = texture(lodTexture3, uv).rgb;
|
|
14
|
+
vec3 lod5 = texture(lodTexture4, uv).rgb;
|
|
15
|
+
|
|
16
|
+
float terrainDepth = -1.0;
|
|
17
|
+
float depthSample = depthFromTexture(depthTexture, uv);
|
|
18
|
+
if(depthSample < 1.0 && depthSample > 0.0){
|
|
19
|
+
vec3 cameraSpaceRay = normalize(eyeDir);
|
|
20
|
+
cameraSpaceRay /= cameraSpaceRay.z;
|
|
21
|
+
cameraSpaceRay *= linearizeDepth(depthSample);
|
|
22
|
+
terrainDepth = max(0.0, length(cameraSpaceRay));
|
|
23
|
+
}
|
|
24
|
+
vec3 rayDir = normalize(worldRay);
|
|
25
|
+
float dispersionByDistance = getDistanceFalloff(terrainDepth, rayDir, distanceModifier);
|
|
26
|
+
float dispersionPerPixel = dispersionWeight * dispersionByDistance;
|
|
27
|
+
|
|
28
|
+
float lodFactor0 = mix(minDisperse[0], maxDisperse[0], dispersionPerPixel);
|
|
29
|
+
float lodFactor1 = mix(minDisperse[1], maxDisperse[1], dispersionPerPixel);
|
|
30
|
+
float lodFactor2 = mix(minDisperse[2], maxDisperse[2], dispersionPerPixel);
|
|
31
|
+
float lodFactor3 = mix(minDisperse[3], maxDisperse[3], dispersionPerPixel);
|
|
32
|
+
float lodFactor4 = mix(minDisperse[4], maxDisperse[4], dispersionPerPixel);
|
|
33
|
+
float lodFactor5 = mix(minDisperse[5], maxDisperse[5], dispersionPerPixel);
|
|
34
|
+
|
|
35
|
+
vec3 emission = lodFactor0 * lod0;
|
|
36
|
+
emission += lodFactor1 * lod1;
|
|
37
|
+
emission += lodFactor2 * lod2;
|
|
38
|
+
emission += lodFactor3 * lod3;
|
|
39
|
+
emission += lodFactor4 * lod4;
|
|
40
|
+
emission += lodFactor5 * lod5;
|
|
41
|
+
|
|
42
|
+
// only for glow editor lod debugging
|
|
43
|
+
emission = glowLod == 0 ? lodFactor0 * lod0 : glowLod == 1 ? lodFactor1 * lod1 : glowLod == 2 ? lodFactor2 * lod2 : glowLod == 3 ? lodFactor3 * lod3 : glowLod == 4 ? lodFactor4 * lod4 : glowLod == 5 ? lodFactor5 * lod5 : emission;
|
|
44
|
+
|
|
45
|
+
fragEmission = emission;
|
|
46
|
+
// tonemapping is only applied to the emissive part since main color values are not in HDR.
|
|
47
|
+
${s(v,"emission = tonemapACES(emission);")}
|
|
48
|
+
|
|
49
|
+
fragColor = delinearizeGamma(vec4(color.rgb + emission.rgb, color.w));
|
|
50
|
+
`),x):(w.main.add(l`
|
|
51
51
|
vec4 color = texture(colorTexture, uv);
|
|
52
52
|
color = vec4(linearizeGamma(color.rgb), color.a);
|
|
53
53
|
|
|
@@ -7,7 +7,7 @@ import{SliceDraw as e}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.gls
|
|
|
7
7
|
forwardViewPosDepth((view * vec4(vpos, 1.0)).xyz);
|
|
8
8
|
vTexCoord = uv0;
|
|
9
9
|
gl_Position = transformPosition(proj, view, vpos);
|
|
10
|
-
${l(f,"gl_Position *= perspectiveDivide;")}`),w.add("vpos","vec3",{invariant:!0}),w.add("vTexCoord","vec2"),u.include(s),u.uniforms.add(new a("opacity",e=>e.opacity),new d("tex",e=>e.
|
|
10
|
+
${l(f,"gl_Position *= perspectiveDivide;")}`),w.add("vpos","vec3",{invariant:!0}),w.add("vTexCoord","vec2"),u.include(s),u.uniforms.add(new a("opacity",e=>e.opacity),new d("tex",e=>e.texture)).main.add(n`
|
|
11
11
|
discardBySlice(vpos);
|
|
12
12
|
discardByTerrainDepth();
|
|
13
13
|
${l(10===b,"fragColor = vec4(0, 0, 0, 1); return;")}
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{create as e}from"../core/libs/gl-matrix-2/factories/vec4f64.js";import{ScreenSizeScaling as o}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js";import{SliceDraw as r}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as i}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{terrainDepthTest as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import{ColorConversion as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as s,addViewNormal as a}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float3PassUniform as d}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{Float4PassUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{glsl as
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
`),
|
|
5
|
+
import{create as e}from"../core/libs/gl-matrix-2/factories/vec4f64.js";import{ScreenSizeScaling as o}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js";import{SliceDraw as r}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as i}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{terrainDepthTest as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import{ColorConversion as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as s,addViewNormal as a}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float3PassUniform as d}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{Float4PassUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{If as c,glsl as g}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{outputColorHighlightOID as m}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js";import{ShaderBuilder as v}from"../views/webgl/ShaderBuilder.js";function w(e){const w=new v;w.include(i),w.include(o,e),w.fragment.include(r,e),w.include(m,e),w.include(n,e);const{vertex:u,fragment:b}=w;return b.include(l),s(u,e),b.uniforms.add(new t("uColor",e=>e.color)),w.attributes.add("position","vec3"),w.varyings.add("vWorldPosition","vec3"),e.screenSizeEnabled&&w.attributes.add("offset","vec3"),e.shadingEnabled&&(a(u),w.attributes.add("normal","vec3"),w.varyings.add("vViewNormal","vec3"),b.uniforms.add(new d("shadingDirection",e=>e.shadingDirection)),b.uniforms.add(new t("shadedColor",e=>f(e.shadingTint,e.color)))),u.main.add(g`
|
|
6
|
+
vWorldPosition = ${e.screenSizeEnabled?g`screenSizeScaling(offset, position)`:g`position`};
|
|
7
|
+
${c(e.shadingEnabled,g`vec3 worldNormal = normal;
|
|
8
|
+
vViewNormal = (viewNormal * vec4(worldNormal, 1)).xyz;`)}
|
|
9
|
+
forwardViewPosDepth((view * vec4(vWorldPosition, 1.0)).xyz);
|
|
10
|
+
gl_Position = transformPosition(proj, view, vWorldPosition);
|
|
11
|
+
`),b.main.add(g`
|
|
12
12
|
discardBySlice(vWorldPosition);
|
|
13
13
|
discardByTerrainDepth();
|
|
14
|
-
${e.shadingEnabled?
|
|
14
|
+
${e.shadingEnabled?g`vec3 viewNormalNorm = normalize(vViewNormal);
|
|
15
15
|
float shadingFactor = 1.0 - clamp(-dot(viewNormalNorm, shadingDirection), 0.0, 1.0);
|
|
16
|
-
vec4 finalColor = mix(uColor, shadedColor, shadingFactor);`:
|
|
17
|
-
outputColorHighlightOID(finalColor, vWorldPosition, finalColor.rgb);`),
|
|
16
|
+
vec4 finalColor = mix(uColor, shadedColor, shadingFactor);`:g`vec4 finalColor = uColor;`}
|
|
17
|
+
outputColorHighlightOID(finalColor, vWorldPosition, finalColor.rgb);`),w}function f(e,o){const r=1-e[3],i=e[3]+o[3]*r;return 0===i?(u[3]=i,u):(u[0]=(e[0]*e[3]+o[0]*o[3]*r)/i,u[1]=(e[1]*e[3]+o[1]*o[3]*r)/i,u[2]=(e[2]*e[3]+o[2]*o[3]*r)/i,u[3]=o[3],u)}const u=e(),b=Object.freeze(Object.defineProperty({__proto__:null,build:w},Symbol.toStringTag,{value:"Module"}));export{b as S,w as b};
|
package/config.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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.0.0-next.
|
|
5
|
+
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.0.0-next.19";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
|
package/editing/templateUtils.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/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../core/Logger.js";import{getOrCreateMapValue as t}from"../core/MapUtils.js";import{throwIfAborted as r}from"../core/promiseUtils.js";import{addMaybe as n}from"../core/SetUtils.js";import{isGroupTemplateDefinition as i,isPresetTemplateDefinition as o,isFeatureTemplateDefinition as s}from"./sharedTemplates/templateDefinitions/templateDefinitionUtils.js";import{isSubtypeGroupLayer as a,isSubtypeSublayer as l,isFeatureLayer as p}from"../layers/support/layerUtils.js";import{querySharedTemplates as u}from"../rest/sharedTemplates/querySharedTemplates.js";import{getServices as f}from"../undoredo/support/Services.js";const c=()=>e.getLogger("esri.editing.templateUtils");function y(e){return null!=e&&"prototype"in e}function m(e){return g(e)&&!("definition"in e)}function d(e){return g(e)&&"definition"in e}function g(e){return null!=e&&"templateId"in e}function w(e){return d(e)&&"feature"===e?.type&&(null==e.definition||s(e.definition))}function
|
|
5
|
+
import e from"../core/Logger.js";import{getOrCreateMapValue as t}from"../core/MapUtils.js";import{throwIfAborted as r}from"../core/promiseUtils.js";import{addMaybe as n}from"../core/SetUtils.js";import{isGroupTemplateDefinition as i,isPresetTemplateDefinition as o,isFeatureTemplateDefinition as s}from"./sharedTemplates/templateDefinitions/templateDefinitionUtils.js";import{isSubtypeGroupLayer as a,isSubtypeSublayer as l,isFeatureLayer as p}from"../layers/support/layerUtils.js";import{querySharedTemplates as u}from"../rest/sharedTemplates/querySharedTemplates.js";import{getServices as f}from"../undoredo/support/Services.js";const c=()=>e.getLogger("esri.editing.templateUtils");function y(e){return null!=e&&"prototype"in e}function m(e){return g(e)&&!("definition"in e)}function d(e){return g(e)&&"definition"in e}function g(e){return null!=e&&"templateId"in e}function w(e){return d(e)&&"feature"===e?.type&&(null==e.definition||s(e.definition))}function A(e){return d(e)&&"group"===e?.type&&(null==e.definition||i(e.definition))}function h(e){return d(e)&&"preset"===e?.type&&(null==e.definition||o(e.definition))}function j(e){return d(e)&&null!=e?.definition}const v=e=>{if(null==e||"object"!=typeof e)return[];return[..."templates"in e&&Array.isArray(e.templates)?e.templates:[],..."types"in e&&Array.isArray(e.types)?e.types.flatMap(e=>e.templates):[]]};async function S({layers:e,view:t,signal:n,queryOptions:i}){if(null==t)return e.map(e=>({layer:e,templates:v(e)}));const o=await M(e,t);r(n);const s=new Map,a=Array.from(o).map(async e=>(await e.load(),await b({serviceInfo:e,out:s,signal:n,queryOptions:i}))),l=await Promise.allSettled(a);for(const r of l.filter(e=>"rejected"===e.status))c().warn("Failed to fetch shared templates for service. Will use standard templates if available.",r.reason);return e.map(e=>({layer:e,templates:s.get(e)??v(e)}))}async function b({serviceInfo:e,out:t,signal:n,queryOptions:i}){const{featureService:o,layersAndTables:s}=e,l=await q({featureService:o,layers:s.toArray(),signal:n,queryOptions:i});r(n);for(const[r,p]of l.entries())if(0!==p.length)if(a(r)){const e=O(p),n=[],i=e.get(1/0)??n;for(const o of r.sublayers){const r=e.get(o.subtypeCode)??n;t.set(o,[...r,...i])}}else t.set(r,p)}async function q({featureService:e,layers:r,signal:n,queryOptions:i}){if(!e.capabilities?.editing.supportsSharedTemplates)return new Map;const o=new Map(r.map(e=>[e.layerId,e])),s=await u({featureService:e,query:{layers:Array.from(o.keys()),...i},requestOptions:{signal:n}}),a=new Map;for(const l of s)for(const e of l.layerIds)o.has(e)&&t(a,o.get(e),()=>[]).push(l);return a}async function M(e,t){const r=f(t),i=new Set;for(const o of e)n(i,L(r,o));return await Promise.all(Array.from(i).map(e=>e.load())),i}function L(e,t){return l(t)&&t.parent?e.tablesAndLayersLookup.get(t.parent):p(t)?e.tablesAndLayersLookup.get(t):null}function O(e){const r=new Map;for(const n of e)t(r,n.subtypeCode??1/0,()=>[]).push(n);return r}export{v as getAllStandardFeatureTemplatesForLayer,L as getServiceInfoForLayer,S as getTemplatesForLayers,j as isLoadedSharedTemplate,w as isSharedFeatureTemplate,A as isSharedGroupTemplate,h as isSharedPresetTemplate,d as isSharedTemplate,m as isSharedTemplateMetadata,g as isSharedTemplateOrMetadata,y as isStandardFeatureTemplate};
|