function background()

in modules/renderer/background.js [29:132]


    function background(selection) {
        // If we are displaying an Esri basemap at high zoom,
        // check its tilemap to see how high the zoom can go
        if (context.map().zoom() > 18) {
            var basemap = baseLayer.source();
            if (basemap && /^EsriWorldImagery/.test(basemap.id)) {
                var center = context.map().center();
                basemap.fetchTilemap(center);
            }
        }

        // Is the imagery valid here? - #4827
        var sources = background.sources(context.map().extent());
        var wasValid = _isValid;
        _isValid = !!sources
            .filter(function(d) { return d === baseLayer.source(); }).length;

        if (wasValid !== _isValid) {      // change in valid status
            background.updateImagery();
        }


        var baseFilter = '';
        if (detected.cssfilters) {
            if (_brightness !== 1) {
                baseFilter += 'brightness(' + _brightness + ')';
            }
            if (_contrast !== 1) {
                baseFilter += 'contrast(' + _contrast + ')';
            }
            if (_saturation !== 1) {
                baseFilter += 'saturate(' + _saturation + ')';
            }
            if (_sharpness < 1) {  // gaussian blur
                var blur = d3_interpolateNumber(0.5, 5)(1 - _sharpness);
                baseFilter += 'blur(' + blur + 'px)';
            }
        }

        var base = selection.selectAll('.layer-background')
            .data([0]);

        base = base.enter()
            .insert('div', '.layer-data')
            .attr('class', 'layer layer-background')
            .merge(base);

        if (detected.cssfilters) {
            base.style('filter', baseFilter || null);
        } else {
            base.style('opacity', _brightness);
        }


        var imagery = base.selectAll('.layer-imagery')
            .data([0]);

        imagery.enter()
            .append('div')
            .attr('class', 'layer layer-imagery')
            .merge(imagery)
            .call(baseLayer);


        var maskFilter = '';
        var mixBlendMode = '';
        if (detected.cssfilters && _sharpness > 1) {  // apply unsharp mask
            mixBlendMode = 'overlay';
            maskFilter = 'saturate(0) blur(3px) invert(1)';

            var contrast = _sharpness - 1;
            maskFilter += ' contrast(' + contrast + ')';

            var brightness = d3_interpolateNumber(1, 0.85)(_sharpness - 1);
            maskFilter += ' brightness(' + brightness + ')';
        }

        var mask = base.selectAll('.layer-unsharp-mask')
            .data(detected.cssfilters && _sharpness > 1 ? [0] : []);

        mask.exit()
            .remove();

        mask.enter()
            .append('div')
            .attr('class', 'layer layer-mask layer-unsharp-mask')
            .merge(mask)
            .call(baseLayer)
            .style('filter', maskFilter || null)
            .style('mix-blend-mode', mixBlendMode || null);


        var overlays = selection.selectAll('.layer-overlay')
            .data(_overlayLayers, function(d) { return d.source().name(); });

        overlays.exit()
            .remove();

        overlays.enter()
            .insert('div', '.layer-data')
            .attr('class', 'layer layer-overlay')
            .merge(overlays)
            .each(function(layer) { d3_select(this).call(layer); });
    }