@thoughtspot/visual-embed-sdk
Version:
ThoughtSpot Embed SDK
71 lines • 1.76 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.getSourceDetail = exports.getSourceDetailQuery = void 0;
const graphql_request_1 = require("./graphql-request");
exports.getSourceDetailQuery = `
query GetSourceDetail($ids: [GUID!]!) {
getSourceDetailById(ids: $ids, type: LOGICAL_TABLE) {
id
name
description
authorName
authorDisplayName
isExternal
type
created
modified
columns {
id
name
author
authorDisplayName
description
dataType
type
modified
ownerName
owner
dataRecency
sources {
tableId
tableName
columnId
columnName
__typename
}
synonyms
cohortAnswerId
__typename
}
relationships
destinationRelationships
dataSourceId
__typename
}
}
`;
const sourceDetailCache = new Map();
/**
*
* @param thoughtSpotHost
* @param sourceId
*/
async function getSourceDetail(thoughtSpotHost, sourceId) {
if (sourceDetailCache.get(sourceId)) {
return sourceDetailCache.get(sourceId);
}
const details = await (0, graphql_request_1.graphqlQuery)({
query: exports.getSourceDetailQuery,
variables: {
ids: [sourceId],
},
thoughtSpotHost,
});
const souceDetails = details[0];
if (souceDetails) {
sourceDetailCache.set(sourceId, souceDetails);
}
return souceDetails;
}
exports.getSourceDetail = getSourceDetail;
//# sourceMappingURL=sourceService.js.map
;