import { l as l4, t as t5, ye } from "./chunk-B5M3H5A2.js"; import { d as d2, s as s7 } from "./chunk-F2YXWZUP.js"; import { l as l3, m as m3, s as s6, u } from "./chunk-XPM6MV6B.js"; import { L, N, n as n5 } from "./chunk-SB62IOA2.js"; import "./chunk-L5R6EFI6.js"; import "./chunk-RMZNH22Z.js"; import "./chunk-A22ACVMF.js"; import "./chunk-X4WJNVEM.js"; import "./chunk-6H6IOAKG.js"; import "./chunk-LX2NI53X.js"; import "./chunk-IZUZZJS7.js"; import "./chunk-RUM3DXFX.js"; import "./chunk-MP62QTGD.js"; import "./chunk-44FMXGSC.js"; import "./chunk-XFDO4CMR.js"; import "./chunk-GHN7C53L.js"; import "./chunk-OQLLPV4D.js"; import "./chunk-ZCAE6QVH.js"; import "./chunk-K7B6OWCU.js"; import { Ze } from "./chunk-TD4T5KV5.js"; import "./chunk-JNNIUZVW.js"; import "./chunk-6SHVYOIM.js"; import "./chunk-EFTIWDMB.js"; import "./chunk-E3VV75EL.js"; import "./chunk-VIUIPJ2T.js"; import "./chunk-YW3ZWYRO.js"; import { s as s5 } from "./chunk-JZGM5PAU.js"; import "./chunk-7FZX4UI7.js"; import "./chunk-IR3DRB65.js"; import "./chunk-7ZZ4CSFO.js"; import "./chunk-YVKMCAJV.js"; import "./chunk-FB243F4I.js"; import "./chunk-DKAJ6NC2.js"; import "./chunk-6334AFGG.js"; import "./chunk-WFHIGLUK.js"; import "./chunk-IFWO6QLG.js"; import "./chunk-O3JQY77G.js"; import "./chunk-VYQHMPYW.js"; import "./chunk-KAB3V7FU.js"; import "./chunk-SOSOZIX6.js"; import "./chunk-FM5OVTDI.js"; import { n as n3 } from "./chunk-I4RYNNL6.js"; import "./chunk-2RHPWGZL.js"; import "./chunk-24RR2OSE.js"; import "./chunk-VICJMAP2.js"; import "./chunk-OJ2HHY2O.js"; import "./chunk-ESLFDGN5.js"; import "./chunk-TU7WVKU4.js"; import { i as i2 } from "./chunk-DUH52ME3.js"; import { p } from "./chunk-BFKFNCQC.js"; import "./chunk-3C3WGWKN.js"; import "./chunk-5AJSBAUF.js"; import "./chunk-2QIZS77U.js"; import "./chunk-OJUMXZ6B.js"; import { p as p2 } from "./chunk-F62EJT7L.js"; import { n as n4 } from "./chunk-JB2527A3.js"; import "./chunk-XODJHDJQ.js"; import "./chunk-O2PIYIHJ.js"; import "./chunk-2BWPQRLB.js"; import "./chunk-HPD2S4QL.js"; import "./chunk-C65ZRRQD.js"; import "./chunk-3HCJD762.js"; import "./chunk-GR4RKUNH.js"; import "./chunk-LTQAWUCK.js"; import "./chunk-W3SLJVWY.js"; import "./chunk-PK4W65H4.js"; import { g } from "./chunk-KJZ6SS3P.js"; import { k as k2 } from "./chunk-OER54WCN.js"; import { t as t4 } from "./chunk-HOCLACFL.js"; import "./chunk-3MLCBRBA.js"; import "./chunk-WTRZAXRY.js"; import "./chunk-SZFMKPVM.js"; import { x } from "./chunk-K6QDYFZU.js"; import "./chunk-EY2WJSAJ.js"; import "./chunk-YMULPZCD.js"; import "./chunk-4PNYPUDB.js"; import "./chunk-RDMCXRET.js"; import "./chunk-BQHWPTT7.js"; import "./chunk-ZSW35JPD.js"; import { r as r3 } from "./chunk-DAWQAVQO.js"; import "./chunk-73AMYZFU.js"; import "./chunk-NKMX5M3L.js"; import "./chunk-MGUVQY3Q.js"; import "./chunk-QEWF7QPH.js"; import "./chunk-PJNBFKPF.js"; import "./chunk-C7742RNZ.js"; import "./chunk-SQ2SY4BX.js"; import "./chunk-VLG7MMVR.js"; import "./chunk-TV3CFJQR.js"; import "./chunk-BWATQC2Y.js"; import { v } from "./chunk-2DSTZVND.js"; import { c } from "./chunk-VXKIGGM4.js"; import { b, d, p as p3, y as y3 } from "./chunk-KG45D2XL.js"; import { O, S } from "./chunk-JYRZQPQI.js"; import { x as x2 } from "./chunk-3HZQM2NK.js"; import "./chunk-AR2YN3E2.js"; import "./chunk-U3LEOWJX.js"; import "./chunk-4ONPMX2F.js"; import { v as v2 } from "./chunk-47NSA4T4.js"; import "./chunk-FUODOQDM.js"; import "./chunk-UMJCSYX5.js"; import "./chunk-UA6W42KP.js"; import "./chunk-3OSQ6GXO.js"; import "./chunk-3WQOA5CB.js"; import { t as t3 } from "./chunk-2L5METUC.js"; import "./chunk-FZQZIM7U.js"; import "./chunk-CZBRZ6SU.js"; import "./chunk-VGWC3IKZ.js"; import "./chunk-SWMSD4RP.js"; import "./chunk-UKEN2UNL.js"; import "./chunk-UVVU4UUO.js"; import "./chunk-HWSWTWZD.js"; import { i, n as n2 } from "./chunk-R7V7MKKV.js"; import { l as l2 } from "./chunk-E36TKLKO.js"; import "./chunk-O6VYMEIX.js"; import "./chunk-X4SA4ELJ.js"; import { r as r2 } from "./chunk-XJCUT65M.js"; import "./chunk-PE24J2I5.js"; import "./chunk-P3XKUGLS.js"; import "./chunk-PIFOHNWC.js"; import "./chunk-LLO7GCYU.js"; import "./chunk-U7RKABRB.js"; import "./chunk-X7CNGECX.js"; import "./chunk-PSEI52P3.js"; import "./chunk-ZLNEXZAN.js"; import "./chunk-5UVJ64RB.js"; import { b as b2 } from "./chunk-O43KLDSX.js"; import { s as s4 } from "./chunk-AUOH2VSO.js"; import "./chunk-ZYRIJWLX.js"; import "./chunk-RYY6632W.js"; import "./chunk-DW42UVIT.js"; import "./chunk-TJNOJH33.js"; import "./chunk-YAEIHDJH.js"; import "./chunk-OSHI574D.js"; import "./chunk-44GMIOGP.js"; import "./chunk-75U5LM2V.js"; import "./chunk-ZHRAUKVQ.js"; import "./chunk-RZK6A2GY.js"; import { j } from "./chunk-4NQ74ZR6.js"; import "./chunk-X4LLOW7U.js"; import { m as m2 } from "./chunk-BDA6VH2A.js"; import "./chunk-Z4JTBD7M.js"; import { m } from "./chunk-MSBIHK67.js"; import { s as s3 } from "./chunk-HZRKBTHJ.js"; import { U } from "./chunk-5DMBXPN2.js"; import "./chunk-QANZ6BFY.js"; import { G } from "./chunk-VEGAOVMY.js"; import { o, w2 } from "./chunk-CXCDYJ5R.js"; import "./chunk-GAOW3WRZ.js"; import { k2 as k } from "./chunk-QCKFNSN2.js"; import { e, l3 as l, n5 as n, t5 as t2, y3 as y2 } from "./chunk-6SOHRC7T.js"; import "./chunk-U2XHEJM7.js"; import { T } from "./chunk-SQOPWYIT.js"; import "./chunk-6KZ2LTDA.js"; import { w } from "./chunk-V6P2MAQQ.js"; import { s2 as s, s3 as s2 } from "./chunk-E5O6P5I2.js"; import { y } from "./chunk-SPWQ3AWG.js"; import "./chunk-2TIUKVZN.js"; import { r, t } from "./chunk-YXWMMD76.js"; import "./chunk-S5KM4IGW.js"; // node_modules/@arcgis/core/layers/buildingSublayers/BuildingSublayer.js var l5 = class extends s4(S) { constructor(e3) { super(e3), this.title = "", this.id = -1, this.modelName = null, this.isEmpty = null, this.visible = true, this.opacity = 1; } readTitle(e3, r4) { return "string" == typeof r4.alias ? r4.alias : "string" == typeof r4.name ? r4.name : ""; } readIdOnlyOnce(e3) { return -1 !== this.id ? this.id : "number" == typeof e3 ? e3 : -1; } }; e([y2({ type: String, json: { origins: { "web-scene": { write: true }, "portal-item": { write: true } } } })], l5.prototype, "title", void 0), e([o("service", "title", ["alias", "name"])], l5.prototype, "readTitle", null), e([y2()], l5.prototype, "layer", void 0), e([y2({ type: T, readOnly: true, json: { read: false, write: { ignoreOrigin: true } } })], l5.prototype, "id", void 0), e([o("service", "id")], l5.prototype, "readIdOnlyOnce", null), e([y2(y3(String))], l5.prototype, "modelName", void 0), e([y2(y3(Boolean))], l5.prototype, "isEmpty", void 0), e([y2({ type: Boolean, json: { name: "visibility", write: true } })], l5.prototype, "visible", void 0), e([y2({ type: Number, json: { write: true } })], l5.prototype, "opacity", void 0), l5 = e([n("esri.layers.buildingSublayers.BuildingSublayer")], l5); var n6 = l5; // node_modules/@arcgis/core/layers/buildingSublayers/BuildingComponentSublayer.js var A = "esri.layers.buildingSublayers.BuildingComponentSublayer"; var _ = s.getLogger(A); var C = s5(); var N2 = class extends m2.LoadableMixin(m(n6)) { constructor(e3) { super(e3), this.type = "building-component", this.nodePages = null, this.materialDefinitions = [], this.textureSetDefinitions = [], this.geometryDefinitions = [], this.indexInfo = null, this.serviceUpdateTimeStamp = null, this.store = null, this.attributeStorageInfo = [], this.fields = [], this.associatedLayer = null, this.outFields = null, this.listMode = "show", this.renderer = null, this.definitionExpression = null, this.popupEnabled = true, this.popupTemplate = null, this.layerType = "3d-object"; } get parsedUrl() { var _a, _b; return this.layer ? { path: `${(_a = this.layer.parsedUrl) == null ? void 0 : _a.path}/sublayers/${this.id}`, query: (_b = this.layer.parsedUrl) == null ? void 0 : _b.query } : { path: "" }; } get fieldsIndex() { return new r3(this.fields); } readAssociatedLayer(e3, r4) { const t9 = this.layer.associatedFeatureServiceItem, o2 = r4.associatedLayerID; return r(t9) && "number" == typeof o2 ? new Ze({ portalItem: t9, layerId: o2 }) : null; } get objectIdField() { if (null != this.fields) { for (const e3 of this.fields) if ("oid" === e3.type) return e3.name; } return null; } get displayField() { return r(this.associatedLayer) ? this.associatedLayer.displayField : void 0; } get apiKey() { return this.layer.apiKey; } get fullExtent() { return this.layer.fullExtent; } get spatialReference() { return this.layer.spatialReference; } get version() { return this.layer.version; } get elevationInfo() { return this.layer.elevationInfo; } get minScale() { return this.layer.minScale; } get maxScale() { return this.layer.maxScale; } get effectiveScaleRange() { return this.layer.effectiveScaleRange; } get defaultPopupTemplate() { return this.createPopupTemplate(); } load(e3) { const r4 = r(e3) ? e3.signal : null, t9 = this._fetchService(r4).then(() => { this.indexInfo = n5(this.parsedUrl.path, this.rootNode, this.nodePages, this.apiKey, _, r4); }); return this.addResolvingPromise(t9), Promise.resolve(this); } createPopupTemplate(e3) { return p2(this, e3); } async _fetchService(e3) { const r4 = (await U(this.parsedUrl.path, { query: { f: "json", token: this.apiKey }, responseType: "json", signal: e3 })).data; this.read(r4, { origin: "service", url: this.parsedUrl }); } getField(e3) { return this.fieldsIndex.get(e3); } getFieldDomain(e3, r4) { var _a, _b, _c, _d; const t9 = (_b = (_a = this.getFeatureType(r4 == null ? void 0 : r4.feature)) == null ? void 0 : _a.domains) == null ? void 0 : _b[e3]; return t9 && "inherited" !== t9.type ? t9 : (_d = (_c = this.getField(e3)) == null ? void 0 : _c.domain) != null ? _d : null; } getFeatureType(e3) { return e3 && r(this.associatedLayer) ? this.associatedLayer.getFeatureType(e3) : null; } get types() { var _a; return r(this.associatedLayer) ? (_a = this.associatedLayer.types) != null ? _a : [] : []; } get typeIdField() { return r(this.associatedLayer) ? this.associatedLayer.typeIdField : null; } get geometryType() { return "3d-object" === this.layerType ? "mesh" : "point"; } get profile() { return "3d-object" === this.layerType ? "mesh-pyramids" : "points"; } get capabilities() { const e3 = r(this.associatedLayer) && this.associatedLayer.capabilities ? this.associatedLayer.capabilities : t5, { query: r4, data: { supportsZ: t9, supportsM: o2, isVersioned: s8 } } = e3; return { query: r4, data: { supportsZ: t9, supportsM: o2, isVersioned: s8 } }; } createQuery() { const e3 = new x(); return "mesh" !== this.geometryType && (e3.returnGeometry = true, e3.returnZ = true), e3.where = this.definitionExpression || "1=1", e3.sqlFormat = "standard", e3; } queryExtent(e3, r4) { return this._getAssociatedLayerForQuery().then((t9) => t9.queryExtent(e3 || this.createQuery(), r4)); } queryFeatureCount(e3, r4) { return this._getAssociatedLayerForQuery().then((t9) => t9.queryFeatureCount(e3 || this.createQuery(), r4)); } queryFeatures(e3, r4) { return this._getAssociatedLayerForQuery().then((t9) => t9.queryFeatures(e3 || this.createQuery(), r4)).then((e4) => { if (e4 == null ? void 0 : e4.features) for (const r5 of e4.features) r5.layer = this.layer, r5.sourceLayer = this; return e4; }); } queryObjectIds(e3, r4) { return this._getAssociatedLayerForQuery().then((t9) => t9.queryObjectIds(e3 || this.createQuery(), r4)); } async queryCachedAttributes(e3, r4) { const t9 = v2(this.fieldsIndex, await d2(this, s7(this))); return ye(this.parsedUrl.path, this.attributeStorageInfo, e3, r4, t9); } async queryCachedFeature(e3, t9) { const o2 = await this.queryCachedAttributes(e3, [t9]); if (!o2 || 0 === o2.length) throw new s2("scenelayer:feature-not-in-cached-data", "Feature not found in cached data"); const s8 = new g(); return s8.attributes = o2[0], s8.layer = this, s8.sourceLayer = this, s8; } getFieldUsageInfo(e3) { return this.fieldsIndex.has(e3) ? { supportsLabelingInfo: false, supportsRenderer: false, supportsPopupTemplate: false, supportsLayerQuery: false } : { supportsLabelingInfo: false, supportsRenderer: true, supportsPopupTemplate: true, supportsLayerQuery: r(this.associatedLayer) }; } _getAssociatedLayerForQuery() { const e3 = this.associatedLayer; return r(e3) && e3.loaded ? Promise.resolve(e3) : this._loadAssociatedLayerForQuery(); } async _loadAssociatedLayerForQuery() { if (await this.load(), t(this.associatedLayer)) throw new s2("buildingscenelayer:query-not-available", "BuildingSceneLayer component layer queries are not available without an associated feature layer", { layer: this }); try { await this.associatedLayer.load(); } catch (e3) { throw new s2("buildingscenelayer:query-not-available", "BuildingSceneLayer associated feature layer could not be loaded", { layer: this, error: e3 }); } return this.associatedLayer; } }; e([y2({ readOnly: true })], N2.prototype, "parsedUrl", null), e([y2({ type: s6, readOnly: true })], N2.prototype, "nodePages", void 0), e([y2({ type: [l3], readOnly: true })], N2.prototype, "materialDefinitions", void 0), e([y2({ type: [u], readOnly: true })], N2.prototype, "textureSetDefinitions", void 0), e([y2({ type: [m3], readOnly: true })], N2.prototype, "geometryDefinitions", void 0), e([y2({ readOnly: true })], N2.prototype, "serviceUpdateTimeStamp", void 0), e([y2({ readOnly: true })], N2.prototype, "store", void 0), e([y2({ type: String, readOnly: true, json: { read: { source: "store.rootNode" } } })], N2.prototype, "rootNode", void 0), e([y2({ readOnly: true })], N2.prototype, "attributeStorageInfo", void 0), e([y2(C.fields)], N2.prototype, "fields", void 0), e([y2({ readOnly: true })], N2.prototype, "fieldsIndex", null), e([y2({ readOnly: true, type: Ze })], N2.prototype, "associatedLayer", void 0), e([o("service", "associatedLayer", ["associatedLayerID"])], N2.prototype, "readAssociatedLayer", null), e([y2(C.outFields)], N2.prototype, "outFields", void 0), e([y2({ type: String, readOnly: true })], N2.prototype, "objectIdField", null), e([y2({ readOnly: true, type: String, json: { read: false } })], N2.prototype, "displayField", null), e([y2({ readOnly: true, type: String })], N2.prototype, "apiKey", null), e([y2({ readOnly: true, type: w2 })], N2.prototype, "fullExtent", null), e([y2({ readOnly: true, type: k })], N2.prototype, "spatialReference", null), e([y2({ readOnly: true })], N2.prototype, "version", null), e([y2({ readOnly: true, type: x2 })], N2.prototype, "elevationInfo", null), e([y2({ readOnly: true, type: Number })], N2.prototype, "minScale", null), e([y2({ readOnly: true, type: Number })], N2.prototype, "maxScale", null), e([y2({ readOnly: true, type: Number })], N2.prototype, "effectiveScaleRange", null), e([y2({ type: ["hide", "show"], json: { write: true } })], N2.prototype, "listMode", void 0), e([y2({ types: n4, json: { origins: { service: { read: { source: "drawingInfo.renderer" } } }, name: "layerDefinition.drawingInfo.renderer", write: true }, value: null })], N2.prototype, "renderer", void 0), e([y2({ type: String, json: { origins: { service: { read: false, write: false } }, name: "layerDefinition.definitionExpression", write: { enabled: true, allowNull: true } } })], N2.prototype, "definitionExpression", void 0), e([y2(p3)], N2.prototype, "popupEnabled", void 0), e([y2({ type: k2, json: { read: { source: "popupInfo" }, write: { target: "popupInfo" } } })], N2.prototype, "popupTemplate", void 0), e([y2({ readOnly: true, type: String, json: { origins: { service: { read: { source: "store.normalReferenceFrame" } } }, read: false } })], N2.prototype, "normalReferenceFrame", void 0), e([y2({ readOnly: true, json: { read: false } })], N2.prototype, "defaultPopupTemplate", null), e([y2()], N2.prototype, "types", null), e([y2()], N2.prototype, "typeIdField", null), e([y2({ json: { write: false } }), r2(new s3({ "3DObject": "3d-object", Point: "point" }))], N2.prototype, "layerType", void 0), e([y2()], N2.prototype, "geometryType", null), e([y2()], N2.prototype, "profile", null), e([y2({ readOnly: true, json: { read: false } })], N2.prototype, "capabilities", null), N2 = e([n(A)], N2); var M = N2; // node_modules/@arcgis/core/layers/buildingSublayers/BuildingGroupSublayer.js var a; var l6 = { type: j, readOnly: true, json: { origins: { service: { read: { source: "sublayers", reader: p4 } } }, read: false } }; function p4(r4, o2, t9) { if (r4 && Array.isArray(r4)) return new j(r4.map((r5) => { const e3 = y4(r5); if (e3) { const o3 = new e3(); return o3.read(r5, t9), o3; } return t9 && t9.messages && r5 && t9.messages.push(new t2("building-scene-layer:unsupported-sublayer-type", "Building scene sublayer of type '" + (r5.type || "unknown") + "' are not supported", { definition: r5, context: t9 })), null; })); } var c2 = a = class extends n6 { constructor(r4) { super(r4), this.type = "building-group", this.listMode = "show", this.sublayers = null; } loadAll() { return i(this, (r4) => a.forEachSublayer(this.sublayers, (e3) => { "building-group" !== e3.type && r4(e3); })); } }; function y4(r4) { return "group" === r4.layerType ? c2 : M; } e([y2({ type: ["hide", "show", "hide-children"], json: { write: true } })], c2.prototype, "listMode", void 0), e([y2(l6)], c2.prototype, "sublayers", void 0), c2 = a = e([n("esri.layers.buildingSublayers.BuildingGroupSublayer")], c2), function(r4) { function e3(r5, o2) { r5.forEach((r6) => { o2(r6), "building-group" === r6.type && e3(r6.sublayers, o2); }); } r4.sublayersProperty = l6, r4.readSublayers = p4, r4.forEachSublayer = e3; }(c2 || (c2 = {})); var d3 = c2; // node_modules/@arcgis/core/layers/support/BuildingFilterAuthoringInfo.js var e2 = class extends l { constructor() { super(...arguments), this.type = null; } }; e([y2({ type: String, readOnly: true, json: { write: true } })], e2.prototype, "type", void 0), e2 = e([n("esri.layers.support.BuildingFilterAuthoringInfo")], e2); var p5 = e2; // node_modules/@arcgis/core/layers/support/BuildingFilterAuthoringInfoType.js var p6; var i3 = p6 = class extends l { constructor() { super(...arguments), this.filterType = null, this.filterValues = null; } clone() { return new p6({ filterType: this.filterType, filterValues: y(this.filterValues) }); } }; e([y2({ type: String, json: { write: true } })], i3.prototype, "filterType", void 0), e([y2({ type: [String], json: { write: true } })], i3.prototype, "filterValues", void 0), i3 = p6 = e([n("esri.layers.support.BuildingFilterAuthoringInfoType")], i3); var l7 = i3; // node_modules/@arcgis/core/layers/support/BuildingFilterAuthoringInfoBlock.js var c3; var l8 = j.ofType(l7); var n7 = c3 = class extends l { clone() { return new c3({ filterTypes: y(this.filterTypes) }); } }; e([y2({ type: l8, json: { write: true } })], n7.prototype, "filterTypes", void 0), n7 = c3 = e([n("esri.layers.support.BuildingFilterAuthoringInfoBlock")], n7); var m4 = n7; // node_modules/@arcgis/core/layers/support/BuildingFilterAuthoringInfoCheckbox.js var p7; var l9 = j.ofType(m4); var n8 = p7 = class extends p5 { constructor() { super(...arguments), this.type = "checkbox"; } clone() { return new p7({ filterBlocks: y(this.filterBlocks) }); } }; e([y2({ type: ["checkbox"] })], n8.prototype, "type", void 0), e([y2({ type: l9, json: { write: true } })], n8.prototype, "filterBlocks", void 0), n8 = p7 = e([n("esri.layers.support.BuildingFilterAuthoringInfoCheckbox")], n8); var u2 = n8; // node_modules/@arcgis/core/layers/support/BuildingFilterMode.js var t6 = class extends l { }; e([y2({ readOnly: true, json: { read: false } })], t6.prototype, "type", void 0), t6 = e([n("esri.layers.support.BuildingFilterMode")], t6); var p8 = t6; // node_modules/@arcgis/core/layers/support/BuildingFilterModeSolid.js var t7; var p9 = t7 = class extends p8 { constructor() { super(...arguments), this.type = "solid"; } clone() { return new t7(); } }; e([y2({ type: ["solid"], readOnly: true, json: { write: true } })], p9.prototype, "type", void 0), p9 = t7 = e([n("esri.layers.support.BuildingFilterModeSolid")], p9); var i4 = p9; // node_modules/@arcgis/core/layers/support/BuildingFilterModeWireFrame.js var c4; var m5 = c4 = class extends p8 { constructor() { super(...arguments), this.type = "wire-frame", this.edges = null; } clone() { return new c4({ edges: y(this.edges) }); } }; e([r2({ wireFrame: "wire-frame" })], m5.prototype, "type", void 0), e([y2(t4)], m5.prototype, "edges", void 0), m5 = c4 = e([n("esri.layers.support.BuildingFilterModeWireFrame")], m5); var a2 = m5; // node_modules/@arcgis/core/layers/support/BuildingFilterModeXRay.js var t8; var p10 = t8 = class extends p8 { constructor() { super(...arguments), this.type = "x-ray"; } clone() { return new t8(); } }; e([y2({ type: ["x-ray"], readOnly: true, json: { write: true } })], p10.prototype, "type", void 0), p10 = t8 = e([n("esri.layers.support.BuildingFilterModeXRay")], p10); var c5 = p10; // node_modules/@arcgis/core/layers/support/BuildingFilterBlock.js var d4; var a3 = { nonNullable: true, types: { key: "type", base: p8, typeMap: { solid: i4, "wire-frame": a2, "x-ray": c5 } }, json: { read: (e3) => { switch (e3 && e3.type) { case "solid": return i4.fromJSON(e3); case "wireFrame": return a2.fromJSON(e3); case "x-ray": return c5.fromJSON(e3); default: return; } }, write: { enabled: true, isRequired: true } } }; var u3 = d4 = class extends l { constructor() { super(...arguments), this.filterExpression = null, this.filterMode = new i4(), this.title = ""; } clone() { return new d4({ filterExpression: this.filterExpression, filterMode: y(this.filterMode), title: this.title }); } }; e([y2({ type: String, json: { write: { enabled: true, isRequired: true } } })], u3.prototype, "filterExpression", void 0), e([y2(a3)], u3.prototype, "filterMode", void 0), e([y2({ type: String, json: { write: { enabled: true, isRequired: true } } })], u3.prototype, "title", void 0), u3 = d4 = e([n("esri.layers.support.BuildingFilterBlock")], u3); var c6 = u3; // node_modules/@arcgis/core/layers/support/BuildingFilter.js var u4; var d5 = j.ofType(c6); var m6 = u4 = class extends l { constructor() { super(...arguments), this.description = null, this.filterBlocks = null, this.id = n3(), this.name = null; } clone() { return new u4({ description: this.description, filterBlocks: y(this.filterBlocks), id: this.id, name: this.name, filterAuthoringInfo: y(this.filterAuthoringInfo) }); } }; e([y2({ type: String, json: { write: true } })], m6.prototype, "description", void 0), e([y2({ type: d5, json: { write: { enabled: true, isRequired: true } } })], m6.prototype, "filterBlocks", void 0), e([y2({ types: { key: "type", base: p5, typeMap: { checkbox: u2 } }, json: { read: (o2) => "checkbox" === (o2 && o2.type) ? u2.fromJSON(o2) : null, write: true } })], m6.prototype, "filterAuthoringInfo", void 0), e([y2({ type: String, constructOnly: true, json: { write: { enabled: true, isRequired: true } } })], m6.prototype, "id", void 0), e([y2({ type: String, json: { write: { enabled: true, isRequired: true } } })], m6.prototype, "name", void 0), m6 = u4 = e([n("esri.layers.support.BuildingFilter")], m6); var f = m6; // node_modules/@arcgis/core/layers/support/BuildingSummaryStatistics.js var n9 = class extends l { constructor() { super(...arguments), this.fieldName = null, this.modelName = null, this.label = null, this.min = null, this.max = null, this.mostFrequentValues = null, this.subLayerIds = null; } }; e([y2({ type: String })], n9.prototype, "fieldName", void 0), e([y2({ type: String })], n9.prototype, "modelName", void 0), e([y2({ type: String })], n9.prototype, "label", void 0), e([y2({ type: Number })], n9.prototype, "min", void 0), e([y2({ type: Number })], n9.prototype, "max", void 0), e([y2({ json: { read: (e3) => Array.isArray(e3) && (e3.every((e4) => "string" == typeof e4) || e3.every((e4) => "number" == typeof e4)) ? e3.slice() : null } })], n9.prototype, "mostFrequentValues", void 0), e([y2({ type: [Number] })], n9.prototype, "subLayerIds", void 0), n9 = e([n("esri.layers.support.BuildingFieldStatistics")], n9); var u5 = class extends m2.LoadableMixin(m(l)) { constructor() { super(...arguments), this.url = null; } get fields() { return this.loaded || "loading" === this.loadStatus ? this._get("fields") : (s.getLogger(this.declaredClass).error("building summary statistics are not loaded"), null); } load(e3) { const r4 = r(e3) ? e3.signal : null; return this.addResolvingPromise(this._fetchService(r4)), Promise.resolve(this); } async _fetchService(e3) { const t9 = (await U(this.url, { query: { f: "json" }, responseType: "json", signal: e3 })).data; this.read(t9, { origin: "service" }); } }; e([y2({ constructOnly: true, type: String })], u5.prototype, "url", void 0), e([y2({ readOnly: true, type: [n9], json: { read: { source: "summary" } } })], u5.prototype, "fields", null), u5 = e([n("esri.layers.support.BuildingSummaryStatistics")], u5); var m7 = u5; // node_modules/@arcgis/core/layers/BuildingSceneLayer.js var F = j.ofType(f); var B = y(d3.sublayersProperty); B.json.origins["web-scene"] = { type: [M], write: { enabled: true, overridePolicy: () => ({ enabled: false }) } }, B.json.origins["portal-item"] = { type: [M], write: { enabled: true, overridePolicy: () => ({ enabled: false }) } }; var P = class extends N(p(c(v(t3(O(i2(b2))))))) { constructor(e3) { super(e3), this.operationalLayerType = "BuildingSceneLayer", this.allSublayers = new l2({ getCollections: () => [this.sublayers], getChildrenFunction: (e4) => "building-group" === e4.type ? e4.sublayers : null }), this.sublayers = null, this._sublayerOverrides = null, this.filters = new F(), this.activeFilterId = null, this.summaryStatistics = null, this.outFields = null, this.type = "building-scene"; } normalizeCtorArgs(e3) { return "string" == typeof e3 ? { url: e3 } : e3 != null ? e3 : {}; } destroy() { this.allSublayers.destroy(); } readSublayers(e3, r4, t9) { const s8 = d3.readSublayers(e3, r4, t9); return d3.forEachSublayer(s8, (e4) => e4.layer = this), this._sublayerOverrides && (this.applySublayerOverrides(s8, this._sublayerOverrides), this._sublayerOverrides = null), s8; } applySublayerOverrides(e3, { overrides: r4, context: t9 }) { d3.forEachSublayer(e3, (e4) => e4.read(r4.get(e4.id), t9)); } readSublayerOverrides(e3, r4) { var _a; const t9 = /* @__PURE__ */ new Map(); for (const i5 of e3) null != i5 && "object" == typeof i5 && "number" == typeof i5.id ? t9.set(i5.id, i5) : (_a = r4.messages) == null ? void 0 : _a.push(new s2("building-scene-layer:invalid-sublayer-override", "Invalid value for sublayer override. Not an object or no id specified.", { value: i5 })); return { overrides: t9, context: r4 }; } writeSublayerOverrides(e3, r4, t9) { const s8 = []; d3.forEachSublayer(this.sublayers, (e4) => { const r5 = e4.write({}, t9); Object.keys(r5).length > 1 && s8.push(r5); }), s8.length > 0 && (r4.sublayers = s8); } writeUnappliedOverrides(e3, r4) { r4.sublayers = [], e3.overrides.forEach((e4) => { r4.sublayers.push(y(e4)); }); } write(e3, r4) { return e3 = super.write(e3, r4), !r4 || "web-scene" !== r4.origin && "portal-item" !== r4.origin || (this.sublayers ? this.writeSublayerOverrides(this.sublayers, e3, r4) : this._sublayerOverrides && this.writeUnappliedOverrides(this._sublayerOverrides, e3)), e3; } read(e3, r4) { if (super.read(e3, r4), r4 && ("web-scene" === r4.origin || "portal-item" === r4.origin) && null != e3 && Array.isArray(e3.sublayers)) { const t9 = this.readSublayerOverrides(e3.sublayers, r4); this.sublayers ? this.applySublayerOverrides(this.sublayers, t9) : this._sublayerOverrides = t9; } } readSummaryStatistics(e3, r4) { var _a; if ("string" == typeof r4.statisticsHRef) { const e4 = G((_a = this.parsedUrl) == null ? void 0 : _a.path, r4.statisticsHRef); return new m7({ url: e4 }); } return null; } set elevationInfo(e3) { this._set("elevationInfo", e3), this._validateElevationInfo(); } load(e3) { const r4 = r(e3) ? e3.signal : null, t9 = this.loadFromPortal({ supportedTypes: ["Scene Service"] }, e3).catch(w).then(() => this._fetchService(r4)).then(() => this._fetchAssociatedFeatureService(r4)); return this.addResolvingPromise(t9), Promise.resolve(this); } loadAll() { return n2(this, (e3) => { d3.forEachSublayer(this.sublayers, (r4) => { "building-group" !== r4.type && e3(r4); }), this.summaryStatistics && e3(this.summaryStatistics); }); } async saveAs(e3, r4) { return this._debouncedSaveOperations(L.SAVE_AS, { ...r4, getTypeKeywords: () => this._getTypeKeywords(), portalItemLayerType: "building-scene" }, e3); } async save() { const e3 = { getTypeKeywords: () => this._getTypeKeywords(), portalItemLayerType: "building-scene" }; return this._debouncedSaveOperations(L.SAVE, e3); } validateLayer(e3) { if (!e3.layerType || "Building" !== e3.layerType) throw new s2("buildingscenelayer:layer-type-not-supported", "BuildingSceneLayer does not support this layer type", { layerType: e3.layerType }); } _getTypeKeywords() { return ["Building"]; } _validateElevationInfo() { const e3 = this.elevationInfo; e3 && ("absolute-height" !== e3.mode && s.getLogger(this.declaredClass).warn(".elevationInfo=", "Building scene layers only support absolute-height elevation mode"), e3.featureExpressionInfo && "0" !== e3.featureExpressionInfo.expression && s.getLogger(this.declaredClass).warn(".elevationInfo=", "Building scene layers do not support featureExpressionInfo")); } async _fetchAssociatedFeatureService(e3) { const r4 = new l4(this.parsedUrl, this.portalItem, this.apiKey, e3); try { this.associatedFeatureServiceItem = await r4.fetchPortalItem(); } catch (t9) { s.getLogger(this.declaredClass).warn("Associated feature service item could not be loaded", t9); } } }; e([y2({ type: ["BuildingSceneLayer"] })], P.prototype, "operationalLayerType", void 0), e([y2({ readOnly: true })], P.prototype, "allSublayers", void 0), e([y2(B)], P.prototype, "sublayers", void 0), e([o("service", "sublayers")], P.prototype, "readSublayers", null), e([y2({ type: F, nonNullable: true, json: { write: true } })], P.prototype, "filters", void 0), e([y2({ type: String, json: { write: true } })], P.prototype, "activeFilterId", void 0), e([y2({ readOnly: true, type: m7 })], P.prototype, "summaryStatistics", void 0), e([o("summaryStatistics", ["statisticsHRef"])], P.prototype, "readSummaryStatistics", null), e([y2({ type: [String], json: { read: false } })], P.prototype, "outFields", void 0), e([y2(b)], P.prototype, "fullExtent", void 0), e([y2({ type: ["show", "hide", "hide-children"] })], P.prototype, "listMode", void 0), e([y2(y3(k))], P.prototype, "spatialReference", void 0), e([y2(d)], P.prototype, "elevationInfo", null), e([y2({ json: { read: false }, readOnly: true })], P.prototype, "type", void 0), e([y2()], P.prototype, "associatedFeatureServiceItem", void 0), P = e([n("esri.layers.BuildingSceneLayer")], P); var C2 = P; export { C2 as default }; //# sourceMappingURL=BuildingSceneLayer-5OEEGE4D.js.map