/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["require","exports","../../core/Error","../../core/maybe"],(function(e,r,n,a){"use strict";const s=e=>Object.freeze(Object.defineProperty({__proto__:null,default:e},Symbol.toStringTag,{value:"Module"}));function i(){return Promise.all([new Promise(((r,n)=>e(["./webglDeps"],r,n))),new Promise(((r,n)=>e(["./mapViewDeps"],r,n)))])}const t=()=>i().then((()=>new Promise(((r,n)=>e(["./layers/TileLayerView2D"],(e=>r(s(e))),n))))),o=()=>i().then((()=>new Promise(((r,n)=>e(["./layers/FeatureLayerView2D"],(e=>r(s(e))),n))))),l={"base-dynamic":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/BaseDynamicLayerView2D"],(e=>r(s(e))),n))))),"base-tile":t,"bing-maps":t,csv:o,"geo-rss":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/GeoRSSLayerView2D"],(e=>r(s(e))),n))))),feature:o,geojson:o,graphics:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/GraphicsLayerView2D"],(e=>r(s(e))),n))))),group:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/GroupLayerView2D"],(e=>r(s(e))),n))))),imagery:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/ImageryLayerView2D"],(e=>r(s(e))),n))))),"imagery-tile":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/ImageryTileLayerView2D"],(e=>r(s(e))),n))))),kml:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/KMLLayerView2D"],(e=>r(s(e))),n))))),"map-image":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/MapImageLayerView2D"],(e=>r(s(e))),n))))),"map-notes":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/MapNotesLayerView2D"],(e=>r(s(e))),n))))),media:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/MediaLayerView2D"],(e=>r(s(e))),n))))),"ogc-feature":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/OGCFeatureLayerView2D"],(e=>r(s(e))),n))))),"open-street-map":t,route:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/RouteLayerView2D"],(e=>r(s(e))),n))))),stream:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/StreamLayerView2D"],(e=>r(s(e))),n))))),"subtype-group":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/SubtypeGroupLayerView2D"],(e=>r(s(e))),n))))),tile:t,"vector-tile":()=>i().then((()=>new Promise(((r,n)=>e(["./layers/VectorTileLayerView2D"],(e=>r(s(e))),n))))),wcs:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/ImageryTileLayerView2D"],(e=>r(s(e))),n))))),"web-tile":t,wfs:o,wms:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/WMSLayerView2D"],(e=>r(s(e))),n))))),wmts:()=>i().then((()=>new Promise(((r,n)=>e(["./layers/WMTSLayerView2D"],(e=>r(s(e))),n))))),"line-of-sight":null,"base-elevation":null,"building-scene":null,elevation:null,"integrated-mesh":null,"point-cloud":null,voxel:null,scene:null,unknown:null,unsupported:null};function w(e){const r=e.declaredClass?e.declaredClass.slice(e.declaredClass.lastIndexOf(".")+1):"Unknown",a=r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();return new n(`${a}:view-not-supported`,`${r} is not supported in 2D`)}const y={hasLayerViewModule:e=>a.isSome(l[e.type]),importLayerView:e=>{const r=l[e.type];if(a.isNone(r))throw w(e);return r(e)}};r.layerView2DImporter=y,Object.defineProperties(r,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
