@doegis/core
Version:
DOE GIS API
3 lines (1 loc) • 864 B
JavaScript
import"../../../../../core/has.js";import{isNone as e,isSome as t}from"../../../../../core/maybe.js";import{getGraphicEffectiveElevationMode as o,hasGraphicFeatureExpressionInfo as r}from"../../../../../support/elevationInfoUtils.js";import{SupportedGraphicResult as s}from"../isSupportedGraphicUtils.js";function i(i){if("graphics"!==i.layer?.type)return s.GRAPHICS_LAYER_MISSING;if(e(i.geometry))return s.GEOMETRY_MISSING;switch(i.geometry.type){case"point":break;case"polygon":case"polyline":case"multipoint":case"extent":case"mesh":return s.SUPPORTED;default:return s.GEOMETRY_TYPE_UNSUPPORTED}const n=t(i.symbol)&&"point-3d"===i.symbol.type&&i.symbol.symbolLayers;if(!(n&&n.length>0&&n.some((e=>"object"===e.type))))return s.SYMBOL_TYPE_UNSUPPORTED;return"on-the-ground"!==o(i)&&r(i)?s.ELEVATION_MODE_UNSUPPORTED:s.SUPPORTED}export{i as isSupportedGraphic};