// (C) 2007-2019 GoodData Corporation import { IFact } from "../../model/Fact"; import { ensureIdentifier } from "../helpers/objects"; import { webalize } from "../../utils/string"; import { getProjectId, IProject } from "../../model/Project"; import { objectUri, dataUri } from "../../route/routes"; import { ISchemaFact } from "../model/SchemaFact"; const createFactIdentifier = (fact: ISchemaFact) => `fact.${webalize(fact.title)}`; export function createFact(project: IProject, fact: ISchemaFact): IFact { const identifier = ensureIdentifier(fact, createFactIdentifier(fact)); return { content: { expr: [ { data: dataUri(getProjectId(project), identifier), type: "col", }, ], }, meta: { category: "fact", title: fact.title, identifier, uri: objectUri(getProjectId(project), identifier), tags: fact.tags, }, }; }