Skip to content

Commit

Permalink
merge (text|hover)templateAttrs() into a single file
Browse files Browse the repository at this point in the history
  • Loading branch information
antoinerg committed Aug 27, 2019
1 parent 354b70f commit 4ef8392
Show file tree
Hide file tree
Showing 32 changed files with 91 additions and 113 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,20 @@

'use strict';

var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK;
var DATE_FORMAT_LINK = require('../../constants/docs').DATE_FORMAT_LINK;
var FORMAT_LINK = require('../constants/docs').FORMAT_LINK;
var DATE_FORMAT_LINK = require('../constants/docs').DATE_FORMAT_LINK;

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

function describeVariables(extra) {
var descPart = extra.description ? ' ' + extra.description : '';
var keys = extra.keys || [];
if(keys.length > 0) {
Expand All @@ -29,6 +36,15 @@ module.exports = function(opts, extra) {
descPart = 'variables ' + quotedKeys.slice(0, -1).join(', ') + ' and ' + quotedKeys.slice(-1) + '.';
}
}
return descPart;
}

module.exports = {};
module.exports.hovertemplateAttrs = function(opts, extra) {
opts = opts || {};
extra = extra || {};

var descPart = describeVariables(extra);

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

return hovertemplate;
};

module.exports.texttemplateAttrs = function(opts, extra) {
opts = opts || {};
extra = extra || {};

var descPart = describeVariables(extra);

var texttemplate = {
valType: 'string',
role: 'info',
dflt: '',
editType: opts.editType || 'calc',
description: [
'Template string used for rendering the information text that appear on points.',
'Note that this will override `textinfo`.',
templateFormatStringDescription,
'Every attributes that can be specified per-point (the ones that are `arrayOk: true`) are available.',
descPart
].join(' ')
};

if(opts.arrayOk !== false) {
texttemplate.arrayOk = true;
}
return texttemplate;
};
58 changes: 0 additions & 58 deletions src/plots/texttemplate_attributes.js

This file was deleted.

4 changes: 2 additions & 2 deletions src/traces/bar/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
'use strict';

