@thoughtspot/visual-embed-sdk 1.47.2 → 1.48.0

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 (190) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/auth.d.ts.map +1 -1
  3. package/cjs/src/auth.js +11 -1
  4. package/cjs/src/auth.js.map +1 -1
  5. package/cjs/src/auth.spec.js +38 -0
  6. package/cjs/src/auth.spec.js.map +1 -1
  7. package/cjs/src/authToken.d.ts +2 -0
  8. package/cjs/src/authToken.d.ts.map +1 -1
  9. package/cjs/src/authToken.js +7 -5
  10. package/cjs/src/authToken.js.map +1 -1
  11. package/cjs/src/embed/app.d.ts +7 -2
  12. package/cjs/src/embed/app.d.ts.map +1 -1
  13. package/cjs/src/embed/app.js +4 -1
  14. package/cjs/src/embed/app.js.map +1 -1
  15. package/cjs/src/embed/app.spec.js +121 -0
  16. package/cjs/src/embed/app.spec.js.map +1 -1
  17. package/cjs/src/embed/conversation.d.ts +2 -1
  18. package/cjs/src/embed/conversation.d.ts.map +1 -1
  19. package/cjs/src/embed/conversation.js.map +1 -1
  20. package/cjs/src/embed/liveboard.d.ts +1 -1
  21. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  22. package/cjs/src/embed/liveboard.js +4 -1
  23. package/cjs/src/embed/liveboard.js.map +1 -1
  24. package/cjs/src/embed/liveboard.spec.js +32 -0
  25. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  26. package/cjs/src/embed/search.d.ts +24 -1
  27. package/cjs/src/embed/search.d.ts.map +1 -1
  28. package/cjs/src/embed/search.js +15 -2
  29. package/cjs/src/embed/search.js.map +1 -1
  30. package/cjs/src/embed/search.spec.js +99 -0
  31. package/cjs/src/embed/search.spec.js.map +1 -1
  32. package/cjs/src/embed/spotter-utils.d.ts +3 -0
  33. package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
  34. package/cjs/src/embed/spotter-utils.js +11 -3
  35. package/cjs/src/embed/spotter-utils.js.map +1 -1
  36. package/cjs/src/embed/spotter-utils.spec.js +51 -0
  37. package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
  38. package/cjs/src/embed/ts-embed.d.ts +1 -0
  39. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  40. package/cjs/src/embed/ts-embed.js +17 -5
  41. package/cjs/src/embed/ts-embed.js.map +1 -1
  42. package/cjs/src/embed/ts-embed.spec.js +168 -0
  43. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  44. package/cjs/src/index.d.ts +2 -2
  45. package/cjs/src/index.d.ts.map +1 -1
  46. package/cjs/src/index.js +8 -1
  47. package/cjs/src/index.js.map +1 -1
  48. package/cjs/src/mixpanel-service.d.ts.map +1 -1
  49. package/cjs/src/mixpanel-service.js +2 -0
  50. package/cjs/src/mixpanel-service.js.map +1 -1
  51. package/cjs/src/mixpanel-service.spec.js +2 -0
  52. package/cjs/src/mixpanel-service.spec.js.map +1 -1
  53. package/cjs/src/test/test-utils.d.ts +1 -0
  54. package/cjs/src/test/test-utils.d.ts.map +1 -1
  55. package/cjs/src/test/test-utils.js +26 -1
  56. package/cjs/src/test/test-utils.js.map +1 -1
  57. package/cjs/src/tokenizedFetch.d.ts.map +1 -1
  58. package/cjs/src/tokenizedFetch.js +12 -9
  59. package/cjs/src/tokenizedFetch.js.map +1 -1
  60. package/cjs/src/tokenizedFetch.spec.d.ts +2 -0
  61. package/cjs/src/tokenizedFetch.spec.d.ts.map +1 -0
  62. package/cjs/src/tokenizedFetch.spec.js +68 -0
  63. package/cjs/src/tokenizedFetch.spec.js.map +1 -0
  64. package/cjs/src/types.d.ts +466 -13
  65. package/cjs/src/types.d.ts.map +1 -1
  66. package/cjs/src/types.js +149 -5
  67. package/cjs/src/types.js.map +1 -1
  68. package/dist/{index-CFZ7RDZ9.js → index-Ck-r09gt.js} +1 -1
  69. package/dist/src/auth.d.ts.map +1 -1
  70. package/dist/src/authToken.d.ts +2 -0
  71. package/dist/src/authToken.d.ts.map +1 -1
  72. package/dist/src/embed/app.d.ts +7 -2
  73. package/dist/src/embed/app.d.ts.map +1 -1
  74. package/dist/src/embed/conversation.d.ts +2 -1
  75. package/dist/src/embed/conversation.d.ts.map +1 -1
  76. package/dist/src/embed/liveboard.d.ts +1 -1
  77. package/dist/src/embed/liveboard.d.ts.map +1 -1
  78. package/dist/src/embed/search.d.ts +24 -1
  79. package/dist/src/embed/search.d.ts.map +1 -1
  80. package/dist/src/embed/spotter-utils.d.ts +3 -0
  81. package/dist/src/embed/spotter-utils.d.ts.map +1 -1
  82. package/dist/src/embed/ts-embed.d.ts +1 -0
  83. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  84. package/dist/src/index.d.ts +2 -2
  85. package/dist/src/index.d.ts.map +1 -1
  86. package/dist/src/mixpanel-service.d.ts.map +1 -1
  87. package/dist/src/test/test-utils.d.ts +1 -0
  88. package/dist/src/test/test-utils.d.ts.map +1 -1
  89. package/dist/src/tokenizedFetch.d.ts.map +1 -1
  90. package/dist/src/tokenizedFetch.spec.d.ts +2 -0
  91. package/dist/src/tokenizedFetch.spec.d.ts.map +1 -0
  92. package/dist/src/types.d.ts +466 -13
  93. package/dist/src/types.d.ts.map +1 -1
  94. package/dist/tsembed-react.es.js +226 -29
  95. package/dist/tsembed-react.js +225 -28
  96. package/dist/tsembed.es.js +227 -30
  97. package/dist/tsembed.js +225 -28
  98. package/dist/visual-embed-sdk-react-full.d.ts +469 -15
  99. package/dist/visual-embed-sdk-react.d.ts +469 -15
  100. package/dist/visual-embed-sdk.d.ts +497 -15
  101. package/lib/package.json +1 -1
  102. package/lib/src/auth.d.ts.map +1 -1
  103. package/lib/src/auth.js +12 -2
  104. package/lib/src/auth.js.map +1 -1
  105. package/lib/src/auth.spec.js +38 -0
  106. package/lib/src/auth.spec.js.map +1 -1
  107. package/lib/src/authToken.d.ts +2 -0
  108. package/lib/src/authToken.d.ts.map +1 -1
  109. package/lib/src/authToken.js +2 -2
  110. package/lib/src/authToken.js.map +1 -1
  111. package/lib/src/embed/app.d.ts +7 -2
  112. package/lib/src/embed/app.d.ts.map +1 -1
  113. package/lib/src/embed/app.js +4 -1
  114. package/lib/src/embed/app.js.map +1 -1
  115. package/lib/src/embed/app.spec.js +122 -1
  116. package/lib/src/embed/app.spec.js.map +1 -1
  117. package/lib/src/embed/conversation.d.ts +2 -1
  118. package/lib/src/embed/conversation.d.ts.map +1 -1
  119. package/lib/src/embed/conversation.js.map +1 -1
  120. package/lib/src/embed/liveboard.d.ts +1 -1
  121. package/lib/src/embed/liveboard.d.ts.map +1 -1
  122. package/lib/src/embed/liveboard.js +4 -1
  123. package/lib/src/embed/liveboard.js.map +1 -1
  124. package/lib/src/embed/liveboard.spec.js +32 -0
  125. package/lib/src/embed/liveboard.spec.js.map +1 -1
  126. package/lib/src/embed/search.d.ts +24 -1
  127. package/lib/src/embed/search.d.ts.map +1 -1
  128. package/lib/src/embed/search.js +15 -2
  129. package/lib/src/embed/search.js.map +1 -1
  130. package/lib/src/embed/search.spec.js +100 -1
  131. package/lib/src/embed/search.spec.js.map +1 -1
  132. package/lib/src/embed/spotter-utils.d.ts +3 -0
  133. package/lib/src/embed/spotter-utils.d.ts.map +1 -1
  134. package/lib/src/embed/spotter-utils.js +11 -3
  135. package/lib/src/embed/spotter-utils.js.map +1 -1
  136. package/lib/src/embed/spotter-utils.spec.js +51 -0
  137. package/lib/src/embed/spotter-utils.spec.js.map +1 -1
  138. package/lib/src/embed/ts-embed.d.ts +1 -0
  139. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  140. package/lib/src/embed/ts-embed.js +16 -4
  141. package/lib/src/embed/ts-embed.js.map +1 -1
  142. package/lib/src/embed/ts-embed.spec.js +168 -0
  143. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  144. package/lib/src/index.d.ts +2 -2
  145. package/lib/src/index.d.ts.map +1 -1
  146. package/lib/src/index.js +2 -2
  147. package/lib/src/index.js.map +1 -1
  148. package/lib/src/mixpanel-service.d.ts.map +1 -1
  149. package/lib/src/mixpanel-service.js +2 -0
  150. package/lib/src/mixpanel-service.js.map +1 -1
  151. package/lib/src/mixpanel-service.spec.js +2 -0
  152. package/lib/src/mixpanel-service.spec.js.map +1 -1
  153. package/lib/src/test/test-utils.d.ts +1 -0
  154. package/lib/src/test/test-utils.d.ts.map +1 -1
  155. package/lib/src/test/test-utils.js +25 -1
  156. package/lib/src/test/test-utils.js.map +1 -1
  157. package/lib/src/tokenizedFetch.d.ts.map +1 -1
  158. package/lib/src/tokenizedFetch.js +13 -10
  159. package/lib/src/tokenizedFetch.js.map +1 -1
  160. package/lib/src/tokenizedFetch.spec.d.ts +2 -0
  161. package/lib/src/tokenizedFetch.spec.d.ts.map +1 -0
  162. package/lib/src/tokenizedFetch.spec.js +65 -0
  163. package/lib/src/tokenizedFetch.spec.js.map +1 -0
  164. package/lib/src/types.d.ts +466 -13
  165. package/lib/src/types.d.ts.map +1 -1
  166. package/lib/src/types.js +148 -4
  167. package/lib/src/types.js.map +1 -1
  168. package/lib/src/visual-embed-sdk.d.ts +497 -15
  169. package/package.json +1 -1
  170. package/src/auth.spec.ts +55 -1
  171. package/src/auth.ts +11 -2
  172. package/src/authToken.ts +2 -2
  173. package/src/embed/app.spec.ts +154 -0
  174. package/src/embed/app.ts +13 -2
  175. package/src/embed/conversation.ts +2 -1
  176. package/src/embed/liveboard.spec.ts +46 -0
  177. package/src/embed/liveboard.ts +9 -4
  178. package/src/embed/search.spec.ts +118 -0
  179. package/src/embed/search.ts +43 -1
  180. package/src/embed/spotter-utils.spec.ts +52 -0
  181. package/src/embed/spotter-utils.ts +19 -3
  182. package/src/embed/ts-embed.spec.ts +220 -0
  183. package/src/embed/ts-embed.ts +15 -4
  184. package/src/index.ts +16 -0
  185. package/src/mixpanel-service.spec.ts +2 -0
  186. package/src/mixpanel-service.ts +2 -0
  187. package/src/test/test-utils.ts +33 -1
  188. package/src/tokenizedFetch.spec.ts +81 -0
  189. package/src/tokenizedFetch.ts +14 -11
  190. package/src/types.ts +496 -13
