@phemium-costaisa/amazon-quicksight-embedding-sdk
Version:
JS SDK for embedding Amazon QuickSight
67 lines (66 loc) • 2.78 kB
JavaScript
;
// Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
exports.__esModule = true;
exports.getExperienceIdentifier = exports.buildInternalExperienceInfo = void 0;
var visual_1 = require("./visual");
var console_1 = require("./console");
var context_1 = require("./context");
var control_1 = require("./control");
var dashboard_1 = require("./dashboard");
var qsearch_1 = require("./qsearch");
var getExperienceIdentifier = function (experience) {
if (!experience) {
throw new Error('No experience provided');
}
if ((0, visual_1.isVisualExperience)(experience)) {
return (0, visual_1.getVisualExperienceIdentifier)(experience);
}
else if ((0, dashboard_1.isDashboardExperience)(experience)) {
return (0, dashboard_1.getDashboardExperienceIdentifier)(experience);
}
else if ((0, console_1.isConsoleExperience)(experience)) {
return (0, console_1.getConsoleExperienceIdentifier)(experience);
}
else if ((0, context_1.isContextExperience)(experience)) {
return (0, context_1.getContextExperienceIdentifier)(experience);
}
else if ((0, qsearch_1.isQSearchExperience)(experience)) {
return (0, qsearch_1.getQSearchExperienceIdentifier)(experience);
}
else if ((0, control_1.isControlExperience)(experience)) {
return (0, control_1.getControlExperienceIdentifier)(experience);
}
throw new Error('Cannot create experience identifier for the experience');
};
exports.getExperienceIdentifier = getExperienceIdentifier;
var buildInternalExperienceInfo = function (experience, allExperienceIdentifiers, contextId, getExperienceIdentifier) {
var discriminator = -1;
var internalExperience;
var experienceIdentifier;
do {
discriminator++;
internalExperience = __assign(__assign({}, experience), { contextId: contextId, discriminator: discriminator });
experienceIdentifier = getExperienceIdentifier(internalExperience);
} while (allExperienceIdentifiers.has(experienceIdentifier));
if (!experienceIdentifier) {
return;
}
allExperienceIdentifiers.add(experienceIdentifier);
return {
experienceIdentifier: experienceIdentifier,
internalExperience: internalExperience
};
};
exports.buildInternalExperienceInfo = buildInternalExperienceInfo;