@mui/x-charts-premium 9.3.0 → 9.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/BarChartPremium/BarChartPremium.js +35 -5
  2. package/BarChartPremium/BarChartPremium.mjs +35 -5
  3. package/BarChartPremium/RangeBar/RangeBarPlot.d.mts +10 -0
  4. package/BarChartPremium/RangeBar/RangeBarPlot.d.ts +10 -0
  5. package/BarChartPremium/RangeBar/RangeBarPlot.js +59 -2
  6. package/BarChartPremium/RangeBar/RangeBarPlot.mjs +59 -2
  7. package/BarChartPremium/RangeBar/RangeBarWebGLPlot.d.mts +10 -0
  8. package/BarChartPremium/RangeBar/RangeBarWebGLPlot.d.ts +10 -0
  9. package/BarChartPremium/RangeBar/RangeBarWebGLPlot.js +82 -0
  10. package/BarChartPremium/RangeBar/RangeBarWebGLPlot.mjs +76 -0
  11. package/BarChartPremium/RangeBar/seriesConfig/extrema.js +3 -0
  12. package/BarChartPremium/RangeBar/seriesConfig/extrema.mjs +3 -0
  13. package/BarChartPremium/RangeBar/seriesConfig/seriesProcessor.js +2 -2
  14. package/BarChartPremium/RangeBar/seriesConfig/seriesProcessor.mjs +2 -2
  15. package/BarChartPremium/useBarChartPremiumProps.js +2 -1
  16. package/BarChartPremium/useBarChartPremiumProps.mjs +2 -1
  17. package/BarChartPremium/webgl/useBarWebGLPlotData.d.mts +2 -7
  18. package/BarChartPremium/webgl/useBarWebGLPlotData.d.ts +2 -7
  19. package/BarChartPremium/webgl/useBarWebGLPlotData.js +4 -151
  20. package/BarChartPremium/webgl/useBarWebGLPlotData.mjs +4 -150
  21. package/BarChartPremium/webgl/useWebGLBarLikePlotData.d.mts +39 -0
  22. package/BarChartPremium/webgl/useWebGLBarLikePlotData.d.ts +39 -0
  23. package/BarChartPremium/webgl/useWebGLBarLikePlotData.js +169 -0
  24. package/BarChartPremium/webgl/useWebGLBarLikePlotData.mjs +163 -0
  25. package/CHANGELOG.md +196 -0
  26. package/CandlestickChart/CandlestickChart.js +11 -2
  27. package/CandlestickChart/CandlestickChart.mjs +11 -2
  28. package/CandlestickChart/seriesConfig/extrema.js +3 -0
  29. package/CandlestickChart/seriesConfig/extrema.mjs +3 -0
  30. package/CandlestickChart/seriesConfig/seriesProcessor.js +2 -2
  31. package/CandlestickChart/seriesConfig/seriesProcessor.mjs +2 -2
  32. package/ChartsDataProviderPremium/ChartsDataProviderPremium.js +2 -2
  33. package/ChartsDataProviderPremium/ChartsDataProviderPremium.mjs +2 -2
  34. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.d.mts +35 -0
  35. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.d.ts +35 -0
  36. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.js +125 -0
  37. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.mjs +119 -0
  38. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.plugins.d.mts +5 -0
  39. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.plugins.d.ts +5 -0
  40. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.plugins.js +10 -0
  41. package/ChartsGeoDataProviderPremium/ChartsGeoDataProviderPremium.plugins.mjs +4 -0
  42. package/ChartsGeoDataProviderPremium/index.d.mts +3 -0
  43. package/ChartsGeoDataProviderPremium/index.d.ts +3 -0
  44. package/ChartsGeoDataProviderPremium/index.js +20 -0
  45. package/ChartsGeoDataProviderPremium/index.mjs +3 -0
  46. package/ChartsGeoDataProviderPremium/useChartsGeoDataProviderPremiumProps.d.mts +10 -0
  47. package/ChartsGeoDataProviderPremium/useChartsGeoDataProviderPremiumProps.d.ts +10 -0
  48. package/ChartsGeoDataProviderPremium/useChartsGeoDataProviderPremiumProps.js +49 -0
  49. package/ChartsGeoDataProviderPremium/useChartsGeoDataProviderPremiumProps.mjs +42 -0
  50. package/ChartsRadialDataProviderPremium/ChartsRadialDataProviderPremium.js +2 -2
  51. package/ChartsRadialDataProviderPremium/ChartsRadialDataProviderPremium.mjs +2 -2
  52. package/HeatmapPremium/HeatmapPremium.js +32 -2
  53. package/HeatmapPremium/HeatmapPremium.mjs +32 -2
  54. package/Map/FocusedMapShape.d.mts +4 -0
  55. package/Map/FocusedMapShape.d.ts +4 -0
  56. package/Map/FocusedMapShape.js +66 -0
  57. package/Map/FocusedMapShape.mjs +60 -0
  58. package/Map/GeoDataPlot.d.mts +26 -0
  59. package/Map/GeoDataPlot.d.ts +26 -0
  60. package/Map/GeoDataPlot.js +65 -0
  61. package/Map/GeoDataPlot.mjs +60 -0
  62. package/Map/Graticule.d.mts +1 -0
  63. package/Map/Graticule.d.ts +1 -0
  64. package/Map/Graticule.js +30 -0
  65. package/Map/Graticule.mjs +24 -0
  66. package/Map/MapShape.d.mts +10 -0
  67. package/Map/MapShape.d.ts +10 -0
  68. package/Map/MapShape.js +55 -0
  69. package/Map/MapShape.mjs +49 -0
  70. package/Map/MapShapePlot.d.mts +21 -0
  71. package/Map/MapShapePlot.d.ts +21 -0
  72. package/Map/MapShapePlot.js +86 -0
  73. package/Map/MapShapePlot.mjs +80 -0
  74. package/Map/index.d.mts +7 -0
  75. package/Map/index.d.ts +7 -0
  76. package/Map/index.js +60 -0
  77. package/Map/index.mjs +8 -0
  78. package/Map/seriesConfig/descriptionGetter.d.mts +3 -0
  79. package/Map/seriesConfig/descriptionGetter.d.ts +3 -0
  80. package/Map/seriesConfig/descriptionGetter.js +19 -0
  81. package/Map/seriesConfig/descriptionGetter.mjs +13 -0
  82. package/Map/seriesConfig/getColor.d.mts +3 -0
  83. package/Map/seriesConfig/getColor.d.ts +3 -0
  84. package/Map/seriesConfig/getColor.js +35 -0
  85. package/Map/seriesConfig/getColor.mjs +29 -0
  86. package/Map/seriesConfig/getSeriesWithDefaultValues.d.mts +3 -0
  87. package/Map/seriesConfig/getSeriesWithDefaultValues.d.ts +3 -0
  88. package/Map/seriesConfig/getSeriesWithDefaultValues.js +15 -0
  89. package/Map/seriesConfig/getSeriesWithDefaultValues.mjs +8 -0
  90. package/Map/seriesConfig/index.d.mts +2 -0
  91. package/Map/seriesConfig/index.d.ts +2 -0
  92. package/Map/seriesConfig/index.js +28 -0
  93. package/Map/seriesConfig/index.mjs +21 -0
  94. package/Map/seriesConfig/keyboardFocusHandler.d.mts +9 -0
  95. package/Map/seriesConfig/keyboardFocusHandler.d.ts +9 -0
  96. package/Map/seriesConfig/keyboardFocusHandler.js +19 -0
  97. package/Map/seriesConfig/keyboardFocusHandler.mjs +13 -0
  98. package/Map/seriesConfig/legend.d.mts +3 -0
  99. package/Map/seriesConfig/legend.d.ts +3 -0
  100. package/Map/seriesConfig/legend.js +28 -0
  101. package/Map/seriesConfig/legend.mjs +22 -0
  102. package/Map/seriesConfig/seriesProcessor.d.mts +3 -0
  103. package/Map/seriesConfig/seriesProcessor.d.ts +3 -0
  104. package/Map/seriesConfig/seriesProcessor.js +66 -0
  105. package/Map/seriesConfig/seriesProcessor.mjs +59 -0
  106. package/Map/seriesConfig/tooltip.d.mts +3 -0
  107. package/Map/seriesConfig/tooltip.d.ts +3 -0
  108. package/Map/seriesConfig/tooltip.js +33 -0
  109. package/Map/seriesConfig/tooltip.mjs +27 -0
  110. package/RadialLineChart/RadialLineHighlightPlot.d.mts +3 -2
  111. package/RadialLineChart/RadialLineHighlightPlot.d.ts +3 -2
  112. package/ScatterChartPremium/ScatterChartPremium.d.mts +2 -1
  113. package/ScatterChartPremium/ScatterChartPremium.d.ts +2 -1
  114. package/ScatterChartPremium/ScatterChartPremium.js +32 -2
  115. package/ScatterChartPremium/ScatterChartPremium.mjs +32 -2
  116. package/hooks/index.d.mts +4 -1
  117. package/hooks/index.d.ts +4 -1
  118. package/hooks/index.js +33 -0
  119. package/hooks/index.mjs +4 -1
  120. package/hooks/useGeoData.d.mts +6 -0
  121. package/hooks/useGeoData.d.ts +6 -0
  122. package/hooks/useGeoData.js +17 -0
  123. package/hooks/useGeoData.mjs +13 -0
  124. package/hooks/useGeoFeatureIndexesByName.d.mts +7 -0
  125. package/hooks/useGeoFeatureIndexesByName.d.ts +7 -0
  126. package/hooks/useGeoFeatureIndexesByName.js +19 -0
  127. package/hooks/useGeoFeatureIndexesByName.mjs +15 -0
  128. package/hooks/useGeoPath.d.mts +6 -0
  129. package/hooks/useGeoPath.d.ts +6 -0
  130. package/hooks/useGeoPath.js +17 -0
  131. package/hooks/useGeoPath.mjs +13 -0
  132. package/hooks/useMapShapeSeries.d.mts +34 -0
  133. package/hooks/useMapShapeSeries.d.ts +34 -0
  134. package/hooks/useMapShapeSeries.js +45 -0
  135. package/hooks/useMapShapeSeries.mjs +40 -0
  136. package/index.d.mts +2 -0
  137. package/index.d.ts +2 -0
  138. package/index.js +25 -1
  139. package/index.mjs +3 -1
  140. package/internals/plugins/useGeoProjection/index.d.mts +3 -0
  141. package/internals/plugins/useGeoProjection/index.d.ts +3 -0
  142. package/internals/plugins/useGeoProjection/index.js +38 -0
  143. package/internals/plugins/useGeoProjection/index.mjs +3 -0
  144. package/internals/plugins/useGeoProjection/useGeoProjection.d.mts +3 -0
  145. package/internals/plugins/useGeoProjection/useGeoProjection.d.ts +3 -0
  146. package/internals/plugins/useGeoProjection/useGeoProjection.js +58 -0
  147. package/internals/plugins/useGeoProjection/useGeoProjection.mjs +50 -0
  148. package/internals/plugins/useGeoProjection/useGeoProjection.selectors.d.mts +39 -0
  149. package/internals/plugins/useGeoProjection/useGeoProjection.selectors.d.ts +39 -0
  150. package/internals/plugins/useGeoProjection/useGeoProjection.selectors.js +135 -0
  151. package/internals/plugins/useGeoProjection/useGeoProjection.selectors.mjs +128 -0
  152. package/internals/plugins/useGeoProjection/useGeoProjection.types.d.mts +55 -0
  153. package/internals/plugins/useGeoProjection/useGeoProjection.types.d.ts +55 -0
  154. package/internals/plugins/useGeoProjection/useGeoProjection.types.js +5 -0
  155. package/internals/plugins/useGeoProjection/useGeoProjection.types.mjs +1 -0
  156. package/models/chartsSlotsComponentsPropsPremium.d.mts +1 -0
  157. package/models/chartsSlotsComponentsPropsPremium.d.ts +1 -0
  158. package/models/chartsSlotsComponentsPropsPremium.js +5 -0
  159. package/models/chartsSlotsComponentsPropsPremium.mjs +1 -0
  160. package/models/index.d.mts +2 -1
  161. package/models/index.d.ts +2 -1
  162. package/models/index.js +11 -0
  163. package/models/index.mjs +2 -1
  164. package/models/seriesType/index.d.mts +2 -1
  165. package/models/seriesType/index.d.ts +2 -1
  166. package/models/seriesType/index.js +11 -0
  167. package/models/seriesType/index.mjs +2 -1
  168. package/models/seriesType/mapShape.d.mts +105 -0
  169. package/models/seriesType/mapShape.d.ts +105 -0
  170. package/models/seriesType/mapShape.js +5 -0
  171. package/models/seriesType/mapShape.mjs +1 -0
  172. package/package.json +35 -7
  173. package/typeOverloads/modules.d.mts +16 -1
  174. package/typeOverloads/modules.d.ts +16 -1
  175. package/utils/webgl/useWebGLResizeObserver.js +3 -3
  176. package/utils/webgl/useWebGLResizeObserver.mjs +2 -2
