{"version":3,"sources":["node_modules/@arcgis/core/views/2d/layers/features/support/Tile.js","node_modules/@arcgis/core/views/2d/layers/features/support/TileStore.js"],"sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport t from \"../../../../../core/ArrayPool.js\";\nimport e from \"../../../../../geometry/Extent.js\";\nimport { create as i } from \"../../../../../geometry/support/aaBoundingRect.js\";\nimport s from \"../../../../../rest/support/QuantizationParameters.js\";\nimport o from \"../../../tiling/TileKey.js\";\nclass n {\n constructor(t, e) {\n this.key = new o(0, 0, 0, 0), this.bounds = i(), this.objectIds = new Set(), this.key.set(e);\n const s = t.getLODInfoAt(this.key);\n this.tileInfoView = t, this.tileInfoView.getTileBounds(this.bounds, this.key, !0), this.resolution = s.resolution, this.scale = s.scale, this.level = s.level;\n }\n get id() {\n return this.key.id;\n }\n get extent() {\n return e.fromBounds(this.bounds, this.tileInfoView.tileInfo.spatialReference);\n }\n get transform() {\n return {\n originPosition: \"upperLeft\",\n scale: [this.resolution, this.resolution],\n translate: [this.bounds[0], this.bounds[3]]\n };\n }\n createChildTiles() {\n const e = this.key.getChildKeys(),\n i = t.acquire();\n for (let t = 0; t < e.length; t++) i[t] = new n(this.tileInfoView, e[t]);\n return i;\n }\n getQuantizationParameters() {\n return s.fromJSON({\n mode: \"view\",\n originPosition: \"upperLeft\",\n tolerance: this.resolution,\n extent: {\n xmin: this.bounds[0],\n ymin: this.bounds[1],\n xmax: this.bounds[2],\n ymax: this.bounds[3],\n spatialReference: this.tileInfoView.tileInfo.spatialReference\n }\n });\n }\n}\nexport { n as Tile };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport e from \"../../../../../core/Evented.js\";\nimport has from \"../../../../../core/has.js\";\nimport { r as t } from \"../../../../../chunks/rbush.js\";\nimport { Tile as s } from \"./Tile.js\";\nimport i from \"../../../tiling/TileCoverage.js\";\nimport o from \"../../../tiling/TileKey.js\";\nconst h = {\n added: [],\n removed: []\n },\n n = new Set(),\n r = new o(0, 0, 0, 0);\nclass d extends e {\n constructor(e) {\n super(), this._tiles = new Map(), this._index = t(9, has(\"esri-csp-restrictions\") ? e => ({\n minX: e.bounds[0],\n minY: e.bounds[1],\n maxX: e.bounds[2],\n maxY: e.bounds[3]\n }) : [\".bounds[0]\", \".bounds[1]\", \".bounds[2]\", \".bounds[3]\"]), this.tiles = [], this.tileScheme = e;\n }\n destroy() {\n this.clear();\n }\n clear() {\n this.tiles.length = 0, this._tiles.clear(), this._index.clear();\n }\n has(e) {\n return this._tiles.has(e);\n }\n get(e) {\n return this._tiles.get(e);\n }\n boundsIntersections(e) {\n return this._index.search({\n minX: e[0],\n minY: e[1],\n maxX: e[2],\n maxY: e[3]\n });\n }\n updateTiles(e) {\n const t = {\n added: [],\n removed: []\n };\n for (const i of e.added) if (!this.has(i)) {\n const e = new s(this.tileScheme, i);\n this._tiles.set(i, e), this._index.insert(e), t.added.push(e);\n }\n for (const s of e.removed) if (this.has(s)) {\n const e = this.get(s);\n this._tiles.delete(s), this._index.remove(e), t.removed.push(e);\n }\n this.tiles.length = 0, this._tiles.forEach(e => this.tiles.push(e)), (t.added.length || t.removed.length) && this.emit(\"update\", t);\n }\n setViewState(e) {\n const t = this.tileScheme.getTileCoverage(e, 0);\n if (!t) return;\n const {\n spans: o,\n lodInfo: d\n } = t,\n {\n level: l\n } = d;\n if (o.length > 0) for (const {\n row: i,\n colFrom: a,\n colTo: m\n } of o) for (let e = a; e <= m; e++) {\n const t = r.set(l, i, d.normalizeCol(e), d.getWorldForColumn(e)).id;\n if (n.add(t), !this.has(t)) {\n const e = new s(this.tileScheme, t);\n this._tiles.set(t, e), this._index.insert(e), this.tiles.push(e), h.added.push(e);\n }\n }\n for (let s = this.tiles.length - 1; s >= 0; s--) {\n const e = this.tiles[s];\n n.has(e.id) || (this._tiles.delete(e.id), this.tiles.splice(s, 1), this._index.remove(e), h.removed.push(e));\n }\n (h.added.length || h.removed.length) && this.emit(\"update\", h), i.pool.release(t), n.clear(), h.added.length = 0, h.removed.length = 0;\n }\n}\nexport { d as default };"],"mappings":"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","names":["t","e","i","n","e","t","i","o","d","l","a"],"x_google_ignoreList":[0,1]}