UNPKG

@gooddata/react-components

Version:

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

2,011 lines (1,920 loc) • 55.3 kB
// (C) 2019-2020 GoodData Corporation import { IReferencePoint, IBucketItem, IFilters, IAttributeFilter, IDateFilter, IFiltersBucketItem, IMeasureValueFilter, } from "../interfaces/Visualization"; import { OverTimeComparisonTypes } from "../../interfaces/OverTimeComparison"; import { DATE_DATASET_ATTRIBUTE, DATE, GRANULARITY } from "../constants/bucket"; import { ColumnWidthItem } from "../../interfaces/PivotTable"; import { AFM } from "@gooddata/typings"; export const masterMeasureItems: IBucketItem[] = [ { localIdentifier: "m1", type: "metric", aggregation: null, attribute: "aazb6kroa3iC", showInPercent: null, showOnSecondaryAxis: null, }, { localIdentifier: "m2", type: "metric", aggregation: null, attribute: "af2Ewj9Re2vK", showInPercent: null, showOnSecondaryAxis: null, }, { localIdentifier: "m3", type: "metric", aggregation: null, attribute: "dt.opportunitysnapshot.snapshotdate", showInPercent: null, showOnSecondaryAxis: true, }, { localIdentifier: "m4", type: "metric", aggregation: null, attribute: "acfWntEMcom0", showInPercent: null, showOnSecondaryAxis: true, }, ]; export const derivedMeasureItems: IBucketItem[] = [ { localIdentifier: "m1_pop", type: "metric", aggregation: null, attribute: "aazb6kroa3iC", showInPercent: null, showOnSecondaryAxis: null, masterLocalIdentifier: "m1", overTimeComparisonType: OverTimeComparisonTypes.SAME_PERIOD_PREVIOUS_YEAR, }, { localIdentifier: "m2_pop", type: "metric", aggregation: null, attribute: "af2Ewj9Re2vK", showInPercent: null, showOnSecondaryAxis: null, masterLocalIdentifier: "m2", overTimeComparisonType: OverTimeComparisonTypes.PREVIOUS_PERIOD, }, { localIdentifier: "m3_pop", type: "metric", aggregation: null, attribute: "dt.opportunitysnapshot.snapshotdate", showInPercent: null, showOnSecondaryAxis: true, masterLocalIdentifier: "m3", overTimeComparisonType: OverTimeComparisonTypes.SAME_PERIOD_PREVIOUS_YEAR, }, { localIdentifier: "m4_pop", type: "metric", aggregation: null, attribute: "acfWntEMcom0", showInPercent: null, showOnSecondaryAxis: true, masterLocalIdentifier: "m4", overTimeComparisonType: OverTimeComparisonTypes.PREVIOUS_PERIOD, }, { localIdentifier: "m5_pop", type: "metric", aggregation: null, attribute: "acfWntEMcom0", showInPercent: null, showOnSecondaryAxis: null, masterLocalIdentifier: "m4", overTimeComparisonType: OverTimeComparisonTypes.SAME_PERIOD_PREVIOUS_YEAR, }, ]; export const arithmeticMeasureItems: IBucketItem[] = [ { localIdentifier: "am1", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m1", "m2"], }, { localIdentifier: "am2", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m1", "am1"], }, { localIdentifier: "am3", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m1", "m1"], }, { localIdentifier: "am4", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m1_pop", "m1"], }, { localIdentifier: "am5", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m3", "m4"], }, { localIdentifier: "am6", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m2_pop", "m1"], }, { localIdentifier: "am7", type: "metric", aggregation: null, attribute: null, showInPercent: null, showOnSecondaryAxis: null, operator: "sum", operandLocalIdentifiers: ["m1", "m3"], }, ]; export const masterMeasuresWithPercentage: IBucketItem[] = masterMeasureItems.map((measure: IBucketItem) => ({ ...measure, showInPercent: true, })); export const attributeFilter: IAttributeFilter = { attribute: "some.attribute", isInverted: false, selectedElements: [], totalElementsCount: 10, }; export const dateFilter: IDateFilter = { attribute: DATE_DATASET_ATTRIBUTE, overTimeComparisonType: OverTimeComparisonTypes.NOTHING, interval: { granularity: "GDC.year", interval: [-1, 0], name: "name", type: "absolute", }, }; export const measureValueFilter: IMeasureValueFilter = { measureLocalIdentifier: masterMeasureItems[0].localIdentifier, condition: { comparison: { operator: "GREATER_THAN", value: 100, }, }, }; export const dateFilterSamePeriodPreviousYear: IDateFilter = { attribute: DATE_DATASET_ATTRIBUTE, overTimeComparisonType: OverTimeComparisonTypes.SAME_PERIOD_PREVIOUS_YEAR, interval: { granularity: "GDC.year", interval: [-10, -5], name: "interval", type: "absolute", }, }; export const dateFilterBucketAllTime: IFilters = { localIdentifier: "filters", items: [ { localIdentifier: "f1", type: "date", attribute: "attr.datedataset", filters: [ { overTimeComparisonType: "same_period_previous_year", attribute: "attr.datedataset", interval: { name: "all_time", granularity: "GDC.time.year", interval: [1, 3], type: "absolute", }, }, ], aggregation: null, }, ], }; export const samePeriodPrevYearFiltersBucket: IFilters = { localIdentifier: "filters", items: [ { localIdentifier: "f1", type: "date", attribute: "attr.datedataset", filters: [ { overTimeComparisonType: "same_period_previous_year", attribute: "attr.datedataset", interval: { name: "last_year", granularity: "GDC.time.year", interval: ["-1", "-1"], type: "absolute", }, }, ], aggregation: null, }, ], }; export const attributeFilterBucketItem: IFilters = { localIdentifier: "filters", items: [ { attribute: "attr.account.id", filters: [ { attribute: "attr.account.id", selectedElements: [], totalElementsCount: 10, isInverted: false, }, ], localIdentifier: "attr1", autoCreated: false, }, ], }; export const emptyReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const attributeItems: IBucketItem[] = [ { localIdentifier: "a1", type: "attribute", aggregation: null, attribute: "attr.owner.department", }, { localIdentifier: "a2", type: "attribute", aggregation: null, attribute: "attr.stage.iswon", }, { localIdentifier: "a3", type: "attribute", attribute: "attr.owner.region", }, ]; export const sliceByWeekBucketItem: IBucketItem = { localIdentifier: "date-week-attribute", type: DATE, attribute: DATE_DATASET_ATTRIBUTE, granularity: GRANULARITY.week, }; export const geoAttributeItems: IBucketItem[] = [ { localIdentifier: "a1", type: "attribute", aggregation: null, attribute: "attr.owner.country", locationDisplayFormUri: "/geo/attribute/displayform/uri/1", dfUri: "/geo/attribute/displayform/uri/2", }, { localIdentifier: "a2", type: "attribute", aggregation: null, attribute: "attr.owner.city", }, ]; export const geoAttributeFilters: IFiltersBucketItem[] = [ { localIdentifier: "a1", type: "attribute", aggregation: null, attribute: "attr.owner.country", filters: [ { attribute: "attr.owner.country", isInverted: false, totalElementsCount: 10, selectedElements: [ { title: "string", uri: "string", }, ], }, ], }, { localIdentifier: "a2", type: "attribute", aggregation: null, attribute: "attr.owner.city", filters: [ { attribute: "attr.owner.city", totalElementsCount: 10, isInverted: true, selectedElements: [ { title: "string", uri: "string", }, ], }, ], }, ]; export const attributeFilters: IFiltersBucketItem[] = [ { localIdentifier: "a1", type: "attribute", aggregation: null, attribute: "attr.owner.department", filters: [ { attribute: "attr.owner.department", isInverted: false, totalElementsCount: 10, selectedElements: [ { title: "string", uri: "string", }, ], }, ], }, { localIdentifier: "a2", type: "attribute", aggregation: null, attribute: "attr.stage.iswon", filters: [ { attribute: "attr.stage.iswon", totalElementsCount: 10, isInverted: true, selectedElements: [ { title: "string", uri: "string", }, ], }, ], }, { localIdentifier: "a3", type: "attribute", attribute: "attr.owner.region", filters: [ { attribute: "attr.owner.region", isInverted: true, totalElementsCount: 10, selectedElements: [], }, ], }, ]; export const dateItem: IBucketItem = { localIdentifier: "a1", type: "date", attribute: "attr.datedataset", aggregation: null, showInPercent: null, }; export const dateFilterItem: IBucketItem = { localIdentifier: "a1", type: "date", attribute: "attr.datedataset", aggregation: null, showInPercent: null, filters: [dateFilter], }; export const overTimeComparisonDateItem: IBucketItem = { aggregation: null, showInPercent: null, operator: null, operandLocalIdentifiers: null, granularity: null, masterLocalIdentifier: null, localIdentifier: "2fb4a818526f4ca18c926b1a11adc859", filters: [dateFilterSamePeriodPreviousYear], attribute: "attr.datedataset", }; const defaultSortItem: AFM.IAttributeSortItem = { attributeSortItem: { attributeIdentifier: "a1", direction: "asc", }, }; const columnWidths: ColumnWidthItem[] = [ { attributeColumnWidthItem: { attributeIdentifier: "a1", width: { value: 100 }, }, }, ]; export const secondaryMeasuresAndAttributeReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [], }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(0, 3), }, { localIdentifier: "attribute", items: attributeItems.slice(0, 2), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 2), }, properties: { sortItems: [defaultSortItem], }, }; export const secondaryMeasureReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [], }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "attribute", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, properties: { sortItems: [defaultSortItem], }, }; export const measuresOnSecondaryAxisAndAttributeReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(2, 4), }, { localIdentifier: "attribute", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const secondaryAndTertiaryMeasuresWithTwoAttributesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [], }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "tertiary_measures", items: masterMeasureItems.slice(1, 2), }, { localIdentifier: "attribute", items: attributeItems.slice(0, 2), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 2), }, }; export const measuresAndDateReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "attribute", items: [dateItem], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const simpleStackedReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, { localIdentifier: "stack", items: attributeItems.slice(1, 2), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 2), }, properties: { sortItems: [defaultSortItem], controls: { columnWidths, test: "test", }, }, }; export const oneMetricReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const oneMeasureWithInvalidOverTimeComparisonRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [masterMeasureItems[0], derivedMeasureItems[0]], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const measureWithDerivedWithoutDateFilterRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [masterMeasureItems[0], derivedMeasureItems[0], arithmeticMeasureItems[3]], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const samePeriodPreviousYearRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [masterMeasureItems[0], derivedMeasureItems[0]], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: samePeriodPrevYearFiltersBucket, }; export const measureWithDerivedAndPercentageRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ masterMeasuresWithPercentage[0], { ...derivedMeasureItems[0], showInPercent: true, }, ], }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: samePeriodPrevYearFiltersBucket, }; export const multipleMeasuresWithPercentageRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasuresWithPercentage.slice(0, 2), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: samePeriodPrevYearFiltersBucket, }; export const multipleSecondaryMeasuresWithPercentageRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasuresWithPercentage.slice(2, 4), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: samePeriodPrevYearFiltersBucket, }; export const attributeInStackReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [masterMeasureItems[0], masterMeasureItems[1]], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [attributeItems[0]], }, ], filters: { localIdentifier: "filters", items: [], }, }; const firstMeasureDerivedBuckets = [ { localIdentifier: "measures", items: [derivedMeasureItems[0], masterMeasureItems[0]], }, { localIdentifier: "view", items: [], }, ]; export const measureWithDerivedAsFirstRefPoint: IReferencePoint = { buckets: firstMeasureDerivedBuckets, filters: samePeriodPrevYearFiltersBucket, }; export const measureWithDerivedAsFirstWithStackRefPoint: IReferencePoint = { buckets: [ ...firstMeasureDerivedBuckets, { localIdentifier: "stack", items: attributeItems.slice(0, 1), }, ], filters: samePeriodPrevYearFiltersBucket, }; export const samePeriodPreviousYearAndAttributesRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [masterMeasureItems[0], derivedMeasureItems[0]], }, { localIdentifier: "attribute", items: [dateItem, ...attributeItems], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const measureWithDateAfterOtherAttributes: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [masterMeasureItems[0], derivedMeasureItems[0]], }, { localIdentifier: "attribute", items: [...attributeItems.slice(0, 2), dateItem], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const multipleMetricsAndCategoriesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems, }, { localIdentifier: "view", items: attributeItems, }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: attributeFilters, }, properties: { sortItems: [defaultSortItem], }, }; export const multipleMetricBucketsAndCategoryReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(1, 2), }, { localIdentifier: "tertiary_measures", items: masterMeasureItems.slice(2, 3), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 1), }, properties: { sortItems: [defaultSortItem], }, }; export const multipleMetricBucketsWithPercentageRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasuresWithPercentage.slice(0, 2), }, { localIdentifier: "secondary_measures", items: masterMeasuresWithPercentage.slice(2, 4), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 1), }, }; export const oneMetricAndManyCategoriesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems, }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: attributeFilters, }, }; export const oneMetricAndManyCategoriesAndOneStackRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems.slice(0, 2), }, { localIdentifier: "stack", items: attributeItems.slice(2, 3), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 3), }, }; export const dateAsFirstCategoryReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "attribute", items: [dateItem, attributeItems[1]], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const dateAsSecondViewByItemReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [attributeItems[1], dateItem], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const twoMeasuresAndDateAsSecondViewByItemReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 2), }, { localIdentifier: "view", items: [attributeItems[1], dateItem], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const dateAsSecondCategoryReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "attribute", items: attributeItems, }, ], filters: { localIdentifier: "filters", items: [], }, }; export const dateAsThirdCategoryReferencePointWithoutStack: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "attribute", items: [...attributeItems.slice(0, 2), dateItem], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const dateAsSecondCategoryReferencePointWithoutStack: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "attribute", items: [dateItem], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const multipleAttributesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems, }, { localIdentifier: "stack", items: attributeItems.slice(2, 3), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const oneMetricOneStackReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: attributeItems.slice(2, 3), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const multipleMetricsNoCategoriesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems, }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, properties: { sortItems: [ { measureSortItem: { direction: "desc", locators: [ { measureLocatorItem: { measureIdentifier: "m1", }, }, ], }, }, ], }, }; export const oneMetricNoCategoriesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const metricWithViewByDateAndDateFilterReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [dateItem], }, { localIdentifier: "stack", items: [], }, ], filters: dateFilterBucketAllTime, }; export const oneMetricAndCategoryAndStackReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, { localIdentifier: "stack", items: attributeItems.slice(1, 2), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const oneMetricAndGeoCategoryAndStackReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: geoAttributeItems.slice(0, 1), }, { localIdentifier: "stack", items: attributeItems.slice(1, 2), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const oneMetricAndLocationAndSegmentReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "location", items: geoAttributeItems.slice(0, 1), }, { localIdentifier: "segment", items: attributeItems.slice(1, 2), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const viewByWithDateAndGeoAttributeReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [...geoAttributeItems.slice(0, 1), dateItem], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const viewByWithNonGeoAndGeoAttributeReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [...attributeItems.slice(0, 1), ...geoAttributeItems.slice(0, 1)], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const sameCategoryAndStackReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, { localIdentifier: "stack", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(1, 2), }, properties: { sortItems: [defaultSortItem], }, }; export const oneStackAndNoCategoriesReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const overTimeComparisonRecommendationRefPoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [dateItem], }, ], filters: { localIdentifier: "filters", items: [ { localIdentifier: "f1", type: "date", attribute: "attr.datedataset", filters: [dateFilter], aggregation: null, }, ], }, }; export const comparisonAndTrendingRecommendationReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const percentRecommendationReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const TableRefencePointWithInvalidSort: IReferencePoint = { ...dateAsFirstCategoryReferencePoint, properties: { sortItems: [ { attributeSortItem: { attributeIdentifier: "unknown", direction: "asc", }, }, ], }, }; export const oneMetricAndManyCategoriesReferencePointWithInvalidSort: IReferencePoint = { ...oneMetricAndManyCategoriesReferencePoint, properties: { sortItems: [ { attributeSortItem: { attributeIdentifier: "unknown", direction: "asc", }, }, ], }, }; export const tableTotalsReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 2), }, { localIdentifier: "attribute", items: attributeItems.slice(0, 2), totals: [ { measureIdentifier: "m1", attributeIdentifier: "a1", type: "sum", alias: "Sum", }, { measureIdentifier: "m2", attributeIdentifier: "a1", type: "nat", }, ], }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 1), }, properties: { sortItems: [ { attributeSortItem: { attributeIdentifier: "a1", direction: "asc", }, }, ], }, }; export const tableGrandAndSubtotalsReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 2), }, { localIdentifier: "attribute", items: attributeItems.slice(0, 2), totals: [ { measureIdentifier: "m1", attributeIdentifier: "a2", type: "sum", alias: "Sum", }, { measureIdentifier: "m2", attributeIdentifier: "a1", type: "nat", }, ], }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 1), }, properties: { sortItems: [ { attributeSortItem: { attributeIdentifier: "a1", direction: "asc", }, }, ], }, }; export const wrongBucketsOrderReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "stack", items: attributeItems.slice(1, 2), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const bucketsJustStackReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: attributeItems.slice(1, 2), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const wrongBucketsOrderInLineReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "segment", items: attributeItems.slice(1, 2), }, { localIdentifier: "trend", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const twoMeasureBucketsReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 2), }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(2), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const threeMeasuresBucketsReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(1, 2), }, { localIdentifier: "tertiary_measures", items: masterMeasureItems.slice(2, 3), }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const multipleMetricsOneStackByReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems, }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, properties: { sortItems: [defaultSortItem], }, }; export const dateAttributeOnStackBucketReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [dateFilterItem], }, ], filters: { localIdentifier: "filters", items: [ { localIdentifier: "f1", type: "date", attribute: DATE_DATASET_ATTRIBUTE, filters: [dateFilter], aggregation: null, }, ], }, }; export const dateAttributeOnRowAndColumnReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "view", items: [ { ...dateItem, localIdentifier: "date1", }, ], }, { localIdentifier: "stack", items: [ { ...dateItem, localIdentifier: "date2", }, ], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const headlineWithMeasureInPrimaryBucket: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: masterMeasureItems.slice(0, 1), }, { localIdentifier: "secondary_measures", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, properties: { sortItems: [ { measureSortItem: { direction: "desc", locators: [ { measureLocatorItem: { measureIdentifier: "m1", }, }, ], }, }, ], }, }; export const headlineWithMeasureInSecondaryBucket: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [], }, { localIdentifier: "secondary_measures", items: masterMeasureItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, properties: { sortItems: [ { measureSortItem: { direction: "desc", locators: [ { measureLocatorItem: { measureIdentifier: "m1", }, }, ], }, }, ], }, }; export const twoAttributesWithFiltersReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "attribute", items: attributeItems.slice(0, 2), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 2), }, properties: { sortItems: [defaultSortItem], }, }; export const oneAttributeTwoFiltersReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "attribute", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: attributeFilters.slice(0, 2), }, properties: { sortItems: [defaultSortItem], }, }; export const firstMeasureArithmeticAlongWithAttributeReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [arithmeticMeasureItems[0], masterMeasureItems[0], masterMeasureItems[1]], }, { localIdentifier: "view", items: attributeItems.slice(0, 1), }, ], filters: { localIdentifier: "filters", items: [], }, }; export const firstMeasureArithmeticNoAttributeReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [arithmeticMeasureItems[0], masterMeasureItems[0], masterMeasureItems[1]], }, { localIdentifier: "view", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const mixOfMeasuresWithDerivedAndArithmeticFromDerivedAreaReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ masterMeasureItems[0], masterMeasureItems[1], derivedMeasureItems[0], derivedMeasureItems[1], arithmeticMeasureItems[0], arithmeticMeasureItems[1], arithmeticMeasureItems[3], arithmeticMeasureItems[5], ], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const mixOfMeasuresWithDerivedAndArithmeticFromDerivedBubbleReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ masterMeasureItems[0], masterMeasureItems[1], derivedMeasureItems[0], arithmeticMeasureItems[1], ], }, { localIdentifier: "secondary_measures", items: [derivedMeasureItems[1], arithmeticMeasureItems[0]], }, { localIdentifier: "tertiary_measures", items: [arithmeticMeasureItems[3], arithmeticMeasureItems[5]], }, { localIdentifier: "view", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const mixOfMeasuresWithDerivedAndArithmeticFromDerivedHeatMapReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ derivedMeasureItems[0], arithmeticMeasureItems[3], masterMeasureItems[0], masterMeasureItems[1], derivedMeasureItems[1], arithmeticMeasureItems[0], arithmeticMeasureItems[1], arithmeticMeasureItems[5], ], }, { localIdentifier: "view", items: [], }, { localIdentifier: "stack", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const mixOfMeasuresWithDerivedAndArithmeticFromDerivedPieReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ masterMeasureItems[0], masterMeasureItems[1], derivedMeasureItems[0], derivedMeasureItems[1], arithmeticMeasureItems[0], arithmeticMeasureItems[1], arithmeticMeasureItems[3], arithmeticMeasureItems[5], ], }, { localIdentifier: "view", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const mixOfMeasuresWithDerivedAndArithmeticFromDerivedScatterReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ derivedMeasureItems[0], arithmeticMeasureItems[3], masterMeasureItems[0], masterMeasureItems[1], ], }, { localIdentifier: "secondary_measures", items: [ derivedMeasureItems[1], arithmeticMeasureItems[0], arithmeticMeasureItems[1], arithmeticMeasureItems[5], ], }, { localIdentifier: "attribute", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const mixOfMeasuresWithDerivedAndArithmeticFromDerivedTreeMapReferencePoint: IReferencePoint = { buckets: [ { localIdentifier: "measures", items: [ masterMeasureItems[0], masterMeasureItems[1], derivedMeasureItems[0], derivedMeasureItems[1], arithmeticMeasureItems[0], arithmeticMeasureItems[1], arithmeticMeasureItems[3], arithmeticMeasureItems[5], ], }, { localIdentifier: "view", items: [], }, { localIdentifier: "segment", items: [], }, ], filters: { localIdentifier: "filters", items: [], }, }; export const stackMeasuresToPercentReferencePoint: IReferencePoint = { buckets: [ { loc