@thoughtspot/visual-embed-sdk 1.46.5-beta.1 → 1.46.5

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 (180) hide show
  1. package/cjs/package.json +4 -4
  2. package/cjs/src/css-variables.d.ts +36 -0
  3. package/cjs/src/css-variables.d.ts.map +1 -1
  4. package/cjs/src/embed/app.d.ts +41 -2
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +26 -46
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +36 -69
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/conversation.d.ts +23 -1
  11. package/cjs/src/embed/conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/conversation.js +18 -33
  13. package/cjs/src/embed/conversation.js.map +1 -1
  14. package/cjs/src/embed/conversation.spec.js +129 -97
  15. package/cjs/src/embed/conversation.spec.js.map +1 -1
  16. package/cjs/src/embed/hostEventClient/contracts.d.ts +31 -0
  17. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  18. package/cjs/src/embed/hostEventClient/contracts.js +2 -0
  19. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  20. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +18 -0
  21. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  22. package/cjs/src/embed/hostEventClient/host-event-client.js +69 -9
  23. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  24. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +185 -19
  25. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  26. package/cjs/src/embed/hostEventClient/utils.d.ts +22 -0
  27. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -0
  28. package/cjs/src/embed/hostEventClient/utils.js +51 -0
  29. package/cjs/src/embed/hostEventClient/utils.js.map +1 -0
  30. package/cjs/src/embed/hostEventClient/utils.spec.d.ts +2 -0
  31. package/cjs/src/embed/hostEventClient/utils.spec.d.ts.map +1 -0
  32. package/cjs/src/embed/hostEventClient/utils.spec.js +115 -0
  33. package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -0
  34. package/cjs/src/embed/liveboard.d.ts +18 -1
  35. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  36. package/cjs/src/embed/liveboard.js +9 -11
  37. package/cjs/src/embed/liveboard.js.map +1 -1
  38. package/cjs/src/embed/liveboard.spec.js +29 -71
  39. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  40. package/cjs/src/embed/spotter-utils.d.ts +20 -0
  41. package/cjs/src/embed/spotter-utils.d.ts.map +1 -0
  42. package/cjs/src/embed/spotter-utils.js +52 -0
  43. package/cjs/src/embed/spotter-utils.js.map +1 -0
  44. package/cjs/src/embed/spotter-utils.spec.d.ts +2 -0
  45. package/cjs/src/embed/spotter-utils.spec.d.ts.map +1 -0
  46. package/cjs/src/embed/spotter-utils.spec.js +54 -0
  47. package/cjs/src/embed/spotter-utils.spec.js.map +1 -0
  48. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  49. package/cjs/src/embed/ts-embed.js +13 -1
  50. package/cjs/src/embed/ts-embed.js.map +1 -1
  51. package/cjs/src/errors.d.ts +2 -0
  52. package/cjs/src/errors.d.ts.map +1 -1
  53. package/cjs/src/errors.js +2 -0
  54. package/cjs/src/errors.js.map +1 -1
  55. package/cjs/src/types.d.ts +102 -1
  56. package/cjs/src/types.d.ts.map +1 -1
  57. package/cjs/src/types.js +101 -0
  58. package/cjs/src/types.js.map +1 -1
  59. package/cjs/src/utils.d.ts +0 -9
  60. package/cjs/src/utils.d.ts.map +1 -1
  61. package/cjs/src/utils.js +1 -10
  62. package/cjs/src/utils.js.map +1 -1
  63. package/dist/index-ChNydfIz.js +7371 -0
  64. package/dist/index-DGV_zh53.js +7371 -0
  65. package/dist/src/css-variables.d.ts +36 -0
  66. package/dist/src/css-variables.d.ts.map +1 -1
  67. package/dist/src/embed/app.d.ts +41 -2
  68. package/dist/src/embed/app.d.ts.map +1 -1
  69. package/dist/src/embed/conversation.d.ts +23 -1
  70. package/dist/src/embed/conversation.d.ts.map +1 -1
  71. package/dist/src/embed/hostEventClient/contracts.d.ts +31 -0
  72. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  73. package/dist/src/embed/hostEventClient/host-event-client.d.ts +18 -0
  74. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  75. package/dist/src/embed/hostEventClient/utils.d.ts +22 -0
  76. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -0
  77. package/dist/src/embed/hostEventClient/utils.spec.d.ts +2 -0
  78. package/dist/src/embed/hostEventClient/utils.spec.d.ts.map +1 -0
  79. package/dist/src/embed/liveboard.d.ts +18 -1
  80. package/dist/src/embed/liveboard.d.ts.map +1 -1
  81. package/dist/src/embed/spotter-utils.d.ts +20 -0
  82. package/dist/src/embed/spotter-utils.d.ts.map +1 -0
  83. package/dist/src/embed/spotter-utils.spec.d.ts +2 -0
  84. package/dist/src/embed/spotter-utils.spec.d.ts.map +1 -0
  85. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  86. package/dist/src/errors.d.ts +2 -0
  87. package/dist/src/errors.d.ts.map +1 -1
  88. package/dist/src/types.d.ts +102 -1
  89. package/dist/src/types.d.ts.map +1 -1
  90. package/dist/src/utils.d.ts +0 -9
  91. package/dist/src/utils.d.ts.map +1 -1
  92. package/dist/tsembed-react.es.js +324 -110
  93. package/dist/tsembed-react.js +323 -109
  94. package/dist/tsembed.es.js +324 -110
  95. package/dist/tsembed.js +323 -109
  96. package/dist/visual-embed-sdk-react-full.d.ts +266 -3
  97. package/dist/visual-embed-sdk-react.d.ts +266 -3
  98. package/dist/visual-embed-sdk.d.ts +266 -3
  99. package/lib/package.json +4 -4
  100. package/lib/src/css-variables.d.ts +36 -0
  101. package/lib/src/css-variables.d.ts.map +1 -1
  102. package/lib/src/embed/app.d.ts +41 -2
  103. package/lib/src/embed/app.d.ts.map +1 -1
  104. package/lib/src/embed/app.js +28 -48
  105. package/lib/src/embed/app.js.map +1 -1
  106. package/lib/src/embed/app.spec.js +36 -69
  107. package/lib/src/embed/app.spec.js.map +1 -1
  108. package/lib/src/embed/conversation.d.ts +23 -1
  109. package/lib/src/embed/conversation.d.ts.map +1 -1
  110. package/lib/src/embed/conversation.js +19 -34
  111. package/lib/src/embed/conversation.js.map +1 -1
  112. package/lib/src/embed/conversation.spec.js +131 -99
  113. package/lib/src/embed/conversation.spec.js.map +1 -1
  114. package/lib/src/embed/hostEventClient/contracts.d.ts +31 -0
  115. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  116. package/lib/src/embed/hostEventClient/contracts.js +2 -0
  117. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  118. package/lib/src/embed/hostEventClient/host-event-client.d.ts +18 -0
  119. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  120. package/lib/src/embed/hostEventClient/host-event-client.js +69 -9
  121. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  122. package/lib/src/embed/hostEventClient/host-event-client.spec.js +185 -19
  123. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  124. package/lib/src/embed/hostEventClient/utils.d.ts +22 -0
  125. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -0
  126. package/lib/src/embed/hostEventClient/utils.js +43 -0
  127. package/lib/src/embed/hostEventClient/utils.js.map +1 -0
  128. package/lib/src/embed/hostEventClient/utils.spec.d.ts +2 -0
  129. package/lib/src/embed/hostEventClient/utils.spec.d.ts.map +1 -0
  130. package/lib/src/embed/hostEventClient/utils.spec.js +113 -0
  131. package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -0
  132. package/lib/src/embed/liveboard.d.ts +18 -1
  133. package/lib/src/embed/liveboard.d.ts.map +1 -1
  134. package/lib/src/embed/liveboard.js +9 -11
  135. package/lib/src/embed/liveboard.js.map +1 -1
  136. package/lib/src/embed/liveboard.spec.js +29 -71
  137. package/lib/src/embed/liveboard.spec.js.map +1 -1
  138. package/lib/src/embed/spotter-utils.d.ts +20 -0
  139. package/lib/src/embed/spotter-utils.d.ts.map +1 -0
  140. package/lib/src/embed/spotter-utils.js +47 -0
  141. package/lib/src/embed/spotter-utils.js.map +1 -0
  142. package/lib/src/embed/spotter-utils.spec.d.ts +2 -0
  143. package/lib/src/embed/spotter-utils.spec.d.ts.map +1 -0
  144. package/lib/src/embed/spotter-utils.spec.js +52 -0
  145. package/lib/src/embed/spotter-utils.spec.js.map +1 -0
  146. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  147. package/lib/src/embed/ts-embed.js +13 -1
  148. package/lib/src/embed/ts-embed.js.map +1 -1
  149. package/lib/src/errors.d.ts +2 -0
  150. package/lib/src/errors.d.ts.map +1 -1
  151. package/lib/src/errors.js +2 -0
  152. package/lib/src/errors.js.map +1 -1
  153. package/lib/src/types.d.ts +102 -1
  154. package/lib/src/types.d.ts.map +1 -1
  155. package/lib/src/types.js +101 -0
  156. package/lib/src/types.js.map +1 -1
  157. package/lib/src/utils.d.ts +0 -9
  158. package/lib/src/utils.d.ts.map +1 -1
  159. package/lib/src/utils.js +0 -8
  160. package/lib/src/utils.js.map +1 -1
  161. package/lib/src/visual-embed-sdk.d.ts +266 -3
  162. package/package.json +4 -4
  163. package/src/css-variables.ts +45 -0
  164. package/src/embed/app.spec.ts +51 -92
  165. package/src/embed/app.ts +60 -64
  166. package/src/embed/conversation.spec.ts +150 -119
  167. package/src/embed/conversation.ts +30 -54
  168. package/src/embed/hostEventClient/contracts.ts +31 -0
  169. package/src/embed/hostEventClient/host-event-client.spec.ts +260 -19
  170. package/src/embed/hostEventClient/host-event-client.ts +87 -11
  171. package/src/embed/hostEventClient/utils.spec.ts +137 -0
  172. package/src/embed/hostEventClient/utils.ts +61 -0
  173. package/src/embed/liveboard.spec.ts +38 -93
  174. package/src/embed/liveboard.ts +28 -10
  175. package/src/embed/spotter-utils.spec.ts +56 -0
  176. package/src/embed/spotter-utils.ts +65 -0
  177. package/src/embed/ts-embed.ts +15 -1
  178. package/src/errors.ts +2 -0
  179. package/src/types.ts +104 -0
  180. package/src/utils.ts +0 -14
