(function () { "use strict"; angular.module("enrMapModule") .factory("mapClassGenerator", [function () { return { generateZoomButtonClass: function (isMapZoomedIn, isMouseInZoomTargetMode, isOfficeMode) { var base = "btn map-zoom-btn zmdi zmdi-zoom-"; var zoomSuffix = isMapZoomedIn ? "out" : "in"; // If map is zoomed IN, button is for zooming OUT. var activeSuffix = isMouseInZoomTargetMode ? " active" : ""; // Determines if button appears in ON state. var hiddenSuffix = isOfficeMode ? "" : " hidden"; return base + zoomSuffix + activeSuffix + hiddenSuffix; }, generateMapClass: function (isMapZoomedIn, isMouseInZoomTargetMode) { var base = "enr-map"; var cursorSuffix = !isMapZoomedIn && isMouseInZoomTargetMode ? " cursor-zoom-in" : ""; // Show crosshairs when choosing zoom target return base + cursorSuffix; }, generateRegionClass: function (regionId, isSelectedRegion) { if (regionId === undefined) regionId = ""; var selectedClass = isSelectedRegion ? "active " : ""; return "map-region " + selectedClass + regionId; } }; }]); }());