@gooddata/sdk-ui-geo 11.11.0-alpha.2 → 11.11.0-alpha.3

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 (209) hide show
  1. package/esm/next/GeoAreaChart.d.ts +33 -0
  2. package/esm/next/GeoAreaChart.d.ts.map +1 -0
  3. package/esm/next/GeoAreaChart.js +65 -0
  4. package/esm/next/GeoAreaChart.js.map +1 -0
  5. package/esm/next/GeoPushpinChartNext.js +2 -2
  6. package/esm/next/GeoPushpinChartNext.js.map +1 -1
  7. package/esm/next/RenderGeoAreaChart.d.ts +15 -0
  8. package/esm/next/RenderGeoAreaChart.d.ts.map +1 -0
  9. package/esm/next/RenderGeoAreaChart.js +104 -0
  10. package/esm/next/RenderGeoAreaChart.js.map +1 -0
  11. package/esm/next/RenderGeoPushpinChart.d.ts.map +1 -1
  12. package/esm/next/RenderGeoPushpinChart.js.map +1 -1
  13. package/esm/next/components/legends/Legend.js +1 -1
  14. package/esm/next/components/legends/Legend.js.map +1 -1
  15. package/esm/next/components/legends/types.d.ts +2 -2
  16. package/esm/next/components/legends/types.d.ts.map +1 -1
  17. package/esm/next/context/GeoAreaCollectionContext.d.ts +24 -0
  18. package/esm/next/context/GeoAreaCollectionContext.d.ts.map +1 -0
  19. package/esm/next/context/GeoAreaCollectionContext.js +39 -0
  20. package/esm/next/context/GeoAreaCollectionContext.js.map +1 -0
  21. package/esm/next/context/GeoAreaDataContext.d.ts +69 -0
  22. package/esm/next/context/GeoAreaDataContext.d.ts.map +1 -0
  23. package/esm/next/context/GeoAreaDataContext.js +87 -0
  24. package/esm/next/context/GeoAreaDataContext.js.map +1 -0
  25. package/esm/next/context/GeoAreaPropsContext.d.ts +47 -0
  26. package/esm/next/context/GeoAreaPropsContext.d.ts.map +1 -0
  27. package/esm/next/context/GeoAreaPropsContext.js +84 -0
  28. package/esm/next/context/GeoAreaPropsContext.js.map +1 -0
  29. package/esm/next/context/GeoDataContext.d.ts +13 -19
  30. package/esm/next/context/GeoDataContext.d.ts.map +1 -1
  31. package/esm/next/context/GeoDataContext.js +7 -53
  32. package/esm/next/context/GeoDataContext.js.map +1 -1
  33. package/esm/next/context/GeoPushpinDataContext.d.ts +14 -0
  34. package/esm/next/context/GeoPushpinDataContext.d.ts.map +1 -0
  35. package/esm/next/context/GeoPushpinDataContext.js +51 -0
  36. package/esm/next/context/GeoPushpinDataContext.js.map +1 -0
  37. package/esm/next/features/clustering/clustering.d.ts +2 -2
  38. package/esm/next/features/clustering/clustering.d.ts.map +1 -1
  39. package/esm/next/features/clustering/clustering.js.map +1 -1
  40. package/esm/next/features/coloring/areaColorStrategy.d.ts +22 -0
  41. package/esm/next/features/coloring/areaColorStrategy.d.ts.map +1 -0
  42. package/esm/next/features/coloring/areaColorStrategy.js +83 -0
  43. package/esm/next/features/coloring/areaColorStrategy.js.map +1 -0
  44. package/esm/next/features/coloring/areaPalette.d.ts +28 -0
  45. package/esm/next/features/coloring/areaPalette.d.ts.map +1 -0
  46. package/esm/next/features/coloring/areaPalette.js +41 -0
  47. package/esm/next/features/coloring/areaPalette.js.map +1 -0
  48. package/esm/next/features/coloring/colorStrategy.d.ts +2 -2
  49. package/esm/next/features/coloring/colorStrategy.d.ts.map +1 -1
  50. package/esm/next/features/coloring/colorStrategy.js +2 -2
  51. package/esm/next/features/coloring/colorStrategy.js.map +1 -1
  52. package/esm/next/features/data/areaTransformation.d.ts +60 -0
  53. package/esm/next/features/data/areaTransformation.d.ts.map +1 -0
  54. package/esm/next/features/data/areaTransformation.js +248 -0
  55. package/esm/next/features/data/areaTransformation.js.map +1 -0
  56. package/esm/next/features/data/dataSourceManagement.d.ts +2 -2
  57. package/esm/next/features/data/dataSourceManagement.d.ts.map +1 -1
  58. package/esm/next/features/data/dataSourceManagement.js.map +1 -1
  59. package/esm/next/features/data/pushpinTransformation.d.ts +72 -0
  60. package/esm/next/features/data/pushpinTransformation.d.ts.map +1 -0
  61. package/esm/next/features/data/{transformation.js → pushpinTransformation.js} +21 -70
  62. package/esm/next/features/data/pushpinTransformation.js.map +1 -0
  63. package/esm/next/features/data/transformationCommon.d.ts +21 -0
  64. package/esm/next/features/data/transformationCommon.d.ts.map +1 -0
  65. package/esm/next/features/data/transformationCommon.js +52 -0
  66. package/esm/next/features/data/transformationCommon.js.map +1 -0
  67. package/esm/next/features/map/areaLayerManagement.d.ts +51 -0
  68. package/esm/next/features/map/areaLayerManagement.d.ts.map +1 -0
  69. package/esm/next/features/map/areaLayerManagement.js +81 -0
  70. package/esm/next/features/map/areaLayerManagement.js.map +1 -0
  71. package/esm/next/features/map/layerManagement.d.ts +3 -3
  72. package/esm/next/features/map/layerManagement.d.ts.map +1 -1
  73. package/esm/next/features/map/layerManagement.js.map +1 -1
  74. package/esm/next/features/map/viewportManagement.d.ts +13 -0
  75. package/esm/next/features/map/viewportManagement.d.ts.map +1 -1
  76. package/esm/next/features/map/viewportManagement.js +30 -0
  77. package/esm/next/features/map/viewportManagement.js.map +1 -1
  78. package/esm/next/features/tooltip/tooltipManagement.d.ts +1 -1
  79. package/esm/next/features/tooltip/tooltipManagement.d.ts.map +1 -1
  80. package/esm/next/features/tooltip/tooltipManagement.js +11 -7
  81. package/esm/next/features/tooltip/tooltipManagement.js.map +1 -1
  82. package/esm/next/helpers/areaAttributeResolver.d.ts +10 -0
  83. package/esm/next/helpers/areaAttributeResolver.d.ts.map +1 -0
  84. package/esm/next/helpers/areaAttributeResolver.js +26 -0
  85. package/esm/next/helpers/areaAttributeResolver.js.map +1 -0
  86. package/esm/next/hooks/init/useInitExecution.d.ts +5 -2
  87. package/esm/next/hooks/init/useInitExecution.d.ts.map +1 -1
  88. package/esm/next/hooks/init/useInitExecution.js +32 -16
  89. package/esm/next/hooks/init/useInitExecution.js.map +1 -1
  90. package/esm/next/hooks/legend/useAreaLegendItems.d.ts +27 -0
  91. package/esm/next/hooks/legend/useAreaLegendItems.d.ts.map +1 -0
  92. package/esm/next/hooks/legend/useAreaLegendItems.js +33 -0
  93. package/esm/next/hooks/legend/useAreaLegendItems.js.map +1 -0
  94. package/esm/next/hooks/legend/useLegendDetails.d.ts +2 -2
  95. package/esm/next/hooks/legend/useLegendDetails.d.ts.map +1 -1
  96. package/esm/next/hooks/legend/useLegendDetails.js.map +1 -1
  97. package/esm/next/hooks/legend/useLegendProps.d.ts +2 -2
  98. package/esm/next/hooks/legend/useLegendProps.d.ts.map +1 -1
  99. package/esm/next/hooks/legend/useLegendProps.js.map +1 -1
  100. package/esm/next/hooks/legend/{useLegendItems.d.ts → usePushpinLegendItems.d.ts} +3 -3
  101. package/esm/next/hooks/legend/usePushpinLegendItems.d.ts.map +1 -0
  102. package/esm/next/hooks/legend/usePushpinLegendItems.js +33 -0
  103. package/esm/next/hooks/legend/usePushpinLegendItems.js.map +1 -0
  104. package/esm/next/hooks/map/useAreaMapDataSync.d.ts +9 -0
  105. package/esm/next/hooks/map/useAreaMapDataSync.d.ts.map +1 -0
  106. package/esm/next/hooks/map/useAreaMapDataSync.js +71 -0
  107. package/esm/next/hooks/map/useAreaMapDataSync.js.map +1 -0
  108. package/esm/next/hooks/map/useMapDataSync.d.ts +2 -2
  109. package/esm/next/hooks/map/useMapDataSync.d.ts.map +1 -1
  110. package/esm/next/hooks/map/useMapDataSync.js.map +1 -1
  111. package/esm/next/hooks/map/useTooltipHandlers.d.ts +1 -1
  112. package/esm/next/hooks/map/useTooltipHandlers.d.ts.map +1 -1
  113. package/esm/next/hooks/map/useTooltipHandlers.js +3 -3
  114. package/esm/next/hooks/map/useTooltipHandlers.js.map +1 -1
  115. package/esm/next/hooks/shared/geoCollectionBoundingBox.d.ts +17 -0
  116. package/esm/next/hooks/shared/geoCollectionBoundingBox.d.ts.map +1 -0
  117. package/esm/next/hooks/shared/geoCollectionBoundingBox.js +86 -0
  118. package/esm/next/hooks/shared/geoCollectionBoundingBox.js.map +1 -0
  119. package/esm/next/hooks/shared/useAreaCollectionFeatures.d.ts +43 -0
  120. package/esm/next/hooks/shared/useAreaCollectionFeatures.d.ts.map +1 -0
  121. package/esm/next/hooks/shared/useAreaCollectionFeatures.js +213 -0
  122. package/esm/next/hooks/shared/useAreaCollectionFeatures.js.map +1 -0
  123. package/esm/next/hooks/shared/useAreaDataTransformation.d.ts +21 -0
  124. package/esm/next/hooks/shared/useAreaDataTransformation.d.ts.map +1 -0
  125. package/esm/next/hooks/shared/useAreaDataTransformation.js +25 -0
  126. package/esm/next/hooks/shared/useAreaDataTransformation.js.map +1 -0
  127. package/esm/next/hooks/shared/useAreaPushData.d.ts +11 -0
  128. package/esm/next/hooks/shared/useAreaPushData.d.ts.map +1 -0
  129. package/esm/next/hooks/shared/useAreaPushData.js +20 -0
  130. package/esm/next/hooks/shared/useAreaPushData.js.map +1 -0
  131. package/esm/next/hooks/shared/useGeoDataTransformation.d.ts +4 -18
  132. package/esm/next/hooks/shared/useGeoDataTransformation.d.ts.map +1 -1
  133. package/esm/next/hooks/shared/useGeoDataTransformation.js +5 -22
  134. package/esm/next/hooks/shared/useGeoDataTransformation.js.map +1 -1
  135. package/esm/next/hooks/shared/useGeoPushData.d.ts +20 -0
  136. package/esm/next/hooks/shared/useGeoPushData.d.ts.map +1 -0
  137. package/esm/next/hooks/shared/useGeoPushData.js +36 -0
  138. package/esm/next/hooks/shared/useGeoPushData.js.map +1 -0
  139. package/esm/next/hooks/shared/usePushData.d.ts.map +1 -1
  140. package/esm/next/hooks/shared/usePushData.js +5 -26
  141. package/esm/next/hooks/shared/usePushData.js.map +1 -1
  142. package/esm/next/hooks/shared/usePushpinDataTransformation.d.ts +23 -0
  143. package/esm/next/hooks/shared/usePushpinDataTransformation.d.ts.map +1 -0
  144. package/esm/next/hooks/shared/usePushpinDataTransformation.js +27 -0
  145. package/esm/next/hooks/shared/usePushpinDataTransformation.js.map +1 -0
  146. package/esm/next/hooks/shared/useResolvedAreaProps.d.ts +16 -0
  147. package/esm/next/hooks/shared/useResolvedAreaProps.d.ts.map +1 -0
  148. package/esm/next/hooks/shared/useResolvedAreaProps.js +36 -0
  149. package/esm/next/hooks/shared/useResolvedAreaProps.js.map +1 -0
  150. package/esm/next/hooks/shared/useResolvedPlaceholderValues.d.ts +8 -0
  151. package/esm/next/hooks/shared/useResolvedPlaceholderValues.d.ts.map +1 -0
  152. package/esm/next/hooks/shared/useResolvedPlaceholderValues.js +11 -0
  153. package/esm/next/hooks/shared/useResolvedPlaceholderValues.js.map +1 -0
  154. package/esm/next/hooks/shared/useResolvedProps.d.ts.map +1 -1
  155. package/esm/next/hooks/shared/useResolvedProps.js +3 -3
  156. package/esm/next/hooks/shared/useResolvedProps.js.map +1 -1
  157. package/esm/next/hooks/shared/useSegmentLegendItems.d.ts +17 -0
  158. package/esm/next/hooks/shared/useSegmentLegendItems.d.ts.map +1 -0
  159. package/esm/next/hooks/shared/useSegmentLegendItems.js +33 -0
  160. package/esm/next/hooks/shared/useSegmentLegendItems.js.map +1 -0
  161. package/esm/next/index.d.ts +4 -0
  162. package/esm/next/index.d.ts.map +1 -1
  163. package/esm/next/index.js +1 -0
  164. package/esm/next/index.js.map +1 -1
  165. package/esm/next/providers/maplibre/maplibreDataLayers.d.ts +2 -2
  166. package/esm/next/providers/maplibre/maplibreDataLayers.d.ts.map +1 -1
  167. package/esm/next/providers/maplibre/maplibreDataLayers.js.map +1 -1
  168. package/esm/next/providers/maplibre/maplibreDataLayersArea.d.ts +41 -0
  169. package/esm/next/providers/maplibre/maplibreDataLayersArea.d.ts.map +1 -0
  170. package/esm/next/providers/maplibre/maplibreDataLayersArea.js +83 -0
  171. package/esm/next/providers/maplibre/maplibreDataLayersArea.js.map +1 -0
  172. package/esm/next/providers/maplibre/maplibreDataSource.d.ts +2 -2
  173. package/esm/next/providers/maplibre/maplibreDataSource.d.ts.map +1 -1
  174. package/esm/next/providers/maplibre/maplibreDataSourceArea.d.ts +34 -0
  175. package/esm/next/providers/maplibre/maplibreDataSourceArea.d.ts.map +1 -0
  176. package/esm/next/providers/maplibre/maplibreDataSourceArea.js +209 -0
  177. package/esm/next/providers/maplibre/maplibreDataSourceArea.js.map +1 -0
  178. package/esm/next/providers/maplibre/maplibreTooltip.d.ts.map +1 -1
  179. package/esm/next/providers/maplibre/maplibreTooltip.js +20 -4
  180. package/esm/next/providers/maplibre/maplibreTooltip.js.map +1 -1
  181. package/esm/next/types/areaConfig.d.ts +68 -0
  182. package/esm/next/types/areaConfig.d.ts.map +1 -0
  183. package/esm/next/types/areaConfig.js +3 -0
  184. package/esm/next/types/areaConfig.js.map +1 -0
  185. package/esm/next/types/areaInternal.d.ts +13 -0
  186. package/esm/next/types/areaInternal.d.ts.map +1 -0
  187. package/esm/next/types/areaInternal.js +3 -0
  188. package/esm/next/types/areaInternal.js.map +1 -0
  189. package/esm/next/types/areaPublic.d.ts +68 -0
  190. package/esm/next/types/areaPublic.d.ts.map +1 -0
  191. package/esm/next/types/areaPublic.js +3 -0
  192. package/esm/next/types/areaPublic.js.map +1 -0
  193. package/esm/next/types/shared.d.ts +57 -21
  194. package/esm/next/types/shared.d.ts.map +1 -1
  195. package/esm/next/utils/geoCollection.d.ts +40 -0
  196. package/esm/next/utils/geoCollection.d.ts.map +1 -0
  197. package/esm/next/utils/geoCollection.js +102 -0
  198. package/esm/next/utils/geoCollection.js.map +1 -0
  199. package/package.json +10 -9
  200. package/styles/css/main.css +18 -0
  201. package/styles/css/main.css.map +1 -1
  202. package/styles/scss/geo-area-next.scss +24 -0
  203. package/styles/scss/main.scss +1 -0
  204. package/esm/next/features/data/transformation.d.ts +0 -99
  205. package/esm/next/features/data/transformation.d.ts.map +0 -1
  206. package/esm/next/features/data/transformation.js.map +0 -1
  207. package/esm/next/hooks/legend/useLegendItems.d.ts.map +0 -1
  208. package/esm/next/hooks/legend/useLegendItems.js +0 -54
  209. package/esm/next/hooks/legend/useLegendItems.js.map +0 -1
