@gooddata/sdk-ui-geo 11.25.0-alpha.1 → 11.25.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 (33) hide show
  1. package/esm/next/components/multiLayerLegend/GeoChartLegendOverlay.d.ts +1 -1
  2. package/esm/next/components/multiLayerLegend/GeoChartLegendOverlay.d.ts.map +1 -1
  3. package/esm/next/components/multiLayerLegend/GeoChartLegendOverlay.js +5 -1
  4. package/esm/next/components/multiLayerLegend/GeoChartLegendOverlay.js.map +1 -1
  5. package/esm/next/components/multiLayerLegend/LegendGroupColor.d.ts.map +1 -1
  6. package/esm/next/components/multiLayerLegend/LegendGroupColor.js +13 -7
  7. package/esm/next/components/multiLayerLegend/LegendGroupColor.js.map +1 -1
  8. package/esm/next/components/multiLayerLegend/MultiLayerLegendPanel.js +2 -2
  9. package/esm/next/components/multiLayerLegend/MultiLayerLegendPanel.js.map +1 -1
  10. package/esm/next/hooks/pushData/useGeoPushData.d.ts +2 -2
  11. package/esm/next/hooks/pushData/useGeoPushData.d.ts.map +1 -1
  12. package/esm/next/hooks/pushData/useGeoPushData.js +3 -4
  13. package/esm/next/hooks/pushData/useGeoPushData.js.map +1 -1
  14. package/esm/next/pushData/PushDataSync.d.ts +3 -3
  15. package/esm/next/pushData/PushDataSync.d.ts.map +1 -1
  16. package/esm/next/pushData/PushDataSync.js +15 -1
  17. package/esm/next/pushData/PushDataSync.js.map +1 -1
  18. package/esm/next/types/legend/model.d.ts +18 -0
  19. package/esm/next/types/legend/model.d.ts.map +1 -1
  20. package/esm/next/types/legend/model.js.map +1 -1
  21. package/esm/next/utils/legend/computeAreaLegend.d.ts +2 -1
  22. package/esm/next/utils/legend/computeAreaLegend.d.ts.map +1 -1
  23. package/esm/next/utils/legend/computeAreaLegend.js +25 -19
  24. package/esm/next/utils/legend/computeAreaLegend.js.map +1 -1
  25. package/esm/next/utils/legend/computePushpinLegend.d.ts +3 -11
  26. package/esm/next/utils/legend/computePushpinLegend.d.ts.map +1 -1
  27. package/esm/next/utils/legend/computePushpinLegend.js +25 -19
  28. package/esm/next/utils/legend/computePushpinLegend.js.map +1 -1
  29. package/esm/next/utils/legend/legendUtils.d.ts +49 -0
  30. package/esm/next/utils/legend/legendUtils.d.ts.map +1 -0
  31. package/esm/next/utils/legend/legendUtils.js +55 -0
  32. package/esm/next/utils/legend/legendUtils.js.map +1 -0
  33. package/package.json +11 -11
@@ -1,7 +1,7 @@
1
1
  import { type ReactElement } from "react";
2
2
  import { type ContentRect } from "react-measure";
3
3
  import { type LegendMessageFormatter } from "./legendMessages.js";
4
- import type { IGeoLayerData } from "../../context/GeoLayersContext.js";
4
+ import { type IGeoLayerData } from "../../context/GeoLayersContext.js";
5
5
  import type { IGeoChartConfig } from "../../types/config/unified.js";
6
6
  import type { ILayerExecutionRecord } from "../../types/props/geoChart/internal.js";
