@thoughtspot/visual-embed-sdk 1.32.4 → 1.32.7

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.
Files changed (92) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/embed/app.d.ts +42 -0
  3. package/cjs/src/embed/app.d.ts.map +1 -1
  4. package/cjs/src/embed/app.js +4 -1
  5. package/cjs/src/embed/app.js.map +1 -1
  6. package/cjs/src/embed/app.spec.js +30 -0
  7. package/cjs/src/embed/app.spec.js.map +1 -1
  8. package/cjs/src/embed/base.d.ts +12 -12
  9. package/cjs/src/embed/base.js +12 -12
  10. package/cjs/src/embed/liveboard.d.ts +42 -0
  11. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  12. package/cjs/src/embed/liveboard.js +4 -1
  13. package/cjs/src/embed/liveboard.js.map +1 -1
  14. package/cjs/src/embed/liveboard.spec.js +33 -0
  15. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  16. package/cjs/src/embed/ts-embed.d.ts +0 -1
  17. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  18. package/cjs/src/embed/ts-embed.js +1 -2
  19. package/cjs/src/embed/ts-embed.js.map +1 -1
  20. package/cjs/src/types.d.ts +66 -8
  21. package/cjs/src/types.d.ts.map +1 -1
  22. package/cjs/src/types.js +59 -7
  23. package/cjs/src/types.js.map +1 -1
  24. package/cjs/src/utils/graphql/answerService/answerService.d.ts +14 -0
  25. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  26. package/cjs/src/utils/graphql/answerService/answerService.js +21 -0
  27. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  28. package/cjs/src/utils/processData.js +2 -2
  29. package/cjs/src/utils/processData.js.map +1 -1
  30. package/cjs/src/utils/processData.spec.js +14 -0
  31. package/cjs/src/utils/processData.spec.js.map +1 -1
  32. package/dist/src/embed/app.d.ts +42 -0
  33. package/dist/src/embed/app.d.ts.map +1 -1
  34. package/dist/src/embed/base.d.ts +12 -12
  35. package/dist/src/embed/liveboard.d.ts +42 -0
  36. package/dist/src/embed/liveboard.d.ts.map +1 -1
  37. package/dist/src/embed/ts-embed.d.ts +0 -1
  38. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  39. package/dist/src/types.d.ts +66 -8
  40. package/dist/src/types.d.ts.map +1 -1
  41. package/dist/src/utils/graphql/answerService/answerService.d.ts +14 -0
  42. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  43. package/dist/tsembed-react.es.js +92 -14
  44. package/dist/tsembed-react.js +92 -14
  45. package/dist/tsembed.es.js +104 -26
  46. package/dist/tsembed.js +104 -26
  47. package/dist/visual-embed-sdk-react-full.d.ts +176 -21
  48. package/dist/visual-embed-sdk-react.d.ts +176 -21
  49. package/dist/visual-embed-sdk.d.ts +176 -21
  50. package/lib/package.json +1 -1
  51. package/lib/src/embed/app.d.ts +42 -0
  52. package/lib/src/embed/app.d.ts.map +1 -1
  53. package/lib/src/embed/app.js +4 -1
  54. package/lib/src/embed/app.js.map +1 -1
  55. package/lib/src/embed/app.spec.js +30 -0
  56. package/lib/src/embed/app.spec.js.map +1 -1
  57. package/lib/src/embed/base.d.ts +12 -12
  58. package/lib/src/embed/base.js +12 -12
  59. package/lib/src/embed/liveboard.d.ts +42 -0
  60. package/lib/src/embed/liveboard.d.ts.map +1 -1
  61. package/lib/src/embed/liveboard.js +4 -1
  62. package/lib/src/embed/liveboard.js.map +1 -1
  63. package/lib/src/embed/liveboard.spec.js +33 -0
  64. package/lib/src/embed/liveboard.spec.js.map +1 -1
  65. package/lib/src/embed/ts-embed.d.ts +0 -1
  66. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  67. package/lib/src/embed/ts-embed.js +1 -2
  68. package/lib/src/embed/ts-embed.js.map +1 -1
  69. package/lib/src/types.d.ts +66 -8
  70. package/lib/src/types.d.ts.map +1 -1
  71. package/lib/src/types.js +59 -7
  72. package/lib/src/types.js.map +1 -1
  73. package/lib/src/utils/graphql/answerService/answerService.d.ts +14 -0
  74. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  75. package/lib/src/utils/graphql/answerService/answerService.js +21 -0
  76. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  77. package/lib/src/utils/processData.js +2 -2
  78. package/lib/src/utils/processData.js.map +1 -1
  79. package/lib/src/utils/processData.spec.js +14 -0
  80. package/lib/src/utils/processData.spec.js.map +1 -1
  81. package/lib/src/visual-embed-sdk.d.ts +176 -21
  82. package/package.json +1 -1
  83. package/src/embed/app.spec.ts +45 -0
  84. package/src/embed/app.ts +48 -0
  85. package/src/embed/base.ts +12 -12
  86. package/src/embed/liveboard.spec.ts +48 -0
  87. package/src/embed/liveboard.ts +48 -0
  88. package/src/embed/ts-embed.ts +1 -2
  89. package/src/types.ts +66 -7
  90. package/src/utils/graphql/answerService/answerService.ts +27 -0
  91. package/src/utils/processData.spec.ts +16 -0
  92. package/src/utils/processData.ts +2 -2