@@ -0,0 +1,33 @@
1
+ import { ReactElement } from "react";
2
+ import { ICoreGeoAreaChartProps } from "./types/areaInternal.js";
3
+ import { IGeoAreaChartProps } from "./types/areaPublic.js";
4
+ /**
5
+ * GeoAreaChart - Geographic area visualization component
6
+ *
7
+ * @remarks
8
+ * This component renders an area map where geographic areas (countries, regions, states)
9
+ * are rendered according to the provided geographic attribute. It uses MapLibre GL JS for rendering and supports:
10
+ * - Area-based visualization with polygon fills
11
+ * - Optional color measures or attributes for data-driven styling
12
+ * - Optional segment attributes for categorical grouping
13
+ * - Interactive legends that reflect the active color/segment state
14
+ * - Drilling capabilities inherited from the GoodData.UI visualization props
15
+ *
16
+ * @example
17
+ * ```tsx
18
+ * <GeoAreaChart
19
+ * backend={backend}
20
+ * workspace={workspace}
21
+ * area={Md.Country}
22
+ * color={Md.Revenue}
23
+ * />
24
+ * ```
25
+ *
26
+ * @alpha
27
+ */
28
+ export declare function GeoAreaChart(props: IGeoAreaChartProps): ReactElement;
29
+ /**
30
+ * @internal
31
+ */
32
+ export declare function GeoAreaChartImplementation(props: ICoreGeoAreaChartProps): ReactElement;
33
+ //# sourceMappingURL=GeoAreaChart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoAreaChart.d.ts","sourceRoot":"","sources":["../../src/next/GeoAreaChart.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAkBrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAG3D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,YAAY,CAIpE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CActF"}
@@ -0,0 +1,65 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { IntlWrapper } from "@gooddata/sdk-ui";
3
+ import { ThemeContextProvider } from "@gooddata/sdk-ui-theme-provider";
4
+ import { ErrorComponent } from "./components/ErrorComponent.js";
5
+ import { LoadingComponent } from "./components/LoadingComponent.js";
6
+ import { GeoAreaCollectionProvider } from "./context/GeoAreaCollectionContext.js";
7
+ import { GeoAreaDataProvider } from "./context/GeoAreaDataContext.js";
8
+ import { GeoAreaPropsProvider } from "./context/GeoAreaPropsContext.js";
9
+ import { GeoLegendProvider } from "./context/GeoLegendContext.js";
10
+ import { GeoPushpinPropsProvider } from "./context/GeoPushpinPropsContext.js";
11
+ import { InitialExecutionContextProvider } from "./context/InitialExecutionContext.js";
12
+ import { MapInstanceProvider } from "./context/MapInstanceContext.js";
13
+ import { useInitExecution } from "./hooks/init/useInitExecution.js";
14
+ import { useInitExecutionResult } from "./hooks/init/useInitExecutionResult.js";
15
+ import { useResolvedAreaProps } from "./hooks/shared/useResolvedAreaProps.js";
16
+ import { RenderGeoAreaChart } from "./RenderGeoAreaChart.js";
17
+ /**
18
+ * GeoAreaChart - Geographic area visualization component
19
+ *
20
+ * @remarks
21
+ * This component renders an area map where geographic areas (countries, regions, states)
22
+ * are rendered according to the provided geographic attribute. It uses MapLibre GL JS for rendering and supports:
23
+ * - Area-based visualization with polygon fills
24
+ * - Optional color measures or attributes for data-driven styling
25
+ * - Optional segment attributes for categorical grouping
26
+ * - Interactive legends that reflect the active color/segment state
27
+ * - Drilling capabilities inherited from the GoodData.UI visualization props
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * <GeoAreaChart
32
+ * backend={backend}
33
+ * workspace={workspace}
34
+ * area={Md.Country}
35
+ * color={Md.Revenue}
36
+ * />
37
+ * ```
38
+ *
39
+ * @alpha
40
+ */
41
+ export function GeoAreaChart(props) {
42
+ const resolvedProps = useResolvedAreaProps(props);
43
+ const execution = useInitExecution(resolvedProps);
44
+ return _jsx(GeoAreaChartImplementation, { ...resolvedProps, execution: execution });
45
+ }
46
+ /**
47
+ * @internal
48
+ */
49
+ export function GeoAreaChartImplementation(props) {
50
+ return (_jsx(IntlWrapper, { locale: props.locale, children: _jsx(ThemeContextProvider, { theme: props.theme || {}, themeIsLoading: false, children: _jsx(GeoPushpinPropsProvider, { ...props, children: _jsx(GeoAreaPropsProvider, { ...props, children: _jsx(MapInstanceProvider, { children: _jsx(GeoAreaChartWithInitialization, {}) }) }) }) }) }));
51
+ }
52
+ /**
53
+ * @internal
54
+ */
55
+ function GeoAreaChartWithInitialization() {
56
+ const { result: dataView, status, error } = useInitExecutionResult();
57
+ if (status === "error") {
58
+ return _jsx(ErrorComponent, { error: error });
59
+ }
60
+ if (status === "pending" || status === "loading") {
61
+ return _jsx(LoadingComponent, {});
62
+ }
63
+ return (_jsx(InitialExecutionContextProvider, { initialDataView: dataView, children: _jsx(GeoAreaCollectionProvider, { children: _jsx(GeoAreaDataProvider, { children: _jsx(GeoLegendProvider, { children: _jsx(RenderGeoAreaChart, {}) }) }) }) }));
64
+ }
65
+ //# sourceMappingURL=GeoAreaChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoAreaChart.js","sourceRoot":"","sources":["../../src/next/GeoAreaChart.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAK7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,YAAY,CAAC,KAAyB;IAClD,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClD,OAAO,KAAC,0BAA0B,OAAK,aAAa,EAAE,SAAS,EAAE,SAAS,GAAI,CAAC;AACnF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAA6B;IACpE,OAAO,CACH,KAAC,WAAW,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,YAC7B,KAAC,oBAAoB,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,YACjE,KAAC,uBAAuB,OAAM,KAAkD,YAC5E,KAAC,oBAAoB,OAAK,KAAK,YAC3B,KAAC,mBAAmB,cAChB,KAAC,8BAA8B,KAAG,GAChB,GACH,GACD,GACP,GACb,CACjB,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,8BAA8B;IACnC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,sBAAsB,EAAE,CAAC;IAErE,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5C,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAC,gBAAgB,KAAG,CAAC;IAChC,CAAC;IAED,OAAO,CACH,KAAC,+BAA+B,IAAC,eAAe,EAAE,QAAQ,YACtD,KAAC,yBAAyB,cACtB,KAAC,mBAAmB,cAChB,KAAC,iBAAiB,cACd,KAAC,kBAAkB,KAAG,GACN,GACF,GACE,GACE,CACrC,CAAC;AACN,CAAC"}
@@ -3,8 +3,8 @@ import { IntlWrapper } from "@gooddata/sdk-ui";
3
3
  import { ThemeContextProvider } from "@gooddata/sdk-ui-theme-provider";
