// (C) 2019 GoodData Corporation import { ExecuteAFM as AFM, VisualizationObject } from "@gooddata/typings"; export const METRIC_ID_URI = "/gdc/md/project/obj/100"; export const METRIC_ID_URI_2 = "/gdc/md/project/obj/101"; export const ATTRIBUTE_DISPLAY_FORM_URI = "/gdc/md/project/obj/1"; export const ATTRIBUTE_DISPLAY_FORM_URI_2 = "/gdc/md/project/obj/2"; const afmAttributes: AFM.IAttribute[] = [ { localIdentifier: "a1", displayForm: { uri: ATTRIBUTE_DISPLAY_FORM_URI, }, }, { localIdentifier: "a2", displayForm: { uri: ATTRIBUTE_DISPLAY_FORM_URI_2, }, }, ]; const afmMeasures: AFM.IMeasure[] = [ { localIdentifier: "m1", alias: "SUM of Measure M1", definition: { measure: { aggregation: "sum", item: { uri: METRIC_ID_URI, }, }, }, }, { localIdentifier: "m2", alias: "COUNT of Measure M2", definition: { measure: { aggregation: "count", item: { uri: METRIC_ID_URI_2, }, }, }, format: "#,##0", }, ]; const afmNativeTotals: AFM.INativeTotalItem[] = [ { measureIdentifier: "m1", attributeIdentifiers: [], }, { measureIdentifier: "m2", attributeIdentifiers: [], }, ]; const measureBucketItems: VisualizationObject.BucketItem[] = [ { measure: { localIdentifier: "m1", alias: "SUM of Measure M1", definition: { measureDefinition: { item: { uri: METRIC_ID_URI, }, aggregation: "sum", }, }, }, }, { measure: { localIdentifier: "m2", alias: "COUNT of Measure M2", definition: { measureDefinition: { item: { uri: METRIC_ID_URI_2, }, aggregation: "count", }, }, }, }, ]; const attributeBucketItems: VisualizationObject.BucketItem[] = [ { visualizationAttribute: { localIdentifier: "a1", displayForm: { uri: ATTRIBUTE_DISPLAY_FORM_URI, }, }, }, { visualizationAttribute: { localIdentifier: "a2", displayForm: { uri: ATTRIBUTE_DISPLAY_FORM_URI_2, }, }, }, ]; const totalsInBucket: VisualizationObject.IVisualizationTotal[] = [ { measureIdentifier: "m1", type: "nat", attributeIdentifier: "a1", }, { measureIdentifier: "m2", type: "nat", attributeIdentifier: "a1", }, ]; export const executionWithoutTotals: AFM.IAfm = { attributes: afmAttributes, measures: afmMeasures, }; export const executionWithTotals: AFM.IAfm = { attributes: afmAttributes, measures: afmMeasures, nativeTotals: afmNativeTotals, }; export const tableWithoutTotals: VisualizationObject.IVisualizationObjectContent = { visualizationClass: { uri: "visClassUri", }, buckets: [ { localIdentifier: "measures", items: measureBucketItems, }, { localIdentifier: "attributes", items: attributeBucketItems, }, ], }; export const tableWithTotals: VisualizationObject.IVisualizationObjectContent = { visualizationClass: { uri: "visClassUri", }, buckets: [ { localIdentifier: "measures", items: measureBucketItems, totals: totalsInBucket, }, { localIdentifier: "attributes", items: attributeBucketItems, }, ], };