@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,36 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import { useMemo } from "react";
3
+ import { useResolvedPlaceholderValues } from "./useResolvedPlaceholderValues.js";
4
+ /**
5
+ * Resolves area props into a normalized format
6
+ *
7
+ * @remarks
8
+ * Unlike pushpin charts, area always uses a single area attribute
9
+ * (geographic areas like countries or regions), so no special resolution is needed.
10
+ * This hook exists for consistency with the pushpin implementation.
11
+ *
12
+ * @param props - Raw props from component
13
+ * @returns Resolved props ready for execution
14
+ *
15
+ * @internal
16
+ */
17
+ export function useResolvedAreaProps(props) {
18
+ const [area, color, segmentBy, filters, sortBy] = useResolvedPlaceholderValues([
19
+ props.area,
20
+ props.color,
21
+ props.segmentBy,
22
+ props.filters,
23
+ props.sortBy,
24
+ ]);
25
+ return useMemo(() => {
26
+ return {
27
+ ...props,
28
+ area,
29
+ color,
30
+ segmentBy,
31
+ filters,
32
+ sortBy,
33
+ };
34
+ }, [props, area, color, segmentBy, filters, sortBy]);
35
+ }
36
+ //# sourceMappingURL=useResolvedAreaProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResolvedAreaProps.js","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedAreaProps.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAGjF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAyB;IAC1D,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,4BAA4B,CAAC;QAC3E,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,MAAM;KACf,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,EAAE;QAChB,OAAO;YACH,GAAG,KAAK;YACR,IAAI;YACJ,KAAK;YACL,SAAS;YACT,OAAO;YACP,MAAM;SACT,CAAC;IACN,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AACzD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { PlaceholdersResolvedValues } from "@gooddata/sdk-ui";
2
+ /**
3
+ * Helper wrapper to resolve arrays of placeholders consistently.
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function useResolvedPlaceholderValues<T extends unknown[], C>(values: [...T], resolutionContext?: C): PlaceholdersResolvedValues<T>;
8
+ //# sourceMappingURL=useResolvedPlaceholderValues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResolvedPlaceholderValues.d.ts","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedPlaceholderValues.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAoC,MAAM,kBAAkB,CAAC;AAEhG;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EAC/D,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EACd,iBAAiB,CAAC,EAAE,CAAC,GACtB,0BAA0B,CAAC,CAAC,CAAC,CAE/B"}
@@ -0,0 +1,11 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import { useResolveValuesWithPlaceholders } from "@gooddata/sdk-ui";
3
+ /**
4
+ * Helper wrapper to resolve arrays of placeholders consistently.
5
+ *
6
+ * @internal
7
+ */
8
+ export function useResolvedPlaceholderValues(values, resolutionContext) {
9
+ return useResolveValuesWithPlaceholders(values, resolutionContext);
10
+ }
11
+ //# sourceMappingURL=useResolvedPlaceholderValues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResolvedPlaceholderValues.js","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedPlaceholderValues.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAA8B,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAEhG;;;;GAIG;AACH,MAAM,UAAU,4BAA4B,CACxC,MAAc,EACd,iBAAqB;IAErB,OAAO,gCAAgC,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AACvE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useResolvedProps.d.ts","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedProps.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EACH,yBAAyB,EAE5B,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,yBAAyB,GAAG,iCAAiC,CA6BpG"}
1
+ {"version":3,"file":"useResolvedProps.d.ts","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedProps.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EACH,yBAAyB,EAE5B,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,yBAAyB,GAAG,iCAAiC,CA0BpG"}
@@ -1,5 +1,5 @@
1
1
  // (C) 2025 GoodData Corporation
2
- import { useResolveValuesWithPlaceholders } from "@gooddata/sdk-ui";
2
+ import { useResolvedPlaceholderValues } from "./useResolvedPlaceholderValues.js";
3
3
  import { isGeoPushpinChartNextLatitudeLongitudeProps, } from "../../types/public.js";
4
4
  /**
5
5
  * Resolves placeholders in GeoPushpinChartNext props and returns strongly-typed props.
@@ -15,7 +15,7 @@ import { isGeoPushpinChartNextLatitudeLongitudeProps, } from "../../types/public
15
15
  */
