@thoughtspot/visual-embed-sdk 1.44.0 → 1.44.1-test

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 (148) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/api-intercept.d.ts.map +1 -1
  3. package/cjs/src/api-intercept.js +8 -3
  4. package/cjs/src/api-intercept.js.map +1 -1
  5. package/cjs/src/api-intercept.spec.js +19 -3
  6. package/cjs/src/api-intercept.spec.js.map +1 -1
  7. package/cjs/src/embed/app.d.ts +17 -0
  8. package/cjs/src/embed/app.d.ts.map +1 -1
  9. package/cjs/src/embed/app.js +6 -4
  10. package/cjs/src/embed/app.js.map +1 -1
  11. package/cjs/src/embed/app.spec.js +84 -1
  12. package/cjs/src/embed/app.spec.js.map +1 -1
  13. package/cjs/src/embed/base.d.ts +7 -0
  14. package/cjs/src/embed/base.d.ts.map +1 -1
  15. package/cjs/src/embed/base.js +16 -1
  16. package/cjs/src/embed/base.js.map +1 -1
  17. package/cjs/src/embed/base.spec.js +21 -0
  18. package/cjs/src/embed/base.spec.js.map +1 -1
  19. package/cjs/src/embed/conversation.d.ts.map +1 -1
  20. package/cjs/src/embed/conversation.js +6 -1
  21. package/cjs/src/embed/conversation.js.map +1 -1
  22. package/cjs/src/embed/conversation.spec.js +6 -1
  23. package/cjs/src/embed/conversation.spec.js.map +1 -1
  24. package/cjs/src/embed/liveboard.d.ts +18 -0
  25. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  26. package/cjs/src/embed/liveboard.js +10 -5
  27. package/cjs/src/embed/liveboard.js.map +1 -1
  28. package/cjs/src/embed/liveboard.spec.js +86 -0
  29. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  30. package/cjs/src/embed/ts-embed.d.ts +3 -2
  31. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  32. package/cjs/src/embed/ts-embed.js +51 -17
  33. package/cjs/src/embed/ts-embed.js.map +1 -1
  34. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  35. package/cjs/src/embed/ts-embed.spec.js +93 -5
  36. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  37. package/cjs/src/errors.d.ts +7 -0
  38. package/cjs/src/errors.d.ts.map +1 -1
  39. package/cjs/src/errors.js +7 -0
  40. package/cjs/src/errors.js.map +1 -1
  41. package/cjs/src/index.d.ts +2 -2
  42. package/cjs/src/index.d.ts.map +1 -1
  43. package/cjs/src/index.js +2 -1
  44. package/cjs/src/index.js.map +1 -1
  45. package/cjs/src/react/all-types-export.d.ts +1 -1
  46. package/cjs/src/react/all-types-export.d.ts.map +1 -1
  47. package/cjs/src/react/all-types-export.js +2 -1
  48. package/cjs/src/react/all-types-export.js.map +1 -1
  49. package/cjs/src/types.d.ts +248 -6
  50. package/cjs/src/types.d.ts.map +1 -1
  51. package/cjs/src/types.js +134 -2
  52. package/cjs/src/types.js.map +1 -1
  53. package/dist/{index-B2QPwxuL.js → index-BXCUJ09L.js} +1 -1
  54. package/dist/src/api-intercept.d.ts.map +1 -1
  55. package/dist/src/embed/app.d.ts +17 -0
  56. package/dist/src/embed/app.d.ts.map +1 -1
  57. package/dist/src/embed/base.d.ts +7 -0
  58. package/dist/src/embed/base.d.ts.map +1 -1
  59. package/dist/src/embed/conversation.d.ts.map +1 -1
  60. package/dist/src/embed/liveboard.d.ts +18 -0
  61. package/dist/src/embed/liveboard.d.ts.map +1 -1
  62. package/dist/src/embed/ts-embed.d.ts +3 -2
  63. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  64. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  65. package/dist/src/errors.d.ts +7 -0
  66. package/dist/src/errors.d.ts.map +1 -1
  67. package/dist/src/index.d.ts +2 -2
  68. package/dist/src/index.d.ts.map +1 -1
  69. package/dist/src/react/all-types-export.d.ts +1 -1
  70. package/dist/src/react/all-types-export.d.ts.map +1 -1
  71. package/dist/src/types.d.ts +248 -6
  72. package/dist/src/types.d.ts.map +1 -1
  73. package/dist/tsembed-react.es.js +293 -104
  74. package/dist/tsembed-react.js +292 -103
  75. package/dist/tsembed.es.js +307 -105
  76. package/dist/tsembed.js +306 -103
  77. package/dist/visual-embed-sdk-react-full.d.ts +245 -7
  78. package/dist/visual-embed-sdk-react.d.ts +238 -7
  79. package/dist/visual-embed-sdk.d.ts +245 -7
  80. package/lib/package.json +1 -1
  81. package/lib/src/api-intercept.d.ts.map +1 -1
  82. package/lib/src/api-intercept.js +9 -4
  83. package/lib/src/api-intercept.js.map +1 -1
  84. package/lib/src/api-intercept.spec.js +20 -4
  85. package/lib/src/api-intercept.spec.js.map +1 -1
  86. package/lib/src/embed/app.d.ts +17 -0
  87. package/lib/src/embed/app.d.ts.map +1 -1
  88. package/lib/src/embed/app.js +6 -4
  89. package/lib/src/embed/app.js.map +1 -1
  90. package/lib/src/embed/app.spec.js +84 -1
  91. package/lib/src/embed/app.spec.js.map +1 -1
  92. package/lib/src/embed/base.d.ts +7 -0
  93. package/lib/src/embed/base.d.ts.map +1 -1
  94. package/lib/src/embed/base.js +14 -0
  95. package/lib/src/embed/base.js.map +1 -1
  96. package/lib/src/embed/base.spec.js +21 -0
  97. package/lib/src/embed/base.spec.js.map +1 -1
  98. package/lib/src/embed/conversation.d.ts.map +1 -1
  99. package/lib/src/embed/conversation.js +7 -2
  100. package/lib/src/embed/conversation.js.map +1 -1
  101. package/lib/src/embed/conversation.spec.js +7 -2
  102. package/lib/src/embed/conversation.spec.js.map +1 -1
  103. package/lib/src/embed/liveboard.d.ts +18 -0
  104. package/lib/src/embed/liveboard.d.ts.map +1 -1
  105. package/lib/src/embed/liveboard.js +11 -6
  106. package/lib/src/embed/liveboard.js.map +1 -1
  107. package/lib/src/embed/liveboard.spec.js +86 -0
  108. package/lib/src/embed/liveboard.spec.js.map +1 -1
  109. package/lib/src/embed/ts-embed.d.ts +3 -2
  110. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  111. package/lib/src/embed/ts-embed.js +52 -18
  112. package/lib/src/embed/ts-embed.js.map +1 -1
  113. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  114. package/lib/src/embed/ts-embed.spec.js +94 -6
  115. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  116. package/lib/src/errors.d.ts +7 -0
  117. package/lib/src/errors.d.ts.map +1 -1
  118. package/lib/src/errors.js +7 -0
  119. package/lib/src/errors.js.map +1 -1
  120. package/lib/src/index.d.ts +2 -2
  121. package/lib/src/index.d.ts.map +1 -1
  122. package/lib/src/index.js +2 -2
  123. package/lib/src/index.js.map +1 -1
  124. package/lib/src/react/all-types-export.d.ts +1 -1
  125. package/lib/src/react/all-types-export.d.ts.map +1 -1
  126. package/lib/src/react/all-types-export.js +1 -1
  127. package/lib/src/react/all-types-export.js.map +1 -1
  128. package/lib/src/types.d.ts +248 -6
  129. package/lib/src/types.d.ts.map +1 -1
  130. package/lib/src/types.js +133 -1
  131. package/lib/src/types.js.map +1 -1
  132. package/package.json +1 -1
  133. package/src/api-intercept.spec.ts +23 -10
  134. package/src/api-intercept.ts +9 -4
  135. package/src/embed/app.spec.ts +116 -2
  136. package/src/embed/app.ts +26 -2
  137. package/src/embed/base.spec.ts +28 -0
  138. package/src/embed/base.ts +15 -0
  139. package/src/embed/conversation.spec.ts +7 -2
  140. package/src/embed/conversation.ts +7 -2
  141. package/src/embed/liveboard.spec.ts +107 -0
  142. package/src/embed/liveboard.ts +32 -4
  143. package/src/embed/ts-embed.spec.ts +107 -15
  144. package/src/embed/ts-embed.ts +56 -19
  145. package/src/errors.ts +7 -0
  146. package/src/index.ts +2 -0
  147. package/src/react/all-types-export.ts +1 -0
  148. package/src/types.ts +259 -6
