@phemium-costaisa/amazon-quicksight-embedding-sdk
Version:
JS SDK for embedding Amazon QuickSight
37 lines (36 loc) • 1.82 kB
JavaScript
;
// Copyright 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
exports.__esModule = true;
exports.isVisualExperience = exports.getVisualExperienceIdentifier = exports.extractVisualExperienceFromUrl = exports.createVisualFrame = void 0;
var enums_1 = require("../../enums");
var createVisualFrame_1 = __importDefault(require("./createVisualFrame"));
exports.createVisualFrame = createVisualFrame_1["default"];
var isVisualExperience = function (experience) {
return !!experience && experience.experienceType === enums_1.ExperienceType.VISUAL;
};
exports.isVisualExperience = isVisualExperience;
var extractVisualExperienceFromUrl = function (url) {
var matches = /^https:\/\/[^/]+\/embed\/[^/]+\/dashboards\/([\w-]+)\/sheets\/([\w-]+)\/visuals\/([\w-]+)(\?|$)/i.exec(url) || [];
if (matches.length < 5) {
return;
}
return {
experienceType: enums_1.ExperienceType.VISUAL,
dashboardId: matches[1],
sheetId: matches[2],
visualId: matches[3]
};
};
exports.extractVisualExperienceFromUrl = extractVisualExperienceFromUrl;
var getVisualExperienceIdentifier = function (experience) {
if (!isVisualExperience(experience)) {
return;
}
var contextId = experience.contextId, experienceType = experience.experienceType, dashboardId = experience.dashboardId, sheetId = experience.sheetId, visualId = experience.visualId, discriminator = experience.discriminator;
return [contextId, experienceType, dashboardId, sheetId, visualId, discriminator].filter(Boolean).join('-');
};
exports.getVisualExperienceIdentifier = getVisualExperienceIdentifier;