Skip to content

Commit 4ef8392

Browse files
committedAug 27, 2019
merge (text|hover)templateAttrs() into a single file
1 parent 354b70f commit 4ef8392

File tree

32 files changed

+91
-113
lines changed

32 files changed

+91
-113
lines changed
 

‎src/components/fx/hovertemplate_attributes.js renamed to ‎src/plots/template_attributes.js

+48-12
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,20 @@
88

99
'use strict';
1010

11-
var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK;
12-
var DATE_FORMAT_LINK = require('../../constants/docs').DATE_FORMAT_LINK;
11+
var FORMAT_LINK = require('../constants/docs').FORMAT_LINK;
12+
var DATE_FORMAT_LINK = require('../constants/docs').DATE_FORMAT_LINK;
1313

14-
module.exports = function(opts, extra) {
15-
opts = opts || {};
16-
extra = extra || {};
14+
var templateFormatStringDescription = [
15+
'Variables are inserted using %{variable}, for example "y: %{y}".',
16+
'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".',
17+
FORMAT_LINK,
18+
'for details on the formatting syntax.',
19+
'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".',
20+
DATE_FORMAT_LINK,
21+
'for details on the date formatting syntax.'
22+
].join(' ');
1723

24+
function describeVariables(extra) {
1825
var descPart = extra.description ? ' ' + extra.description : '';
1926
var keys = extra.keys || [];
2027
if(keys.length > 0) {
@@ -29,6 +36,15 @@ module.exports = function(opts, extra) {
2936
descPart = 'variables ' + quotedKeys.slice(0, -1).join(', ') + ' and ' + quotedKeys.slice(-1) + '.';
3037
}
3138
}
39+
return descPart;
40+
}
41+
42+
module.exports = {};
43+
module.exports.hovertemplateAttrs = function(opts, extra) {
44+
opts = opts || {};
45+
extra = extra || {};
46+
47+
var descPart = describeVariables(extra);
3248

3349
var hovertemplate = {
3450
valType: 'string',
@@ -38,13 +54,7 @@ module.exports = function(opts, extra) {
3854
description: [
3955
'Template string used for rendering the information that appear on hover box.',
4056
'Note that this will override `hoverinfo`.',
41-
'Variables are inserted using %{variable}, for example "y: %{y}".',
42-
'Numbers are formatted using d3-format\'s syntax %{variable:d3-format}, for example "Price: %{y:$.2f}".',
43-
FORMAT_LINK,
44-
'for details on the formatting syntax.',
45-
'Dates are formatted using d3-time-format\'s syntax %{variable|d3-time-format}, for example "Day: %{2019-01-01|%A}".',
46-
DATE_FORMAT_LINK,
47-
'for details on the date formatting syntax.',
57+
templateFormatStringDescription,
4858
'The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plot.ly/javascript/plotlyjs-events/#event-data.',
4959
'Additionally, every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.',
5060
descPart,
@@ -59,3 +69,29 @@ module.exports = function(opts, extra) {
5969

6070
return hovertemplate;
6171
};
72+
73+
module.exports.texttemplateAttrs = function(opts, extra) {
74+
opts = opts || {};
75+
extra = extra || {};
76+
77+
var descPart = describeVariables(extra);
78+
79+
var texttemplate = {
80+
valType: 'string',
81+
role: 'info',
82+
dflt: '',
83+
editType: opts.editType || 'calc',
84+
description: [
85+
'Template string used for rendering the information text that appear on points.',
86+
'Note that this will override `textinfo`.',
87+
templateFormatStringDescription,
88+
'Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.',
89+
descPart
90+
].join(' ')
91+
};
92+
93+
if(opts.arrayOk !== false) {
94+
texttemplate.arrayOk = true;
95+
}
96+
return texttemplate;
97+
};

‎src/plots/texttemplate_attributes.js

-58
This file was deleted.

‎src/traces/bar/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
'use strict';
1010

1111
var scatterAttrs = require('../scatter/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
13-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
13+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1414
var colorScaleAttrs = require('../../components/colorscale/attributes');
1515
var fontAttrs = require('../../plots/font_attributes');
1616
var constants = require('./constants.js');

‎src/traces/barpolar/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
'use strict';
1010

11-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
11+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1212
var extendFlat = require('../../lib/extend').extendFlat;
1313
var scatterPolarAttrs = require('../scatterpolar/attributes');
1414
var barAttrs = require('../bar/attributes');

‎src/traces/box/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
var scatterAttrs = require('../scatter/attributes');
1212
var barAttrs = require('../bar/attributes');
1313
var colorAttrs = require('../../components/color/attributes');
14-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
14+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1515
var extendFlat = require('../../lib/extend').extendFlat;
1616

1717
var scatterMarkerAttrs = scatterAttrs.marker;

‎src/traces/choropleth/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
'use strict';
1010

11-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
11+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1212
var scatterGeoAttrs = require('../scattergeo/attributes');
1313
var colorScaleAttrs = require('../../components/colorscale/attributes');
1414
var plotAttrs = require('../../plots/attributes');

‎src/traces/choroplethmapbox/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
var choroplethAttrs = require('../choropleth/attributes');
1212
var colorScaleAttrs = require('../../components/colorscale/attributes');
13-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
13+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1414

1515
var extendFlat = require('../../lib/extend').extendFlat;
1616

‎src/traces/cone/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var colorScaleAttrs = require('../../components/colorscale/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var mesh3dAttrs = require('../mesh3d/attributes');
1414
var baseAttrs = require('../../plots/attributes');
1515

‎src/traces/densitymapbox/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var colorScaleAttrs = require('../../components/colorscale/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var plotAttrs = require('../../plots/attributes');
1414
var scatterMapboxAttrs = require('../scattermapbox/attributes');
1515

‎src/traces/funnel/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
var barAttrs = require('../bar/attributes');
1212
var lineAttrs = require('../scatter/attributes').line;
1313
var plotAttrs = require('../../plots/attributes');
14-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
15-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
14+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
15+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1616
var constants = require('./constants');
1717
var extendFlat = require('../../lib/extend').extendFlat;
1818
var Color = require('../../components/color');

‎src/traces/funnelarea/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
var pieAttrs = require('../pie/attributes');
1212
var plotAttrs = require('../../plots/attributes');
1313
var domainAttrs = require('../../plots/domain').attributes;
14-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
15-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
14+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
15+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1616

1717
var extendFlat = require('../../lib/extend').extendFlat;
1818

‎src/traces/heatmap/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var scatterAttrs = require('../scatter/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var colorScaleAttrs = require('../../components/colorscale/attributes');
1414
var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK;
1515

‎src/traces/histogram/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var barAttrs = require('../bar/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var makeBinAttrs = require('./bin_attributes');
1414
var constants = require('./constants');
1515
var extendFlat = require('../../lib/extend').extendFlat;

‎src/traces/histogram2d/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
var histogramAttrs = require('../histogram/attributes');
1212
var makeBinAttrs = require('../histogram/bin_attributes');
1313
var heatmapAttrs = require('../heatmap/attributes');
14-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
14+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1515
var colorScaleAttrs = require('../../components/colorscale/attributes');
1616

1717
var extendFlat = require('../../lib/extend').extendFlat;

‎src/traces/isosurface/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var colorScaleAttrs = require('../../components/colorscale/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var meshAttrs = require('../mesh3d/attributes');
1414
var baseAttrs = require('../../plots/attributes');
1515

‎src/traces/mesh3d/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var colorScaleAttrs = require('../../components/colorscale/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var surfaceAttrs = require('../surface/attributes');
1414
var baseAttrs = require('../../plots/attributes');
1515

‎src/traces/parcats/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ var extendFlat = require('../../lib/extend').extendFlat;
1212
var plotAttrs = require('../../plots/attributes');
1313
var fontAttrs = require('../../plots/font_attributes');
1414
var colorScaleAttrs = require('../../components/colorscale/attributes');
15-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
15+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1616
var domainAttrs = require('../../plots/domain').attributes;
1717

1818
var line = extendFlat(

‎src/traces/pie/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ var plotAttrs = require('../../plots/attributes');
1212
var domainAttrs = require('../../plots/domain').attributes;
1313
var fontAttrs = require('../../plots/font_attributes');
1414
var colorAttrs = require('../../components/color/attributes');
15-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
16-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
15+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
16+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1717

1818
var extendFlat = require('../../lib/extend').extendFlat;
1919

‎src/traces/sankey/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ var plotAttrs = require('../../plots/attributes');
1313
var colorAttrs = require('../../components/color/attributes');
1414
var fxAttrs = require('../../components/fx/attributes');
1515
var domainAttrs = require('../../plots/domain').attributes;
16-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
16+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1717
var colorAttributes = require('../../components/colorscale/attributes');
1818
var templatedArray = require('../../plot_api/plot_template').templatedArray;
1919

‎src/traces/scatter/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
'use strict';
1010

11-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
11+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var colorScaleAttrs = require('../../components/colorscale/attributes');
1414
var fontAttrs = require('../../plots/font_attributes');
1515
var dash = require('../../components/drawing/attributes').dash;

‎src/traces/scatter3d/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010

1111
var scatterAttrs = require('../scatter/attributes');
1212
var colorAttributes = require('../../components/colorscale/attributes');
13-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
14-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
13+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
14+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1515
var baseAttrs = require('../../plots/attributes');
1616
var DASHES = require('../../constants/gl3d_dashes');
1717

‎src/traces/scattercarpet/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010

1111
var scatterAttrs = require('../scatter/attributes');
1212
var plotAttrs = require('../../plots/attributes');
13-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
14-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
13+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
14+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1515
var colorScaleAttrs = require('../../components/colorscale/attributes');
1616

1717
var extendFlat = require('../../lib/extend').extendFlat;

‎src/traces/scattergeo/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
'use strict';
1010

11-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
11+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
12+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1313
var scatterAttrs = require('../scatter/attributes');
1414
var plotAttrs = require('../../plots/attributes');
1515
var colorAttributes = require('../../components/colorscale/attributes');

‎src/traces/scattermapbox/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
'use strict';
1010

11-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
11+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
12+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1313
var scatterGeoAttrs = require('../scattergeo/attributes');
1414
var scatterAttrs = require('../scatter/attributes');
1515
var mapboxAttrs = require('../../plots/mapbox/layout_attributes');

‎src/traces/scatterpolar/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
'use strict';
1010

11-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
11+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
12+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1313
var extendFlat = require('../../lib/extend').extendFlat;
1414
var scatterAttrs = require('../scatter/attributes');
1515
var plotAttrs = require('../../plots/attributes');

‎src/traces/scatterpolargl/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
var scatterPolarAttrs = require('../scatterpolar/attributes');
1212
var scatterGlAttrs = require('../scattergl/attributes');
13-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
13+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1414

1515
module.exports = {
1616
mode: scatterPolarAttrs.mode,

‎src/traces/scatterternary/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
'use strict';
1010

11-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
11+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
12+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1313
var scatterAttrs = require('../scatter/attributes');
1414
var plotAttrs = require('../../plots/attributes');
1515
var colorScaleAttrs = require('../../components/colorscale/attributes');

‎src/traces/splom/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
var scatterAttrs = require('../scatter/attributes');
1212
var colorScaleAttrs = require('../../components/colorscale/attributes');
13-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
13+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1414
var scatterGlAttrs = require('../scattergl/attributes');
1515
var cartesianIdRegex = require('../../plots/cartesian/constants').idRegex;
1616
var templatedArray = require('../../plot_api/plot_template').templatedArray;

‎src/traces/streamtube/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
'use strict';
1010

1111
var colorScaleAttrs = require('../../components/colorscale/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1313
var mesh3dAttrs = require('../mesh3d/attributes');
1414
var baseAttrs = require('../../plots/attributes');
1515

‎src/traces/sunburst/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
'use strict';
1010

1111
var plotAttrs = require('../../plots/attributes');
12-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
13-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
12+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
13+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1414
var domainAttrs = require('../../plots/domain').attributes;
1515
var pieAttrs = require('../pie/attributes');
1616

‎src/traces/surface/attributes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
var Color = require('../../components/color');
1212
var colorScaleAttrs = require('../../components/colorscale/attributes');
13-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
13+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
1414
var baseAttrs = require('../../plots/attributes');
1515

1616
var extendFlat = require('../../lib/extend').extendFlat;

‎src/traces/waterfall/attributes.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
var barAttrs = require('../bar/attributes');
1212
var lineAttrs = require('../scatter/attributes').line;
1313
var plotAttrs = require('../../plots/attributes');
14-
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
15-
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
14+
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
15+
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
1616
var constants = require('./constants');
1717
var extendFlat = require('../../lib/extend').extendFlat;
1818
var Color = require('../../components/color');

0 commit comments

Comments
 (0)
Please sign in to comment.