@@ -0,0 +1,3 @@
1
+ import { type ChartPlugin } from '@mui/x-charts/internals';
2
+ import { type UseGeoProjectionSignature } from "./useGeoProjection.types.mjs";
3
+ export declare const useGeoProjection: ChartPlugin<UseGeoProjectionSignature>;
@@ -0,0 +1,3 @@
1
+ import { type ChartPlugin } from '@mui/x-charts/internals';
2
+ import { type UseGeoProjectionSignature } from "./useGeoProjection.types.js";
3
+ export declare const useGeoProjection: ChartPlugin<UseGeoProjectionSignature>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.useGeoProjection = void 0;
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+ var React = _interopRequireWildcard(require("react"));
12
+ const useGeoProjection = ({
13
+ params,
14
+ store
15
+ }) => {
16
+ const {
17
+ geoData,
18
+ projection,
19
+ translate,
20
+ rotate,
21
+ scale
22
+ } = params;
23
+ const isFirstRender = React.useRef(true);
24
+ React.useEffect(() => {
25
+ if (isFirstRender.current) {
26
+ isFirstRender.current = false;
27
+ return;
28
+ }
29
+ store.set('geoProjection', {
30
+ geoData: geoData ?? null,
31
+ projection: projection ?? null,
32
+ translate: translate ?? null,
33
+ rotate: rotate ?? null,
34
+ scale: scale ?? null
35
+ });
36
+ }, [geoData, projection, translate, rotate, scale, store]);
37
+ return {};
38
+ };
39
+ exports.useGeoProjection = useGeoProjection;
40
+ useGeoProjection.params = {
41
+ geoData: true,
42
+ projection: true,
43
+ translate: true,
44
+ rotate: true,
45
+ scale: true
46
+ };
47
+ useGeoProjection.getDefaultizedParams = ({
48
+ params
49
+ }) => (0, _extends2.default)({}, params);
50
+ useGeoProjection.getInitialState = params => ({
51
+ geoProjection: {
52
+ geoData: params.geoData ?? null,
53
+ projection: params.projection ?? null,
54
+ translate: params.translate ?? null,
55
+ rotate: params.rotate ?? null,
56
+ scale: params.scale ?? null
57
+ }
58
+ });
@@ -0,0 +1,50 @@
1
+ 'use client';
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import * as React from 'react';
5
+ export const useGeoProjection = ({
6
+ params,
7
+ store
8
+ }) => {
9
+ const {
10
+ geoData,
11
+ projection,
12
+ translate,
13
+ rotate,
14
+ scale
15
+ } = params;
16
+ const isFirstRender = React.useRef(true);
17
+ React.useEffect(() => {
18
+ if (isFirstRender.current) {
19
+ isFirstRender.current = false;
20
+ return;
21
+ }
22
+ store.set('geoProjection', {
23
+ geoData: geoData ?? null,
24
+ projection: projection ?? null,
25
+ translate: translate ?? null,
26
+ rotate: rotate ?? null,
27
+ scale: scale ?? null
28
+ });
29
+ }, [geoData, projection, translate, rotate, scale, store]);
30
+ return {};
31
+ };
32
+ useGeoProjection.params = {
33
+ geoData: true,
34
+ projection: true,
35
+ translate: true,
36
+ rotate: true,
37
+ scale: true
38
+ };
39
+ useGeoProjection.getDefaultizedParams = ({
40
+ params
41
+ }) => _extends({}, params);
42
+ useGeoProjection.getInitialState = params => ({
43
+ geoProjection: {
44
+ geoData: params.geoData ?? null,
45
+ projection: params.projection ?? null,
46
+ translate: params.translate ?? null,
47
+ rotate: params.rotate ?? null,
48
+ scale: params.scale ?? null
49
+ }
50
+ });
@@ -0,0 +1,39 @@
1
+ import { type ChartState } from '@mui/x-charts/internals';
2
+ import { type ExtendedFeatureCollection, type GeoProjection, type GeoPath } from '@mui/x-charts-vendor/d3-geo';
3
+ import type { GeoProjectionInput, UseGeoProjectionSignature, UseGeoProjectionState } from "./useGeoProjection.types.mjs";
4
+ export declare const selectorChartGeoProjectionState: (state: ChartState<[], [UseGeoProjectionSignature]>) => UseGeoProjectionState["geoProjection"] | undefined;
5
+ export declare const selectorChartRawGeoData: (state: ChartState<[], [UseGeoProjectionSignature]>) => ExtendedFeatureCollection | null;
6
+ export declare const selectorChartRawProjection: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
7
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
8
+ }) => GeoProjectionInput | null;
9
+ export declare const selectorChartRawScale: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
10
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
11
+ }) => number | null;
12
+ /**
13
+ * Map a feature's `properties.name` to its index in `geoData.features`,
14
+ * for fast lookup by name when joining series rows to features.
15
+ *
16
+ * Features without a string `properties.name` are skipped; on duplicates,
17
+ * the first occurrence wins.
18
+ */
19
+ export declare const selectorChartGeoFeatureIndexesByName: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
20
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
21
+ }) => ReadonlyMap<string, number[]>;
22
+ /**
23
+ * Resolves the raw `projection` input into a ready-to-use `GeoProjection` instance
24
+ * fitted to the chart's drawing area.
25
+ *
26
+ * - String inputs (e.g. `'mercator'`) are mapped to the matching d3-geo factory.
27
+ * - `GeoProjection` instances are used as-is, then fitted.
28
+ * - Returns `null` when no projection is registered or the name is unknown.
29
+ */
30
+ export declare const selectorChartProjection: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
31
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
32
+ }) => GeoProjection | null;
33
+ /**
34
+ * Resolves the raw `projection` input into a ready-to-use `GeoPath` instance
35
+ * fitted to the chart's drawing area.
36
+ */
37
+ export declare const selectorChartGeoPath: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
38
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
39
+ }) => GeoPath<any, import("@mui/x-charts-vendor/d3-geo").GeoPermissibleObjects> | null;
@@ -0,0 +1,39 @@
1
+ import { type ChartState } from '@mui/x-charts/internals';
2
+ import { type ExtendedFeatureCollection, type GeoProjection, type GeoPath } from '@mui/x-charts-vendor/d3-geo';
3
+ import type { GeoProjectionInput, UseGeoProjectionSignature, UseGeoProjectionState } from "./useGeoProjection.types.js";
4
+ export declare const selectorChartGeoProjectionState: (state: ChartState<[], [UseGeoProjectionSignature]>) => UseGeoProjectionState["geoProjection"] | undefined;
5
+ export declare const selectorChartRawGeoData: (state: ChartState<[], [UseGeoProjectionSignature]>) => ExtendedFeatureCollection | null;
6
+ export declare const selectorChartRawProjection: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
7
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
8
+ }) => GeoProjectionInput | null;
9
+ export declare const selectorChartRawScale: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
10
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
11
+ }) => number | null;
12
+ /**
13
+ * Map a feature's `properties.name` to its index in `geoData.features`,
14
+ * for fast lookup by name when joining series rows to features.
15
+ *
16
+ * Features without a string `properties.name` are skipped; on duplicates,
17
+ * the first occurrence wins.
18
+ */
19
+ export declare const selectorChartGeoFeatureIndexesByName: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
20
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
21
+ }) => ReadonlyMap<string, number[]>;
22
+ /**
23
+ * Resolves the raw `projection` input into a ready-to-use `GeoProjection` instance
24
+ * fitted to the chart's drawing area.
25
+ *
26
+ * - String inputs (e.g. `'mercator'`) are mapped to the matching d3-geo factory.
27
+ * - `GeoProjection` instances are used as-is, then fitted.
28
+ * - Returns `null` when no projection is registered or the name is unknown.
29
+ */
30
+ export declare const selectorChartProjection: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
31
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
32
+ }) => GeoProjection | null;
33
+ /**
34
+ * Resolves the raw `projection` input into a ready-to-use `GeoPath` instance
35
+ * fitted to the chart's drawing area.
36
+ */
37
+ export declare const selectorChartGeoPath: (args_0: import("@mui/x-charts/internals/plugins/corePlugins/useChartId/useChartId.types").UseChartIdState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeriesConfig/useChartSeriesConfig.types").UseChartSeriesConfigState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartExperimentalFeature/useChartExperimentalFeature.types").UseChartExperimentalFeaturesState & import("@mui/x-charts/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types").UseChartDimensionsState & import("@mui/x-charts/internals/plugins/corePlugins/useChartSeries/useChartSeries.types").UseChartSeriesState<keyof import("@mui/x-charts/internals").ChartsSeriesConfig> & import("@mui/x-charts/internals/plugins/corePlugins/useChartAnimation/useChartAnimation.types").UseChartAnimationState & import("@mui/x-charts/internals").UseChartInteractionListenerState & Partial<UseGeoProjectionState> & {
38
+ cacheKey: import("@mui/x-charts/internals").ChartStateCacheKey;
39
+ }) => GeoPath<any, import("@mui/x-charts-vendor/d3-geo").GeoPermissibleObjects> | null;
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.selectorChartRawScale = exports.selectorChartRawProjection = exports.selectorChartRawGeoData = exports.selectorChartProjection = exports.selectorChartGeoProjectionState = exports.selectorChartGeoPath = exports.selectorChartGeoFeatureIndexesByName = void 0;
7
+ var _store = require("@mui/x-internals/store");
8
+ var _internals = require("@mui/x-charts/internals");
9
+ var _d3Geo = require("@mui/x-charts-vendor/d3-geo");
10
+ const PROJECTION_FACTORIES = {
11
+ // Azimuthal projections (https://d3js.org/d3-geo/azimuthal)
12
+ azimuthalEqualArea: _d3Geo.geoAzimuthalEqualArea,
13
+ azimuthalEquidistant: _d3Geo.geoAzimuthalEquidistant,
14
+ gnomonic: _d3Geo.geoGnomonic,
15
+ orthographic: _d3Geo.geoOrthographic,
16
+ stereographic: _d3Geo.geoStereographic,
17
+ // Conic projections (https://d3js.org/d3-geo/conic)
18
+ conicConformal: _d3Geo.geoConicConformal,
19
+ conicEqualArea: _d3Geo.geoConicEqualArea,
20
+ conicEquidistant: _d3Geo.geoConicEquidistant,
21
+ albers: _d3Geo.geoAlbers,
22
+ albersUsa: _d3Geo.geoAlbersUsa,
23
+ // Special composition for the USA with an edge case for Alaska and Hawaii.
24
+
25
+ // Cylindrical projections (https://d3js.org/d3-geo/cylindrical)
26
+ equirectangular: _d3Geo.geoEquirectangular,
27
+ mercator: _d3Geo.geoMercator,
28
+ transverseMercator: _d3Geo.geoTransverseMercator,
29
+ equalEarth: _d3Geo.geoEqualEarth,
30
+ naturalEarth1: _d3Geo.geoNaturalEarth1
31
+ };
32
+ const isConicProjection = projection => {
33
+ return 'parallels' in projection && typeof projection.parallels === 'function';
34
+ };
35
+ const selectorChartGeoProjectionState = state => state.geoProjection;
36
+ exports.selectorChartGeoProjectionState = selectorChartGeoProjectionState;
37
+ const selectorChartRawGeoData = exports.selectorChartRawGeoData = (0, _store.createSelector)(selectorChartGeoProjectionState, geoProjection => geoProjection?.geoData ?? null);
38
+ const selectorChartRawProjection = exports.selectorChartRawProjection = (0, _store.createSelector)(selectorChartGeoProjectionState, geoProjection => geoProjection?.projection ?? null);
39
+ const selectorChartRawScale = exports.selectorChartRawScale = (0, _store.createSelector)(selectorChartGeoProjectionState, geoProjection => geoProjection?.scale ?? null);
40
+ const selectorChartRotate = (0, _store.createSelectorMemoized)(selectorChartGeoProjectionState, geoProjection => geoProjection?.rotate ?? null);
41
+ const selectorChartTranslate = (0, _store.createSelectorMemoized)(selectorChartGeoProjectionState, geoProjection => geoProjection?.translate ?? null);
42
+ const selectorChartParallels = (0, _store.createSelectorMemoized)(selectorChartGeoProjectionState, selectorChartRotate, (geoProjection, rotate) => geoProjection?.parallels ?? (rotate ? [rotate[1] - 15, rotate[1] + 15] : [30, 30]));
43
+ /**
44
+ * Map a feature's `properties.name` to its index in `geoData.features`,
45
+ * for fast lookup by name when joining series rows to features.
46
+ *
47
+ * Features without a string `properties.name` are skipped; on duplicates,
48
+ * the first occurrence wins.
49
+ */
50
+ const selectorChartGeoFeatureIndexesByName = exports.selectorChartGeoFeatureIndexesByName = (0, _store.createSelectorMemoized)(selectorChartRawGeoData, geoData => {
51
+ const map = new Map();
52
+ if (!geoData) {
53
+ return map;
54
+ }
55
+ geoData.features.forEach((feature, index) => {
56
+ const name = feature.properties?.name;
57
+ if (typeof name !== 'string') {
58
+ return;
59
+ }
60
+ if (map.has(name)) {
61
+ map.get(name).push(index);
62
+ return;
63
+ }
64
+ map.set(name, [index]);
65
+ });
66
+ return map;
67
+ });
68
+
69
+ /**
70
+ * Resolves the raw `projection` input into a ready-to-use `GeoProjection` instance
71
+ * fitted to the chart's drawing area.
72
+ *
73
+ * - String inputs (e.g. `'mercator'`) are mapped to the matching d3-geo factory.
74
+ * - `GeoProjection` instances are used as-is, then fitted.
75
+ * - Returns `null` when no projection is registered or the name is unknown.
76
+ */
77
+ const selectorChartProjection = exports.selectorChartProjection = (0, _store.createSelectorMemoized)(selectorChartRawProjection, selectorChartRawGeoData, selectorChartParallels, selectorChartRotate, selectorChartTranslate, selectorChartRawScale, _internals.selectorChartDrawingArea, (projectionInput, geoData, parallels, rotate, translate, scale, drawingArea) => {
78
+ if (!projectionInput) {
79
+ return null;
80
+ }
81
+ let projection;
82
+ if (typeof projectionInput === 'string') {
83
+ const factory = PROJECTION_FACTORIES[projectionInput];
84
+ if (!factory) {
85
+ if (process.env.NODE_ENV !== 'production') {
86
+ console.error(`MUI X Charts: Unknown projection name '${projectionInput}'. ` + `Expected one of: ${Object.keys(PROJECTION_FACTORIES).join(', ')}.`);
87
+ }
88
+ return null;
89
+ }
90
+ projection = factory();
91
+ if (isConicProjection(projection)) {
92
+ projection.parallels(parallels);
93
+ }
94
+ } else {
95
+ projection = projectionInput;
96
+ }
97
+ if (geoData) {
98
+ if (isConicProjection(projection)) {
99
+ if (rotate) {
100
+ projection.rotate?.(rotate);
101
+ }
102
+ if (!scale) {
103
+ const [[x0, y0], [x1, y1]] = (0, _d3Geo.geoPath)(projection).bounds(geoData);
104
+ const currentScale = projection.scale();
105
+ const fitScale = Math.min(currentScale * (drawingArea.width / (x1 - x0)), currentScale * (drawingArea.height / (y1 - y0)));
106
+ projection.scale(fitScale);
107
+ } else {
108
+ projection.scale(scale);
109
+ }
110
+ return projection;
111
+ }
112
+ if (rotate) {
113
+ projection.rotate?.(rotate);
114
+ }
115
+ if (scale) {
116
+ projection.scale(scale);
117
+ projection.clipExtent?.([[drawingArea.left, drawingArea.top], [drawingArea.left + drawingArea.width, drawingArea.top + drawingArea.height]]);
118
+ } else {
119
+ projection.fitExtent?.([[drawingArea.left, drawingArea.top], [drawingArea.left + drawingArea.width, drawingArea.top + drawingArea.height]], geoData);
120
+ }
121
+ projection.translate(translate ?? [drawingArea.left + drawingArea.width / 2, drawingArea.top + drawingArea.height / 2]);
122
+ }
123
+ return projection;
124
+ });
125
+
126
+ /**
127
+ * Resolves the raw `projection` input into a ready-to-use `GeoPath` instance
128
+ * fitted to the chart's drawing area.
129
+ */
130
+ const selectorChartGeoPath = exports.selectorChartGeoPath = (0, _store.createSelectorMemoized)(selectorChartProjection, projection => {
131
+ if (!projection) {
132
+ return null;
133
+ }
134
+ return (0, _d3Geo.geoPath)(projection);
135
+ });
@@ -0,0 +1,128 @@
1
+ import { createSelector, createSelectorMemoized } from '@mui/x-internals/store';
2
+ import { selectorChartDrawingArea } from '@mui/x-charts/internals';
3
+ import { geoAlbers, geoAlbersUsa, geoAzimuthalEqualArea, geoAzimuthalEquidistant, geoConicConformal, geoConicEqualArea, geoConicEquidistant, geoEqualEarth, geoEquirectangular, geoGnomonic, geoMercator, geoNaturalEarth1, geoOrthographic, geoStereographic, geoTransverseMercator, geoPath } from '@mui/x-charts-vendor/d3-geo';
4
+ const PROJECTION_FACTORIES = {
5
+ // Azimuthal projections (https://d3js.org/d3-geo/azimuthal)
6
+ azimuthalEqualArea: geoAzimuthalEqualArea,
7
+ azimuthalEquidistant: geoAzimuthalEquidistant,
8
+ gnomonic: geoGnomonic,
9
+ orthographic: geoOrthographic,
10
+ stereographic: geoStereographic,
11
+ // Conic projections (https://d3js.org/d3-geo/conic)
12
+ conicConformal: geoConicConformal,
13
+ conicEqualArea: geoConicEqualArea,
14
+ conicEquidistant: geoConicEquidistant,
15
+ albers: geoAlbers,
16
+ albersUsa: geoAlbersUsa,
17
+ // Special composition for the USA with an edge case for Alaska and Hawaii.
18
+
19
+ // Cylindrical projections (https://d3js.org/d3-geo/cylindrical)
20
+ equirectangular: geoEquirectangular,
21
+ mercator: geoMercator,
22
+ transverseMercator: geoTransverseMercator,
23
+ equalEarth: geoEqualEarth,
24
+ naturalEarth1: geoNaturalEarth1
25
+ };
26
+ const isConicProjection = projection => {
27
+ return 'parallels' in projection && typeof projection.parallels === 'function';
28
+ };
29
+ export const selectorChartGeoProjectionState = state => state.geoProjection;
30
+ export const selectorChartRawGeoData = createSelector(selectorChartGeoProjectionState, geoProjection => geoProjection?.geoData ?? null);
31
+ export const selectorChartRawProjection = createSelector(selectorChartGeoProjectionState, geoProjection => geoProjection?.projection ?? null);
32
+ export const selectorChartRawScale = createSelector(selectorChartGeoProjectionState, geoProjection => geoProjection?.scale ?? null);
33
+ const selectorChartRotate = createSelectorMemoized(selectorChartGeoProjectionState, geoProjection => geoProjection?.rotate ?? null);
34
+ const selectorChartTranslate = createSelectorMemoized(selectorChartGeoProjectionState, geoProjection => geoProjection?.translate ?? null);
35
+ const selectorChartParallels = createSelectorMemoized(selectorChartGeoProjectionState, selectorChartRotate, (geoProjection, rotate) => geoProjection?.parallels ?? (rotate ? [rotate[1] - 15, rotate[1] + 15] : [30, 30]));
36
+ /**
37
+ * Map a feature's `properties.name` to its index in `geoData.features`,
38
+ * for fast lookup by name when joining series rows to features.
39
+ *
40
+ * Features without a string `properties.name` are skipped; on duplicates,
41
+ * the first occurrence wins.
42
+ */
43
+ export const selectorChartGeoFeatureIndexesByName = createSelectorMemoized(selectorChartRawGeoData, geoData => {
44
+ const map = new Map();
45
+ if (!geoData) {
46
+ return map;
47
+ }
48
+ geoData.features.forEach((feature, index) => {
49
+ const name = feature.properties?.name;
50
+ if (typeof name !== 'string') {
51
+ return;
52
+ }
53
+ if (map.has(name)) {
54
+ map.get(name).push(index);
55
+ return;
56
+ }
57
+ map.set(name, [index]);
58
+ });
59
+ return map;
60
+ });
61
+
62
+ /**
63
+ * Resolves the raw `projection` input into a ready-to-use `GeoProjection` instance
64
+ * fitted to the chart's drawing area.
65
+ *
66
+ * - String inputs (e.g. `'mercator'`) are mapped to the matching d3-geo factory.
67
+ * - `GeoProjection` instances are used as-is, then fitted.
68
+ * - Returns `null` when no projection is registered or the name is unknown.
69
+ */
70
+ export const selectorChartProjection = createSelectorMemoized(selectorChartRawProjection, selectorChartRawGeoData, selectorChartParallels, selectorChartRotate, selectorChartTranslate, selectorChartRawScale, selectorChartDrawingArea, (projectionInput, geoData, parallels, rotate, translate, scale, drawingArea) => {
71
+ if (!projectionInput) {
72
+ return null;
73
+ }
74
+ let projection;
75
+ if (typeof projectionInput === 'string') {
76
+ const factory = PROJECTION_FACTORIES[projectionInput];
77
+ if (!factory) {
78
+ if (process.env.NODE_ENV !== 'production') {
79
+ console.error(`MUI X Charts: Unknown projection name '${projectionInput}'. ` + `Expected one of: ${Object.keys(PROJECTION_FACTORIES).join(', ')}.`);
80
+ }
81
+ return null;
82
+ }
83
+ projection = factory();
84
+ if (isConicProjection(projection)) {
85
+ projection.parallels(parallels);
86
+ }
87
+ } else {
88
+ projection = projectionInput;
89
+ }
90
+ if (geoData) {
91
+ if (isConicProjection(projection)) {
92
+ if (rotate) {
93
+ projection.rotate?.(rotate);
94
+ }
95
+ if (!scale) {
96
+ const [[x0, y0], [x1, y1]] = geoPath(projection).bounds(geoData);
97
+ const currentScale = projection.scale();
98
+ const fitScale = Math.min(currentScale * (drawingArea.width / (x1 - x0)), currentScale * (drawingArea.height / (y1 - y0)));
99
+ projection.scale(fitScale);
100
+ } else {
101
+ projection.scale(scale);
102
+ }
103
+ return projection;
104
+ }
105
+ if (rotate) {
106
+ projection.rotate?.(rotate);
107
+ }
108
+ if (scale) {
109
+ projection.scale(scale);
110
+ projection.clipExtent?.([[drawingArea.left, drawingArea.top], [drawingArea.left + drawingArea.width, drawingArea.top + drawingArea.height]]);
111
+ } else {
112
+ projection.fitExtent?.([[drawingArea.left, drawingArea.top], [drawingArea.left + drawingArea.width, drawingArea.top + drawingArea.height]], geoData);
113
+ }
114
+ projection.translate(translate ?? [drawingArea.left + drawingArea.width / 2, drawingArea.top + drawingArea.height / 2]);
115
+ }
116
+ return projection;
117
+ });
118
+
119
+ /**
120
+ * Resolves the raw `projection` input into a ready-to-use `GeoPath` instance
121
+ * fitted to the chart's drawing area.
122
+ */
123
+ export const selectorChartGeoPath = createSelectorMemoized(selectorChartProjection, projection => {
124
+ if (!projection) {
125
+ return null;
126
+ }
127
+ return geoPath(projection);
128
+ });
@@ -0,0 +1,55 @@
1
+ import { type ChartPluginSignature } from '@mui/x-charts/internals';
2
+ import { type GeoProjection, type ExtendedFeatureCollection } from '@mui/x-charts-vendor/d3-geo';
3
+ export type D3NamedProjection = 'azimuthalEqualArea' | 'azimuthalEquidistant' | 'gnomonic' | 'orthographic' | 'stereographic' | 'conicConformal' | 'conicEqualArea' | 'conicEquidistant' | 'albers' | 'albersUsa' | 'equirectangular' | 'mercator' | 'transverseMercator' | 'equalEarth' | 'naturalEarth1';
4
+ /**
5
+ * A d3-geo projection accepted by `useGeoProjection`.
6
+ *
7
+ * Either a built-in projection name (e.g. `'mercator'`, `'naturalEarth1'`)
8
+ * or a `GeoProjection` instance returned by a d3-geo factory.
9
+ */
10
+ export type GeoProjectionInput = D3NamedProjection | GeoProjection;
11
+ export interface UseGeoProjectionParameters {
12
+ /**
13
+ * The GeoJSON `FeatureCollection` whose features will be rendered on the map.
14
+ */
15
+ geoData?: ExtendedFeatureCollection;
16
+ /**
17
+ * The d3-geo projection used to map geographic coordinates to SVG coordinates.
18
+ * Accepts a d3-geo projection name (e.g. `'mercator'`, `'naturalEarth1'`)
19
+ * or a custom `GeoProjection` instance.
20
+ */
21
+ projection?: GeoProjectionInput;
22
+ /**
23
+ * The center of the projection, specified as a `[longitude, latitude]` pair in degrees.
24
+ */
25
+ translate?: [number, number];
26
+ /**
27
+ * The rotation of the projection, specified as a `[longitude, latitude]` pair in degrees.
28
+ */
29
+ rotate?: [number, number];
30
+ /**
31
+ * The scale of the projection.
32
+ * Id not provided the scale will default to fit the entire geoData in the drawing area.
33
+ */
34
+ scale?: number;
35
+ }
36
+ export type UseGeoProjectionDefaultizedParameters = UseGeoProjectionParameters;
37
+ export interface UseGeoProjectionState {
38
+ geoProjection: {
39
+ geoData: ExtendedFeatureCollection | null;
40
+ projection: GeoProjectionInput | null;
41
+ translate: [number, number] | null;
42
+ rotate: [number, number] | null;
43
+ scale: number | null;
44
+ /**
45
+ * The two standard parallels used by conic projections, if applicable.
46
+ * Used for projection 'conicConformal', 'conicEqualArea', 'conicEquidistant'.
47
+ */
48
+ parallels?: [number, number] | null;
49
+ };
50
+ }
51
+ export type UseGeoProjectionSignature = ChartPluginSignature<{
52
+ params: UseGeoProjectionParameters;
53
+ defaultizedParams: UseGeoProjectionDefaultizedParameters;
54
+ state: UseGeoProjectionState;
55
+ }>;
@@ -0,0 +1,55 @@
1
+ import { type ChartPluginSignature } from '@mui/x-charts/internals';
2
+ import { type GeoProjection, type ExtendedFeatureCollection } from '@mui/x-charts-vendor/d3-geo';
3
+ export type D3NamedProjection = 'azimuthalEqualArea' | 'azimuthalEquidistant' | 'gnomonic' | 'orthographic' | 'stereographic' | 'conicConformal' | 'conicEqualArea' | 'conicEquidistant' | 'albers' | 'albersUsa' | 'equirectangular' | 'mercator' | 'transverseMercator' | 'equalEarth' | 'naturalEarth1';
4
+ /**
5
+ * A d3-geo projection accepted by `useGeoProjection`.
6
+ *
7
+ * Either a built-in projection name (e.g. `'mercator'`, `'naturalEarth1'`)
8
+ * or a `GeoProjection` instance returned by a d3-geo factory.
9
+ */
10
+ export type GeoProjectionInput = D3NamedProjection | GeoProjection;
11
+ export interface UseGeoProjectionParameters {
12
+ /**
13
+ * The GeoJSON `FeatureCollection` whose features will be rendered on the map.
14
+ */
15
+ geoData?: ExtendedFeatureCollection;
16
+ /**
17
+ * The d3-geo projection used to map geographic coordinates to SVG coordinates.
18
+ * Accepts a d3-geo projection name (e.g. `'mercator'`, `'naturalEarth1'`)
19
+ * or a custom `GeoProjection` instance.
20
+ */
21
+ projection?: GeoProjectionInput;
22
+ /**
23
+ * The center of the projection, specified as a `[longitude, latitude]` pair in degrees.
24
+ */
25
+ translate?: [number, number];
26
+ /**
27
+ * The rotation of the projection, specified as a `[longitude, latitude]` pair in degrees.
28
+ */
29
+ rotate?: [number, number];
30
+ /**
31
+ * The scale of the projection.
32
+ * Id not provided the scale will default to fit the entire geoData in the drawing area.
33
+ */
34
+ scale?: number;
35
+ }
36
+ export type UseGeoProjectionDefaultizedParameters = UseGeoProjectionParameters;
37
+ export interface UseGeoProjectionState {
38
+ geoProjection: {
39
+ geoData: ExtendedFeatureCollection | null;
40
+ projection: GeoProjectionInput | null;
41
+ translate: [number, number] | null;
42
+ rotate: [number, number] | null;
43
+ scale: number | null;
44
+ /**
45
+ * The two standard parallels used by conic projections, if applicable.
46
+ * Used for projection 'conicConformal', 'conicEqualArea', 'conicEquidistant'.
47
+ */
48
+ parallels?: [number, number] | null;
49
+ };
50
+ }
51
+ export type UseGeoProjectionSignature = ChartPluginSignature<{
52
+ params: UseGeoProjectionParameters;
53
+ defaultizedParams: UseGeoProjectionDefaultizedParameters;
54
+ state: UseGeoProjectionState;
55
+ }>;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1 @@
1
+ export interface RadialLineHighlightPropsOverrides {}
@@ -0,0 +1 @@
1
+ export interface RadialLineHighlightPropsOverrides {}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1,3 @@
1
1
  export * from '@mui/x-charts-pro/models';
2
- export * from "./seriesType/index.mjs";
2
+ export * from "./seriesType/index.mjs";
3
+ export * from "./chartsSlotsComponentsPropsPremium.mjs";
package/models/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from '@mui/x-charts-pro/models';
2
- export * from "./seriesType/index.js";
2
+ export * from "./seriesType/index.js";
3
+ export * from "./chartsSlotsComponentsPropsPremium.js";
package/models/index.js CHANGED
@@ -24,4 +24,15 @@ Object.keys(_seriesType).forEach(function (key) {
24
24
  return _seriesType[key];
25
25
  }
26
26
  });
27
+ });
28
+ var _chartsSlotsComponentsPropsPremium = require("./chartsSlotsComponentsPropsPremium");
29
+ Object.keys(_chartsSlotsComponentsPropsPremium).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _chartsSlotsComponentsPropsPremium[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _chartsSlotsComponentsPropsPremium[key];
36
+ }
37
+ });
27
38
  });