4
4
  import { ErrorComponent } from "./components/ErrorComponent.js";
5
5
  import { LoadingComponent } from "./components/LoadingComponent.js";
6
- import { GeoDataProvider } from "./context/GeoDataContext.js";
7
6
  import { GeoLegendProvider } from "./context/GeoLegendContext.js";
7
+ import { GeoPushpinDataProvider } from "./context/GeoPushpinDataContext.js";
8
8
  import { GeoPushpinPropsProvider } from "./context/GeoPushpinPropsContext.js";
9
9
  import { InitialExecutionContextProvider } from "./context/InitialExecutionContext.js";
10
10
  import { MapInstanceProvider } from "./context/MapInstanceContext.js";
@@ -37,6 +37,6 @@ function GeoPushpinChartNextWithInitialization() {
37
37
  if (status === "pending" || status === "loading") {
38
38
  return _jsx(LoadingComponent, {});
39
39
  }
40
- return (_jsx(InitialExecutionContextProvider, { initialDataView: dataView, children: _jsx(GeoDataProvider, { children: _jsx(GeoLegendProvider, { children: _jsx(RenderGeoPushpinChart, {}) }) }) }));
40
+ return (_jsx(InitialExecutionContextProvider, { initialDataView: dataView, children: _jsx(GeoPushpinDataProvider, { children: _jsx(GeoLegendProvider, { children: _jsx(RenderGeoPushpinChart, {}) }) }) }));
41
41
  }
