import { j as j2 } from "./chunk-ALDCDSPV.js"; import { d, e, l2 as l, n2 as n } from "./chunk-Y3WMVFTW.js"; import { j, x } from "./chunk-ULGDPLM2.js"; import { s } from "./chunk-EMJ4ZSM2.js"; // node_modules/@arcgis/core/layers/mixins/refresh.js var t = new j2(); var o = new WeakMap(); function n2(e2) { c(e2) && t.push(e2); } function s2(e2) { c(e2) && t.includes(e2) && t.remove(e2); } function c(e2) { return e2 && typeof e2 == "object" && "refreshInterval" in e2 && "refresh" in e2; } function i(e2, r) { return Number.isFinite(e2) && Number.isFinite(r) ? r <= 0 ? e2 : i(r, e2 % r) : 0; } var f = 0; var a = 0; function l2() { const e2 = Date.now(); for (const r of t) if (r.refreshInterval) { e2 - (o.get(r) ?? 0) + 5 >= 6e4 * r.refreshInterval && (o.set(r, e2), r.refresh(e2)); } } l(() => { const e2 = Date.now(); let r = 0; for (const n4 of t) r = i(Math.round(6e4 * n4.refreshInterval), r), n4.refreshInterval ? o.get(n4) || o.set(n4, e2) : o.delete(n4); if (r !== a) { if (a = r, clearInterval(f), a === 0) return void (f = 0); f = setInterval(l2, a); } }); // node_modules/@arcgis/core/layers/mixins/RefreshableLayer.js var n3 = (p) => { let n4 = class extends p { constructor(...e2) { super(...e2), this.refreshInterval = 0, this.refreshTimestamp = 0, this._debounceHasDataChanged = x(() => this.hasDataChanged()), this.when().then(() => { n2(this); }, () => { }); } destroy() { s2(this); } get refreshParameters() { return { _ts: this.refreshTimestamp || null }; } refresh(e2 = Date.now()) { j(this._debounceHasDataChanged()).then((r) => { r && this._set("refreshTimestamp", e2), this.emit("refresh", { dataChanged: r }); }, (e3) => { s.getLogger(this.declaredClass).error(e3), this.emit("refresh", { dataChanged: false, error: e3 }); }); } async hasDataChanged() { return true; } }; return e([d({ type: Number, cast: (e2) => e2 >= 0.1 ? e2 : e2 <= 0 ? 0 : 0.1, json: { write: true } })], n4.prototype, "refreshInterval", void 0), e([d({ readOnly: true })], n4.prototype, "refreshTimestamp", void 0), e([d()], n4.prototype, "refreshParameters", null), n4 = e([n("esri.layers.mixins.RefreshableLayer")], n4), n4; }; export { n3 as n }; //# sourceMappingURL=chunk-CYI7KFYB.js.map