{"version":3,"sources":["node_modules/@arcgis/core/support/basemapUtils.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*/\nimport e from \"../Basemap.js\";\nimport r from \"../config.js\";\nimport t from \"../core/Collection.js\";\nimport n from \"../core/Logger.js\";\nimport { destroyMaybe as a, mappedFind as i } from \"../core/maybe.js\";\nimport { Url as l, makeAbsolute as s, normalize as u } from \"../core/urlUtils.js\";\nimport { ensureType as c } from \"../core/accessorSupport/ensureType.js\";\nimport { effectEquals as o } from \"../layers/effects/utils.js\";\nimport { esriBasemapDefinitions as f } from \"./basemapDefinitions.js\";\nconst p = n.getLogger(\"esri.support.basemapUtils\");\nfunction y() {\n return {};\n}\nfunction m(e) {\n for (const r in e) {\n const t = e[r];\n a(t), delete e[r];\n }\n}\nfunction b(t, n) {\n let a;\n if (\"string\" == typeof t) {\n const i = (t in f),\n l = !i && t.includes(\"/\");\n if (!i && !l) {\n const e = Object.entries(f).filter(([e, t]) => r.apiKey && !t.classic || !r.apiKey && (t.classic || t.is3d)).map(([e]) => `\"${e}\"`).sort().join(\", \");\n return p.warn(`Unable to find basemap definition for: ${t}. Try one of these: ${e}`), null;\n }\n n && (a = n[t]), a || (a = i ? e.fromId(t) : new e({\n style: {\n id: t\n }\n }), n && (n[t] = a));\n } else a = c(e, t);\n return a?.destroyed && (p.warn(\"The provided basemap is already destroyed\", {\n basemap: a\n }), a = null), a;\n}\nfunction d(e) {\n return \"Web Scene\" === e.portalItem?.type;\n}\nfunction L(e) {\n return !!e?.portalItem?.tags?.some(e => \"beta\" === e.toLowerCase());\n}\nfunction S(e, r) {\n return e.basemap?.referenceLayers?.some(e => e.uid === r) || e.basemap?.baseLayers?.some(e => e.uid === r);\n}\nfunction v(e, r = null) {\n const t = b(e);\n if (!t) return null;\n const n = t.clone();\n return r && (n.baseLayers = T(n.baseLayers, r.baseLayers), n.referenceLayers = T(n.referenceLayers, r.referenceLayers)), n;\n}\nlet g;\nfunction h(e) {\n if (g) return g(e);\n let r = null;\n const t = M(e),\n n = !t?.baseLayers.length;\n for (const a in f) {\n const e = K(t, $(f[a]), {\n mustMatchReferences: n\n });\n if (\"equal\" === e) {\n r = a;\n break;\n }\n \"base-layers-equal\" === e && (r = a);\n }\n return r;\n}\nfunction I(e) {\n g = e;\n}\nfunction R(e, r) {\n if (e === r) return !0;\n if (null != e?.portalItem?.id && e.portalItem.id === r?.portalItem?.id) return !0;\n return \"equal\" === K(M(e), M(r), {\n mustMatchReferences: !0\n });\n}\nfunction T(e, r) {\n const n = new t();\n return e.forEach(e => {\n const t = r.find(r => \"scene\" !== r.type && D(A(e), A(r))) || e;\n n.includes(t) ? n.push(e) : n.push(t);\n }), n;\n}\nfunction w(e) {\n return !!e?.baseLayers.concat(e.referenceLayers).some(j);\n}\nfunction j(e) {\n if (x(e.url)) return !0;\n if (\"vector-tile\" === e.type) for (const r in e.sourceNameToSource) {\n const t = e.sourceNameToSource[r];\n if (x(t?.sourceUrl)) return !0;\n }\n return !1;\n}\nfunction U(e, r) {\n if (null == r || null == e) return {\n spatialReference: null,\n updating: !1\n };\n if (\"not-loaded\" === r.loadStatus) return r.load(), {\n spatialReference: null,\n updating: !0\n };\n if (r.spatialReference) return {\n spatialReference: r.spatialReference,\n updating: !1\n };\n if (0 === r.baseLayers.length) return {\n spatialReference: null,\n updating: !1\n };\n const t = r.baseLayers.at(0);\n switch (t.loadStatus) {\n case \"not-loaded\":\n t.load();\n case \"loading\":\n return {\n spatialReference: null,\n updating: !0\n };\n case \"failed\":\n return {\n spatialReference: null,\n updating: !1\n };\n }\n const n = ((\"supportedSpatialReferences\" in t ? t.supportedSpatialReferences : null) || [\"tileInfo\" in t ? t.tileInfo?.spatialReference : t.spatialReference]).filter(Boolean),\n a = e.spatialReference;\n return a ? {\n spatialReference: n.find(e => a.equals(e)) ?? n[0] ?? null,\n updating: !1\n } : {\n spatialReference: n[0],\n updating: !1\n };\n}\nconst q = /^(basemaps|ibasemaps).*-api\\.arcgis\\.com$/i;\nfunction x(e) {\n if (!e) return !1;\n const r = new l(s(e));\n return !!r.authority && q.test(r.authority);\n}\nfunction M(e) {\n return e ? !e.loaded && e.resourceInfo ? $(e.resourceInfo.data) : {\n baseLayers: k(e.baseLayers),\n referenceLayers: k(e.referenceLayers)\n } : null;\n}\nfunction k(e) {\n return (t.isCollection(e) ? e.toArray() : e).map(A);\n}\nfunction A(e) {\n return {\n type: e.type,\n effect: \"effect\" in e ? e.effect : void 0,\n url: E(\"urlTemplate\" in e && e.urlTemplate || e.url || \"styleUrl\" in e && e.styleUrl || \"\"),\n minScale: \"minScale\" in e && null != e.minScale ? e.minScale : 0,\n maxScale: \"maxScale\" in e && null != e.maxScale ? e.maxScale : 0,\n opacity: null != e.opacity ? e.opacity : 1,\n visible: null == e.visible || !!e.visible,\n sublayers: \"map-image\" !== e.type && \"wms\" !== e.type || null == e.sublayers ? void 0 : e.sublayers?.map(e => ({\n id: e.id,\n visible: e.visible\n })),\n activeLayerId: \"wmts\" === e.type ? e.activeLayer?.id : void 0\n };\n}\nfunction C(e) {\n return e.isReference || \"ArcGISSceneServiceLayer\" === e.layerType;\n}\nfunction $(e) {\n return e ? {\n baseLayers: G((e.baseMapLayers ?? []).filter(e => !C(e))),\n referenceLayers: G((e.baseMapLayers ?? []).filter(e => C(e)))\n } : null;\n}\nfunction G(e) {\n return e.map(e => B(e));\n}\nfunction B(e) {\n let r;\n switch (e.layerType) {\n case \"VectorTileLayer\":\n r = \"vector-tile\";\n break;\n case \"ArcGISTiledMapServiceLayer\":\n r = \"tile\";\n break;\n case \"ArcGISSceneServiceLayer\":\n r = \"scene\";\n break;\n default:\n r = \"unknown\";\n }\n return {\n type: r,\n effect: e.effect,\n url: E(e.templateUrl || e.urlTemplate || e.styleUrl || e.url),\n minScale: e.minScale ?? 0,\n maxScale: e.maxScale ?? 0,\n opacity: e.opacity ?? 1,\n visible: null == e.visibility || !!e.visibility,\n sublayers: void 0,\n activeLayerId: void 0\n };\n}\nfunction K(e, r, t) {\n if (null != e != (null != r)) return \"not-equal\";\n if (!e || !r) return \"equal\";\n if (!N(e.baseLayers, r.baseLayers)) return \"not-equal\";\n return N(e.referenceLayers, r.referenceLayers) ? \"equal\" : t.mustMatchReferences ? \"not-equal\" : \"base-layers-equal\";\n}\nfunction N(e, r) {\n if (e.length !== r.length) return !1;\n for (let t = 0; t < e.length; t++) if (!D(e[t], r[t])) return !1;\n return !0;\n}\nfunction D(e, r) {\n if (e.type !== r.type || e.url !== r.url || e.minScale !== r.minScale || e.maxScale !== r.maxScale || e.visible !== r.visible || e.opacity !== r.opacity) return !1;\n if (!o(e.effect, r.effect)) return !1;\n if (null != e.activeLayerId || null != r.activeLayerId) return e.activeLayerId === r.activeLayerId;\n if (null != e.sublayers || null != r.sublayers) {\n if (null == e.sublayers || null == r.sublayers || e.sublayers.length !== r.sublayers.length) return !1;\n for (let t = 0; t < e.sublayers.length; t++) {\n const n = e.sublayers.at(t),\n a = r.sublayers.at(t);\n if (n?.id !== a?.id || n?.visible !== a?.visible) return !1;\n }\n }\n return !0;\n}\nfunction E(e) {\n return e ? u(e).replace(/^\\s*https?:/i, \"\").toLowerCase() : \"\";\n}\nfunction O(e) {\n if (!e) return null;\n const {\n thumbnailUrl: r\n } = e;\n if (r) return r;\n const t = h(e);\n return t ? f[t].thumbnailUrl : i(e.baseLayers, V);\n}\nfunction V(e) {\n return \"portalItem\" in e ? e.portalItem?.thumbnailUrl : void 0;\n}\nexport { v as clonePreservingTiledLayers, R as contentEquals, y as createCache, m as destroyCache, b as ensureType, U as findSpatialReference, O as getBasemapThumbnailUrl, h as getWellKnownBasemapId, w as hasDeveloperBasemapLayer, d as isBasemap3D, L as isBasemapInBeta, S as isBasemapLayer, j as isDeveloperBasemapLayer, I as overrideGetWellKnownBasemapId };"],"mappings":"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","names":["s","r","e","t","d","r","s","e","K","R","r","K","x","r","e","K","s","V"],"x_google_ignoreList":[0]}