@@ -12,13 +12,11 @@ var subTypes = require('./subtypes');
1212 * gradient: caller supports gradients
1313 * noSelect: caller does not support selected/unselected attribute containers
1414 */
15- module . exports = function markerDefaults ( traceIn , traceOut , defaultColor , layout , coerce , opts ) {
15+ module . exports = function markerDefaults ( traceIn , traceOut , defaultColor , layout , coerce , opts = { } ) {
1616 var isBubble = subTypes . isBubble ( traceIn ) ;
1717 var lineColor = ( traceIn . line || { } ) . color ;
1818 var defaultMLC ;
1919
20- opts = opts || { } ;
21-
2220 // marker.color inherit from line.color (even if line.color is an array)
2321 if ( lineColor ) defaultColor = lineColor ;
2422
@@ -27,13 +25,8 @@ module.exports = function markerDefaults(traceIn, traceOut, defaultColor, layout
2725 coerce ( 'marker.size' ) ;
2826 if ( ! opts . noAngle ) {
2927 coerce ( 'marker.angle' ) ;
30- if ( ! opts . noAngleRef ) {
31- coerce ( 'marker.angleref' ) ;
32- }
33-
34- if ( ! opts . noStandOff ) {
35- coerce ( 'marker.standoff' ) ;
36- }
28+ if ( ! opts . noAngleRef ) coerce ( 'marker.angleref' ) ;
29+ if ( ! opts . noStandOff ) coerce ( 'marker.standoff' ) ;
3730 }
3831
3932 coerce ( 'marker.color' , defaultColor ) ;
@@ -55,16 +48,19 @@ module.exports = function markerDefaults(traceIn, traceOut, defaultColor, layout
5548 // mostly this is for transparent markers to behave nicely
5649 if ( lineColor && ! Array . isArray ( lineColor ) && traceOut . marker . color !== lineColor ) {
5750 defaultMLC = lineColor ;
58- } else if ( isBubble ) defaultMLC = Color . background ;
59- else defaultMLC = Color . defaultLine ;
51+ } else if ( isBubble ) {
52+ defaultMLC = Color . background ;
53+ } else {
54+ defaultMLC = Color . defaultLine ;
55+ }
6056
6157 coerce ( 'marker.line.color' , defaultMLC ) ;
6258 if ( hasColorscale ( traceIn , 'marker.line' ) ) {
6359 colorscaleDefaults ( traceIn , traceOut , layout , coerce , { prefix : 'marker.line.' , cLetter : 'c' } ) ;
6460 }
6561
6662 coerce ( 'marker.line.width' , isBubble ? 1 : 0 ) ;
67- coerce ( 'marker.line.dash' ) ;
63+ if ( ! opts . noLineDash ) coerce ( 'marker.line.dash' ) ;
6864 }
6965
7066 if ( isBubble ) {
@@ -75,8 +71,6 @@ module.exports = function markerDefaults(traceIn, traceOut, defaultColor, layout
7571
7672 if ( opts . gradient ) {
7773 var gradientType = coerce ( 'marker.gradient.type' ) ;
78- if ( gradientType !== 'none' ) {
79- coerce ( 'marker.gradient.color' ) ;
80- }
74+ if ( gradientType !== 'none' ) coerce ( 'marker.gradient.color' ) ;
8175 }
8276} ;
0 commit comments