@@ -1493,7 +1493,7 @@ export interface EmbedConfig {
1493
1493
  * {
1494
1494
  * name: 'customAction',
1495
1495
  * id: 'customAction',
1496
- * target: CustomActionTarget.VISUALIZATION,
1496
+ * target: CustomActionTarget.VIZ,
1497
1497
  * position: CustomActionPosition.PRIMARY,
1498
1498
  * }
1499
1499
  * }
@@ -1884,8 +1884,12 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1884
1884
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SageEmbed`, `SearchEmbed`, `SpotterEmbed`
1885
1885
  * @version SDK: 1.43.0 | ThoughtSpot: 10.14.0.cl
1886
1886
  * @example
1887
- * ```js
1888
- * import { CustomActionPosition, CustomActionTarget } from '@thoughtspot/visual-embed-sdk';
1887
+ * ```ts
1888
+ * import {
1889
+ * CustomActionPayload,
1890
+ * CustomActionPosition,
1891
+ * CustomActionTarget,
1892
+ * } from '@thoughtspot/visual-embed-sdk';
1889
1893
  * // Use supported embed types such as AppEmbed or LiveboardEmbed
1890
1894
  * const embed = new LiveboardEmbed('#tsEmbed', {
1891
1895
  * ... // other embed config options
@@ -1893,12 +1897,17 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1893
1897
  * {
1894
1898
  * name: 'customAction',
1895
1899
  * id: 'customAction',
1896
- * target: CustomActionTarget.VISUALIZATION,
1900
+ * target: CustomActionTarget.VIZ,
1897
1901
  * position: CustomActionPosition.PRIMARY,
1898
1902
  * }
1899
1903
  * }
1900
1904
  * ]
1901
1905
  * })
1906
+ *
1907
+ * // to trigger a custom flow on custom action click listen to Custom action embed event
1908
+ * embed.on(EmbedEvent.CustomAction, (payload: CustomActionPayload) => {
1909
+ * console.log('Custom Action event:', payload);
1910
+ * })
1902
1911
  * ```
