'use strict';
-var DatasetController = require('../core/core.datasetController');
-var defaults = require('../core/core.defaults');
-var elements = require('../elements/index');
-var helpers = require('../helpers/index');
+import DatasetController from '../core/core.datasetController';
+import defaults from '../core/core.defaults';
+import elements from '../elements';
+import helpers from '../helpers';
-var valueOrDefault = helpers.valueOrDefault;
+const valueOrDefault = helpers.valueOrDefault;
defaults._set('bar', {
hover: {
return custom && custom.barStart !== undefined && custom.barEnd !== undefined;
}
-module.exports = DatasetController.extend({
+export default DatasetController.extend({
dataElementType: elements.Rectangle,
'use strict';
-const DatasetController = require('../core/core.datasetController');
-const defaults = require('../core/core.defaults');
-const elements = require('../elements/index');
-const helpers = require('../helpers/index');
+import DatasetController from '../core/core.datasetController';
+import defaults from '../core/core.defaults';
+import elements from '../elements';
+import helpers from '../helpers';
const resolve = helpers.options.resolve;
}
});
-module.exports = DatasetController.extend({
+export default DatasetController.extend({
/**
* @protected
*/
'use strict';
-var DatasetController = require('../core/core.datasetController');
-var defaults = require('../core/core.defaults');
-var elements = require('../elements/index');
-var helpers = require('../helpers/index');
+import DatasetController from '../core/core.datasetController';
+import defaults from '../core/core.defaults';
+import elements from '../elements';
+import helpers from '../helpers';
-var valueOrDefault = helpers.valueOrDefault;
+const valueOrDefault = helpers.valueOrDefault;
-var PI = Math.PI;
-var DOUBLE_PI = PI * 2;
-var HALF_PI = PI / 2;
+const PI = Math.PI;
+const DOUBLE_PI = PI * 2;
+const HALF_PI = PI / 2;
defaults._set('doughnut', {
animation: {
}
});
-module.exports = DatasetController.extend({
+export default DatasetController.extend({
dataElementType: elements.Arc,
'use strict';
-var BarController = require('./controller.bar');
-var defaults = require('../core/core.defaults');
+import BarController from './controller.bar';
+import defaults from '../core/core.defaults';
defaults._set('horizontalBar', {
hover: {
}
});
-module.exports = BarController.extend({
+export default BarController.extend({
/**
* @private
*/
'use strict';
-const DatasetController = require('../core/core.datasetController');
-const defaults = require('../core/core.defaults');
-const elements = require('../elements/index');
-const helpers = require('../helpers/index');
+import DatasetController from '../core/core.datasetController';
+import defaults from '../core/core.defaults';
+import elements from '../elements';
+import helpers from '../helpers';
const valueOrDefault = helpers.valueOrDefault;
const resolve = helpers.options.resolve;
}
});
-module.exports = DatasetController.extend({
+export default DatasetController.extend({
datasetElementType: elements.Line,
'use strict';
-var DoughnutController = require('./controller.doughnut');
-var defaults = require('../core/core.defaults');
-var helpers = require('../helpers/index');
+import DoughnutController from './controller.doughnut';
+import defaults from '../core/core.defaults';
+import helpers from '../helpers';
defaults._set('pie', helpers.clone(defaults.doughnut));
defaults._set('pie', {
});
// Pie charts are Doughnut chart with different defaults
-module.exports = DoughnutController;
+export default DoughnutController;
'use strict';
-var DatasetController = require('../core/core.datasetController');
-var defaults = require('../core/core.defaults');
-var elements = require('../elements/index');
-var helpers = require('../helpers/index');
+import DatasetController from '../core/core.datasetController';
+import defaults from '../core/core.defaults';
+import elements from '../elements';
+import helpers from '../helpers';
-var resolve = helpers.options.resolve;
+const resolve = helpers.options.resolve;
defaults._set('polarArea', {
animation: {
}
});
-module.exports = DatasetController.extend({
+export default DatasetController.extend({
dataElementType: elements.Arc,
'use strict';
-var DatasetController = require('../core/core.datasetController');
-var defaults = require('../core/core.defaults');
-var elements = require('../elements/index');
-var helpers = require('../helpers/index');
+import DatasetController from '../core/core.datasetController';
+import defaults from '../core/core.defaults';
+import elements from '../elements';
+import helpers from '../helpers';
-var valueOrDefault = helpers.valueOrDefault;
+const valueOrDefault = helpers.valueOrDefault;
defaults._set('radar', {
spanGaps: false,
}
});
-module.exports = DatasetController.extend({
+export default DatasetController.extend({
datasetElementType: elements.Line,
dataElementType: elements.Point,
'use strict';
-var LineController = require('./controller.line');
-var defaults = require('../core/core.defaults');
+import LineController from './controller.line';
+import defaults from '../core/core.defaults';
defaults._set('scatter', {
scales: {
});
// Scatter charts use line controllers
-module.exports = LineController;
+export default LineController;
'use strict';
-var bar = require('./controller.bar');
-var bubble = require('./controller.bubble');
-var doughnut = require('./controller.doughnut');
-var horizontalBar = require('./controller.horizontalBar');
-var line = require('./controller.line');
-var polarArea = require('./controller.polarArea');
-var pie = require('./controller.pie');
-var radar = require('./controller.radar');
-var scatter = require('./controller.scatter');
+import bar from './controller.bar';
+import bubble from './controller.bubble';
+import doughnut from './controller.doughnut';
+import horizontalBar from './controller.horizontalBar';
+import line from './controller.line';
+import polarArea from './controller.polarArea';
+import pie from './controller.pie';
+import radar from './controller.radar';
+import scatter from './controller.scatter';
// NOTE export a map in which the key represents the controller type, not
// the class, and so must be CamelCase in order to be correctly retrieved
// by the controller in core.controller.js (`controllers[meta.type]`).
-module.exports = {
+export default {
bar: bar,
bubble: bubble,
doughnut: doughnut,
'use strict';
-const helpers = require('../helpers/index');
+import helpers from '../helpers';
const transparent = 'transparent';
const interpolators = {
}
}
-module.exports = Animation;
+export default Animation;
'use strict';
-const helpers = require('../helpers/index');
+import helpers from '../helpers';
function drawFPS(chart, count, date, lastDate) {
const fps = (1000 / (date - lastDate)) | 0;
const instance = new Animator();
-module.exports = instance;
+export default instance;
'use strict';
-var helpers = require('../helpers/index');
-var Animations = require('./core.animations');
+import helpers from '../helpers';
+import Animations from './core.animations';
-var resolve = helpers.options.resolve;
+const resolve = helpers.options.resolve;
-var arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift'];
+const arrayEvents = ['push', 'pop', 'shift', 'splice', 'unshift'];
/**
* Hooks the array methods that add or remove values ('push', pop', 'shift', 'splice',
DatasetController.extend = helpers.inherits;
-module.exports = DatasetController;
+export default DatasetController;
'use strict';
-var defaults = require('./core.defaults');
-var helpers = require('../helpers/index');
+import defaults from './core.defaults';
+import helpers from '../helpers';
-var extend = helpers.extend;
+const extend = helpers.extend;
const STATIC_POSITIONS = ['left', 'top', 'right', 'bottom'];
// The layout service is very self explanatory. It's responsible for the layout within a chart.
// Scales, Legends and Plugins all rely on the layout service and can easily register to be placed anywhere they need
// It is this service's responsibility of carrying out that layout.
-module.exports = {
+export default {
defaults: {},
/**
'use strict';
-var defaults = require('./core.defaults');
-var helpers = require('../helpers/index');
+import defaults from './core.defaults';
+import helpers from '../helpers/';
defaults._set('plugins', {});
* @namespace Chart.plugins
* @since 2.1.0
*/
-module.exports = {
+export default {
/**
* Globally registered plugins.
* @private
'use strict';
-const defaults = require('./core.defaults');
-const Element = require('./core.element');
-const helpers = require('../helpers/index');
-const Ticks = require('./core.ticks');
+import defaults from './core.defaults';
+import Element from './core.element';
+import helpers from '../helpers';
+import Ticks from './core.ticks';
const alignPixel = helpers.canvas._alignPixel;
const isArray = helpers.isArray;
Scale.prototype._draw = Scale.prototype.draw;
-module.exports = Scale;
+export default Scale;
'use strict';
-var defaults = require('./core.defaults');
-var helpers = require('../helpers/index');
-var layouts = require('./core.layouts');
+import defaults from './core.defaults';
+import helpers from '../helpers';
+import layouts from './core.layouts';
-module.exports = {
+export default {
// Scale registration object. Extensions can register new scale types (such as log or DB scales) and then
// use the new chart options to grab the correct scale
constructors: {},
'use strict';
-var helpers = require('../helpers/index');
-var math = helpers.math;
+import helpers from '../helpers';
+const math = helpers.math;
/**
* Namespace to hold static tick generation functions
* @namespace Chart.Ticks
*/
-module.exports = {
+export default {
/**
* Namespace to hold formatters for different types of ticks
* @namespace Chart.Ticks.formatters
'use strict';
-const defaults = require('./core.defaults');
-const Element = require('./core.element');
-const helpers = require('../helpers/index');
-const Animations = require('./core.animations');
+import defaults from './core.defaults';
+import Element from './core.element';
+import helpers from '../helpers/index';
+import Animations from './core.animations';
const valueOrDefault = helpers.valueOrDefault;
const getRtlHelper = helpers.rtl.getRtlAdapter;
*/
Tooltip.positioners = positioners;
-module.exports = Tooltip;
+export default Tooltip;
/**
* @namespace Chart
*/
-var Chart = require('./core/core.controller');
-
-Chart.helpers = require('./helpers/index');
-Chart._adapters = require('./core/core.adapters');
-Chart.Animation = require('./core/core.animation');
-Chart.Animator = require('./core/core.animator');
-Chart.animationService = require('./core/core.animations');
-Chart.controllers = require('./controllers/index');
-Chart.DatasetController = require('./core/core.datasetController');
-Chart.defaults = require('./core/core.defaults');
-Chart.Element = require('./core/core.element');
-Chart.elements = require('./elements/index');
-Chart.Interaction = require('./core/core.interaction');
-Chart.layouts = require('./core/core.layouts');
-Chart.platform = require('./platforms/platform');
-Chart.plugins = require('./core/core.plugins');
-Chart.Scale = require('./core/core.scale');
-Chart.scaleService = require('./core/core.scaleService');
-Chart.Ticks = require('./core/core.ticks');
-Chart.Tooltip = require('./core/core.tooltip');
+import Chart from './core/core.controller';
+
+import helpers from './helpers';
+import _adapters from './core/core.adapters';
+import Animation from './core/core.animation';
+import Animator from './core/core.animator';
+import animationService from './core/core.animations';
+import controllers from './controllers';
+import DatasetController from './core/core.datasetController';
+import defaults from './core/core.defaults';
+import Element from './core/core.element';
+import elements from './elements';
+import Interaction from './core/core.interaction';
+import layouts from './core/core.layouts';
+import platform from './platforms/platform';
+import pluginsCore from './core/core.plugins';
+import Scale from './core/core.scale';
+import scaleService from './core/core.scaleService';
+import Ticks from './core/core.ticks';
+import Tooltip from './core/core.tooltip';
+
+Chart.helpers = helpers;
+Chart._adapters = _adapters;
+Chart.Animation = Animation;
+Chart.Animator = Animator;
+Chart.animationService = animationService;
+Chart.controllers = controllers;
+Chart.DatasetController = DatasetController;
+Chart.defaults = defaults;
+Chart.Element = Element;
+Chart.elements = elements;
+Chart.Interaction = Interaction;
+Chart.layouts = layouts;
+Chart.platform = platform;
+Chart.plugins = pluginsCore;
+Chart.Scale = Scale;
+Chart.scaleService = scaleService;
+Chart.Ticks = Ticks;
+Chart.Tooltip = Tooltip;
// Register built-in scales
-const scales = require('./scales');
+import scales from './scales';
Object.keys(scales).forEach(function(type) {
const scale = scales[type];
Chart.scaleService.registerScaleType(type, scale, scale._defaults);
});
// Load to register built-in adapters (as side effects)
-require('./adapters');
+import './adapters';
// Loading built-in plugins
-var plugins = require('./plugins');
+import plugins from './plugins';
for (var k in plugins) {
if (Object.prototype.hasOwnProperty.call(plugins, k)) {
Chart.plugins.register(plugins[k]);
Chart.platform.initialize();
-module.exports = Chart;
if (typeof window !== 'undefined') {
window.Chart = Chart;
}
+
+export default Chart;
'use strict';
-var helpers = require('../helpers/index');
-var stylesheet = require('./platform.dom.css');
+import helpers from '../helpers';
+import stylesheet from './platform.dom.css';
var EXPANDO_KEY = '$chartjs';
var CSS_PREFIX = 'chartjs-';
}
}
-module.exports = {
+export default {
/**
* When `true`, prevents the automatic injection of the stylesheet required to
* correctly detect when the chart is added to the DOM and then resized. This
'use strict';
-var helpers = require('../helpers/index');
-var basic = require('./platform.basic');
-var dom = require('./platform.dom');
+import helpers from '../helpers/index';
+import basic from './platform.basic';
+import dom from './platform.dom';
// @TODO Make possible to select another platform at build time.
-var implementation = dom._enabled ? dom : basic;
+const implementation = dom._enabled ? dom : basic;
/**
* @namespace Chart.platform
* @see https://chartjs.gitbooks.io/proposals/content/Platform.html
* @since 2.4.0
*/
-module.exports = helpers.extend({
+export default helpers.extend({
/**
* @since 2.7.0
*/
'use strict';
-module.exports = {};
-module.exports.filler = require('./plugin.filler');
-module.exports.legend = require('./plugin.legend');
-module.exports.title = require('./plugin.title');
+import filler from './plugin.filler';
+import legend from './plugin.legend';
+import title from './plugin.title';
+
+export default {
+ filler,
+ legend,
+ title
+};
'use strict';
-const defaults = require('../core/core.defaults');
-const Element = require('../core/core.element');
-const helpers = require('../helpers/index');
-const layouts = require('../core/core.layouts');
+import defaults from '../core/core.defaults';
+import Element from '../core/core.element';
+import helpers from '../helpers';
+import layouts from '../core/core.layouts';
const getRtlHelper = helpers.rtl.getRtlAdapter;
const valueOrDefault = helpers.valueOrDefault;
chart.legend = legend;
}
-module.exports = {
+export default {
id: 'legend',
/**
'use strict';
-const defaults = require('../core/core.defaults');
-const Element = require('../core/core.element');
-const helpers = require('../helpers/index');
-const layouts = require('../core/core.layouts');
+import defaults from '../core/core.defaults';
+import Element from '../core/core.element';
+import helpers from '../helpers/index';
+import layouts from '../core/core.layouts';
defaults._set('title', {
align: 'center',
chart.titleBlock = title;
}
-module.exports = {
+export default {
id: 'title',
/**