var scatterAttrs = require('../scatter/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var colorScaleAttrs = require('../../components/colorscale/attributes');
var fontAttrs = require('../../plots/font_attributes');
var constants = require('./constants.js');
Expand Down
2 changes: 1 addition & 1 deletion src/traces/barpolar/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

'use strict';

var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var extendFlat = require('../../lib/extend').extendFlat;
var scatterPolarAttrs = require('../scatterpolar/attributes');
var barAttrs = require('../bar/attributes');
Expand Down
2 changes: 1 addition & 1 deletion src/traces/box/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
var scatterAttrs = require('../scatter/attributes');
var barAttrs = require('../bar/attributes');
var colorAttrs = require('../../components/color/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var extendFlat = require('../../lib/extend').extendFlat;

var scatterMarkerAttrs = scatterAttrs.marker;
Expand Down
2 changes: 1 addition & 1 deletion src/traces/choropleth/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

'use strict';

var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var scatterGeoAttrs = require('../scattergeo/attributes');
var colorScaleAttrs = require('../../components/colorscale/attributes');
var plotAttrs = require('../../plots/attributes');
Expand Down
2 changes: 1 addition & 1 deletion src/traces/choroplethmapbox/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

var choroplethAttrs = require('../choropleth/attributes');
var colorScaleAttrs = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;

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

Expand Down
2 changes: 1 addition & 1 deletion src/traces/cone/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'use strict';

var colorScaleAttrs = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var mesh3dAttrs = require('../mesh3d/attributes');
var baseAttrs = require('../../plots/attributes');

Expand Down
2 changes: 1 addition & 1 deletion src/traces/densitymapbox/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'use strict';

var colorScaleAttrs = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var plotAttrs = require('../../plots/attributes');
var scatterMapboxAttrs = require('../scattermapbox/attributes');

Expand Down
4 changes: 2 additions & 2 deletions src/traces/funnel/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
var barAttrs = require('../bar/attributes');
var lineAttrs = require('../scatter/attributes').line;
var plotAttrs = require('../../plots/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var constants = require('./constants');
var extendFlat = require('../../lib/extend').extendFlat;
var Color = require('../../components/color');
Expand Down
4 changes: 2 additions & 2 deletions src/traces/funnelarea/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
var pieAttrs = require('../pie/attributes');
var plotAttrs = require('../../plots/attributes');
var domainAttrs = require('../../plots/domain').attributes;
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;

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

Expand Down
2 changes: 1 addition & 1 deletion src/traces/heatmap/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'use strict';

var scatterAttrs = require('../scatter/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var colorScaleAttrs = require('../../components/colorscale/attributes');
var FORMAT_LINK = require('../../constants/docs').FORMAT_LINK;

Expand Down
2 changes: 1 addition & 1 deletion src/traces/histogram/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'use strict';

var barAttrs = require('../bar/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var makeBinAttrs = require('./bin_attributes');
var constants = require('./constants');
var extendFlat = require('../../lib/extend').extendFlat;
Expand Down
2 changes: 1 addition & 1 deletion src/traces/histogram2d/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
var histogramAttrs = require('../histogram/attributes');
var makeBinAttrs = require('../histogram/bin_attributes');
var heatmapAttrs = require('../heatmap/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var colorScaleAttrs = require('../../components/colorscale/attributes');

var extendFlat = require('../../lib/extend').extendFlat;
Expand Down
2 changes: 1 addition & 1 deletion src/traces/isosurface/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'use strict';

var colorScaleAttrs = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var meshAttrs = require('../mesh3d/attributes');
var baseAttrs = require('../../plots/attributes');

Expand Down
2 changes: 1 addition & 1 deletion src/traces/mesh3d/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
'use strict';

var colorScaleAttrs = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var surfaceAttrs = require('../surface/attributes');
var baseAttrs = require('../../plots/attributes');

Expand Down
2 changes: 1 addition & 1 deletion src/traces/parcats/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ var extendFlat = require('../../lib/extend').extendFlat;
var plotAttrs = require('../../plots/attributes');
var fontAttrs = require('../../plots/font_attributes');
var colorScaleAttrs = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var domainAttrs = require('../../plots/domain').attributes;

var line = extendFlat(
Expand Down
4 changes: 2 additions & 2 deletions src/traces/pie/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ var plotAttrs = require('../../plots/attributes');
var domainAttrs = require('../../plots/domain').attributes;
var fontAttrs = require('../../plots/font_attributes');
var colorAttrs = require('../../components/color/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;

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

Expand Down
2 changes: 1 addition & 1 deletion src/traces/sankey/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ var plotAttrs = require('../../plots/attributes');
var colorAttrs = require('../../components/color/attributes');
var fxAttrs = require('../../components/fx/attributes');
var domainAttrs = require('../../plots/domain').attributes;
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var colorAttributes = require('../../components/colorscale/attributes');
var templatedArray = require('../../plot_api/plot_template').templatedArray;

Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatter/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

'use strict';

var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var colorScaleAttrs = require('../../components/colorscale/attributes');
var fontAttrs = require('../../plots/font_attributes');
var dash = require('../../components/drawing/attributes').dash;
Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatter3d/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@

var scatterAttrs = require('../scatter/attributes');
var colorAttributes = require('../../components/colorscale/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var baseAttrs = require('../../plots/attributes');
var DASHES = require('../../constants/gl3d_dashes');

Expand Down
4 changes: 2 additions & 2 deletions src/traces/scattercarpet/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@

var scatterAttrs = require('../scatter/attributes');
var plotAttrs = require('../../plots/attributes');
var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var colorScaleAttrs = require('../../components/colorscale/attributes');

var extendFlat = require('../../lib/extend').extendFlat;
Expand Down
4 changes: 2 additions & 2 deletions src/traces/scattergeo/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

'use strict';

var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var scatterAttrs = require('../scatter/attributes');
var plotAttrs = require('../../plots/attributes');
var colorAttributes = require('../../components/colorscale/attributes');
Expand Down
4 changes: 2 additions & 2 deletions src/traces/scattermapbox/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

'use strict';

var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var scatterGeoAttrs = require('../scattergeo/attributes');
var scatterAttrs = require('../scatter/attributes');
var mapboxAttrs = require('../../plots/mapbox/layout_attributes');
Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatterpolar/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

'use strict';

var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var extendFlat = require('../../lib/extend').extendFlat;
var scatterAttrs = require('../scatter/attributes');
var plotAttrs = require('../../plots/attributes');
Expand Down
2 changes: 1 addition & 1 deletion src/traces/scatterpolargl/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

var scatterPolarAttrs = require('../scatterpolar/attributes');
var scatterGlAttrs = require('../scattergl/attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;

module.exports = {
mode: scatterPolarAttrs.mode,
Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatterternary/attributes.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

'use strict';

var hovertemplateAttrs = require('../../components/fx/hovertemplate_attributes');
var texttemplateAttrs = require('../../plots/texttemplate_attributes');
var hovertemplateAttrs = require('../../plots/template_attributes').hovertemplateAttrs;
var texttemplateAttrs = require('../../plots/template_attributes').texttemplateAttrs;
var scatterAttrs = require('../scatter/attributes');
var plotAttrs = require('../../plots/attributes');
var colorScaleAttrs = require('../../components/colorscale/attributes');
Expand Down
Loading

0 comments on commit 4ef8392

Please sign in to comment.