@@ -1500,21 +1500,61 @@ var EmbedEvent;
1500
1500
  */
1501
1501
  EmbedEvent["Rename"] = "rename";
1502
1502
  /**
1503
- * Emitted when user wants to intercept the search execution
1503
+ * Emitted if the user wants to intercept the search execution
1504
+ * and implement logic to decide whether to run the search or not
1504
1505
  *
1505
- * Set IsOnBeforeGetVizDataInterceptEnabled : true to use
1506
- * this embed event
1506
+ * Prerequisite: Set isOnBeforeGetVizDataInterceptEnabled : true
1507
+ * for this embed event to get emitted.
1508
+ *
1509
+ * Parameter: payload
1510
+ * Parameter: responder
1511
+ * Contains elements that lets developers define whether ThoughtSpot
1512
+ * will run the search or not, and if not, which error message to provide.
1513
+ *
1514
+ * execute: When execute returns true, the search will be run.
1515
+ * When execute returns false, the search will not be executed.
1516
+ *
1517
+ * error: Developers can customize the user facing message when execute is
1518
+ * set to false using the error parameter in responder
1519
+ *
1520
+ * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
1507
1521
  *
1508
1522
  *```js
1509
- * searchEmbed.on(EmbedEvent.OnBeforeGetVizDataIntercept,
1523
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
1510
1524
  * (payload, responder) => {
1511
1525
  * responder({
1512
1526
  * data: {
1513
- * execute: true,
1514
- * }})
1527
+ * execute:false,
1528
+ * error: {
1529
+ * //Provide a custom error message to explain to your end user
1530
+ * //why their search did not run
1531
+ * errorText: "This search query cannot be run.
1532
+ * Please contact your administrator for more details."
1533
+ * }
1534
+ * }})
1535
+ * })
1536
+ * ```
1537
+ *
1538
+ *```js
1539
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
1540
+ * (payload, responder) => {
1541
+ * const query = payload.data.data.answer.search_query
1542
+ * responder({
1543
+ * data: {
1544
+ * // returns true as long as the query does not include
1545
+ * // both the 'sales' AND the 'county' column
1546
+ * execute: !(query.includes("sales")&&query.includes("county")),
1547
+ * error: {
1548
+ * //Provide a custom error message to explain to your end user
1549
+ * // why their search did not run, and which searches are accepted by your custom logic.
1550
+ * errorText: "You can't use this query :" + query + ".
1551
+ * The 'sales' measures can never be used at the 'county' level.
1552
+ * Please try another measure, or remove 'county' from your search."
1553
+ * }
1554
+ * }})
1515
1555
  * })
1516
1556
  *```
1517
- * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
1557
+ *
1518
1558
  */
