{"version":3,"sources":["node_modules/@arcgis/core/core/workers/registry.js","node_modules/@arcgis/core/core/workers/utils.js","node_modules/@arcgis/core/core/workers/RemoteClient.js","node_modules/@arcgis/core/core/workers/connectionRegistry.js","node_modules/@arcgis/core/core/workers/Connection.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*/\nconst r = {\n statsWorker: () => import(\"../../smartMapping/statistics/support/statsWorker.js\"),\n geometryEngineWorker: () => import(\"../../geometry/geometryEngineWorker.js\"),\n CSVSourceWorker: () => import(\"../../layers/graphics/sources/support/CSVSourceWorker.js\"),\n EdgeProcessingWorker: () => import(\"../../views/3d/webgl-engine/lib/edgeRendering/EdgeProcessingWorker.js\"),\n ElevationSamplerWorker: () => import(\"../../geometry/support/meshUtils/ElevationSamplerWorker.js\"),\n FeatureServiceSnappingSourceWorker: () => import(\"../../views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js\"),\n GeoJSONSourceWorker: () => import(\"../../layers/graphics/sources/geojson/GeoJSONSourceWorker.js\"),\n LercWorker: () => import(\"../../layers/support/LercWorker.js\"),\n MemorySourceWorker: () => import(\"../../layers/graphics/sources/support/MemorySourceWorker.js\"),\n PBFDecoderWorker: () => import(\"../../views/3d/support/PBFDecoderWorker.js\"),\n Pipeline: () => import(\"../../views/2d/layers/features/Pipeline.js\"),\n PointCloudWorker: () => import(\"../../views/3d/layers/PointCloudWorker.js\"),\n RasterWorker: () => import(\"../../layers/support/RasterWorker.js\"),\n SceneLayerSnappingSourceWorker: () => import(\"../../views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js\"),\n SceneLayerWorker: () => import(\"../../views/3d/layers/SceneLayerWorker.js\"),\n WFSSourceWorker: () => import(\"../../layers/graphics/sources/WFSSourceWorker.js\"),\n WorkerTileHandler: () => import(\"../../views/2d/engine/vectorTiles/WorkerTileHandler.js\")\n};\nexport { r as registry };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport has from \"../has.js\";\nvar t;\n!function (t) {\n t[t.HANDSHAKE = 0] = \"HANDSHAKE\", t[t.OPEN = 1] = \"OPEN\", t[t.OPENED = 2] = \"OPENED\", t[t.RESPONSE = 3] = \"RESPONSE\", t[t.INVOKE = 4] = \"INVOKE\", t[t.ABORT = 5] = \"ABORT\", t[t.CLOSE = 6] = \"CLOSE\", t[t.OPEN_PORT = 7] = \"OPEN_PORT\", t[t.ON = 8] = \"ON\";\n}(t || (t = {}));\nlet e = 0;\nfunction r() {\n return e++;\n}\nfunction n(t) {\n return t && \"object\" == typeof t && (\"result\" in t || \"transferList\" in t);\n}\nfunction s(t) {\n return t ? \"string\" == typeof t ? JSON.stringify({\n name: \"message\",\n message: t\n }) : t.toJSON ? JSON.stringify(t) : JSON.stringify({\n name: t.name,\n message: t.message,\n details: t.details || {\n stack: t.stack\n }\n }) : null;\n}\nfunction f(e, r, i, a) {\n if (r.type === t.OPEN_PORT) return void e.postMessage(r, [r.port]);\n if (r.type !== t.INVOKE && r.type !== t.RESPONSE) return void e.postMessage(r);\n let u;\n if (n(i) ? (u = o(i.transferList), r.data = i.result) : (u = o(a), r.data = i), u) {\n if (has(\"ff\")) for (const n of u) if (\"byteLength\" in n && n.byteLength > 267386880) {\n const n = \"Worker call with large ArrayBuffer would crash Firefox\";\n switch (r.type) {\n case t.INVOKE:\n throw n;\n case t.RESPONSE:\n return void f(e, {\n type: t.RESPONSE,\n jobId: r.jobId,\n error: s(n)\n });\n }\n }\n e.postMessage(r, u);\n } else e.postMessage(r);\n}\nfunction i(t) {\n if (!t) return null;\n const e = t.data;\n return e ? \"string\" == typeof e ? JSON.parse(e) : e : null;\n}\nfunction o(t) {\n if (!t?.length) return null;\n if (has(\"esri-workers-arraybuffer-transfer\")) return t;\n const e = t.filter(t => !a(t));\n return e.length ? e : null;\n}\nfunction a(t) {\n return t instanceof ArrayBuffer || \"ArrayBuffer\" === t?.constructor?.name;\n}\nexport { t as MessageType, n as isTranferableResult, r as newJobId, f as postMessage, i as receiveMessage, s as toInvokeError };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { fullVersion as e } from \"../../kernel.js\";\nimport s from \"../Error.js\";\nimport { on as t } from \"../events.js\";\nimport { makeHandle as o } from \"../handleUtils.js\";\nimport { removeMaybe as n } from \"../maybe.js\";\nimport { isAborted as r, createAbortError as i, onAbort as l, isPromiseLike as a, isAbortError as h } from \"../promiseUtils.js\";\nimport { registry as c } from \"./registry.js\";\nimport { newJobId as p, MessageType as _, receiveMessage as u, toInvokeError as d, postMessage as b } from \"./utils.js\";\nimport { buildDate as m, commitHash as g } from \"../../support/revision.js\";\nconst {\n CLOSE: f,\n ABORT: v,\n INVOKE: M,\n RESPONSE: k,\n OPEN_PORT: j,\n ON: y\n } = _,\n I = 2;\nclass J {\n constructor(e) {\n this._timer = null, this._cancelledJobIds = new Set(), this._invokeMessages = [], this._invoke = e, this._timer = null, this._process = this._process.bind(this);\n }\n push(e) {\n e.type === _.ABORT ? this._cancelledJobIds.add(e.jobId) : (this._invokeMessages.push(e), null === this._timer && (this._timer = setTimeout(this._process, 0)));\n }\n clear() {\n this._invokeMessages.length = 0, this._cancelledJobIds.clear(), this._timer = null;\n }\n _process() {\n this._timer = null;\n for (const e of this._invokeMessages) this._cancelledJobIds.has(e.jobId) || this._invoke(e);\n this._cancelledJobIds.clear(), this._invokeMessages.length = 0;\n }\n}\nclass w {\n static connect(e) {\n const s = new MessageChannel();\n let t;\n t = \"function\" == typeof e ? new e() : \"default\" in e && \"function\" == typeof e.default ? new e.default() : e;\n const o = new w(s.port1, {\n channel: s,\n client: t\n });\n return \"object\" == typeof t && \"remoteClient\" in t && (t.remoteClient = o), w.clients.set(o, t), s.port2;\n }\n static loadWorker(e) {\n const s = c[e];\n return s ? s() : Promise.resolve(null);\n }\n constructor(e, s, t) {\n this._port = e, this._jobQueue = t, this._outJobs = new Map(), this._inJobs = new Map(), this._invokeQueue = new J(e => this._onInvokeMessage(e)), this._client = s.client, this._onMessage = this._onMessage.bind(this), this._channel = s.channel, this._schedule = s.schedule, this._port.addEventListener(\"message\", this._onMessage), this._port.start();\n }\n close() {\n this._post({\n type: f\n }), this._close();\n }\n isBusy() {\n return this._outJobs.size > 0;\n }\n invoke(e, t, o) {\n const a = o?.signal,\n h = o?.transferList;\n if (!this._port) return Promise.reject(new s(\"worker:port-closed\", `Cannot call invoke('${e}'), port is closed`, {\n methodName: e,\n data: t\n }));\n const c = p();\n return new Promise((s, o) => {\n if (r(a)) return this._processWork(), void o(i());\n const p = l(a, () => {\n const e = this._outJobs.get(c);\n e && (this._outJobs.delete(c), this._processWork(), n(e.abortHandle), this._post({\n type: v,\n jobId: c\n }), o(i()));\n }),\n _ = {\n resolve: s,\n reject: o,\n abortHandle: p,\n debugInfo: e\n };\n this._outJobs.set(c, _), this._post({\n type: M,\n jobId: c,\n methodName: e,\n abortable: null != a\n }, t, h);\n });\n }\n on(e, s) {\n const t = new MessageChannel();\n function n(e) {\n s(e.data);\n }\n return this._port.postMessage({\n type: _.ON,\n eventType: e,\n port: t.port2\n }, [t.port2]), t.port1.addEventListener(\"message\", n), t.port1.start(), o(() => {\n t.port1.postMessage({\n type: _.CLOSE\n }), t.port1.close(), t.port1.removeEventListener(\"message\", n);\n });\n }\n jobAdded() {\n this._processWork();\n }\n openPort() {\n const e = new MessageChannel();\n return this._post({\n type: j,\n port: e.port2\n }), e.port1;\n }\n _processWork() {\n if (this._outJobs.size >= I) return;\n const e = this._jobQueue?.pop();\n if (!e) return;\n const {\n methodName: s,\n data: t,\n invokeOptions: o,\n resolver: n\n } = e;\n this.invoke(s, t, o).then(e => n.resolve(e)).catch(e => n.reject(e));\n }\n _close() {\n this._channel && (this._channel = void 0), this._port.removeEventListener(\"message\", this._onMessage), this._port.close(), this._outJobs.forEach(e => {\n n(e.abortHandle), e.reject(i(`Worker closing, aborting job calling '${e.debugInfo}'`));\n }), this._inJobs.clear(), this._outJobs.clear(), this._invokeQueue.clear(), this._port = null, this._client = null, this._schedule = null;\n }\n _onMessage(e) {\n null != this._schedule ? this._schedule(() => this._processMessage(e)) : this._processMessage(e);\n }\n _processMessage(e) {\n const s = u(e);\n if (s) switch (s.type) {\n case k:\n this._onResponseMessage(s);\n break;\n case M:\n this._invokeQueue.push(s);\n break;\n case v:\n this._onAbortMessage(s);\n break;\n case f:\n this._onCloseMessage();\n break;\n case j:\n this._onOpenPortMessage(s);\n break;\n case y:\n this._onOnMessage(s);\n }\n }\n _onAbortMessage(e) {\n const s = this._inJobs,\n t = e.jobId,\n o = s.get(t);\n this._invokeQueue.push(e), o && (o.controller && o.controller.abort(), s.delete(t));\n }\n _onCloseMessage() {\n const e = this._client;\n this._close(), e && \"destroy\" in e && w.clients.get(this) === e && e.destroy(), w.clients.delete(this), e?.remoteClient && (e.remoteClient = null);\n }\n _onInvokeMessage(e) {\n const {\n methodName: s,\n jobId: t,\n data: o,\n abortable: n\n } = e,\n r = n ? new AbortController() : null,\n i = this._inJobs;\n let l,\n c = this._client,\n p = c[s];\n try {\n if (!p && s && s.includes(\".\")) {\n const e = s.split(\".\");\n for (let s = 0; s < e.length - 1; s++) c = c[e[s]], p = c[e[s + 1]];\n }\n if (\"function\" != typeof p) throw new TypeError(`${s} is not a function`);\n l = p.call(c, o, {\n client: this,\n signal: r ? r.signal : null\n });\n } catch (_) {\n return void this._post({\n type: k,\n jobId: t,\n error: d(_)\n });\n }\n a(l) ? (i.set(t, {\n controller: r,\n promise: l\n }), l.then(e => {\n i.has(t) && (i.delete(t), this._post({\n type: k,\n jobId: t\n }, e));\n }, e => {\n i.has(t) && (i.delete(t), h(e) || this._post({\n type: k,\n jobId: t,\n error: d(e || {\n message: `Error encountered at method ${s}`\n })\n }));\n })) : this._post({\n type: k,\n jobId: t\n }, l);\n }\n _onOpenPortMessage(e) {\n new w(e.port, {\n client: this._client\n });\n }\n _onOnMessage(e) {\n const {\n port: s\n } = e,\n o = this._client.on(e.eventType, e => {\n s.postMessage(e);\n }),\n n = t(e.port, \"message\", e => {\n const t = u(e);\n t?.type === _.CLOSE && (n.remove(), o.remove(), s.close());\n });\n }\n _onResponseMessage(e) {\n const {\n jobId: t,\n error: o,\n data: r\n } = e,\n i = this._outJobs;\n if (!i.has(t)) return;\n const l = i.get(t);\n i.delete(t), this._processWork(), n(l.abortHandle), o ? l.reject(s.fromJSON(JSON.parse(o))) : l.resolve(r);\n }\n _post(e, s, t) {\n return b(this._port, e, s, t);\n }\n}\nw.kernelInfo = {\n buildDate: m,\n fullVersion: e,\n revision: g\n}, w.clients = new Map();\nexport { w 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*/\nconst n = new FinalizationRegistry(n => {\n n.close();\n});\nfunction e(e, i) {\n n.register(e, i, i);\n}\nfunction i(e) {\n n.unregister(e);\n}\nexport { e as register, i as unregister };","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.28/esri/copyright.txt for details.\n*/\nimport { handlesGroup as e } from \"../handleUtils.js\";\nimport t from \"../Logger.js\";\nimport { isPromiseLike as s, createAbortError as i, createResolver as n, throwIfAborted as o } from \"../promiseUtils.js\";\nimport r from \"../Queue.js\";\nimport { unregister as l } from \"./connectionRegistry.js\";\nimport h from \"./RemoteClient.js\";\nclass c {\n constructor() {\n this._inUseClients = new Array(), this._clients = new Array(), this._clientPromises = new Array(), this._ongoingJobsQueue = new r();\n }\n destroy() {\n this.close();\n }\n get closed() {\n return !this._clients?.length;\n }\n open(e, t) {\n return new Promise((i, n) => {\n let r = !0;\n const l = e => {\n o(t.signal), r && (r = !1, e());\n };\n this._clients.length = e.length, this._clientPromises.length = e.length, this._inUseClients.length = e.length;\n for (let o = 0; o < e.length; ++o) {\n const r = e[o];\n s(r) ? this._clientPromises[o] = r.then(e => (this._clients[o] = new h(e, t, this._ongoingJobsQueue), l(i), this._clients[o]), () => (l(n), null)) : (this._clients[o] = new h(r, t, this._ongoingJobsQueue), this._clientPromises[o] = Promise.resolve(this._clients[o]), l(i));\n }\n });\n }\n broadcast(e, t, s) {\n const i = new Array(this._clientPromises.length);\n for (let n = 0; n < this._clientPromises.length; ++n) {\n const o = this._clientPromises[n];\n i[n] = o.then(i => i?.invoke(e, t, s));\n }\n return i;\n }\n close() {\n let e;\n for (; e = this._ongoingJobsQueue.pop();) e.resolver.reject(i(`Worker closing, aborting job calling '${e.methodName}'`));\n for (const t of this._clientPromises) t.then(e => e?.close());\n this._clients.length = 0, this._clientPromises.length = 0, this._inUseClients.length = 0, l(this);\n }\n invoke(e, s, i) {\n let o;\n Array.isArray(i) ? (t.getLogger(\"esri.core.workers.Connection\").warn(\"invoke()\", \"The transferList parameter is deprecated, use the options object instead\"), o = {\n transferList: i\n }) : o = i;\n const r = n();\n this._ongoingJobsQueue.push({\n methodName: e,\n data: s,\n invokeOptions: o,\n resolver: r\n });\n for (let t = 0; t < this._clientPromises.length; t++) {\n const e = this._clients[t];\n e ? e.jobAdded() : this._clientPromises[t].then(e => e?.jobAdded());\n }\n return r.promise;\n }\n on(t, s) {\n return Promise.all(this._clientPromises).then(() => e(this._clients.map(e => e.on(t, s))));\n }\n openPorts() {\n return new Promise(e => {\n const t = new Array(this._clientPromises.length);\n let s = t.length;\n for (let i = 0; i < this._clientPromises.length; ++i) {\n this._clientPromises[i].then(n => {\n n && (t[i] = n.openPort()), 0 == --s && e(t);\n });\n }\n });\n }\n get test() {\n return {\n numClients: this._clients.length\n };\n }\n}\nexport { c as default };"],"mappings":"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","names":["r","t","e","r","s","i","a","u","n","f","t","e","s","o","r","a","c","n","i","l","n","e","i","c","s","e","t","i","n","r","l","o"],"x_google_ignoreList":[0,1,2,3,4]}