{"version":3,"sources":["node_modules/@arcgis/core/layers/support/LOD.js","node_modules/@arcgis/core/layers/support/TileInfo.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 { _ as e } from \"../../chunks/tslib.es6.js\";\nimport { JSONSupport as o } from \"../../core/JSONSupport.js\";\nimport { property as r } from \"../../core/accessorSupport/decorators/property.js\";\nimport { Integer as t } from \"../../core/accessorSupport/ensureType.js\";\nimport \"../../core/arrayUtils.js\";\nimport \"../../core/has.js\";\nimport { subclass as s } from \"../../core/accessorSupport/decorators/subclass.js\";\nvar i;\nlet l = i = class extends o {\n constructor(e) {\n super(e), this.cols = null, this.level = 0, this.levelValue = null, this.origin = null, this.resolution = 0, this.rows = null, this.scale = 0;\n }\n clone() {\n return new i({\n cols: this.cols,\n level: this.level,\n levelValue: this.levelValue,\n resolution: this.resolution,\n rows: this.rows,\n scale: this.scale\n });\n }\n};\ne([r({\n json: {\n write: !0,\n origins: {\n \"web-document\": {\n read: !1,\n write: !1\n },\n \"portal-item\": {\n read: !1,\n write: !1\n }\n }\n }\n})], l.prototype, \"cols\", void 0), e([r({\n type: t,\n json: {\n write: !0\n }\n})], l.prototype, \"level\", void 0), e([r({\n type: String,\n json: {\n write: !0\n }\n})], l.prototype, \"levelValue\", void 0), e([r({\n json: {\n write: !0,\n origins: {\n \"web-document\": {\n read: !1,\n write: !1\n },\n \"portal-item\": {\n read: !1,\n write: !1\n }\n }\n }\n})], l.prototype, \"origin\", void 0), e([r({\n type: Number,\n json: {\n write: !0\n }\n})], l.prototype, \"resolution\", void 0), e([r({\n json: {\n write: !0,\n origins: {\n \"web-document\": {\n read: !1,\n write: !1\n },\n \"portal-item\": {\n read: !1,\n write: !1\n }\n }\n }\n})], l.prototype, \"rows\", void 0), e([r({\n type: Number,\n json: {\n write: !0\n }\n})], l.prototype, \"scale\", void 0), l = i = e([s(\"esri.layers.support.LOD\")], l);\nconst p = l;\nexport { p as default };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { _ as e } from \"../../chunks/tslib.es6.js\";\nimport { JSONMap as t } from \"../../core/jsonMap.js\";\nimport { JSONSupport as o } from \"../../core/JSONSupport.js\";\nimport { getMetersPerUnitForSR as r } from \"../../core/unitUtils.js\";\nimport { property as s } from \"../../core/accessorSupport/decorators/property.js\";\nimport { Integer as i } from \"../../core/accessorSupport/ensureType.js\";\nimport \"../../core/arrayUtils.js\";\nimport \"../../core/has.js\";\nimport { reader as l } from \"../../core/accessorSupport/decorators/reader.js\";\nimport { subclass as n } from \"../../core/accessorSupport/decorators/subclass.js\";\nimport { writer as a } from \"../../core/accessorSupport/decorators/writer.js\";\nimport p from \"../../geometry/Point.js\";\nimport c from \"../../geometry/SpatialReference.js\";\nimport { create as u } from \"../../geometry/support/aaBoundingRect.js\";\nimport { isValid as f, getInfo as h, isGeographic as m, equals as d } from \"../../geometry/support/spatialReferenceUtils.js\";\nimport { project as g } from \"../../geometry/support/webMercatorUtils.js\";\nimport y from \"./LOD.js\";\nimport { TileKey as v } from \"./TileKey.js\";\nvar w;\nconst x = new t({\n PNG: \"png\",\n PNG8: \"png8\",\n PNG24: \"png24\",\n PNG32: \"png32\",\n JPEG: \"jpg\",\n JPG: \"jpg\",\n DIB: \"dib\",\n TIFF: \"tiff\",\n EMF: \"emf\",\n PS: \"ps\",\n PDF: \"pdf\",\n GIF: \"gif\",\n SVG: \"svg\",\n SVGZ: \"svgz\",\n Mixed: \"mixed\",\n MIXED: \"mixed\",\n LERC: \"lerc\",\n LERC2D: \"lerc2d\",\n RAW: \"raw\",\n pbf: \"pbf\"\n});\nlet O = w = class extends o {\n static create(e = {}) {\n const {\n resolutionFactor: t = 1,\n scales: o,\n size: s = 256,\n spatialReference: i = c.WebMercator,\n numLODs: l = 24\n } = e;\n if (!f(i)) {\n const e = [];\n if (o) for (let t = 0; t < o.length; t++) {\n const r = o[t];\n e.push(new y({\n level: t,\n scale: r,\n resolution: r\n }));\n } else {\n let t = 5e-4;\n for (let o = l - 1; o >= 0; o--) e.unshift(new y({\n level: o,\n scale: t,\n resolution: t\n })), t *= 2;\n }\n return new w({\n dpi: 96,\n lods: e,\n origin: new p(0, 0, i),\n size: [s, s],\n spatialReference: i\n });\n }\n const n = h(i),\n a = e.origin ? new p({\n x: e.origin.x,\n y: e.origin.y,\n spatialReference: i\n }) : new p(n ? {\n x: n.origin[0],\n y: n.origin[1],\n spatialReference: i\n } : {\n x: 0,\n y: 0,\n spatialReference: i\n }),\n u = 96,\n d = 1 / (r(i) * 39.37 * u),\n g = [];\n if (o) for (let r = 0; r < o.length; r++) {\n const e = o[r],\n t = e * d;\n g.push(new y({\n level: r,\n scale: e,\n resolution: t\n }));\n } else {\n let e = m(i) ? 512 / s * 591657527.5917094 : 256 / s * 591657527.591555;\n const o = Math.ceil(l / t);\n g.push(new y({\n level: 0,\n scale: e,\n resolution: e * d\n }));\n for (let r = 1; r < o; r++) {\n const o = e / 2 ** t,\n s = o * d;\n g.push(new y({\n level: r,\n scale: o,\n resolution: s\n })), e = o;\n }\n }\n return new w({\n dpi: u,\n lods: g,\n origin: a,\n size: [s, s],\n spatialReference: i\n });\n }\n constructor(e) {\n super(e), this.dpi = 96, this.format = null, this.origin = null, this.size = null, this.spatialReference = null;\n }\n get isWrappable() {\n const {\n spatialReference: e,\n origin: t\n } = this;\n if (e && t) {\n const o = h(e);\n return e.isWrappable && !!o && Math.abs(o.origin[0] - t.x) <= o.dx;\n }\n return !1;\n }\n readOrigin(e, t) {\n return p.fromJSON({\n spatialReference: t.spatialReference,\n ...e\n });\n }\n set lods(e) {\n let t = 0,\n o = 0;\n const r = [],\n s = this._levelToLOD = {};\n e && (t = -1 / 0, o = 1 / 0, e.forEach(e => {\n r.push(e.scale), t = e.scale > t ? e.scale : t, o = e.scale < o ? e.scale : o, s[e.level] = e;\n })), this._set(\"scales\", r), this._set(\"lods\", e), this._initializeUpsampleLevels();\n }\n readSize(e, t) {\n return [t.cols, t.rows];\n }\n writeSize(e, t) {\n t.cols = e[0], t.rows = e[1];\n }\n zoomToScale(e) {\n const t = this.scales;\n if (e <= 0) return t[0];\n if (e >= t.length - 1) return t[t.length - 1];\n const o = Math.floor(e),\n r = o + 1;\n return t[o] / (t[o] / t[r]) ** (e - o);\n }\n scaleToZoom(e) {\n const t = this.scales,\n o = t.length - 1;\n let r = 0;\n for (; r < o; r++) {\n const o = t[r],\n s = t[r + 1];\n if (o <= e) return r;\n if (s === e) return r + 1;\n if (o > e && s < e) return r + Math.log(o / e) / Math.log(o / s);\n }\n return r;\n }\n snapScale(e, t = .95) {\n const o = this.scaleToZoom(e);\n return o % Math.floor(o) >= t ? this.zoomToScale(Math.ceil(o)) : this.zoomToScale(Math.floor(o));\n }\n tileAt(e, t, o, r) {\n const s = this.lodAt(e);\n if (!s) return null;\n let i, l;\n if (\"number\" == typeof t) i = t, l = o;else if (d(t.spatialReference, this.spatialReference)) i = t.x, l = t.y, r = o;else {\n const e = g(t, this.spatialReference);\n if (null == e) return null;\n i = e.x, l = e.y, r = o;\n }\n const n = s.resolution * this.size[0],\n a = s.resolution * this.size[1];\n return r || (r = new v(null, 0, 0, 0, u())), r.level = e, r.row = Math.floor((this.origin.y - l) / a + .001), r.col = Math.floor((i - this.origin.x) / n + .001), this.updateTileInfo(r), r;\n }\n updateTileInfo(e, t = w.ExtrapolateOptions.NONE) {\n let o = this.lodAt(e.level);\n if (!o && t === w.ExtrapolateOptions.POWER_OF_TWO) {\n const t = this.lods[this.lods.length - 1];\n t.level < e.level && (o = t);\n }\n if (!o) return;\n const r = e.level - o.level,\n s = o.resolution * this.size[0] / 2 ** r,\n i = o.resolution * this.size[1] / 2 ** r;\n e.id = `${e.level}/${e.row}/${e.col}`, e.extent || (e.extent = u()), e.extent[0] = this.origin.x + e.col * s, e.extent[1] = this.origin.y - (e.row + 1) * i, e.extent[2] = e.extent[0] + s, e.extent[3] = e.extent[1] + i;\n }\n upsampleTile(e) {\n const t = this._upsampleLevels[e.level];\n return !(!t || -1 === t.parentLevel) && (e.level = t.parentLevel, e.row = Math.floor(e.row / t.factor + .001), e.col = Math.floor(e.col / t.factor + .001), this.updateTileInfo(e), !0);\n }\n getTileBounds(e, t) {\n const o = this.lodAt(t.level);\n if (null == o) return null;\n const {\n resolution: r\n } = o,\n s = r * this.size[0],\n i = r * this.size[1];\n return e[0] = this.origin.x + t.col * s, e[1] = this.origin.y - (t.row + 1) * i, e[2] = e[0] + s, e[3] = e[1] + i, e;\n }\n lodAt(e) {\n return this._levelToLOD?.[e] ?? null;\n }\n clone() {\n return w.fromJSON(this.write({}));\n }\n getOrCreateCompatible(e, t) {\n if (256 === this.size[0] && 256 === this.size[1]) return 256 === e ? this : null;\n const o = [],\n r = this.lods.length;\n for (let s = 0; s < r; s++) {\n const e = this.lods[s],\n r = e.resolution * t;\n o.push(new y({\n level: e.level,\n scale: e.scale,\n resolution: r\n }));\n }\n return new w({\n size: [e, e],\n dpi: this.dpi,\n format: this.format,\n compressionQuality: this.compressionQuality,\n origin: this.origin,\n spatialReference: this.spatialReference,\n lods: o\n });\n }\n _initializeUpsampleLevels() {\n const e = this.lods;\n this._upsampleLevels = [];\n let t = null;\n for (let o = 0; o < e.length; o++) {\n const r = e[o];\n this._upsampleLevels[r.level] = {\n parentLevel: t ? t.level : -1,\n factor: t ? t.resolution / r.resolution : 0\n }, t = r;\n }\n }\n};\ne([s({\n type: Number,\n json: {\n write: !0\n }\n})], O.prototype, \"compressionQuality\", void 0), e([s({\n type: Number,\n json: {\n write: !0\n }\n})], O.prototype, \"dpi\", void 0), e([s({\n type: String,\n json: {\n read: x.read,\n write: x.write,\n origins: {\n \"web-scene\": {\n read: !1,\n write: !1\n }\n }\n }\n})], O.prototype, \"format\", void 0), e([s({\n readOnly: !0\n})], O.prototype, \"isWrappable\", null), e([s({\n type: p,\n json: {\n write: !0\n }\n})], O.prototype, \"origin\", void 0), e([l(\"origin\")], O.prototype, \"readOrigin\", null), e([s({\n type: [y],\n value: null,\n json: {\n write: !0\n }\n})], O.prototype, \"lods\", null), e([s({\n readOnly: !0\n})], O.prototype, \"scales\", void 0), e([s({\n cast: e => Array.isArray(e) ? e : \"number\" == typeof e ? [e, e] : [256, 256]\n})], O.prototype, \"size\", void 0), e([l(\"size\", [\"rows\", \"cols\"])], O.prototype, \"readSize\", null), e([a(\"size\", {\n cols: {\n type: i\n },\n rows: {\n type: i\n }\n})], O.prototype, \"writeSize\", null), e([s({\n type: c,\n json: {\n write: !0\n }\n})], O.prototype, \"spatialReference\", void 0), O = w = e([n(\"esri.layers.support.TileInfo\")], O), function (e) {\n var t;\n (t = e.ExtrapolateOptions || (e.ExtrapolateOptions = {}))[t.NONE = 0] = \"NONE\", t[t.POWER_OF_TWO = 1] = \"POWER_OF_TWO\";\n}(O || (O = {}));\nconst j = O;\nexport { j as default };"],"mappings":"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","names":["e","x","e","t","o","s","i","f","l","r","u","d","g"],"x_google_ignoreList":[0,1]}