1519
1559
  EmbedEvent["OnBeforeGetVizDataIntercept"] = "onBeforeGetVizDataIntercept";
1520
1560
  /**
@@ -1634,6 +1674,15 @@ var HostEvent;
1634
1674
  * @hidden
1635
1675
  */
1636
1676
  HostEvent["Reload"] = "reload";
1677
+ /**
1678
+ * Get current iframe src
1679
+ * @example
1680
+ * ```js
1681
+ * const frameUrl = AppEmbed.trigger(HostEvent.GetIframeUrl)
1682
+ * ```
1683
+ * @version SDK: 1.35.0 | Thoughtspot: 10.4.0.cl
1684
+ */
1685
+ HostEvent["GetIframeUrl"] = "GetIframeUrl";
1637
1686
  /**
1638
1687
  * Display specific visualizations on a Liveboard.
1639
1688
  * @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
@@ -2504,6 +2553,9 @@ var Param;
2504
2553
  Param["FocusSearchBarOnRender"] = "focusSearchBarOnRender";
2505
2554
  Param["DisableRedirectionLinksInNewTab"] = "disableRedirectionLinksInNewTab";
2506
2555
  Param["HomePageSearchBarMode"] = "homePageSearchBarMode";
2556
+ Param["ShowLiveboardVerifiedBadge"] = "showLiveboardVerifiedBadge";
2557
+ Param["ShowLiveboardReverifyBanner"] = "showLiveboardReverifyBanner";
2558
+ Param["LiveboardHeaderV2"] = "isLiveboardHeaderV2Enabled";
2507
2559
  })(Param || (Param = {}));
2508
2560
  /**
2509
2561
  * ThoughtSpot application pages include actions and menu commands
@@ -6587,6 +6639,20 @@ class AnswerService {
6587
6639
  credentials: 'include',
6588
6640
  });
6589
6641
  }
6642
+ /**
6643
+ * Fetch the data for the answer as a PNG blob. This might be
6644
+ * quicker for larger data.
6645
+ * @param userLocale
6646
+ * @param omitBackground Omit the background in the PNG
6647
+ * @param deviceScaleFactor The scale factor for the PNG
6648
+ * @return Response
6649
+ */
6650
+ async fetchPNGBlob(userLocale = 'en-us', includeInfo = false, omitBackground = false, deviceScaleFactor = 2) {
6651
+ const fetchUrl = this.getFetchPNGBlobUrl(userLocale, omitBackground, deviceScaleFactor);
6652
+ return tokenizedFetch(fetchUrl, {
6653
+ credentials: 'include',
6654
+ });
6655
+ }
6590
6656
  /**
6591
6657
  * Just get the internal URL for this answer's data
6592
6658
  * as a CSV blob.
@@ -6597,6 +6663,13 @@ class AnswerService {
6597
6663
  getFetchCSVBlobUrl(userLocale = 'en-us', includeInfo = false) {
6598
6664
  return `${this.thoughtSpotHost}/prism/download/answer/csv?sessionId=${this.session.sessionId}&genNo=${this.session.genNo}&userLocale=${userLocale}&exportFileName=data&hideCsvHeader=${!includeInfo}`;
6599
6665
  }
6666
+ /**
6667
+ * Just get the internal URL for this answer's data
6668
+ * as a PNG blob.
6669
+ */
6670
+ getFetchPNGBlobUrl(userLocale = 'en-us', omitBackground = false, deviceScaleFactor = 2) {
6671
+ return `${this.thoughtSpotHost}/prism/download/answer/png?sessionId=${this.session.sessionId}&deviceScaleFactor=${deviceScaleFactor}&omitBackground=${omitBackground}&genNo=${this.session.genNo}&userLocale=${userLocale}&exportFileName=data`;
6672
+ }
6600
6673
  /**
6601
6674
  * Get underlying data given a point and the output column names.
6602
6675
  * In case of a context menu action, the selectedPoints are
@@ -13940,18 +14013,18 @@ const renderInQueue = (fn) => {
13940
14013
  * ```js
13941
14014
  * executeTML({
13942
14015
  * //Array of metadata Tmls
13943
- metadata_tmls: [
13944
- "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
13945
- \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
13946
- ],
13947
- import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
13948
- create_new: false, // If selected, creates TML objects with new GUIDs.
13949
- }).then(result => {
13950
- console.log(result);
13951
- }).catch(error => {
13952
- console.error(error);
13953
- });
13954
- *
14016
+ metadata_tmls: [
14017
+ "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
14018
+ \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
14019
+ ],
14020
+ import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
14021
+ create_new: false, // If selected, creates TML objects with new GUIDs.
14022
+ }).then(result => {
14023
+ console.log(result);
14024
+ }).catch(error => {
14025
+ console.error(error);
14026
+ });
14027
+ *```
13955
14028
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
13956
14029
  * @group Global methods
13957
14030
  */
