@thoughtspot/visual-embed-sdk 1.50.0 → 1.51.0-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.
- package/cjs/package.json +1 -1
- package/cjs/src/config.d.ts +1 -0
- package/cjs/src/config.d.ts.map +1 -1
- package/cjs/src/config.js +2 -1
- package/cjs/src/config.js.map +1 -1
- package/cjs/src/css-variables.d.ts +122 -0
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +176 -24
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +86 -38
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +672 -150
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/base.d.ts +1 -1
- package/cjs/src/embed/base.js +1 -1
- package/cjs/src/embed/conversation.d.ts +401 -2
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +32 -16
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +346 -17
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/events.spec.js +638 -0
- package/cjs/src/embed/events.spec.js.map +1 -1
- package/cjs/src/embed/host-events.spec.js +187 -0
- package/cjs/src/embed/host-events.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.d.ts +51 -14
- package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/contracts.js +11 -1
- package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts +2 -1
- package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.js +9 -0
- package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js +236 -0
- package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.d.ts +2 -0
- package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.js +32 -2
- package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
- package/cjs/src/embed/hostEventClient/utils.spec.js +178 -0
- package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +81 -13
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +50 -9
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +432 -4
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/spotter-utils.d.ts +15 -1
- package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
- package/cjs/src/embed/spotter-utils.js +28 -1
- package/cjs/src/embed/spotter-utils.js.map +1 -1
- package/cjs/src/embed/spotter-utils.spec.js +129 -0
- package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
- package/cjs/src/embed/spotter-viz-utils.d.ts +37 -4
- package/cjs/src/embed/spotter-viz-utils.d.ts.map +1 -1
- package/cjs/src/embed/spotter-viz-utils.js.map +1 -1
- package/cjs/src/embed/spotter-viz-utils.spec.js +17 -0
- package/cjs/src/embed/spotter-viz-utils.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +16 -8
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +96 -37
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +683 -3
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/errors.d.ts +1 -0
- package/cjs/src/errors.d.ts.map +1 -1
- package/cjs/src/errors.js +1 -0
- package/cjs/src/errors.js.map +1 -1
- package/cjs/src/index.d.ts +3 -3
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +4 -2
- package/cjs/src/index.js.map +1 -1
- package/cjs/src/mixpanel-service.d.ts +4 -0
- package/cjs/src/mixpanel-service.d.ts.map +1 -1
- package/cjs/src/mixpanel-service.js +4 -0
- package/cjs/src/mixpanel-service.js.map +1 -1
- package/cjs/src/react/all-types-export.d.ts +1 -1
- package/cjs/src/react/all-types-export.d.ts.map +1 -1
- package/cjs/src/react/all-types-export.js +2 -1
- package/cjs/src/react/all-types-export.js.map +1 -1
- package/cjs/src/react/all-types-export.parity.spec.d.ts +2 -0
- package/cjs/src/react/all-types-export.parity.spec.d.ts.map +1 -0
- package/cjs/src/react/all-types-export.parity.spec.js +194 -0
- package/cjs/src/react/all-types-export.parity.spec.js.map +1 -0
- package/cjs/src/react/index.d.ts +66 -32
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +5 -3
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +101 -0
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/react/util.spec.js +251 -0
- package/cjs/src/react/util.spec.js.map +1 -1
- package/cjs/src/types.d.ts +902 -28
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +701 -14
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/processData.spec.js +93 -0
- package/cjs/src/utils/processData.spec.js.map +1 -1
- package/cjs/src/utils/processTrigger.spec.js +61 -0
- package/cjs/src/utils/processTrigger.spec.js.map +1 -1
- package/cjs/src/utils.spec.js +4 -0
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/{index-B5xoN6Cp.js → index-Bivg-mDx.js} +1 -1
- package/dist/src/config.d.ts +1 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/css-variables.d.ts +122 -0
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +176 -24
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/base.d.ts +1 -1
- package/dist/src/embed/conversation.d.ts +401 -2
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/contracts.d.ts +51 -14
- package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts +2 -1
- package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/dist/src/embed/hostEventClient/utils.d.ts +2 -0
- package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +81 -13
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/spotter-utils.d.ts +15 -1
- package/dist/src/embed/spotter-utils.d.ts.map +1 -1
- package/dist/src/embed/spotter-viz-utils.d.ts +37 -4
- package/dist/src/embed/spotter-viz-utils.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +16 -8
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/errors.d.ts +1 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/mixpanel-service.d.ts +4 -0
- package/dist/src/mixpanel-service.d.ts.map +1 -1
- package/dist/src/react/all-types-export.d.ts +1 -1
- package/dist/src/react/all-types-export.d.ts.map +1 -1
- package/dist/src/react/all-types-export.parity.spec.d.ts +2 -0
- package/dist/src/react/all-types-export.parity.spec.d.ts.map +1 -0
- package/dist/src/react/index.d.ts +66 -32
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +902 -28
- package/dist/src/types.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +1269 -206
- package/dist/tsembed-react.js +1268 -205
- package/dist/tsembed.es.js +1364 -304
- package/dist/tsembed.js +1362 -302
- package/dist/visual-embed-sdk-react-full.d.ts +1867 -157
- package/dist/visual-embed-sdk-react.d.ts +1872 -161
- package/dist/visual-embed-sdk.d.ts +1815 -127
- package/lib/package.json +1 -1
- package/lib/src/config.d.ts +1 -0
- package/lib/src/config.d.ts.map +1 -1
- package/lib/src/config.js +1 -0
- package/lib/src/config.js.map +1 -1
- package/lib/src/css-variables.d.ts +122 -0
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +176 -24
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +87 -39
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +673 -151
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/base.d.ts +1 -1
- package/lib/src/embed/base.js +1 -1
- package/lib/src/embed/conversation.d.ts +401 -2
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +33 -17
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +347 -18
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/events.spec.js +638 -0
- package/lib/src/embed/events.spec.js.map +1 -1
- package/lib/src/embed/host-events.spec.js +188 -1
- package/lib/src/embed/host-events.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.d.ts +51 -14
- package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/contracts.js +10 -0
- package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts +2 -1
- package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.js +10 -1
- package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
- package/lib/src/embed/hostEventClient/host-event-client.spec.js +236 -0
- package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
- package/lib/src/embed/hostEventClient/utils.d.ts +2 -0
- package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
- package/lib/src/embed/hostEventClient/utils.js +28 -1
- package/lib/src/embed/hostEventClient/utils.js.map +1 -1
- package/lib/src/embed/hostEventClient/utils.spec.js +179 -1
- package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +81 -13
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +50 -9
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +432 -4
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/spotter-utils.d.ts +15 -1
- package/lib/src/embed/spotter-utils.d.ts.map +1 -1
- package/lib/src/embed/spotter-utils.js +25 -0
- package/lib/src/embed/spotter-utils.js.map +1 -1
- package/lib/src/embed/spotter-utils.spec.js +130 -1
- package/lib/src/embed/spotter-utils.spec.js.map +1 -1
- package/lib/src/embed/spotter-viz-utils.d.ts +37 -4
- package/lib/src/embed/spotter-viz-utils.d.ts.map +1 -1
- package/lib/src/embed/spotter-viz-utils.js.map +1 -1
- package/lib/src/embed/spotter-viz-utils.spec.js +17 -0
- package/lib/src/embed/spotter-viz-utils.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +16 -8
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +96 -37
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +683 -3
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/errors.d.ts +1 -0
- package/lib/src/errors.d.ts.map +1 -1
- package/lib/src/errors.js +1 -0
- package/lib/src/errors.js.map +1 -1
- package/lib/src/index.d.ts +3 -3
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +3 -3
- package/lib/src/index.js.map +1 -1
- package/lib/src/mixpanel-service.d.ts +4 -0
- package/lib/src/mixpanel-service.d.ts.map +1 -1
- package/lib/src/mixpanel-service.js +4 -0
- package/lib/src/mixpanel-service.js.map +1 -1
- package/lib/src/react/all-types-export.d.ts +1 -1
- package/lib/src/react/all-types-export.d.ts.map +1 -1
- package/lib/src/react/all-types-export.js +1 -1
- package/lib/src/react/all-types-export.js.map +1 -1
- package/lib/src/react/all-types-export.parity.spec.d.ts +2 -0
- package/lib/src/react/all-types-export.parity.spec.d.ts.map +1 -0
- package/lib/src/react/all-types-export.parity.spec.js +191 -0
- package/lib/src/react/all-types-export.parity.spec.js.map +1 -0
- package/lib/src/react/index.d.ts +66 -32
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +5 -3
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +102 -1
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/react/util.spec.js +251 -0
- package/lib/src/react/util.spec.js.map +1 -1
- package/lib/src/types.d.ts +902 -28
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +701 -14
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/processData.spec.js +93 -0
- package/lib/src/utils/processData.spec.js.map +1 -1
- package/lib/src/utils/processTrigger.spec.js +61 -0
- package/lib/src/utils/processTrigger.spec.js.map +1 -1
- package/lib/src/utils.spec.js +4 -0
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +1815 -127
- package/package.json +1 -1
- package/src/config.ts +1 -0
- package/src/css-variables.ts +150 -0
- package/src/embed/app.spec.ts +877 -196
- package/src/embed/app.ts +276 -75
- package/src/embed/base.ts +1 -1
- package/src/embed/conversation.spec.ts +411 -21
- package/src/embed/conversation.ts +441 -18
- package/src/embed/events.spec.ts +761 -1
- package/src/embed/host-events.spec.ts +242 -0
- package/src/embed/hostEventClient/contracts.ts +57 -14
- package/src/embed/hostEventClient/host-event-client.spec.ts +372 -0
- package/src/embed/hostEventClient/host-event-client.ts +18 -2
- package/src/embed/hostEventClient/utils.spec.ts +204 -0
- package/src/embed/hostEventClient/utils.ts +37 -10
- package/src/embed/liveboard.spec.ts +565 -4
- package/src/embed/liveboard.ts +155 -28
- package/src/embed/spotter-utils.spec.ts +140 -1
- package/src/embed/spotter-utils.ts +36 -1
- package/src/embed/spotter-viz-utils.spec.ts +17 -0
- package/src/embed/spotter-viz-utils.ts +37 -4
- package/src/embed/ts-embed.spec.ts +885 -3
- package/src/embed/ts-embed.ts +111 -39
- package/src/errors.ts +1 -0
- package/src/index.ts +45 -2
- package/src/mixpanel-service.ts +4 -0
- package/src/react/all-types-export.parity.spec.ts +208 -0
- package/src/react/all-types-export.ts +22 -0
- package/src/react/index.spec.tsx +158 -0
- package/src/react/index.tsx +70 -33
- package/src/react/util.spec.tsx +255 -0
- package/src/types.ts +904 -24
- package/src/utils/processData.spec.ts +97 -0
- package/src/utils/processTrigger.spec.ts +91 -0
- package/src/utils.spec.ts +5 -0
|
@@ -30,12 +30,17 @@ export interface SpotterVizStarterPrompt {
|
|
|
30
30
|
* customStarterPrompts: [
|
|
31
31
|
* { id: '1', displayText: 'Top products', fullPrompt: 'What are the top products by revenue?' }
|
|
32
32
|
* ],
|
|
33
|
-
* //
|
|
33
|
+
* // The options below require SDK: 1.51.0
|
|
34
34
|
* loaderHeadline: 'Crunching the numbers...',
|
|
35
35
|
* loaderTips: [
|
|
36
36
|
* { label: 'Tip', text: 'try asking about revenue by region' },
|
|
37
37
|
* { label: 'Tip', text: 'use natural language' },
|
|
38
38
|
* ],
|
|
39
|
+
* liveboardBrandName: 'Reports',
|
|
40
|
+
* spotterBrandName: 'Analyst',
|
|
41
|
+
* insightTileBrandName: 'Insight card',
|
|
42
|
+
* insightTileViewPlanLabel: 'View plan',
|
|
43
|
+
* insightTileLoaderText: 'Generating insight',
|
|
39
44
|
* },
|
|
40
45
|
* })
|
|
41
46
|
* ```
|
|
@@ -83,19 +88,47 @@ export interface SpotterVizConfig {
|
|
|
83
88
|
/**
|
|
84
89
|
* Custom headline text shown in the SpotterViz loading state.
|
|
85
90
|
* Replaces the default loading headline.
|
|
86
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.
|
|
91
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
87
92
|
*/
|
|
88
93
|
loaderHeadline?: string;
|
|
89
94
|
/**
|
|
90
95
|
* Custom tips shown in the SpotterViz loading state.
|
|
91
96
|
* Replaces the default loading tips with the provided list.
|
|
92
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.
|
|
97
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
93
98
|
*/
|
|
94
99
|
loaderTips?: SpotterVizLoaderTip[];
|
|
100
|
+
/**
|
|
101
|
+
* Custom term used to replace "Liveboard" in the agent's responses.
|
|
102
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
103
|
+
* @default ''
|
|
104
|
+
*/
|
|
105
|
+
liveboardBrandName?: string;
|
|
106
|
+
/**
|
|
107
|
+
* Custom term used to replace "Spotter" in the agent's responses.
|
|
108
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
109
|
+
* @default ''
|
|
110
|
+
*/
|
|
111
|
+
spotterBrandName?: string;
|
|
112
|
+
/**
|
|
113
|
+
* Custom term used to replace "Insight tile" in the UI and in the agent's responses.
|
|
114
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
115
|
+
* @default ''
|
|
116
|
+
*/
|
|
117
|
+
insightTileBrandName?: string;
|
|
118
|
+
/**
|
|
119
|
+
* Custom term used to replace "View plan" in the insight tile menu.
|
|
120
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
121
|
+
*/
|
|
122
|
+
insightTileViewPlanLabel?: string;
|
|
123
|
+
/**
|
|
124
|
+
* Custom loader text shown on the insight tile.
|
|
125
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
126
|
+
*/
|
|
127
|
+
insightTileLoaderText?: string;
|
|
95
128
|
}
|
|
96
129
|
/**
|
|
97
130
|
* A single tip shown in the SpotterViz loading state.
|
|
98
|
-
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.
|
|
131
|
+
* @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.7.0.cl
|
|
99
132
|
* @group Embed components
|
|
100
133
|
*/
|
|
101
134
|
export interface SpotterVizLoaderTip {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spotter-viz-utils.d.ts","sourceRoot":"","sources":["../../../src/embed/spotter-viz-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACpC,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;CACtB;AAED
|
|
1
|
+
{"version":3,"file":"spotter-viz-utils.d.ts","sourceRoot":"","sources":["../../../src/embed/spotter-viz-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACpC,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACjD;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACnC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,kBAAkB,EACnE,QAAQ,EAAE,CAAC,EACX,UAAU,EAAE;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,GAC9C,CAAC,GAAG;IAAE,WAAW,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;KAAE,CAAA;CAAE,CAU/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spotter-viz-utils.js","sourceRoot":"","sources":["../../../src/embed/spotter-viz-utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"spotter-viz-utils.js","sourceRoot":"","sources":["../../../src/embed/spotter-viz-utils.ts"],"names":[],"mappings":"AA+IA,MAAM,UAAU,0BAA0B,CACtC,QAAW,EACX,UAA6C;IAE7C,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC;IAClC,IAAI,CAAC,UAAU;QAAE,OAAO,QAAQ,CAAC;IACjC,OAAO;QACH,GAAG,QAAQ;QACX,WAAW,EAAE;YACT,GAAG,CAAE,QAA0D,CAAC,WAAW,IAAI,EAAE,CAAC;YAClF,gBAAgB,EAAE,UAAU;SAC/B;KACJ,CAAC;AACN,CAAC"}
|
|
@@ -17,6 +17,23 @@ describe('buildSpotterVizAppInitData', () => {
|
|
|
17
17
|
const result = buildSpotterVizAppInitData(base, { spotterViz });
|
|
18
18
|
expect((_b = (_a = result.embedParams) === null || _a === void 0 ? void 0 : _a.spotterVizConfig) === null || _b === void 0 ? void 0 : _b.brandHeadline).toBe("Hi, there! I'm");
|
|
19
19
|
});
|
|
20
|
+
it('passes liveboardBrandName, spotterBrandName, insightTileBrandName, insightTileViewPlanLabel and insightTileLoaderText through spotterVizConfig', () => {
|
|
21
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
22
|
+
const spotterViz = {
|
|
23
|
+
brandName: 'MyBrand',
|
|
24
|
+
liveboardBrandName: 'Reports',
|
|
25
|
+
spotterBrandName: 'Analyst',
|
|
26
|
+
insightTileBrandName: 'Insight card',
|
|
27
|
+
insightTileViewPlanLabel: 'View plan',
|
|
28
|
+
insightTileLoaderText: 'Generating insight',
|
|
29
|
+
};
|
|
30
|
+
const result = buildSpotterVizAppInitData(base, { spotterViz });
|
|
31
|
+
expect((_b = (_a = result.embedParams) === null || _a === void 0 ? void 0 : _a.spotterVizConfig) === null || _b === void 0 ? void 0 : _b.liveboardBrandName).toBe('Reports');
|
|
32
|
+
expect((_d = (_c = result.embedParams) === null || _c === void 0 ? void 0 : _c.spotterVizConfig) === null || _d === void 0 ? void 0 : _d.spotterBrandName).toBe('Analyst');
|
|
33
|
+
expect((_f = (_e = result.embedParams) === null || _e === void 0 ? void 0 : _e.spotterVizConfig) === null || _f === void 0 ? void 0 : _f.insightTileBrandName).toBe('Insight card');
|
|
34
|
+
expect((_h = (_g = result.embedParams) === null || _g === void 0 ? void 0 : _g.spotterVizConfig) === null || _h === void 0 ? void 0 : _h.insightTileViewPlanLabel).toBe('View plan');
|
|
35
|
+
expect((_k = (_j = result.embedParams) === null || _j === void 0 ? void 0 : _j.spotterVizConfig) === null || _k === void 0 ? void 0 : _k.insightTileLoaderText).toBe('Generating insight');
|
|
36
|
+
});
|
|
20
37
|
it('preserves existing embedParams when adding spotterVizConfig', () => {
|
|
21
38
|
var _a, _b, _c;
|
|
22
39
|
const existing = { ...base, embedParams: { spotterSidebarConfig: { enablePastConversationsSidebar: true } } };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spotter-viz-utils.spec.js","sourceRoot":"","sources":["../../../src/embed/spotter-viz-utils.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAEjE,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACxC,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,UAAU,EAAS,CAAC;IAEzC,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QAClE,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;;QAC3D,MAAM,UAAU,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,QAAQ,EAAE,CAAC;QACjG,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAChE,MAAM,CAAC,MAAA,MAAM,CAAC,WAAW,0CAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;;QACrD,MAAM,UAAU,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;QAC7E,MAAM,MAAM,GAAG,0BAA0B,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAChE,MAAM,CAAC,MAAA,MAAA,MAAM,CAAC,WAAW,0CAAE,gBAAgB,0CAAE,aAAa,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;;QACnE,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,EAAE,oBAAoB,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAC9G,MAAM,UAAU,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACpE,MAAM,CAAC,MAAA,MAAM,CAAC,WAAW,0CAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,CAAC,MAAA,MAAA,MAAM,CAAC,WAAW,0CAAE,oBAAoB,0CAAE,8BAA8B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"spotter-viz-utils.spec.js","sourceRoot":"","sources":["../../../src/embed/spotter-viz-utils.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
* @summary Base classes
|
|
6
6
|
* @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
|
|
7
7
|
*/
|
|
8
|
-
import { TriggerPayload, TriggerResponse, UIPassthroughArrayResponse, UIPassthroughEvent, UIPassthroughRequest } from './hostEventClient/contracts';
|
|
8
|
+
import { HostEventRequest, TriggerPayload, TriggerResponse, UIPassthroughArrayResponse, UIPassthroughEvent, UIPassthroughRequest } from './hostEventClient/contracts';
|
|
9
9
|
import { AnswerService } from '../utils/graphql/answerService/answerService';
|
|
10
|
-
import { DOMSelector, HostEvent, EmbedEvent, MessageCallback, Action, EmbedConfig, MessageOptions, DefaultAppInitData, AllEmbedViewConfig as ViewConfig, EmbedErrorDetailsEvent, ContextType, ContextObject } from '../types';
|
|
10
|
+
import { DOMSelector, HostEvent, EmbedEvent, MessageCallback, Action, EmbedConfig, MessageOptions, DefaultAppInitData, AllEmbedViewConfig as ViewConfig, EmbedErrorDetailsEvent, ContextType, ContextObject, PreRenderConfig } from '../types';
|
|
11
11
|
import { HostEventClient } from './hostEventClient/host-event-client';
|
|
12
12
|
/**
|
|
13
13
|
* Global prefix for all ThoughtSpot postHash Params.
|
|
@@ -221,6 +221,12 @@ export declare class TsEmbed {
|
|
|
221
221
|
protected getEmbedParamsObject(): Record<any, any>;
|
|
222
222
|
protected getRootIframeSrc(): string;
|
|
223
223
|
protected createIframeEl(frameSrc: string): HTMLIFrameElement;
|
|
224
|
+
/**
|
|
225
|
+
* Returns a merged {@link PreRenderConfig} object where each shared key
|
|
226
|
+
* prefers `preRenderConfig.key` over the top-level `viewConfig.key` for
|
|
227
|
+
* backward compatibility.
|
|
228
|
+
*/
|
|
229
|
+
protected getPreRenderConfig(): PreRenderConfig;
|
|
224
230
|
/**
|
|
225
231
|
* Returns true if this embed instance is configured for pre-rendering.
|
|
226
232
|
*/
|
|
@@ -259,12 +265,14 @@ export declare class TsEmbed {
|
|
|
259
265
|
* fresh element; an element passed directly cannot be re-resolved.
|
|
260
266
|
*/
|
|
261
267
|
private resolvePreRenderContainerTarget;
|
|
268
|
+
private inheritPreRenderContainer;
|
|
269
|
+
private getCustomPreRenderContainer;
|
|
262
270
|
/**
|
|
263
|
-
* Makes the container a positioning context for the absolutely
|
|
264
|
-
* wrapper, stashing the original inline `position` on the element
|
|
265
|
-
* destroy() can restore it exactly, leaving no trace. Recording it
|
|
266
|
-
* element rather than per-instance lets the override be reverted even
|
|
267
|
-
* embeds share the same container.
|
|
271
|
+
* Makes the resolved container a positioning context for the absolutely
|
|
272
|
+
* positioned wrapper, stashing the original inline `position` on the element
|
|
273
|
+
* (once) so destroy() can restore it exactly, leaving no trace. Recording it
|
|
274
|
+
* on the element rather than per-instance lets the override be reverted even
|
|
275
|
+
* when embeds share the same container.
|
|
268
276
|
*/
|
|
269
277
|
private applyPreRenderContainerPositioning;
|
|
270
278
|
/**
|
|
@@ -412,7 +420,7 @@ export declare class TsEmbed {
|
|
|
412
420
|
* ```
|
|
413
421
|
* @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl (for context parameter)
|
|
414
422
|
*/
|
|
415
|
-
trigger<HostEventT extends HostEvent, PayloadT
|
|
423
|
+
trigger<HostEventT extends HostEvent, PayloadT = HostEventRequest<HostEventT>, ContextT extends ContextType = ContextType>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
|
|
416
424
|
/**
|
|
417
425
|
* Triggers an event to the embedded app, skipping the UI flow.
|
|
418
426
|
* @param {UIPassthroughEvent} apiName - The name of the API to be triggered.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ts-embed.d.ts","sourceRoot":"","sources":["../../../src/embed/ts-embed.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EACH,cAAc,EACd,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,oBAAoB,EACvB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AA4B7E,OAAO,EAEH,WAAW,EACX,SAAS,EACT,UAAU,EACV,eAAe,EACf,MAAM,EAEN,WAAW,EACX,cAAc,EAGd,kBAAkB,EAClB,kBAAkB,IAAI,UAAU,EAChC,sBAAsB,EAItB,WAAW,EACX,aAAa,
|
|
1
|
+
{"version":3,"file":"ts-embed.d.ts","sourceRoot":"","sources":["../../../src/embed/ts-embed.ts"],"names":[],"mappings":"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"}
|
|
@@ -73,7 +73,7 @@ export class TsEmbed {
|
|
|
73
73
|
*/
|
|
74
74
|
this.shouldEncodeUrlQueryParams = false;
|
|
75
75
|
this.defaultHiddenActions = [Action.ReportError];
|
|
76
|
-
this.preRenderContainerEl =
|
|
76
|
+
this.preRenderContainerEl = document.body;
|
|
77
77
|
this.containerScrollListener = null;
|
|
78
78
|
/**
|
|
79
79
|
* Handler for fullscreen change events
|
|
@@ -599,7 +599,7 @@ export class TsEmbed {
|
|
|
599
599
|
if (this.embedConfig.currencyFormat) {
|
|
600
600
|
queryParams[Param.CurrencyFormat] = this.embedConfig.currencyFormat;
|
|
601
601
|
}
|
|
602
|
-
const { disabledActions, disabledActionReason, hiddenActions, visibleActions, hiddenTabs, visibleTabs, showAlerts, additionalFlags: additionalFlagsFromView, locale, customizations, contextMenuTrigger, linkOverride, enableLinkOverridesV2, insertInToSlide, disableRedirectionLinksInNewTab, overrideOrgId, exposeTranslationIDs, primaryAction, } = this.viewConfig;
|
|
602
|
+
const { disabledActions, disabledActionReason, hiddenActions, visibleActions, hiddenTabs, visibleTabs, showAlerts, additionalFlags: additionalFlagsFromView, locale, customizations, contextMenuTrigger, linkOverride, enableLinkOverridesV2, insertInToSlide, disableRedirectionLinksInNewTab, overrideOrgId, overrideHistoryState, exposeTranslationIDs, primaryAction, } = this.viewConfig;
|
|
603
603
|
const { additionalFlags: additionalFlagsFromInit } = this.embedConfig;
|
|
604
604
|
const additionalFlags = {
|
|
605
605
|
...additionalFlagsFromInit,
|
|
@@ -687,6 +687,9 @@ export class TsEmbed {
|
|
|
687
687
|
if (overrideOrgId !== undefined) {
|
|
688
688
|
queryParams[Param.OverrideOrgId] = overrideOrgId;
|
|
689
689
|
}
|
|
690
|
+
if (overrideHistoryState !== undefined) {
|
|
691
|
+
queryParams[Param.OverrideHistoryState] = overrideHistoryState;
|
|
692
|
+
}
|
|
690
693
|
if (this.isPreAuthCacheEnabled()) {
|
|
691
694
|
queryParams[Param.preAuthCache] = true;
|
|
692
695
|
}
|
|
@@ -758,11 +761,27 @@ export class TsEmbed {
|
|
|
758
761
|
iFrame.name = 'ThoughtSpot Embedded Analytics';
|
|
759
762
|
return iFrame;
|
|
760
763
|
}
|
|
764
|
+
/**
|
|
765
|
+
* Returns a merged {@link PreRenderConfig} object where each shared key
|
|
766
|
+
* prefers `preRenderConfig.key` over the top-level `viewConfig.key` for
|
|
767
|
+
* backward compatibility.
|
|
768
|
+
*/
|
|
769
|
+
getPreRenderConfig() {
|
|
770
|
+
var _a, _b, _c, _d;
|
|
771
|
+
const viewCfg = this.viewConfig;
|
|
772
|
+
const preRenderCfg = (_a = viewCfg.preRenderConfig) !== null && _a !== void 0 ? _a : {};
|
|
773
|
+
return {
|
|
774
|
+
...preRenderCfg,
|
|
775
|
+
preRenderId: (_b = preRenderCfg.preRenderId) !== null && _b !== void 0 ? _b : viewCfg.preRenderId,
|
|
776
|
+
preRenderContainer: (_c = preRenderCfg.preRenderContainer) !== null && _c !== void 0 ? _c : viewCfg.preRenderContainer,
|
|
777
|
+
doNotTrackPreRenderSize: (_d = preRenderCfg.doNotTrackPreRenderSize) !== null && _d !== void 0 ? _d : viewCfg.doNotTrackPreRenderSize,
|
|
778
|
+
};
|
|
779
|
+
}
|
|
761
780
|
/**
|
|
762
781
|
* Returns true if this embed instance is configured for pre-rendering.
|
|
763
782
|
*/
|
|
764
783
|
isPreRenderEmbed() {
|
|
765
|
-
return !!this.
|
|
784
|
+
return !!this.getPreRenderConfig().preRenderId;
|
|
766
785
|
}
|
|
767
786
|
handleInsertionIntoDOM(child) {
|
|
768
787
|
if (this.isPreRenderEmbed()) {
|
|
@@ -900,6 +919,7 @@ export class TsEmbed {
|
|
|
900
919
|
this.setIframeElement(this.preRenderChild);
|
|
901
920
|
}
|
|
902
921
|
this.isRendered = true;
|
|
922
|
+
this.inheritPreRenderContainer();
|
|
903
923
|
}
|
|
904
924
|
return this.isPreRenderConnected();
|
|
905
925
|
}
|
|
@@ -950,7 +970,7 @@ export class TsEmbed {
|
|
|
950
970
|
*/
|
|
951
971
|
resolvePreRenderContainerTarget() {
|
|
952
972
|
var _a;
|
|
953
|
-
const containerConfig = this.
|
|
973
|
+
const containerConfig = this.getPreRenderConfig().preRenderContainer;
|
|
954
974
|
let container = null;
|
|
955
975
|
if (typeof containerConfig === 'string') {
|
|
956
976
|
try {
|
|
@@ -968,15 +988,35 @@ export class TsEmbed {
|
|
|
968
988
|
}
|
|
969
989
|
return (_a = container) !== null && _a !== void 0 ? _a : document.body;
|
|
970
990
|
}
|
|
991
|
+
inheritPreRenderContainer() {
|
|
992
|
+
var _a;
|
|
993
|
+
const preRenderedObject = this.getPreRenderObj();
|
|
994
|
+
if (!preRenderedObject || preRenderedObject === this) {
|
|
995
|
+
return;
|
|
996
|
+
}
|
|
997
|
+
const ownerContainer = (_a = preRenderedObject.preRenderContainerEl) !== null && _a !== void 0 ? _a : document.body;
|
|
998
|
+
if (this.getPreRenderConfig().preRenderContainer
|
|
999
|
+
&& this.resolvePreRenderContainerTarget() !== ownerContainer) {
|
|
1000
|
+
logger.warn('preRenderContainer is applied only by the component that creates the preRender; '
|
|
1001
|
+
+ 'the one passed here is ignored. Set it on the PreRender component instead.');
|
|
1002
|
+
}
|
|
1003
|
+
this.preRenderContainerEl = ownerContainer;
|
|
1004
|
+
this.applyPreRenderContainerPositioning();
|
|
1005
|
+
}
|
|
1006
|
+
getCustomPreRenderContainer() {
|
|
1007
|
+
const container = this.preRenderContainerEl;
|
|
1008
|
+
return container && container !== document.body ? container : null;
|
|
1009
|
+
}
|
|
971
1010
|
/**
|
|
972
|
-
* Makes the container a positioning context for the absolutely
|
|
973
|
-
* wrapper, stashing the original inline `position` on the element
|
|
974
|
-
* destroy() can restore it exactly, leaving no trace. Recording it
|
|
975
|
-
* element rather than per-instance lets the override be reverted even
|
|
976
|
-
* embeds share the same container.
|
|
1011
|
+
* Makes the resolved container a positioning context for the absolutely
|
|
1012
|
+
* positioned wrapper, stashing the original inline `position` on the element
|
|
1013
|
+
* (once) so destroy() can restore it exactly, leaving no trace. Recording it
|
|
1014
|
+
* on the element rather than per-instance lets the override be reverted even
|
|
1015
|
+
* when embeds share the same container.
|
|
977
1016
|
*/
|
|
978
|
-
applyPreRenderContainerPositioning(
|
|
979
|
-
|
|
1017
|
+
applyPreRenderContainerPositioning() {
|
|
1018
|
+
const container = this.getCustomPreRenderContainer();
|
|
1019
|
+
if (!container) {
|
|
980
1020
|
return;
|
|
981
1021
|
}
|
|
982
1022
|
const pos = window.getComputedStyle(container).position;
|
|
@@ -1019,11 +1059,11 @@ export class TsEmbed {
|
|
|
1019
1059
|
resolved.addEventListener('scroll', this.containerScrollListener);
|
|
1020
1060
|
}
|
|
1021
1061
|
}
|
|
1022
|
-
this.
|
|
1062
|
+
this.preRenderContainerEl = resolved;
|
|
1063
|
+
this.applyPreRenderContainerPositioning();
|
|
1023
1064
|
if (wrapper.parentNode !== resolved) {
|
|
1024
1065
|
resolved.appendChild(wrapper);
|
|
1025
1066
|
}
|
|
1026
|
-
this.preRenderContainerEl = resolved;
|
|
1027
1067
|
}
|
|
1028
1068
|
insertIntoDOMForPreRender(child) {
|
|
1029
1069
|
const preRenderChild = this.createPreRenderChild(child);
|
|
@@ -1046,7 +1086,7 @@ export class TsEmbed {
|
|
|
1046
1086
|
}
|
|
1047
1087
|
const targetContainer = this.resolvePreRenderContainerTarget();
|
|
1048
1088
|
this.preRenderContainerEl = targetContainer;
|
|
1049
|
-
this.applyPreRenderContainerPositioning(
|
|
1089
|
+
this.applyPreRenderContainerPositioning();
|
|
1050
1090
|
targetContainer.appendChild(preRenderWrapper);
|
|
1051
1091
|
}
|
|
1052
1092
|
insertIntoDOM(child) {
|
|
@@ -1374,6 +1414,9 @@ export class TsEmbed {
|
|
|
1374
1414
|
* @param args
|
|
1375
1415
|
*/
|
|
1376
1416
|
async render() {
|
|
1417
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_CALLED, {
|
|
1418
|
+
embedComponentType: this.viewConfig.embedComponentType,
|
|
1419
|
+
});
|
|
1377
1420
|
if (!getIsInitCalled()) {
|
|
1378
1421
|
logger.error(ERROR_MESSAGE.RENDER_CALLED_BEFORE_INIT);
|
|
1379
1422
|
}
|
|
@@ -1445,7 +1488,11 @@ export class TsEmbed {
|
|
|
1445
1488
|
* @param showPreRenderByDefault - Show the preRender after render, hidden by default
|
|
1446
1489
|
*/
|
|
1447
1490
|
async preRender(showPreRenderByDefault = false, replaceExistingPreRender = false) {
|
|
1448
|
-
|
|
1491
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_PRE_RENDER, {
|
|
1492
|
+
showPreRenderByDefault,
|
|
1493
|
+
replaceExistingPreRender,
|
|
1494
|
+
});
|
|
1495
|
+
if (!this.getPreRenderConfig().preRenderId) {
|
|
1449
1496
|
logger.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
|
|
1450
1497
|
return this;
|
|
1451
1498
|
}
|
|
@@ -1501,7 +1548,7 @@ export class TsEmbed {
|
|
|
1501
1548
|
}
|
|
1502
1549
|
// Drop our reference up front so a destroyed embed never pins a
|
|
1503
1550
|
// detached container in memory; restoration uses the local handle.
|
|
1504
|
-
this.preRenderContainerEl =
|
|
1551
|
+
this.preRenderContainerEl = document.body;
|
|
1505
1552
|
const originalPosition = container.dataset[PRERENDER_CONTAINER_ORIGINAL_POSITION_KEY];
|
|
1506
1553
|
if (originalPosition === undefined) {
|
|
1507
1554
|
// We never overrode this container's position; nothing to restore.
|
|
@@ -1524,9 +1571,7 @@ export class TsEmbed {
|
|
|
1524
1571
|
if (!this.containerScrollListener) {
|
|
1525
1572
|
return;
|
|
1526
1573
|
}
|
|
1527
|
-
const customContainer = this.
|
|
1528
|
-
? this.preRenderContainerEl
|
|
1529
|
-
: null;
|
|
1574
|
+
const customContainer = this.getCustomPreRenderContainer();
|
|
1530
1575
|
customContainer === null || customContainer === void 0 ? void 0 : customContainer.removeEventListener('scroll', this.containerScrollListener);
|
|
1531
1576
|
this.containerScrollListener = null;
|
|
1532
1577
|
}
|
|
@@ -1621,10 +1666,14 @@ export class TsEmbed {
|
|
|
1621
1666
|
* wrapper to overlay it.
|
|
1622
1667
|
*/
|
|
1623
1668
|
async showPreRender() {
|
|
1624
|
-
var _a;
|
|
1669
|
+
var _a, _b;
|
|
1670
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_SHOW_PRE_RENDER, {
|
|
1671
|
+
preRenderId: this.getPreRenderConfig().preRenderId,
|
|
1672
|
+
embedComponentType: this.viewConfig.embedComponentType,
|
|
1673
|
+
});
|
|
1625
1674
|
if (this.shouldWaitForRenderPromise)
|
|
1626
1675
|
await this.isReadyForRenderPromise;
|
|
1627
|
-
if (!this.
|
|
1676
|
+
if (!this.getPreRenderConfig().preRenderId) {
|
|
1628
1677
|
logger.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
|
|
1629
1678
|
return this;
|
|
1630
1679
|
}
|
|
@@ -1645,21 +1694,23 @@ export class TsEmbed {
|
|
|
1645
1694
|
}
|
|
1646
1695
|
}
|
|
1647
1696
|
const placeHolderId = this.getPreRenderIds().placeHolder;
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1697
|
+
// Remove any stale placeholder from a previous cycle. It is located
|
|
1698
|
+
// via a subtree-wide querySelector, so it may be nested deeper than a
|
|
1699
|
+
// direct child (E.g.: with fullHeight the host app can wrap it). Use
|
|
1700
|
+
// Element.remove() — which detaches from whatever the real parent is —
|
|
1701
|
+
// rather than hostElement.removeChild(), which throws NotFoundError
|
|
1702
|
+
// when the match is not a direct child. Mirrors the wrapper/child
|
|
1703
|
+
// cleanup in createPreRenderWrapper()/createPreRenderChild().
|
|
1704
|
+
(_a = this.hostElement.querySelector(`#${placeHolderId}`)) === null || _a === void 0 ? void 0 : _a.remove();
|
|
1652
1705
|
this.hostElement.appendChild(this.insertedDomEl);
|
|
1653
1706
|
this.syncPreRenderStyle();
|
|
1654
|
-
const customContainer = this.
|
|
1655
|
-
? this.preRenderContainerEl
|
|
1656
|
-
: null;
|
|
1707
|
+
const customContainer = this.getCustomPreRenderContainer();
|
|
1657
1708
|
if (customContainer && !this.containerScrollListener) {
|
|
1658
1709
|
this.containerScrollListener = () => this.syncPreRenderStyle();
|
|
1659
1710
|
customContainer.addEventListener('scroll', this.containerScrollListener);
|
|
1660
1711
|
}
|
|
1661
|
-
if (!this.
|
|
1662
|
-
const observeTarget = (
|
|
1712
|
+
if (!this.getPreRenderConfig().doNotTrackPreRenderSize) {
|
|
1713
|
+
const observeTarget = (_b = this.insertedDomEl) !== null && _b !== void 0 ? _b : this.hostElement;
|
|
1663
1714
|
this.resizeObserver = new ResizeObserver((entries) => {
|
|
1664
1715
|
entries.forEach((entry) => {
|
|
1665
1716
|
if (entry.target === observeTarget) {
|
|
@@ -1700,13 +1751,15 @@ export class TsEmbed {
|
|
|
1700
1751
|
logger.error(ERROR_MESSAGE.SYNC_STYLE_CALLED_BEFORE_RENDER);
|
|
1701
1752
|
return;
|
|
1702
1753
|
}
|
|
1754
|
+
if (!this.getPreRenderPlaceHolderElement().isConnected) {
|
|
1755
|
+
logger.debug('syncPreRenderStyle skipped: placeholder is detached');
|
|
1756
|
+
return;
|
|
1757
|
+
}
|
|
1703
1758
|
// Self-heal if the resolved container was remounted/detached, so we
|
|
1704
1759
|
// never measure a stale node (which would collapse the wrapper).
|
|
1705
1760
|
this.reconcilePreRenderContainer();
|
|
1706
1761
|
const elBoundingClient = this.getPreRenderPlaceHolderElement().getBoundingClientRect();
|
|
1707
|
-
const containerEl = this.
|
|
1708
|
-
? this.preRenderContainerEl
|
|
1709
|
-
: null;
|
|
1762
|
+
const containerEl = this.getCustomPreRenderContainer();
|
|
1710
1763
|
const containerRect = (_a = containerEl === null || containerEl === void 0 ? void 0 : containerEl.getBoundingClientRect()) !== null && _a !== void 0 ? _a : { x: 0, y: 0 };
|
|
1711
1764
|
const scrollX = containerEl ? containerEl.scrollLeft : window.scrollX;
|
|
1712
1765
|
const scrollY = containerEl ? containerEl.scrollTop : window.scrollY;
|
|
@@ -1723,16 +1776,21 @@ export class TsEmbed {
|
|
|
1723
1776
|
* If the component is not preRendered, it issues a warning.
|
|
1724
1777
|
*/
|
|
1725
1778
|
hidePreRender() {
|
|
1779
|
+
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_HIDE_PRE_RENDER, {
|
|
1780
|
+
preRenderId: this.getPreRenderConfig().preRenderId,
|
|
1781
|
+
embedComponentType: this.viewConfig.embedComponentType,
|
|
1782
|
+
});
|
|
1726
1783
|
logger.debug('HidePreRender Called');
|
|
1727
1784
|
if (!this.isPreRenderConnected()) {
|
|
1728
1785
|
// if the embed component is not preRendered , nothing to hide
|
|
1729
1786
|
logger.warn('PreRender should be called before hiding it using hidePreRender.');
|
|
1730
1787
|
return;
|
|
1731
1788
|
}
|
|
1789
|
+
const { zIndex } = this.getPreRenderConfig();
|
|
1732
1790
|
const preRenderHideStyles = {
|
|
1733
1791
|
opacity: '0',
|
|
1734
1792
|
pointerEvents: 'none',
|
|
1735
|
-
zIndex: '-1000',
|
|
1793
|
+
zIndex: zIndex !== undefined ? String(zIndex) : '-1000',
|
|
1736
1794
|
position: 'absolute',
|
|
1737
1795
|
top: '0',
|
|
1738
1796
|
left: '0',
|
|
@@ -1757,10 +1815,11 @@ export class TsEmbed {
|
|
|
1757
1815
|
* @property {string} child - The HTML element ID for the PreRender child.
|
|
1758
1816
|
*/
|
|
1759
1817
|
getPreRenderIds() {
|
|
1818
|
+
const preRenderId = this.getPreRenderConfig().preRenderId;
|
|
1760
1819
|
return {
|
|
1761
|
-
wrapper: `${PRERENDER_WRAPPER_ID_PREFIX}${
|
|
1762
|
-
child: `tsEmbed-pre-render-child-${
|
|
1763
|
-
placeHolder: `tsEmbed-pre-render-placeholder-${
|
|
1820
|
+
wrapper: `${PRERENDER_WRAPPER_ID_PREFIX}${preRenderId}`,
|
|
1821
|
+
child: `tsEmbed-pre-render-child-${preRenderId}`,
|
|
1822
|
+
placeHolder: `tsEmbed-pre-render-placeholder-${preRenderId}`,
|
|
1764
1823
|
};
|
|
1765
1824
|
}
|
|
1766
1825
|
/**
|