@@ -1847,9 +1847,10 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1847
1847
  styleSheet__unstable?: string;
1848
1848
  /**
1849
1849
  * The list of actions to disable from the primary menu, more menu
1850
- * (...), and the contextual menu. These actions will be disabled
1851
- * for the user.
1852
- * Use this to disable actions.
1850
+ * (...), and the contextual menu. Disabled actions are grayed out
1851
+ * and still visible to the user, but cannot be clicked.
1852
+ * Use this when you want to disable an action (keep it visible but non-interactive).
1853
+ * To completely remove an action from the UI, use {@link hiddenActions} instead.
1853
1854
  *
1854
1855
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1855
1856
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
@@ -1880,9 +1881,10 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1880
1881
  */
1881
1882
  disabledActionReason?: string;
1882
1883
  /**
1883
- * The list of actions to hide from the embedded view.
1884
- * These actions will be hidden from the user.
1885
- * Use this to hide an action.
1884
+ * The list of actions to completely remove from the embedded view.
1885
+ * Hidden actions are not visible to the user at all (fully removed from the UI).
1886
+ * Use this when you want to remove an action entirely.
1887
+ * To keep an action visible but non-interactive (grayed out), use {@link disabledActions} instead.
1886
1888
  *
1887
1889
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1888
1890
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
@@ -1901,9 +1903,8 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1901
1903
  * The list of actions to display from the primary menu, more menu
1902
1904
  * (...), and the contextual menu. These will be only actions that
1903
1905
  * are visible to the user.
1904
- * Use this to hide all actions except the ones you want to show.
1905
- *
1906
- * Use either this or hiddenActions.
1906
+ * Use this as an allowlist only the actions listed here will be shown.
1907
+ * All other actions will be hidden. Use either this or {@link hiddenActions}, not both.
1907
1908
  *
1908
1909
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
1909
1910
  * @version SDK: 1.6.0 | ThoughtSpot: ts8.nov.cl, 8.4.1.sw
@@ -2357,6 +2358,7 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2357
2358
  /**
2358
2359
  * Refresh the auth token when the token is near expiry.
2359
2360
  * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
2361
+ * @default true
2360
2362
  * @example
2361
2363
  * ```js
2362
2364
  * const embed = new AppEmbed('#tsEmbed', {
@@ -2906,6 +2908,22 @@ export interface LiveboardAppEmbedViewConfig {
2906
2908
  * ```
2907
2909
  */