16
16
  export function useResolvedProps(props) {
17
17
  const isLatLngMode = isGeoPushpinChartNextLatitudeLongitudeProps(props);
18
- const [location, latitude, longitude, segmentBy, size, color, filters, sortBy] = useResolveValuesWithPlaceholders([
18
+ const [location, latitude, longitude, segmentBy, size, color, filters, sortBy] = useResolvedPlaceholderValues([
19
19
  isLatLngMode ? undefined : props.location,
20
20
  isLatLngMode ? props.latitude : undefined,
21
21
  isLatLngMode ? props.longitude : undefined,
@@ -24,7 +24,7 @@ export function useResolvedProps(props) {
24
24
  props.color,
25
25
  props.filters,
26
26
  props.sortBy,
27
- ], undefined);
27
+ ]);
28
28
  return {
29
29
  ...props,
30
30
  location,
@@ -1 +1 @@
1
- {"version":3,"file":"useResolvedProps.js","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedProps.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAGpE,OAAO,EAEH,2CAA2C,GAC9C,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAgC;IAC7D,MAAM,YAAY,GAAG,2CAA2C,CAAC,KAAK,CAAC,CAAC;IAExE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GAC1E,gCAAgC,CAC5B;QACI,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;QACzC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACzC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC1C,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,MAAM;KACf,EACD,SAAS,CACZ,CAAC;IAEN,OAAO;QACH,GAAG,KAAK;QACR,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,SAAS;QACT,IAAI;QACJ,KAAK;QACL,OAAO;QACP,MAAM;KACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"useResolvedProps.js","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useResolvedProps.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,OAAO,EAEH,2CAA2C,GAC9C,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAgC;IAC7D,MAAM,YAAY,GAAG,2CAA2C,CAAC,KAAK,CAAC,CAAC;IAExE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GAC1E,4BAA4B,CAAC;QACzB,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ;QACzC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACzC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC1C,KAAK,CAAC,SAAS;QACf,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,MAAM;KACf,CAAC,CAAC;IAEP,OAAO;QACH,GAAG,KAAK;QACR,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,SAAS;QACT,IAAI;QACJ,KAAK;QACL,OAAO;QACP,MAAM;KACT,CAAC;AACN,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { DataViewFacade } from "@gooddata/sdk-ui";
2
+ import { IColorStrategy, IPushpinCategoryLegendItem } from "@gooddata/sdk-ui-vis-commons";
3
+ import { IGeoCommonData } from "../../types/shared.js";
4
+ interface IUseSegmentLegendItemsConfig<TGeoData extends IGeoCommonData> {
5
+ type: IPushpinCategoryLegendItem["type"];
6
+ dataView: DataViewFacade | null;
7
+ geoData: TGeoData | null;
8
+ colorStrategy: IColorStrategy | null;
9
+ }
10
+ /**
11
+ * Generic hook for building legend items from segment data.
12
+ *
13
+ * @internal
14
+ */
15
+ export declare function useSegmentLegendItems<TGeoData extends IGeoCommonData>({ type, dataView, geoData, colorStrategy, }: IUseSegmentLegendItemsConfig<TGeoData>): IPushpinCategoryLegendItem[];
16
+ export {};
17
+ //# sourceMappingURL=useSegmentLegendItems.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSegmentLegendItems.d.ts","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useSegmentLegendItems.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1F,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,UAAU,4BAA4B,CAAC,QAAQ,SAAS,cAAc;IAClE,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,QAAQ,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;CACxC;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,SAAS,cAAc,EAAE,EACnE,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,aAAa,GAChB,EAAE,4BAA4B,CAAC,QAAQ,CAAC,GAAG,0BAA0B,EAAE,CA2BvE"}
@@ -0,0 +1,33 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import { useMemo } from "react";
3
+ /**
4
+ * Generic hook for building legend items from segment data.
5
+ *
6
+ * @internal
7
+ */
8
+ export function useSegmentLegendItems({ type, dataView, geoData, colorStrategy, }) {
9
+ return useMemo(() => {
10
+ if (!dataView || !geoData?.segment || !colorStrategy) {
11
+ return [];
12
+ }
13
+ const uniqueSegments = new Map();
14
+ geoData.segment.data.forEach((segmentValue, index) => {
15
+ const uri = geoData.segment?.uris?.[index];
16
+ if (uri && !uniqueSegments.has(uri)) {
17
+ uniqueSegments.set(uri, {
18
+ name: segmentValue,
19
+ uri,
20
+ });
21
+ }
22
+ });
23
+ return Array.from(uniqueSegments.values()).map(({ name, uri }, index) => ({
24
+ type,
25
+ name,
26
+ uri,
27
+ color: colorStrategy.getColorByIndex(index),
28
+ legendIndex: index,
29
+ isVisible: true,
30
+ }));
31
+ }, [type, dataView, geoData, colorStrategy]);
32
+ }
33
+ //# sourceMappingURL=useSegmentLegendItems.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSegmentLegendItems.js","sourceRoot":"","sources":["../../../../src/next/hooks/shared/useSegmentLegendItems.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAchC;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAkC,EACnE,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,aAAa,GACwB;IACrC,OAAO,OAAO,CAAC,GAAG,EAAE;QAChB,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;YACnD,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,GAAG,EAAyC,CAAC;QAExE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAoB,EAAE,KAAa,EAAE,EAAE;YACjE,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE;oBACpB,IAAI,EAAE,YAAY;oBAClB,GAAG;iBACN,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACtE,IAAI;YACJ,IAAI;YACJ,GAAG;YACH,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC;YAC3C,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,IAAI;SAClB,CAAC,CAAC,CAAC;IACR,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;AACjD,CAAC"}
@@ -2,4 +2,8 @@ export { GeoPushpinChartNext, GeoPushpinChartNextImplementation } from "./GeoPus
2
2
  export type { IGeoPushpinChartNextBaseProps, IGeoPushpinChartNextLocationProps, IGeoPushpinChartNextLatitudeLongitudeProps, IGeoPushpinChartNextProps, isGeoPushpinChartNextLocationProps, isGeoPushpinChartNextLatitudeLongitudeProps, } from "./types/public.js";
3
3
  export type { ICoreGeoPushpinChartNextProps } from "./types/internal.js";
4
4
  export type { IGeoPushpinChartNextConfig, IGeoConfigViewportNext, IGeoConfigViewportAreaNext, IGeoPointsConfigNext, PushpinSizeOptionNext, IGeoLegendConfigNext, } from "./types/config.js";
5
+ export { GeoAreaChart, GeoAreaChartImplementation } from "./GeoAreaChart.js";
6
+ export type { IGeoAreaChartBaseProps, IGeoAreaChartProps } from "./types/areaPublic.js";
7
+ export type { ICoreGeoAreaChartProps } from "./types/areaInternal.js";
8
+ export type { IGeoAreaChartConfig, IGeoAreasConfig } from "./types/areaConfig.js";
5
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAClG,YAAY,EACR,6BAA6B,EAC7B,iCAAiC,EACjC,0CAA0C,EAC1C,yBAAyB,EACzB,kCAAkC,EAClC,2CAA2C,GAC9C,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACzE,YAAY,EACR,0BAA0B,EAC1B,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,GACvB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAClG,YAAY,EACR,6BAA6B,EAC7B,iCAAiC,EACjC,0CAA0C,EAC1C,yBAAyB,EACzB,kCAAkC,EAClC,2CAA2C,GAC9C,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACzE,YAAY,EACR,0BAA0B,EAC1B,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,YAAY,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACxF,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACtE,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC"}
package/esm/next/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  // (C) 2025 GoodData Corporation
2
2
  export { GeoPushpinChartNext, GeoPushpinChartNextImplementation } from "./GeoPushpinChartNext.js";
3
+ export { GeoAreaChart, GeoAreaChartImplementation } from "./GeoAreaChart.js";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAmBlG,OAAO,EAAE,YAAY,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { CircleLayerSpecification, FilterSpecification, SymbolLayerSpecification } from "maplibre-gl";
2
2
  import { IGeoPushpinChartNextConfig } from "../../types/config.js";
3
- import { IGeoData } from "../../types/shared.js";
3
+ import { IPushpinGeoData } from "../../types/shared.js";
4
4
  /**
5
5
  * Creates a filter expression for pushpins based on selected segment items
6
6
  *
@@ -20,7 +20,7 @@ export declare function createPushpinFilter(selectedSegmentItems: string[]): Fil
20
20
  *
21
21
  * @alpha
22
22
  */
23
- export declare function createPushpinDataLayer(dataSourceName: string, geoData: IGeoData, config: IGeoPushpinChartNextConfig): CircleLayerSpecification;
23
+ export declare function createPushpinDataLayer(dataSourceName: string, geoData: IPushpinGeoData, config: IGeoPushpinChartNextConfig): CircleLayerSpecification;
24
24
  /**
25
25
  * Create layer for clustered points/pins which have 'properties.point_count' indicates number of same points is clustered together
26
26
  *
@@ -1 +1 @@
1
- {"version":3,"file":"maplibreDataLayers.d.ts","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataLayers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,wBAAwB,EAExB,mBAAmB,EACnB,wBAAwB,EAC3B,MAAM,aAAa,CAAC;AAkBrB,OAAO,EAAwB,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAmGjD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,oBAAoB,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAQvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAClC,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,0BAA0B,GACnC,wBAAwB,CAkB1B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAYpF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAMpF;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAatF"}
1
+ {"version":3,"file":"maplibreDataLayers.d.ts","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataLayers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,wBAAwB,EAExB,mBAAmB,EACnB,wBAAwB,EAC3B,MAAM,aAAa,CAAC;AAkBrB,OAAO,EAAwB,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAmGxD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,oBAAoB,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAQvF;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAClC,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,0BAA0B,GACnC,wBAAwB,CAkB1B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAYpF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAMpF;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,wBAAwB,CAatF"}
@@ -1 +1 @@
1
- {"version":3,"file":"maplibreDataLayers.js","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataLayers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"maplibreDataLayers.js","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataLayers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { FillLayerSpecification, FilterSpecification, LineLayerSpecification } from "maplibre-gl";
2
+ import { IGeoAreaChartConfig } from "../../types/areaConfig.js";
3
+ export declare const DEFAULT_AREA_LAYER_NAME = "gdcArea";
4
+ export declare const DEFAULT_AREA_OUTLINE_LAYER_NAME = "gdcAreaOutline";
5
+ /**
6
+ * Creates a filter expression for geographic areas based on selected segment items
7
+ *
8
+ * @param selectedSegmentItems - Array of segment URIs to show
9
+ * @returns MapLibre expression for filtering
10
+ *
11
+ * @alpha
12
+ */
13
+ export declare function createAreaFilter(selectedSegmentItems: string[]): FilterSpecification;
14
+ /**
15
+ * Creates the area fill layer for areas
16
+ *
17
+ * @remarks
18
+ * This layer renders filled polygons representing geographic areas (countries, regions, etc.)
19
+ * with colors data-driven by measure values.
20
+ *
21
+ * @param dataSourceName - Name of the GeoJSON data source
22
+ * @param config - Area chart configuration
23
+ * @returns MapLibre fill layer specification
24
+ *
25
+ * @alpha
26
+ */
27
+ export declare function createAreaFillLayer(dataSourceName: string, config: IGeoAreaChartConfig): FillLayerSpecification;
28
+ /**
29
+ * Creates the area outline layer for area borders
30
+ *
31
+ * @remarks
32
+ * This layer renders borders around geographic areas for better visual separation.
33
+ *
34
+ * @param dataSourceName - Name of the GeoJSON data source
35
+ * @param config - Area chart configuration
36
+ * @returns MapLibre line layer specification
37
+ *
38
+ * @alpha
39
+ */
40
+ export declare function createAreaOutlineLayer(dataSourceName: string, config: IGeoAreaChartConfig): LineLayerSpecification;
41
+ //# sourceMappingURL=maplibreDataLayersArea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maplibreDataLayersArea.d.ts","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataLayersArea.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAKvG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,eAAO,MAAM,uBAAuB,YAAY,CAAC;AACjD,eAAO,MAAM,+BAA+B,mBAAmB,CAAC;AAEhE;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,oBAAoB,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAQpF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAC/B,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,mBAAmB,GAC5B,sBAAsB,CAoBxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAClC,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,mBAAmB,GAC5B,sBAAsB,CAmBxB"}
@@ -0,0 +1,83 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import { BucketNames } from "@gooddata/sdk-ui";
3
+ import { EMPTY_SEGMENT_VALUE } from "../../constants/geoChart.js";
4
+ export const DEFAULT_AREA_LAYER_NAME = "gdcArea";
5
+ export const DEFAULT_AREA_OUTLINE_LAYER_NAME = "gdcAreaOutline";
6
+ /**
7
+ * Creates a filter expression for geographic areas based on selected segment items
8
+ *
9
+ * @param selectedSegmentItems - Array of segment URIs to show
10
+ * @returns MapLibre expression for filtering
11
+ *
12
+ * @alpha
13
+ */
14
+ export function createAreaFilter(selectedSegmentItems) {
15
+ return [
16
+ "match",
17
+ ["get", "uri", ["get", BucketNames.SEGMENT]],
18
+ selectedSegmentItems.length ? selectedSegmentItems : [EMPTY_SEGMENT_VALUE],
19
+ true,
20
+ false,
21
+ ];
22
+ }
23
+ /**
24
+ * Creates the area fill layer for areas
25
+ *
26
+ * @remarks
27
+ * This layer renders filled polygons representing geographic areas (countries, regions, etc.)
28
+ * with colors data-driven by measure values.
29
+ *
30
+ * @param dataSourceName - Name of the GeoJSON data source
31
+ * @param config - Area chart configuration
32
+ * @returns MapLibre fill layer specification
33
+ *
34
+ * @alpha
35
+ */
36
+ export function createAreaFillLayer(dataSourceName, config) {
37
+ const { selectedSegmentItems = [], areas = {} } = config || {};
38
+ const { fillOpacity = 0.7 } = areas;
39
+ const layer = {
40
+ id: DEFAULT_AREA_LAYER_NAME,
41
+ type: "fill",
42
+ source: dataSourceName,
43
+ paint: {
44
+ // Use data-driven styling from flattened feature properties
45
+ "fill-color": ["coalesce", ["get", "color_fill"], "#20B2E2"],
46
+ "fill-opacity": fillOpacity,
47
+ },
48
+ };
49
+ if (selectedSegmentItems.length > 0) {
50
+ layer.filter = createAreaFilter(selectedSegmentItems);
51
+ }
52
+ return layer;
53
+ }
54
+ /**
55
+ * Creates the area outline layer for area borders
56
+ *
57
+ * @remarks
58
+ * This layer renders borders around geographic areas for better visual separation.
59
+ *
60
+ * @param dataSourceName - Name of the GeoJSON data source
61
+ * @param config - Area chart configuration
62
+ * @returns MapLibre line layer specification
63
+ *
64
+ * @alpha
65
+ */
66
+ export function createAreaOutlineLayer(dataSourceName, config) {
67
+ const { selectedSegmentItems = [], areas = {} } = config || {};
68
+ const { borderColor = "#FFFFFF", borderWidth = 1 } = areas;
69
+ const layer = {
70
+ id: DEFAULT_AREA_OUTLINE_LAYER_NAME,
71
+ type: "line",
72
+ source: dataSourceName,
73
+ paint: {
74
+ "line-color": borderColor,
75
+ "line-width": borderWidth,
76
+ },
77
+ };
78
+ if (selectedSegmentItems.length > 0) {
79
+ layer.filter = createAreaFilter(selectedSegmentItems);
80
+ }
81
+ return layer;
82
+ }
83
+ //# sourceMappingURL=maplibreDataLayersArea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maplibreDataLayersArea.js","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataLayersArea.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAIhC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGlE,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC;AACjD,MAAM,CAAC,MAAM,+BAA+B,GAAG,gBAAgB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,oBAA8B;IAC3D,OAAO;QACH,OAAO;QACP,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAC5C,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC1E,IAAI;QACJ,KAAK;KACe,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAC/B,cAAsB,EACtB,MAA2B;IAE3B,MAAM,EAAE,oBAAoB,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;IAC/D,MAAM,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,KAAK,CAAC;IAEpC,MAAM,KAAK,GAA2B;QAClC,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE;YACH,4DAA4D;YAC5D,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC;YAC5D,cAAc,EAAE,WAAW;SAC9B;KACJ,CAAC;IAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CAClC,cAAsB,EACtB,MAA2B;IAE3B,MAAM,EAAE,oBAAoB,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;IAC/D,MAAM,EAAE,WAAW,GAAG,SAAS,EAAE,WAAW,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;IAE3D,MAAM,KAAK,GAA2B;QAClC,EAAE,EAAE,+BAA+B;QACnC,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE;YACH,YAAY,EAAE,WAAW;YACzB,YAAY,EAAE,WAAW;SAC5B;KACJ,CAAC;IAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { GeoJSONSourceSpecification } from "maplibre-gl";
2
2
  import { IColorStrategy } from "@gooddata/sdk-ui-vis-commons";
3
3
  import { IGeoPushpinChartNextConfig } from "../../types/config.js";
4
- import { IGeoData } from "../../types/shared.js";
4
+ import { IPushpinGeoData } from "../../types/shared.js";
5
5
  /**
6
6
  * Properties for creating a geo data source
7
7
  *
@@ -10,7 +10,7 @@ import { IGeoData } from "../../types/shared.js";
10
10
  export interface IGeoDataSourceProps {
11
11
  colorStrategy: IColorStrategy;
12
12
  config: IGeoPushpinChartNextConfig;
13
- geoData: IGeoData;
13
+ geoData: IPushpinGeoData;
14
14
  hasClustering: boolean;
15
15
  }
16
16
  type IGeoDataSourceFeature = GeoJSON.Feature<GeoJSON.Point, GeoJSON.GeoJsonProperties>;
@@ -1 +1 @@
1
- {"version":3,"file":"maplibreDataSource.d.ts","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataSource.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAS9D,OAAO,EAAwB,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACzF,OAAO,EAAE,QAAQ,EAA6B,MAAM,uBAAuB,CAAC;AAE5E;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,aAAa,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,0BAA0B,CAAC;IACnC,OAAO,EAAE,QAAQ,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;CAC1B;AAED,KAAK,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACvF,MAAM,MAAM,sBAAsB,GAAG,qBAAqB,EAAE,CAAC;AAoH7D;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,GAAI,iBAAiB,mBAAmB,KAAG,0BAoB9E,CAAC"}
1
+ {"version":3,"file":"maplibreDataSource.d.ts","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataSource.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAS9D,OAAO,EAAwB,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACzF,OAAO,EAA6B,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEnF;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,aAAa,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,0BAA0B,CAAC;IACnC,OAAO,EAAE,eAAe,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CAC1B;AAED,KAAK,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACvF,MAAM,MAAM,sBAAsB,GAAG,qBAAqB,EAAE,CAAC;AAoH7D;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,GAAI,iBAAiB,mBAAmB,KAAG,0BAoB9E,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { GeoJSONSourceSpecification } from "maplibre-gl";
2
+ import { IGeoJsonFeature } from "@gooddata/sdk-model";
3
+ import { IColorStrategy } from "@gooddata/sdk-ui-vis-commons";
4
+ import { IGeoAreaChartConfig } from "../../types/areaConfig.js";
5
+ import { IAreaGeoData } from "../../types/shared.js";
6
+ /**
7
+ * Properties for creating a area data source
8
+ *
9
+ * @alpha
10
+ */
11
+ export interface IAreaDataSourceProps {
12
+ colorStrategy: IColorStrategy;
13
+ config: IGeoAreaChartConfig;
14
+ geoData: IAreaGeoData;
15
+ features?: IGeoJsonFeature[];
16
+ }
17
+ type IAreaDataSourceFeature = GeoJSON.Feature<GeoJSON.Geometry, GeoJSON.GeoJsonProperties>;
18
+ export type IAreaDataSourceFeatures = IAreaDataSourceFeature[];
19
+ /**
20
+ * Creates a GeoJSON data source for area visualization
21
+ *
22
+ * @remarks
23
+ * Creates a GeoJSON source with polygon features for area-based visualization.
24
+ * In production, this should integrate with a boundaries provider to load
25
+ * actual geographic polygon data.
26
+ *
27
+ * @param dataSourceProps - Properties containing area data, config, and styling
28
+ * @returns GeoJSON source specification for MapLibre
29
+ *
30
+ * @alpha
31
+ */
32
+ export declare const createAreaDataSource: (dataSourceProps: IAreaDataSourceProps) => GeoJSONSourceSpecification;
33
+ export {};
34
+ //# sourceMappingURL=maplibreDataSourceArea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maplibreDataSourceArea.d.ts","sourceRoot":"","sources":["../../../../src/next/providers/maplibre/maplibreDataSourceArea.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC,aAAa,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;CAChC;AAED,KAAK,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC3F,MAAM,MAAM,uBAAuB,GAAG,sBAAsB,EAAE,CAAC;AAiQ/D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oBAAoB,GAAI,iBAAiB,oBAAoB,KAAG,0BAU5E,CAAC"}