7
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"GeoChartLegendOverlay.d.ts","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/GeoChartLegendOverlay.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,OAAO,CAAC;AAEhE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAKvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAEpF;;;;;;;;GAQG;AACH,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;IACpC,kBAAkB,EAAE,WAAW,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACnC,eAAe,EAAE,qBAAqB,EAAE,CAAC;IACzC,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;CACvE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAClC,MAAM,EACN,kBAAkB,EAClB,MAAM,EACN,eAAe,EACf,YAAY,EACZ,cAAc,EACd,aAAa,EACb,wBAAwB,EAC3B,EAAE,2BAA2B,GAAG,YAAY,GAAG,IAAI,CAkDnD"}
1
+ {"version":3,"file":"GeoChartLegendOverlay.d.ts","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/GeoChartLegendOverlay.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAwB,MAAM,OAAO,CAAC;AAEhE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAKvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAEpF;;;;;;;;GAQG;AACH,MAAM,WAAW,2BAA2B;IACxC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;IACpC,kBAAkB,EAAE,WAAW,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACnC,eAAe,EAAE,qBAAqB,EAAE,CAAC;IACzC,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;CACvE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAClC,MAAM,EACN,kBAAkB,EAClB,MAAM,EACN,eAAe,EACf,YAAY,EACZ,cAAc,EACd,aAAa,EACb,wBAAwB,EAC3B,EAAE,2BAA2B,GAAG,YAAY,GAAG,IAAI,CA2DnD"}
@@ -17,6 +17,8 @@ export function GeoChartLegendOverlay({ config, chartContainerRect, layers, laye
17
17
  const legendConfig = useLegendConfig(config);
18
18
  const legendDetails = useLegendDetails(config, primaryLayer?.geoData ?? null, chartContainerRect ?? undefined);
19
19
  const position = legendDetails?.position ?? legendConfig.position;
20
+ const hasExplicitLegendEnabled = config?.legend?.enabled !== undefined;
21
+ const isSingleAttributeOnlySection = model.sections.length === 1 && Boolean(model.sections[0]?.isAttributeOnlySection);
20
22
  const handleLegendItemClick = useCallback((layerId, uri) => {
21
23
  const layerData = layers.get(layerId);
22
24
  const allUrisForLayer = layerData?.baseLegendItems.map((item) => item.uri) ?? [];
@@ -25,7 +27,9 @@ export function GeoChartLegendOverlay({ config, chartContainerRect, layers, laye
25
27
  const handleLayerVisibilityChange = useCallback((layerId) => {
26
28
  toggleLayerVisibility(layerId);
27
29
  }, [toggleLayerVisibility]);
28
- const enabled = useMemo(() => legendConfig.enabled, [legendConfig.enabled]);
30
+ const enabled = useMemo(() => hasExplicitLegendEnabled
31
+ ? legendConfig.enabled
32
+ : !isSingleAttributeOnlySection && legendConfig.enabled, [hasExplicitLegendEnabled, legendConfig.enabled, isSingleAttributeOnlySection]);
29
33
  const enableGeoChartA11yImprovements = config?.enableGeoChartA11yImprovements ?? false;
30
34
  // Don't render until container is measured (needed for height calculations)
31
35
  if (!chartContainerRect?.client?.height) {
@@ -1 +1 @@
1
- {"version":3,"file":"GeoChartLegendOverlay.js","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/GeoChartLegendOverlay.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AAErC,OAAO,EAAqB,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAKhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAwBhF;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAClC,MAAM,EACN,kBAAkB,EAClB,MAAM,EACN,eAAe,EACf,YAAY,EACZ,cAAc,EACd,aAAa,EACb,wBAAwB,GACE,EAAuB;IACjD,MAAM,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAAC;IAEjF,MAAM,KAAK,GAAG,mBAAmB,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAE/E,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,gBAAgB,CAClC,MAAM,EACN,YAAY,EAAE,OAAO,IAAI,IAAI,EAC7B,kBAAkB,IAAI,SAAS,CAClC,CAAC;IACF,MAAM,QAAQ,GAAG,aAAa,EAAE,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC;IAElE,MAAM,qBAAqB,GAAG,WAAW,CACrC,CAAC,OAAe,EAAE,GAAW,EAAE,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,eAAe,GAAG,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACjF,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;IAAA,CACnD,EACD,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAC7B,CAAC;IAEF,MAAM,2BAA2B,GAAG,WAAW,CAC3C,CAAC,OAAe,EAAE,EAAE,CAAC;QACjB,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAAA,CAClC,EACD,CAAC,qBAAqB,CAAC,CAC1B,CAAC;IAEF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5E,MAAM,8BAA8B,GAAG,MAAM,EAAE,8BAA8B,IAAI,KAAK,CAAC;IAEvF,4EAA4E;IAC5E,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,KAAC,qBAAqB,IAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,uBAAuB,EAAE,2BAA2B,EACpD,WAAW,EAAE,qBAAqB,EAClC,8BAA8B,EAAE,8BAA8B,EAC9D,aAAa,EAAE,aAAa,EAC5B,kBAAkB,EAAE,wBAAwB,GAC9C,CACL,CAAC;AAAA,CACL"}
1
+ {"version":3,"file":"GeoChartLegendOverlay.js","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/GeoChartLegendOverlay.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LegendGroupColor.d.ts","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/LegendGroupColor.tsx"],"names":[],"mappings":"AAqBA,OAAO,EAEH,KAAK,YAAY,EAEpB,MAAM,6BAA6B,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpC;;OAEG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAC5C;AAkPD,eAAO,MAAM,gBAAgB,8DAU3B,CAAC"}
1
+ {"version":3,"file":"LegendGroupColor.d.ts","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/LegendGroupColor.tsx"],"names":[],"mappings":"AAqBA,OAAO,EAEH,KAAK,YAAY,EAEpB,MAAM,6BAA6B,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpC;;OAEG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAC5C;AAyPD,eAAO,MAAM,gBAAgB,8DAU3B,CAAC"}
@@ -11,7 +11,7 @@ function EnhancedColorCategoryItem({ item, id, isActive, isInteractive, onClick,
11
11
  "gd-geo-multi-layer-legend__color-item--disabled": !item.isVisible,
12
12
  "gd-geo-multi-layer-legend__color-item--active": isActive,
13
13
  });
14
- return (_jsxs("div", { id: id, className: itemClassName, role: "option", "aria-selected": isInteractive ? item.isVisible : undefined, "aria-label": item.label, onClick: isInteractive ? onClick : undefined, "data-testid": `gd-geo-legend-color-item-${item.uri}`, children: [
14
+ return (_jsxs("div", { id: id, className: itemClassName, role: isInteractive ? "option" : "listitem", "aria-selected": isInteractive ? item.isVisible : undefined, "aria-label": item.label, onClick: isInteractive ? onClick : undefined, "data-testid": `gd-geo-legend-color-item-${item.uri}`, children: [
15
15
  _jsx("span", { className: "gd-geo-multi-layer-legend__color-swatch", style: { backgroundColor: item.color } }), _jsx("span", { className: "gd-geo-multi-layer-legend__color-label", children: item.label }), item.count !== undefined && (_jsxs("span", { className: "gd-geo-multi-layer-legend__color-count", children: ["(", item.count, ")"] }))] }));
16
16
  }
17
17
  function LegacyColorCategoryItem({ item, onClick }) {
@@ -35,6 +35,9 @@ function LegacyColorCategoryItem({ item, onClick }) {
35
35
  function makeItemId(prefix, index) {
36
36
  return `${prefix}-item-${index}`;
37
37
  }
38
+ function resolveGroupInteractivity(group, onItemClick) {
39
+ return group.isInteractive ?? Boolean(onItemClick);
40
+ }
38
41
  /**
39
42
  * Legend group displaying categorical color items.
40
43
  *
@@ -47,19 +50,22 @@ function makeItemId(prefix, index) {
47
50
  */
48
51
  function LegacyLegendGroupColor({ group, onItemClick, }) {
49
52
  const colorItems = group.items.filter(isLegendColorCategoryItem);
50
- return (_jsxs("div", { className: "gd-geo-multi-layer-legend__group gd-geo-multi-layer-legend__group--color", children: [group.title ? (_jsx("div", { className: "gd-geo-multi-layer-legend__group-title", title: group.title, children: group.title })) : null, _jsx("div", { className: "gd-geo-multi-layer-legend__color-list", children: colorItems.map((item) => (_jsx(LegacyColorCategoryItem, { item: item, onClick: onItemClick }, item.uri))) })
53
+ const isInteractive = resolveGroupInteractivity(group, onItemClick);
54
+ const onItemClickHandler = isInteractive ? onItemClick : undefined;
55
+ return (_jsxs("div", { className: "gd-geo-multi-layer-legend__group gd-geo-multi-layer-legend__group--color", children: [group.title ? (_jsx("div", { className: "gd-geo-multi-layer-legend__group-title", title: group.title, children: group.title })) : null, _jsx("div", { className: "gd-geo-multi-layer-legend__color-list", children: colorItems.map((item) => (_jsx(LegacyColorCategoryItem, { item: item, onClick: onItemClickHandler }, item.uri))) })
51
56
  ] }));
52
57
  }
53
58
  function EnhancedLegendGroupColor({ group, onItemClick, }) {
54
59
  const colorItems = group.items.filter(isLegendColorCategoryItem);
55
- const isInteractive = Boolean(onItemClick);
60
+ const isInteractive = resolveGroupInteractivity(group, onItemClick);
61
+ const onItemClickHandler = isInteractive ? onItemClick : undefined;
56
62
  const titleId = useId();
57
63
  const idPrefix = useIdPrefixed("geo-color-list");
58
64
  const [activeIndex, setActiveIndex] = useState(0);
59
65
  const listRef = useRef(null);
60
66
  const depsRef = useAutoupdateRef({
61
67
  activeIndex,
62
- onItemClick,
68
+ onItemClickHandler,
63
69
  colorItems,
64
70
  });
65
71
  // Clamp activeIndex if items shrink
@@ -93,10 +99,10 @@ function EnhancedLegendGroupColor({ group, onItemClick, }) {
93
99
  setActiveIndex(depsRef.current.colorItems.length - 1);
94
100
  },
95
101
  onSelect: () => {
96
- const { onItemClick, colorItems, activeIndex } = depsRef.current;
102
+ const { onItemClickHandler, colorItems, activeIndex } = depsRef.current;
97
103
  const activeItem = colorItems[activeIndex];
98
104
  if (activeItem) {
99
- onItemClick?.(activeItem.uri);
105
+ onItemClickHandler?.(activeItem.uri);
100
106
  }
101
107
  },
102
108
  }), [depsRef]);
@@ -106,7 +112,7 @@ function EnhancedLegendGroupColor({ group, onItemClick, }) {
106
112
  const handleListFocus = useCallback(() => {
107
113
  ensureActiveItemVisible();
108
114
  }, [ensureActiveItemVisible]);
109
- return (_jsxs("div", { className: "gd-geo-multi-layer-legend__group gd-geo-multi-layer-legend__group--color", role: "group", "aria-labelledby": group.title ? titleId : undefined, children: [group.title ? (_jsx("div", { id: titleId, className: "gd-geo-multi-layer-legend__group-title", children: group.title })) : null, _jsx("div", { ref: listRef, className: "gd-geo-multi-layer-legend__color-list", role: isInteractive ? "listbox" : "list", "aria-label": group.title, "aria-multiselectable": isInteractive ? true : undefined, "aria-activedescendant": isInteractive && colorItems.length > 0 ? makeItemId(idPrefix, clampedIndex) : undefined, tabIndex: isInteractive ? 0 : undefined, onKeyDown: isInteractive ? handleKeyDown : undefined, onFocus: isInteractive ? handleListFocus : undefined, children: colorItems.map((item, index) => (_jsx(EnhancedColorCategoryItem, { item: item, id: makeItemId(idPrefix, index), isActive: isInteractive ? index === clampedIndex : false, isInteractive: isInteractive, onClick: () => onItemClick?.(item.uri) }, item.uri))) })
115
+ return (_jsxs("div", { className: "gd-geo-multi-layer-legend__group gd-geo-multi-layer-legend__group--color", role: "group", "aria-labelledby": group.title ? titleId : undefined, children: [group.title ? (_jsx("div", { id: titleId, className: "gd-geo-multi-layer-legend__group-title", children: group.title })) : null, _jsx("div", { ref: listRef, className: "gd-geo-multi-layer-legend__color-list", role: isInteractive ? "listbox" : "list", "aria-label": group.title, "aria-multiselectable": isInteractive ? true : undefined, "aria-activedescendant": isInteractive && colorItems.length > 0 ? makeItemId(idPrefix, clampedIndex) : undefined, tabIndex: isInteractive ? 0 : undefined, onKeyDown: isInteractive ? handleKeyDown : undefined, onFocus: isInteractive ? handleListFocus : undefined, children: colorItems.map((item, index) => (_jsx(EnhancedColorCategoryItem, { item: item, id: makeItemId(idPrefix, index), isActive: isInteractive ? index === clampedIndex : false, isInteractive: isInteractive, onClick: () => onItemClickHandler?.(item.uri) }, item.uri))) })
110
116
  ] }));
111
117
  }
112
118
  export const LegendGroupColor = memo(function LegendGroupColor({ group, onItemClick, enableGeoChartA11yImprovements = false, }) {
@@ -1 +1 @@
1
- {"version":3,"file":"LegendGroupColor.js","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/LegendGroupColor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LegendGroupColor.js","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/LegendGroupColor.tsx"],"names":[],"mappings":"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"}
@@ -204,7 +204,7 @@ export const MultiLayerLegendPanel = memo(function MultiLayerLegendPanel({ model
204
204
  if (!enabled || sections.length === 0) {
205
205
  return null;
206
206
  }
207
- // For single-layer legends, hide the layer visibility toggle
207
+ // For single-layer legends, hide the layer visibility toggle unless section requests it.
208
208
  const isSingleLayer = sections.length === 1;
209
209
  // Map position to overlay corner
210
210
  // Multi-layer legend overlays the map, so we default to top-right to not obscure the map
@@ -221,7 +221,7 @@ export const MultiLayerLegendPanel = memo(function MultiLayerLegendPanel({ model
221
221
  ...(containerHeight && { height: containerHeight }),
222
222
  ...(maxHeightPx && { maxHeight: maxHeightPx, overflowY: "auto" }),
223
223
  };
224
- return (_jsxs("div", { ref: setRootPanelRef, className: panelClassName, style: panelStyle, role: "group", "aria-label": model.title ?? "Map legend", "data-testid": "gd-geo-multi-layer-legend", children: [sections.map((section, index) => (_jsx(MultiLayerLegendSection, { setSectionRef: setSectionRef(section.layerId), sectionElement: getSectionRef(section.layerId), section: section, sectionId: `${panelId}-section-${index}`, isExpanded: expandedState[section.layerId] ?? true, isVisible: !hiddenLayers.has(section.layerId), showToggle: !isSingleLayer, isFlexible: flexibleSections.includes(section.layerId), onExpandedChange: handleExpandedChange, onVisibilityChange: handleVisibilityChange, onItemClick: enableGeoChartA11yImprovements
224
+ return (_jsxs("div", { ref: setRootPanelRef, className: panelClassName, style: panelStyle, role: "group", "aria-label": model.title ?? "Map legend", "data-testid": "gd-geo-multi-layer-legend", children: [sections.map((section, index) => (_jsx(MultiLayerLegendSection, { setSectionRef: setSectionRef(section.layerId), sectionElement: getSectionRef(section.layerId), section: section, sectionId: `${panelId}-section-${index}`, isExpanded: expandedState[section.layerId] ?? true, isVisible: !hiddenLayers.has(section.layerId), showToggle: !isSingleLayer || Boolean(section.isAttributeOnlySection), isFlexible: flexibleSections.includes(section.layerId), onExpandedChange: handleExpandedChange, onVisibilityChange: handleVisibilityChange, onItemClick: enableGeoChartA11yImprovements
225
225
  ? onItemClick
226
226
  ? handleItemClick
227
227
  : undefined
@@ -1 +1 @@
1
- {"version":3,"file":"MultiLayerLegendPanel.js","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/MultiLayerLegendPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiLayerLegendPanel.js","sourceRoot":"","sources":["../../../../src/next/components/multiLayerLegend/MultiLayerLegendPanel.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { type IAvailableLegends } from "../../types/common/legends.js";
5
5
  import { type GeoLayerType } from "../../types/layers/index.js";
6
6
  interface ILegendContext {
7
7
  availableLegends: IAvailableLegends;
8
+ hasAttributeOnlyLegend?: boolean;
8
9
  }
9
10
  /**
10
11
  * Minimal props interface required for pushData functionality
@@ -17,7 +18,6 @@ interface IPushDataProps {
17
18
  interface IUseGeoPushDataConfig<TProps extends IPushDataProps, TLegendContext extends ILegendContext> {
18
19
  useProps: () => TProps;
19
20
  useLegendContext: () => TLegendContext;
20
- getLegendVisibility?: (availableLegends: IAvailableLegends) => boolean;
21
21
  geoLayerType: GeoLayerType;
22
22
  }
23
23
  export declare function sortColorAssignmentsAlphabetically(colorAssignments: IColorAssignment[]): IColorAssignment[];
@@ -26,6 +26,6 @@ export declare function sortColorAssignmentsAlphabetically(colorAssignments: ICo
26
26
  *
27
27
  * @internal
28
28
  */
29
- export declare function useGeoPushData<TProps extends IPushDataProps, TLegendContext extends ILegendContext>(colorStrategy: IColorStrategy | null, colorPalette: IColorPalette, { useProps, useLegendContext, getLegendVisibility, geoLayerType }: IUseGeoPushDataConfig<TProps, TLegendContext>): void;
29
+ export declare function useGeoPushData<TProps extends IPushDataProps, TLegendContext extends ILegendContext>(colorStrategy: IColorStrategy | null, colorPalette: IColorPalette, { useProps, useLegendContext, geoLayerType }: IUseGeoPushDataConfig<TProps, TLegendContext>): void;
30
30
  export {};
31
31
  //# sourceMappingURL=useGeoPushData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useGeoPushData.d.ts","sourceRoot":"","sources":["../../../../src/next/hooks/pushData/useGeoPushData.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiC,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EAGjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAMnE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,UAAU,cAAc;IACpB,gBAAgB,EAAE,iBAAiB,CAAC;CACvC;AAED;;;;GAIG;AACH,UAAU,cAAc;IACpB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CACxC;AAED,UAAU,qBAAqB,CAAC,MAAM,SAAS,cAAc,EAAE,cAAc,SAAS,cAAc;IAChG,QAAQ,EAAE,MAAM,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,cAAc,CAAC;IACvC,mBAAmB,CAAC,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,KAAK,OAAO,CAAC;IACvE,YAAY,EAAE,YAAY,CAAC;CAC9B;AAOD,wBAAgB,kCAAkC,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAgB3G;AA+BD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,SAAS,cAAc,EAAE,cAAc,SAAS,cAAc,EAC/F,aAAa,EAAE,cAAc,GAAG,IAAI,EACpC,YAAY,EAAE,aAAa,EAC3B,EACI,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACf,EAAE,qBAAqB,CAAC,MAAM,EAAE,cAAc,CAAC,GACjD,IAAI,CA4EN"}
1
+ {"version":3,"file":"useGeoPushData.d.ts","sourceRoot":"","sources":["../../../../src/next/hooks/pushData/useGeoPushData.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiC,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EAGjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAMnE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,UAAU,cAAc;IACpB,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;;;GAIG;AACH,UAAU,cAAc;IACpB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CACxC;AAED,UAAU,qBAAqB,CAAC,MAAM,SAAS,cAAc,EAAE,cAAc,SAAS,cAAc;IAChG,QAAQ,EAAE,MAAM,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,cAAc,CAAC;IACvC,YAAY,EAAE,YAAY,CAAC;CAC9B;AAOD,wBAAgB,kCAAkC,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAgB3G;AA+BD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,SAAS,cAAc,EAAE,cAAc,SAAS,cAAc,EAC/F,aAAa,EAAE,cAAc,GAAG,IAAI,EACpC,YAAY,EAAE,aAAa,EAC3B,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,qBAAqB,CAAC,MAAM,EAAE,cAAc,CAAC,GAC5F,IAAI,CA2EN"}
@@ -53,14 +53,13 @@ function enhanceDrillTargetsWithGeoDisplayForm(drillTargets, geoLayerType) {
53
53
  *
54
54
  * @internal
55
55
  */
56
- export function useGeoPushData(colorStrategy, colorPalette, { useProps, useLegendContext, getLegendVisibility, geoLayerType, }) {
56
+ export function useGeoPushData(colorStrategy, colorPalette, { useProps, useLegendContext, geoLayerType }) {
57
57
  const props = useProps();
58
- const { availableLegends } = useLegendContext();
58
+ const { availableLegends, hasAttributeOnlyLegend = false } = useLegendContext();
59
59
  const { initialDataView } = useInitialExecution();
60
60
  const { layers } = useGeoLayers();
61
61
  const { pushData } = props;
62
- const legendVisibilitySelector = getLegendVisibility ?? defaultLegendVisibility;
63
- const isLegendVisible = legendVisibilitySelector(availableLegends);
62
+ const isLegendVisible = defaultLegendVisibility(availableLegends) || hasAttributeOnlyLegend;
64
63
  const colorAssignments = useMemo(() => (colorStrategy ? sortColorAssignmentsAlphabetically(colorStrategy.getColorAssignment()) : []), [colorStrategy]);
65
64
  // Build drill targets from all layers (combines measures from all layers)
66
65
  const layerDataViews = Array.from(layers.values()).map((l) => l.dataView);
@@ -1 +1 @@
1
- {"version":3,"file":"useGeoPushData.js","sourceRoot":"","sources":["../../../../src/next/hooks/pushData/useGeoPushData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useGeoPushData.js","sourceRoot":"","sources":["../../../../src/next/hooks/pushData/useGeoPushData.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { type ReactElement } from "react";
2
2
  import { type IAvailableLegends } from "../types/common/legends.js";
3
3
  import { type GeoLayerType } from "../types/layers/index.js";
4
- type PushDataSyncProps = {
4
+ interface IPushDataSyncProps {
5
5
  availableLegends?: IAvailableLegends;
6
6
  geoLayerType: GeoLayerType;
7
- };
8
- export declare function PushDataSync({ availableLegends, geoLayerType }: PushDataSyncProps): ReactElement | null;
7
+ }
8
+ export declare function PushDataSync({ availableLegends, geoLayerType }: IPushDataSyncProps): ReactElement | null;
9
9
  export {};
10
10
  //# sourceMappingURL=PushDataSync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PushDataSync.d.ts","sourceRoot":"","sources":["../../../src/next/pushData/PushDataSync.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAW,MAAM,OAAO,CAAC;AAUnD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAI7D,KAAK,iBAAiB,GAAG;IACrB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,YAAY,CAAC;CAC9B,CAAC;AAyBF,wBAAgB,YAAY,CAAC,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,iBAAiB,GAAG,YAAY,GAAG,IAAI,CAqEvG"}
1
+ {"version":3,"file":"PushDataSync.d.ts","sourceRoot":"","sources":["../../../src/next/pushData/PushDataSync.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAW,MAAM,OAAO,CAAC;AAUnD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAK7D,UAAU,kBAAkB;IACxB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,YAAY,CAAC;CAC9B;AAuCD,wBAAgB,YAAY,CAAC,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,kBAAkB,GAAG,YAAY,GAAG,IAAI,CAuExG"}
@@ -6,8 +6,20 @@ import { useGeoPushData } from "../hooks/pushData/useGeoPushData.js";
6
6
  import { getAreaColorStrategy } from "../layers/area/coloring/colorStrategy.js";
7
7
  import { getPushpinColorStrategy } from "../layers/pushpin/coloring/colorStrategy.js";
8
8
  import { resolveLayerColorConfig } from "../utils/color/resolveLayerColorConfig.js";
9
+ import { isAttributeOnlyGeoData } from "../utils/legend/legendUtils.js";
9
10
  import { getHeaderPredicateFingerprint } from "../utils/predicateFingerprint.js";
10
11
  const EMPTY_COLOR_MAPPING = [];
12
+ function detectAttributeOnlyLegend(layers) {
13
+ for (const layerData of layers.values()) {
14
+ if (!layerData.geoData) {
15
+ continue;
16
+ }
17
+ if (isAttributeOnlyGeoData(layerData.geoData, layerData.layerType)) {
18
+ return true;
19
+ }
20
+ }
21
+ return false;
22
+ }
11
23
  function stringify(value) {
12
24
  try {
13
25
  return JSON.stringify(value);
@@ -26,7 +38,7 @@ function colorMappingKey(colorMapping) {
26
38
  }
27
39
  export function PushDataSync({ availableLegends, geoLayerType }) {
28
40
  const { config } = useGeoChartProps();
29
- const { primaryLayer, layerExecutions } = useGeoLayers();
41
+ const { primaryLayer, layerExecutions, layers } = useGeoLayers();
30
42
  const primaryLayerDefinition = layerExecutions[0]?.layer;
31
43
  const resolvedColorConfig = resolveLayerColorConfig(primaryLayerDefinition, config);
32
44
  const colorPalette = resolvedColorConfig.colorPalette;
@@ -65,6 +77,7 @@ export function PushDataSync({ availableLegends, geoLayerType }) {
65
77
  stableColorPalette,
66
78
  stableColorMapping,
67
79
  ]);
80
+ const hasAttributeOnlyLegend = detectAttributeOnlyLegend(layers);
68
81
  useGeoPushData(colorStrategy, stableColorPalette, {
69
82
  useProps: useGeoChartProps,
70
83
  useLegendContext: () => ({
@@ -72,6 +85,7 @@ export function PushDataSync({ availableLegends, geoLayerType }) {
72
85
  hasCategoryLegend: false,
73
86
  hasColorLegend: false,
74
87
  },
88
+ hasAttributeOnlyLegend,
75
89
  }),
76
90
  geoLayerType,
77
91
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PushDataSync.js","sourceRoot":"","sources":["../../../src/next/pushData/PushDataSync.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PushDataSync.js","sourceRoot":"","sources":["../../../src/next/pushData/PushDataSync.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,EAAqB,OAAO,EAAE,MAAM,OAAO,CAAC;AAKnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAsB,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAGtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAOjF,MAAM,mBAAmB,GAAoB,EAAE,CAAC;AAEhD,SAAS,yBAAyB,CAAC,MAAkC,EAAW;IAC5E,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACrB,SAAS;QACb,CAAC;QAED,IAAI,sBAAsB,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACjE,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AAAA,CAChB;AAED,SAAS,SAAS,CAAC,KAAc,EAAU;IACvC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,EAAE,CAAC;IACd,CAAC;AAAA,CACJ;AAED,SAAS,eAAe,CAAC,OAAsB,EAAU;IACrD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAAA,CACzE;AAED,SAAS,eAAe,CAAC,YAAsC,EAAU;IACrE,OAAO,YAAY;SACd,GAAG,CACA,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CACf,GAAG,OAAO,CAAC,EAAE,IAAI,KAAK,IAAI,6BAA6B,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAC/G;SACA,IAAI,CAAC,GAAG,CAAC,CAAC;AAAA,CAClB;AAED,MAAM,UAAU,YAAY,CAAC,EAAE,gBAAgB,EAAE,YAAY,EAAsB,EAAuB;IACtG,MAAM,EAAE,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACtC,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC;IACjE,MAAM,sBAAsB,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IACzD,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;IACpF,MAAM,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAC;IACtD,MAAM,YAAY,GAAG,mBAAmB,CAAC,YAAY,IAAI,mBAAmB,CAAC;IAE7E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEhF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAyB,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC3C,OAAO,YAAY,CAAC;IAAA,CACvB,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IAE7C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,EAA+B,EAAE,EAAE,CAAC,CAAC;IAC/E,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC3C,OAAO,YAAY,CAAC;IAAA,CACvB,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IAE7C,MAAM,aAAa,GAA0B,OAAO,CAAC,GAAG,EAAE,CAAC;QACvD,IAAI,CAAC,YAAY,EAAE,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,YAAY,CAAC,SAAS,KAAK,SAAS;YACvC,CAAC,CAAC,uBAAuB,CACnB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,CAAC,OAAO,EACpB,YAAY,CAAC,QAAQ,CACxB;YACH,CAAC,CAAC,oBAAoB,CAChB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,CAAC,OAAO,EACpB,YAAY,CAAC,QAAQ,CACxB,CAAC;IAAA,CACX,EAAE;QACC,YAAY,EAAE,OAAO;QACrB,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,SAAS;QACvB,kBAAkB;QAClB,kBAAkB;KACrB,CAAC,CAAC;IACH,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAEjE,cAAc,CAAC,aAAa,EAAE,kBAAkB,EAAE;QAC9C,QAAQ,EAAE,gBAAgB;QAC1B,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;YACrB,gBAAgB,EAAE,gBAAgB,IAAI;gBAClC,iBAAiB,EAAE,KAAK;gBACxB,cAAc,EAAE,KAAK;aACxB;YACD,sBAAsB;SACzB,CAAC;QACF,YAAY;KACf,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAAA,CACf"}
@@ -132,6 +132,14 @@ export interface ILegendGroup {
132
132
  * Items in this group.
133
133
  */
134
134
  items: ILegendItem[];
135
+ /**
136
+ * Whether items in this group support interactions (click-to-toggle).
137
+ *
138
+ * @remarks
139
+ * When not specified, interactivity is determined by the presence of
140
+ * an `onItemClick` handler in the rendering component.
141
+ */
142
+ isInteractive?: boolean;
135
143
  }
136
144
  /**
137
145
  * A section representing legend content for a single layer.
@@ -171,6 +179,16 @@ export interface ILegendSection {
171
179
  * Defaults to true if not specified.
172
180
  */
173
181
  isExpanded?: boolean;
182
+ /**
183
+ * Whether this section represents an attribute-only layer.
184
+ *
185
+ * @remarks
186
+ * When true, the legend panel shows a visibility toggle even for
187
+ * single-section legends, and the overlay auto-hides the legend
188
+ * unless `config.legend.enabled` is explicitly set.
189
+ * Defaults to false.
190
+ */
191
+ isAttributeOnlySection?: boolean;
174
192
  }
175
193
  /**
176
194
  * Complete legend model for multi-layer geo charts.
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/next/types/legend/model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC;AAE9D;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IAEnB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACrC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,wBAAwB,GAAG,qBAAqB,CAAC;AAEnG;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC;IAExB;;OAEG;IACH,MAAM,EAAE,YAAY,EAAE,CAAC;IAEvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,qBAAqB,CAEvF;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,wBAAwB,CAE7F;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,qBAAqB,CAEvF"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/next/types/legend/model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,CAAC;AAE9D;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IAEnB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACrC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,wBAAwB,GAAG,qBAAqB,CAAC;AAEnG;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IAEtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,WAAW,EAAE,CAAC;IAErB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC;IAExB;;OAEG;IACH,MAAM,EAAE,YAAY,EAAE,CAAC;IAEvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,qBAAqB,CAEvF;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,wBAAwB,CAE7F;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,qBAAqB,CAEvF"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/next/types/legend/model.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAgOrC;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAiB,EAAiC;IACrF,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AAAA,CACrC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAiB,EAAoC;IAC3F,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC;AAAA,CACxC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAiB,EAAiC;IACrF,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AAAA,CACrC"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/next/types/legend/model.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAoPrC;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAiB,EAAiC;IACrF,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AAAA,CACrC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAiB,EAAoC;IAC3F,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC;AAAA,CACxC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAiB,EAAiC;IACrF,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AAAA,CACrC"}
@@ -22,8 +22,9 @@ export interface IComputeAreaLegendParams {
22
22
  * Creates a legend section with color legend items. Supports both:
23
23
  * - Categorical color (segment attribute) - shows color swatches per category
24
24
  * - Numeric color scale (measure) - shows min/max gradient scale
25
+ * - Attribute-only fallback (area attribute only) - shows configured color and attribute name
25
26
  * Area layers do not have size legends.
26
- * Returns null when there are no legend groups to display (e.g., area-only charts).
27
+ * Returns null when there are no legend groups to display.
27
28
  *
28
29
  * @param params - Parameters for computation
29
30
  * @returns Legend section for the area layer, or null if no legend data
@@ -1 +1 @@
1
- {"version":3,"file":"computeAreaLegend.d.ts","sourceRoot":"","sources":["../../../../src/next/utils/legend/computeAreaLegend.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAGH,KAAK,cAAc,EACtB,MAAM,6BAA6B,CAAC;AAoBrC;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,YAAY,CAAC;IACtB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,GAAG,cAAc,GAAG,IAAI,CAuDzF"}
1
+ {"version":3,"file":"computeAreaLegend.d.ts","sourceRoot":"","sources":["../../../../src/next/utils/legend/computeAreaLegend.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAErF;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,YAAY,CAAC;IACtB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,GAAG,cAAc,GAAG,IAAI,CA6EzF"}
@@ -1,22 +1,6 @@
1
1
  // (C) 2025-2026 GoodData Corporation
2
2
  import { computeColorScale } from "./computeColorScale.js";
3
- /**
4
- * Converts legend items to color category items for area layers.
5
- *
6
- * @param legendItems - Base legend items from layer output
7
- * @returns Array of color category items
8
- *
9
- * @internal
10
- */
11
- function convertToColorCategories(legendItems) {
12
- return legendItems.map((item) => ({
13
- type: "colorCategory",
14
- label: item.name,
15
- color: item.color ?? "#ccc", // Fallback color for undefined
16
- uri: item.uri,
17
- isVisible: item.isVisible,
18
- }));
19
- }
3
+ import { ATTRIBUTE_ONLY_URI_PREFIX, FALLBACK_LEGEND_COLOR, convertToColorCategories, isAttributeOnlyAreaData, } from "./legendUtils.js";
20
4
  /**
21
5
  * Computes legend section for an area layer.
22
6
  *
@@ -24,8 +8,9 @@ function convertToColorCategories(legendItems) {
24
8
  * Creates a legend section with color legend items. Supports both:
25
9
  * - Categorical color (segment attribute) - shows color swatches per category
26
10
  * - Numeric color scale (measure) - shows min/max gradient scale
11
+ * - Attribute-only fallback (area attribute only) - shows configured color and attribute name
27
12
  * Area layers do not have size legends.
28
- * Returns null when there are no legend groups to display (e.g., area-only charts).
13
+ * Returns null when there are no legend groups to display.
29
14
  *
30
15
  * @param params - Parameters for computation
31
16
  * @returns Legend section for the area layer, or null if no legend data
@@ -58,7 +43,27 @@ export function computeAreaLegend(params) {
58
43
  });
59
44
  }
60
45
  }
61
- // Return null when there are no legend groups (e.g., area-only charts)
46
+ // Attribute-only fallback is mutually exclusive with category/color groups above:
47
+ // isAttributeOnlyAreaData requires !segment && !color, which prevents those branches from running.
48
+ const hasAttributeOnlyLegend = isAttributeOnlyAreaData(geoData);
49
+ if (hasAttributeOnlyLegend) {
50
+ const attributeName = geoData.area?.name ?? "Area";
51
+ groups.push({
52
+ kind: "color",
53
+ title: "",
54
+ items: [
55
+ {
56
+ type: "colorCategory",
57
+ label: attributeName,
58
+ color: colorScaleBaseColor ?? FALLBACK_LEGEND_COLOR,
59
+ uri: `${ATTRIBUTE_ONLY_URI_PREFIX}:${layerId}`,
60
+ isVisible: true,
61
+ },
62
+ ],
63
+ isInteractive: false,
64
+ });
65
+ }
66
+ // Return null when there are no legend groups
62
67
  if (groups.length === 0) {
63
68
  return null;
64
69
  }
@@ -67,6 +72,7 @@ export function computeAreaLegend(params) {
67
72
  layerTitle: layerName,
68
73
  layerKind: "area",
69
74
  groups,
75
+ isAttributeOnlySection: hasAttributeOnlyLegend,
70
76
  };
71
77
  }
72
78
  //# sourceMappingURL=computeAreaLegend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"computeAreaLegend.js","sourceRoot":"","sources":["../../../../src/next/utils/legend/computeAreaLegend.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAS3D;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAAC,WAA6B,EAA8B;IACzF,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAI,EAAE,eAAwB;QAC9B,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,MAAM,EAAE,+BAA+B;QAC5D,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,SAAS,EAAE,IAAI,CAAC,SAAS;KAC5B,CAAC,CAAC,CAAC;AAAA,CACP;AAiBD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAgC,EAAyB;IACvF,MAAM,EACF,OAAO,EACP,SAAS,EACT,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,mBAAmB,GACtB,GAAG,MAAM,CAAC;IAEX,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,iBAAiB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAEvF,sEAAsE;IACtE,IAAI,iBAAiB,EAAE,CAAC;QACpB,MAAM,eAAe,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO;YACvC,KAAK,EAAE,eAAe;SACzB,CAAC,CAAC;IACP,CAAC;IAED,8DAA8D;IAC9D,8EAA8E;IAC9E,kDAAkD;IAClD,IAAI,gBAAgB,CAAC,cAAc,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,iBAAiB,CAChC,OAAO,CAAC,KAAK,CAAC,IAAI,EAClB,OAAO,CAAC,KAAK,CAAC,MAAM,EACpB,cAAc,EACd,mBAAmB,EACnB,EAAE,cAAc,EAAE,IAAI,EAAE,CAC3B,CAAC;QACF,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;gBACzB,KAAK,EAAE,CAAC,UAAU,CAAC;aACtB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO;QACH,OAAO;QACP,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,MAAM;QACjB,MAAM;KACT,CAAC;AAAA,CACL"}
1
+ {"version":3,"file":"computeAreaLegend.js","sourceRoot":"","sources":["../../../../src/next/utils/legend/computeAreaLegend.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EACH,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GAC1B,MAAM,kBAAkB,CAAC;AAoB1B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAgC,EAAyB;IACvF,MAAM,EACF,OAAO,EACP,SAAS,EACT,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,mBAAmB,GACtB,GAAG,MAAM,CAAC;IAEX,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,iBAAiB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAEvF,sEAAsE;IACtE,IAAI,iBAAiB,EAAE,CAAC;QACpB,MAAM,eAAe,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO;YACvC,KAAK,EAAE,eAAe;SACzB,CAAC,CAAC;IACP,CAAC;IAED,8DAA8D;IAC9D,8EAA8E;IAC9E,kDAAkD;IAClD,IAAI,gBAAgB,CAAC,cAAc,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,iBAAiB,CAChC,OAAO,CAAC,KAAK,CAAC,IAAI,EAClB,OAAO,CAAC,KAAK,CAAC,MAAM,EACpB,cAAc,EACd,mBAAmB,EACnB,EAAE,cAAc,EAAE,IAAI,EAAE,CAC3B,CAAC;QACF,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;gBACzB,KAAK,EAAE,CAAC,UAAU,CAAC;aACtB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,kFAAkF;IAClF,mGAAmG;IACnG,MAAM,sBAAsB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAChE,IAAI,sBAAsB,EAAE,CAAC;QACzB,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,IAAI,MAAM,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE;YACT,KAAK,EAAE;gBACH;oBACI,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,aAAa;oBACpB,KAAK,EAAE,mBAAmB,IAAI,qBAAqB;oBACnD,GAAG,EAAE,GAAG,yBAAyB,IAAI,OAAO,EAAE;oBAC9C,SAAS,EAAE,IAAI;iBAClB;aACJ;YACD,aAAa,EAAE,KAAK;SACvB,CAAC,CAAC;IACP,CAAC;IAED,8CAA8C;IAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO;QACH,OAAO;QACP,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,MAAM;QACjB,MAAM;QACN,sBAAsB,EAAE,sBAAsB;KACjD,CAAC;AAAA,CACL"}
@@ -1,6 +1,6 @@
1
1
  import type { IAvailableLegends, IGeoLegendItem } from "../../types/common/legends.js";
2
2
  import type { IPushpinGeoData } from "../../types/geoData/pushpin.js";
3
- import { type ILegendColorCategoryItem, type ILegendSection, type ILegendSizeAnchorItem } from "../../types/legend/model.js";
3
+ import { type ILegendSection, type ILegendSizeAnchorItem } from "../../types/legend/model.js";
4
4
  /**
5
5
  * Computes size anchors from pushpin size data.
6
6
  *
@@ -15,15 +15,6 @@ import { type ILegendColorCategoryItem, type ILegendSection, type ILegendSizeAnc
15
15
  * @internal
16
16
  */
17
17
  export declare function computeSizeAnchors(geoData: IPushpinGeoData, numericSymbols?: string[]): ILegendSizeAnchorItem[];
18
- /**
19
- * Converts existing legend items to color category items.
20
- *
21
- * @param legendItems - Base legend items from layer output
22
- * @returns Array of color category items
23
- *
24
- * @internal
25
- */
26
- export declare function convertToColorCategories(legendItems: IGeoLegendItem[]): ILegendColorCategoryItem[];
27
18
  /**
28
19
  * Input parameters for computing pushpin legend section.
29
20
  *
@@ -45,7 +36,8 @@ export interface IComputePushpinLegendParams {
45
36
  * Creates a legend section with size and/or color groups based on
46
37
  * available data. Size groups show min/mid/max anchors, color groups
47
38
  * show categorical items with swatches.
48
- * Returns null when there are no legend groups to display (e.g., location-only charts).
39
+ * Attribute-only layers render a non-interactive color group with the configured layer color.
40
+ * Returns null when there are no legend groups to display.
49
41
  *
50
42
  * @param params - Parameters for computation
51
43
  * @returns Legend section for the pushpin layer, or null if no legend data
@@ -1 +1 @@
1
- {"version":3,"file":"computePushpinLegend.d.ts","sourceRoot":"","sources":["../../../../src/next/utils/legend/computePushpinLegend.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EACH,KAAK,wBAAwB,EAE7B,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC7B,MAAM,6BAA6B,CAAC;AAwBrC;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAC9B,OAAO,EAAE,eAAe,EACxB,cAAc,CAAC,EAAE,MAAM,EAAE,GAC1B,qBAAqB,EAAE,CAuDzB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,wBAAwB,EAAE,CAQlG;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,2BAA2B,GAAG,cAAc,GAAG,IAAI,CAmE/F"}
1
+ {"version":3,"file":"computePushpinLegend.d.ts","sourceRoot":"","sources":["../../../../src/next/utils/legend/computePushpinLegend.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAEH,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC7B,MAAM,6BAA6B,CAAC;AAwBrC;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAC9B,OAAO,EAAE,eAAe,EACxB,cAAc,CAAC,EAAE,MAAM,EAAE,GAC1B,qBAAqB,EAAE,CAuDzB;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,2BAA2B,GAAG,cAAc,GAAG,IAAI,CAyF/F"}
@@ -1,6 +1,7 @@
1
1
  // (C) 2025-2026 GoodData Corporation
2
2
  import { formatLegendLabel } from "@gooddata/sdk-ui-vis-commons";
3
3
  import { computeColorScale } from "./computeColorScale.js";
4
+ import { ATTRIBUTE_ONLY_URI_PREFIX, FALLBACK_LEGEND_COLOR, convertToColorCategories, isAttributeOnlyPushpinData, } from "./legendUtils.js";
4
5
  /**
5
6
  * Minimum size in pixels for smallest size anchor.
6
7
  */
@@ -82,23 +83,6 @@ export function computeSizeAnchors(geoData, numericSymbols) {
82
83
  },
83
84
  ];
84
85
  }
85
- /**
86
- * Converts existing legend items to color category items.
87
- *
88
- * @param legendItems - Base legend items from layer output
89
- * @returns Array of color category items
90
- *
91
- * @internal
92
- */
93
- export function convertToColorCategories(legendItems) {
94
- return legendItems.map((item) => ({
95
- type: "colorCategory",
96
- label: item.name,
97
- color: item.color ?? "#ccc", // Fallback color for undefined
98
- uri: item.uri,
99
- isVisible: item.isVisible,
100
- }));
101
- }
102
86
  /**
103
87
  * Computes legend section for a pushpin layer.
104
88
  *
@@ -106,7 +90,8 @@ export function convertToColorCategories(legendItems) {
106
90
  * Creates a legend section with size and/or color groups based on
107
91
  * available data. Size groups show min/mid/max anchors, color groups
108
92
  * show categorical items with swatches.
109
- * Returns null when there are no legend groups to display (e.g., location-only charts).
93
+ * Attribute-only layers render a non-interactive color group with the configured layer color.
94
+ * Returns null when there are no legend groups to display.
110
95
  *
111
96
  * @param params - Parameters for computation
112
97
  * @returns Legend section for the pushpin layer, or null if no legend data
@@ -151,7 +136,27 @@ export function computePushpinLegend(params) {
151
136
  items: colorCategories,
152
137
  });
153
138
  }
154
- // Return null when there are no legend groups (e.g., location-only charts)
139
+ // Attribute-only fallback is mutually exclusive with category/color/size groups above:
140
+ // isAttributeOnlyPushpinData requires !segment && !color && !size, which prevents those branches.
141
+ const hasAttributeOnlyLegend = isAttributeOnlyPushpinData(geoData);
142
+ if (hasAttributeOnlyLegend) {
143
+ const attributeName = geoData.location?.name ?? "Location";
144
+ groups.push({
145
+ kind: "color",
146
+ title: "",
147
+ items: [
148
+ {
149
+ type: "colorCategory",
150
+ label: attributeName,
151
+ color: colorScaleBaseColor ?? FALLBACK_LEGEND_COLOR,
152
+ uri: `${ATTRIBUTE_ONLY_URI_PREFIX}:${layerId}`,
153
+ isVisible: true,
154
+ },
155
+ ],
156
+ isInteractive: false,
157
+ });
158
+ }
159
+ // Return null when there are no legend groups
155
160
  if (groups.length === 0) {
156
161
  return null;
157
162
  }
@@ -160,6 +165,7 @@ export function computePushpinLegend(params) {
160
165
  layerTitle: layerName,
161
166
  layerKind: "pushpin",
162
167
  groups,
168
+ isAttributeOnlySection: hasAttributeOnlyLegend,
163
169
  };
164
170
  }
165
171
  //# sourceMappingURL=computePushpinLegend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"computePushpinLegend.js","sourceRoot":"","sources":["../../../../src/next/utils/legend/computePushpinLegend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computePushpinLegend.js","sourceRoot":"","sources":["../../../../src/next/utils/legend/computePushpinLegend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import type { IGeoLegendItem } from "../../types/common/legends.js";
2
+ import type { IAreaGeoData } from "../../types/geoData/area.js";
3
+ import type { IPushpinGeoData } from "../../types/geoData/pushpin.js";
4
+ import type { ILegendColorCategoryItem } from "../../types/legend/model.js";
5
+ /**
6
+ * Fallback color used when no color is assigned to a legend item.
7
+ *
8
+ * @internal
9
+ */
10
+ export declare const FALLBACK_LEGEND_COLOR = "#ccc";
11
+ /**
12
+ * URI prefix for synthetic legend items representing attribute-only layers.
13
+ *
14
+ * @internal
15
+ */
16
+ export declare const ATTRIBUTE_ONLY_URI_PREFIX = "__attribute_only__";
17
+ /**
18
+ * Converts existing legend items to color category items.
19
+ *
20
+ * @param legendItems - Base legend items from layer output
21
+ * @returns Array of color category items
22
+ *
23
+ * @internal
24
+ */
25
+ export declare function convertToColorCategories(legendItems: IGeoLegendItem[]): ILegendColorCategoryItem[];
26
+ /**
27
+ * Checks whether area geo data represents an attribute-only layer
28
+ * (area attribute present, no segment or color measure).
29
+ *
30
+ * @internal
31
+ */
32
+ export declare function isAttributeOnlyAreaData(geoData: IAreaGeoData): boolean;
33
+ /**
34
+ * Checks whether pushpin geo data represents an attribute-only layer
35
+ * (location attribute present, no segment, color, or size measure).
36
+ *
37
+ * @internal
38
+ */
39
+ export declare function isAttributeOnlyPushpinData(geoData: IPushpinGeoData): boolean;
40
+ /**
41
+ * Checks whether geo data represents an attribute-only layer based on
42
+ * the layer type discriminator.
43
+ *
44
+ * @internal
45
+ */
46
+ export declare function isAttributeOnlyGeoData(geoData: IAreaGeoData, layerType: "area"): boolean;
47
+ export declare function isAttributeOnlyGeoData(geoData: IPushpinGeoData, layerType: "pushpin"): boolean;
48
+ export declare function isAttributeOnlyGeoData(geoData: IAreaGeoData | IPushpinGeoData, layerType: "area" | "pushpin"): boolean;
49
+ //# sourceMappingURL=legendUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legendUtils.d.ts","sourceRoot":"","sources":["../../../../src/next/utils/legend/legendUtils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAE5E;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,SAAS,CAAC;AAE5C;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAE9D;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,wBAAwB,EAAE,CAQlG;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAEtE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAE5E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;AAC1F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC;AAChG,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,YAAY,GAAG,eAAe,EACvC,SAAS,EAAE,MAAM,GAAG,SAAS,GAC9B,OAAO,CAAC"}
@@ -0,0 +1,55 @@
1
+ // (C) 2025-2026 GoodData Corporation
2
+ /**
3
+ * Fallback color used when no color is assigned to a legend item.
4
+ *
5
+ * @internal
6
+ */
7
+ export const FALLBACK_LEGEND_COLOR = "#ccc";
8
+ /**
9
+ * URI prefix for synthetic legend items representing attribute-only layers.
10
+ *
11
+ * @internal
12
+ */
13
+ export const ATTRIBUTE_ONLY_URI_PREFIX = "__attribute_only__";
14
+ /**
15
+ * Converts existing legend items to color category items.
16
+ *
17
+ * @param legendItems - Base legend items from layer output
18
+ * @returns Array of color category items
19
+ *
20
+ * @internal
21
+ */
22
+ export function convertToColorCategories(legendItems) {
23
+ return legendItems.map((item) => ({
24
+ type: "colorCategory",
25
+ label: item.name,
26
+ color: item.color ?? FALLBACK_LEGEND_COLOR,
27
+ uri: item.uri,
28
+ isVisible: item.isVisible,
29
+ }));
30
+ }
31
+ /**
32
+ * Checks whether area geo data represents an attribute-only layer
33
+ * (area attribute present, no segment or color measure).
34
+ *
35
+ * @internal
36
+ */
37
+ export function isAttributeOnlyAreaData(geoData) {
38
+ return !geoData.segment && !geoData.color && Boolean(geoData.area);
39
+ }
40
+ /**
41
+ * Checks whether pushpin geo data represents an attribute-only layer
42
+ * (location attribute present, no segment, color, or size measure).
43
+ *
44
+ * @internal
45
+ */
46
+ export function isAttributeOnlyPushpinData(geoData) {
47
+ return !geoData.segment && !geoData.color && !geoData.size && Boolean(geoData.location);
48
+ }
49
+ export function isAttributeOnlyGeoData(geoData, layerType) {
50
+ if (layerType === "area") {
51
+ return isAttributeOnlyAreaData(geoData);
52
+ }
53
+ return isAttributeOnlyPushpinData(geoData);
54
+ }
55
+ //# sourceMappingURL=legendUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legendUtils.js","sourceRoot":"","sources":["../../../../src/next/utils/legend/legendUtils.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAOrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,oBAAoB,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,WAA6B,EAA8B;IAChG,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAI,EAAE,eAAwB;QAC9B,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,qBAAqB;QAC1C,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,SAAS,EAAE,IAAI,CAAC,SAAS;KAC5B,CAAC,CAAC,CAAC;AAAA,CACP;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAqB,EAAW;IACpE,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAAA,CACtE;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAwB,EAAW;IAC1E,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAAA,CAC3F;AAcD,MAAM,UAAU,sBAAsB,CAClC,OAAuC,EACvC,SAA6B,EACtB;IACP,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,uBAAuB,CAAC,OAAuB,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,0BAA0B,CAAC,OAA0B,CAAC,CAAC;AAAA,CACjE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-geo",
3
- "version": "11.25.0-alpha.1",
3
+ "version": "11.25.0-alpha.3",
4
4
  "description": "GoodData.UI SDK - Geo Charts",
5
5
  "license": "MIT",
6
6
  "author": "GoodData Corporation",
@@ -43,12 +43,12 @@
43
43
  "ts-invariant": "0.10.3",
44
44
  "tslib": "2.8.1",
45
45
  "uuid": "11.1.0",
46
- "@gooddata/sdk-backend-spi": "11.25.0-alpha.1",
47
- "@gooddata/sdk-model": "11.25.0-alpha.1",
48
- "@gooddata/sdk-ui": "11.25.0-alpha.1",
49
- "@gooddata/sdk-ui-kit": "11.25.0-alpha.1",
50
- "@gooddata/sdk-ui-theme-provider": "11.25.0-alpha.1",
51
- "@gooddata/sdk-ui-vis-commons": "11.25.0-alpha.1"
46
+ "@gooddata/sdk-backend-spi": "11.25.0-alpha.3",
47
+ "@gooddata/sdk-model": "11.25.0-alpha.3",
48
+ "@gooddata/sdk-ui": "11.25.0-alpha.3",
49
+ "@gooddata/sdk-ui-theme-provider": "11.25.0-alpha.3",
50
+ "@gooddata/sdk-ui-kit": "11.25.0-alpha.3",
51
+ "@gooddata/sdk-ui-vis-commons": "11.25.0-alpha.3"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@microsoft/api-documenter": "^7.17.0",
@@ -91,10 +91,10 @@
91
91
  "typescript": "5.9.3",
92
92
  "vitest": "4.0.8",
93
93
  "vitest-dom": "0.1.1",
94
- "@gooddata/eslint-config": "11.25.0-alpha.1",
95
- "@gooddata/oxlint-config": "11.25.0-alpha.1",
96
- "@gooddata/sdk-backend-mockingbird": "11.25.0-alpha.1",
97
- "@gooddata/stylelint-config": "11.25.0-alpha.1"
94
+ "@gooddata/oxlint-config": "11.25.0-alpha.3",
95
+ "@gooddata/eslint-config": "11.25.0-alpha.3",
96
+ "@gooddata/sdk-backend-mockingbird": "11.25.0-alpha.3",
97
+ "@gooddata/stylelint-config": "11.25.0-alpha.3"
98
98
  },
99
99
  "peerDependencies": {
100
100
  "react": "^18.0.0 || ^19.0.0",