UNPKG

@gooddata/react-components

Version:

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

57 lines 2.68 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); // (C) 2007-2019 GoodData Corporation var typings_1 = require("@gooddata/typings"); var get = require("lodash/get"); var negate = require("lodash/negate"); var DataLayer_1 = require("@gooddata/gooddata-js/lib/DataLayer"); function isDerivedMeasure(measure) { return (typings_1.AFM.isPreviousPeriodMeasureDefinition(measure.definition) || typings_1.AFM.isPopMeasureDefinition(measure.definition)); } exports.isDerivedMeasure = isDerivedMeasure; function getMasterMeasureLocalIdentifier(measure) { var measureDefinition = get(measure, ["definition", "popMeasure"]) || get(measure, ["definition", "previousPeriodMeasure"]); return get(measureDefinition, ["measureIdentifier"]); } exports.getMasterMeasureLocalIdentifier = getMasterMeasureLocalIdentifier; function findMeasureByLocalIdentifier(afm, localIdentifier) { return (afm.measures || []).find(function (m) { return m.localIdentifier === localIdentifier; }); } exports.findMeasureByLocalIdentifier = findMeasureByLocalIdentifier; function getMasterMeasureObjQualifier(afm, localIdentifier) { var measure = findMeasureByLocalIdentifier(afm, localIdentifier); if (measure) { var masterMeasureIdentifier = getMasterMeasureLocalIdentifier(measure); if (masterMeasureIdentifier) { measure = findMeasureByLocalIdentifier(afm, masterMeasureIdentifier); } if (!measure) { return null; } return { uri: get(measure, ["definition", "measure", "item", "uri"]), identifier: get(measure, ["definition", "measure", "item", "identifier"]), }; } return null; } exports.getMasterMeasureObjQualifier = getMasterMeasureObjQualifier; var getDateFilter = function (filters) { return filters.find(DataLayer_1.AfmUtils.isDateFilter); }; var getAttributeFilters = function (filters) { if (filters === void 0) { filters = []; } return filters.filter(DataLayer_1.AfmUtils.isAttributeFilter).filter(negate(DataLayer_1.AfmUtils.isAttributeFilterSelectAll)); }; var getMeasureValueFilters = function (filters) { if (filters === void 0) { filters = []; } return filters.filter(typings_1.AFM.isMeasureValueFilter); }; exports.mergeFiltersToAfm = function (afm, additionalFilters) { var attributeFilters = getAttributeFilters(additionalFilters); var dateFilter = getDateFilter(additionalFilters); var measureValueFilters = getMeasureValueFilters(additionalFilters); return DataLayer_1.AfmUtils.appendFilters(afm, attributeFilters, dateFilter, measureValueFilters); }; //# sourceMappingURL=afmHelper.js.map