@@ -14106,8 +14179,8 @@ function processNoCookieAccess(e, containerEl) {
14106
14179
  * @param containerEl
14107
14180
  */
14108
14181
  function processAuthFailure(e, containerEl) {
14109
- const { loginFailedMessage, authType } = getEmbedConfig();
14110
- if (authType !== AuthType.None) {
14182
+ const { loginFailedMessage, authType, disableLoginFailurePage } = getEmbedConfig();
14183
+ if (authType !== AuthType.None && !disableLoginFailurePage) {
14111
14184
  // eslint-disable-next-line no-param-reassign
14112
14185
  containerEl.innerHTML = loginFailedMessage;
14113
14186
  notifyAuthFailure(AuthFailureType.OTHER);
@@ -14208,7 +14281,7 @@ function processTrigger(iFrame, messageType, thoughtSpotHost, data) {
14208
14281
  });
14209
14282
  }
14210
14283
 
14211
- var name="@thoughtspot/visual-embed-sdk";var version="1.32.4";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 . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.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 | coveralls","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={algoliasearch:"^4.10.5",classnames:"^2.3.1",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^46.9.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.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":"^8.2.6","@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":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/lodash":"^4.17.0","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","current-git-branch":"^1.1.0","dts-bundle":"^0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.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:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^5.3.4"};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,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"48 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};
14284
+ var name="@thoughtspot/visual-embed-sdk";var version="1.32.7";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 . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.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 | coveralls","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={algoliasearch:"^4.10.5",classnames:"^2.3.1",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^46.9.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.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":"^8.2.6","@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":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/lodash":"^4.17.0","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","current-git-branch":"^1.1.0","dts-bundle":"^0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.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:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^5.3.4"};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,description:description,module:module,main:main,types:types,files:files,exports:exports,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"48 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};
14212
14285
 
14213
14286
  /**
14214
14287
  * Copyright (c) 2022
@@ -15168,7 +15241,7 @@ class TsEmbed {
15168
15241
  * @version SDK: 1.25.0 / ThoughtSpot 9.10.0
15169
15242
  */
15170
15243
  async getAnswerService(vizId) {
15171
- const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId);
15244
+ const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId ? { vizId } : {});
15172
15245
  return new AnswerService(session, null, this.embedConfig.thoughtSpotHost);
15173
15246
  }
15174
15247
  }
