import { i } from "./chunk-EEMLKLSH.js"; import { ae } from "./chunk-OBOLLK7J.js"; import "./chunk-CR67YDNV.js"; import "./chunk-3XO4E4TL.js"; import "./chunk-6G6XHVK2.js"; import "./chunk-3RTOMVBL.js"; import "./chunk-YR7YKE3S.js"; import "./chunk-GSORSXL5.js"; import "./chunk-H3QCF24A.js"; import { f, u } from "./chunk-MNZXIBJ7.js"; import "./chunk-YJKEIUMW.js"; import "./chunk-JH3PLIM6.js"; import "./chunk-UFOCENZS.js"; import "./chunk-FCDUTNBY.js"; import "./chunk-GZJP6H3U.js"; import "./chunk-PS4B3D6M.js"; import "./chunk-DO6JJUZG.js"; import "./chunk-54X4RLMR.js"; import "./chunk-MWIFVNKP.js"; import "./chunk-MIWGTTJJ.js"; import "./chunk-LL6JU3GU.js"; import "./chunk-LSDW2622.js"; import "./chunk-ZIWBDWEW.js"; import "./chunk-IQNZZCQJ.js"; import "./chunk-B2HJOMLZ.js"; import "./chunk-II7RCTF3.js"; import "./chunk-VS4BIQ2O.js"; import "./chunk-HWIURR7X.js"; import "./chunk-Q4LKAPDF.js"; import "./chunk-TODU7HVH.js"; import "./chunk-23ONSYIH.js"; import "./chunk-P2L4QEOI.js"; import "./chunk-3T4BXU2T.js"; import "./chunk-SRMDO2KR.js"; import "./chunk-PZKZIMMP.js"; import "./chunk-YLVXZ2PS.js"; import { D, O, b2 as b, g, h2, h3, h4 } from "./chunk-HDAG7QRR.js"; import "./chunk-EE6TL7XD.js"; import "./chunk-GDB2KX4Y.js"; import "./chunk-546QCRS4.js"; import "./chunk-QXZVBSBH.js"; import "./chunk-T4GXZJ3D.js"; import "./chunk-773XI6MQ.js"; import "./chunk-ILP23N26.js"; import "./chunk-5NM43FFO.js"; import "./chunk-WFSV2B2I.js"; import "./chunk-M5BTTMP6.js"; import "./chunk-XZA4MVET.js"; import "./chunk-J525NRN3.js"; import "./chunk-MI7HWWFL.js"; import "./chunk-Q34L5KZA.js"; import "./chunk-ZHRMTKME.js"; import "./chunk-ZVHTCCQC.js"; import "./chunk-PCGDLSZ4.js"; import "./chunk-CAYFEZCR.js"; import "./chunk-MFFE4I2S.js"; import "./chunk-XBH7TGC2.js"; import "./chunk-K3NA3LQS.js"; import "./chunk-LMCIAW5S.js"; import "./chunk-OTS3UE5B.js"; import "./chunk-6RAL4JPQ.js"; import "./chunk-VAY3LZG7.js"; import "./chunk-4E6K4P67.js"; import "./chunk-TRK7CKWP.js"; import "./chunk-LGW7TID4.js"; import "./chunk-3OHML7FO.js"; import "./chunk-G5AI6ZNE.js"; import "./chunk-H6ETEALK.js"; import "./chunk-FIYKFRB2.js"; import "./chunk-P4UZNLD5.js"; import "./chunk-FYNVVMWY.js"; import "./chunk-Q52DVFYK.js"; import "./chunk-HBMVUVZX.js"; import "./chunk-CRGVDJI6.js"; import "./chunk-QOV6ITMI.js"; import "./chunk-DH2OBAUC.js"; import "./chunk-TNLRDNTC.js"; import "./chunk-6P6NA7JB.js"; import "./chunk-S7R5EXHN.js"; import "./chunk-QTOOFNRV.js"; import "./chunk-6EU7GFUT.js"; import "./chunk-HZJYXMI6.js"; import "./chunk-UPD4MTCL.js"; import "./chunk-GRBROWI6.js"; import "./chunk-5NKYXKIA.js"; import "./chunk-FTI5VP6T.js"; import "./chunk-RZFGRBD7.js"; import "./chunk-PUSPZYFZ.js"; import "./chunk-EN7YGJWG.js"; import "./chunk-VBNMTM7L.js"; import "./chunk-3D3QEPRE.js"; import "./chunk-JFNNSBWL.js"; import "./chunk-LY74KTXV.js"; import "./chunk-EWE6EXPY.js"; import "./chunk-KUXNUNAI.js"; import "./chunk-KMAHKQ2G.js"; import "./chunk-522WBHUO.js"; import "./chunk-WNCU6BFU.js"; import "./chunk-PIGRDDRG.js"; import "./chunk-XLV7RUSE.js"; import "./chunk-NTUXR253.js"; import "./chunk-C43UE3Z5.js"; import { p } from "./chunk-V7H6CJ37.js"; import "./chunk-H2KDMZTR.js"; import "./chunk-RMX2AZ4P.js"; import "./chunk-NE3ESGA6.js"; import { h, l } from "./chunk-YIS6BAC3.js"; import "./chunk-7XXXCK2A.js"; import "./chunk-7ZIDBK7B.js"; import "./chunk-FONIFA5N.js"; import "./chunk-65BYCSII.js"; import "./chunk-WZQZRKNH.js"; import "./chunk-LRDX4TO7.js"; import "./chunk-6A4U74YA.js"; import "./chunk-WJW5DUN6.js"; import "./chunk-PJ7ZQ4VD.js"; import "./chunk-WDLTDV2L.js"; import "./chunk-TERAW6FT.js"; import "./chunk-N2663GRX.js"; import "./chunk-O4FY3ITT.js"; import "./chunk-WEMIK25H.js"; import "./chunk-7N4X6GF3.js"; import "./chunk-JXW4QTJA.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-AFZ7XSEW.js"; import "./chunk-4NKD334K.js"; import "./chunk-65K7LC56.js"; import "./chunk-ATPLLI5W.js"; import "./chunk-MXB2XLKV.js"; import "./chunk-XH7RUGVZ.js"; import "./chunk-TBBTRX4O.js"; import "./chunk-YBSUITLL.js"; import { j } from "./chunk-ALDCDSPV.js"; import "./chunk-DT6EAZQ5.js"; import "./chunk-HNOZUNJ4.js"; import "./chunk-VNFRAYHO.js"; import "./chunk-R5IG2D6H.js"; import "./chunk-VBRY5KJM.js"; import "./chunk-PDKDCAAD.js"; import "./chunk-ECW2QABR.js"; import "./chunk-GCDJLKH4.js"; import "./chunk-MRJEICT6.js"; import { d, e, n2 as n } from "./chunk-Y3WMVFTW.js"; import "./chunk-SAS7RONY.js"; import "./chunk-WSRBH7BF.js"; import "./chunk-IHXECKQQ.js"; import "./chunk-ULGDPLM2.js"; import "./chunk-EMJ4ZSM2.js"; import "./chunk-IKP3YN53.js"; import { r, t } from "./chunk-GZT4BVFP.js"; import "./chunk-A5ICIBVI.js"; // node_modules/@arcgis/core/views/2d/layers/RouteLayerView2D.js var k = Object.freeze({ remove() { }, pause() { }, resume() { } }); var v = ["route-info", "direction-line", "direction-point", "polygon-barrier", "polyline-barrier", "point-barrier", "stop"]; var j2 = { graphic: null, property: null, oldValue: null, newValue: null }; function M(e2) { return e2 instanceof b || e2 instanceof h2 || e2 instanceof O || e2 instanceof g || e2 instanceof h3 || e2 instanceof h4 || e2 instanceof D; } function V(e2) { return j.isCollection(e2) && e2.length && M(e2.getItemAt(0)); } function G(e2) { return Array.isArray(e2) && e2.length && M(e2[0]); } var I = class extends f(u) { constructor() { super(...arguments), this._graphics = new j(), this._highlightIds = new Map(), this._networkFeatureMap = new Map(), this._networkGraphicMap = new Map(); } get _routeItems() { return new p({ getCollections: () => [r(this.layer.routeInfo) ? new j([this.layer.routeInfo]) : null, this.layer.directionLines, this.layer.directionPoints, this.layer.polygonBarriers, this.layer.polylineBarriers, this.layer.pointBarriers, this.layer.stops] }); } initialize() { this.updatingHandles.addOnCollectionChange(() => this._routeItems, (e2) => this._routeItemsChanged(e2), h); } destroy() { this.handles.removeAll(), this.updatingHandles.removeAll(), this._networkFeatureMap.clear(), this._networkGraphicMap.clear(), this._graphics.removeAll(); } attach() { this._createGraphicsView(); } detach() { this._destroyGraphicsView(); } async fetchPopupFeatures(e2) { return this._graphicsView.hitTest(e2).filter((e3) => !!e3.popupTemplate); } highlight(e2) { let t2; t2 = M(e2) ? [this._getNetworkFeatureUid(e2)] : G(e2) ? e2.map((e3) => this._getNetworkFeatureUid(e3)) : V(e2) ? e2.map((e3) => this._getNetworkFeatureUid(e3)).toArray() : [e2.uid]; const r2 = t2.filter(r); return r2.length ? (this._addHighlight(r2), { remove: () => this._removeHighlight(r2) }) : k; } async hitTest(e2, t2) { if (this.suspended) return null; const r2 = this._graphicsView.hitTest(e2).filter(r).map((e3) => this._networkGraphicMap.get(e3)); if (!r2.length) return null; const { layer: s } = this; return r2.reverse().map((t3) => ({ type: "route", layer: s, mapPoint: e2, networkFeature: t3 })); } isUpdating() { return this._graphicsView.updating; } moveStart() { } moveEnd() { } update(e2) { this._graphicsView.processUpdate(e2); } viewChange() { this._graphicsView.viewChange(); } _addHighlight(e2) { for (const t2 of e2) if (this._highlightIds.has(t2)) { const e3 = this._highlightIds.get(t2); this._highlightIds.set(t2, e3 + 1); } else this._highlightIds.set(t2, 1); this._updateHighlight(); } _createGraphic(e2) { const t2 = e2.toGraphic(); return t2.layer = this.layer, t2.sourceLayer = this.layer, t2; } _createGraphicsView() { const e2 = this.view, t2 = () => this.requestUpdate(), r2 = new i(e2.featuresTilingScheme); this._graphicsView = new ae({ container: r2, graphics: this._graphics, requestUpdateCallback: t2, view: e2 }), this.container.addChild(r2), this._updateHighlight(); } _destroyGraphicsView() { this.container.removeChild(this._graphicsView.container), this._graphicsView.destroy(); } _getDrawOrder(e2) { const t2 = this._networkGraphicMap.get(e2); return v.indexOf(t2.type); } _getNetworkFeatureUid(e2) { return this._networkFeatureMap.has(e2) ? this._networkFeatureMap.get(e2).uid : null; } _removeHighlight(e2) { for (const t2 of e2) if (this._highlightIds.has(t2)) { const e3 = this._highlightIds.get(t2) - 1; e3 === 0 ? this._highlightIds.delete(t2) : this._highlightIds.set(t2, e3); } this._updateHighlight(); } _routeItemsChanged(e2) { if (e2.removed.length) { this._graphics.removeMany(e2.removed.map((e3) => { const t2 = this._networkFeatureMap.get(e3); return this._networkFeatureMap.delete(e3), this._networkGraphicMap.delete(t2), t2; })); for (const t2 of e2.removed) this.handles.remove(t2); } if (e2.added.length) { this._graphics.addMany(e2.added.map((e3) => { const t2 = this._createGraphic(e3); return t(t2.symbol) ? null : (this._networkFeatureMap.set(e3, t2), this._networkGraphicMap.set(t2, e3), t2); }).filter(r)); for (const t2 of e2.added) this.handles.add([l(() => t2.geometry, (e3, r2) => { this._updateGraphic(t2, "geometry", e3, r2); }), l(() => t2.symbol, (e3, r2) => { this._updateGraphic(t2, "symbol", e3, r2); })], t2); this._graphics.sort((e3, t2) => this._getDrawOrder(e3) - this._getDrawOrder(t2)); } } _updateGraphic(e2, t2, r2, i2) { if (!this._networkFeatureMap.has(e2)) { const t3 = this._createGraphic(e2); return this._networkFeatureMap.set(e2, t3), this._networkGraphicMap.set(t3, e2), void this._graphics.add(t3); } const s = this._networkFeatureMap.get(e2); s[t2] = r2, j2.graphic = s, j2.property = t2, j2.oldValue = i2, j2.newValue = r2, this._graphicsView.graphicUpdateHandler(j2); } _updateHighlight() { const e2 = Array.from(this._highlightIds.keys()); this._graphicsView.setHighlight(e2); } }; e([d()], I.prototype, "_graphics", void 0), e([d()], I.prototype, "_routeItems", null), I = e([n("esri.views.2d.layers.RouteLayerView2D")], I); var F = I; export { F as default }; //# sourceMappingURL=RouteLayerView2D-NLH7XDMR.js.map