105 Commits

Author SHA1 Message Date
Jukka Kurkela
ac69e81b04
Turn elements/index into an index (#7135) 2020-02-26 18:08:29 -05:00
Jukka Kurkela
d801e56106
Update dependencies and alter privacy of functions (#7138)
* Update dependencies

* Fix privacy problems

* color lib & consistency

* Review update

* getLabelCapacity

* Review update
2020-02-22 08:35:16 -05:00
Ben McCann
e2145e3b55
Turn on excludeNotExported (#7121) 2020-02-20 12:18:21 -05:00
Jukka Kurkela
7b029aa780
Doughnut / PolarArea cleanup (#7113)
Doughnut / PolarArea cleanup
2020-02-17 18:45:30 -05:00
Jukka Kurkela
25a9969489
Enable esnext and fix all lint errors (#7094)
* enable esnext and fix all lint errors

* Review update

* Missed some

* Some cleanup still

* Remove leftover eslint disable
2020-02-13 18:41:49 -05:00
Jukka Kurkela
88284380c7
Animate circumference (#7079) 2020-02-10 15:10:15 -05:00
Jukka Kurkela
25002f2763
Defaults as ES6 class (#7074)
* Defaults as ES6 class

* Review comments
2020-02-09 08:52:18 -05:00
Ben McCann
795c86e95b
Fix errors reported by TypeScript compiler (#7030) 2020-02-07 18:03:33 -05:00
Ben McCann
6affaa2a73
Convert controllers to ES6 classes (#7061) 2020-02-06 07:33:00 -05:00
Ben McCann
f5c4494621
Cleanup imports on controllers (#7052) 2020-02-03 07:34:54 -05:00
Ben McCann
fe3931b077 Reduce scope of imports (#7000) 2020-01-22 07:19:44 -05:00
Ben McCann
c6c4a52257 Switch most requires to imports (#6935) 2020-01-09 07:23:53 -05:00
Evert Timberg
e96ad6f249
Remove HTML legend that is mostly unsupported. (#6887)
* Remove HTML legend that is mostly unsupported.

Resolves the discussion in #5070

* Add migration docs
2020-01-03 13:56:11 -05:00
Ben McCann
8bc250f63a Remove unnecessary method argument (#6878)
Remove unnecessary method argument
2019-12-31 08:23:03 -05:00
Jukka Kurkela
b83f64b16e Rewrite animation logic (#6845)
* Rewrite animation logic

* Review update 1

* Review update 2

* Review update 3

* Add 'none' to api.md
2019-12-27 17:13:24 -05:00
Ben McCann
b7caa2410c Store parsed data more similarly to provided data (#6814)
* Store parsed data more similarly to provided data

* Add test
2019-12-08 08:52:11 -05:00
Ben McCann
34b93751db Change updateElement to updateElements (#6722) 2019-11-19 07:12:38 -05:00
Jukka Kurkela
e5b03a0975 Improve stacking performance and footprint (#6762)
* Improve stacking speed and footprint

* Better utilization of caches

* Chore
2019-11-18 18:51:58 -05:00
Ben McCann
f5b2b8db64 Reduce object creation during parsing (#6758)
* Reduce object creation during parsing
* Rename method to createElement
* Make code more efficient?
* Update migration guide
2019-11-17 18:01:31 -05:00
Ben McCann
a3392e0e59 Remove index and datasetIndex from Element (#6688)
Remove `index` and `datasetIndex` properties from elements.
2019-11-10 07:52:12 -05:00
Jukka Kurkela
81f5cf416a Performance optimizations when animations are disabled (#6710)
* Don't copy _model when animations are disabled

* Review comments
2019-11-09 21:57:54 -05:00
Ben McCann
e42413f3e8 Remove unused model properties (#6691)
* Remove unused model properties
* Add to migration guide
2019-11-05 18:10:44 -05:00
Jukka Kurkela
72df272234 Early data parsing, stacking by value and support object data (#6576)
* Early data parsing + stacking by value
* Review comments
* review comments
* Remove reduntant parsing
* Couple CC warnings
* Optimize filterBetween
* More migration info
2019-11-04 18:07:01 -05:00
Jukka Kurkela
0228776e66 Remove deprecated interaction modes (#6625)
* Remove deprecated interaction modes
* Use default modes
2019-10-28 18:11:38 -04:00
Ben McCann
0da237a315 Remove undocumented "custom" feature (#6605)
Remove undocumented "custom" feature
2019-10-27 16:33:21 -04:00
Ben McCann
df9e2d00bd Html dom building (#6490)
Replaces #6179 and builds HTML legend strings using dom nodes rather than building up an HTML string directly.
2019-09-07 07:19:17 -04:00
Akihiko Kusanagi
feeda5d034 Make legend appearance consistent with chart elements (#5621) 2019-05-09 15:33:19 +02:00
Ben McCann
d6a5ea0d36 Implement per-dataset type (default and per-chart) options (#5999) 2019-05-06 22:52:40 +02:00
Akihiko Kusanagi
4f722ab619 Fix arc size calculation when circumference is under 2PI (#6224) 2019-05-01 18:05:34 +02:00
Vincent-Ip
93f4e6e4e8 New weight option for pie and doughnut charts (#5951)
Add functionality to give pie & doughnut datasets a weight attribute, which affects the relative thickness of the dataset when there are multiple datasets in pie & doughnut charts. The default weight of each dataset is 1, providing any other numerical value will allow the pie or doughnut dataset to be drawn with a thickness relative to its default size. 

For example a weight of 2 will allow the dataset to be drawn double its typical dataset thickness. Note that the weight attribute will only affect a pie or doughnut chart if there is more than one visible dataset. Using weight on a pie or doughnut dataset when there is only one dataset on the chart will have no affect.
2019-02-27 23:06:54 +01:00
Evert Timberg
f3dd96779a Implement scriptable options for polar area charts (#5976) 2019-01-13 21:17:27 +01:00
Evert Timberg
e1ed26f315 Implement scriptable options for doughnut charts (#5966) 2019-01-10 16:00:36 +01:00
Akihiko Kusanagi
820debf452 Refactoring using helpers.options.resolve (#5965) 2019-01-08 16:50:33 +01:00
Akihiko Kusanagi
db8f6c38dc Add support for 'inner' border for arc elements (#5841) 2018-12-18 13:58:02 +01:00
Simon Brunel
be8d78a900
Make Chart.controllers.* importable (#5871)
`controllers.*.js` and `core.datasetController.js` are now importable (no more function export), that's why there is so many changes mainly due to one indentation level removed. Split code for `bar/horizontalBar` and `doughnut/pie` in separate files, added a global controllers import (`src/controllers/index.js`) and add tests to check that all dataset controllers are correctly registered under `chart.controllers.{type}`.
2018-11-29 21:06:34 +01:00
Ben McCann
da3aa68f38 Restore original styles when removing hover (#5570)
Refactor `updateElement` and `removeHoverStyle` and fix tests.
2018-06-26 08:56:53 +02:00
Evert Timberg
26c44cf7ab
Treat negative values in doughnut charts as positive (#5165) 2018-01-21 12:12:33 -05:00
Simon Brunel
9ef5cc72f6 Enforce variable declaration coding style (#4610)
For consistency, enable ESLint `one-var` rule to require multiple variable declarations for initialized variables per scope. Uninitialized variables can still be declared together (preferred) or separately.

http://eslint.org/docs/rules/one-var
2017-08-03 18:33:18 +02:00
Ben McCann
f6b6956a3a Fix ESLint errors (#4485) 2017-07-22 09:19:06 +02:00
Simon Brunel
586b8c12fc Make Chart.Element/elements.* importable (#4540) 2017-07-21 08:40:01 +02:00
Simon Brunel
889ecd560b Make Chart.defaults/Ticks/Interaction importable (#4512)
Default options can now be accessed by importing `core/core.defaults`. The returned object acts as a singleton and is populated when importing classes that expose their own default values (meaning that importing only `code.defaults` results in an empty object). Also make `Chart.Ticks` and `Chart.Interaction` importable since existing defaults rely on these values.

Add the `defaults._set` method that make easier declaring new defaults by merging given values with existing ones for a specific scope (`global`, `scale`, `bar`, etc).
2017-07-16 19:38:19 +02:00
Simon Brunel
717e8d950a Make Chart.helpers importable (#4479)
Properly export helpers and remove dependencies to `Chart.helpers`. Helpers can now be accessed from `src/helpers/index.js` (`var helpers = require('path/to/helpers/index')`, instead of `var helpers = Chart.helpers`).
2017-07-15 15:13:56 +02:00
Simon Brunel
5d95280d7b Change valueAtIndexOrDefault behavior (#4423)
For consistency with `valueOrDefault`, `valueAtIndexOrDefault` now returns null if `value` (expected array) is null. Also get rid of the superfluous `get` prefix in `getValueOrDefault` and `getValueAtIndexOrDefault`.
2017-06-25 10:54:37 +02:00
Jerome Touffe-Blin
fa6be2f772 Fix inconsistent aspect ratio 2017-06-04 09:41:13 -04:00
Evert Timberg
1ef9fbf7a6 inner radius could be slightly negative due to numerical errors 2017-01-25 08:59:31 -05:00
Evert Timberg
9e9b9cf46d when the cutoutPercentage is 0, the inner radius should be 0 2017-01-15 12:46:01 -05:00
Evert Timberg
c3d7a3328d In the doughnut chart, specifically handle multiline strings. 2016-09-24 22:25:04 +02:00
Zach Panzarino
051f5b015b Fix bug with pie/doughnut chart legends
Fixes a rendering issue when there are multiple datasets on a pie chart and they do not all contain the same number of data in their datasets
Fixes #3309
2016-09-16 01:29:01 +00:00
Zach Panzarino
dd8fa78b45 Fix more style errors in controllers, elements, and scales 2016-09-14 22:34:41 +00:00
Zach Panzarino
2d2f475a7a First round of eslint fixes 2016-09-14 18:05:19 +00:00