{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/core/AsyncSequence.js","webpack:///./node_modules/@arcgis/core/views/interactive/snapping/featureSources/featureServiceSource/PendingFeatureTile.js","webpack:///./node_modules/@arcgis/core/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js","webpack:///./node_modules/@arcgis/core/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileCache.js","webpack:///./node_modules/@arcgis/core/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileStore.js","webpack:///./node_modules/@arcgis/core/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js"],"names":["super","arguments","this","updating","pending","s","t","push","promise","callback","length","_process","then","catch","shift","prototype","e","data","resolution","state","type","CREATED","alive","_gotoFetchCount","task","resume","FETCH_COUNT","FETCHED_COUNT","_gotoFetchFeatures","FETCH_FEATURES","FETCHED_FEATURES","_goToDone","DONE","featureCount","stateToString","previous","features","a","async","fetchCount","_gotoFetchedCount","ok","value","r","fetchFeatures","_gotoFetchedFeatures","finish","abort","extent","O","getLogger","S","tilesOfInterest","availability","pendingTiles","Map","pendingEdits","pendingEditsAbortController","AbortController","store","featureStore","geometryType","_get","i","_filterProperties","JSON","stringify","_set","filter","customParameters","tileInfo","tileSize","updatingHandles","_initializeFetchExtent","add","configuration","refresh","id","forEach","_deletePendingTile","clear","destroy","addedFeatures","updatedFeatures","deletedFeatures","reset","map","objectId","globalId","_lookupObjectIdByGlobalId","addPromise","processEdits","_queryFeaturesById","signal","_processPendingTiles","capabilities","query","supportsExtent","url","where","outSpatialReference","spatialReference","cacheHint","supportsCacheHint","fromJSON","warn","handles","numberOfFeatures","numFeatures","Array","from","values","debugInfo","storedTiles","_markTilesNotAlive","_createPendingTiles","_deletePendingTiles","_collectMissingTilesInfo","_setAvailability","coveredArea","fullArea","missingTiles","get","_createPendingTile","process","_verifyTileComplexity","prepend","_fetchCount","_fetchFeatures","_finishPendingTile","_ensureFetchAllCounts","getFeatureCount","_verifyVertexComplexity","_verifyFeatureDensity","minimumVerticesPerFeature","x","E","w","_updateAvailability","set","delete","_createCountQuery","timeout","o","n","_createFeaturesQuery","u","_setPagingParameters","c","exceededTransferLimit","d","_queryFeatures","num","concat","gdbVersion","timeExtent","globalIdField","objectIdField","Error","attributes","objectIds","supportsFormatPBF","_queryFeaturesPBF","_queryFeaturesJSON","sourceSpatialReference","_createBaseQuery","outFields","returnGeometry","supportsResultType","resultType","returnZ","returnM","geometry","supportsPagination","supportsMaxRecordCountFactor","tileMaxRecordCount","maxRecordCount","l","MAX_MAX_RECORD_COUNT_FACTOR","C","start","maxRecordCountFactor","Math","min","ceil","constructOnly","readOnly","_store","_byteSize","byteSize","_used","has","Symbol","iterator","v","maximumByteSize","MEGABYTES","tileBounds","tiles","refCounts","tileFeatureCounts","tmpBoundingRect","_referenceFeature","ADDED","_addTileStorage","Set","y","addMany","applyByteSizeLimit","_removeTileStorage","_processEditsDelete","_processEditsRefetch","size","_unreferenceFeature","REMOVED","removeManyById","hasZ","hasM","forEachInBounds","_createTileTree","_simplify","_collectMissingTiles","count","level","row","col","updateTileInfo","ExtrapolateOptions","POWER_OF_TWO","_tilesAreRelated","_populateChildren","floor","isLeaf","h","children","_remove","_mergeChildren","F","_purge","_forEachLeaf","_collectMissingTilesRecurse","info","hasChildren","addMissing","UNCHANGED","featureReferences","keys","reduce","lengths","coords","EventedAccessor","isInitializing","whenSetup","pendingApplyEdits","featureFetcher","queryEngine","timeInfo","fields","serviceInfo","watch","emit","_notifyUpdating","resolve","configure","_updateFeatureFetcherConfiguration","result","executeQueryForSnapping","point","distance","types","applyEdits","edits"],"mappings":"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","file":"js/chunk-2d0cebc2.2af44b97.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{_ as s}from\"../chunks/tslib.es6.js\";import t from\"./Accessor.js\";import{property as e}from\"./accessorSupport/decorators/property.js\";import{subclass as i}from\"./accessorSupport/decorators/subclass.js\";let r=class extends t{constructor(){super(...arguments),this.updating=!1,this.pending=[]}push(s,t){this.pending.push({promise:s,callback:t}),1===this.pending.length&&this._process()}_process(){if(!this.pending.length)return void(this.updating=!1);this.updating=!0;const s=this.pending[0];s.promise.then((t=>s.callback(t))).catch((()=>{})).then((()=>{this.pending.shift(),this._process()}))}};s([e()],r.prototype,\"updating\",void 0),r=s([i(\"esri.core.AsyncSequence\")],r);export{r as AsyncSequence};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{resultOrAbort as t}from\"../../../../../core/asyncUtils.js\";import{isNone as e}from\"../../../../../core/maybe.js\";import{createTask as s}from\"../../../../../core/promiseUtils.js\";import{create as a,fromExtent as r,intersects as E}from\"../../../../../geometry/support/aaBoundingRect.js\";class o{constructor(t,e){this.data=t,this.resolution=e,this.state={type:u.CREATED},this.alive=!0}process(t){switch(this.state.type){case u.CREATED:return this.state=this._gotoFetchCount(this.state,t),this.state.task.promise.then(t.resume,t.resume);case u.FETCH_COUNT:break;case u.FETCHED_COUNT:return this.state=this._gotoFetchFeatures(this.state,t),this.state.task.promise.then(t.resume,t.resume);case u.FETCH_FEATURES:break;case u.FETCHED_FEATURES:this.state=this._goToDone(this.state,t);case u.DONE:}return null}get debugInfo(){return{data:this.data,featureCount:this.featureCount,state:this.stateToString}}get featureCount(){switch(this.state.type){case u.CREATED:case u.FETCH_COUNT:return 0;case u.FETCHED_COUNT:return this.state.featureCount;case u.FETCH_FEATURES:return this.state.previous.featureCount;case u.FETCHED_FEATURES:return this.state.features.length;case u.DONE:return this.state.previous.features.length}}get stateToString(){switch(this.state.type){case u.CREATED:return\"created\";case u.FETCH_COUNT:return\"fetch-count\";case u.FETCHED_COUNT:return\"fetched-count\";case u.FETCH_FEATURES:return\"fetch-features\";case u.FETCHED_FEATURES:return\"fetched-features\";case u.DONE:return\"done\"}}_gotoFetchCount(e,a){return{type:u.FETCH_COUNT,previous:e,task:s((async e=>{const s=await t(a.fetchCount(this,e));this.state.type===u.FETCH_COUNT&&(this.state=this._gotoFetchedCount(this.state,s.ok?s.value:1/0))}))}}_gotoFetchedCount(t,e){return{type:u.FETCHED_COUNT,featureCount:e,previous:t}}_gotoFetchFeatures(e,a){return{type:u.FETCH_FEATURES,previous:e,task:s((async s=>{const r=await t(a.fetchFeatures(this,e.featureCount,s));this.state.type===u.FETCH_FEATURES&&(this.state=this._gotoFetchedFeatures(this.state,r.ok?r.value:[]))}))}}_gotoFetchedFeatures(t,e){return{type:u.FETCHED_FEATURES,previous:t,features:e}}_goToDone(t,e){return e.finish(this,t.features),{type:u.DONE,previous:t}}reset(){const t=this.state;switch(this.state={type:u.CREATED},t.type){case u.CREATED:case u.FETCHED_COUNT:case u.FETCHED_FEATURES:case u.DONE:break;case u.FETCH_COUNT:case u.FETCH_FEATURES:t.task.abort()}}intersects(t){return!(!e(t)&&this.data.extent)||(r(t,T),E(this.data.extent,T))}}var u;!function(t){t[t.CREATED=0]=\"CREATED\",t[t.FETCH_COUNT=1]=\"FETCH_COUNT\",t[t.FETCHED_COUNT=2]=\"FETCHED_COUNT\",t[t.FETCH_FEATURES=3]=\"FETCH_FEATURES\",t[t.FETCHED_FEATURES=4]=\"FETCHED_FEATURES\",t[t.DONE=5]=\"DONE\"}(u||(u={}));const T=a();export{o as PendingFeatureTile,u as StateType};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../../chunks/tslib.es6.js\";import{equals as t}from\"../../../../../core/arrayUtils.js\";import{AsyncSequence as i}from\"../../../../../core/AsyncSequence.js\";import{HandleOwner as s}from\"../../../../../core/HandleOwner.js\";import{makeHandle as r}from\"../../../../../core/handleUtils.js\";import o from\"../../../../../core/Logger.js\";import{isSome as n,isNone as a,unwrap as l}from\"../../../../../core/maybe.js\";import{createTask as u,throwIfAbortError as c}from\"../../../../../core/promiseUtils.js\";import{sync as d}from\"../../../../../core/reactiveUtils.js\";import{property as h}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import{subclass as p}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import f from\"../../../../../geometry/Extent.js\";import{toExtent as y}from\"../../../../../geometry/support/aaBoundingRect.js\";import{unquantizeOptimizedFeatureSet as g,convertFromFeatureSet as m}from\"../../../../../layers/graphics/featureConversionUtils.js\";import{OptimizedFeatureSetParserContext as _}from\"../../../../../rest/query/operations/pbfOptimizedFeatureSet.js\";import{executeQueryForExtent as F,executeQueryPBF as b,executeQuery as T}from\"../../../../../rest/query/operations/query.js\";import v from\"../../../../../rest/support/Query.js\";import{StateType as P,PendingFeatureTile as I}from\"./PendingFeatureTile.js\";const O=o.getLogger(\"esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTiledFetcher\");let S=class extends s{constructor(e){super(e),this.tilesOfInterest=[],this.availability=0,this.pendingTiles=new Map,this.pendingEdits=new i,this.pendingEditsAbortController=new AbortController}get minimumVerticesPerFeature(){var e;switch(null==(e=this.store)?void 0:e.featureStore.geometryType){case\"esriGeometryPoint\":case\"esriGeometryMultipoint\":return 1;case\"esriGeometryPolygon\":return 4;case\"esriGeometryPolyline\":return 2}}set filter(e){const t=this._get(\"filter\"),i=this._filterProperties(e);JSON.stringify(t)!==JSON.stringify(i)&&this._set(\"filter\",i)}set customParameters(e){const t=this._get(\"customParameters\");JSON.stringify(t)!==JSON.stringify(e)&&this._set(\"customParameters\",e)}get configuration(){return{filter:this.filter,customParameters:this.customParameters,tileInfo:this.tileInfo,tileSize:this.tileSize}}set tileInfo(e){const t=this._get(\"tileInfo\");t!==e&&(n(e)&&n(t)&&JSON.stringify(e)===JSON.stringify(t)||(this._set(\"tileInfo\",e),this.store.tileInfo=e))}set tileSize(e){this._get(\"tileSize\")!==e&&this._set(\"tileSize\",e)}get updating(){return this.updatingHandles.updating||this.pendingEdits.updating}initialize(){this._initializeFetchExtent(),this.updatingHandles.add((()=>this.configuration),(()=>this.refresh())),this.updatingHandles.add((()=>this.tilesOfInterest),((e,i)=>{t(e,i,(({id:e},{id:t})=>e===t))||this._process()}),d)}destroy(){this.pendingTiles.forEach((e=>this._deletePendingTile(e))),this.pendingTiles.clear(),this.store.destroy(),this.tilesOfInterest.length=0,this.pendingEditsAbortController.abort(),this.pendingEditsAbortController=null}refresh(){this.store.refresh(),this.pendingTiles.forEach((e=>this._deletePendingTile(e))),this._process()}applyEdits(e){this.pendingEdits.push(e,(async e=>{if(0===e.addedFeatures.length&&0===e.updatedFeatures.length&&0===e.deletedFeatures.length)return;for(const[,i]of this.pendingTiles)i.reset();const t={...e,deletedFeatures:e.deletedFeatures.map((({objectId:e,globalId:t})=>e&&-1!==e?e:this._lookupObjectIdByGlobalId(t)))};await this.updatingHandles.addPromise(this.store.processEdits(t,((e,t)=>this._queryFeaturesById(e,t)),this.pendingEditsAbortController.signal)),this._processPendingTiles()}))}_initializeFetchExtent(){if(!this.capabilities.query.supportsExtent)return;const e=u((async e=>{try{var t;const i=await F(this.url,new v({where:\"1=1\",outSpatialReference:this.spatialReference,cacheHint:!!this.capabilities.query.supportsCacheHint||void 0}),{query:this.configuration.customParameters,signal:e});this.store.extent=f.fromJSON(null==(t=i.data)?void 0:t.extent)}catch(i){c(i),O.warn(\"Failed to fetch data extent\",i)}}));this.updatingHandles.addPromise(e.promise.then((()=>this._process()))),this.handles.add(r((()=>e.abort())))}get debugInfo(){return{numberOfFeatures:this.store.featureStore.numFeatures,tilesOfInterest:this.tilesOfInterest,pendingTiles:Array.from(this.pendingTiles.values()).map((e=>e.debugInfo)),storedTiles:this.store.debugInfo}}_process(){this._markTilesNotAlive(),this._createPendingTiles(),this._deletePendingTiles(),this._processPendingTiles()}_markTilesNotAlive(){for(const[,e]of this.pendingTiles)e.alive=!1}_createPendingTiles(){const e=this._collectMissingTilesInfo();if(this._setAvailability(a(e)?1:e.coveredArea/e.fullArea),!a(e))for(const{data:t,resolution:i}of e.missingTiles){const e=this.pendingTiles.get(t.id);e?(e.resolution=i,e.alive=!0):this._createPendingTile(t,i)}}_collectMissingTilesInfo(){let e=null;for(let t=this.tilesOfInterest.length-1;t>=0;t--){const i=this.tilesOfInterest[t],s=this.store.process(i,((e,t)=>this._verifyTileComplexity(e,t)));a(e)?e=s:e.prepend(s)}return e}_deletePendingTiles(){for(const[,e]of this.pendingTiles)e.alive||this._deletePendingTile(e)}_processPendingTiles(){const e={fetchCount:(e,t)=>this._fetchCount(e,t),fetchFeatures:(e,t,i)=>this._fetchFeatures(e,t,i),finish:(e,t)=>this._finishPendingTile(e,t),resume:()=>this._processPendingTiles()};if(this._ensureFetchAllCounts(e))for(const[,t]of this.pendingTiles)this._verifyTileComplexity(this.store.getFeatureCount(t.data),t.resolution)&&this.updatingHandles.addPromise(t.process(e))}_verifyTileComplexity(e,t){return this._verifyVertexComplexity(e)&&this._verifyFeatureDensity(e,t)}_verifyVertexComplexity(e){return e*this.minimumVerticesPerFeature{var o;e===r.attributes[t]&&(s=null!=(o=r.objectId)?o:r.attributes[i])})),a(s))throw new Error(`Expected to find a feature with globalId ${e}`);return s}_queryFeaturesById(e,t){const i=this._createFeaturesQuery(null);return i.objectIds=e,this._queryFeatures(i,t)}_queryFeatures(e,t){return this.capabilities.query.supportsFormatPBF?this._queryFeaturesPBF(e,t):this._queryFeaturesJSON(e,t)}async _queryFeaturesPBF(e,t){const{sourceSpatialReference:i}=this,{data:s}=await b(this.url,e,new _({sourceSpatialReference:i}),{query:this.configuration.customParameters,timeout:j,signal:t});return g(s)}async _queryFeaturesJSON(e,t){const{sourceSpatialReference:i}=this,{data:s}=await T(this.url,e,i,{query:this.configuration.customParameters,timeout:j,signal:t});return m(s,this.objectIdField)}_createCountQuery(e){const t=this._createBaseQuery(e);return this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0),t}_createFeaturesQuery(e){const t=this._createBaseQuery(e);return t.outFields=this.globalIdField?[this.globalIdField,this.objectIdField]:[this.objectIdField],t.returnGeometry=!0,n(e)&&(this.capabilities.query.supportsResultType?t.resultType=\"tile\":this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0)),t}_createBaseQuery(e){const t=new v({returnZ:!1,returnM:!1,geometry:n(this.tileInfo)&&n(e)?y(e.data.extent,this.tileInfo.spatialReference):void 0}),i=this.configuration.filter;return n(i)&&(t.where=i.where,t.gdbVersion=i.gdbVersion,t.timeExtent=i.timeExtent),t.outSpatialReference=this.spatialReference,t}_setPagingParameters(e,t,i){if(!this.capabilities.query.supportsPagination)return!1;const{supportsMaxRecordCountFactor:s,supportsCacheHint:r,tileMaxRecordCount:o,maxRecordCount:n,supportsResultType:a}=this.capabilities.query,l=s?v.MAX_MAX_RECORD_COUNT_FACTOR:1,u=l*((a||r)&&o?o:n||C);return e.start=t,s?(e.maxRecordCountFactor=Math.min(l,Math.ceil(i/u)),e.num=Math.min(i,e.maxRecordCountFactor*u)):e.num=Math.min(i,u),!0}};e([h({constructOnly:!0})],S.prototype,\"url\",void 0),e([h({constructOnly:!0})],S.prototype,\"objectIdField\",void 0),e([h({constructOnly:!0})],S.prototype,\"globalIdField\",void 0),e([h({constructOnly:!0})],S.prototype,\"capabilities\",void 0),e([h({constructOnly:!0})],S.prototype,\"sourceSpatialReference\",void 0),e([h({constructOnly:!0})],S.prototype,\"spatialReference\",void 0),e([h({constructOnly:!0})],S.prototype,\"store\",void 0),e([h({readOnly:!0})],S.prototype,\"minimumVerticesPerFeature\",null),e([h()],S.prototype,\"filter\",null),e([h()],S.prototype,\"customParameters\",null),e([h({readOnly:!0})],S.prototype,\"configuration\",null),e([h()],S.prototype,\"tileInfo\",null),e([h()],S.prototype,\"tileSize\",null),e([h()],S.prototype,\"tilesOfInterest\",void 0),e([h({readOnly:!0})],S.prototype,\"updating\",null),e([h({readOnly:!0})],S.prototype,\"availability\",void 0),S=e([p(\"esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTiledFetcher\")],S);const C=2e3,j=6e5,x=1e6,E=25,w=1;export{S as FeatureServiceTiledFetcher};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nclass t{constructor(){this._store=new Map,this._byteSize=0}set(t,e){this.delete(t),this._store.set(t,e),this._byteSize+=e.byteSize}delete(t){const e=this._store.get(t);return!!this._store.delete(t)&&(this._byteSize-=e.byteSize,!0)}get(t){return this._used(t),this._store.get(t)}has(t){return this._used(t),this._store.has(t)}clear(){this._store.clear()}applyByteSizeLimit(t,e){for(const[s,r]of this._store){if(this._byteSize<=t)break;this.delete(s),e(r)}}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}_used(t){const e=this._store.get(t);e&&(this._store.delete(t),this._store.set(t,e))}}export{t as FeatureServiceTileCache};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../../chunks/tslib.es6.js\";import t from\"../../../../../core/Accessor.js\";import{ByteSizeUnit as s,estimateAttributesObjectSize as i,estimateFixedArraySize as r}from\"../../../../../core/byteSizeEstimations.js\";import{isNone as o,isSome as n}from\"../../../../../core/maybe.js\";import{property as l}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/arrayUtils.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import{subclass as a}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import{create as c,intersects as h,fromExtent as u,area as d}from\"../../../../../geometry/support/aaBoundingRect.js\";import{getBoundsOptimizedGeometry as f}from\"../../../../../layers/graphics/featureConversionUtils.js\";import{BoundsStore as p}from\"../../../../../layers/graphics/data/BoundsStore.js\";import m from\"../../../../../layers/support/TileInfo.js\";import{executeQueryForCount as g}from\"../../../../../rest/query/operations/query.js\";import{FeatureServiceTileCache as _}from\"./FeatureServiceTileCache.js\";let v=class extends t{constructor(e){super(e),this.tileInfo=null,this.extent=null,this.maximumByteSize=10*s.MEGABYTES,this.tileBounds=new p,this.tiles=new _,this.refCounts=new Map,this.tileFeatureCounts=new Map,this.tmpBoundingRect=c()}add(e,t){const s=[];for(const i of t)this._referenceFeature(i.objectId)===w.ADDED&&s.push(i);this._addTileStorage(e,new Set(t.map((({objectId:e})=>e))),y(t)),this.featureStore.addMany(s),this.tiles.applyByteSizeLimit(this.maximumByteSize,(e=>this._removeTileStorage(e)))}destroy(){this.clear(),this.tileFeatureCounts.clear()}clear(){this.featureStore.clear(),this.tileBounds.clear(),this.tiles.clear(),this.refCounts.clear()}refresh(){this.clear(),this.tileFeatureCounts.clear()}processEdits(e,t,s){return this._processEditsDelete(e.deletedFeatures.concat(e.updatedFeatures)),this._processEditsRefetch(e.addedFeatures.concat(e.updatedFeatures),t,s)}_addTileStorage(e,t,s){this.tiles.set(e.id,new S(e,t,s)),this.tileBounds.set(e.id,e.extent),this.tileFeatureCounts.set(e.id,t.size)}_remove({id:e}){const t=this.tiles.get(e);t&&this._removeTileStorage(t)}_removeTileStorage(e){const t=[];for(const i of e.objectIds)this._unreferenceFeature(i)===w.REMOVED&&t.push(i);this.featureStore.removeManyById(t);const s=e.data.id;this.tiles.delete(s),this.tileBounds.delete(s)}_processEditsDelete(e){this.featureStore.removeManyById(e);for(const[,t]of this.tiles){for(const s of e)t.objectIds.delete(s);this.tileFeatureCounts.set(t.data.id,t.objectIds.size)}for(const t of e)this.refCounts.delete(t)}async _processEditsRefetch(e,t,s){const i=(await t(e,s)).features,{hasZ:r,hasM:n}=this.featureStore;for(const l of i){const e=f(this.tmpBoundingRect,l.geometry,r,n);o(e)||this.tileBounds.forEachInBounds(e,(e=>{const t=this.tiles.get(e);this.featureStore.add(l),t.objectIds.has(l.objectId)||(t.objectIds.add(l.objectId),this._referenceFeature(l.objectId),this.tileFeatureCounts.set(t.data.id,t.objectIds.size))}))}}process(e,t=(()=>!0)){if(o(this.tileInfo)||!e.extent||n(this.extent)&&!h(u(this.extent,this.tmpBoundingRect),e.extent))return new I(e);if(this.tiles.has(e.id))return new I(e);const s=this._createTileTree(e,this.tileInfo);return this._simplify(s,t,null,0,1),this._collectMissingTiles(e,s,this.tileInfo)}get debugInfo(){return Array.from(this.tiles.values()).map((({data:e})=>({data:e,featureCount:this.tileFeatureCounts.get(e.id)||0})))}getFeatureCount(e){const t=this.tileFeatureCounts.get(e.id);return null!=t?t:0}async fetchCount(e,t,s,i){const r=this.tileFeatureCounts.get(e.id);if(null!=r)return r;const o=await g(t,s,i);return this.tileFeatureCounts.set(e.id,o.data.count),o.data.count}_createTileTree(e,t){const s=new T(e.level,e.row,e.col);return t.updateTileInfo(s,m.ExtrapolateOptions.POWER_OF_TWO),this.tileBounds.forEachInBounds(e.extent,(i=>{const r=this.tiles.get(i).data;this._tilesAreRelated(e,r)&&this._populateChildren(s,r,t,this.tileFeatureCounts.get(r.id)||0)})),s}_tilesAreRelated(e,t){if(!e||!t)return!1;if(e.level===t.level)return e.row===t.row&&e.col===t.col;const s=e.level>r,l=t.col>>r,a=e.row<<1,c=l-(e.col<<1)+(o-a<<1),h=e.children[c];if(n(h))this._populateChildren(h,t,s,i);else{const r=new T(e.level+1,o,l);s.updateTileInfo(r,m.ExtrapolateOptions.POWER_OF_TWO),e.children[c]=r,this._populateChildren(r,t,s,i)}}_simplify(e,t,s,i,r){const o=r*r;if(e.isLeaf)return t(this.getFeatureCount(e),r)?0:(this._remove(e),n(s)&&(s.children[i]=null),o);const l=r/2,a=l*l;let c=0;for(let h=0;h{const i=this.tiles.get(e.id);if(i){s+=i.byteSize;for(const e of i.objectIds)t.has(e)||(t.add(e),this._referenceFeature(e));this._remove(e)}})),this._addTileStorage(e,t,s),e.isLeaf=!0,e.children[0]=e.children[1]=e.children[2]=e.children[3]=null,this.tileFeatureCounts.set(e.id,t.size)}_forEachLeaf(e,t){for(const s of e.children)o(s)||(s.isLeaf?t(s):this._forEachLeaf(s,t))}_purge(e){if(!o(e))if(e.isLeaf)this._remove(e);else for(let t=0;t>1),(e.col<<1)+(1&r),i):this._collectMissingTilesRecurse(s,t,i)}}_referenceFeature(e){const t=(this.refCounts.get(e)||0)+1;return this.refCounts.set(e,t),1===t?w.ADDED:w.UNCHANGED}_unreferenceFeature(e){const t=(this.refCounts.get(e)||0)-1;return 0===t?(this.refCounts.delete(e),w.REMOVED):(t>0&&this.refCounts.set(e,t),w.UNCHANGED)}get test(){return{tiles:Array.from(this.tiles.values()).map((e=>`${e.data.id}:[${Array.from(e.objectIds)}]`)),featureReferences:Array.from(this.refCounts.keys()).map((e=>`${e}:${this.refCounts.get(e)}`))}}};function y(e){return e.reduce(((e,t)=>e+C(t)),0)}function C(e){return 32+E(e.geometry)+i(e.attributes)}function E(e){if(o(e))return 0;const t=r(e.lengths,4);return 32+r(e.coords,8)+t}e([l({constructOnly:!0})],v.prototype,\"featureStore\",void 0),e([l()],v.prototype,\"tileInfo\",void 0),e([l()],v.prototype,\"extent\",void 0),e([l()],v.prototype,\"maximumByteSize\",void 0),v=e([a(\"esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTileStore\")],v);class S{constructor(e,t,s){this.data=e,this.objectIds=t,this.byteSize=s}}class T{constructor(e,t,s){this.level=e,this.row=t,this.col=s,this.isLeaf=!1,this.extent=null,this.children=[null,null,null,null]}get hasChildren(){return!this.isLeaf&&(n(this.children[0])||n(this.children[1])||n(this.children[2])||n(this.children[3]))}}class I{constructor(e,t=[]){this.missingTiles=t,this.fullArea=0,this.coveredArea=0,this.fullArea=d(e.extent),this.coveredArea=this.fullArea}prepend(e){this.missingTiles=e.missingTiles.concat(this.missingTiles),this.coveredArea+=e.coveredArea,this.fullArea+=e.fullArea}}class j{constructor(e,t,s){this.tileInfo=e,this.extent=null,this.info=new I(t),n(s)&&(this.extent=u(s))}addMissing(e,t,s,i){const r={id:null,level:e,row:t,col:s};this.tileInfo.updateTileInfo(r,m.ExtrapolateOptions.POWER_OF_TWO),!n(r.extent)||n(this.extent)&&!h(this.extent,r.extent)||(this.info.missingTiles.push({data:r,resolution:i}),this.info.coveredArea-=d(r.extent))}}const F=.18751;var w;!function(e){e[e.ADDED=0]=\"ADDED\",e[e.REMOVED=1]=\"REMOVED\",e[e.UNCHANGED=2]=\"UNCHANGED\"}(w||(w={}));export{v as FeatureServiceTileStore,I as ProcessResult};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../../chunks/tslib.es6.js\";import t from\"../../../../../core/Evented.js\";import i from\"../../../../../core/Handles.js\";import{isSome as r}from\"../../../../../core/maybe.js\";import{createDeferred as s,throwIfAborted as a,whenOrAbort as n}from\"../../../../../core/promiseUtils.js\";import{whenNotOnce as o}from\"../../../../../core/watchUtils.js\";import{property as p}from\"../../../../../core/accessorSupport/decorators/property.js\";import\"../../../../../core/arrayUtils.js\";import\"../../../../../core/has.js\";import\"../../../../../core/accessorSupport/ensureType.js\";import{subclass as u}from\"../../../../../core/accessorSupport/decorators/subclass.js\";import l from\"../../../../../geometry/SpatialReference.js\";import c from\"../../../../../layers/graphics/data/FeatureStore.js\";import d from\"../../../../../layers/graphics/data/QueryEngine.js\";import h from\"../../../../../layers/support/TileInfo.js\";import f from\"../../../../../layers/support/TimeInfo.js\";import m from\"../../../../../rest/support/Query.js\";import{FeatureServiceTiledFetcher as g}from\"./FeatureServiceTiledFetcher.js\";import{FeatureServiceTileStore as y}from\"./FeatureServiceTileStore.js\";import{WatchUpdatingTracking as S}from\"../../../../support/WatchUpdatingTracking.js\";let w=class extends t.EventedAccessor{constructor(){super(...arguments),this.isInitializing=!0,this.whenSetup=s(),this.handles=new i,this.updatingHandles=new S,this.pendingApplyEdits=new Map}get updating(){return this.featureFetcher.updating||this.isInitializing||this.updatingHandles.updating}destroy(){this.featureFetcher.destroy(),this.queryEngine.destroy(),this.featureStore.clear(),this.handles.destroy()}async setup(e){const{geometryType:t,objectIdField:i,timeInfo:r,fields:s}=e.serviceInfo;return this.featureStore=new c({...e.serviceInfo,hasZ:!1,hasM:!1}),this.queryEngine=new d({spatialReference:e.spatialReference,featureStore:this.featureStore,geometryType:t,fields:s,hasZ:!1,hasM:!1,objectIdField:i,timeInfo:r?f.fromJSON(r):null}),this.featureFetcher=new g({store:new y({featureStore:this.featureStore}),url:e.serviceInfo.url,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:l.fromJSON(e.spatialReference),sourceSpatialReference:l.fromJSON(e.serviceInfo.spatialReference)}),this.handles.add([this.featureFetcher.watch(\"availability\",(e=>this.emit(\"notify-availability\",{availability:e})),!0),this.watch(\"updating\",(()=>this._notifyUpdating()))]),this.whenSetup.resolve(),this.isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this.updatingHandles.addPromise(this.whenSetup.promise),this._updateFeatureFetcherConfiguration(e),{result:{}}}async fetchCandidates(e,t){await this.whenSetup.promise,a(t);return{result:await this.queryEngine.executeQueryForSnapping({point:e.point,distance:e.distance,types:e.types,query:r(e.filter)?e.filter:{where:\"1=1\"}},r(t)?t.signal:null)}}async updateTiles(e,t){return await this.updatingHandles.addPromise(this.whenSetup.promise),a(t),this.featureFetcher.tileSize=e.tileSize,this.featureFetcher.tilesOfInterest=e.tiles,this.featureFetcher.tileInfo=r(e.tileInfo)?h.fromJSON(e.tileInfo):null,{result:{}}}async refresh(e,t){return await this.updatingHandles.addPromise(this.whenSetup.promise),a(t),this.featureFetcher.refresh(),{result:{}}}async whenNotUpdating(e,t){return await this.updatingHandles.addPromise(this.whenSetup.promise),a(t),await n(o(this,\"updating\"),t),{result:{}}}async getDebugInfo(e,t){return a(t),{result:this.featureFetcher.debugInfo}}async beginApplyEdits(e,t){this.updatingHandles.addPromise(this.whenSetup.promise),a(t);const i=s();return this.pendingApplyEdits.set(e.id,i),this.featureFetcher.applyEdits(i.promise),this.updatingHandles.addPromise(i.promise),{result:{}}}async endApplyEdits(e,t){const i=this.pendingApplyEdits.get(e.id);return i&&i.resolve(e.edits),a(t),{result:{}}}_updateFeatureFetcherConfiguration(e){this.featureFetcher.filter=r(e.filter)?m.fromJSON(e.filter):null,this.featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit(\"notify-updating\",{updating:this.updating})}};function F(){return new w}e([p({readOnly:!0})],w.prototype,\"updating\",null),e([p()],w.prototype,\"isInitializing\",void 0),w=e([u(\"esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker\")],w);export{w as FeatureServiceSnappingSourceWorker,F as default};\n"],"sourceRoot":""}