* Relocate chart type and dataset type defaults
* Update types
* Separate overrides and descriptors
* Update derived sample, use merge for inherit
* Don't merge overrides
* Review update
* Update plugin to use it's own tooltip context
* Scriptable tooltip option types
* Tests
* Update types to use UnionToIntersection
* Update TooltipItem to use UnionToIntersection
* Update index.esm.d.ts
tickValue is to my knowledge always a number or a string so this will make it so people wont have to parse it themselfs
* Update core.scale.js
Update typedef according to types update
* Not totally sure this is right , but since in core.adapters.js override is part of the dateadapter it seems logical it should be there. Should also fix#8369
* implemented feedback
* Declare the dataAdapter since it will be available at runtime if someone overrides it
* remove declaration. if this is giving problems in the future it might need te be added again
* Create a new hook to enable data decimation
The `beforeElementUpdate` hook can be used to decimate data. The chart
elements will not be created until after this hook has fired ensuring that
if decimation occurs, only the needed elements will be created.
* Address code review feedback
* Rename hook to beforeElementsUpdate
* Simplify parsing logic
* Add decimation plugin to the core
* Allow a dataset to specify a different data key
* Decimation plugin uses the dataKey feature
* Refactor the decimation plugin to support configurable algorithms
* Lint the plugin changes
* Tests for the dataKey feature
* Convert test files to tabs
* Standardize on tabs in ts files
* Remove the dataKey feature
* Replace dataKey usage in decimation plugin
We define a new descriptor for the `data` key allowing the
plugin to be simpler.
* Disable decimation when indexAxis is Y
* Simplify the decimation width approximation
* Resolve the indexAxis correctly in all cases
* Initial documentation
* Reverse check
* Update TS definitions for new plugin options
* Move defineProperty after bailouts
* Add destroy hook
* Rename ElementOptions to ElementOptionsByType
* Rename CommonOptions to CommonElementOptions
* Rename PluginOptions to PluginOptionsByType
Add new PluginChartOptions and remove some duplicates
* Rename ScaleOptions to ScaleOptionsByType
* Use Partial where appropriate
* Create standardized text render method
* Document renderText options and enable configurable decoration width
* Add tests for font rendering
* Split color definition to it's own file
* renderText supports setting styles
* Mock context needs to track textBaseline
* renderText can set textAlign and textBaseline
* renderText does not mutate the context + translate/rotate
* Explicitly set the text decoration style
* Move useStroke logic into renderText
* Cartesian scale: Update computeLabelItems to avoid duplicate allocations