2908
2910
  isLiveboardMasterpiecesEnabled?: boolean;
2911
+ /**
2912
+ * Enable or disable Muze chart phase 1 GA
2913
+ *
2914
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2915
+ * @version SDK: 1.49.0 | ThoughtSpot Cloud: 26.6.0.cl
2916
+ * @default false
2917
+ * @example
2918
+ * ```js
2919
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2920
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2921
+ * ... // other embed view config
2922
+ * newChartsLibrary: true,
2923
+ * })
2924
+ * ```
2925
+ */
2926
+ newChartsLibrary?: boolean;
2909
2927
  }
2910
2928
  export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {
2911
2929
  }
@@ -6628,10 +6646,14 @@ export declare enum HostEvent {
6628
6646
  /**
6629
6647
  * ThoughtSpot application pages include actions and menu commands
6630
6648
  * for various user-initiated operations. These actions are represented
6631
- * as enumeration members in the SDK. To show, hide, or disable
6632
- * specific actions in the embedded view, define the Action
6633
- * enumeration members in the `disabledActions`, `visibleActions`,
6634
- * or `hiddenActions` array.
6649
+ * as enumeration members in the SDK. To control actions in the embedded view:
6650
+ * - disabledActions the action is grayed out and still visible, but non-interactive (user can see but not click).
6651
+ * - hiddenActions the action is completely removed from the UI (user cannot see it at all).
6652
+ * - visibleActions — allowlist, only these actions are shown; all others are hidden.
6653
+ *
6654
+ * Use disabledActions to disable (gray out) an action.
6655
+ * Use hiddenActions to hide (fully remove) an action.
6656
+ * Use visibleActions to show only specific actions.
6635
6657
  * @example
6636
6658
  * ```js
6637
6659
  * const embed = new LiveboardEmbed('#tsEmbed', {
@@ -7478,6 +7500,26 @@ export declare enum Action {
7478
7500
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.5.1.sw
7479
7501
  */
7480
7502
  AxisMenuRemove = "axisMenuRemove",
7503
+ /**
7504
+ * The **Compare with** action in the chart axis customization menu.
7505
+ * Allows comparing data across dimensions or measures.
7506
+ * @example
7507
+ * ```js
7508
+ * disabledActions: [Action.AxisMenuCompare]
7509
+ * ```
7510
+ * @version SDK: 1.50.0 | ThoughtSpot: 26.7.0.cl
7511
+ */
7512
+ AxisMenuCompare = "axisMenuCompare",
7513
+ /**
7514
+ * The **Merge with** action in the chart axis customization menu.
7515
+ * Allows merging data across dimensions or measures.
7516
+ * @example
7517
+ * ```js
7518
+ * disabledActions: [Action.AxisMenuMerge]
7519
+ * ```
7520
+ * @version SDK: 1.50.0 | ThoughtSpot: 26.7.0.cl
7521
+ */
7522
+ AxisMenuMerge = "axisMenuMerge",
7481
7523
  /**
7482
7524
  * @hidden
7483
7525
  */
@@ -8585,6 +8627,9 @@ export interface DefaultAppInitData {
8585
8627
  customActions: CustomAction[];
8586
8628
  interceptTimeout: number | undefined;
8587
8629
  interceptUrls: (string | InterceptedApiType)[];
8630
+ embedExpiryInAuthToken: boolean;
8631
+ shouldBypassPayloadValidation?: boolean;
8632
+ useHostEventsV2?: boolean;
8588
8633
  }
8589
8634
  declare enum InterceptedApiType {
8590
8635
  /**
@@ -8699,6 +8744,385 @@ export interface ContextObject {
8699
8744
  objectIds: ObjectIds;
8700
8745
  };
8701
8746
  }
8747
+ export interface FontProperties {
8748
+ color?: string;
8749
+ bold?: boolean;
8750
+ italic?: boolean;
8751
+ strikeThrough?: boolean;
8752
+ underline?: boolean;
8753
+ }
8754
+ export interface SolidBackgroundAttrs {
8755
+ color?: string;
8756
+ }
8757
+ export interface GradientBackgroundAttrs {
8758
+ backgroundFormatMidpoint?: number;
8759
+ colors?: string[];
8760
+ backgroundFormatRange?: number[];
8761
+ isAutoScaled?: boolean;
8762
+ }
8763
+ declare enum DataLabelFilterOperator {
8764
+ /** Greater than */
8765
+ GreaterThan = "GREATER_THAN",
8766
+ /** Less than */
8767
+ LessThan = "LESS_THAN",
8768
+ /** Greater than or equal to */
8769
+ GreaterThanOrEqualTo = "GREATER_THAN_OR_EQUAL_TO",
8770
+ /** Less than or equal to */
8771
+ LessThanOrEqualTo = "LESS_THAN_OR_EQUAL_TO",
8772
+ /** Equal to */
8773
+ EqualTo = "EQUAL_TO",
8774
+ /** Not equal to */
8775
+ NotEqualTo = "NOT_EQUAL_TO"
8776
+ }
8777
+ declare enum ConditionalFormattingOperator {
8778
+ /** Is equal to */
8779
+ Is = "IS",
8780
+ /** Is not equal to */
8781
+ IsNot = "IS_NOT",
8782
+ /** Contains */
8783
+ Contains = "CONTAINS",
8784
+ /** Does not contain */
8785
+ DoesNotContain = "DOES_NOT_CONTAIN",
8786
+ /** Starts with */
8787
+ StartsWith = "STARTS_WITH",
8788
+ /** Ends with */
8789
+ EndsWith = "ENDS_WITH",
8790
+ /** Greater than */
8791
+ GreaterThan = "GREATER_THAN",
8792
+ /** Less than */
8793
+ LessThan = "LESS_THAN",
8794
+ /** Greater than or equal to */
8795
+ GreaterThanEqualTo = "GREATER_THAN_EQUAL_TO",
8796
+ /** Less than or equal to */
8797
+ LessThanEqualTo = "LESS_THAN_EQUAL_TO",
8798
+ /** Equal to */
8799
+ EqualTo = "EQUAL_TO",
8800
+ /** Not equal to */
8801
+ NotEqualTo = "NOT_EQUAL_TO",
8802
+ /** Is between */
8803
+ IsBetween = "IS_BETWEEN",
8804
+ /** Is null */
8805
+ IsNull = "IS_NULL",
8806
+ /** Is not null */
8807
+ IsNotNull = "IS_NOT_NULL"
8808
+ }
8809
+ declare enum BackgroundFormatType {
8810
+ /** Solid color background */
8811
+ Solid = "SOLID",
8812
+ /** Gradient background */
8813
+ Gradient = "GRADIENT"
8814
+ }
8815
+ declare enum ConditionalFormattingComparisonType {
8816
+ /** Value-based comparison */
8817
+ ValueBased = "VALUE_BASED",
8818
+ /** Column-based comparison */
8819
+ ColumnBased = "COLUMN_BASED",
8820
+ /** Parameter-based comparison */
8821
+ ParameterBased = "PARAMETER_BASED"
8822
+ }
8823
+ /**
8824
+ * A single conditional formatting rule row
8825
+ * @group Visual Overrides
8826
+ */
8827
+ export interface ConditionalFormattingRow {
8828
+ /** Comparison operator */
8829
+ operator: ConditionalFormattingOperator | string;
8830
+ /** Value to compare against */
8831
+ value?: string;
8832
+ /** Range values for range-based comparisons */
8833
+ rangeValues?: {
8834
+ min: number;
8835
+ max: number;
8836
+ };
8837
+ /** Plot the formatting as a band/area */
8838
+ plotAsBand?: boolean;
8839
+ /** Highlight this row if the condition is met */
8840
+ isHighlightRow?: boolean;
8841
+ /** Type of comparison: value-based, column-based, or parameter-based */
8842
+ comparisonType?: ConditionalFormattingComparisonType | string;
8843
+ /** Column ID to apply the formatting to (left-hand side) */
8844
+ lhsColumnId?: string;
8845
+ /** Column name to compare against (right-hand side) */
8846
+ columnToCompare?: string;
8847
+ /** Parameter ID to compare against */
8848
+ comparisonParameterId?: string;
8849
+ /** Font properties to apply (color, bold, italic, etc.) */
8850
+ fontProperties?: FontProperties;
8851
+ /** Background format type: solid color or gradient */
8852
+ backgroundFormatType?: BackgroundFormatType | string;
8853
+ /** Solid background color attributes */
8854
+ solidBackgroundAttrs?: SolidBackgroundAttrs;
8855
+ /** Gradient background attributes */
8856
+ gradientBackgroundAttrs?: GradientBackgroundAttrs;
8857
+ }
8858
+ /**
8859
+ * Conditional formatting configuration
8860
+ * @group Visual Overrides
8861
+ */
8862
+ export interface ConditionalFormatting {
8863
+ /** Array of conditional formatting rules */
8864
+ rows?: ConditionalFormattingRow[];
8865
+ }
8866
+ /**
8867
+ * Color palette for charts
8868
+ * @group Visual Overrides
8869
+ */
8870
+ export interface ColorPalette {
8871
+ /** Array of color values (hex codes or color names) */
8872
+ colors?: string[];
8873
+ }
8874
+ declare enum LegendPosition {
8875
+ /** Position legend at the top */
8876
+ Top = "top",
8877
+ /** Position legend at the bottom */
8878
+ Bottom = "bottom",
8879
+ /** Position legend on the left */
8880
+ Left = "left",
8881
+ /** Position legend on the right */
8882
+ Right = "right"
8883
+ }
8884
+ declare enum TableTheme {
8885
+ /** Outline theme */
8886
+ Outline = "OUTLINE",
8887
+ /** Row theme */
8888
+ Row = "ROW",
8889
+ /** Zebra theme */
8890
+ Zebra = "ZEBRA"
8891
+ }
8892
+ declare enum TableContentDensity {
8893
+ /** Regular density */
8894
+ Regular = "REGULAR",
8895
+ /** Compact density */
8896
+ Compact = "COMPACT"
8897
+ }
8898
+ /**
8899
+ * Chart legend configuration
8900
+ * @group Visual Overrides
8901
+ */
8902
+ export interface ChartLegend {
8903
+ /** Show or hide the legend */
8904
+ show?: boolean;
8905
+ /** Position of the legend */
8906
+ position?: LegendPosition | string;
8907
+ /** Color palette to use for legend colors */
8908
+ colorPalette?: ColorPalette;
8909
+ }
8910
+ /**
8911
+ * Filter for data labels
8912
+ * @group Visual Overrides
8913
+ */
8914
+ export interface DataLabelFilter {
8915
+ /** Filter threshold value */
8916
+ value?: number;
8917
+ /** Filter operator */
8918
+ operator?: DataLabelFilterOperator | string;
8919
+ }
8920
+ /**
8921
+ * Data label configuration for a specific column
8922
+ * @group Visual Overrides
8923
+ */
8924
+ export interface ColumnDataLabel {
8925
+ /** Column name to apply data label overrides to */
8926
+ name: string;
8927
+ /** Show or hide data labels for this column */
8928
+ visible?: boolean;
8929
+ /** Filter to apply to data labels */
8930
+ filter?: DataLabelFilter | null;
8931
+ }
8932
+ /**
8933
+ * Chart data label configuration
8934
+ * @group Visual Overrides
8935
+ */
8936
+ export interface ChartDataLabel {
8937
+ /** Show labels for all data points */
8938
+ allLabels?: boolean;
8939
+ /** Show labels for stacked values */
8940
+ stackLabels?: boolean;
8941
+ /** Per-column data label configurations */
8942
+ columnDataLabel?: ColumnDataLabel[];
8943
+ }
8944
+ /**
8945
+ * Chart summaries and totals configuration
8946
+ * @group Visual Overrides
8947
+ */
8948
+ export interface ChartSummaries {
8949
+ /** Show row totals */
8950
+ showRowTotals?: boolean;
8951
+ /** Show column totals */
8952
+ showColumnTotals?: boolean;
8953
+ /** Show row grand totals */
8954
+ showRowGrandTotals?: boolean;
8955
+ /** Show column grand totals */
8956
+ showColumnGrandTotals?: boolean;
8957
+ }
8958
+ /**
8959
+ * Gridline configuration
8960
+ * @group Visual Overrides
8961
+ */
8962
+ export interface GridLine {
8963
+ /** Show vertical gridlines */
8964
+ x?: boolean;
8965
+ /** Show horizontal gridlines */
8966
+ y?: boolean;
8967
+ }
8968
+ /**
8969
+ * Chart display configuration
8970
+ * @group Visual Overrides
8971
+ */
8972
+ export interface ChartDisplay {
8973
+ /** Summary and totals configuration */
8974
+ summaries?: ChartSummaries;
8975
+ /** Show regression line on chart */
8976
+ regressionLine?: boolean;
8977
+ /** Gridline visibility configuration */
8978
+ gridLine?: GridLine;
8979
+ }
8980
+ /**
8981
+ * Y-axis range configuration
8982
+ * @group Visual Overrides
8983
+ */
8984
+ export interface YAxisRange {
8985
+ /** Minimum value for Y-axis */
8986
+ min?: number;
8987
+ /** Maximum value for Y-axis */
8988
+ max?: number;
8989
+ }
8990
+ /**
8991
+ * Chart axis configuration
8992
+ * @group Visual Overrides
8993
+ */
8994
+ export interface ChartAxis {
8995
+ /** Column names to link to this axis */
8996
+ linkedColumns?: string[];
8997
+ /** Show the axis name */
8998
+ showName?: boolean;
8999
+ /** Show the axis label values */
9000
+ showLabelValue?: boolean;
9001
+ /** Y-axis range configuration */
9002
+ yAxisRange?: YAxisRange;
9003
+ }
9004
+ /**
9005
+ * Chart column override configuration
9006
+ * @group Visual Overrides
9007
+ */
9008
+ export interface ChartColumn {
9009
+ /** Column name to apply overrides to */
9010
+ name: string;
9011
+ /** Color for the column (hex code) */
9012
+ color?: string;
9013
+ /** Conditional formatting rules to apply to the column */
9014
+ conditionalFormatting?: ConditionalFormatting;
9015
+ }
9016
+ /**
9017
+ * Chart visualization overrides
9018
+ * @group Visual Overrides
9019
+ */
9020
+ export interface ChartOverrides {
9021
+ /** Legend configuration */
9022
+ legend?: ChartLegend;
9023
+ /** Data label configuration */
9024
+ dataLabel?: ChartDataLabel;
9025
+ /** Display properties (summaries, regression line, gridlines) */
9026
+ display?: ChartDisplay;
9027
+ /** Per-axis configurations */
9028
+ axis?: ChartAxis[];
9029
+ /** Per-column configurations */
9030
+ columns?: ChartColumn[];
9031
+ /** Update mask paths for partial updates */
9032
+ updateMaskPaths?: string[];
9033
+ }
9034
+ /**
9035
+ * Table column override configuration
9036
+ * @group Visual Overrides
9037
+ */
9038
+ export interface TableColumn {
9039
+ /**
9040
+ * Name of the column to apply overrides to
9041
+ */
9042
+ name: string;
9043
+ /**
9044
+ * Enable or disable text wrapping for the column
9045
+ */
9046
+ wrapText?: boolean;
9047
+ /**
9048
+ * Show or hide the column
9049
+ */
9050
+ show?: boolean;
9051
+ /**
9052
+ * Conditional formatting rules to apply to the column
9053
+ */
9054
+ conditionalFormatting?: ConditionalFormatting;
9055
+ }
9056
+ /**
9057
+ * Table display configuration
9058
+ * @group Visual Overrides
9059
+ */
9060
+ export interface TableDisplay {
9061
+ /** Table theme */
9062
+ tableTheme?: TableTheme | string;
9063
+ /** Table content density */
9064
+ tableContentDensity?: TableContentDensity | string;
9065
+ }
9066
+ /**
9067
+ * Column summary visibility configuration
9068
+ * @group Visual Overrides
9069
+ */
9070
+ export interface ColumnSummaryVisibility {
9071
+ /** Column ID to control summary visibility for */
9072
+ columnId: string;
9073
+ /** Show or hide summary for this column */
9074
+ visible: boolean;
9075
+ }
9076
+ /**
9077
+ * Display summary configuration
9078
+ * @group Visual Overrides
9079
+ */
9080
+ export interface DisplaySummaryConfig {
9081
+ /** Show all column summaries by default */
9082
+ showAllSummaries?: boolean;
9083
+ /** Per-column summary visibility overrides */
9084
+ columnVisibility?: ColumnSummaryVisibility[];
9085
+ }
9086
+ /**
9087
+ * Table visualization overrides
9088
+ * @group Visual Overrides
9089
+ */
9090
+ export interface TableOverrides {
9091
+ /** Per-column configurations (properties, conditional formatting) */
9092
+ columns?: TableColumn[];
9093
+ /** Table display properties (theme, density) */
9094
+ display?: TableDisplay;
9095
+ /** Summary/headline column visibility configuration */
9096
+ displaySummaryConfig?: DisplaySummaryConfig;
9097
+ /** Update mask paths for partial updates */
9098
+ updateMaskPaths?: string[];
9099
+ }
9100
+ /**
9101
+ * Visualization overrides to customize chart and table rendering
9102
+ * within embedded ThoughtSpot components.
9103
+ *
9104
+ * @group Visual Overrides
9105
+ * @example
9106
+ * ```js
9107
+ * const embed = new AppEmbed('#tsEmbed', {
9108
+ * visualOverrides: {
9109
+ * chart: {
9110
+ * legend: { show: true, position: 'bottom' },
9111
+ * columns: [{ name: 'Revenue', color: '#1f77b4' }],
9112
+ * },
9113
+ * table: {
9114
+ * display: { tableTheme: 'ZEBRA', tableContentDensity: 'COMPACT' },
9115
+ * },
9116
+ * },
9117
+ * });
9118
+ * ```
9119
+ */
9120
+ export interface VisualizationOverrides {
9121
+ /** Chart visualization overrides */
9122
+ chart?: ChartOverrides;
9123
+ /** Table visualization overrides */
9124
+ table?: TableOverrides;
9125
+ }
8702
9126
  declare enum AuthFailureType {
8703
9127
  /**
8704
9128
  * Authentication failed in the SDK authentication flow.
@@ -9317,6 +9741,7 @@ declare class TsEmbed {
9317
9741
  * @returns
9318
9742
  */
9319
9743
  protected createEmbedEventResponder: (eventPort: MessagePort | void, eventType: EmbedEvent) => (payload: any) => void;
9744
+ private shouldSkipEvent;
9320
9745
  /**
9321
9746
  * Executes all registered event handlers for a particular event type
9322
9747
  * @param eventType The event type
@@ -9891,9 +10316,32 @@ export interface SearchViewConfig extends SearchLiveboardCommonViewConfig, Omit<
9891
10316
  * ```
9892
10317
  */
9893
10318
  focusSearchBarOnRender?: boolean;
10319
+ /**
10320
+ * Enable or disable Muze chart phase 1 GA
10321
+ *
10322
+ * Supported embed types: `SearchEmbed`
10323
+ * @version SDK: 1.49.0 | ThoughtSpot Cloud: 26.6.0.cl
10324
+ * @default false
10325
+ * @example
10326
+ * ```js
10327
+ * const embed = new SearchEmbed('#tsEmbed', {
10328
+ * ... // other embed view config
10329
+ * newChartsLibrary: true,
10330
+ * })
10331
+ * ```
10332
+ */
10333
+ newChartsLibrary?: boolean;
10334
+ /**
10335
+ * Visual overrides to customize the chart or table properties.
10336
+ * @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
10337
+ */
10338
+ visualOverrides?: VisualizationOverrides;
9894
10339
  }
9895
10340
  export interface SearchAppInitData extends DefaultAppInitData {
9896
10341
  searchOptions?: SearchOptions;
10342
+ embedParams?: {
10343
+ visualOverridesParams?: VisualizationOverrides | null;
10344
+ };
9897
10345
  }
9898
10346
  declare class SearchEmbed extends TsEmbed {
9899
10347
  /**
@@ -10391,6 +10839,7 @@ export interface ConversationViewConfig extends SpotterEmbedViewConfig {
10391
10839
  export interface SpotterAppInitData extends DefaultAppInitData {
10392
10840
  embedParams?: {
10393
10841
  spotterSidebarConfig?: SpotterSidebarViewConfig;
10842
+ visualOverridesParams?: VisualizationOverrides | null;
10394
10843
  };
10395
10844
  }
10396
10845
  declare class SpotterEmbed extends TsEmbed {
@@ -10956,7 +11405,7 @@ export interface AppViewConfig extends AllEmbedViewConfig {
10956
11405
  /**
10957
11406
  * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
10958
11407
  * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
10959
- * This feature is GA from version 26.5.0.cl and is enabled by default on embed deployments.
11408
+ * This feature is GA from version 26.5.0.cl. It is disabled by default in embed deployments.
10960
11409
  *
10961
11410
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
10962
11411
  * @type {boolean}
@@ -11160,6 +11609,11 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11160
11609
  * ```
11161
11610
  */
11162
11611
  enableLiveboardDataCache?: boolean;
11612
+ /**
11613
+ * Visual overrides to customize the chart or table properties.
11614
+ * @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
11615
+ */
11616
+ visualOverrides?: VisualizationOverrides;
11163
11617
  }
11164
11618
  /**
11165
11619
  * APP_INIT data shape for AppEmbed.
@@ -11607,7 +12061,7 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
11607
12061
  /**
11608
12062
  * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
11609
12063
  * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
11610
- * This feature is GA from version 26.5.0.cl and is enabled by default on embed deployments.
12064
+ * This feature is GA from version 26.5.0.cl. It is disabled by default in embed deployments.
11611
12065
  *
11612
12066
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11613
12067
  * @type {boolean}