@thoughtspot/visual-embed-sdk 1.44.2 → 1.44.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/package.json +1 -1
- package/cjs/src/embed/base.d.ts +1 -1
- package/cjs/src/embed/base.d.ts.map +1 -1
- package/cjs/src/embed/base.js +4 -0
- package/cjs/src/embed/base.js.map +1 -1
- package/cjs/src/embed/base.spec.js +60 -0
- package/cjs/src/embed/base.spec.js.map +1 -1
- package/cjs/src/errors.d.ts +1 -0
- package/cjs/src/errors.d.ts.map +1 -1
- package/cjs/src/errors.js +1 -0
- package/cjs/src/errors.js.map +1 -1
- package/cjs/src/utils.d.ts +10 -3
- package/cjs/src/utils.d.ts.map +1 -1
- package/cjs/src/utils.js +29 -5
- package/cjs/src/utils.js.map +1 -1
- package/cjs/src/utils.spec.js +53 -0
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/{index-CSFjfTVk.js → index-D0n5LIka.js} +1 -1
- package/dist/src/embed/base.d.ts +1 -1
- package/dist/src/embed/base.d.ts.map +1 -1
- package/dist/src/errors.d.ts +1 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/utils.d.ts +10 -3
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +73 -48
- package/dist/tsembed-react.js +72 -47
- package/dist/tsembed.es.js +73 -48
- package/dist/tsembed.js +72 -47
- package/dist/visual-embed-sdk-react-full.d.ts +1 -1
- package/dist/visual-embed-sdk.d.ts +1 -1
- package/lib/package.json +1 -1
- package/lib/src/embed/base.d.ts +1 -1
- package/lib/src/embed/base.d.ts.map +1 -1
- package/lib/src/embed/base.js +5 -1
- package/lib/src/embed/base.js.map +1 -1
- package/lib/src/embed/base.spec.js +61 -1
- package/lib/src/embed/base.spec.js.map +1 -1
- package/lib/src/errors.d.ts +1 -0
- package/lib/src/errors.d.ts.map +1 -1
- package/lib/src/errors.js +1 -0
- package/lib/src/errors.js.map +1 -1
- package/lib/src/utils.d.ts +10 -3
- package/lib/src/utils.d.ts.map +1 -1
- package/lib/src/utils.js +27 -4
- package/lib/src/utils.js.map +1 -1
- package/lib/src/utils.spec.js +54 -1
- package/lib/src/utils.spec.js.map +1 -1
- package/package.json +1 -1
- package/src/embed/base.spec.ts +79 -1
- package/src/embed/base.ts +5 -2
- package/src/errors.ts +1 -0
- package/src/utils.spec.ts +78 -0
- package/src/utils.ts +25 -7
package/dist/tsembed-react.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @thoughtspot/visual-embed-sdk version 1.44.
|
|
1
|
+
/* @thoughtspot/visual-embed-sdk version 1.44.3 */
|
|
2
2
|
'use client';
|
|
3
3
|
(function (global, factory) {
|
|
4
4
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :
|
|
@@ -4992,6 +4992,48 @@
|
|
|
4992
4992
|
}
|
|
4993
4993
|
const logger$3 = new Logger();
|
|
4994
4994
|
|
|
4995
|
+
const ERROR_MESSAGE = {
|
|
4996
|
+
INVALID_THOUGHTSPOT_HOST: 'Error parsing ThoughtSpot host. Please provide a valid URL.',
|
|
4997
|
+
SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND: 'Please select a Model to get started',
|
|
4998
|
+
LIVEBOARD_VIZ_ID_VALIDATION: 'Please select a Liveboard to embed.',
|
|
4999
|
+
TRIGGER_TIMED_OUT: 'Trigger timed-out in getting a response',
|
|
5000
|
+
SEARCHEMBED_BETA_WRANING_MESSAGE: 'SearchEmbed is in Beta in this release.',
|
|
5001
|
+
SAGE_EMBED_BETA_WARNING_MESSAGE: 'SageEmbed is in Beta in this release.',
|
|
5002
|
+
THIRD_PARTY_COOKIE_BLOCKED_ALERT: 'Third-party cookie access is blocked on this browser. Please allow third-party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.',
|
|
5003
|
+
DUPLICATE_TOKEN_ERR: 'Duplicate token. Please issue a new token every time getAuthToken callback is called. See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.',
|
|
5004
|
+
SDK_NOT_INITIALIZED: 'SDK not initialized',
|
|
5005
|
+
SESSION_INFO_FAILED: 'Failed to get session information',
|
|
5006
|
+
INVALID_TOKEN_ERROR: 'Received invalid token from getAuthToken callback or authToken endpoint.',
|
|
5007
|
+
INVALID_TOKEN_TYPE_ERROR: 'Expected getAuthToken to return a string, but received a {invalidType}.',
|
|
5008
|
+
MIXPANEL_TOKEN_NOT_FOUND: 'Mixpanel token not found in session info',
|
|
5009
|
+
PRERENDER_ID_MISSING: 'PreRender ID is required for preRender',
|
|
5010
|
+
SYNC_STYLE_CALLED_BEFORE_RENDER: 'PreRender should be called before using syncPreRenderStyle',
|
|
5011
|
+
CSP_VIOLATION_ALERT: 'CSP violation detected. Please check the console errors for more details.',
|
|
5012
|
+
CSP_FRAME_HOST_VIOLATION_LOG_MESSAGE: 'Please set up CSP correctly for the application to start working. For more information, see https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts. \n If the issue persists, refer to https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts',
|
|
5013
|
+
MISSING_REPORTING_OBSERVER: 'ReportingObserver not supported',
|
|
5014
|
+
RENDER_CALLED_BEFORE_INIT: 'Looks like render was called before calling init, the render won\'t start until init is called.\nFor more info check\n1. https://developers.thoughtspot.com/docs/Function_init#_init\n2.https://developers.thoughtspot.com/docs/getting-started#initSdk',
|
|
5015
|
+
SPOTTER_AGENT_NOT_INITIALIZED: 'SpotterAgent not initialized',
|
|
5016
|
+
OFFLINE_WARNING: 'Network not Detected. Embed is offline. Please reconnect and refresh',
|
|
5017
|
+
INIT_SDK_REQUIRED: 'You need to init the ThoughtSpot SDK module first',
|
|
5018
|
+
CONFLICTING_ACTIONS_CONFIG: 'You cannot have both hidden actions and visible actions',
|
|
5019
|
+
CONFLICTING_TABS_CONFIG: 'You cannot have both hidden Tabs and visible Tabs',
|
|
5020
|
+
RENDER_BEFORE_EVENTS_REQUIRED: 'Please call render before triggering events',
|
|
5021
|
+
HOST_EVENT_TYPE_UNDEFINED: 'Host event type is undefined',
|
|
5022
|
+
LOGIN_FAILED: 'Login failed',
|
|
5023
|
+
ERROR_PARSING_API_INTERCEPT_BODY: 'Error parsing api intercept body',
|
|
5024
|
+
SSR_ENVIRONMENT_ERROR: 'SSR environment detected. This function cannot be called in SSR environment.',
|
|
5025
|
+
};
|
|
5026
|
+
const CUSTOM_ACTIONS_ERROR_MESSAGE = {
|
|
5027
|
+
INVALID_ACTION_OBJECT: 'Custom Action Validation Error: Invalid action object provided',
|
|
5028
|
+
MISSING_REQUIRED_FIELDS: (id, missingFields) => `Custom Action Validation Error for '${id}': Missing required fields: ${missingFields.join(', ')}`,
|
|
5029
|
+
UNSUPPORTED_TARGET: (id, targetType) => `Custom Action Validation Error for '${id}': Target type '${targetType}' is not supported`,
|
|
5030
|
+
INVALID_POSITION: (position, targetType, supportedPositions) => `Position '${position}' is not supported for ${targetType.toLowerCase()}-level custom actions. Supported positions: ${supportedPositions}`,
|
|
5031
|
+
INVALID_METADATA_IDS: (targetType, invalidIds, supportedIds) => `Invalid metadata IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported metadata IDs: ${supportedIds}`,
|
|
5032
|
+
INVALID_DATA_MODEL_IDS: (targetType, invalidIds, supportedIds) => `Invalid data model IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported data model IDs: ${supportedIds}`,
|
|
5033
|
+
INVALID_FIELDS: (targetType, invalidFields, supportedFields) => `Invalid fields for ${targetType.toLowerCase()}-level custom actions: ${invalidFields.join(', ')}. Supported fields: ${supportedFields}`,
|
|
5034
|
+
DUPLICATE_IDS: (id, duplicateNames, keptName) => `Duplicate custom action ID '${id}' found. Actions with names '${duplicateNames.join("', '")}' will be ignored. Keeping '${keptName}'.`,
|
|
5035
|
+
};
|
|
5036
|
+
|
|
4995
5037
|
/**
|
|
4996
5038
|
* Copyright (c) 2023
|
|
4997
5039
|
*
|
|
@@ -5312,6 +5354,8 @@
|
|
|
5312
5354
|
* @version SDK: 1.36.2 | ThoughtSpot: *
|
|
5313
5355
|
*/
|
|
5314
5356
|
function storeValueInWindow(key, value, options = {}) {
|
|
5357
|
+
if (isWindowUndefined())
|
|
5358
|
+
return value;
|
|
5315
5359
|
if (!window[sdkWindowKey]) {
|
|
5316
5360
|
window[sdkWindowKey] = {};
|
|
5317
5361
|
}
|
|
@@ -5322,11 +5366,16 @@
|
|
|
5322
5366
|
return value;
|
|
5323
5367
|
}
|
|
5324
5368
|
/**
|
|
5325
|
-
* Retrieves a stored value from the global
|
|
5326
|
-
*
|
|
5327
|
-
*
|
|
5369
|
+
* Retrieves a stored value from the global
|
|
5370
|
+
* `window` object under the `_tsEmbedSDK` namespace.
|
|
5371
|
+
* Returns undefined in SSR environment.
|
|
5328
5372
|
*/
|
|
5329
|
-
const getValueFromWindow = (key) => {
|
|
5373
|
+
const getValueFromWindow = (key) => {
|
|
5374
|
+
var _a;
|
|
5375
|
+
if (isWindowUndefined())
|
|
5376
|
+
return undefined;
|
|
5377
|
+
return (_a = window === null || window === void 0 ? void 0 : window[sdkWindowKey]) === null || _a === void 0 ? void 0 : _a[key];
|
|
5378
|
+
};
|
|
5330
5379
|
/**
|
|
5331
5380
|
* Check if an array includes a string value
|
|
5332
5381
|
* @param arr - The array to check
|
|
@@ -5437,6 +5486,19 @@
|
|
|
5437
5486
|
return template.replace(/\{(\w+)\}/g, (match, key) => {
|
|
5438
5487
|
return values[key] !== undefined ? String(values[key]) : match;
|
|
5439
5488
|
});
|
|
5489
|
+
};
|
|
5490
|
+
/**
|
|
5491
|
+
* Check if the window is undefined
|
|
5492
|
+
* If the window is undefined, it means the code is running in a SSR environment.
|
|
5493
|
+
* @returns true if the window is undefined, false otherwise
|
|
5494
|
+
*
|
|
5495
|
+
*/
|
|
5496
|
+
const isWindowUndefined = () => {
|
|
5497
|
+
if (typeof window === 'undefined') {
|
|
5498
|
+
logger$3.error(ERROR_MESSAGE.SSR_ENVIRONMENT_ERROR);
|
|
5499
|
+
return true;
|
|
5500
|
+
}
|
|
5501
|
+
return false;
|
|
5440
5502
|
};
|
|
5441
5503
|
|
|
5442
5504
|
/**
|
|
@@ -7724,47 +7786,6 @@
|
|
|
7724
7786
|
UIPassthroughEvent["GetUnsavedAnswerTML"] = "getUnsavedAnswerTML";
|
|
7725
7787
|
})(UIPassthroughEvent || (UIPassthroughEvent = {}));
|
|
7726
7788
|
|
|
7727
|
-
const ERROR_MESSAGE = {
|
|
7728
|
-
INVALID_THOUGHTSPOT_HOST: 'Error parsing ThoughtSpot host. Please provide a valid URL.',
|
|
7729
|
-
SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND: 'Please select a Model to get started',
|
|
7730
|
-
LIVEBOARD_VIZ_ID_VALIDATION: 'Please select a Liveboard to embed.',
|
|
7731
|
-
TRIGGER_TIMED_OUT: 'Trigger timed-out in getting a response',
|
|
7732
|
-
SEARCHEMBED_BETA_WRANING_MESSAGE: 'SearchEmbed is in Beta in this release.',
|
|
7733
|
-
SAGE_EMBED_BETA_WARNING_MESSAGE: 'SageEmbed is in Beta in this release.',
|
|
7734
|
-
THIRD_PARTY_COOKIE_BLOCKED_ALERT: 'Third-party cookie access is blocked on this browser. Please allow third-party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.',
|
|
7735
|
-
DUPLICATE_TOKEN_ERR: 'Duplicate token. Please issue a new token every time getAuthToken callback is called. See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.',
|
|
7736
|
-
SDK_NOT_INITIALIZED: 'SDK not initialized',
|
|
7737
|
-
SESSION_INFO_FAILED: 'Failed to get session information',
|
|
7738
|
-
INVALID_TOKEN_ERROR: 'Received invalid token from getAuthToken callback or authToken endpoint.',
|
|
7739
|
-
INVALID_TOKEN_TYPE_ERROR: 'Expected getAuthToken to return a string, but received a {invalidType}.',
|
|
7740
|
-
MIXPANEL_TOKEN_NOT_FOUND: 'Mixpanel token not found in session info',
|
|
7741
|
-
PRERENDER_ID_MISSING: 'PreRender ID is required for preRender',
|
|
7742
|
-
SYNC_STYLE_CALLED_BEFORE_RENDER: 'PreRender should be called before using syncPreRenderStyle',
|
|
7743
|
-
CSP_VIOLATION_ALERT: 'CSP violation detected. Please check the console errors for more details.',
|
|
7744
|
-
CSP_FRAME_HOST_VIOLATION_LOG_MESSAGE: 'Please set up CSP correctly for the application to start working. For more information, see https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts. \n If the issue persists, refer to https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts',
|
|
7745
|
-
MISSING_REPORTING_OBSERVER: 'ReportingObserver not supported',
|
|
7746
|
-
RENDER_CALLED_BEFORE_INIT: 'Looks like render was called before calling init, the render won\'t start until init is called.\nFor more info check\n1. https://developers.thoughtspot.com/docs/Function_init#_init\n2.https://developers.thoughtspot.com/docs/getting-started#initSdk',
|
|
7747
|
-
SPOTTER_AGENT_NOT_INITIALIZED: 'SpotterAgent not initialized',
|
|
7748
|
-
OFFLINE_WARNING: 'Network not Detected. Embed is offline. Please reconnect and refresh',
|
|
7749
|
-
INIT_SDK_REQUIRED: 'You need to init the ThoughtSpot SDK module first',
|
|
7750
|
-
CONFLICTING_ACTIONS_CONFIG: 'You cannot have both hidden actions and visible actions',
|
|
7751
|
-
CONFLICTING_TABS_CONFIG: 'You cannot have both hidden Tabs and visible Tabs',
|
|
7752
|
-
RENDER_BEFORE_EVENTS_REQUIRED: 'Please call render before triggering events',
|
|
7753
|
-
HOST_EVENT_TYPE_UNDEFINED: 'Host event type is undefined',
|
|
7754
|
-
LOGIN_FAILED: 'Login failed',
|
|
7755
|
-
ERROR_PARSING_API_INTERCEPT_BODY: 'Error parsing api intercept body',
|
|
7756
|
-
};
|
|
7757
|
-
const CUSTOM_ACTIONS_ERROR_MESSAGE = {
|
|
7758
|
-
INVALID_ACTION_OBJECT: 'Custom Action Validation Error: Invalid action object provided',
|
|
7759
|
-
MISSING_REQUIRED_FIELDS: (id, missingFields) => `Custom Action Validation Error for '${id}': Missing required fields: ${missingFields.join(', ')}`,
|
|
7760
|
-
UNSUPPORTED_TARGET: (id, targetType) => `Custom Action Validation Error for '${id}': Target type '${targetType}' is not supported`,
|
|
7761
|
-
INVALID_POSITION: (position, targetType, supportedPositions) => `Position '${position}' is not supported for ${targetType.toLowerCase()}-level custom actions. Supported positions: ${supportedPositions}`,
|
|
7762
|
-
INVALID_METADATA_IDS: (targetType, invalidIds, supportedIds) => `Invalid metadata IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported metadata IDs: ${supportedIds}`,
|
|
7763
|
-
INVALID_DATA_MODEL_IDS: (targetType, invalidIds, supportedIds) => `Invalid data model IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported data model IDs: ${supportedIds}`,
|
|
7764
|
-
INVALID_FIELDS: (targetType, invalidFields, supportedFields) => `Invalid fields for ${targetType.toLowerCase()}-level custom actions: ${invalidFields.join(', ')}. Supported fields: ${supportedFields}`,
|
|
7765
|
-
DUPLICATE_IDS: (id, duplicateNames, keptName) => `Duplicate custom action ID '${id}' found. Actions with names '${duplicateNames.join("', '")}' will be ignored. Keeping '${keptName}'.`,
|
|
7766
|
-
};
|
|
7767
|
-
|
|
7768
7789
|
const EndPoints = {
|
|
7769
7790
|
AUTH_VERIFICATION: '/callosum/v1/session/info',
|
|
7770
7791
|
SESSION_INFO: '/callosum/v1/session/info',
|
|
@@ -17694,6 +17715,8 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
17694
17715
|
}
|
|
17695
17716
|
const initFlagKey = 'initFlagKey';
|
|
17696
17717
|
const createAndSetInitPromise = () => {
|
|
17718
|
+
if (isWindowUndefined())
|
|
17719
|
+
return;
|
|
17697
17720
|
const { promise: initPromise, resolve: initPromiseResolve,
|
|
17698
17721
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
17699
17722
|
// @ts-ignore
|
|
@@ -17733,6 +17756,8 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
17733
17756
|
*/
|
|
17734
17757
|
const init = (embedConfig) => {
|
|
17735
17758
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
17759
|
+
if (isWindowUndefined())
|
|
17760
|
+
return null;
|
|
17736
17761
|
sanity(embedConfig);
|
|
17737
17762
|
resetAllCachedServices();
|
|
17738
17763
|
embedConfig = setEmbedConfig(backwardCompat({
|
|
@@ -17915,7 +17940,7 @@ mutation GetUnsavedAnswerTML($session: BachSessionIdInput!, $exportDependencies:
|
|
|
17915
17940
|
return eventData;
|
|
17916
17941
|
}
|
|
17917
17942
|
|
|
17918
|
-
var name="@thoughtspot/visual-embed-sdk";var version$1="1.44.
|
|
17943
|
+
var name="@thoughtspot/visual-embed-sdk";var version$1="1.44.3";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**","cjs/**"];var exports$1={".":{"import":"./lib/src/index.js",require:"./cjs/src/index.js",types:"./lib/src/index.d.ts"},"./react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"},"./lib/src/react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"}};var typesVersions={"*":{react:["./lib/src/react/all-types-export.d.ts"]}};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p tsconfig.build.json --incremental false; tsc -p tsconfig.build.json --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle-generator --config ./dts-config/dts-bundle-file.config.js","bundle-dts":"dts-bundle-generator --config ./dts-config/dts-bundle.config.js","bundle-dts-react":"dts-bundle-generator --config ./dts-config/dts-bundle-react.config.js","bundle-dts-react-full":"dts-bundle-generator --config ./dts-config/dts-bundle-react-full.config.js",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.build.json --theme typedoc-theme --json static/typedoc/typedoc.json --disableOutputCheck","test-sdk":"jest -c jest.config.sdk.js --runInBand",test:"npm run test-sdk",posttest:"cat ./coverage/sdk/lcov.info | npx coveralls-next","is-publish-allowed":"node scripts/is-publish-allowed.js",prepublishOnly:"npm run is-publish-allowed && npm run test && npm run tsc && npm run bundle-dts-file && npm run bundle-dts && npm run bundle-dts-react && npm run bundle-dts-react-full && npm run build","check-size":"npm run build && size-limit","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest",dev:"vite -c vite.local.config.ts"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={classnames:"^2.3.1",eventemitter3:"^4.0.7",lodash:"^4.17.21","mixpanel-browser":"2.47.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.1",yaml:"^2.5.1"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@rollup/plugin-replace":"^5.0.2","@size-limit/preset-big-lib":"^11.2.0","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^30.0.0","@types/lodash":"^4.17.0","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^8.28.0","@typescript-eslint/parser":"^8.28.0",ajv:"^8.17.1",asciidoctor:"^2.2.1","babel-jest":"^30.2.0","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1","coveralls-next":"^5.0.0",crypto:"^1.0.1","current-git-branch":"^1.1.0","dts-bundle-generator":"^9.5.1",eslint:"^9.23.0","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^10.1.1","eslint-import-resolver-typescript":"^4.2.5","eslint-plugin-comment-length":"2.2.1","eslint-plugin-import":"^2.31.0","eslint-plugin-jsdoc":"^50.6.9","eslint-plugin-prettier":"^5.2.5","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^5.2.0","fs-extra":"^10.0.0","gh-pages":"6.3.0",globals:"^16.0.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^2.0.0",jest:"^30.2.0","jest-environment-jsdom":"^29.7.0","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0",prettier:"2.1.2",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"4.24.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^29.4.6","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","typescript-eslint":"^8.29.1","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^6.3.5"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embedded","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version$1,description:description,module:module,main:main,types:types,files:files,exports:exports$1,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.es.js",limit:"32 kB"}],scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
|
|
17919
17944
|
|
|
17920
17945
|
class HostEventClient {
|
|
17921
17946
|
constructor(iFrame) {
|
package/dist/tsembed.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @thoughtspot/visual-embed-sdk version 1.44.
|
|
1
|
+
/* @thoughtspot/visual-embed-sdk version 1.44.3 */
|
|
2
2
|
'use client';
|
|
3
3
|
function _mergeNamespaces(n, m) {
|
|
4
4
|
m.forEach(function (e) {
|
|
@@ -4855,6 +4855,48 @@ merge.withOptions = (options, ...objects) => {
|
|
|
4855
4855
|
return result;
|
|
4856
4856
|
};
|
|
4857
4857
|
|
|
4858
|
+
const ERROR_MESSAGE = {
|
|
4859
|
+
INVALID_THOUGHTSPOT_HOST: 'Error parsing ThoughtSpot host. Please provide a valid URL.',
|
|
4860
|
+
SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND: 'Please select a Model to get started',
|
|
4861
|
+
LIVEBOARD_VIZ_ID_VALIDATION: 'Please select a Liveboard to embed.',
|
|
4862
|
+
TRIGGER_TIMED_OUT: 'Trigger timed-out in getting a response',
|
|
4863
|
+
SEARCHEMBED_BETA_WRANING_MESSAGE: 'SearchEmbed is in Beta in this release.',
|
|
4864
|
+
SAGE_EMBED_BETA_WARNING_MESSAGE: 'SageEmbed is in Beta in this release.',
|
|
4865
|
+
THIRD_PARTY_COOKIE_BLOCKED_ALERT: 'Third-party cookie access is blocked on this browser. Please allow third-party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.',
|
|
4866
|
+
DUPLICATE_TOKEN_ERR: 'Duplicate token. Please issue a new token every time getAuthToken callback is called. See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.',
|
|
4867
|
+
SDK_NOT_INITIALIZED: 'SDK not initialized',
|
|
4868
|
+
SESSION_INFO_FAILED: 'Failed to get session information',
|
|
4869
|
+
INVALID_TOKEN_ERROR: 'Received invalid token from getAuthToken callback or authToken endpoint.',
|
|
4870
|
+
INVALID_TOKEN_TYPE_ERROR: 'Expected getAuthToken to return a string, but received a {invalidType}.',
|
|
4871
|
+
MIXPANEL_TOKEN_NOT_FOUND: 'Mixpanel token not found in session info',
|
|
4872
|
+
PRERENDER_ID_MISSING: 'PreRender ID is required for preRender',
|
|
4873
|
+
SYNC_STYLE_CALLED_BEFORE_RENDER: 'PreRender should be called before using syncPreRenderStyle',
|
|
4874
|
+
CSP_VIOLATION_ALERT: 'CSP violation detected. Please check the console errors for more details.',
|
|
4875
|
+
CSP_FRAME_HOST_VIOLATION_LOG_MESSAGE: 'Please set up CSP correctly for the application to start working. For more information, see https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts. \n If the issue persists, refer to https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts',
|
|
4876
|
+
MISSING_REPORTING_OBSERVER: 'ReportingObserver not supported',
|
|
4877
|
+
RENDER_CALLED_BEFORE_INIT: 'Looks like render was called before calling init, the render won\'t start until init is called.\nFor more info check\n1. https://developers.thoughtspot.com/docs/Function_init#_init\n2.https://developers.thoughtspot.com/docs/getting-started#initSdk',
|
|
4878
|
+
SPOTTER_AGENT_NOT_INITIALIZED: 'SpotterAgent not initialized',
|
|
4879
|
+
OFFLINE_WARNING: 'Network not Detected. Embed is offline. Please reconnect and refresh',
|
|
4880
|
+
INIT_SDK_REQUIRED: 'You need to init the ThoughtSpot SDK module first',
|
|
4881
|
+
CONFLICTING_ACTIONS_CONFIG: 'You cannot have both hidden actions and visible actions',
|
|
4882
|
+
CONFLICTING_TABS_CONFIG: 'You cannot have both hidden Tabs and visible Tabs',
|
|
4883
|
+
RENDER_BEFORE_EVENTS_REQUIRED: 'Please call render before triggering events',
|
|
4884
|
+
HOST_EVENT_TYPE_UNDEFINED: 'Host event type is undefined',
|
|
4885
|
+
LOGIN_FAILED: 'Login failed',
|
|
4886
|
+
ERROR_PARSING_API_INTERCEPT_BODY: 'Error parsing api intercept body',
|
|
4887
|
+
SSR_ENVIRONMENT_ERROR: 'SSR environment detected. This function cannot be called in SSR environment.',
|
|
4888
|
+
};
|
|
4889
|
+
const CUSTOM_ACTIONS_ERROR_MESSAGE = {
|
|
4890
|
+
INVALID_ACTION_OBJECT: 'Custom Action Validation Error: Invalid action object provided',
|
|
4891
|
+
MISSING_REQUIRED_FIELDS: (id, missingFields) => `Custom Action Validation Error for '${id}': Missing required fields: ${missingFields.join(', ')}`,
|
|
4892
|
+
UNSUPPORTED_TARGET: (id, targetType) => `Custom Action Validation Error for '${id}': Target type '${targetType}' is not supported`,
|
|
4893
|
+
INVALID_POSITION: (position, targetType, supportedPositions) => `Position '${position}' is not supported for ${targetType.toLowerCase()}-level custom actions. Supported positions: ${supportedPositions}`,
|
|
4894
|
+
INVALID_METADATA_IDS: (targetType, invalidIds, supportedIds) => `Invalid metadata IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported metadata IDs: ${supportedIds}`,
|
|
4895
|
+
INVALID_DATA_MODEL_IDS: (targetType, invalidIds, supportedIds) => `Invalid data model IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported data model IDs: ${supportedIds}`,
|
|
4896
|
+
INVALID_FIELDS: (targetType, invalidFields, supportedFields) => `Invalid fields for ${targetType.toLowerCase()}-level custom actions: ${invalidFields.join(', ')}. Supported fields: ${supportedFields}`,
|
|
4897
|
+
DUPLICATE_IDS: (id, duplicateNames, keptName) => `Duplicate custom action ID '${id}' found. Actions with names '${duplicateNames.join("', '")}' will be ignored. Keeping '${keptName}'.`,
|
|
4898
|
+
};
|
|
4899
|
+
|
|
4858
4900
|
/**
|
|
4859
4901
|
* Copyright (c) 2023
|
|
4860
4902
|
*
|
|
@@ -5175,6 +5217,8 @@ const sdkWindowKey = '_tsEmbedSDK';
|
|
|
5175
5217
|
* @version SDK: 1.36.2 | ThoughtSpot: *
|
|
5176
5218
|
*/
|
|
5177
5219
|
function storeValueInWindow(key, value, options = {}) {
|
|
5220
|
+
if (isWindowUndefined())
|
|
5221
|
+
return value;
|
|
5178
5222
|
if (!window[sdkWindowKey]) {
|
|
5179
5223
|
window[sdkWindowKey] = {};
|
|
5180
5224
|
}
|
|
@@ -5185,11 +5229,16 @@ function storeValueInWindow(key, value, options = {}) {
|
|
|
5185
5229
|
return value;
|
|
5186
5230
|
}
|
|
5187
5231
|
/**
|
|
5188
|
-
* Retrieves a stored value from the global
|
|
5189
|
-
*
|
|
5190
|
-
*
|
|
5232
|
+
* Retrieves a stored value from the global
|
|
5233
|
+
* `window` object under the `_tsEmbedSDK` namespace.
|
|
5234
|
+
* Returns undefined in SSR environment.
|
|
5191
5235
|
*/
|
|
5192
|
-
const getValueFromWindow = (key) => {
|
|
5236
|
+
const getValueFromWindow = (key) => {
|
|
5237
|
+
var _a;
|
|
5238
|
+
if (isWindowUndefined())
|
|
5239
|
+
return undefined;
|
|
5240
|
+
return (_a = window === null || window === void 0 ? void 0 : window[sdkWindowKey]) === null || _a === void 0 ? void 0 : _a[key];
|
|
5241
|
+
};
|
|
5193
5242
|
/**
|
|
5194
5243
|
* Check if an array includes a string value
|
|
5195
5244
|
* @param arr - The array to check
|
|
@@ -5300,6 +5349,19 @@ const formatTemplate = (template, values) => {
|
|
|
5300
5349
|
return template.replace(/\{(\w+)\}/g, (match, key) => {
|
|
5301
5350
|
return values[key] !== undefined ? String(values[key]) : match;
|
|
5302
5351
|
});
|
|
5352
|
+
};
|
|
5353
|
+
/**
|
|
5354
|
+
* Check if the window is undefined
|
|
5355
|
+
* If the window is undefined, it means the code is running in a SSR environment.
|
|
5356
|
+
* @returns true if the window is undefined, false otherwise
|
|
5357
|
+
*
|
|
5358
|
+
*/
|
|
5359
|
+
const isWindowUndefined = () => {
|
|
5360
|
+
if (typeof window === 'undefined') {
|
|
5361
|
+
logger$3.error(ERROR_MESSAGE.SSR_ENVIRONMENT_ERROR);
|
|
5362
|
+
return true;
|
|
5363
|
+
}
|
|
5364
|
+
return false;
|
|
5303
5365
|
};
|
|
5304
5366
|
|
|
5305
5367
|
/**
|
|
@@ -7587,47 +7649,6 @@ var UIPassthroughEvent;
|
|
|
7587
7649
|
UIPassthroughEvent["GetUnsavedAnswerTML"] = "getUnsavedAnswerTML";
|
|
7588
7650
|
})(UIPassthroughEvent || (UIPassthroughEvent = {}));
|
|
7589
7651
|
|
|
7590
|
-
const ERROR_MESSAGE = {
|
|
7591
|
-
INVALID_THOUGHTSPOT_HOST: 'Error parsing ThoughtSpot host. Please provide a valid URL.',
|
|
7592
|
-
SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND: 'Please select a Model to get started',
|
|
7593
|
-
LIVEBOARD_VIZ_ID_VALIDATION: 'Please select a Liveboard to embed.',
|
|
7594
|
-
TRIGGER_TIMED_OUT: 'Trigger timed-out in getting a response',
|
|
7595
|
-
SEARCHEMBED_BETA_WRANING_MESSAGE: 'SearchEmbed is in Beta in this release.',
|
|
7596
|
-
SAGE_EMBED_BETA_WARNING_MESSAGE: 'SageEmbed is in Beta in this release.',
|
|
7597
|
-
THIRD_PARTY_COOKIE_BLOCKED_ALERT: 'Third-party cookie access is blocked on this browser. Please allow third-party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.',
|
|
7598
|
-
DUPLICATE_TOKEN_ERR: 'Duplicate token. Please issue a new token every time getAuthToken callback is called. See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.',
|
|
7599
|
-
SDK_NOT_INITIALIZED: 'SDK not initialized',
|
|
7600
|
-
SESSION_INFO_FAILED: 'Failed to get session information',
|
|
7601
|
-
INVALID_TOKEN_ERROR: 'Received invalid token from getAuthToken callback or authToken endpoint.',
|
|
7602
|
-
INVALID_TOKEN_TYPE_ERROR: 'Expected getAuthToken to return a string, but received a {invalidType}.',
|
|
7603
|
-
MIXPANEL_TOKEN_NOT_FOUND: 'Mixpanel token not found in session info',
|
|
7604
|
-
PRERENDER_ID_MISSING: 'PreRender ID is required for preRender',
|
|
7605
|
-
SYNC_STYLE_CALLED_BEFORE_RENDER: 'PreRender should be called before using syncPreRenderStyle',
|
|
7606
|
-
CSP_VIOLATION_ALERT: 'CSP violation detected. Please check the console errors for more details.',
|
|
7607
|
-
CSP_FRAME_HOST_VIOLATION_LOG_MESSAGE: 'Please set up CSP correctly for the application to start working. For more information, see https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts. \n If the issue persists, refer to https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts',
|
|
7608
|
-
MISSING_REPORTING_OBSERVER: 'ReportingObserver not supported',
|
|
7609
|
-
RENDER_CALLED_BEFORE_INIT: 'Looks like render was called before calling init, the render won\'t start until init is called.\nFor more info check\n1. https://developers.thoughtspot.com/docs/Function_init#_init\n2.https://developers.thoughtspot.com/docs/getting-started#initSdk',
|
|
7610
|
-
SPOTTER_AGENT_NOT_INITIALIZED: 'SpotterAgent not initialized',
|
|
7611
|
-
OFFLINE_WARNING: 'Network not Detected. Embed is offline. Please reconnect and refresh',
|
|
7612
|
-
INIT_SDK_REQUIRED: 'You need to init the ThoughtSpot SDK module first',
|
|
7613
|
-
CONFLICTING_ACTIONS_CONFIG: 'You cannot have both hidden actions and visible actions',
|
|
7614
|
-
CONFLICTING_TABS_CONFIG: 'You cannot have both hidden Tabs and visible Tabs',
|
|
7615
|
-
RENDER_BEFORE_EVENTS_REQUIRED: 'Please call render before triggering events',
|
|
7616
|
-
HOST_EVENT_TYPE_UNDEFINED: 'Host event type is undefined',
|
|
7617
|
-
LOGIN_FAILED: 'Login failed',
|
|
7618
|
-
ERROR_PARSING_API_INTERCEPT_BODY: 'Error parsing api intercept body',
|
|
7619
|
-
};
|
|
7620
|
-
const CUSTOM_ACTIONS_ERROR_MESSAGE = {
|
|
7621
|
-
INVALID_ACTION_OBJECT: 'Custom Action Validation Error: Invalid action object provided',
|
|
7622
|
-
MISSING_REQUIRED_FIELDS: (id, missingFields) => `Custom Action Validation Error for '${id}': Missing required fields: ${missingFields.join(', ')}`,
|
|
7623
|
-
UNSUPPORTED_TARGET: (id, targetType) => `Custom Action Validation Error for '${id}': Target type '${targetType}' is not supported`,
|
|
7624
|
-
INVALID_POSITION: (position, targetType, supportedPositions) => `Position '${position}' is not supported for ${targetType.toLowerCase()}-level custom actions. Supported positions: ${supportedPositions}`,
|
|
7625
|
-
INVALID_METADATA_IDS: (targetType, invalidIds, supportedIds) => `Invalid metadata IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported metadata IDs: ${supportedIds}`,
|
|
7626
|
-
INVALID_DATA_MODEL_IDS: (targetType, invalidIds, supportedIds) => `Invalid data model IDs for ${targetType.toLowerCase()}-level custom actions: ${invalidIds.join(', ')}. Supported data model IDs: ${supportedIds}`,
|
|
7627
|
-
INVALID_FIELDS: (targetType, invalidFields, supportedFields) => `Invalid fields for ${targetType.toLowerCase()}-level custom actions: ${invalidFields.join(', ')}. Supported fields: ${supportedFields}`,
|
|
7628
|
-
DUPLICATE_IDS: (id, duplicateNames, keptName) => `Duplicate custom action ID '${id}' found. Actions with names '${duplicateNames.join("', '")}' will be ignored. Keeping '${keptName}'.`,
|
|
7629
|
-
};
|
|
7630
|
-
|
|
7631
7652
|
const EndPoints = {
|
|
7632
7653
|
AUTH_VERIFICATION: '/callosum/v1/session/info',
|
|
7633
7654
|
SESSION_INFO: '/callosum/v1/session/info',
|
|
@@ -8525,7 +8546,7 @@ class AnswerService {
|
|
|
8525
8546
|
async getTML() {
|
|
8526
8547
|
const { object } = await this.executeQuery(getAnswerTML, {});
|
|
8527
8548
|
const edoc = object[0].edoc;
|
|
8528
|
-
const YAML = await import('./index-
|
|
8549
|
+
const YAML = await import('./index-D0n5LIka.js');
|
|
8529
8550
|
const parsedDoc = YAML.parse(edoc);
|
|
8530
8551
|
return {
|
|
8531
8552
|
answer: {
|
|
@@ -17583,6 +17604,8 @@ function backwardCompat(embedConfig) {
|
|
|
17583
17604
|
}
|
|
17584
17605
|
const initFlagKey = 'initFlagKey';
|
|
17585
17606
|
const createAndSetInitPromise = () => {
|
|
17607
|
+
if (isWindowUndefined())
|
|
17608
|
+
return;
|
|
17586
17609
|
const { promise: initPromise, resolve: initPromiseResolve,
|
|
17587
17610
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
17588
17611
|
// @ts-ignore
|
|
@@ -17622,6 +17645,8 @@ const getIsInitCalled = () => { var _a; return !!((_a = getValueFromWindow(initF
|
|
|
17622
17645
|
*/
|
|
17623
17646
|
const init = (embedConfig) => {
|
|
17624
17647
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
17648
|
+
if (isWindowUndefined())
|
|
17649
|
+
return null;
|
|
17625
17650
|
sanity(embedConfig);
|
|
17626
17651
|
resetAllCachedServices();
|
|
17627
17652
|
embedConfig = setEmbedConfig(backwardCompat({
|
|
@@ -17957,7 +17982,7 @@ function processEventData(type, eventData, thoughtSpotHost, containerEl) {
|
|
|
17957
17982
|
return eventData;
|
|
17958
17983
|
}
|
|
17959
17984
|
|
|
17960
|
-
var name="@thoughtspot/visual-embed-sdk";var version$1="1.44.
|
|
17985
|
+
var name="@thoughtspot/visual-embed-sdk";var version$1="1.44.3";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**","cjs/**"];var exports={".":{"import":"./lib/src/index.js",require:"./cjs/src/index.js",types:"./lib/src/index.d.ts"},"./react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"},"./lib/src/react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"}};var typesVersions={"*":{react:["./lib/src/react/all-types-export.d.ts"]}};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p tsconfig.build.json --incremental false; tsc -p tsconfig.build.json --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle-generator --config ./dts-config/dts-bundle-file.config.js","bundle-dts":"dts-bundle-generator --config ./dts-config/dts-bundle.config.js","bundle-dts-react":"dts-bundle-generator --config ./dts-config/dts-bundle-react.config.js","bundle-dts-react-full":"dts-bundle-generator --config ./dts-config/dts-bundle-react-full.config.js",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.build.json --theme typedoc-theme --json static/typedoc/typedoc.json --disableOutputCheck","test-sdk":"jest -c jest.config.sdk.js --runInBand",test:"npm run test-sdk",posttest:"cat ./coverage/sdk/lcov.info | npx coveralls-next","is-publish-allowed":"node scripts/is-publish-allowed.js",prepublishOnly:"npm run is-publish-allowed && npm run test && npm run tsc && npm run bundle-dts-file && npm run bundle-dts && npm run bundle-dts-react && npm run bundle-dts-react-full && npm run build","check-size":"npm run build && size-limit","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest",dev:"vite -c vite.local.config.ts"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={classnames:"^2.3.1",eventemitter3:"^4.0.7",lodash:"^4.17.21","mixpanel-browser":"2.47.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.1",yaml:"^2.5.1"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@rollup/plugin-replace":"^5.0.2","@size-limit/preset-big-lib":"^11.2.0","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^30.0.0","@types/lodash":"^4.17.0","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^8.28.0","@typescript-eslint/parser":"^8.28.0",ajv:"^8.17.1",asciidoctor:"^2.2.1","babel-jest":"^30.2.0","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1","coveralls-next":"^5.0.0",crypto:"^1.0.1","current-git-branch":"^1.1.0","dts-bundle-generator":"^9.5.1",eslint:"^9.23.0","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^10.1.1","eslint-import-resolver-typescript":"^4.2.5","eslint-plugin-comment-length":"2.2.1","eslint-plugin-import":"^2.31.0","eslint-plugin-jsdoc":"^50.6.9","eslint-plugin-prettier":"^5.2.5","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^5.2.0","fs-extra":"^10.0.0","gh-pages":"6.3.0",globals:"^16.0.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^2.0.0",jest:"^30.2.0","jest-environment-jsdom":"^29.7.0","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0",prettier:"2.1.2",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"4.24.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^29.4.6","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","typescript-eslint":"^8.29.1","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^6.3.5"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embedded","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version$1,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.es.js",limit:"32 kB"}],scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
|
|
17961
17986
|
|
|
17962
17987
|
class HostEventClient {
|
|
17963
17988
|
constructor(iFrame) {
|