1903
1912
  */
1904
1913
  customActions?: CustomAction[];
@@ -2376,6 +2385,38 @@ export interface LiveboardAppEmbedViewConfig {
2376
2385
  * ```
2377
2386
  */
2378
2387
  isEnhancedFilterInteractivityEnabled?: boolean;
2388
+ /**
2389
+ * Show or hide masked filter chips
2390
+ *
2391
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2392
+ * @version SDK: 1.45.0 | Thoughtspot: 26.2.0.cl
2393
+ * @default false
2394
+ * @example
2395
+ * ```js
2396
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2397
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2398
+ * ... // other embed view config
2399
+ * showMaskedFilterChip: true,
2400
+ * })
2401
+ * ```
2402
+ */
2403
+ showMaskedFilterChip?: boolean;
2404
+ /**
2405
+ * Enable or disable Liveboard styling and grouping
2406
+ *
2407
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2408
+ * @version SDK: 1.45.0 | Thoughtspot: 26.2.0.cl
2409
+ * @default false
2410
+ * @example
2411
+ * ```js
2412
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
2413
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2414
+ * ... // other embed view config
2415
+ * isLiveboardMasterpiecesEnabled: true,
2416
+ * })
2417
+ * ```
2418
+ */
2419
+ isLiveboardMasterpiecesEnabled?: boolean;
2379
2420
  }
2380
2421
  export interface AllEmbedViewConfig extends BaseViewConfig, SearchLiveboardCommonViewConfig, HomePageConfig, LiveboardAppEmbedViewConfig {
2381
2422
  }
@@ -2799,6 +2840,7 @@ export declare enum EmbedEvent {
2799
2840
  * SearchEmbed.on(EmbedEvent.Error, (error) => {
2800
2841
  * console.log(error);
2801
2842
  * // { type: "Error", data: { errorType: "API", error: { message: '...', error: '...' } } }
2843
+ * // { errorType: "API", message: '...', code: '...' } new format
2802
2844
  * });
2803
2845
  * ```
