@splunk/visualizations 27.3.0 → 27.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Area.config.js +24 -3
- package/Area.config.js.map +2 -2
- package/Area.js +53 -9
- package/Area.js.map +2 -2
- package/Bar.config.js +24 -3
- package/Bar.config.js.map +3 -3
- package/Bar.js +54 -11
- package/Bar.js.map +3 -3
- package/Bubble.config.js +8 -1
- package/Bubble.config.js.map +2 -2
- package/Bubble.js +17 -6
- package/Bubble.js.map +2 -2
- package/CHANGELOG.external.md +1629 -0
- package/ChoroplethSvg.js +2 -2
- package/Column.config.js +24 -3
- package/Column.config.js.map +3 -3
- package/Column.js +53 -9
- package/Column.js.map +3 -3
- package/Ellipse.js +65 -7
- package/Ellipse.js.map +4 -4
- package/Events.js +11 -6
- package/Events.js.map +2 -2
- package/FEATUREFLAGS.md +2 -0
- package/FillerGauge.config.js +8 -28
- package/FillerGauge.config.js.map +2 -2
- package/FillerGauge.js +10 -30
- package/FillerGauge.js.map +2 -2
- package/Image.js +2 -2
- package/Line.config.js +24 -3
- package/Line.config.js.map +3 -3
- package/Line.js +53 -9
- package/Line.js.map +3 -3
- package/LinkGraph.js +2 -2
- package/Map.config.js +22 -0
- package/Map.config.js.map +2 -2
- package/Map.js +284 -121
- package/Map.js.map +4 -4
- package/Markdown.js +2 -2
- package/MarkerGauge.config.js +8 -25
- package/MarkerGauge.config.js.map +2 -2
- package/MarkerGauge.js +10 -27
- package/MarkerGauge.js.map +2 -2
- package/ParallelCoordinates.js +2 -2
- package/ParallelCoordinates.js.map +1 -1
- package/Pie.config.js +123 -3
- package/Pie.config.js.map +3 -3
- package/Pie.js +743 -19
- package/Pie.js.map +4 -4
- package/Punchcard.js +2 -2
- package/Punchcard.js.map +1 -1
- package/Rectangle.js +64 -7
- package/Rectangle.js.map +4 -4
- package/Sankey.js +36 -35
- package/Sankey.js.map +3 -3
- package/Scatter.config.js +320 -113
- package/Scatter.config.js.map +4 -4
- package/Scatter.js +936 -128
- package/Scatter.js.map +4 -4
- package/SingleValue.js +3 -3
- package/SingleValue.js.map +2 -2
- package/SingleValueBasic.js.map +1 -1
- package/SingleValueIcon.js +3 -3
- package/SingleValueIcon.js.map +2 -2
- package/SingleValueRadial.js +3 -3
- package/SingleValueRadial.js.map +2 -2
- package/TRELLIS.md +12 -3
- package/Table.js +2 -2
- package/Timeline.js +81 -63
- package/Timeline.js.map +4 -4
- package/common/Charting.js +7 -3
- package/common/Charting.js.map +2 -2
- package/common/chartingUtils.js +11 -0
- package/common/chartingUtils.js.map +2 -2
- package/common/shapeUtils.js +85 -3
- package/common/shapeUtils.js.map +4 -4
- package/common/utils/mapUtils.js +169 -48
- package/common/utils/mapUtils.js.map +4 -4
- package/common/utils/singleValueUtils.js +1 -1
- package/common/utils/singleValueUtils.js.map +2 -2
- package/common/withDashboardViz.js +2 -2
- package/package.json +18 -18
package/common/utils/mapUtils.js
CHANGED
|
@@ -129,50 +129,77 @@ var defaultImport7 = __toESM(require("lodash"));
|
|
|
129
129
|
__reExport(lodash_exports, require("lodash"));
|
|
130
130
|
var lodash_default = "default" in defaultImport7 ? defaultImport7.default : defaultImport7;
|
|
131
131
|
|
|
132
|
+
// esm-externals:@splunk/visualizations-shared/iconUtils
|
|
133
|
+
var iconUtils_exports = {};
|
|
134
|
+
__export(iconUtils_exports, {
|
|
135
|
+
default: () => iconUtils_default
|
|
136
|
+
});
|
|
137
|
+
var defaultImport8 = __toESM(require("@splunk/visualizations-shared/iconUtils"));
|
|
138
|
+
__reExport(iconUtils_exports, require("@splunk/visualizations-shared/iconUtils"));
|
|
139
|
+
var iconUtils_default = "default" in defaultImport8 ? defaultImport8.default : defaultImport8;
|
|
140
|
+
|
|
132
141
|
// esm-externals:@splunk/visualizations-shared/colorUtils
|
|
133
142
|
var colorUtils_exports = {};
|
|
134
143
|
__export(colorUtils_exports, {
|
|
135
144
|
default: () => colorUtils_default
|
|
136
145
|
});
|
|
137
|
-
var
|
|
146
|
+
var defaultImport9 = __toESM(require("@splunk/visualizations-shared/colorUtils"));
|
|
138
147
|
__reExport(colorUtils_exports, require("@splunk/visualizations-shared/colorUtils"));
|
|
139
|
-
var colorUtils_default = "default" in
|
|
148
|
+
var colorUtils_default = "default" in defaultImport9 ? defaultImport9.default : defaultImport9;
|
|
149
|
+
|
|
150
|
+
// esm-externals:@splunk/visualizations-shared/RemoteIcon
|
|
151
|
+
var RemoteIcon_exports = {};
|
|
152
|
+
__export(RemoteIcon_exports, {
|
|
153
|
+
default: () => RemoteIcon_default
|
|
154
|
+
});
|
|
155
|
+
var defaultImport10 = __toESM(require("@splunk/visualizations-shared/RemoteIcon"));
|
|
156
|
+
__reExport(RemoteIcon_exports, require("@splunk/visualizations-shared/RemoteIcon"));
|
|
157
|
+
var RemoteIcon_default = "default" in defaultImport10 ? defaultImport10.default : defaultImport10;
|
|
158
|
+
|
|
159
|
+
// esm-externals:@splunk/visualization-context/FeatureFlagContext
|
|
160
|
+
var FeatureFlagContext_exports = {};
|
|
161
|
+
__export(FeatureFlagContext_exports, {
|
|
162
|
+
default: () => FeatureFlagContext_default
|
|
163
|
+
});
|
|
164
|
+
var defaultImport11 = __toESM(require("@splunk/visualization-context/FeatureFlagContext"));
|
|
165
|
+
__reExport(FeatureFlagContext_exports, require("@splunk/visualization-context/FeatureFlagContext"));
|
|
166
|
+
var FeatureFlagContext_default = "default" in defaultImport11 ? defaultImport11.default : defaultImport11;
|
|
140
167
|
|
|
141
168
|
// esm-externals:d3-scale
|
|
142
169
|
var d3_scale_exports = {};
|
|
143
170
|
__export(d3_scale_exports, {
|
|
144
171
|
default: () => d3_scale_default
|
|
145
172
|
});
|
|
146
|
-
var
|
|
173
|
+
var defaultImport12 = __toESM(require("d3-scale"));
|
|
147
174
|
__reExport(d3_scale_exports, require("d3-scale"));
|
|
148
|
-
var d3_scale_default = "default" in
|
|
175
|
+
var d3_scale_default = "default" in defaultImport12 ? defaultImport12.default : defaultImport12;
|
|
149
176
|
|
|
150
177
|
// esm-externals:chroma-js
|
|
151
178
|
var chroma_js_exports = {};
|
|
152
179
|
__export(chroma_js_exports, {
|
|
153
180
|
default: () => chroma_js_default
|
|
154
181
|
});
|
|
155
|
-
var
|
|
182
|
+
var defaultImport13 = __toESM(require("chroma-js"));
|
|
156
183
|
__reExport(chroma_js_exports, require("chroma-js"));
|
|
157
|
-
var chroma_js_default = "default" in
|
|
184
|
+
var chroma_js_default = "default" in defaultImport13 ? defaultImport13.default : defaultImport13;
|
|
158
185
|
|
|
159
186
|
// esm-externals:@splunk/visualization-color-palettes
|
|
160
187
|
var visualization_color_palettes_exports = {};
|
|
161
188
|
__export(visualization_color_palettes_exports, {
|
|
162
189
|
default: () => visualization_color_palettes_default
|
|
163
190
|
});
|
|
164
|
-
var
|
|
191
|
+
var defaultImport14 = __toESM(require("@splunk/visualization-color-palettes"));
|
|
165
192
|
__reExport(visualization_color_palettes_exports, require("@splunk/visualization-color-palettes"));
|
|
166
|
-
var visualization_color_palettes_default = "default" in
|
|
193
|
+
var visualization_color_palettes_default = "default" in defaultImport14 ? defaultImport14.default : defaultImport14;
|
|
167
194
|
|
|
168
195
|
// esm-externals:@splunk/visualization-schemas
|
|
169
196
|
var visualization_schemas_exports = {};
|
|
170
197
|
__export(visualization_schemas_exports, {
|
|
171
198
|
default: () => visualization_schemas_default
|
|
172
199
|
});
|
|
173
|
-
var
|
|
200
|
+
var defaultImport15 = __toESM(require("@splunk/visualization-schemas"));
|
|
174
201
|
__reExport(visualization_schemas_exports, require("@splunk/visualization-schemas"));
|
|
175
|
-
var visualization_schemas_default = "default" in
|
|
202
|
+
var visualization_schemas_default = "default" in defaultImport15 ? defaultImport15.default : defaultImport15;
|
|
176
203
|
|
|
177
204
|
// src/Map/PureMap/MapUtils.ts
|
|
178
205
|
var MIN_BUBBLE_RADIUS = 7.11;
|
|
@@ -195,27 +222,36 @@ var maplibre_gl_exports = {};
|
|
|
195
222
|
__export(maplibre_gl_exports, {
|
|
196
223
|
default: () => maplibre_gl_default
|
|
197
224
|
});
|
|
198
|
-
var
|
|
225
|
+
var defaultImport16 = __toESM(require("maplibre-gl"));
|
|
199
226
|
__reExport(maplibre_gl_exports, require("maplibre-gl"));
|
|
200
|
-
var maplibre_gl_default = "default" in
|
|
227
|
+
var maplibre_gl_default = "default" in defaultImport16 ? defaultImport16.default : defaultImport16;
|
|
201
228
|
|
|
202
229
|
// esm-externals:@splunk/react-ui/Popover
|
|
203
230
|
var Popover_exports = {};
|
|
204
231
|
__export(Popover_exports, {
|
|
205
232
|
default: () => Popover_default
|
|
206
233
|
});
|
|
207
|
-
var
|
|
234
|
+
var defaultImport17 = __toESM(require("@splunk/react-ui/Popover"));
|
|
208
235
|
__reExport(Popover_exports, require("@splunk/react-ui/Popover"));
|
|
209
|
-
var Popover_default = "default" in
|
|
236
|
+
var Popover_default = "default" in defaultImport17 ? defaultImport17.default : defaultImport17;
|
|
210
237
|
|
|
211
238
|
// esm-externals:@splunk/ui-utils/i18n
|
|
212
239
|
var i18n_exports = {};
|
|
213
240
|
__export(i18n_exports, {
|
|
214
241
|
default: () => i18n_default
|
|
215
242
|
});
|
|
216
|
-
var
|
|
243
|
+
var defaultImport18 = __toESM(require("@splunk/ui-utils/i18n"));
|
|
217
244
|
__reExport(i18n_exports, require("@splunk/ui-utils/i18n"));
|
|
218
|
-
var i18n_default = "default" in
|
|
245
|
+
var i18n_default = "default" in defaultImport18 ? defaultImport18.default : defaultImport18;
|
|
246
|
+
|
|
247
|
+
// esm-externals:@splunk/themes
|
|
248
|
+
var themes_exports = {};
|
|
249
|
+
__export(themes_exports, {
|
|
250
|
+
default: () => themes_default
|
|
251
|
+
});
|
|
252
|
+
var defaultImport19 = __toESM(require("@splunk/themes"));
|
|
253
|
+
__reExport(themes_exports, require("@splunk/themes"));
|
|
254
|
+
var themes_default = "default" in defaultImport19 ? defaultImport19.default : defaultImport19;
|
|
219
255
|
|
|
220
256
|
// src/Map/PureMap/Tooltip.tsx
|
|
221
257
|
var StyledPopover = styled_components_default(Popover_default)`
|
|
@@ -224,6 +260,7 @@ var StyledPopover = styled_components_default(Popover_default)`
|
|
|
224
260
|
`;
|
|
225
261
|
var StyledTable = styled_components_default.table`
|
|
226
262
|
margin: 2px 6px 2px 6px;
|
|
263
|
+
table-layout: fixed;
|
|
227
264
|
width: calc(100% - 12px);
|
|
228
265
|
`;
|
|
229
266
|
var StyledTitleColumn = styled_components_default.td`
|
|
@@ -241,6 +278,30 @@ var StyledColorBlock = styled_components_default.div`
|
|
|
241
278
|
height: 11px;
|
|
242
279
|
transform: translateY(1px);
|
|
243
280
|
`;
|
|
281
|
+
var StyledFieldLabel = styled_components_default.span`
|
|
282
|
+
display: inline-block;
|
|
283
|
+
white-space: nowrap;
|
|
284
|
+
`;
|
|
285
|
+
var StyledIconWrapper = styled_components_default.span`
|
|
286
|
+
margin-left: 4px;
|
|
287
|
+
display: inline-block;
|
|
288
|
+
vertical-align: middle;
|
|
289
|
+
`;
|
|
290
|
+
var StyledTooltipHeader = styled_components_default.thead`
|
|
291
|
+
th {
|
|
292
|
+
height: 16px;
|
|
293
|
+
color: ${themes_exports.variables.contentColorActive};
|
|
294
|
+
padding: 0;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
span {
|
|
298
|
+
display: block;
|
|
299
|
+
white-space: nowrap;
|
|
300
|
+
overflow: hidden;
|
|
301
|
+
text-overflow: ellipsis;
|
|
302
|
+
width: 100%;
|
|
303
|
+
}
|
|
304
|
+
`;
|
|
244
305
|
var convertDegToDMS = (decimalDegree, type) => {
|
|
245
306
|
const truncate = (n) => n > 0 ? Math.floor(n) : Math.ceil(n);
|
|
246
307
|
const absoluteDegree = Math.abs(decimalDegree);
|
|
@@ -270,18 +331,26 @@ var Tooltip = ({
|
|
|
270
331
|
longitude,
|
|
271
332
|
areaId,
|
|
272
333
|
areaValue,
|
|
273
|
-
additionalFields = []
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
334
|
+
additionalFields = [],
|
|
335
|
+
showCoordinates = true,
|
|
336
|
+
tooltipHeader = null
|
|
337
|
+
}) => {
|
|
338
|
+
const featureFlagContext = react_exports.useContext(FeatureFlagContext_default);
|
|
339
|
+
const isTooltipIconFlagEnabled = Boolean(
|
|
340
|
+
featureFlagContext && featureFlagContext.visualizations_enableTooltipIcon
|
|
341
|
+
);
|
|
342
|
+
return /* @__PURE__ */ react_exports.createElement(
|
|
343
|
+
StyledPopover,
|
|
344
|
+
{
|
|
345
|
+
open,
|
|
346
|
+
animation: false,
|
|
347
|
+
anchor,
|
|
348
|
+
"data-test": "map-marker-tooltip",
|
|
349
|
+
defaultPlacement: "above"
|
|
350
|
+
},
|
|
351
|
+
/* @__PURE__ */ react_exports.createElement(StyledTable, null, tooltipHeader && /* @__PURE__ */ react_exports.createElement(StyledTooltipHeader, { "data-test": "tooltip-header" }, /* @__PURE__ */ react_exports.createElement("tr", null, /* @__PURE__ */ react_exports.createElement("th", { colSpan: 2 }, /* @__PURE__ */ react_exports.createElement("span", { "data-test": "tooltip-header-value" }, tooltipHeader)))), /* @__PURE__ */ react_exports.createElement("tbody", null, areaId && areaValue && /* @__PURE__ */ react_exports.createElement("tr", null, /* @__PURE__ */ react_exports.createElement(StyledTitleColumn, { "data-test": "area-id" }, areaId), /* @__PURE__ */ react_exports.createElement(StyledValueColumn, { "data-test": "area-value" }, areaValue)), Boolean(showCoordinates && latitude) && /* @__PURE__ */ react_exports.createElement("tr", null, /* @__PURE__ */ react_exports.createElement(StyledTitleColumn, null, (0, i18n_exports._)("Latitude")), /* @__PURE__ */ react_exports.createElement(StyledValueColumn, { "data-test": "latitude" }, convertDegToDMS(latitude, "latitude"))), Boolean(showCoordinates && longitude) && /* @__PURE__ */ react_exports.createElement("tr", null, /* @__PURE__ */ react_exports.createElement(StyledTitleColumn, null, (0, i18n_exports._)("Longitude")), /* @__PURE__ */ react_exports.createElement(StyledValueColumn, { "data-test": "longitude" }, convertDegToDMS(longitude, "longitude"))), additionalFields.filter(({ value }) => value && String(value) !== "0").map(({ name, value, color, icon }, index) => /* @__PURE__ */ react_exports.createElement("tr", { key: String(index) }, /* @__PURE__ */ react_exports.createElement(StyledTitleColumn, { "data-test": "field-title" }, color ? /* @__PURE__ */ react_exports.createElement(StyledColorBlock, { "data-test": "field-color", color }) : null, /* @__PURE__ */ react_exports.createElement(StyledFieldLabel, null, name, isTooltipIconFlagEnabled && icon && ((0, iconUtils_exports.isRemoteIcon)(icon) || (0, iconUtils_exports.isDataURI)(icon)) ? /* @__PURE__ */ react_exports.createElement(StyledIconWrapper, { "data-test": "field-icon" }, /* @__PURE__ */ react_exports.createElement(RemoteIcon_default, { iconURL: icon, width: 16, height: 16 })) : null)), /* @__PURE__ */ react_exports.createElement(StyledValueColumn, { "data-test": "field-value" }, value)))))
|
|
352
|
+
);
|
|
353
|
+
};
|
|
285
354
|
var Tooltip_default = Tooltip;
|
|
286
355
|
|
|
287
356
|
// src/Map/PureMap/MarkerWrapper.tsx
|
|
@@ -292,18 +361,22 @@ var MarkerWrapper = (_a) => {
|
|
|
292
361
|
areaId,
|
|
293
362
|
areaValue,
|
|
294
363
|
additionalFields = [],
|
|
364
|
+
tooltipHeader = null,
|
|
295
365
|
map,
|
|
296
366
|
isChoroplethTooltipOpen,
|
|
297
|
-
children
|
|
367
|
+
children,
|
|
368
|
+
showCoordinates = true
|
|
298
369
|
} = _b, otherProps = __objRest(_b, [
|
|
299
370
|
"longitude",
|
|
300
371
|
"latitude",
|
|
301
372
|
"areaId",
|
|
302
373
|
"areaValue",
|
|
303
374
|
"additionalFields",
|
|
375
|
+
"tooltipHeader",
|
|
304
376
|
"map",
|
|
305
377
|
"isChoroplethTooltipOpen",
|
|
306
|
-
"children"
|
|
378
|
+
"children",
|
|
379
|
+
"showCoordinates"
|
|
307
380
|
]);
|
|
308
381
|
const container = react_exports.useRef();
|
|
309
382
|
const marker = react_exports.useRef();
|
|
@@ -334,6 +407,8 @@ var MarkerWrapper = (_a) => {
|
|
|
334
407
|
}
|
|
335
408
|
}, [latitude, longitude, map]);
|
|
336
409
|
react_exports.useEffect(() => cleanupMarker, []);
|
|
410
|
+
const filteredAdditionalFields = additionalFields.filter(({ value }) => value && String(value) !== "0");
|
|
411
|
+
const showTooltip = showCoordinates || filteredAdditionalFields.length || areaId && areaValue;
|
|
337
412
|
return /* @__PURE__ */ react_exports.createElement("div", { style: { visibility: isChoroplethTooltip() ? "hidden" : "visible" } }, /* @__PURE__ */ react_exports.createElement(
|
|
338
413
|
"div",
|
|
339
414
|
__spreadValues({
|
|
@@ -346,7 +421,7 @@ var MarkerWrapper = (_a) => {
|
|
|
346
421
|
onBlur: closeTooltip
|
|
347
422
|
}, otherProps),
|
|
348
423
|
children
|
|
349
|
-
), /* @__PURE__ */ react_exports.createElement("div", null, /* @__PURE__ */ react_exports.createElement(
|
|
424
|
+
), /* @__PURE__ */ react_exports.createElement("div", null, showTooltip && /* @__PURE__ */ react_exports.createElement(
|
|
350
425
|
Tooltip_default,
|
|
351
426
|
{
|
|
352
427
|
open: isChoroplethTooltip() ? isChoroplethTooltipOpen : isTooltipOpen,
|
|
@@ -355,7 +430,9 @@ var MarkerWrapper = (_a) => {
|
|
|
355
430
|
longitude: isChoroplethTooltip() ? null : longitude,
|
|
356
431
|
areaId,
|
|
357
432
|
areaValue,
|
|
358
|
-
additionalFields
|
|
433
|
+
additionalFields,
|
|
434
|
+
showCoordinates,
|
|
435
|
+
tooltipHeader
|
|
359
436
|
}
|
|
360
437
|
)));
|
|
361
438
|
};
|
|
@@ -363,6 +440,7 @@ var MarkerWrapper_default = MarkerWrapper;
|
|
|
363
440
|
|
|
364
441
|
// src/Map/PureMap/BubbleLayer.tsx
|
|
365
442
|
var GEO_LAT_AND_LONG_FIELD = ["_geo_long_field", "_geo_lat_field"];
|
|
443
|
+
var ICON_DISPLAY_CUTOFF = 16;
|
|
366
444
|
var PieSegment = react_exports.memo(
|
|
367
445
|
({
|
|
368
446
|
start,
|
|
@@ -431,9 +509,16 @@ var Bubble = react_exports.memo(
|
|
|
431
509
|
longitude,
|
|
432
510
|
bubbleSize,
|
|
433
511
|
additionalFields = [],
|
|
512
|
+
tooltipHeader = null,
|
|
434
513
|
map,
|
|
435
|
-
handleMapClick
|
|
514
|
+
handleMapClick,
|
|
515
|
+
icon,
|
|
516
|
+
showCoordinates
|
|
436
517
|
}) => {
|
|
518
|
+
const featureFlagContext = react_exports.useContext(FeatureFlagContext_default);
|
|
519
|
+
const isBubbleMapIconFlagEnabled = Boolean(
|
|
520
|
+
featureFlagContext && featureFlagContext.visualizations_enableBubbleMapIcon
|
|
521
|
+
);
|
|
437
522
|
const onBubbleClick = react_exports.useCallback(
|
|
438
523
|
(e, name, value) => {
|
|
439
524
|
handleMapClick(e, name, value);
|
|
@@ -441,21 +526,20 @@ var Bubble = react_exports.memo(
|
|
|
441
526
|
},
|
|
442
527
|
[handleMapClick]
|
|
443
528
|
);
|
|
529
|
+
const allZeros = originalValues.every((v) => v === 0);
|
|
530
|
+
const values = originalValues.map((v) => v > 0 ? v : 0);
|
|
531
|
+
const total = values.reduce((totalValue, v) => totalValue + v, 0);
|
|
532
|
+
const radius = matchBubbleSize(valueRange, total);
|
|
444
533
|
const bubble = react_exports.useMemo(() => {
|
|
445
|
-
|
|
446
|
-
if (allZeros || !originalValues.length) {
|
|
447
|
-
return null;
|
|
448
|
-
}
|
|
449
|
-
const values = originalValues.map((v) => v > 0 ? v : 0);
|
|
534
|
+
if (allZeros || !originalValues.length) return null;
|
|
450
535
|
const offsets = [];
|
|
451
|
-
let
|
|
536
|
+
let runningTotal = 0;
|
|
452
537
|
values.forEach((count) => {
|
|
453
|
-
offsets.push(
|
|
454
|
-
|
|
538
|
+
offsets.push(runningTotal);
|
|
539
|
+
runningTotal += count;
|
|
455
540
|
});
|
|
456
|
-
const radius = matchBubbleSize(valueRange, total);
|
|
457
541
|
const width = radius * 2;
|
|
458
|
-
return /* @__PURE__ */ react_exports.createElement("svg", { width, height: width, viewBox: `-3 -3 ${width + 6} ${width + 6}` }, isPie
|
|
542
|
+
return /* @__PURE__ */ react_exports.createElement("svg", { width, height: width, viewBox: `-3 -3 ${width + 6} ${width + 6}` }, isPie && /* @__PURE__ */ react_exports.createElement(
|
|
459
543
|
"circle",
|
|
460
544
|
{
|
|
461
545
|
cx: radius,
|
|
@@ -466,7 +550,7 @@ var Bubble = react_exports.memo(
|
|
|
466
550
|
stroke: themeColor,
|
|
467
551
|
strokeOpacity: 0.3
|
|
468
552
|
}
|
|
469
|
-
)
|
|
553
|
+
), values.map((v, i) => /* @__PURE__ */ react_exports.createElement(
|
|
470
554
|
PieSegment,
|
|
471
555
|
{
|
|
472
556
|
key: String(i),
|
|
@@ -479,7 +563,18 @@ var Bubble = react_exports.memo(
|
|
|
479
563
|
handleBubbleClick: onBubbleClick
|
|
480
564
|
}
|
|
481
565
|
)));
|
|
482
|
-
}, [
|
|
566
|
+
}, [
|
|
567
|
+
bubbleSize,
|
|
568
|
+
colors,
|
|
569
|
+
isPie,
|
|
570
|
+
onBubbleClick,
|
|
571
|
+
originalValues,
|
|
572
|
+
themeColor,
|
|
573
|
+
allZeros,
|
|
574
|
+
radius,
|
|
575
|
+
total,
|
|
576
|
+
values
|
|
577
|
+
]);
|
|
483
578
|
if (!bubble) {
|
|
484
579
|
return null;
|
|
485
580
|
}
|
|
@@ -489,10 +584,26 @@ var Bubble = react_exports.memo(
|
|
|
489
584
|
longitude,
|
|
490
585
|
latitude,
|
|
491
586
|
additionalFields: [...bubbleSize, ...additionalFields],
|
|
587
|
+
tooltipHeader,
|
|
492
588
|
map,
|
|
493
|
-
"data-test-type": "bubble"
|
|
589
|
+
"data-test-type": "bubble",
|
|
590
|
+
showCoordinates
|
|
494
591
|
},
|
|
495
|
-
bubble
|
|
592
|
+
bubble,
|
|
593
|
+
isBubbleMapIconFlagEnabled && radius >= ICON_DISPLAY_CUTOFF && icon && ((0, iconUtils_exports.isRemoteIcon)(icon) || (0, iconUtils_exports.isDataURI)(icon)) && /* @__PURE__ */ react_exports.createElement(
|
|
594
|
+
"div",
|
|
595
|
+
{
|
|
596
|
+
"data-test": "bubble-icon-wrapper",
|
|
597
|
+
style: {
|
|
598
|
+
position: "absolute",
|
|
599
|
+
top: `${radius}px`,
|
|
600
|
+
left: `${radius}px`,
|
|
601
|
+
transform: "translate(-50%, -50%)",
|
|
602
|
+
pointerEvents: "none"
|
|
603
|
+
}
|
|
604
|
+
},
|
|
605
|
+
/* @__PURE__ */ react_exports.createElement(RemoteIcon_default, { iconURL: icon, width: radius * 0.8, height: radius * 0.8 })
|
|
606
|
+
)
|
|
496
607
|
);
|
|
497
608
|
}
|
|
498
609
|
);
|
|
@@ -512,7 +623,17 @@ var columnsNullToZeros = (config, dataSources, options) => {
|
|
|
512
623
|
if (((_b = (_a = mergedOptions.layers) == null ? void 0 : _a[0]) == null ? void 0 : _b.type) === "bubble") {
|
|
513
624
|
const latitudeField = (0, dsl_exports.getFieldsFromDSL)(mergedOptions.layers[0].latitude, dataSources)[0] || "";
|
|
514
625
|
const longitudeField = (0, dsl_exports.getFieldsFromDSL)(mergedOptions.layers[0].longitude, dataSources)[0] || "";
|
|
515
|
-
const
|
|
626
|
+
const stringsFields = (0, dsl_exports.getFieldsFromDSL)("> primary | frameBySeriesTypes('string')", dataSources);
|
|
627
|
+
const excludedFields = Array.from(
|
|
628
|
+
/* @__PURE__ */ new Set([
|
|
629
|
+
latitudeField,
|
|
630
|
+
longitudeField,
|
|
631
|
+
"geobin",
|
|
632
|
+
"name",
|
|
633
|
+
...stringsFields,
|
|
634
|
+
...GEO_LAT_AND_LONG_FIELD
|
|
635
|
+
])
|
|
636
|
+
);
|
|
516
637
|
const indicesToEvaluate = new Set(
|
|
517
638
|
fields.reduce((arr, e, i) => {
|
|
518
639
|
const field = typeof e === "string" ? e : e.name.toString();
|