@@ -785,6 +785,42 @@ export interface CustomCssVariables {
785
785
  * Color for section title text (e.g., "Recent", "Older") in the saved chats sidebar.
786
786
  */
787
787
  "--ts-var-saved-chats-section-title-color"?: string;
788
+ /**
789
+ * Text color of the styling panel in the Liveboard.
790
+ */
791
+ "--ts-var-liveboard-styling-panel-text-color"?: string;
792
+ /**
793
+ * Border color of the styling panel in the Liveboard.
794
+ */
795
+ "--ts-var-liveboard-styling-panel-border-color"?: string;
796
+ /**
797
+ * Background color of the styling button in the Liveboard.
798
+ */
799
+ "--ts-var-liveboard-styling-button-background"?: string;
800
+ /**
801
+ * Text color of the styling button in the Liveboard.
802
+ */
803
+ "--ts-var-liveboard-styling-button-text-color"?: string;
804
+ /**
805
+ * Background color of the styling button in the Liveboard on hover.
806
+ */
807
+ "--ts-var-liveboard-styling-button-hover-background"?: string;
808
+ /**
809
+ * Background color of the styling button in the Liveboard when active.
810
+ */
811
+ "--ts-var-liveboard-styling-button-active-background"?: string;
812
+ /**
813
+ * Text color of the styling button in the Liveboard on hover.
814
+ */
815
+ "--ts-var-liveboard-styling-button-hover-text-color"?: string;
816
+ /**
817
+ * Box shadow of the styling button in the Liveboard.
818
+ */
819
+ "--ts-var-liveboard-styling-button-shadow"?: string;
820
+ /**
821
+ * Background color of the color palette in the Liveboard styling panel.
822
+ */
823
+ "--ts-var-liveboard-styling-color-palette-background"?: string;
788
824
  }
