plotly.js
Version:
The open source javascript graphing library that powers plotly
39 lines (30 loc) • 936 B
JavaScript
var Registry = require('../../registry');
var Lib = require('../../lib');
module.exports = {
moduleType: 'component',
name: 'annotations3d',
schema: {
subplots: {
scene: {annotations: require('./attributes')}
}
},
layoutAttributes: require('./attributes'),
handleDefaults: require('./defaults'),
includeBasePlot: includeGL3D,
convert: require('./convert'),
draw: require('./draw')
};
function includeGL3D(layoutIn, layoutOut) {
var GL3D = Registry.subplotsRegistry.gl3d;
if(!GL3D) return;
var attrRegex = GL3D.attrRegex;
var keys = Object.keys(layoutIn);
for(var i = 0; i < keys.length; i++) {
var k = keys[i];
if(attrRegex.test(k) && (layoutIn[k].annotations || []).length) {
Lib.pushUnique(layoutOut._basePlotModules, GL3D);
Lib.pushUnique(layoutOut._subplots.gl3d, k);
}
}
}
;