@@ -15183,7 +15256,6 @@ class V1Embed extends TsEmbed {
15183
15256
  super(domSelector, viewConfig);
15184
15257
  /**
15185
15258
  * Only for testing purposes.
15186
- *
15187
15259
  * @hidden
15188
15260
  */
15189
15261
  // eslint-disable-next-line camelcase
@@ -15352,7 +15424,7 @@ class AppEmbed extends V1Embed {
15352
15424
  getEmbedParams() {
15353
15425
  const { tag, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = true, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, isOnBeforeGetVizDataInterceptEnabled = false,
15354
15426
  /* eslint-disable-next-line max-len */
15355
- dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, homePageSearchBarMode, } = this.viewConfig;
15427
+ dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, homePageSearchBarMode, } = this.viewConfig;
15356
15428
  let params = {};
15357
15429
  params[Param.EmbedApp] = true;
15358
15430
  params[Param.PrimaryNavHidden] = !showPrimaryNavbar;
@@ -15364,6 +15436,9 @@ class AppEmbed extends V1Embed {
15364
15436
  params[Param.ShowLiveboardDescription] = !!showLiveboardDescription;
15365
15437
  params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
15366
15438
  params[Param.IsFullAppEmbed] = true;
15439
+ params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
15440
+ params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
15441
+ params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
15367
15442
  params = this.getBaseQueryParams(params);
15368
15443
  if (fullHeight === true) {
15369
15444
  params[Param.fullHeight] = true;
@@ -15636,7 +15711,7 @@ class LiveboardEmbed extends V1Embed {
15636
15711
  let params = {};
15637
15712
  params[Param.EmbedApp] = true;
15638
15713
  params = this.getBaseQueryParams(params);
15639
- const { enableVizTransformations, fullHeight, defaultHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, enableAskSage, enable2ColumnLayout, dataPanelV2 = true, } = this.viewConfig;
15714
+ const { enableVizTransformations, fullHeight, defaultHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, enableAskSage, enable2ColumnLayout, dataPanelV2 = true, } = this.viewConfig;
15640
15715
  const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
15641
15716
  || this.viewConfig.preventPinboardFilterRemoval;
15642
15717
  if (fullHeight === true) {
@@ -15680,6 +15755,9 @@ class LiveboardEmbed extends V1Embed {
15680
15755
  params[Param.enableAskSage] = enableAskSage;
15681
15756
  }
15682
15757
  params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
15758
+ params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
15759
+ params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
15760
+ params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
15683
15761
  params[Param.DataPanelV2Enabled] = dataPanelV2;
15684
15762
  const queryParams = getQueryParamString(params, true);
15685
15763
  return queryParams;
package/dist/tsembed.js CHANGED
@@ -1455,21 +1455,61 @@
1455
1455
  */
1456
1456
  EmbedEvent["Rename"] = "rename";
1457
1457
  /**
1458
- * Emitted when user wants to intercept the search execution
1458
+ * Emitted if the user wants to intercept the search execution
1459
+ * and implement logic to decide whether to run the search or not
1459
1460
  *
1460
- * Set IsOnBeforeGetVizDataInterceptEnabled : true to use
1461
- * this embed event
1461
+ * Prerequisite: Set isOnBeforeGetVizDataInterceptEnabled : true
1462
+ * for this embed event to get emitted.
1463
+ *
1464
+ * Parameter: payload
1465
+ * Parameter: responder
1466
+ * Contains elements that lets developers define whether ThoughtSpot
1467
+ * will run the search or not, and if not, which error message to provide.
1468
+ *
1469
+ * execute: When execute returns true, the search will be run.
1470
+ * When execute returns false, the search will not be executed.
1471
+ *
1472
+ * error: Developers can customize the user facing message when execute is
1473
+ * set to false using the error parameter in responder
1474
+ *
1475
+ * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
1462
1476
  *
1463
1477
  *```js
1464
- * searchEmbed.on(EmbedEvent.OnBeforeGetVizDataIntercept,
1478
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
1465
1479
  * (payload, responder) => {
1466
1480
  * responder({
1467
1481
  * data: {
1468
- * execute: true,
1469
- * }})
1482
+ * execute:false,
1483
+ * error: {
1484
+ * //Provide a custom error message to explain to your end user
1485
+ * //why their search did not run
1486
+ * errorText: "This search query cannot be run.
1487
+ * Please contact your administrator for more details."
1488
+ * }
1489
+ * }})
1490
+ * })
1491
+ * ```
1492
+ *
1493
+ *```js
1494
+ * .on(EmbedEvent.OnBeforeGetVizDataIntercept,
1495
+ * (payload, responder) => {
1496
+ * const query = payload.data.data.answer.search_query
1497
+ * responder({
1498
+ * data: {
1499
+ * // returns true as long as the query does not include
1500
+ * // both the 'sales' AND the 'county' column
1501
+ * execute: !(query.includes("sales")&&query.includes("county")),
1502
+ * error: {
1503
+ * //Provide a custom error message to explain to your end user
1504
+ * // why their search did not run, and which searches are accepted by your custom logic.
1505
+ * errorText: "You can't use this query :" + query + ".
1506
+ * The 'sales' measures can never be used at the 'county' level.
1507
+ * Please try another measure, or remove 'county' from your search."
1508
+ * }
1509
+ * }})
1470
1510
  * })
1471
1511
  *```
1472
- * @version SDK : 1.29.0 | Thoughtspot : 10.2.0.cl
1512
+ *
1473
1513
  */
1474
1514
  EmbedEvent["OnBeforeGetVizDataIntercept"] = "onBeforeGetVizDataIntercept";
1475
1515
  /**
@@ -1566,6 +1606,15 @@
1566
1606
  * @hidden
1567
1607
  */
1568
1608
  HostEvent["Reload"] = "reload";
1609
+ /**
1610
+ * Get current iframe src
1611
+ * @example
1612
+ * ```js
1613
+ * const frameUrl = AppEmbed.trigger(HostEvent.GetIframeUrl)
1614
+ * ```
1615
+ * @version SDK: 1.35.0 | Thoughtspot: 10.4.0.cl
1616
+ */
1617
+ HostEvent["GetIframeUrl"] = "GetIframeUrl";
1569
1618
  /**
1570
1619
  * Display specific visualizations on a Liveboard.
1571
1620
  * @param - An array of GUIDs of the visualization to show. The visualization IDs not passed
@@ -2430,6 +2479,9 @@
2430
2479
  Param["FocusSearchBarOnRender"] = "focusSearchBarOnRender";
2431
2480
  Param["DisableRedirectionLinksInNewTab"] = "disableRedirectionLinksInNewTab";
2432
2481
  Param["HomePageSearchBarMode"] = "homePageSearchBarMode";
2482
+ Param["ShowLiveboardVerifiedBadge"] = "showLiveboardVerifiedBadge";
2483
+ Param["ShowLiveboardReverifyBanner"] = "showLiveboardReverifyBanner";
2484
+ Param["LiveboardHeaderV2"] = "isLiveboardHeaderV2Enabled";
2433
2485
  })(Param || (Param = {}));
2434
2486
  (function (Action) {
2435
2487
  /**
@@ -6479,6 +6531,20 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
6479
6531
  credentials: 'include',
6480
6532
  });
6481
6533
  }
6534
+ /**
6535
+ * Fetch the data for the answer as a PNG blob. This might be
6536
+ * quicker for larger data.
6537
+ * @param userLocale
6538
+ * @param omitBackground Omit the background in the PNG
6539
+ * @param deviceScaleFactor The scale factor for the PNG
6540
+ * @return Response
6541
+ */
6542
+ async fetchPNGBlob(userLocale = 'en-us', includeInfo = false, omitBackground = false, deviceScaleFactor = 2) {
6543
+ const fetchUrl = this.getFetchPNGBlobUrl(userLocale, omitBackground, deviceScaleFactor);
6544
+ return tokenizedFetch(fetchUrl, {
6545
+ credentials: 'include',
6546
+ });
6547
+ }
6482
6548
  /**
6483
6549
  * Just get the internal URL for this answer's data
6484
6550
  * as a CSV blob.
@@ -6489,6 +6555,13 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
6489
6555
  getFetchCSVBlobUrl(userLocale = 'en-us', includeInfo = false) {
6490
6556
  return `${this.thoughtSpotHost}/prism/download/answer/csv?sessionId=${this.session.sessionId}&genNo=${this.session.genNo}&userLocale=${userLocale}&exportFileName=data&hideCsvHeader=${!includeInfo}`;
6491
6557
  }
6558
+ /**
6559
+ * Just get the internal URL for this answer's data
6560
+ * as a PNG blob.
6561
+ */
6562
+ getFetchPNGBlobUrl(userLocale = 'en-us', omitBackground = false, deviceScaleFactor = 2) {
6563
+ return `${this.thoughtSpotHost}/prism/download/answer/png?sessionId=${this.session.sessionId}&deviceScaleFactor=${deviceScaleFactor}&omitBackground=${omitBackground}&genNo=${this.session.genNo}&userLocale=${userLocale}&exportFileName=data`;
6564
+ }
6492
6565
  /**
6493
6566
  * Get underlying data given a point and the output column names.
6494
6567
  * In case of a context menu action, the selectedPoints are
@@ -13816,18 +13889,18 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
13816
13889
  * ```js
13817
13890
  * executeTML({
13818
13891
  * //Array of metadata Tmls
13819
- metadata_tmls: [
13820
- "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
13821
- \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
13822
- ],
13823
- import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
13824
- create_new: false, // If selected, creates TML objects with new GUIDs.
13825
- }).then(result => {
13826
- console.log(result);
13827
- }).catch(error => {
13828
- console.error(error);
13829
- });
13830
- *
13892
+ metadata_tmls: [
13893
+ "'\''{\"guid\":\"9bd202f5-d431-44bf-9a07-b4f7be372125\",
13894
+ \"liveboard\":{\"name\":\"Parameters Liveboard\"}}'\''"
13895
+ ],
13896
+ import_policy: 'PARTIAL', // Specifies the import policy for the TML import.
13897
+ create_new: false, // If selected, creates TML objects with new GUIDs.
13898
+ }).then(result => {
13899
+ console.log(result);
13900
+ }).catch(error => {
13901
+ console.error(error);
13902
+ });
13903
+ *```
13831
13904
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
13832
13905
  * @group Global methods
13833
13906
  */
@@ -13982,8 +14055,8 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
13982
14055
  * @param containerEl
13983
14056
  */
13984
14057
  function processAuthFailure(e, containerEl) {
13985
- const { loginFailedMessage, authType } = getEmbedConfig();
13986
- if (authType !== exports.AuthType.None) {
14058
+ const { loginFailedMessage, authType, disableLoginFailurePage } = getEmbedConfig();
14059
+ if (authType !== exports.AuthType.None && !disableLoginFailurePage) {
13987
14060
  // eslint-disable-next-line no-param-reassign
13988
14061
  containerEl.innerHTML = loginFailedMessage;
13989
14062
  notifyAuthFailure(exports.AuthFailureType.OTHER);
@@ -14084,7 +14157,7 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
14084
14157
  });
14085
14158
  }
14086
14159
 
14087
- var name="@thoughtspot/visual-embed-sdk";var version="1.32.4";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 . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.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 | coveralls","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={algoliasearch:"^4.10.5",classnames:"^2.3.1",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^46.9.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.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":"^8.2.6","@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":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/lodash":"^4.17.0","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","current-git-branch":"^1.1.0","dts-bundle":"^0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.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:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^5.3.4"};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,description:description,module:module,main:main,types:types,files:files,exports:exports$1,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"48 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};
14160
+ var name="@thoughtspot/visual-embed-sdk";var version="1.32.7";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 . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",build:"rollup -c",watch:"rollup -cw",docgen:"typedoc --tsconfig tsconfig.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 | coveralls","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={algoliasearch:"^4.10.5",classnames:"^2.3.1",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^46.9.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.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":"^8.2.6","@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":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/lodash":"^4.17.0","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","current-git-branch":"^1.1.0","dts-bundle":"^0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.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:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","url-search-params-polyfill":"^8.1.0",util:"^0.12.4",vite:"^5.3.4"};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,description:description,module:module,main:main,types:types,files:files,exports:exports$1,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"48 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};
14088
14161
 
14089
14162
  /**
14090
14163
  * Copyright (c) 2022
@@ -15044,7 +15117,7 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
15044
15117
  * @version SDK: 1.25.0 / ThoughtSpot 9.10.0
15045
15118
  */
15046
15119
  async getAnswerService(vizId) {
15047
- const { session } = await this.trigger(exports.HostEvent.GetAnswerSession, vizId);
15120
+ const { session } = await this.trigger(exports.HostEvent.GetAnswerSession, vizId ? { vizId } : {});
15048
15121
  return new AnswerService(session, null, this.embedConfig.thoughtSpotHost);
15049
15122
  }
15050
15123
  }
@@ -15059,7 +15132,6 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
15059
15132
  super(domSelector, viewConfig);
15060
15133
  /**
15061
15134
  * Only for testing purposes.
15062
- *
15063
15135
  * @hidden
15064
15136
  */
15065
15137
  // eslint-disable-next-line camelcase
@@ -15223,7 +15295,7 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
15223
15295
  getEmbedParams() {
15224
15296
  const { tag, hideObjects, liveboardV2, showPrimaryNavbar, disableProfileAndHelp, hideApplicationSwitcher, hideOrgSwitcher, enableSearchAssist, fullHeight, dataPanelV2 = true, hideLiveboardHeader = false, showLiveboardTitle = true, showLiveboardDescription = true, hideHomepageLeftNav = false, modularHomeExperience = false, isLiveboardHeaderSticky = true, enableAskSage, collapseSearchBarInitially = false, enable2ColumnLayout, enableCustomColumnGroups = false, isOnBeforeGetVizDataInterceptEnabled = false,
15225
15297
  /* eslint-disable-next-line max-len */
15226
- dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, homePageSearchBarMode, } = this.viewConfig;
15298
+ dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL, collapseSearchBar = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, homePageSearchBarMode, } = this.viewConfig;
15227
15299
  let params = {};
15228
15300
  params[Param.EmbedApp] = true;
15229
15301
  params[Param.PrimaryNavHidden] = !showPrimaryNavbar;
@@ -15235,6 +15307,9 @@ mutation RemoveColumns($session: BachSessionIdInput!, $logicalColumnIds: [GUID!]
15235
15307
  params[Param.ShowLiveboardDescription] = !!showLiveboardDescription;
15236
15308
  params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
15237
15309
  params[Param.IsFullAppEmbed] = true;
15310
+ params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
15311
+ params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
15312
+ params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
15238
15313
  params = this.getBaseQueryParams(params);
15239
15314
  if (fullHeight === true) {
15240
15315
  params[Param.fullHeight] = true;
@@ -15507,7 +15582,7 @@ query GetEurekaVizSnapshots(
15507
15582
  let params = {};
15508
15583
  params[Param.EmbedApp] = true;
15509
15584
  params = this.getBaseQueryParams(params);
15510
- const { enableVizTransformations, fullHeight, defaultHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, enableAskSage, enable2ColumnLayout, dataPanelV2 = true, } = this.viewConfig;
15585
+ const { enableVizTransformations, fullHeight, defaultHeight, visibleVizs, liveboardV2, vizId, hideTabPanel, activeTabId, hideLiveboardHeader, showLiveboardDescription, showLiveboardTitle, isLiveboardHeaderSticky = true, isLiveboardCompactHeaderEnabled = false, showLiveboardVerifiedBadge = true, showLiveboardReverifyBanner = true, enableAskSage, enable2ColumnLayout, dataPanelV2 = true, } = this.viewConfig;
15511
15586
  const preventLiveboardFilterRemoval = this.viewConfig.preventLiveboardFilterRemoval
15512
15587
  || this.viewConfig.preventPinboardFilterRemoval;
15513
15588
  if (fullHeight === true) {
@@ -15551,6 +15626,9 @@ query GetEurekaVizSnapshots(
15551
15626
  params[Param.enableAskSage] = enableAskSage;
15552
15627
  }
15553
15628
  params[Param.LiveboardHeaderSticky] = isLiveboardHeaderSticky;
15629
+ params[Param.LiveboardHeaderV2] = isLiveboardCompactHeaderEnabled;
15630
+ params[Param.ShowLiveboardVerifiedBadge] = showLiveboardVerifiedBadge;
15631
+ params[Param.ShowLiveboardReverifyBanner] = showLiveboardReverifyBanner;
15554
15632
  params[Param.DataPanelV2Enabled] = dataPanelV2;
15555
15633
  const queryParams = getQueryParamString(params, true);
15556
15634
  return queryParams;