@gooddata/react-components
Version:
GoodData.UI - A powerful JavaScript library for building analytical applications
47 lines • 2.37 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
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 uiConfig_1 = require("../../constants/uiConfig");
var bucket_1 = require("../../constants/bucket");
var bucketRules_1 = require("../bucketRules");
var visualizationTypes_1 = require("../../../constants/visualizationTypes");
var BucketNames = require("../../../constants/bucketNames");
var bucketHelper_1 = require("../bucketHelper");
exports.getDefaultXirrUiConfig = function () { return cloneDeep(uiConfig_1.DEFAULT_XIRR_UICONFIG); };
exports.getCustomError = function (_a, formatMessage) {
var buckets = _a.buckets;
var measuresCount = bucketHelper_1.getItemsCount(buckets, BucketNames.MEASURES);
var attributeCount = bucketHelper_1.getItemsCount(buckets, BucketNames.ATTRIBUTE);
if (measuresCount === 0 || attributeCount === 0) {
return {
heading: formatMessage({ id: "dashboard.xirr.error.invalid_buckets.heading" }),
text: formatMessage({ id: "dashboard.xirr.error.invalid_buckets.text" }),
};
}
return undefined;
};
exports.getXirrUiConfig = function (referencePoint, intl) {
var uiConfig = bucketHelper_1.setBucketTitles(__assign({}, referencePoint, { uiConfig: exports.getDefaultXirrUiConfig() }), visualizationTypes_1.VisualizationTypes.XIRR, intl);
var buckets = get(referencePoint, bucket_1.BUCKETS, []);
var canAddMeasures = bucketRules_1.hasNoMeasures(buckets);
var canAddAttribute = bucketRules_1.hasNoAttribute(buckets);
set(uiConfig, [bucket_1.BUCKETS, BucketNames.MEASURES, "canAddItems"], canAddMeasures);
set(uiConfig, [bucket_1.BUCKETS, BucketNames.ATTRIBUTE, "canAddItems"], canAddAttribute);
uiConfig.customError = exports.getCustomError(referencePoint, intl.formatMessage);
return uiConfig;
};
//# sourceMappingURL=xirrUiConfigHelper.js.map