789
825
  export interface SessionInterface {
790
826
  sessionId: string;
@@ -3560,6 +3596,17 @@ export declare enum EmbedEvent {
3560
3596
  * ```
3561
3597
  */
3562
3598
  DownloadAsXlsx = "downloadAsXlsx",
3599
+ /**
3600
+ * Emitted when the Download Liveboard as Continuous PDF action is triggered
3601
+ * on a Liveboard.
3602
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
3603
+ * @example
3604
+ * ```js
3605
+ * liveboardEmbed.on(EmbedEvent.DownloadLiveboardAsContinuousPDF, payload => {
3606
+ * console.log('download liveboard as continuous PDF', payload)})
3607
+ * ```
3608
+ */
3609
+ DownloadLiveboardAsContinuousPDF = "downloadLiveboardAsContinuousPDF",
3563
3610
  /**
3564
3611
  * Emitted when an Answer is deleted in the app
3565
3612
  * Use start:true to subscribe to when delete is initiated, or end:true to subscribe
@@ -5087,6 +5134,18 @@ export declare enum HostEvent {
5087
5134
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5088
5135
  */
5089
5136
  DownloadAsPdf = "downloadAsPdf",
5137
+ /**
5138
+ * Trigger the **Download Liveboard as Continuous PDF** action on an
5139
+ * embedded Liveboard.
5140
+ *
5141
+ * @example
5142
+ * ```js
5143
+ * liveboardEmbed.trigger(HostEvent.DownloadLiveboardAsContinuousPDF)
5144
+ * ```
5145
+ *
5146
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
5147
+ */
5148
+ DownloadLiveboardAsContinuousPDF = "downloadLiveboardAsContinuousPDF",
5090
5149
  /**
5091
5150
  * Trigger the **AI Highlights** action on an embedded Liveboard
5092
5151
  *
@@ -5313,6 +5372,20 @@ export declare enum HostEvent {
5313
5372
  * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5314
5373
  * }, ContextType.Liveboard);
5315
5374
  * ```
5375
+ * @example
5376
+ * ```js
5377
+ * // Copy link from liveboard context
5378
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5379
+ * liveboardEmbed.trigger(HostEvent.CopyLink, {}, ContextType.Liveboard);
5380
+ * ```
5381
+ * @example
5382
+ * ```js
5383
+ * // Copy link from liveboard visualization context
5384
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5385
+ * liveboardEmbed.trigger(HostEvent.CopyLink, {
5386
+ * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5387
+ * }, ContextType.Liveboard);
5388
+ * ```
5316
5389
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5317
5390
  */
5318
5391
  CopyLink = "embedDocument",
@@ -5344,6 +5417,20 @@ export declare enum HostEvent {
5344
5417
  * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5345
5418
  * liveboardEmbed.trigger(HostEvent.Present, {}, ContextType.Liveboard);
5346
5419
  * ```
5420
+ * @example
5421
+ * ```js
5422
+ * // Present from liveboard visualization context
5423
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5424
+ * liveboardEmbed.trigger(HostEvent.Present, {
5425
+ * vizId: '730496d6-6903-4601-937e-2c691821af3c'
5426
+ * }, ContextType.Liveboard);
5427
+ * ```
5428
+ * @example
5429
+ * ```js
5430
+ * // Present from liveboard context
5431
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5432
+ * liveboardEmbed.trigger(HostEvent.Present, {}, ContextType.Liveboard);
5433
+ * ```
5347
5434
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1.sw
5348
5435
  */
5349
5436
  Present = "present",
@@ -6829,6 +6916,16 @@ export declare enum Action {
6829
6916
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
6830
6917
  */
6831
6918
  DownloadLiveboard = "downloadLiveboard",
6919
+ /**
6920
+ * The **Download Liveboard as Continuous PDF** menu action on a Liveboard.
6921
+ * Allows downloading the entire Liveboard as a continuous PDF.
6922
+ * @example
6923
+ * ```js
6924
+ * disabledActions: [Action.DownloadLiveboardAsContinuousPDF]
6925
+ * ```
6926
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
6927
+ */
6928
+ DownloadLiveboardAsContinuousPDF = "downloadLiveboardAsContinuousPDF",
6832
6929
  /**
6833
6930
  * @hidden
6834
6931
  */
@@ -8044,6 +8141,39 @@ export declare enum Action {
8044
8141
  * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
8045
8142
  */
8046
8143
  SpotterDocs = "spotterDocs",
8144
+ /**
8145
+ * Controls visibility and disable state of the connector resources
8146
+ * section in the Spotter chat interface.
8147
+ * @example
8148
+ * ```js
8149
+ * hiddenActions: [Action.SpotterChatConnectorResources]
8150
+ * disabledActions: [Action.SpotterChatConnectorResources]
8151
+ * ```
8152
+ * @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
8153
+ */
8154
+ SpotterChatConnectorResources = "spotterChatConnectorResources",
8155
+ /**
8156
+ * Controls visibility and disable state of the connectors
8157
+ * in the Spotter chat interface.
8158
+ * @example
8159
+ * ```js
8160
+ * hiddenActions: [Action.SpotterChatConnectors]
8161
+ * disabledActions: [Action.SpotterChatConnectors]
8162
+ * ```
8163
+ * @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
8164
+ */
8165
+ SpotterChatConnectors = "spotterChatConnectors",
8166
+ /**
8167
+ * Controls visibility and disable state of the mode switcher
8168
+ * in the Spotter chat interface.
8169
+ * @example
8170
+ * ```js
8171
+ * hiddenActions: [Action.SpotterChatModeSwitcher]
8172
+ * disabledActions: [Action.SpotterChatModeSwitcher]
8173
+ * ```
8174
+ * @version SDK: 1.48.0 | ThoughtSpot Cloud: 26.5.0.cl
8175
+ */
8176
+ SpotterChatModeSwitcher = "spotterChatModeSwitcher",
8047
8177
  /**
8048
8178
  * The **Include current period** checkbox for date filters.
8049
8179
  * Controls the visibility and availability of the option to include
@@ -8294,7 +8424,13 @@ declare enum EmbedErrorCodes {
8294
8424
  /** Failed to update embed parameters during pre-render */
8295
8425
  UPDATE_PARAMS_FAILED = "UPDATE_PARAMS_FAILED",
8296
8426
  /** Invalid URL provided in configuration */
8297
- INVALID_URL = "INVALID_URL"
8427
+ INVALID_URL = "INVALID_URL",
8428
+ /** Host event payload validation failed */
8429
+ HOST_EVENT_VALIDATION = "HOST_EVENT_VALIDATION",
8430
+ /** UpdateFilters payload is invalid - missing or malformed filter/filters */
8431
+ UPDATEFILTERS_INVALID_PAYLOAD = "UPDATEFILTERS_INVALID_PAYLOAD",
8432
+ /** DrillDown payload is invalid - missing or malformed points */
8433
+ DRILLDOWN_INVALID_PAYLOAD = "DRILLDOWN_INVALID_PAYLOAD"
8298
8434
  }
8299
8435
  /**
8300
8436
  * Error event object emitted when an error occurs in an embedded component.
@@ -8683,6 +8819,8 @@ export declare enum UIPassthroughEvent {
8683
8819
  GetAnswerConfig = "getAnswerPageConfig",
8684
8820
  GetLiveboardConfig = "getPinboardPageConfig",
8685
8821
  GetUnsavedAnswerTML = "getUnsavedAnswerTML",
8822
+ UpdateFilters = "updateFilters",
8823
+ Drilldown = "drillDown",
8686
8824
  GetAnswerSession = "getAnswerSession",
8687
8825
  GetFilters = "getFilters",
8688
8826
  GetIframeUrl = "getIframeUrl",
@@ -8804,6 +8942,35 @@ export type UIPassthroughContractBase = {
8804
8942
  v2Content: string;
8805
8943
  };
8806
8944
  };
8945
+ [UIPassthroughEvent.UpdateFilters]: {
8946
+ request: {
8947
+ filter?: {
8948
+ column: string;
8949
+ oper: string;
8950
+ values: string[];
8951
+ type?: string;
8952
+ };
8953
+ filters?: {
8954
+ column: string;
8955
+ oper: string;
8956
+ values: string[];
8957
+ type?: string;
8958
+ }[];
8959
+ };
8960
+ response: unknown;
8961
+ };
8962
+ [UIPassthroughEvent.Drilldown]: {
8963
+ request: {
8964
+ points: {
8965
+ selectedPoints?: string[];
8966
+ clickedPoint?: string;
8967
+ };
8968
+ columnGuid?: string;
8969
+ autoDrillDown?: boolean;
8970
+ vizId?: string;
8971
+ };
8972
+ response: unknown;
8973
+ };
8807
8974
  };
8808
8975
  export type UIPassthroughRequest<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["request"];
8809
8976
  export type UIPassthroughResponse<T extends keyof UIPassthroughContractBase> = UIPassthroughContractBase[T]["response"];
@@ -8829,6 +8996,8 @@ export type TriggerPayload<PayloadT, HostEventT extends HostEvent> = PayloadT |
8829
8996
  export type TriggerResponse<PayloadT, HostEventT extends HostEvent, ContextT extends ContextType> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT, ContextT> : any;
8830
8997
  declare class HostEventClient {
8831
8998
  iFrame: HTMLIFrameElement;
8999
+ /** Cached list of available UI passthrough keys from the embedded app */
9000
+ private availablePassthroughKeysCache;
8832
9001
  /** Host events with custom handlers
8833
9002
  * (setters or special logic) -
8834
9003
  * bound to instance for protected method access */
@@ -8854,9 +9023,25 @@ declare class HostEventClient {
8854
9023
  * @param {HTMLIFrameElement} iFrame - the iframe element to set
8855
9024
  */
8856
9025
  setIframeElement(iFrame: HTMLIFrameElement): void;
9026
+ /**
9027
+ * Fetches the list of available UI passthrough keys from the embedded app.
9028
+ * Result is cached for the session. Returns empty array on failure.
9029
+ */
9030
+ private getAvailableUIPassthroughKeys;
8857
9031
  triggerUIPassthroughApi<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>, context?: ContextType): Promise<UIPassthroughArrayResponse<UIPassthroughEventT>>;
8858
9032
  protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>, context?: ContextType): Promise<HostEventResponse<HostEvent.Pin, ContextType>>;
8859
9033
  protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>, context?: ContextType): Promise<any>;
9034
+ protected handleUpdateFiltersEvent(payload: HostEventRequest<HostEvent.UpdateFilters>, context?: ContextType): Promise<any>;
9035
+ protected handleDrillDownEvent(payload: HostEventRequest<HostEvent.DrillDown>, context?: ContextType): Promise<any>;
9036
+ /**
9037
+ * Dispatches a host event using the appropriate channel:
9038
+ * 1. If the embedded app supports UI passthrough for this event, use it (custom handler or getter).
9039
+ * 2. Otherwise fall back to the legacy host event channel.
9040
+ *
9041
+ * @param hostEvent - The host event to trigger
9042
+ * @param payload - Optional payload for the event
9043
+ * @param context - Optional context (e.g. vizId) for scoped operations
9044
+ */
8860
9045
  triggerHostEvent<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextType>>;
8861
9046
  }
8862
9047
  declare class TsEmbed {
@@ -10278,9 +10463,31 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
10278
10463
  */
10279
10464
  export interface ConversationViewConfig extends SpotterEmbedViewConfig {
10280
10465
  }
10466
+ /**
10467
+ * APP_INIT data shape for SpotterEmbed.
10468
+ * @internal
10469
+ */
10470
+ export interface SpotterAppInitData extends DefaultAppInitData {
10471
+ embedParams?: {
10472
+ spotterSidebarConfig?: SpotterSidebarViewConfig;
10473
+ };
10474
+ }
10281
10475
  declare class SpotterEmbed extends TsEmbed {
10282
10476
  protected viewConfig: SpotterEmbedViewConfig;
10283
10477
  constructor(container: HTMLElement, viewConfig: SpotterEmbedViewConfig);
10478
+ /**
10479
+ * Extends the default APP_INIT payload with `embedParams.spotterSidebarConfig`
10480
+ * so the conv-assist app can read sidebar configuration on initialisation.
10481
+ *
10482
+ * Precedence for `enablePastConversationsSidebar`:
10483
+ * `spotterSidebarConfig.enablePastConversationsSidebar` wins over the
10484
+ * deprecated top-level `enablePastConversationsSidebar` flag; if the former
10485
+ * is absent the latter is used as a fallback.
10486
+ *
10487
+ * An invalid `spotterDocumentationUrl` triggers a validation error and is
10488
+ * excluded from the payload rather than forwarded to the app.
10489
+ */
10490
+ protected getAppInitData(): Promise<SpotterAppInitData>;
10284
10491
  protected getEmbedParamsObject(): Record<any, any>;
10285
10492
  getIframeSrc(): string;
10286
10493
  render(): Promise<SpotterEmbed>;
@@ -10829,6 +11036,24 @@ export interface AppViewConfig extends AllEmbedViewConfig {
10829
11036
  * ```
10830
11037
  */
10831
11038
  isPNGInScheduledEmailsEnabled?: boolean;
11039
+ /**
11040
+ * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
11041
+ * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
11042
+ * This feature is GA from version 26.5.0.cl and is enabled by default on embed deployments.
11043
+ *
11044
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11045
+ * @type {boolean}
11046
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
11047
+ * @example
11048
+ * ```js
11049
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
11050
+ * const embed = new <EmbedComponent>('#tsEmbed', {
11051
+ * ... // other embed view config
11052
+ * isContinuousLiveboardPDFEnabled: true,
11053
+ * })
11054
+ * ```
11055
+ */
11056
+ isContinuousLiveboardPDFEnabled?: boolean;
10832
11057
  /**
10833
11058
  * This flag is used to enable/disable the XLSX/CSV download option for Liveboards
10834
11059
  *
@@ -10997,10 +11222,32 @@ export interface AppViewConfig extends AllEmbedViewConfig {
10997
11222
  */
10998
11223
  enableHomepageAnnouncement?: boolean;
10999
11224
  }
11225
+ /**
11226
+ * APP_INIT data shape for AppEmbed.
11227
+ * @internal
11228
+ */
11229
+ export interface AppEmbedAppInitData extends DefaultAppInitData {
11230
+ embedParams?: {
11231
+ spotterSidebarConfig?: SpotterSidebarViewConfig;
11232
+ };
11233
+ }
11000
11234
  declare class AppEmbed extends V1Embed {
11001
11235
  protected viewConfig: AppViewConfig;
11002
11236
  private defaultHeight;
11003
11237
  constructor(domSelector: DOMSelector, viewConfig: AppViewConfig);
11238
+ /**
11239
+ * Extends the default APP_INIT payload with `embedParams.spotterSidebarConfig`
11240
+ * so the conv-assist app can read sidebar configuration on initialisation.
11241
+ *
11242
+ * Precedence for `enablePastConversationsSidebar`:
11243
+ * `spotterSidebarConfig.enablePastConversationsSidebar` wins over the
11244
+ * deprecated top-level `enablePastConversationsSidebar` flag; if the former
11245
+ * is absent the latter is used as a fallback.
11246
+ *
11247
+ * An invalid `spotterDocumentationUrl` triggers a validation error and is
11248
+ * excluded from the payload rather than forwarded to the app.
11249
+ */
11250
+ protected getAppInitData(): Promise<AppEmbedAppInitData>;
11004
11251
  /**
11005
11252
  * Constructs a map of parameters to be passed on to the
11006
11253
  * embedded Liveboard or visualization.
@@ -11019,7 +11266,6 @@ declare class AppEmbed extends V1Embed {
11019
11266
  * @param pageId The ID of the page to be embedded.
11020
11267
  */
11021
11268
  getIFrameSrc(): string;
11022
- private HEIGHT_CHANAGE_THRESHOLD;
11023
11269
  /**
11024
11270
  * Set the iframe height as per the computed height received
11025
11271
  * from the ThoughtSpot app.
@@ -11419,6 +11665,24 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
11419
11665
  * ```
11420
11666
  */
11421
11667
  isPNGInScheduledEmailsEnabled?: boolean;
11668
+ /**
11669
+ * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
11670
+ * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
11671
+ * This feature is GA from version 26.5.0.cl and is enabled by default on embed deployments.
11672
+ *
11673
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11674
+ * @type {boolean}
11675
+ * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
11676
+ * @example
11677
+ * ```js
11678
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
11679
+ * const embed = new <EmbedComponent>('#tsEmbed', {
11680
+ * ... // other embed view config
11681
+ * isContinuousLiveboardPDFEnabled: true,
11682
+ * })
11683
+ * ```
11684
+ */
11685
+ isContinuousLiveboardPDFEnabled?: boolean;
11422
11686
  /**
11423
11687
  * This flag is used to enable/disable the XLSX/CSV download option for Liveboards
11424
11688
  *
@@ -11564,7 +11828,6 @@ declare class LiveboardEmbed extends V1Embed {
11564
11828
  * to be loaded within the iFrame.
11565
11829
  */
11566
11830
  private getIFrameSrc;
11567
- private HEIGHT_CHANAGE_THRESHOLD;
11568
11831
  /**
11569
11832
  * Set the iframe height as per the computed height received
11570
11833
  * from the ThoughtSpot app.