import { v as v2 } from "./chunk-524XACB7.js"; import { u } from "./chunk-VEAEIBHK.js"; import "./chunk-6SASJ6IM.js"; import "./chunk-3OHML7FO.js"; import "./chunk-2SJEIKRW.js"; import "./chunk-PHRSJJ3U.js"; import { s as s3 } from "./chunk-L372ZBYB.js"; import "./chunk-VZFBPND4.js"; import "./chunk-WR32EHFC.js"; import { p as p2 } from "./chunk-6URTNEGN.js"; import "./chunk-FTI5VP6T.js"; import "./chunk-X7DBH4KK.js"; import "./chunk-522WBHUO.js"; import "./chunk-PIGRDDRG.js"; import "./chunk-RMX2AZ4P.js"; import "./chunk-NE3ESGA6.js"; import "./chunk-YIS6BAC3.js"; import { v } from "./chunk-KHA63LLS.js"; import { c } from "./chunk-FGKNEJKJ.js"; import { f as f2 } from "./chunk-PSV473TI.js"; import { O } from "./chunk-I3OBGWNS.js"; import "./chunk-FONIFA5N.js"; import "./chunk-EG5OI4V4.js"; import "./chunk-65BYCSII.js"; import "./chunk-WZQZRKNH.js"; import "./chunk-LRDX4TO7.js"; import "./chunk-6A4U74YA.js"; import "./chunk-RBZL6SRZ.js"; import "./chunk-N2663GRX.js"; import "./chunk-O4FY3ITT.js"; import { b } from "./chunk-4DDBH2K5.js"; import "./chunk-7N4X6GF3.js"; import "./chunk-UXF37FQ4.js"; import "./chunk-ZOEK6QHJ.js"; import "./chunk-XNLG7T2T.js"; import "./chunk-IR4PV7VK.js"; import "./chunk-2Z6LERTI.js"; import "./chunk-OWVBLVP3.js"; import "./chunk-EGZW6HC3.js"; import "./chunk-4NKD334K.js"; import "./chunk-65K7LC56.js"; import "./chunk-ATPLLI5W.js"; import "./chunk-WJ3OEUD3.js"; import "./chunk-MXB2XLKV.js"; import "./chunk-XH7RUGVZ.js"; import "./chunk-TBBTRX4O.js"; import "./chunk-YBSUITLL.js"; import "./chunk-ALDCDSPV.js"; import "./chunk-DT6EAZQ5.js"; import "./chunk-HNOZUNJ4.js"; import { U } from "./chunk-VNFRAYHO.js"; import "./chunk-R5IG2D6H.js"; import { I } from "./chunk-VBRY5KJM.js"; import "./chunk-PDKDCAAD.js"; import { o } from "./chunk-ECW2QABR.js"; import "./chunk-GCDJLKH4.js"; import "./chunk-MRJEICT6.js"; import { d, e, n, n2 } from "./chunk-Y3WMVFTW.js"; import "./chunk-SAS7RONY.js"; import "./chunk-WSRBH7BF.js"; import "./chunk-IHXECKQQ.js"; import { f, w } from "./chunk-ULGDPLM2.js"; import { s, s3 as s2 } from "./chunk-EMJ4ZSM2.js"; import "./chunk-IKP3YN53.js"; import { F, e as e2, p, r } from "./chunk-GZT4BVFP.js"; import "./chunk-A5ICIBVI.js"; // node_modules/@arcgis/core/core/workers/WorkerHandle.js var h = s.getLogger("esri.core.workers.WorkerHandle"); var n3 = class { constructor(e3, t, r2, s5, i = {}) { this._mainMethod = t, this._transferLists = r2, this._listeners = [], this._promise = u(e3, { ...i, schedule: s5 }).then((e4) => { if (this._thread === void 0) { this._thread = e4, this._promise = null, i.hasInitialize && this.broadcast({}, "initialize"); for (const e5 of this._listeners) this._connectListener(e5); } else e4.close(); }), this._promise.catch((t2) => h.error(`Failed to initialize ${e3} worker: ${t2}`)); } on(r2, i) { const o3 = { removed: false, eventName: r2, callback: i, threadHandle: null }; return this._listeners.push(o3), this._connectListener(o3), n(() => { o3.removed = true, F(this._listeners, o3), this._thread && r(o3.threadHandle) && o3.threadHandle.remove(); }); } destroy() { this._thread && (this._thread.close(), this._thread = null), this._promise = null; } invoke(e3, t) { return this.invokeMethod(this._mainMethod, e3, t); } invokeMethod(e3, t, r2) { if (this._thread) { const s5 = this._transferLists[e3], i = s5 ? s5(t) : []; return this._thread.invoke(e3, t, { transferList: i, signal: r2 }); } return this._promise ? this._promise.then(() => (f(r2), this.invokeMethod(e3, t, r2))) : Promise.reject(null); } broadcast(e3, t) { return this._thread ? Promise.all(this._thread.broadcast(t, e3)).then(() => { }) : this._promise ? this._promise.then(() => this.broadcast(e3, t)) : Promise.reject(); } get promise() { return this._promise; } _connectListener(e3) { this._thread && this._thread.on(e3.eventName, e3.callback).then((t) => { e3.removed || (e3.threadHandle = t); }); } }; // node_modules/@arcgis/core/layers/support/LercDecoder.js var s4 = class extends n3 { constructor(e3 = null) { super("LercWorker", "_decode", { _decode: (e4) => [e4.buffer] }, e3, { strategy: "dedicated" }), this.schedule = e3, this.ref = 0; } decode(e3, r2, t) { return e3 && e3.byteLength !== 0 ? this.invoke({ buffer: e3, options: r2 }, t) : Promise.resolve(null); } release() { --this.ref <= 0 && (o2.forEach((e3, r2) => { e3 === this && o2.delete(r2); }), this.destroy()); } }; var o2 = new Map(); function n4(t = null) { let n5 = o2.get(e2(t)); return n5 || (r(t) ? (n5 = new s4((e3) => t.schedule(e3)), o2.set(t, n5)) : (n5 = new s4(), o2.set(null, n5))), ++n5.ref, n5; } // node_modules/@arcgis/core/layers/ElevationLayer.js var w2 = s.getLogger("esri.layers.ElevationLayer"); var T = class extends s3(p2(c(v(O(b))))) { constructor(...e3) { super(...e3), this.copyright = null, this.heightModelInfo = null, this.path = null, this.opacity = 1, this.operationalLayerType = "ArcGISTiledElevationServiceLayer", this.sourceJSON = null, this.type = "elevation", this.url = null, this.version = null, this._lercDecoder = n4(); } normalizeCtorArgs(e3, r2) { return typeof e3 == "string" ? { url: e3, ...r2 } : e3; } destroy() { this._lercDecoder = p(this._lercDecoder); } set minScale(e3) { this.constructed && w2.warn(`${this.declaredClass}.minScale support has been removed (since 4.5)`); } get minScale() { } set maxScale(e3) { this.constructed && w2.warn(`${this.declaredClass}.maxScale support has been removed (since 4.5)`); } get maxScale() { } readVersion(e3, r2) { let t = r2.currentVersion; return t || (t = 9.3), t; } load(e3) { const r2 = r(e3) ? e3.signal : null; return this.addResolvingPromise(this.loadFromPortal({ supportedTypes: ["Image Service"], supportsData: false, validateItem: (e4) => { for (let r3 = 0; r3 < e4.typeKeywords.length; r3++) if (e4.typeKeywords[r3].toLowerCase() === "elevation 3d layer") return true; throw new s2("portal:invalid-layer-item-type", "Invalid layer item type '${type}', expected '${expectedType}' ", { type: "Image Service", expectedType: "Image Service Elevation 3D Layer" }); } }, e3).catch(w).then(() => this._fetchImageService(r2))), Promise.resolve(this); } fetchTile(e3, t, o3, i) { const a = r((i = i || { signal: null }).signal) ? i.signal : i.signal = new AbortController().signal, l = { responseType: "array-buffer", signal: a }, n5 = { noDataValue: i.noDataValue, returnFileInfo: true }; return this.load().then(() => this._fetchTileAvailability(e3, t, o3, i)).then(() => U(this.getTileUrl(e3, t, o3), l)).then((e4) => this._lercDecoder.decode(e4.data, n5, a)).then((e4) => ({ values: e4.pixelData, width: e4.width, height: e4.height, maxZError: e4.fileInfo.maxZError, noDataValue: e4.noDataValue, minValue: e4.minValue, maxValue: e4.maxValue })); } getTileUrl(e3, r2, t) { const o3 = !this.tilemapCache && this.supportsBlankTile, i = I({ ...this.parsedUrl.query, blankTile: !o3 && null }); return `${this.parsedUrl.path}/tile/${e3}/${r2}/${t}${i ? "?" + i : ""}`; } async queryElevation(e3, r2) { const { ElevationQuery: t } = await import("./ElevationQuery-H57OAGAY.js"); f(r2); return new t().query(this, e3, r2); } async createElevationSampler(e3, r2) { const { ElevationQuery: t } = await import("./ElevationQuery-H57OAGAY.js"); f(r2); return new t().createSampler(this, e3, r2); } _fetchTileAvailability(e3, r2, t, o3) { return this.tilemapCache ? this.tilemapCache.fetchAvailability(e3, r2, t, o3) : Promise.resolve("unknown"); } async _fetchImageService(e3) { if (this.sourceJSON) return this.sourceJSON; const t = { query: { f: "json", ...this.parsedUrl.query }, responseType: "json", signal: e3 }, o3 = await U(this.parsedUrl.path, t); o3.ssl && (this.url = this.url.replace(/^http:/i, "https:")), this.sourceJSON = o3.data, this.read(o3.data, { origin: "service", url: this.parsedUrl }); } get hasOverriddenFetchTile() { return !this.fetchTile.__isDefault__; } }; e([d({ json: { read: { source: "copyrightText" } } })], T.prototype, "copyright", void 0), e([d({ readOnly: true, type: v2 })], T.prototype, "heightModelInfo", void 0), e([d({ type: String, json: { origins: { "web-scene": { read: true, write: true } }, read: false } })], T.prototype, "path", void 0), e([d({ type: ["show", "hide"] })], T.prototype, "listMode", void 0), e([d({ json: { read: false, write: false, origins: { service: { read: false, write: false }, "portal-item": { read: false, write: false }, "web-document": { read: false, write: false } } } })], T.prototype, "minScale", null), e([d({ json: { read: false, write: false, origins: { service: { read: false, write: false }, "portal-item": { read: false, write: false }, "web-document": { read: false, write: false } } } })], T.prototype, "maxScale", null), e([d({ json: { read: false, write: false, origins: { "web-document": { read: false, write: false } } } })], T.prototype, "opacity", void 0), e([d({ type: ["ArcGISTiledElevationServiceLayer"] })], T.prototype, "operationalLayerType", void 0), e([d()], T.prototype, "sourceJSON", void 0), e([d({ json: { read: false }, value: "elevation", readOnly: true })], T.prototype, "type", void 0), e([d(f2)], T.prototype, "url", void 0), e([d()], T.prototype, "version", void 0), e([o("version", ["currentVersion"])], T.prototype, "readVersion", null), T = e([n2("esri.layers.ElevationLayer")], T), T.prototype.fetchTile.__isDefault__ = true; var x = T; export { x as default }; //# sourceMappingURL=ElevationLayer-AEMRYKQF.js.map