UNPKG

@gooddata/react-components

Version:

GoodData.UI - A powerful JavaScript library for building analytical applications

40 lines 1.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); // (C) 2020 GoodData Corporation var uniqBy = require("lodash/uniqBy"); var color_1 = require("../../utils/color"); function isValidMappedColor(colorItem, colorPalette) { if (!colorItem) { return false; } if (colorItem.type === "guid") { return isColorItemInPalette(colorItem, colorPalette); } return true; } exports.isValidMappedColor = isValidMappedColor; function getAtributeColorAssignment(attribute, colorPalette, colorMapping, executionResponse, afm) { var currentColorPaletteIndex = 0; var uniqItems = uniqBy(attribute.items, "attributeHeaderItem.uri"); return uniqItems.map(function (headerItem) { var mappedColor = color_1.getColorFromMapping(headerItem, colorMapping, executionResponse, afm); var color = isValidMappedColor(mappedColor, colorPalette) ? mappedColor : { type: "guid", value: colorPalette[currentColorPaletteIndex % colorPalette.length].guid, }; currentColorPaletteIndex++; return { headerItem: headerItem, color: color, }; }); } exports.getAtributeColorAssignment = getAtributeColorAssignment; function isColorItemInPalette(colorItem, colorPalette) { return colorPalette.some(function (paletteItem) { return colorItem.type === "guid" && colorItem.value === paletteItem.guid; }); } //# sourceMappingURL=utils.js.map