UNPKG

@gooddata/react-components

Version:

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

62 lines 3.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); // (C) 2019 GoodData Corporation var cloneDeep = require("lodash/cloneDeep"); var get = require("lodash/get"); var set = require("lodash/set"); var forEach = require("lodash/forEach"); var BucketNames = require("../../../constants/bucketNames"); var uiConfig_1 = require("../../constants/uiConfig"); var bucket_1 = require("../../constants/bucket"); var bucketRules_1 = require("../bucketRules"); var bucketHelper_1 = require("../bucketHelper"); var translations_1 = require("../translations"); var treemapMeasuresIcon = require("../../assets/treemap/bucket-title-measures.svg"); var treemapViewIcon = require("../../assets/treemap/bucket-title-view.svg"); var treemapSegmentIcon = require("../../assets/treemap/bucket-title-segment.svg"); function setTreemapBucketWarningMessages(referencePoint, intl) { var buckets = get(referencePoint, bucket_1.BUCKETS); var updatedUiConfig = cloneDeep(get(referencePoint, uiConfig_1.UICONFIG)); forEach(buckets, function (bucket) { var localIdentifier = get(bucket, "localIdentifier", ""); var bucketUiConfig = get(updatedUiConfig, [bucket_1.BUCKETS, localIdentifier]); // skip disabled buckets if (!get(bucketUiConfig, "enabled", false)) { return; } if (!get(bucketUiConfig, "canAddItems")) { var warningMessageId = void 0; if (bucket.localIdentifier === BucketNames.MEASURES) { warningMessageId = "dashboard.bucket.metric_view_by_warning"; } if (bucket.localIdentifier === BucketNames.VIEW) { warningMessageId = "dashboard.bucket.category_category_by_warning"; } if (bucket.localIdentifier === BucketNames.SEGMENT) { warningMessageId = "dashboard.bucket.category_segment_by_warning"; } if (warningMessageId) { var warningMessage = translations_1.getTranslation(warningMessageId, intl); set(updatedUiConfig, [bucket_1.BUCKETS, localIdentifier, "warningMessage"], warningMessage); } } }); return updatedUiConfig; } function setTreemapUiConfig(referencePoint, intl, visualizationType) { var referencePointConfigured = cloneDeep(referencePoint); var buckets = get(referencePointConfigured, bucket_1.BUCKETS, []); var measuresCanAddItems = !bucketRules_1.hasOneCategory(buckets) || bucketRules_1.hasNoMeasures(buckets); var viewCanAddItems = !bucketRules_1.hasMoreThanOneMasterMeasure(buckets, BucketNames.MEASURES); set(referencePointConfigured, uiConfig_1.UICONFIG, bucketHelper_1.setBucketTitles(referencePoint, visualizationType, intl)); set(referencePointConfigured, [uiConfig_1.UICONFIG, bucket_1.BUCKETS, BucketNames.MEASURES, "canAddItems"], measuresCanAddItems); set(referencePointConfigured, [uiConfig_1.UICONFIG, bucket_1.BUCKETS, BucketNames.VIEW, "canAddItems"], viewCanAddItems); set(referencePointConfigured, [uiConfig_1.UICONFIG, bucket_1.BUCKETS, BucketNames.SEGMENT, "canAddItems"], true); set(referencePointConfigured, uiConfig_1.UICONFIG, setTreemapBucketWarningMessages(referencePointConfigured, intl)); set(referencePointConfigured, [uiConfig_1.UICONFIG, bucket_1.BUCKETS, BucketNames.MEASURES, "icon"], treemapMeasuresIcon); set(referencePointConfigured, [uiConfig_1.UICONFIG, bucket_1.BUCKETS, BucketNames.VIEW, "icon"], treemapViewIcon); set(referencePointConfigured, [uiConfig_1.UICONFIG, bucket_1.BUCKETS, BucketNames.SEGMENT, "icon"], treemapSegmentIcon); return referencePointConfigured; } exports.setTreemapUiConfig = setTreemapUiConfig; //# sourceMappingURL=treemapUiConfigHelper.js.map