2804
2846
  * @example
@@ -2810,6 +2852,7 @@ export declare enum EmbedEvent {
2810
2852
  * // message: "Fullscreen API is not enabled",
2811
2853
  * // stack: "..."
2812
2854
  * // } }}
2855
+ * // { errorType: "FULLSCREEN", message: "Fullscreen API is not enabled", code: '...' } new format
2813
2856
  * })
2814
2857
  * ```
2815
2858
  */
@@ -2965,7 +3008,8 @@ export declare enum EmbedEvent {
2965
3008
  */
2966
3009
  ALL = "*",
2967
3010
  /**
2968
- * Emitted when an Answer is saved in the app
3011
+ * Emitted when an Answer is saved in the app.
3012
+ * Use start:true to subscribe to when save is initiated, or end:true to subscribe to when save is completed. Default is end:true.
2969
3013
  * @Version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
2970
3014
  * @example
2971
3015
  *```js
@@ -3000,6 +3044,7 @@ export declare enum EmbedEvent {
3000
3044
  Download = "download",
3001
3045
  /**
3002
3046
  * Emitted when the download action is triggered on an Answer.
3047
+ * Use start:true to subscribe to when download is initiated, or end:true to subscribe to when download is completed. Default is end:true.
3003
3048
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl, 9.4.0.sw
3004
3049
  * @example
3005
3050
  *```js
@@ -3014,6 +3059,7 @@ export declare enum EmbedEvent {
3014
3059
  DownloadAsPng = "downloadAsPng",
3015
3060
  /**
3016
3061
  * Emitted when the Download as PDF action is triggered on an Answer
3062
+ * Use start:true to subscribe to when download as PDF is initiated, or end:true to subscribe to when download as PDF is completed. Default is end:true.
3017
3063
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3018
3064
  * @example
3019
3065
  *```js
@@ -3028,6 +3074,7 @@ export declare enum EmbedEvent {
3028
3074
  DownloadAsPdf = "downloadAsPdf",
3029
3075
  /**
3030
3076
  * Emitted when the Download as CSV action is triggered on an Answer.
3077
+ * Use start:true to subscribe to when download as CSV is initiated, or end:true to subscribe to when download as CSV is completed. Default is end:true.
3031
3078
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3032
3079
  * @example
3033
3080
  *```js
@@ -3042,6 +3089,7 @@ export declare enum EmbedEvent {
3042
3089
  DownloadAsCsv = "downloadAsCsv",
3043
3090
  /**
3044
3091
  * Emitted when the Download as XLSX action is triggered on an Answer.
3092
+ * Use start:true to subscribe to when download as XLSX is initiated, or end:true to subscribe to when download as XLSX is completed. Default is end:true.
3045
3093
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3046
3094
  * @example
3047
3095
  *```js
@@ -3056,6 +3104,7 @@ export declare enum EmbedEvent {
3056
3104
  DownloadAsXlsx = "downloadAsXlsx",
3057
3105
  /**
3058
3106
  * Emitted when an Answer is deleted in the app
3107
+ * Use start:true to subscribe to when delete is initiated, or end:true to subscribe to when delete is completed. Default is end:true.
3059
3108
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3060
3109
  * @example
3061
3110
  *```js
@@ -3082,6 +3131,7 @@ export declare enum EmbedEvent {
3082
3131
  /**
3083
3132
  * Emitted when a user initiates the Pin action to
3084
3133
  * add an Answer to a Liveboard.
3134
+ * Use start:true to subscribe to when pin is initiated, or end:true to subscribe to when pin is completed. Default is end:true.
3085
3135
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3086
3136
  * @example
3087
3137
  *```js
@@ -3195,6 +3245,7 @@ export declare enum EmbedEvent {
3195
3245
  /**
3196
3246
  * Emitted when the **Export TML** action is triggered on an
3197
3247
  * an embedded object in the app
3248
+ * Use start:true to subscribe to when export is initiated, or end:true to subscribe to when export is completed. Default is end:true.
3198
3249
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3199
3250
  * @example
3200
3251
  *```js
@@ -3220,6 +3271,7 @@ export declare enum EmbedEvent {
3220
3271
  SaveAsView = "saveAsView",
3221
3272
  /**
3222
3273
  * Emitted when the user creates a copy of an Answer.
3274
+ * Use start:true to subscribe to when copy and edit is initiated, or end:true to subscribe to when copy and edit is completed. Default is end:true.
3223
3275
  * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl, 8.4.1.sw
3224
3276
  * @example
3225
3277
  *```js
@@ -6506,7 +6558,47 @@ export declare enum Action {
6506
6558
  * ```
6507
6559
  * @version SDK: 1.43.0 | ThoughtSpot Cloud: 10.15.0.cl
6508
6560
  */
6509
- LiveboardStylePanel = "liveboardStylePanel"
6561
+ LiveboardStylePanel = "liveboardStylePanel",
6562
+ /**
6563
+ * The **Move to Group** menu action on a Liveboard.
6564
+ * Allows moving a visualization to a different group.
6565
+ * @example
6566
+ * ```js
6567
+ * disabledActions: [Action.MoveToGroup]
6568
+ * ```
6569
+ * @version SDK: 1.44.0 | ThoughtSpot Cloud: 26.2.0.cl
6570
+ */
6571
+ MoveToGroup = "moveToGroup",
6572
+ /**
6573
+ * The **Move out of Group** menu action on a Liveboard.
6574
+ * Allows moving a visualization out of a group.
6575
+ * @example
6576
+ * ```js
6577
+ * disabledActions: [Action.MoveOutOfGroup]
6578
+ * ```
6579
+ * @version SDK: 1.44.0 | ThoughtSpot Cloud: 26.2.0.cl
6580
+ */
6581
+ MoveOutOfGroup = "moveOutOfGroup",
6582
+ /**
6583
+ * The **Create Group** menu action on a Liveboard.
6584
+ * Allows creating a new group.
6585
+ * @example
6586
+ * ```js
6587
+ * disabledActions: [Action.CreateGroup]
6588
+ * ```
6589
+ * @version SDK: 1.44.0 | ThoughtSpot Cloud: 26.2.0.cl
6590
+ */
6591
+ CreateGroup = "createGroup",
6592
+ /**
6593
+ * The **Ungroup Liveboard Group** menu action on a Liveboard.
6594
+ * Allows ungrouping a liveboard group.
6595
+ * @example
6596
+ * ```js
6597
+ * disabledActions: [Action.UngroupLiveboardGroup]
6598
+ * ```
6599
+ * @version SDK: 1.44.0 | ThoughtSpot Cloud: 26.2.0.cl
6600
+ */
6601
+ UngroupLiveboardGroup = "ungroupLiveboardGroup"
6510
6602
  }
