@gooddata/sdk-ui-geo 11.15.0-alpha.0 → 11.15.0-alpha.2
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.
- package/esm/core/geoChart/colorStrategy/geoChart.d.ts.map +1 -1
- package/esm/core/geoChart/colorStrategy/geoChart.js.map +1 -1
- package/esm/next/GeoAreaChart.d.ts.map +1 -1
- package/esm/next/GeoAreaChart.js +2 -3
- package/esm/next/GeoAreaChart.js.map +1 -1
- package/esm/next/GeoPushpinChartNext.d.ts.map +1 -1
- package/esm/next/GeoPushpinChartNext.js +2 -3
- package/esm/next/GeoPushpinChartNext.js.map +1 -1
- package/esm/next/components/RenderGeoChartNext.d.ts.map +1 -1
- package/esm/next/components/RenderGeoChartNext.js +1 -1
- package/esm/next/components/RenderGeoChartNext.js.map +1 -1
- package/esm/next/constants/emptyDefaults.d.ts +4 -0
- package/esm/next/constants/emptyDefaults.d.ts.map +1 -1
- package/esm/next/constants/emptyDefaults.js +4 -0
- package/esm/next/constants/emptyDefaults.js.map +1 -1
- package/esm/next/hooks/layers/useLayerClickEvent.d.ts +8 -0
- package/esm/next/hooks/layers/useLayerClickEvent.d.ts.map +1 -0
- package/esm/next/hooks/layers/useLayerClickEvent.js +96 -0
- package/esm/next/hooks/layers/useLayerClickEvent.js.map +1 -0
- package/esm/next/hooks/layers/useLayersData.d.ts.map +1 -1
- package/esm/next/hooks/layers/useLayersData.js +7 -2
- package/esm/next/hooks/layers/useLayersData.js.map +1 -1
- package/esm/next/hooks/layers/useLayersExecutions.d.ts +2 -1
- package/esm/next/hooks/layers/useLayersExecutions.d.ts.map +1 -1
- package/esm/next/hooks/layers/useLayersExecutions.js +3 -3
- package/esm/next/hooks/layers/useLayersExecutions.js.map +1 -1
- package/esm/next/hooks/layers/useLayersPrepare.d.ts.map +1 -1
- package/esm/next/hooks/layers/useLayersPrepare.js +6 -2
- package/esm/next/hooks/layers/useLayersPrepare.js.map +1 -1
- package/esm/next/hooks/layers/useSyncLayersToMap.d.ts +6 -2
- package/esm/next/hooks/layers/useSyncLayersToMap.d.ts.map +1 -1
- package/esm/next/hooks/layers/useSyncLayersToMap.js +3 -1
- package/esm/next/hooks/layers/useSyncLayersToMap.js.map +1 -1
- package/esm/next/hooks/props/useResolvedGeoChartNextProps.d.ts.map +1 -1
- package/esm/next/hooks/props/useResolvedGeoChartNextProps.js +4 -2
- package/esm/next/hooks/props/useResolvedGeoChartNextProps.js.map +1 -1
- package/esm/next/hooks/pushData/useGeoPushData.d.ts.map +1 -1
- package/esm/next/hooks/pushData/useGeoPushData.js +15 -2
- package/esm/next/hooks/pushData/useGeoPushData.js.map +1 -1
- package/esm/next/layers/area/adapter.d.ts.map +1 -1
- package/esm/next/layers/area/adapter.js +12 -6
- package/esm/next/layers/area/adapter.js.map +1 -1
- package/esm/next/layers/area/coloring/colorStrategy.js.map +1 -1
- package/esm/next/layers/area/layers.d.ts +8 -1
- package/esm/next/layers/area/layers.d.ts.map +1 -1
- package/esm/next/layers/area/layers.js +23 -3
- package/esm/next/layers/area/layers.js.map +1 -1
- package/esm/next/layers/area/source.d.ts.map +1 -1
- package/esm/next/layers/area/source.js +76 -22
- package/esm/next/layers/area/source.js.map +1 -1
- package/esm/next/layers/common/constants.d.ts +11 -0
- package/esm/next/layers/common/constants.d.ts.map +1 -0
- package/esm/next/layers/common/constants.js +14 -0
- package/esm/next/layers/common/constants.js.map +1 -0
- package/esm/next/layers/execution/layerInsightFactory.d.ts +25 -0
- package/esm/next/layers/execution/layerInsightFactory.d.ts.map +1 -0
- package/esm/next/layers/execution/layerInsightFactory.js +34 -0
- package/esm/next/layers/execution/layerInsightFactory.js.map +1 -0
- package/esm/next/layers/pushpin/adapter.d.ts.map +1 -1
- package/esm/next/layers/pushpin/adapter.js +12 -6
- package/esm/next/layers/pushpin/adapter.js.map +1 -1
- package/esm/next/layers/pushpin/coloring/colorStrategy.js.map +1 -1
- package/esm/next/layers/registry/adapterTypes.d.ts +19 -2
- package/esm/next/layers/registry/adapterTypes.d.ts.map +1 -1
- package/esm/next/map/MapController.d.ts +3 -2
- package/esm/next/map/MapController.d.ts.map +1 -1
- package/esm/next/map/MapController.js +4 -3
- package/esm/next/map/MapController.js.map +1 -1
- package/esm/next/types/layers/index.d.ts +6 -2
- package/esm/next/types/layers/index.d.ts.map +1 -1
- package/esm/next/types/layers/index.js.map +1 -1
- package/esm/next/types/props/areaChart/public.d.ts +3 -42
- package/esm/next/types/props/areaChart/public.d.ts.map +1 -1
- package/esm/next/types/props/geoChartNext/public.d.ts +2 -29
- package/esm/next/types/props/geoChartNext/public.d.ts.map +1 -1
- package/esm/next/types/props/pushpinChart/public.d.ts +3 -42
- package/esm/next/types/props/pushpinChart/public.d.ts.map +1 -1
- package/esm/next/types/props/shared.d.ts +69 -0
- package/esm/next/types/props/shared.d.ts.map +1 -0
- package/esm/next/types/props/shared.js +3 -0
- package/esm/next/types/props/shared.js.map +1 -0
- package/esm/next/utils/fingerprint.d.ts +18 -0
- package/esm/next/utils/fingerprint.d.ts.map +1 -1
- package/esm/next/utils/fingerprint.js +49 -0
- package/esm/next/utils/fingerprint.js.map +1 -1
- package/package.json +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/area/adapter.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/area/adapter.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAMjE,OAAO,EACH,KAAK,gBAAgB,EAErB,KAAK,gBAAgB,EACxB,MAAM,6BAA6B,CAAC;AA6ErC,eAAO,MAAM,WAAW,EAAE,gBAAgB,CAAC,aAAa,EAAE,gBAAgB,CAqGzE,CAAC"}
|
|
@@ -12,6 +12,7 @@ import { getLocationCollectionMetadata } from "../../utils/geoCollection.js";
|
|
|
12
12
|
import { getGeoHeaderStrings } from "../../utils/geoHeaders.js";
|
|
13
13
|
import { computeLegend } from "../common/computeLegend.js";
|
|
14
14
|
import { getGeoChartDimensions } from "../common/dimensions.js";
|
|
15
|
+
import { createLayerInsight, sanitizeGlobalFilters } from "../execution/layerInsightFactory.js";
|
|
15
16
|
const COLLECTION_OVERRIDES = {
|
|
16
17
|
region: { collectionId: "regions" },
|
|
17
18
|
};
|
|
@@ -19,7 +20,7 @@ function normalizeCollectionId(collectionId) {
|
|
|
19
20
|
return COLLECTION_OVERRIDES[collectionId]?.collectionId ?? collectionId;
|
|
20
21
|
}
|
|
21
22
|
function createExecution(layer, context) {
|
|
22
|
-
const { backend, workspace, config, execConfig } = context;
|
|
23
|
+
const { backend, workspace, config, execConfig, globalFilters, executionFactory } = context;
|
|
23
24
|
const { area, color, segmentBy, filters = [], sortBy = [] } = layer;
|
|
24
25
|
const { tooltipText } = config ?? {};
|
|
25
26
|
const buckets = [];
|
|
@@ -35,11 +36,16 @@ function createExecution(layer, context) {
|
|
|
35
36
|
if (tooltipText) {
|
|
36
37
|
buckets.push(newBucket(BucketNames.TOOLTIP_TEXT, tooltipText));
|
|
37
38
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
.
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
const layerInsight = createLayerInsight({
|
|
40
|
+
buckets,
|
|
41
|
+
layerName: layer.name ?? layer.id,
|
|
42
|
+
filters,
|
|
43
|
+
sortBy,
|
|
44
|
+
});
|
|
45
|
+
const factory = executionFactory ?? backend.workspace(workspace).execution();
|
|
46
|
+
const mergedGlobalFilters = sanitizeGlobalFilters(globalFilters);
|
|
47
|
+
let execution = factory
|
|
48
|
+
.forInsight(layerInsight, mergedGlobalFilters)
|
|
43
49
|
.withDimensions(getGeoChartDimensions);
|
|
44
50
|
if (execConfig) {
|
|
45
51
|
execution = execution.withExecConfig(execConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/next/layers/area/adapter.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAGhC,OAAO,EAAyC,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,WAAW,EAAuB,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAG3E,OAAO,EAA+B,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC1G,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/next/layers/area/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorStrategy.js","sourceRoot":"","sources":["../../../../../src/next/layers/area/coloring/colorStrategy.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EACH,sBAAsB,EACtB,aAAa,EAIb,mBAAmB,EACnB,kBAAkB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAmC,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAE3G;;;;;;;;GAQG;AACH,MAAM,iBAAkB,SAAQ,aAAa;IACzC;;;;;;OAMG;IACO,qBAAqB,CAC3B,YAA2B,EAC3B,
|
|
1
|
+
{"version":3,"file":"colorStrategy.js","sourceRoot":"","sources":["../../../../../src/next/layers/area/coloring/colorStrategy.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EACH,sBAAsB,EACtB,aAAa,EAIb,mBAAmB,EACnB,kBAAkB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAmC,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAE3G;;;;;;;;GAQG;AACH,MAAM,iBAAkB,SAAQ,aAAa;IACzC;;;;;;OAMG;IACO,qBAAqB,CAC3B,YAA2B,EAC3B,YAAyC,EACzC,aAAmC,EACnC,kBAA+C,EAC/C,EAAkB;QAElB,oCAAoC;QACpC,IAAI,kBAAkB,EAAE,CAAC;YACrB,OAAO;gBACH,mBAAmB,EAAE,IAAI,CAAC,4BAA4B,CAClD,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,EAAE,CACL;aACJ,CAAC;QACN,CAAC;QAED,mCAAmC;QACnC,OAAO;YACH,mBAAmB,EAAE;gBACjB,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE,CAAC;aAClF;SACJ,CAAC;IACN,CAAC;IAED;;OAEG;IACK,4BAA4B,CAChC,YAA2B,EAC3B,YAAyC,EACzC,kBAAwC,EACxC,EAAkB;QAElB,MAAM,aAAa,GAAmB,IAAI,sBAAsB,CAC5D,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,kBAAkB,EAClB,EAAE,CACL,CAAC;QAEF,OAAO,aAAa,CAAC,kBAAkB,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACK,2BAA2B,CAC/B,YAA2B,EAC3B,YAAyC,EACzC,aAAmC,EACnC,EAAkB;QAElB,MAAM,WAAW,GAAG,mBAAmB,CAAC,aAAa,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GACP,WAAW,KAAK,SAAS,IAAI,kBAAkB,CAAC,WAAW,EAAE,YAAY,CAAC;YACtE,CAAC,CAAC,WAAW;YACb,CAAC,CAAC;gBACI,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;aAC9B,CAAC;QAEZ,OAAO;YACH,UAAU,EAAE,aAAa;YACzB,KAAK;SACR,CAAC;IACN,CAAC;CACJ;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,oBAAoB,CAChC,YAA2B,EAC3B,YAA6B,EAC7B,OAAqB,EACrB,EAAkB;IAElB,MAAM,EAAE,aAAa,EAAE,kBAAkB,EAAE,GAA+B,6BAA6B,CACnG,EAAE,EACF,OAAO,CACV,CAAC;IAEF,MAAM,mBAAmB,GAAyB;QAC9C,eAAe,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC;KAChD,CAAC;IAEF,OAAO,IAAI,iBAAiB,CAAC,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;AAC1G,CAAC"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { type IGeoAreaChartConfig } from "../../types/config/areaChart.js";
|
|
2
2
|
import type { FillLayerSpecification, FilterSpecification, LineLayerSpecification } from "../common/mapFacade.js";
|
|
3
3
|
/**
|
|
4
|
-
* Creates a filter expression for geographic areas based on selected segment items
|
|
4
|
+
* Creates a filter expression for geographic areas based on selected segment items.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* For area charts, each feature stores ALL segment URIs it belongs to in `segment.uris`.
|
|
8
|
+
* This filter checks if ANY of the selected segment URIs is present in the feature's
|
|
9
|
+
* segment.uris array, showing the area if there's overlap.
|
|
10
|
+
*
|
|
11
|
+
* Uses MapLibre's `any` expression with `in` checks for each selected URI.
|
|
5
12
|
*
|
|
6
13
|
* @param selectedSegmentItems - Array of segment URIs to show
|
|
7
14
|
* @returns MapLibre expression for filtering
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/area/layers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/area/layers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EACR,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACzB,MAAM,wBAAwB,CAAC;AAGhC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,oBAAoB,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAiBpF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAC/B,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,MAAgC,GAC1C,sBAAsB,CAoBxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAClC,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,mBAAmB,EAC3B,OAAO,GAAE,MAAwC,GAClD,sBAAsB,CAmBxB"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
// (C) 2025 GoodData Corporation
|
|
2
|
+
import { BucketNames } from "@gooddata/sdk-ui";
|
|
2
3
|
import { DEFAULT_AREA_LAYER_NAME, DEFAULT_AREA_OUTLINE_LAYER_NAME } from "./constants.js";
|
|
3
|
-
import {
|
|
4
|
+
import { EMPTY_SEGMENT_VALUE } from "../pushpin/constants.js";
|
|
4
5
|
/**
|
|
5
|
-
* Creates a filter expression for geographic areas based on selected segment items
|
|
6
|
+
* Creates a filter expression for geographic areas based on selected segment items.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* For area charts, each feature stores ALL segment URIs it belongs to in `segment.uris`.
|
|
10
|
+
* This filter checks if ANY of the selected segment URIs is present in the feature's
|
|
11
|
+
* segment.uris array, showing the area if there's overlap.
|
|
12
|
+
*
|
|
13
|
+
* Uses MapLibre's `any` expression with `in` checks for each selected URI.
|
|
6
14
|
*
|
|
7
15
|
* @param selectedSegmentItems - Array of segment URIs to show
|
|
8
16
|
* @returns MapLibre expression for filtering
|
|
@@ -10,7 +18,19 @@ import { createSegmentFilter } from "../../map/style/sharedLayers.js";
|
|
|
10
18
|
* @alpha
|
|
11
19
|
*/
|
|
12
20
|
export function createAreaFilter(selectedSegmentItems) {
|
|
13
|
-
|
|
21
|
+
const urisToCheck = selectedSegmentItems.length ? selectedSegmentItems : [EMPTY_SEGMENT_VALUE];
|
|
22
|
+
// For each selected URI, check if it's in the feature's segment.uris array
|
|
23
|
+
// Show the feature if ANY selected URI matches
|
|
24
|
+
const uriChecks = urisToCheck.map((uri) => [
|
|
25
|
+
"in",
|
|
26
|
+
uri,
|
|
27
|
+
["coalesce", ["get", "uris", ["object", ["get", BucketNames.SEGMENT]]], ["literal", []]],
|
|
28
|
+
]);
|
|
29
|
+
// Use "any" to combine: show if any selected URI is in the feature's uris
|
|
30
|
+
if (uriChecks.length === 1) {
|
|
31
|
+
return uriChecks[0];
|
|
32
|
+
}
|
|
33
|
+
return ["any", ...uriChecks];
|
|
14
34
|
}
|
|
15
35
|
/**
|
|
16
36
|
* Creates the area fill layer for areas
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layers.js","sourceRoot":"","sources":["../../../../src/next/layers/area/layers.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,uBAAuB,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"layers.js","sourceRoot":"","sources":["../../../../src/next/layers/area/layers.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,uBAAuB,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC;AAO1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAAC,oBAA8B;IAC3D,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAE/F,2EAA2E;IAC3E,+CAA+C;IAC/C,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;QACvC,IAAI;QACJ,GAAG;QACH,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;KAC3F,CAAC,CAAC;IAEH,0EAA0E;IAC1E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC,CAAC,CAAwB,CAAC;IAC/C,CAAC;IAED,OAAO,CAAC,KAAK,EAAE,GAAG,SAAS,CAAwB,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAC/B,cAAsB,EACtB,MAA2B,EAC3B,UAAkB,uBAAuB;IAEzC,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,OAAO;QACX,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;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CAClC,cAAsB,EACtB,MAA2B,EAC3B,UAAkB,+BAA+B;IAEjD,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,OAAO;QACX,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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/area/source.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAgB,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC,aAAa,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC/B;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;
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/area/source.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAgB,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC,aAAa,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC/B;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;AA8R/D;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,oBAAoB,GAAG,0BAA0B,CAUtG"}
|
|
@@ -39,7 +39,7 @@ function createPlaceholderGeometry() {
|
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
41
|
function buildAreaProperties(args) {
|
|
42
|
-
const { index, areaIdentifier, areaUri, areaNameTitle, tooltipValue, tooltipTitle, colorTitle, colorValue, colorFormat, areaColorFill, segmentTitle, segmentValue,
|
|
42
|
+
const { index, areaIdentifier, areaUri, areaNameTitle, tooltipValue, tooltipTitle, colorTitle, colorValue, colorFormat, areaColorFill, segmentTitle, segmentValue, segmentUris, } = args;
|
|
43
43
|
const properties = {
|
|
44
44
|
areaId: areaIdentifier,
|
|
45
45
|
areaUri,
|
|
@@ -62,15 +62,73 @@ function buildAreaProperties(args) {
|
|
|
62
62
|
value: tooltipValue,
|
|
63
63
|
};
|
|
64
64
|
}
|
|
65
|
-
|
|
65
|
+
// Store segment info for display (first segment value)
|
|
66
|
+
if (segmentTitle !== undefined || segmentValue !== undefined) {
|
|
66
67
|
properties["segment"] = {
|
|
67
68
|
title: segmentTitle ?? "",
|
|
68
69
|
value: segmentValue,
|
|
69
|
-
|
|
70
|
+
// For filtering: store all segment URIs this area belongs to
|
|
71
|
+
// This enables MapLibre "in" expression filtering
|
|
72
|
+
uri: segmentUris?.[0],
|
|
73
|
+
uris: segmentUris,
|
|
70
74
|
};
|
|
71
75
|
}
|
|
72
76
|
return properties;
|
|
73
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Aggregates data rows by unique area URI to prevent geometry duplication.
|
|
80
|
+
*
|
|
81
|
+
* @remarks
|
|
82
|
+
* When segment-by is used, the execution returns area × segment rows.
|
|
83
|
+
* Instead of creating one feature per row (duplicating geometries),
|
|
84
|
+
* we aggregate to one entry per unique area, collecting all segment URIs.
|
|
85
|
+
*/
|
|
86
|
+
function aggregateByUniqueArea(areaIdentifiers, areaUris, segmentData, segmentUris, colorData, tooltipTextData, areaColors, segmentTitle) {
|
|
87
|
+
const aggregated = new Map();
|
|
88
|
+
for (let i = 0; i < areaIdentifiers.length; i++) {
|
|
89
|
+
const areaIdentifier = areaIdentifiers[i];
|
|
90
|
+
if (!areaIdentifier) {
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
const areaUri = areaUris[i];
|
|
94
|
+
// Use areaUri as the key for deduplication (unique area identifier)
|
|
95
|
+
const key = areaUri || areaIdentifier;
|
|
96
|
+
const existing = aggregated.get(key);
|
|
97
|
+
if (existing) {
|
|
98
|
+
// Area already seen - add this segment URI to its collection
|
|
99
|
+
const segmentUri = segmentUris[i];
|
|
100
|
+
if (segmentUri && !existing.segmentUris.includes(segmentUri)) {
|
|
101
|
+
existing.segmentUris.push(segmentUri);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
// First occurrence of this area - store full data
|
|
106
|
+
const colorValue = colorData[i];
|
|
107
|
+
const segmentUri = segmentUris[i];
|
|
108
|
+
aggregated.set(key, {
|
|
109
|
+
areaIdentifier,
|
|
110
|
+
areaUri,
|
|
111
|
+
firstIndex: i,
|
|
112
|
+
tooltipValue: tooltipTextData[i],
|
|
113
|
+
colorValue: typeof colorValue === "number" ? colorValue : undefined,
|
|
114
|
+
areaColorFill: areaColors[i]?.fill || areaColors[0]?.fill || "#20B2E2",
|
|
115
|
+
segmentUris: segmentUri ? [segmentUri] : [],
|
|
116
|
+
segmentValue: segmentData[i],
|
|
117
|
+
segmentTitle,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return aggregated;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Creates GeoJSON features for area visualization.
|
|
125
|
+
*
|
|
126
|
+
* @remarks
|
|
127
|
+
* When segment-by is used, the execution returns area × segment rows (cross-product).
|
|
128
|
+
* To prevent geometry duplication (which causes memory/GPU exhaustion on large datasets),
|
|
129
|
+
* we aggregate rows by unique area and create one feature per unique area.
|
|
130
|
+
* Each feature stores all segment URIs it belongs to, enabling MapLibre filtering.
|
|
131
|
+
*/
|
|
74
132
|
function createAreaFeatures({ geoData, colorStrategy, features, }) {
|
|
75
133
|
const { color, area, segment, tooltipText } = geoData;
|
|
76
134
|
if (!area) {
|
|
@@ -89,41 +147,37 @@ function createAreaFeatures({ geoData, colorStrategy, features, }) {
|
|
|
89
147
|
const colorFormat = color?.format ?? "";
|
|
90
148
|
const areaColors = getAreaAreaColors(colorData, segmentData, colorStrategy);
|
|
91
149
|
const featureIndex = buildFeatureIndex(features);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const
|
|
98
|
-
const segmentUri = segmentUris[index];
|
|
99
|
-
const areaColor = areaColors[index] || areaColors[0] || { fill: "#20B2E2" };
|
|
100
|
-
const tooltipValue = tooltipTextData[index];
|
|
101
|
-
const areaUri = areaUris[index];
|
|
150
|
+
// Aggregate by unique area to prevent geometry duplication
|
|
151
|
+
const aggregatedAreas = aggregateByUniqueArea(areaIdentifiers, areaUris, segmentData, segmentUris, colorData, tooltipTextData, areaColors, segmentTitle);
|
|
152
|
+
// Convert aggregated data to GeoJSON features (one per unique area)
|
|
153
|
+
const result = [];
|
|
154
|
+
for (const areaData of aggregatedAreas.values()) {
|
|
155
|
+
const { areaIdentifier, areaUri } = areaData;
|
|
102
156
|
const matchingFeature = featureIndex.get(areaIdentifier) || (areaUri ? featureIndex.get(areaUri) : undefined);
|
|
103
157
|
const baseFeature = toMaplibreFeature(matchingFeature);
|
|
104
158
|
const geometry = baseFeature?.geometry ?? createPlaceholderGeometry();
|
|
105
159
|
const properties = buildAreaProperties({
|
|
106
|
-
index,
|
|
160
|
+
index: areaData.firstIndex,
|
|
107
161
|
areaIdentifier,
|
|
108
162
|
areaUri,
|
|
109
163
|
areaNameTitle,
|
|
110
|
-
tooltipValue,
|
|
164
|
+
tooltipValue: areaData.tooltipValue,
|
|
111
165
|
tooltipTitle: tooltipTextTitle,
|
|
112
166
|
colorTitle,
|
|
113
|
-
colorValue:
|
|
167
|
+
colorValue: areaData.colorValue,
|
|
114
168
|
colorFormat,
|
|
115
|
-
areaColorFill:
|
|
116
|
-
segmentTitle,
|
|
117
|
-
segmentValue,
|
|
118
|
-
|
|
169
|
+
areaColorFill: areaData.areaColorFill,
|
|
170
|
+
segmentTitle: areaData.segmentTitle,
|
|
171
|
+
segmentValue: areaData.segmentValue,
|
|
172
|
+
segmentUris: areaData.segmentUris,
|
|
119
173
|
});
|
|
120
174
|
result.push({
|
|
121
175
|
type: "Feature",
|
|
122
176
|
geometry,
|
|
123
177
|
properties: toMaplibreProperties(baseFeature?.properties, properties),
|
|
124
178
|
});
|
|
125
|
-
|
|
126
|
-
|
|
179
|
+
}
|
|
180
|
+
return result;
|
|
127
181
|
}
|
|
128
182
|
/**
|
|
129
183
|
* Creates a GeoJSON data source for area visualization.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../../../src/next/layers/area/source.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAwB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAsB1D,SAAS,oBAAoB,CACzB,IAA2C,EAC3C,OAAkC;IAElC,OAAO;QACH,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACf,GAAG,OAAO;KACb,CAAC;AACN,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAuC;IAC9D,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAE/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACrB,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACzB,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAoC;IAC3D,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,yBAAyB,EAAE,CAAC;IACjE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;IAE5C,OAAO;QACH,IAAI,EAAE,SAAS;QACf,QAAQ;QACR,UAAU;KACb,CAAC;AACN,CAAC;AAED,SAAS,yBAAyB;IAC9B,OAAO;QACH,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,CAAC,EAAE,CAAC;KACpB,CAAC;AACN,CAAC;
|
|
1
|
+
{"version":3,"file":"source.js","sourceRoot":"","sources":["../../../../src/next/layers/area/source.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { GeoLayerType } from "../../types/layers/index.js";
|
|
2
|
+
export declare const MAPLIBRE_LAYER_TYPE_PREFIXES: Record<GeoLayerType, string>;
|
|
3
|
+
export declare const GEO_LAYER_DRILL_TYPE: {
|
|
4
|
+
readonly pushpin: "pushpin";
|
|
5
|
+
readonly area: "choropleth";
|
|
6
|
+
};
|
|
7
|
+
export declare const GEO_LAYER_DRILL_ELEMENT: {
|
|
8
|
+
readonly pushpin: "pushpin";
|
|
9
|
+
readonly area: "pushpin";
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/common/constants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAGrE,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;CAGvB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;CAG1B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// (C) 2025 GoodData Corporation
|
|
2
|
+
export const MAPLIBRE_LAYER_TYPE_PREFIXES = {
|
|
3
|
+
pushpin: "pushpin-layer",
|
|
4
|
+
area: "area-fill",
|
|
5
|
+
};
|
|
6
|
+
export const GEO_LAYER_DRILL_TYPE = {
|
|
7
|
+
pushpin: "pushpin",
|
|
8
|
+
area: "choropleth",
|
|
9
|
+
};
|
|
10
|
+
export const GEO_LAYER_DRILL_ELEMENT = {
|
|
11
|
+
pushpin: "pushpin",
|
|
12
|
+
area: "pushpin",
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/next/layers/common/constants.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAIhC,MAAM,CAAC,MAAM,4BAA4B,GAAiC;IACtE,OAAO,EAAE,eAAe;IACxB,IAAI,EAAE,WAAW;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,YAAY;CACZ,CAAC;AAEX,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;CACT,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type IBucket, type IFilter, type IInsightDefinition, type INullableFilter, type ISortItem } from "@gooddata/sdk-model";
|
|
2
|
+
/**
|
|
3
|
+
* Creates a synthetic insight used to execute an individual geo layer.
|
|
4
|
+
*
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
export declare function createLayerInsight(params: {
|
|
8
|
+
buckets: IBucket[];
|
|
9
|
+
layerName?: string;
|
|
10
|
+
filters?: INullableFilter[];
|
|
11
|
+
sortBy?: ISortItem[];
|
|
12
|
+
}): IInsightDefinition;
|
|
13
|
+
/**
|
|
14
|
+
* Removes null/undefined filters before storing them in an insight definition.
|
|
15
|
+
*
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
export declare function sanitizeLayerFilters(filters?: INullableFilter[]): IFilter[];
|
|
19
|
+
/**
|
|
20
|
+
* Removes null/undefined filters while preserving the nullable type expected by execution factories.
|
|
21
|
+
*
|
|
22
|
+
* @internal
|
|
23
|
+
*/
|
|
24
|
+
export declare function sanitizeGlobalFilters(filters?: INullableFilter[]): INullableFilter[];
|
|
25
|
+
//# sourceMappingURL=layerInsightFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layerInsightFactory.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/execution/layerInsightFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,SAAS,EAEjB,MAAM,qBAAqB,CAAC;AAI7B;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACvC,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;CACxB,GAAG,kBAAkB,CAUrB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO,EAAE,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,GAAG,eAAe,EAAE,CAEpF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// (C) 2025 GoodData Corporation
|
|
2
|
+
import { newInsightDefinition, } from "@gooddata/sdk-model";
|
|
3
|
+
const GEO_LAYER_VIZ_URL = "local:geo.layer";
|
|
4
|
+
/**
|
|
5
|
+
* Creates a synthetic insight used to execute an individual geo layer.
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export function createLayerInsight(params) {
|
|
10
|
+
const { buckets, layerName, filters, sortBy } = params;
|
|
11
|
+
const sanitizedFilters = sanitizeLayerFilters(filters);
|
|
12
|
+
const sanitizedSorts = sortBy ?? [];
|
|
13
|
+
return newInsightDefinition(GEO_LAYER_VIZ_URL, (builder) => {
|
|
14
|
+
const withTitle = layerName ? builder.title(layerName) : builder;
|
|
15
|
+
return withTitle.buckets(buckets).filters(sanitizedFilters).sorts(sanitizedSorts);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Removes null/undefined filters before storing them in an insight definition.
|
|
20
|
+
*
|
|
21
|
+
* @internal
|
|
22
|
+
*/
|
|
23
|
+
export function sanitizeLayerFilters(filters) {
|
|
24
|
+
return (filters ?? []).filter((filter) => Boolean(filter));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Removes null/undefined filters while preserving the nullable type expected by execution factories.
|
|
28
|
+
*
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
export function sanitizeGlobalFilters(filters) {
|
|
32
|
+
return (filters ?? []).filter((filter) => Boolean(filter));
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=layerInsightFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layerInsightFactory.js","sourceRoot":"","sources":["../../../../src/next/layers/execution/layerInsightFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAMH,oBAAoB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAE5C;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAKlC;IACG,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACvD,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,MAAM,IAAI,EAAE,CAAC;IAEpC,OAAO,oBAAoB,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,EAAE;QACvD,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAEjE,OAAO,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA2B;IAC5D,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAqB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAA2B;IAC7D,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAA6B,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC1F,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/pushpin/adapter.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/pushpin/adapter.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAMpE,OAAO,KAAK,EAAsB,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAuE7G,eAAO,MAAM,cAAc,EAAE,gBAAgB,CAAC,gBAAgB,EAAE,mBAAmB,CAoGlF,CAAC"}
|
|
@@ -12,6 +12,7 @@ import { calculateViewport } from "../../map/viewport/viewportCalculation.js";
|
|
|
12
12
|
import { getGeoHeaderStrings } from "../../utils/geoHeaders.js";
|
|
13
13
|
import { computeLegend } from "../common/computeLegend.js";
|
|
14
14
|
import { getGeoChartDimensions } from "../common/dimensions.js";
|
|
15
|
+
import { createLayerInsight, sanitizeGlobalFilters } from "../execution/layerInsightFactory.js";
|
|
15
16
|
function getValidLocations(locations) {
|
|
16
17
|
return locations.filter((coords) => coords !== null &&
|
|
17
18
|
coords !== undefined &&
|
|
@@ -29,7 +30,7 @@ function computeInitialViewport(geoData, config) {
|
|
|
29
30
|
return calculateViewport(validLocations, config);
|
|
30
31
|
}
|
|
31
32
|
function createExecution(layer, context) {
|
|
32
|
-
const { backend, workspace, config, execConfig } = context;
|
|
33
|
+
const { backend, workspace, config, execConfig, globalFilters, executionFactory } = context;
|
|
33
34
|
const { latitude, longitude, size, color, segmentBy, filters = [], sortBy = [] } = layer;
|
|
34
35
|
const { tooltipText } = config ?? {};
|
|
35
36
|
const buckets = [];
|
|
@@ -48,11 +49,16 @@ function createExecution(layer, context) {
|
|
|
48
49
|
if (tooltipText) {
|
|
49
50
|
buckets.push(newBucket(BucketNames.TOOLTIP_TEXT, tooltipText));
|
|
50
51
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
.
|
|
54
|
-
|
|
55
|
-
|
|
52
|
+
const layerInsight = createLayerInsight({
|
|
53
|
+
buckets,
|
|
54
|
+
layerName: layer.name ?? layer.id,
|
|
55
|
+
filters,
|
|
56
|
+
sortBy,
|
|
57
|
+
});
|
|
58
|
+
const factory = executionFactory ?? backend.workspace(workspace).execution();
|
|
59
|
+
const mergedGlobalFilters = sanitizeGlobalFilters(globalFilters);
|
|
60
|
+
let execution = factory
|
|
61
|
+
.forInsight(layerInsight, mergedGlobalFilters)
|
|
56
62
|
.withDimensions(getGeoChartDimensions);
|
|
57
63
|
if (execConfig) {
|
|
58
64
|
execution = execution.withExecConfig(execConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/next/layers/pushpin/adapter.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAGhC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAM9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/next/layers/pushpin/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorStrategy.js","sourceRoot":"","sources":["../../../../../src/next/layers/pushpin/coloring/colorStrategy.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EACH,sBAAsB,EACtB,aAAa,EAIb,mBAAmB,EACnB,kBAAkB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAEH,gCAAgC,GACnC,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;GAQG;AACH,MAAM,oBAAqB,SAAQ,aAAa;IAC5C;;;;;;OAMG;IACO,qBAAqB,CAC3B,YAA2B,EAC3B,
|
|
1
|
+
{"version":3,"file":"colorStrategy.js","sourceRoot":"","sources":["../../../../../src/next/layers/pushpin/coloring/colorStrategy.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EACH,sBAAsB,EACtB,aAAa,EAIb,mBAAmB,EACnB,kBAAkB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAEH,gCAAgC,GACnC,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;GAQG;AACH,MAAM,oBAAqB,SAAQ,aAAa;IAC5C;;;;;;OAMG;IACO,qBAAqB,CAC3B,YAA2B,EAC3B,YAAyC,EACzC,iBAAuC,EACvC,kBAA+C,EAC/C,EAAkB;QAElB,oCAAoC;QACpC,IAAI,kBAAkB,EAAE,CAAC;YACrB,OAAO;gBACH,mBAAmB,EAAE,IAAI,CAAC,4BAA4B,CAClD,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,EAAE,CACL;aACJ,CAAC;QACN,CAAC;QAED,mCAAmC;QACnC,OAAO;YACH,mBAAmB,EAAE;gBACjB,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAAE,CAAC;aACtF;SACJ,CAAC;IACN,CAAC;IAED;;OAEG;IACK,4BAA4B,CAChC,YAA2B,EAC3B,YAAyC,EACzC,kBAAwC,EACxC,EAAkB;QAElB,MAAM,aAAa,GAAmB,IAAI,sBAAsB,CAC5D,YAAY,EACZ,YAAY,EACZ,IAAI,EACJ,kBAAkB,EAClB,EAAE,CACL,CAAC;QAEF,OAAO,aAAa,CAAC,kBAAkB,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACK,2BAA2B,CAC/B,YAA2B,EAC3B,YAAyC,EACzC,iBAAuC,EACvC,EAAkB;QAElB,MAAM,WAAW,GAAG,mBAAmB,CAAC,iBAAiB,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QAC7E,MAAM,KAAK,GACP,WAAW,KAAK,SAAS,IAAI,kBAAkB,CAAC,WAAW,EAAE,YAAY,CAAC;YACtE,CAAC,CAAC,WAAW;YACb,CAAC,CAAC;gBACI,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;aAC9B,CAAC;QAEZ,OAAO;YACH,UAAU,EAAE,iBAAiB;YAC7B,KAAK;SACR,CAAC;IACN,CAAC;CACJ;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB,CACnC,YAA2B,EAC3B,YAA6B,EAC7B,OAAwB,EACxB,EAAkB;IAElB,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAC3C,gCAAgC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,uBAAuB,GAAyB;QAClD,eAAe,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC;KACpD,CAAC;IAEF,OAAO,IAAI,oBAAoB,CAC3B,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,kBAAkB,EAClB,EAAE,CACL,CAAC;AACN,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IntlShape } from "react-intl";
|
|
2
|
-
import type { IAnalyticalBackend, IPreparedExecution } from "@gooddata/sdk-backend-spi";
|
|
3
|
-
import type { IColorPalette, IExecutionConfig } from "@gooddata/sdk-model";
|
|
2
|
+
import type { IAnalyticalBackend, IExecutionFactory, IPreparedExecution } from "@gooddata/sdk-backend-spi";
|
|
3
|
+
import type { IColorPalette, IExecutionConfig, INullableFilter } from "@gooddata/sdk-model";
|
|
4
4
|
import type { DataViewFacade, IHeaderPredicate } from "@gooddata/sdk-ui";
|
|
5
5
|
import type { IColorMapping, IColorStrategy } from "@gooddata/sdk-ui-vis-commons";
|
|
6
6
|
import type { IAvailableLegends, IGeoLegendItem } from "../../types/common/legends.js";
|
|
@@ -36,6 +36,23 @@ export interface IGeoAdapterContext {
|
|
|
36
36
|
* Optional execution configuration.
|
|
37
37
|
*/
|
|
38
38
|
execConfig?: IExecutionConfig;
|
|
39
|
+
/**
|
|
40
|
+
* Filters that must be applied to every layer execution (e.g., InsightView/global filters).
|
|
41
|
+
*
|
|
42
|
+
* @remarks
|
|
43
|
+
* These filters are applied *after* `IGeoLayer.filters` and therefore take precedence for filter types
|
|
44
|
+
* with “last wins” merge rules (e.g. date filters for the same dataset, measure value filters for the
|
|
45
|
+
* same measure). Other filter types may accumulate according to SDK merge semantics.
|
|
46
|
+
*/
|
|
47
|
+
globalFilters?: INullableFilter[];
|
|
48
|
+
/**
|
|
49
|
+
* Execution factory provided by hosting environment.
|
|
50
|
+
*
|
|
51
|
+
* @remarks
|
|
52
|
+
* Adapters should use this factory when available so upstream decorators
|
|
53
|
+
* (telemetry, fixed filters, etc.) are preserved.
|
|
54
|
+
*/
|
|
55
|
+
executionFactory?: IExecutionFactory;
|
|
39
56
|
/**
|
|
40
57
|
* Color palette for coloring features.
|
|
41
58
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapterTypes.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/registry/adapterTypes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"adapterTypes.d.ts","sourceRoot":"","sources":["../../../../src/next/layers/registry/adapterTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ReactElement, type RefObject } from "react";
|
|
2
2
|
import { type ContentRect } from "react-measure";
|
|
3
3
|
import type { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
|
|
4
|
-
import {
|
|
4
|
+
import type { IHeaderPredicate, OnFiredDrillEvent } from "@gooddata/sdk-ui";
|
|
5
5
|
import { type CenterPositionChangedCallback, type ZoomChangedCallback } from "../types/common/callbacks.js";
|
|
6
6
|
import { type IGeoChartNextConfig } from "../types/config/unified.js";
|
|
7
7
|
import { type IMapViewport } from "../types/map/provider.js";
|
|
@@ -14,6 +14,7 @@ export type MapControllerProps = {
|
|
|
14
14
|
drillablePredicates: IHeaderPredicate[];
|
|
15
15
|
onCenterPositionChanged?: CenterPositionChangedCallback;
|
|
16
16
|
onZoomChanged?: ZoomChangedCallback;
|
|
17
|
+
onDrill?: OnFiredDrillEvent;
|
|
17
18
|
afterRender?: () => void;
|
|
18
19
|
config: IGeoChartNextConfig | undefined;
|
|
19
20
|
backend?: IAnalyticalBackend;
|
|
@@ -22,5 +23,5 @@ export type MapControllerProps = {
|
|
|
22
23
|
* Centralized map controller that wires up map initialization, resize handling,
|
|
23
24
|
* interaction callbacks, layer synchronization, and after-render signalling.
|
|
24
25
|
*/
|
|
25
|
-
export declare function MapController({ mapContainerRef, chartContainerRect, initialViewport, layerExecutions, drillablePredicates, onCenterPositionChanged, onZoomChanged, afterRender, config, backend, }: MapControllerProps): ReactElement | null;
|
|
26
|
+
export declare function MapController({ mapContainerRef, chartContainerRect, initialViewport, layerExecutions, drillablePredicates, onCenterPositionChanged, onZoomChanged, onDrill, afterRender, config, backend, }: MapControllerProps): ReactElement | null;
|
|
26
27
|
//# sourceMappingURL=MapController.d.ts.map
|