42
42
  //# sourceMappingURL=GeoPushpinChartNext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GeoPushpinChartNext.js","sourceRoot":"","sources":["../../src/next/GeoPushpinChartNext.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAgC;IAChE,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClD,OAAO,KAAC,iCAAiC,OAAK,aAAa,EAAE,SAAS,EAAE,SAAS,GAAI,CAAC;AAC1F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iCAAiC,CAAC,KAAoC;IAClF,OAAO,CACH,KAAC,WAAW,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,YAC7B,KAAC,oBAAoB,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,YACjE,KAAC,uBAAuB,OAAK,KAAK,YAC9B,KAAC,mBAAmB,cAChB,KAAC,qCAAqC,KAAG,GACvB,GACA,GACP,GACb,CACjB,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,qCAAqC;IAC1C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,sBAAsB,EAAE,CAAC;IAErE,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5C,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAC,gBAAgB,KAAG,CAAC;IAChC,CAAC;IAED,OAAO,CACH,KAAC,+BAA+B,IAAC,eAAe,EAAE,QAAQ,YACtD,KAAC,eAAe,cACZ,KAAC,iBAAiB,cACd,KAAC,qBAAqB,KAAG,GACT,GACN,GACY,CACrC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"GeoPushpinChartNext.js","sourceRoot":"","sources":["../../src/next/GeoPushpinChartNext.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAgC;IAChE,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClD,OAAO,KAAC,iCAAiC,OAAK,aAAa,EAAE,SAAS,EAAE,SAAS,GAAI,CAAC;AAC1F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iCAAiC,CAAC,KAAoC;IAClF,OAAO,CACH,KAAC,WAAW,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,YAC7B,KAAC,oBAAoB,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,YACjE,KAAC,uBAAuB,OAAK,KAAK,YAC9B,KAAC,mBAAmB,cAChB,KAAC,qCAAqC,KAAG,GACvB,GACA,GACP,GACb,CACjB,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,qCAAqC;IAC1C,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,sBAAsB,EAAE,CAAC;IAErE,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,GAAI,CAAC;IAC5C,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAC,gBAAgB,KAAG,CAAC;IAChC,CAAC;IAED,OAAO,CACH,KAAC,+BAA+B,IAAC,eAAe,EAAE,QAAQ,YACtD,KAAC,sBAAsB,cACnB,KAAC,iBAAiB,cACd,KAAC,qBAAqB,KAAG,GACT,GACC,GACK,CACrC,CAAC;AACN,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { ReactElement } from "react";