6511
6603
  declare enum ContextMenuTriggerOptions {
6512
6604
  LEFT_CLICK = "left-click",
@@ -6646,6 +6738,109 @@ export declare enum LogLevel {
6646
6738
  */
6647
6739
  TRACE = "TRACE"
6648
6740
  }
6741
+ declare enum ErrorDetailsTypes {
6742
+ /** API call failure */
6743
+ API = "API",
6744
+ /** General validation error */
6745
+ VALIDATION_ERROR = "VALIDATION_ERROR",
6746
+ /** Network connectivity or request error */
6747
+ NETWORK = "NETWORK"
6748
+ }
6749
+ declare enum EmbedErrorCodes {
6750
+ /** Worksheet ID not found or does not exist */
6751
+ WORKSHEET_ID_NOT_FOUND = "WORKSHEET_ID_NOT_FOUND",
6752
+ /** Required Liveboard ID is missing from configuration */
6753
+ LIVEBOARD_ID_MISSING = "LIVEBOARD_ID_MISSING",
6754
+ /** Conflicting action configuration detected (e.g., both hiddenActions and visibleActions specified) */
6755
+ CONFLICTING_ACTIONS_CONFIG = "CONFLICTING_ACTIONS_CONFIG",
6756
+ /** Conflicting tab configuration detected (e.g., both hiddenTabs and visibleTabs specified) */
6757
+ CONFLICTING_TABS_CONFIG = "CONFLICTING_TABS_CONFIG",
6758
+ /** Error during component initialization */
6759
+ INIT_ERROR = "INIT_ERROR",
6760
+ /** Network connectivity or request error */
6761
+ NETWORK_ERROR = "NETWORK_ERROR",
6762
+ /** Custom action validation failed */
6763
+ CUSTOM_ACTION_VALIDATION = "CUSTOM_ACTION_VALIDATION",
6764
+ /** Authentication/login failed */
6765
+ LOGIN_FAILED = "LOGIN_FAILED",
6766
+ /** Render method was not called before attempting to use the component */
6767
+ RENDER_NOT_CALLED = "RENDER_NOT_CALLED",
6768
+ /** Host event type is undefined or invalid */
6769
+ HOST_EVENT_TYPE_UNDEFINED = "HOST_EVENT_TYPE_UNDEFINED",
6770
+ /** Error parsing api intercept body */
6771
+ PARSING_API_INTERCEPT_BODY_ERROR = "PARSING_API_INTERCEPT_BODY_ERROR"
6772
+ }
6773
+ /**
6774
+ * Error event object emitted when an error occurs in an embedded component.
6775
+ *
6776
+ * This interface defines the structure of error objects returned by the {@link EmbedEvent.Error}
6777
+ * event. It provides detailed information about what went wrong, including the error type,
6778
+ * a human-readable message, and a machine-readable error code.
6779
+ *
6780
+ * ## Properties
6781
+ *
6782
+ * - **errorType**: One of the predefined {@link ErrorDetailsTypes} values
6783
+ * - **message**: Human-readable error description (string or array of strings for multiple errors)
6784
+ * - **code**: Machine-readable error identifier for programmatic handling
6785
+ * - **[key: string]**: Additional context-specific for backward compatibility
6786
+ *
6787
+ * ## Usage
6788
+ *
6789
+ * Listen to the {@link EmbedEvent.Error} event to receive instances of this object
6790
+ * and implement appropriate error handling logic based on the `errorType`.
6791
+ *
6792
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.2.0.cl
6793
+ * @group Error Handling
6794
+ * @see {@link ErrorDetailsTypes} - Available error type values
6795
+ * @see {@link EmbedEvent.Error} - The event that emits this object
6796
+ *
6797
+ * @example
6798
+ * Handle specific error types
6799
+ *
6800
+ * embed.on(EmbedEvent.Error, (error) => {
6801
+ * switch (error.code) {
6802
+ * case EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND:
6803
+ * console.error('Worksheet ID not found:', error.message, error.code);
6804
+ * break;
6805
+ * default:
6806
+ * console.error('Unknown error:', error);
6807
+ * }
6808
+ * });
6809
+ * *
6810
+ * @example
6811
+ * Handle multiple error messages
6812
+ *
6813
+ * embed.on(EmbedEvent.Error, (error) => {
6814
+ * const messages = Array.isArray(error.message)
6815
+ * ? error.message
6816
+ * : [error.message];
6817
+ *
6818
+ * messages.forEach(msg => console.error(msg));
6819
+ * });
6820
+ * *
6821
+ * @example
6822
+ * Access additional error context
6823
+ *
6824
+ * embed.on(EmbedEvent.Error, (error) => {
6825
+ * console.error('Error Details:', {
6826
+ * type: error.errorType,
6827
+ * message: error.message,
6828
+ * code: error.code,
6829
+ * // Additional context fields vary by error type
6830
+ * ...error
6831
+ * });
6832
+ * });
6833
+ * */
6834
+ export interface EmbedErrorDetailsEvent {
6835
+ /** The type of error that occurred */
6836
+ errorType: ErrorDetailsTypes;
6837
+ /** Human-readable error message(s) describing what went wrong */
6838
+ message: string | string[];
6839
+ /** Machine-readable error code for programmatic error handling */
6840
+ code: EmbedErrorCodes;
6841
+ /** Additional context-specific for backward compatibility */
6842
+ [key: string]: any;
6843
+ }
6649
6844
  export interface DefaultAppInitData {
6650
6845
  customisations: CustomisationsInterface;
6651
6846
  authToken: string;
@@ -6995,8 +7190,9 @@ declare class TsEmbed {
6995
7190
  /**
6996
7191
  * Handles errors within the SDK
6997
7192
  * @param error The error message or object
7193
+ * @param errorDetails The error details
6998
7194
  */
6999
- protected handleError(error: string | Record<string, unknown>): void;
7195
+ protected handleError(errorDetails: EmbedErrorDetailsEvent): void;
7000
7196
  /**
7001
7197
  * Extracts the type field from the event payload
7002
7198
  * @param event The window message event
@@ -8518,6 +8714,23 @@ export interface AppViewConfig extends AllEmbedViewConfig {
8518
8714
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
8519
8715
  */
8520
8716
  updatedSpotterChatPrompt?: boolean;
8717
+ /**
8718
+ * This is the minimum height (in pixels) for a full-height App.
8719
+ * Setting this height helps resolve issues with empty Apps and
8720
+ * other screens navigable from an App.
8721
+ *
8722
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.0.2.cl
8723
+ * @default 500
8724
+ * @example
8725
+ * ```js
8726
+ * const embed = new AppEmbed('#embed', {
8727
+ * ... // other app view config
8728
+ * fullHeight: true,
8729
+ * minimumHeight: 600,
8730
+ * });
8731
+ * ```
8732
+ */
8733
+ minimumHeight?: number;
8521
8734
  }
8522
8735
  declare class AppEmbed extends V1Embed {
8523
8736
  protected viewConfig: AppViewConfig;
@@ -8624,6 +8837,7 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
8624
8837
  * Supported embed types: `LiveboardEmbed`
8625
8838
  * @version SDK: 1.5.0 | ThoughtSpot: ts7.oct.cl, 7.2.1
8626
8839
  * @default 500
8840
+ * @deprecated Use `minimumHeight` instead.
8627
8841
  * @example
8628
8842
  * ```js
8629
8843
  * const embed = new LiveboardEmbed('#embed', {
@@ -8634,6 +8848,23 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
8634
8848
  * ```
8635
8849
  */
8636
8850
  defaultHeight?: number;
8851
+ /**
8852
+ * This is the minimum height (in pixels) for a full-height Liveboard.
8853
+ * Setting this height helps resolve issues with empty Liveboards and
8854
+ * other screens navigable from a Liveboard.
8855
+ *
8856
+ * @version SDK: 1.44.2 | ThoughtSpot: 26.0.2.cl
8857
+ * @default 500
8858
+ * @example
8859
+ * ```js
8860
+ * const embed = new LiveboardEmbed('#embed', {
8861
+ * ... // other liveboard view config
8862
+ * fullHeight: true,
8863
+ * minimumHeight: 600,
8864
+ * });
8865
+ * ```
8866
+ */
8867
+ minimumHeight?: number;
8637
8868
  /**
8638
8869
  * @Deprecated If set to true, the context menu in visualizations will be enabled.
8639
8870
  * @example