2
+ /**
3
+ * Rendering layer - displays the area map
4
+ *
5
+ * @remarks
6
+ * This is the final rendering layer that:
7
+ * - Creates the map container
8
+ * - Initializes the map
9
+ * - Syncs area data to the map
10
+ * - Handles map interactions
11
+ *
12
+ * @internal
13
+ */
14
+ export declare function RenderGeoAreaChart(): ReactElement;
15
+ //# sourceMappingURL=RenderGeoAreaChart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderGeoAreaChart.d.ts","sourceRoot":"","sources":["../../src/next/RenderGeoAreaChart.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAA6B,MAAM,OAAO,CAAC;AAkChE;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAgIjD"}
@@ -0,0 +1,104 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2025 GoodData Corporation
3
+ import { useMemo, useRef, useState } from "react";
4
+ import { defaultImport } from "default-import";
5
+ import { useIntl } from "react-intl";
6
+ import ReactMeasure from "react-measure";
7
+ import { v4 } from "uuid";
8
+ import { convertDrillableItemsToPredicates } from "@gooddata/sdk-ui";
9
+ import { Legend } from "./components/legends/Legend.js";
10
+ import { useGeoAreaCollection } from "./context/GeoAreaCollectionContext.js";
11
+ import { useGeoAreaData } from "./context/GeoAreaDataContext.js";
12
+ import { useGeoAreaProps } from "./context/GeoAreaPropsContext.js";
13
+ import { useInitialExecution } from "./context/InitialExecutionContext.js";
14
+ import { bboxToViewport } from "./features/map/viewportManagement.js";
15
+ import { useLegendConfig } from "./hooks/legend/useLegendConfig.js";
16
+ import { useLegendItemsWithState } from "./hooks/legend/useLegendItemsWithState.js";
17
+ import { useSelectedSegments } from "./hooks/legend/useSelectedSegments.js";
18
+ import { useAfterRender } from "./hooks/map/useAfterRender.js";
19
+ import { useAreaMapDataSync } from "./hooks/map/useAreaMapDataSync.js";
20
+ import { useMapCallbacks } from "./hooks/map/useMapCallbacks.js";
21
+ import { useMapInitialization } from "./hooks/map/useMapInitialization.js";
22
+ import { useMapResize } from "./hooks/map/useMapResize.js";
23
+ import { useTooltipHandlers } from "./hooks/map/useTooltipHandlers.js";
24
+ import { useAreaPushData } from "./hooks/shared/useAreaPushData.js";
25
+ import { DEFAULT_AREA_LAYER_NAME } from "./providers/maplibre/maplibreDataLayersArea.js";
26
+ // There are known compatibility issues between CommonJS (CJS) and ECMAScript modules (ESM).
27
+ // In ESM, default exports of CJS modules are wrapped in default properties instead of being exposed directly.
28
+ // https://github.com/microsoft/TypeScript/issues/52086#issuecomment-1385978414
29
+ const Measure = defaultImport(ReactMeasure);
30
+ const containerBaseId = "geo-area-chart";
31
+ /**
32
+ * Rendering layer - displays the area map
33
+ *
34
+ * @remarks
35
+ * This is the final rendering layer that:
36
+ * - Creates the map container
37
+ * - Initializes the map
38
+ * - Syncs area data to the map
39
+ * - Handles map interactions
40
+ *
41
+ * @internal
42
+ */
43
+ export function RenderGeoAreaChart() {
44
+ const intl = useIntl();
45
+ const props = useGeoAreaProps();
46
+ const { initialDataView } = useInitialExecution();
47
+ const collection = useGeoAreaCollection();
48
+ const mapContainerRef = useRef(null);
49
+ const containerId = useMemo(() => `${containerBaseId}-${v4()}`, []);
50
+ // Track chart container dimensions for legend responsive behavior
51
+ const [chartContainerRect, setChartContainerRect] = useState(null);
52
+ // Get all computed data from context (no transformations needed here)
53
+ const { geoData, colorStrategy, baseLegendItems, colorPalette } = useGeoAreaData();
54
+ const shouldUseCollectionViewport = useMemo(() => {
55
+ if (props.config?.center) {
56
+ return false;
57
+ }
58
+ if (props.config?.viewport?.area) {
59
+ return false;
60
+ }
61
+ return Boolean(collection.bbox);
62
+ }, [collection.bbox, props.config?.center, props.config?.viewport?.area]);
63
+ const collectionViewport = useMemo(() => (shouldUseCollectionViewport ? bboxToViewport(collection.bbox) : null), [collection.bbox, shouldUseCollectionViewport]);
64
+ // Initialize map with geo collection viewport when available
65
+ const { map, tooltip, isMapReady } = useMapInitialization(mapContainerRef, intl, props.config, collectionViewport);
66
+ // Handle container resize similar to pushpin chart
67
+ useMapResize(map, isMapReady, chartContainerRect, collectionViewport);
68
+ // Merge base items with visibility state from context
69
+ const legendItems = useLegendItemsWithState(baseLegendItems);
70
+ // Get selected segments for filtering (use items with state)
71
+ const selectedSegmentItems = useSelectedSegments(legendItems);
72
+ // Create config with selected segments for filtering
73
+ const configWithSegments = useMemo(() => ({
74
+ ...props.config,
75
+ selectedSegmentItems,
76
+ }), [props.config, selectedSegmentItems]);
77
+ // Sync area data to map
78
+ useAreaMapDataSync(map, geoData, configWithSegments, colorStrategy, isMapReady, initialDataView, collection, collectionViewport);
79
+ // Set up map interaction callbacks
80
+ useMapCallbacks(map, {
81
+ onCenterPositionChanged: props.onCenterPositionChanged,
82
+ onZoomChanged: props.onZoomChanged,
83
+ });
84
+ const drillablePredicates = useMemo(() => convertDrillableItemsToPredicates(props.drillableItems ?? []), [props.drillableItems]);
85
+ // Set up tooltip handlers
86
+ useTooltipHandlers(map, tooltip, props.config, drillablePredicates, intl, DEFAULT_AREA_LAYER_NAME);
87
+ // Call afterRender and onLoadingChanged when map finishes rendering
88
+ useAfterRender(map, props.afterRender, props.execution);
89
+ // Push data to analytical designer for configuration panel
90
+ useAreaPushData(colorStrategy, colorPalette);
91
+ // Get legend configuration
92
+ const legendConfig = useLegendConfig(props.config);
93
+ const { position } = legendConfig;
94
+ // Determine if legend should be rendered first (top or left position)
95
+ const isLegendRenderedFirst = position === "top" || position === "left";
96
+ // Container class based on legend position
97
+ // Include gd-geo-component for legacy legend CSS support
98
+ const isRow = position === "left" || position === "right";
99
+ const flexDirection = isRow ? "flex-direction-row" : "flex-direction-column";
100
+ const containerClass = `gd-geo-area-next__container gd-geo-component ${flexDirection} ${isRow ? "gd-geo-area-next__container--flex-row" : "gd-geo-area-next__container--flex-column"}`;
101
+ const legendComponent = (_jsx(Legend, { colorStrategy: colorStrategy, config: props.config, categoryItems: legendItems, containerId: containerId, chartContainerRect: chartContainerRect ?? undefined }));
102
+ return (_jsx(Measure, { client: true, onResize: setChartContainerRect, children: ({ measureRef }) => (_jsxs("div", { id: containerId, "data-testid": "geo-area-chart", className: containerClass, ref: measureRef, children: [isLegendRenderedFirst ? legendComponent : null, _jsx("div", { ref: mapContainerRef, className: "gd-geo-area-next__map" }), isLegendRenderedFirst ? null : legendComponent] })) }));
103
+ }
104
+ //# sourceMappingURL=RenderGeoAreaChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderGeoAreaChart.js","sourceRoot":"","sources":["../../src/next/RenderGeoAreaChart.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RenderGeoPushpinChart.d.ts","sourceRoot":"","sources":["../../src/next/RenderGeoPushpinChart.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAA6B,MAAM,OAAO,CAAC;AAiChE;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,IAAI,YAAY,CA4HpD"}
1
+ {"version":3,"file":"RenderGeoPushpinChart.d.ts","sourceRoot":"","sources":["../../src/next/RenderGeoPushpinChart.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAA6B,MAAM,OAAO,CAAC;AAkChE;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,IAAI,YAAY,CA4HpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"RenderGeoPushpinChart.js","sourceRoot":"","sources":["../../src/next/RenderGeoPushpinChart.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RenderGeoPushpinChart.js","sourceRoot":"","sources":["../../src/next/RenderGeoPushpinChart.tsx"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export function Legend({ colorStrategy, config, categoryItems, containerId, char
25
25
  // Use chart container dimensions for responsive legend behavior (popup mode detection)
26
26
  const legendDetails = useLegendDetails(config, geoData, chartContainerRect);
27
27
  // Check if legend should be shown at all
28
- const { hasCategoryLegend, hasColorLegend, hasSizeLegend } = availableLegends;
28
+ const { hasCategoryLegend, hasColorLegend, hasSizeLegend = false } = availableLegends;
29
29
  const hasAnyLegend = hasCategoryLegend || hasColorLegend || hasSizeLegend;
30
30
  if (!legendConfig.enabled || !hasAnyLegend) {
31
31
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../../src/next/components/legends/Legend.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAgB,OAAO,EAAE,MAAM,OAAO,CAAC;AAM9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAgB9E;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAC,EACnB,aAAa,EACb,MAAM,EACN,aAAa,EACb,WAAW,EACX,kBAAkB,GACP;IACX,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAC;IAEnD,MAAM,gBAAgB,GAAG,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACnE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/F,MAAM,6BAA6B,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IAE3E,uFAAuF;IACvF,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAE5E,yCAAyC;IACzC,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC;IAC9E,MAAM,YAAY,GAAG,iBAAiB,IAAI,cAAc,IAAI,aAAa,CAAC;IAE1E,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,+DAA+D;IAC/D,MAAM,WAAW,GAAG,kBAAkB,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,CAAC;IAC7D,MAAM,YAAY,GAAG,kBAAkB,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,CAAC;IAE/D,uFAAuF;IACvF,4DAA4D;IAC5D,MAAM,aAAa,GAAG,YAAY,CAAC,UAAU,KAAK,IAAI,CAAC;IAEvD,MAAM,eAAe,GAAqB;QACtC,WAAW;QACX,aAAa;QACb,aAAa;QACb,OAAO;QACP,gBAAgB;QAChB,gBAAgB;QAChB,WAAW;QACX,YAAY;QACZ,aAAa;QACb,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,mBAAmB,EAAE,6BAA6B;KACrD,CAAC;IAEF,OAAO,KAAC,UAAU,OAAK,eAAe,GAAI,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../../src/next/components/legends/Legend.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAgB,OAAO,EAAE,MAAM,OAAO,CAAC;AAM9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAgB9E;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAC,EACnB,aAAa,EACb,MAAM,EACN,aAAa,EACb,WAAW,EACX,kBAAkB,GACP;IACX,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAC;IAEnD,MAAM,gBAAgB,GAAG,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACnE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/F,MAAM,6BAA6B,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IAE3E,uFAAuF;IACvF,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAE5E,yCAAyC;IACzC,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,aAAa,GAAG,KAAK,EAAE,GAAG,gBAAgB,CAAC;IACtF,MAAM,YAAY,GAAG,iBAAiB,IAAI,cAAc,IAAI,aAAa,CAAC;IAE1E,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,+DAA+D;IAC/D,MAAM,WAAW,GAAG,kBAAkB,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,CAAC;IAC7D,MAAM,YAAY,GAAG,kBAAkB,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,CAAC;IAE/D,uFAAuF;IACvF,4DAA4D;IAC5D,MAAM,aAAa,GAAG,YAAY,CAAC,UAAU,KAAK,IAAI,CAAC;IAEvD,MAAM,eAAe,GAAqB;QACtC,WAAW;QACX,aAAa;QACb,aAAa;QACb,OAAO;QACP,gBAAgB;QAChB,gBAAgB;QAChB,WAAW;QACX,YAAY;QACZ,aAAa;QACb,UAAU,EAAE,YAAY,CAAC,UAAU;QACnC,mBAAmB,EAAE,6BAA6B;KACrD,CAAC;IAEF,OAAO,KAAC,UAAU,OAAK,eAAe,GAAI,CAAC;AAC/C,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import { ILegendDetails, IPushpinCategoryLegendItem } from "@gooddata/sdk-ui-vis-commons";
2
- import { IAvailableLegends, IGeoData } from "../../types/shared.js";
2
+ import { IAvailableLegends, IGeoCommonData } from "../../types/shared.js";
3
3
  export interface ILegendBodyProps {
4
4
  containerId: string;
5
5
  legendDetails: ILegendDetails | null;
6
6
  categoryItems: IPushpinCategoryLegendItem[];
7
- geoData: IGeoData | null;
7
+ geoData: IGeoCommonData | null;
8
8
  availableLegends: IAvailableLegends;
9
9
  colorLegendValue: string | null;
10
10
  legendWidth: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/next/components/legends/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1F,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IACrC,aAAa,EAAE,0BAA0B,EAAE,CAAC;IAC5C,OAAO,EAAE,QAAQ,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAC9C,mBAAmB,EAAE,CAAC,IAAI,EAAE,0BAA0B,KAAK,IAAI,CAAC;CACnE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/next/components/legends/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1F,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE1E,MAAM,WAAW,gBAAgB;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IACrC,aAAa,EAAE,0BAA0B,EAAE,CAAC;IAC5C,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,GAAG,uBAAuB,CAAC;IAC9C,mBAAmB,EAAE,CAAC,IAAI,EAAE,0BAA0B,KAAK,IAAI,CAAC;CACnE"}
@@ -0,0 +1,24 @@
1
+ import { ReactNode } from "react";
2
+ import { IAreaCollectionFeatures } from "../hooks/shared/useAreaCollectionFeatures.js";
3
+ /**
4
+ * Provides geo collection metadata and features for GeoArea charts.
5
+ *
6
+ * @remarks
7
+ * The provider resolves geo collections using the initial execution result and
8
+ * exposes the resulting features/bounding box via context for reuse across the
9
+ * rendering tree.
10
+ *
11
+ * @alpha
12
+ */
13
+ export declare function GeoAreaCollectionProvider({ children }: {
14
+ children: ReactNode;
15
+ }): import("react/jsx-runtime").JSX.Element;
16
+ /**
17
+ * Hook to access geo collection data.
18
+ *
19
+ * @returns Collection features and metadata
20
+ *
21
+ * @alpha
22
+ */
23
+ export declare function useGeoAreaCollection(): IAreaCollectionFeatures;
24
+ //# sourceMappingURL=GeoAreaCollectionContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoAreaCollectionContext.d.ts","sourceRoot":"","sources":["../../../src/next/context/GeoAreaCollectionContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAsC,MAAM,OAAO,CAAC;AAItE,OAAO,EACH,uBAAuB,EAE1B,MAAM,8CAA8C,CAAC;AAItD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAO9E;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,IAAI,uBAAuB,CAQ9D"}
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2025 GoodData Corporation
3
+ import { createContext, useContext, useMemo } from "react";
4
+ import { useGeoAreaProps } from "./GeoAreaPropsContext.js";
5
+ import { useInitialExecution } from "./InitialExecutionContext.js";
6
+ import { useAreaCollectionFeatures, } from "../hooks/shared/useAreaCollectionFeatures.js";
7
+ const GeoAreaCollectionContext = createContext(undefined);
8
+ /**
9
+ * Provides geo collection metadata and features for GeoArea charts.
10
+ *
11
+ * @remarks
12
+ * The provider resolves geo collections using the initial execution result and
13
+ * exposes the resulting features/bounding box via context for reuse across the
14
+ * rendering tree.
15
+ *
16
+ * @alpha
17
+ */
18
+ export function GeoAreaCollectionProvider({ children }) {
19
+ const props = useGeoAreaProps();
20
+ const { initialDataView } = useInitialExecution();
21
+ const collection = useAreaCollectionFeatures(initialDataView, props.area, props.backend, props.workspace);
22
+ const value = useMemo(() => collection, [collection]);
23
+ return _jsx(GeoAreaCollectionContext.Provider, { value: value, children: children });
24
+ }
25
+ /**
26
+ * Hook to access geo collection data.
27
+ *
28
+ * @returns Collection features and metadata
29
+ *
30
+ * @alpha
31
+ */
32
+ export function useGeoAreaCollection() {
33
+ const context = useContext(GeoAreaCollectionContext);
34
+ if (!context) {
35
+ throw new Error("useGeoAreaCollection must be used within a GeoAreaCollectionProvider");
36
+ }
37
+ return context;
38
+ }
39
+ //# sourceMappingURL=GeoAreaCollectionContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoAreaCollectionContext.js","sourceRoot":"","sources":["../../../src/next/context/GeoAreaCollectionContext.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAa,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAEH,yBAAyB,GAC5B,MAAM,8CAA8C,CAAC;AAEtD,MAAM,wBAAwB,GAAG,aAAa,CAAsC,SAAS,CAAC,CAAC;AAE/F;;;;;;;;;GASG;AACH,MAAM,UAAU,yBAAyB,CAAC,EAAE,QAAQ,EAA2B;IAC3E,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;IAChC,MAAM,EAAE,eAAe,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAClD,MAAM,UAAU,GAAG,yBAAyB,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1G,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEtD,OAAO,KAAC,wBAAwB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAqC,CAAC;AAC3G,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,OAAO,GAAG,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAErD,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { ReactNode } from "react";
2
+ import { IColorPalette } from "@gooddata/sdk-model";
3
+ import { IColorStrategy, IPushpinCategoryLegendItem } from "@gooddata/sdk-ui-vis-commons";
4
+ import { IAreaGeoData, IAvailableLegends } from "../types/shared.js";
5
+ /**
6
+ * Context for area geographic data and derived values.
7
+ *
8
+ * @remarks
9
+ * This context provides all computed data derived from the initial execution result.
10
+ * All values are computed once using useMemo and provided down the tree.
11
+ * This eliminates the need for useEffect state synchronization.
12
+ *
13
+ * @alpha
14
+ */
15
+ interface IGeoAreaDataContext {
16
+ /**
17
+ * Transformed area geographic data
18
+ */
19
+ geoData: IAreaGeoData | null;
20
+ /**
21
+ * Color strategy used for visualization
22
+ */
23
+ colorStrategy: IColorStrategy | null;
24
+ /**
25
+ * Color palette used for visualization
26
+ */
27
+ colorPalette: IColorPalette;
28
+ /**
29
+ * Base category legend items (before applying visibility state)
30
+ */
31
+ baseLegendItems: IPushpinCategoryLegendItem[];
32
+ /**
33
+ * Available legend types based on data
34
+ */
35
+ availableLegends: IAvailableLegends;
36
+ }
37
+ /**
38
+ * Provider for area geographic data.
39
+ *
40
+ * @remarks
41
+ * This provider computes all derived data from the initial execution result:
42
+ * - Transforms DataView to IAreaGeoData
43
+ * - Creates color strategy
44
+ * - Generates legend items
45
+ * - Determines available legends
46
+ *
47
+ * All computations use useMemo and happen once per data change.
48
+ * No useEffect or state synchronization needed.
49
+ *
50
+ * @alpha
51
+ */
52
+ export declare function GeoAreaDataProvider({ children }: {
53
+ children: ReactNode;
54
+ }): import("react/jsx-runtime").JSX.Element;
55
+ /**
56
+ * Hook to access area geographic data.
57
+ *
58
+ * @remarks
59
+ * Use this hook to access all computed data derived from the execution result.
60
+ * All values are already computed and memoized.
61
+ *
62
+ * @returns Area geographic data context
63
+ * @throws Error if used outside of GeoAreaDataProvider
64
+ *
65
+ * @alpha
66
+ */
67
+ export declare function useGeoAreaData(): IGeoAreaDataContext;
68
+ export {};
69
+ //# sourceMappingURL=GeoAreaDataContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoAreaDataContext.d.ts","sourceRoot":"","sources":["../../../src/next/context/GeoAreaDataContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAsC,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAS1F,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAErE;;;;;;;;;GASG;AACH,UAAU,mBAAmB;IACzB;;OAEG;IACH,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IAErC;;OAEG;IACH,YAAY,EAAE,aAAa,CAAC;IAE5B;;OAEG;IACH,eAAe,EAAE,0BAA0B,EAAE,CAAC;IAE9C;;OAEG;IACH,gBAAgB,EAAE,iBAAiB,CAAC;CACvC;AASD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CA2DxE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,IAAI,mBAAmB,CAQpD"}
@@ -0,0 +1,87 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2025 GoodData Corporation
3
+ import { createContext, useContext, useMemo } from "react";
4
+ import { DefaultColorPalette } from "@gooddata/sdk-ui";
5
+ import { useGeoAreaProps } from "./GeoAreaPropsContext.js";
6
+ import { GeoDataContextProvider } from "./GeoDataContext.js";
7
+ import { useInitialExecution } from "./InitialExecutionContext.js";
8
+ import { getAreaColorStrategy } from "../features/coloring/areaColorStrategy.js";
9
+ import { getAreaAvailableLegends } from "../features/data/areaTransformation.js";
10
+ import { useAreaLegendItems } from "../hooks/legend/useAreaLegendItems.js";
11
+ import { useAreaDataTransformation } from "../hooks/shared/useAreaDataTransformation.js";
12
+ const GeoAreaDataContext = createContext(undefined);
13
+ const EMPTY_AVAILABLE_LEGENDS = {
14
+ hasCategoryLegend: false,
15
+ hasColorLegend: false,
16
+ };
17
+ /**
18
+ * Provider for area geographic data.
19
+ *
20
+ * @remarks
21
+ * This provider computes all derived data from the initial execution result:
22
+ * - Transforms DataView to IAreaGeoData
23
+ * - Creates color strategy
24
+ * - Generates legend items
25
+ * - Determines available legends
26
+ *
27
+ * All computations use useMemo and happen once per data change.
28
+ * No useEffect or state synchronization needed.
29
+ *
30
+ * @alpha
31
+ */
32
+ export function GeoAreaDataProvider({ children }) {
33
+ const props = useGeoAreaProps();
34
+ const { initialDataView } = useInitialExecution();
35
+ // Transform execution data to area geo format
36
+ const geoData = useAreaDataTransformation(initialDataView);
37
+ // Create color strategy (memoized to prevent infinite loops)
38
+ const colorPalette = useMemo(() => props.config?.colorPalette || DefaultColorPalette, [props.config?.colorPalette]);
39
+ const colorMapping = useMemo(() => props.config?.colorMapping || [], [props.config?.colorMapping]);
40
+ const colorStrategy = useMemo(() => geoData && initialDataView
41
+ ? getAreaColorStrategy(colorPalette, colorMapping, geoData, initialDataView)
42
+ : null, [colorPalette, colorMapping, geoData, initialDataView]);
43
+ // Get base legend items (with colors, but always isVisible: true)
44
+ const baseLegendItems = useAreaLegendItems(initialDataView, geoData, colorStrategy);
45
+ // Compute available legends
46
+ const availableLegends = useMemo(() => {
47
+ if (!geoData) {
48
+ return EMPTY_AVAILABLE_LEGENDS;
49
+ }
50
+ return getAreaAvailableLegends(baseLegendItems, geoData);
51
+ }, [baseLegendItems, geoData]);
52
+ const value = useMemo(() => ({
53
+ geoData,
54
+ colorStrategy,
55
+ colorPalette,
56
+ baseLegendItems,
57
+ availableLegends,
58
+ }), [geoData, colorStrategy, colorPalette, baseLegendItems, availableLegends]);
59
+ const geoDataContextValue = useMemo(() => ({
60
+ geoData,
61
+ colorStrategy,
62
+ colorPalette,
63
+ baseLegendItems,
64
+ availableLegends,
65
+ }), [geoData, colorStrategy, colorPalette, baseLegendItems, availableLegends]);
66
+ return (_jsx(GeoDataContextProvider, { value: geoDataContextValue, children: _jsx(GeoAreaDataContext.Provider, { value: value, children: children }) }));
67
+ }
68
+ /**
69
+ * Hook to access area geographic data.
70
+ *
71
+ * @remarks
72
+ * Use this hook to access all computed data derived from the execution result.
73
+ * All values are already computed and memoized.
74
+ *
75
+ * @returns Area geographic data context
76
+ * @throws Error if used outside of GeoAreaDataProvider
77
+ *
78
+ * @alpha
79
+ */
80
+ export function useGeoAreaData() {
81
+ const context = useContext(GeoAreaDataContext);
82
+ if (context === undefined) {
83
+ throw new Error("useGeoAreaData must be used within a GeoAreaDataProvider");
84
+ }
85
+ return context;
86
+ }
87
+ //# sourceMappingURL=GeoAreaDataContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoAreaDataContext.js","sourceRoot":"","sources":["../../../src/next/context/GeoAreaDataContext.tsx"],"names":[],"mappings":"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"}