@thoughtspot/visual-embed-sdk 1.33.0-alpha.1 → 1.33.0-dc.1
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 +12 -28
- package/cjs/src/auth.d.ts +0 -1
- package/cjs/src/auth.d.ts.map +1 -1
- package/cjs/src/auth.js +7 -7
- package/cjs/src/auth.js.map +1 -1
- package/cjs/src/auth.spec.d.ts +1 -11
- package/cjs/src/auth.spec.d.ts.map +1 -1
- package/cjs/src/auth.spec.js +5 -14
- package/cjs/src/auth.spec.js.map +1 -1
- package/cjs/src/authToken.d.ts +4 -0
- package/cjs/src/authToken.d.ts.map +1 -1
- package/cjs/src/authToken.js +9 -7
- package/cjs/src/authToken.js.map +1 -1
- package/cjs/src/css-variables.d.ts +46 -3
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +58 -14
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +22 -4
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +62 -0
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/base.d.ts +35 -33
- package/cjs/src/embed/base.d.ts.map +1 -1
- package/cjs/src/embed/base.js +37 -33
- package/cjs/src/embed/base.js.map +1 -1
- package/cjs/src/embed/bodyless-conversation.d.ts +26 -0
- package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -0
- package/cjs/src/embed/bodyless-conversation.js +70 -0
- package/cjs/src/embed/bodyless-conversation.js.map +1 -0
- package/cjs/src/embed/bodyless-conversation.spec.d.ts +2 -0
- package/cjs/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
- package/cjs/src/embed/bodyless-conversation.spec.js +125 -0
- package/cjs/src/embed/bodyless-conversation.spec.js.map +1 -0
- package/cjs/src/embed/conversation.d.ts +28 -0
- package/cjs/src/embed/conversation.d.ts.map +1 -0
- package/cjs/src/embed/conversation.js +34 -0
- package/cjs/src/embed/conversation.js.map +1 -0
- package/cjs/src/embed/conversation.spec.d.ts +2 -0
- package/cjs/src/embed/conversation.spec.d.ts.map +1 -0
- package/cjs/src/embed/conversation.spec.js +32 -0
- package/cjs/src/embed/conversation.spec.js.map +1 -0
- package/cjs/src/embed/embed.spec.js +0 -19
- package/cjs/src/embed/embed.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +49 -0
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +21 -1
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +43 -0
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/search.d.ts +14 -13
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +6 -4
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/search.spec.js +9 -9
- package/cjs/src/embed/search.spec.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +4 -3
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +20 -19
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +0 -9
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/errors.d.ts +11 -0
- package/cjs/src/errors.d.ts.map +1 -1
- package/cjs/src/errors.js +11 -0
- package/cjs/src/errors.js.map +1 -1
- package/cjs/src/index.d.ts +4 -1
- package/cjs/src/index.d.ts.map +1 -1
- package/cjs/src/index.js +7 -1
- 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 +6 -1
- package/cjs/src/mixpanel-service.js.map +1 -1
- package/cjs/src/react/index.d.ts +39 -1
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +37 -1
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +1 -1
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/test/test-utils.d.ts +13 -0
- package/cjs/src/test/test-utils.d.ts.map +1 -1
- package/cjs/src/test/test-utils.js +41 -4
- package/cjs/src/test/test-utils.js.map +1 -1
- package/cjs/src/tokenizedFetch.d.ts.map +1 -1
- package/cjs/src/tokenizedFetch.js +5 -1
- package/cjs/src/tokenizedFetch.js.map +1 -1
- package/cjs/src/types.d.ts +320 -27
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +271 -15
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/answerService/answerService.d.ts +34 -0
- package/cjs/src/utils/answerService/answerService.d.ts.map +1 -0
- package/cjs/src/utils/answerService/answerService.js +142 -0
- package/cjs/src/utils/answerService/answerService.js.map +1 -0
- package/cjs/src/utils/answerService/answerService.spec.d.ts +1 -0
- package/cjs/src/utils/answerService/answerService.spec.d.ts.map +1 -0
- package/cjs/src/utils/answerService/answerService.spec.js +1 -0
- package/cjs/src/utils/answerService/answerService.spec.js.map +1 -0
- package/cjs/src/utils/answerService/graphql-queries.d.ts +6 -0
- package/cjs/src/utils/answerService/graphql-queries.d.ts.map +1 -0
- package/cjs/src/utils/answerService/graphql-queries.js +123 -0
- package/cjs/src/utils/answerService/graphql-queries.js.map +1 -0
- package/cjs/src/utils/answerService.d.ts +10 -0
- package/cjs/src/utils/answerService.d.ts.map +1 -0
- package/cjs/src/utils/answerService.js +61 -0
- package/cjs/src/utils/answerService.js.map +1 -0
- package/cjs/src/utils/answerService.spec.d.ts +2 -0
- package/cjs/src/utils/answerService.spec.d.ts.map +1 -0
- package/cjs/src/utils/answerService.spec.js +31 -0
- package/cjs/src/utils/answerService.spec.js.map +1 -0
- package/cjs/src/utils/authService/authService.spec.js +11 -2
- package/cjs/src/utils/authService/authService.spec.js.map +1 -1
- package/cjs/src/utils/authService/tokenizedAuthService.d.ts +0 -2
- package/cjs/src/utils/authService/tokenizedAuthService.d.ts.map +1 -1
- package/cjs/src/utils/authService/tokenizedAuthService.js +0 -2
- package/cjs/src/utils/authService/tokenizedAuthService.js.map +1 -1
- package/cjs/src/utils/authService.d.ts +37 -0
- package/cjs/src/utils/authService.d.ts.map +1 -0
- package/cjs/src/utils/authService.js +106 -0
- package/cjs/src/utils/authService.js.map +1 -0
- package/cjs/src/utils/authService.spec.d.ts +2 -0
- package/cjs/src/utils/authService.spec.d.ts.map +1 -0
- package/cjs/src/utils/authService.spec.js +72 -0
- package/cjs/src/utils/authService.spec.js.map +1 -0
- package/cjs/src/utils/global-styles.spec.d.ts +2 -0
- package/cjs/src/utils/global-styles.spec.d.ts.map +1 -0
- package/cjs/src/utils/global-styles.spec.js +21 -0
- package/cjs/src/utils/global-styles.spec.js.map +1 -0
- package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +2 -0
- package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answer-queries.js +32 -2
- package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.d.ts +23 -0
- package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.js +76 -8
- package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.spec.js +109 -0
- package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/graphql-queries.d.ts +5 -0
- package/cjs/src/utils/graphql/answerService/graphql-queries.d.ts.map +1 -0
- package/cjs/src/utils/graphql/answerService/graphql-queries.js +80 -0
- package/cjs/src/utils/graphql/answerService/graphql-queries.js.map +1 -0
- package/cjs/src/utils/graphql/conversationService/conversation-queries.d.ts +3 -0
- package/cjs/src/utils/graphql/conversationService/conversation-queries.d.ts.map +1 -0
- package/cjs/src/utils/graphql/conversationService/conversation-queries.js +318 -0
- package/cjs/src/utils/graphql/conversationService/conversation-queries.js.map +1 -0
- package/cjs/src/utils/graphql/conversationService/conversation-service.d.ts +12 -0
- package/cjs/src/utils/graphql/conversationService/conversation-service.d.ts.map +1 -0
- package/cjs/src/utils/graphql/conversationService/conversation-service.js +89 -0
- package/cjs/src/utils/graphql/conversationService/conversation-service.js.map +1 -0
- package/cjs/src/utils/graphql/graphql-request.d.ts.map +1 -1
- package/cjs/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/cjs/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/cjs/src/utils/graphql/graphql-request.spec.js +48 -0
- package/cjs/src/utils/graphql/graphql-request.spec.js.map +1 -0
- package/cjs/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
- package/cjs/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
- package/cjs/src/utils/graphql/nlsService/conversation-queries.js +313 -0
- package/cjs/src/utils/graphql/nlsService/conversation-queries.js.map +1 -0
- package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
- package/cjs/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
- package/cjs/src/utils/graphql/nlsService/conversation-service.js +75 -0
- package/cjs/src/utils/graphql/nlsService/conversation-service.js.map +1 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-queries.js +403 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-queries.js.map +1 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.d.ts +12 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.js +55 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.js.map +1 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.js +33 -0
- package/cjs/src/utils/graphql/nlsService/nls-answer-service.spec.js.map +1 -0
- package/cjs/src/utils/graphql/preview-service.d.ts +6 -0
- package/cjs/src/utils/graphql/preview-service.d.ts.map +1 -1
- package/cjs/src/utils/graphql/preview-service.js +6 -0
- package/cjs/src/utils/graphql/preview-service.js.map +1 -1
- package/cjs/src/utils/graphql/preview-service.spec.d.ts +2 -0
- package/cjs/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
- package/cjs/src/utils/graphql/preview-service.spec.js +20 -0
- package/cjs/src/utils/graphql/preview-service.spec.js.map +1 -0
- package/cjs/src/utils/graphql/spotterService/conversation-queries.d.ts +3 -0
- package/cjs/src/utils/graphql/spotterService/conversation-queries.d.ts.map +1 -0
- package/cjs/src/utils/graphql/spotterService/conversation-queries.js +318 -0
- package/cjs/src/utils/graphql/spotterService/conversation-queries.js.map +1 -0
- package/cjs/src/utils/graphql/spotterService/conversation-service.d.ts +12 -0
- package/cjs/src/utils/graphql/spotterService/conversation-service.d.ts.map +1 -0
- package/cjs/src/utils/graphql/spotterService/conversation-service.js +89 -0
- package/cjs/src/utils/graphql/spotterService/conversation-service.js.map +1 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-queries.d.ts +2 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-queries.d.ts.map +1 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-queries.js +403 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-queries.js.map +1 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-service.d.ts +12 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-service.d.ts.map +1 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-service.js +55 -0
- package/cjs/src/utils/graphql/spotterService/nls-answer-service.js.map +1 -0
- package/cjs/src/utils/liveboardService/liveboardService.d.ts +3 -0
- package/cjs/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
- package/cjs/src/utils/liveboardService/liveboardService.js +50 -0
- package/cjs/src/utils/liveboardService/liveboardService.js.map +1 -0
- package/cjs/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
- package/cjs/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
- package/cjs/src/utils/liveboardService/liveboardService.spec.js +64 -0
- package/cjs/src/utils/liveboardService/liveboardService.spec.js.map +1 -0
- package/cjs/src/utils/processData.d.ts.map +1 -1
- package/cjs/src/utils/processData.js +4 -3
- package/cjs/src/utils/processData.js.map +1 -1
- package/cjs/src/utils/processData.spec.js +15 -0
- package/cjs/src/utils/processData.spec.js.map +1 -1
- package/cjs/src/utils/processTrigger.d.ts +1 -0
- package/cjs/src/utils/processTrigger.d.ts.map +1 -1
- package/cjs/src/utils/processTrigger.js +3 -3
- package/cjs/src/utils/processTrigger.js.map +1 -1
- package/cjs/src/utils/processTrigger.spec.js +10 -0
- package/cjs/src/utils/processTrigger.spec.js.map +1 -1
- package/cjs/src/utils/reporting.d.ts +16 -0
- package/cjs/src/utils/reporting.d.ts.map +1 -0
- package/cjs/src/utils/reporting.js +68 -0
- package/cjs/src/utils/reporting.js.map +1 -0
- package/cjs/src/utils/reporting.spec.d.ts +2 -0
- package/cjs/src/utils/reporting.spec.d.ts.map +1 -0
- package/cjs/src/utils/reporting.spec.js +76 -0
- package/cjs/src/utils/reporting.spec.js.map +1 -0
- package/cjs/src/utils.d.ts.map +1 -1
- package/cjs/src/utils.js +1 -3
- package/cjs/src/utils.js.map +1 -1
- package/dist/src/auth.d.ts +0 -1
- package/dist/src/auth.d.ts.map +1 -1
- package/dist/src/auth.spec.d.ts +1 -11
- package/dist/src/auth.spec.d.ts.map +1 -1
- package/dist/src/authToken.d.ts +4 -0
- package/dist/src/authToken.d.ts.map +1 -1
- package/dist/src/css-variables.d.ts +46 -3
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +58 -14
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/base.d.ts +35 -33
- package/dist/src/embed/base.d.ts.map +1 -1
- package/dist/src/embed/bodyless-conversation.d.ts +26 -0
- package/dist/src/embed/bodyless-conversation.d.ts.map +1 -0
- package/dist/src/embed/bodyless-conversation.spec.d.ts +2 -0
- package/dist/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
- package/dist/src/embed/conversation.d.ts +28 -0
- package/dist/src/embed/conversation.d.ts.map +1 -0
- package/dist/src/embed/conversation.spec.d.ts +2 -0
- package/dist/src/embed/conversation.spec.d.ts.map +1 -0
- package/dist/src/embed/liveboard.d.ts +49 -0
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +14 -13
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +4 -3
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/errors.d.ts +11 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/index.d.ts +4 -1
- 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/index.d.ts +39 -1
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/test/test-utils.d.ts +13 -0
- package/dist/src/test/test-utils.d.ts.map +1 -1
- package/dist/src/tokenizedFetch.d.ts.map +1 -1
- package/dist/src/types.d.ts +320 -27
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/authService/tokenizedAuthService.d.ts +0 -2
- package/dist/src/utils/authService/tokenizedAuthService.d.ts.map +1 -1
- package/dist/src/utils/global-styles.spec.d.ts +2 -0
- package/dist/src/utils/global-styles.spec.d.ts.map +1 -0
- package/dist/src/utils/graphql/answerService/answer-queries.d.ts +2 -0
- package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/dist/src/utils/graphql/answerService/answerService.d.ts +23 -0
- package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/dist/src/utils/graphql/graphql-request.d.ts.map +1 -1
- package/dist/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/dist/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/dist/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
- package/dist/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
- package/dist/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
- package/dist/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
- package/dist/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
- package/dist/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
- package/dist/src/utils/graphql/nlsService/nls-answer-service.d.ts +12 -0
- package/dist/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
- package/dist/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
- package/dist/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
- package/dist/src/utils/graphql/preview-service.d.ts +6 -0
- package/dist/src/utils/graphql/preview-service.d.ts.map +1 -1
- package/dist/src/utils/graphql/preview-service.spec.d.ts +2 -0
- package/dist/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
- package/dist/src/utils/liveboardService/liveboardService.d.ts +3 -0
- package/dist/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
- package/dist/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
- package/dist/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
- package/dist/src/utils/processData.d.ts.map +1 -1
- package/dist/src/utils/processTrigger.d.ts +1 -0
- package/dist/src/utils/processTrigger.d.ts.map +1 -1
- package/dist/src/utils/reporting.d.ts +16 -0
- package/dist/src/utils/reporting.d.ts.map +1 -0
- package/dist/src/utils/reporting.spec.d.ts +2 -0
- package/dist/src/utils/reporting.spec.d.ts.map +1 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +8268 -202
- package/dist/tsembed-react.js +8216 -204
- package/dist/tsembed.es.js +9217 -238
- package/dist/tsembed.js +9162 -236
- package/dist/visual-embed-sdk-react-full.d.ts +665 -104
- package/dist/visual-embed-sdk-react.d.ts +665 -104
- package/dist/visual-embed-sdk.d.ts +601 -103
- package/lib/package.json +12 -28
- package/lib/src/auth.d.ts +0 -1
- package/lib/src/auth.d.ts.map +1 -1
- package/lib/src/auth.js +7 -7
- package/lib/src/auth.js.map +1 -1
- package/lib/src/auth.spec.d.ts +1 -11
- package/lib/src/auth.spec.d.ts.map +1 -1
- package/lib/src/auth.spec.js +3 -12
- package/lib/src/auth.spec.js.map +1 -1
- package/lib/src/authToken.d.ts +4 -0
- package/lib/src/authToken.d.ts.map +1 -1
- package/lib/src/authToken.js +9 -7
- package/lib/src/authToken.js.map +1 -1
- package/lib/src/css-variables.d.ts +46 -3
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +58 -14
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +21 -3
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +63 -1
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/base.d.ts +35 -33
- package/lib/src/embed/base.d.ts.map +1 -1
- package/lib/src/embed/base.js +37 -33
- package/lib/src/embed/base.js.map +1 -1
- package/lib/src/embed/bodyless-conversation.d.ts +26 -0
- package/lib/src/embed/bodyless-conversation.d.ts.map +1 -0
- package/lib/src/embed/bodyless-conversation.js +66 -0
- package/lib/src/embed/bodyless-conversation.js.map +1 -0
- package/lib/src/embed/bodyless-conversation.spec.d.ts +2 -0
- package/lib/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
- package/lib/src/embed/bodyless-conversation.spec.js +122 -0
- package/lib/src/embed/bodyless-conversation.spec.js.map +1 -0
- package/lib/src/embed/conversation.d.ts +28 -0
- package/lib/src/embed/conversation.d.ts.map +1 -0
- package/lib/src/embed/conversation.js +30 -0
- package/lib/src/embed/conversation.js.map +1 -0
- package/lib/src/embed/conversation.spec.d.ts +2 -0
- package/lib/src/embed/conversation.spec.d.ts.map +1 -0
- package/lib/src/embed/conversation.spec.js +29 -0
- package/lib/src/embed/conversation.spec.js.map +1 -0
- package/lib/src/embed/embed.spec.js +0 -19
- package/lib/src/embed/embed.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +49 -0
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +21 -1
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +43 -0
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/search.d.ts +14 -13
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +6 -4
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/search.spec.js +9 -9
- package/lib/src/embed/search.spec.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +4 -3
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +20 -19
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +0 -9
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/errors.d.ts +11 -0
- package/lib/src/errors.d.ts.map +1 -1
- package/lib/src/errors.js +11 -0
- package/lib/src/errors.js.map +1 -1
- package/lib/src/index.d.ts +4 -1
- package/lib/src/index.d.ts.map +1 -1
- package/lib/src/index.js +4 -1
- 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 +6 -1
- package/lib/src/mixpanel-service.js.map +1 -1
- package/lib/src/react/index.d.ts +39 -1
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +36 -0
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +1 -1
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/test/test-utils.d.ts +13 -0
- package/lib/src/test/test-utils.d.ts.map +1 -1
- package/lib/src/test/test-utils.js +38 -3
- package/lib/src/test/test-utils.js.map +1 -1
- package/lib/src/tokenizedFetch.d.ts.map +1 -1
- package/lib/src/tokenizedFetch.js +5 -1
- package/lib/src/tokenizedFetch.js.map +1 -1
- package/lib/src/types.d.ts +320 -27
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +271 -15
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/authService/authService.spec.js +11 -2
- package/lib/src/utils/authService/authService.spec.js.map +1 -1
- package/lib/src/utils/authService/tokenizedAuthService.d.ts +0 -2
- package/lib/src/utils/authService/tokenizedAuthService.d.ts.map +1 -1
- package/lib/src/utils/authService/tokenizedAuthService.js +0 -2
- package/lib/src/utils/authService/tokenizedAuthService.js.map +1 -1
- package/lib/src/utils/global-styles.spec.d.ts +2 -0
- package/lib/src/utils/global-styles.spec.d.ts.map +1 -0
- package/lib/src/utils/global-styles.spec.js +19 -0
- package/lib/src/utils/global-styles.spec.js.map +1 -0
- package/lib/src/utils/graphql/answerService/answer-queries.d.ts +2 -0
- package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answer-queries.js +31 -1
- package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.d.ts +23 -0
- package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.js +76 -8
- package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js +110 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/lib/src/utils/graphql/conversationService/conversation-queries.d.ts +3 -0
- package/lib/src/utils/graphql/conversationService/conversation-queries.d.ts.map +1 -0
- package/lib/src/utils/graphql/conversationService/conversation-queries.js +315 -0
- package/lib/src/utils/graphql/conversationService/conversation-queries.js.map +1 -0
- package/lib/src/utils/graphql/conversationService/conversation-service.d.ts +12 -0
- package/lib/src/utils/graphql/conversationService/conversation-service.d.ts.map +1 -0
- package/lib/src/utils/graphql/conversationService/conversation-service.js +84 -0
- package/lib/src/utils/graphql/conversationService/conversation-service.js.map +1 -0
- package/lib/src/utils/graphql/graphql-request.d.ts.map +1 -1
- package/lib/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/lib/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/lib/src/utils/graphql/graphql-request.spec.js +45 -0
- package/lib/src/utils/graphql/graphql-request.spec.js.map +1 -0
- package/lib/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
- package/lib/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
- package/lib/src/utils/graphql/nlsService/conversation-queries.js +310 -0
- package/lib/src/utils/graphql/nlsService/conversation-queries.js.map +1 -0
- package/lib/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
- package/lib/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
- package/lib/src/utils/graphql/nlsService/conversation-service.js +70 -0
- package/lib/src/utils/graphql/nlsService/conversation-service.js.map +1 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-queries.js +400 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-queries.js.map +1 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.d.ts +12 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.js +50 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.js.map +1 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.js +31 -0
- package/lib/src/utils/graphql/nlsService/nls-answer-service.spec.js.map +1 -0
- package/lib/src/utils/graphql/preview-service.d.ts +6 -0
- package/lib/src/utils/graphql/preview-service.d.ts.map +1 -1
- package/lib/src/utils/graphql/preview-service.js +6 -0
- package/lib/src/utils/graphql/preview-service.js.map +1 -1
- package/lib/src/utils/graphql/preview-service.spec.d.ts +2 -0
- package/lib/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
- package/lib/src/utils/graphql/preview-service.spec.js +18 -0
- package/lib/src/utils/graphql/preview-service.spec.js.map +1 -0
- package/lib/src/utils/graphql/spotterService/conversation-queries.d.ts +3 -0
- package/lib/src/utils/graphql/spotterService/conversation-queries.d.ts.map +1 -0
- package/lib/src/utils/graphql/spotterService/conversation-queries.js +315 -0
- package/lib/src/utils/graphql/spotterService/conversation-queries.js.map +1 -0
- package/lib/src/utils/graphql/spotterService/conversation-service.d.ts +12 -0
- package/lib/src/utils/graphql/spotterService/conversation-service.d.ts.map +1 -0
- package/lib/src/utils/graphql/spotterService/conversation-service.js +84 -0
- package/lib/src/utils/graphql/spotterService/conversation-service.js.map +1 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-queries.d.ts +2 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-queries.d.ts.map +1 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-queries.js +400 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-queries.js.map +1 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-service.d.ts +12 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-service.d.ts.map +1 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-service.js +50 -0
- package/lib/src/utils/graphql/spotterService/nls-answer-service.js.map +1 -0
- package/lib/src/utils/liveboardService/liveboardService.d.ts +3 -0
- package/lib/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
- package/lib/src/utils/liveboardService/liveboardService.js +46 -0
- package/lib/src/utils/liveboardService/liveboardService.js.map +1 -0
- package/lib/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
- package/lib/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
- package/lib/src/utils/liveboardService/liveboardService.spec.js +61 -0
- package/lib/src/utils/liveboardService/liveboardService.spec.js.map +1 -0
- package/lib/src/utils/processData.d.ts.map +1 -1
- package/lib/src/utils/processData.js +4 -3
- package/lib/src/utils/processData.js.map +1 -1
- package/lib/src/utils/processData.spec.js +15 -0
- package/lib/src/utils/processData.spec.js.map +1 -1
- package/lib/src/utils/processTrigger.d.ts +1 -0
- package/lib/src/utils/processTrigger.d.ts.map +1 -1
- package/lib/src/utils/processTrigger.js +1 -1
- package/lib/src/utils/processTrigger.js.map +1 -1
- package/lib/src/utils/processTrigger.spec.js +10 -0
- package/lib/src/utils/processTrigger.spec.js.map +1 -1
- package/lib/src/utils/reporting.d.ts +16 -0
- package/lib/src/utils/reporting.d.ts.map +1 -0
- package/lib/src/utils/reporting.js +62 -0
- package/lib/src/utils/reporting.js.map +1 -0
- package/lib/src/utils/reporting.spec.d.ts +2 -0
- package/lib/src/utils/reporting.spec.d.ts.map +1 -0
- package/lib/src/utils/reporting.spec.js +74 -0
- package/lib/src/utils/reporting.spec.js.map +1 -0
- package/lib/src/utils.d.ts.map +1 -1
- package/lib/src/utils.js +1 -3
- package/lib/src/utils.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +613 -103
- package/package.json +12 -28
- package/src/auth.spec.ts +3 -12
- package/src/auth.ts +7 -7
- package/src/authToken.ts +9 -9
- package/src/css-variables.ts +49 -3
- package/src/embed/app.spec.ts +93 -0
- package/src/embed/app.ts +73 -15
- package/src/embed/base.ts +38 -34
- package/src/embed/bodyless-conversation.spec.ts +141 -0
- package/src/embed/bodyless-conversation.ts +95 -0
- package/src/embed/conversation.spec.ts +46 -0
- package/src/embed/conversation.ts +58 -0
- package/src/embed/embed.spec.ts +0 -22
- package/src/embed/liveboard.spec.ts +62 -0
- package/src/embed/liveboard.ts +69 -0
- package/src/embed/search.spec.ts +9 -9
- package/src/embed/search.ts +20 -16
- package/src/embed/ts-embed.spec.ts +0 -11
- package/src/embed/ts-embed.ts +26 -19
- package/src/errors.ts +11 -0
- package/src/index.ts +7 -0
- package/src/mixpanel-service.ts +6 -1
- package/src/react/index.spec.tsx +1 -1
- package/src/react/index.tsx +89 -41
- package/src/test/test-utils.ts +46 -3
- package/src/tokenizedFetch.ts +5 -1
- package/src/types.ts +325 -24
- package/src/utils/authService/authService.spec.ts +11 -2
- package/src/utils/authService/tokenizedAuthService.ts +0 -2
- package/src/utils/global-styles.spec.ts +20 -0
- package/src/utils/graphql/answerService/answer-queries.ts +33 -1
- package/src/utils/graphql/answerService/answerService.spec.ts +131 -0
- package/src/utils/graphql/answerService/answerService.ts +102 -10
- package/src/utils/graphql/graphql-request.spec.ts +51 -0
- package/src/utils/graphql/graphql-request.ts +1 -1
- package/src/utils/graphql/nlsService/conversation-queries.ts +310 -0
- package/src/utils/graphql/nlsService/conversation-service.ts +81 -0
- package/src/utils/graphql/nlsService/nls-answer-queries.ts +399 -0
- package/src/utils/graphql/nlsService/nls-answer-service.spec.ts +35 -0
- package/src/utils/graphql/nlsService/nls-answer-service.ts +58 -0
- package/src/utils/graphql/preview-service.spec.ts +20 -0
- package/src/utils/graphql/preview-service.ts +6 -0
- package/src/utils/liveboardService/liveboardService.spec.ts +63 -0
- package/src/utils/liveboardService/liveboardService.ts +55 -0
- package/src/utils/processData.spec.ts +17 -0
- package/src/utils/processData.ts +4 -5
- package/src/utils/processTrigger.spec.ts +19 -0
- package/src/utils/processTrigger.ts +1 -1
- package/src/utils/reporting.spec.ts +91 -0
- package/src/utils/reporting.ts +71 -0
- package/src/utils.ts +1 -3
- package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts +0 -2
- package/dist/src/embed/searchEmbed-basic-auth.spec.d.ts.map +0 -1
- package/src/embed/searchEmbed-basic-auth.spec.ts +0 -110
package/src/embed/search.spec.ts
CHANGED
|
@@ -52,7 +52,7 @@ describe('Search embed tests', () => {
|
|
|
52
52
|
await executeAfterWait(() => {
|
|
53
53
|
expectUrlMatchesWithParams(
|
|
54
54
|
getIFrameSrc(),
|
|
55
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&enableDataPanelV2=
|
|
55
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&enableDataPanelV2=true&dataSourceMode=expand&useLastSelectedSources=false${prefixParams}#/embed/answer`,
|
|
56
56
|
);
|
|
57
57
|
});
|
|
58
58
|
});
|
|
@@ -416,16 +416,16 @@ describe('Search embed tests', () => {
|
|
|
416
416
|
});
|
|
417
417
|
});
|
|
418
418
|
|
|
419
|
-
test('should set enableDataPanelV2 to
|
|
419
|
+
test('should set enableDataPanelV2 to false if data panel v2 flag is false', async () => {
|
|
420
420
|
const searchEmbed = new SearchEmbed(getRootEl(), {
|
|
421
421
|
...defaultViewConfig,
|
|
422
|
-
dataPanelV2:
|
|
422
|
+
dataPanelV2: false,
|
|
423
423
|
});
|
|
424
424
|
searchEmbed.render();
|
|
425
425
|
await executeAfterWait(() => {
|
|
426
426
|
expectUrlMatchesWithParams(
|
|
427
427
|
getIFrameSrc(),
|
|
428
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=
|
|
428
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=false&useLastSelectedSources=false${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
429
429
|
);
|
|
430
430
|
});
|
|
431
431
|
});
|
|
@@ -438,7 +438,7 @@ describe('Search embed tests', () => {
|
|
|
438
438
|
await executeAfterWait(() => {
|
|
439
439
|
expectUrlMatchesWithParams(
|
|
440
440
|
getIFrameSrc(),
|
|
441
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=
|
|
441
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=true&useLastSelectedSources=true${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
442
442
|
);
|
|
443
443
|
});
|
|
444
444
|
});
|
|
@@ -453,7 +453,7 @@ describe('Search embed tests', () => {
|
|
|
453
453
|
await executeAfterWait(() => {
|
|
454
454
|
expectUrlMatchesWithParams(
|
|
455
455
|
getIFrameSrc(),
|
|
456
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSources=[%22data-source-1%22]&dataSourceMode=expand&enableDataPanelV2=
|
|
456
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSources=[%22data-source-1%22]&dataSourceMode=expand&enableDataPanelV2=true&useLastSelectedSources=false${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
457
457
|
);
|
|
458
458
|
});
|
|
459
459
|
});
|
|
@@ -468,7 +468,7 @@ describe('Search embed tests', () => {
|
|
|
468
468
|
await executeAfterWait(() => {
|
|
469
469
|
expectUrlMatchesWithParams(
|
|
470
470
|
getIFrameSrc(),
|
|
471
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSources=[%22data-source-1%22]&dataSourceMode=expand&enableDataPanelV2=
|
|
471
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSources=[%22data-source-1%22]&dataSourceMode=expand&enableDataPanelV2=true&useLastSelectedSources=false${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
472
472
|
);
|
|
473
473
|
});
|
|
474
474
|
});
|
|
@@ -499,7 +499,7 @@ describe('Search embed tests', () => {
|
|
|
499
499
|
await executeAfterWait(() => {
|
|
500
500
|
expectUrlMatchesWithParams(
|
|
501
501
|
getIFrameSrc(),
|
|
502
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=
|
|
502
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=true&useLastSelectedSources=false&hideSearchBar=true${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
503
503
|
);
|
|
504
504
|
});
|
|
505
505
|
});
|
|
@@ -514,7 +514,7 @@ describe('Search embed tests', () => {
|
|
|
514
514
|
await executeAfterWait(() => {
|
|
515
515
|
expectUrlMatchesWithParams(
|
|
516
516
|
getIFrameSrc(),
|
|
517
|
-
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=
|
|
517
|
+
`http://${thoughtSpotHost}/v2/?${defaultParamsWithHiddenActions}&dataSourceMode=expand&enableDataPanelV2=true&useLastSelectedSources=false&dataPanelCustomGroupsAccordionInitialState=EXPAND_FIRST${prefixParams}#/embed/saved-answer/${answerId}`,
|
|
518
518
|
);
|
|
519
519
|
});
|
|
520
520
|
});
|
package/src/embed/search.ts
CHANGED
|
@@ -88,6 +88,19 @@ export interface SearchViewConfig
|
|
|
88
88
|
* ```
|
|
89
89
|
*/
|
|
90
90
|
collapseDataSources?: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* If set to true, the data panel is collapsed on load,
|
|
93
|
+
* but can be expanded manually.
|
|
94
|
+
* @version: SDK: 1.34.0 | ThoughtSpot: 10.3.0.cl
|
|
95
|
+
* @example
|
|
96
|
+
* ```js
|
|
97
|
+
* const embed = new SearchEmbed('#tsEmbed', {
|
|
98
|
+
* ... // other options
|
|
99
|
+
* collapseDataPanel:true,
|
|
100
|
+
* })
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
collapseDataPanel?: boolean;
|
|
91
104
|
/**
|
|
92
105
|
* Show or hide the data sources panel.
|
|
93
106
|
* @version: SDK: 1.2.0 | ThoughtSpot: 9.1.0.sw
|
|
@@ -214,19 +227,6 @@ export interface SearchViewConfig
|
|
|
214
227
|
* ```
|
|
215
228
|
*/
|
|
216
229
|
hideSearchBar?: boolean;
|
|
217
|
-
/**
|
|
218
|
-
* Flag to control Data panel experience
|
|
219
|
-
* @default false
|
|
220
|
-
* @version SDK: 1.26.0 | Thoughtspot: 9.7.0.cl
|
|
221
|
-
* @example
|
|
222
|
-
* ```js
|
|
223
|
-
* const embed = new SearchEmbed('#tsEmbed', {
|
|
224
|
-
* ... // other options
|
|
225
|
-
* dataPanelV2:false,
|
|
226
|
-
* })
|
|
227
|
-
* ```
|
|
228
|
-
*/
|
|
229
|
-
dataPanelV2?: boolean;
|
|
230
230
|
/**
|
|
231
231
|
* Flag to set if last selected dataSource should be used
|
|
232
232
|
* @version: SDK: 1.24.0
|
|
@@ -236,6 +236,7 @@ export interface SearchViewConfig
|
|
|
236
236
|
* To set the initial state of the search bar in case of saved-answers.
|
|
237
237
|
* @default false
|
|
238
238
|
* @version SDK: 1.32.0 | Thoughtspot: 10.0.0.cl
|
|
239
|
+
* @deprecated Use {@link collapseSearchBar} instead
|
|
239
240
|
*/
|
|
240
241
|
collapseSearchBarInitially?: boolean;
|
|
241
242
|
/**
|
|
@@ -320,7 +321,8 @@ export class SearchEmbed extends TsEmbed {
|
|
|
320
321
|
*/
|
|
321
322
|
private getDataSourceMode() {
|
|
322
323
|
let dataSourceMode = DataSourceVisualMode.Expanded;
|
|
323
|
-
if (this.viewConfig.collapseDataSources === true
|
|
324
|
+
if (this.viewConfig.collapseDataSources === true
|
|
325
|
+
|| this.viewConfig.collapseDataPanel === true) {
|
|
324
326
|
dataSourceMode = DataSourceVisualMode.Collapsed;
|
|
325
327
|
}
|
|
326
328
|
if (this.viewConfig.hideDataSources === true) {
|
|
@@ -341,7 +343,7 @@ export class SearchEmbed extends TsEmbed {
|
|
|
341
343
|
dataSources,
|
|
342
344
|
excludeRuntimeFiltersfromURL,
|
|
343
345
|
hideSearchBar,
|
|
344
|
-
dataPanelV2 =
|
|
346
|
+
dataPanelV2 = true,
|
|
345
347
|
useLastSelectedSources = false,
|
|
346
348
|
runtimeParameters,
|
|
347
349
|
collapseSearchBarInitially = false,
|
|
@@ -351,6 +353,7 @@ export class SearchEmbed extends TsEmbed {
|
|
|
351
353
|
dataPanelCustomGroupsAccordionInitialState = DataPanelCustomColumnGroupsAccordionState.EXPAND_ALL,
|
|
352
354
|
focusSearchBarOnRender = true,
|
|
353
355
|
excludeRuntimeParametersfromURL,
|
|
356
|
+
collapseSearchBar = true,
|
|
354
357
|
} = this.viewConfig;
|
|
355
358
|
const queryParams = this.getBaseQueryParams();
|
|
356
359
|
|
|
@@ -406,7 +409,8 @@ export class SearchEmbed extends TsEmbed {
|
|
|
406
409
|
}
|
|
407
410
|
|
|
408
411
|
queryParams[Param.searchEmbed] = true;
|
|
409
|
-
|
|
412
|
+
/* eslint-disable-next-line max-len */
|
|
413
|
+
queryParams[Param.CollapseSearchBarInitially] = collapseSearchBarInitially || collapseSearchBar;
|
|
410
414
|
queryParams[Param.EnableCustomColumnGroups] = enableCustomColumnGroups;
|
|
411
415
|
if (dataPanelCustomGroupsAccordionInitialState
|
|
412
416
|
=== DataPanelCustomColumnGroupsAccordionState.COLLAPSE_ALL
|
|
@@ -56,7 +56,6 @@ beforeAll(() => {
|
|
|
56
56
|
const customisations = {
|
|
57
57
|
style: {
|
|
58
58
|
customCSS: {},
|
|
59
|
-
customCSSUrl: 'http://localhost:3000',
|
|
60
59
|
},
|
|
61
60
|
content: {},
|
|
62
61
|
};
|
|
@@ -64,7 +63,6 @@ const customisations = {
|
|
|
64
63
|
const customisationsView = {
|
|
65
64
|
style: {
|
|
66
65
|
customCSS: {},
|
|
67
|
-
customCSSUrl: 'http://localhost:8000',
|
|
68
66
|
},
|
|
69
67
|
content: {
|
|
70
68
|
strings: {
|
|
@@ -95,7 +93,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
95
93
|
init({
|
|
96
94
|
thoughtSpotHost: 'tshost',
|
|
97
95
|
customizations: customisations,
|
|
98
|
-
customCssUrl: 'http://localhost:5000',
|
|
99
96
|
authType: AuthType.TrustedAuthTokenCookieless,
|
|
100
97
|
getAuthToken: () => Promise.resolve('test_auth_token2'),
|
|
101
98
|
});
|
|
@@ -136,7 +133,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
136
133
|
thoughtSpotHost: 'tshost',
|
|
137
134
|
authType: AuthType.None,
|
|
138
135
|
customizations: customisations,
|
|
139
|
-
customCssUrl: 'http://localhost:5000',
|
|
140
136
|
});
|
|
141
137
|
});
|
|
142
138
|
|
|
@@ -199,9 +195,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
199
195
|
reorderedHomepageModules: [],
|
|
200
196
|
},
|
|
201
197
|
});
|
|
202
|
-
expect(getIFrameSrc()).toContain(
|
|
203
|
-
`customCssUrl=${customisationsView.style.customCSSUrl}`,
|
|
204
|
-
);
|
|
205
198
|
});
|
|
206
199
|
|
|
207
200
|
test('hide home page modules from view Config should be part of app_init payload', async () => {
|
|
@@ -601,7 +594,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
601
594
|
init({
|
|
602
595
|
thoughtSpotHost: 'tshost',
|
|
603
596
|
customizations: customisations,
|
|
604
|
-
customCssUrl: 'http://localhost:5000',
|
|
605
597
|
authType: AuthType.TrustedAuthTokenCookieless,
|
|
606
598
|
getAuthToken: () => Promise.resolve('test_auth_token1'),
|
|
607
599
|
});
|
|
@@ -655,7 +647,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
655
647
|
init({
|
|
656
648
|
thoughtSpotHost: 'tshost',
|
|
657
649
|
customizations: customisations,
|
|
658
|
-
customCssUrl: 'http://localhost:5000',
|
|
659
650
|
authType: AuthType.TrustedAuthTokenCookieless,
|
|
660
651
|
getAuthToken: () => Promise.reject(),
|
|
661
652
|
});
|
|
@@ -790,7 +781,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
790
781
|
init({
|
|
791
782
|
thoughtSpotHost: 'tshost',
|
|
792
783
|
customizations: customisations,
|
|
793
|
-
customCssUrl: 'http://localhost:5000',
|
|
794
784
|
authType: AuthType.TrustedAuthToken,
|
|
795
785
|
username: 'tsadmin',
|
|
796
786
|
getAuthToken: () => Promise.resolve('test_auth_token3'),
|
|
@@ -819,7 +809,6 @@ describe('Unit test case for ts embed', () => {
|
|
|
819
809
|
init({
|
|
820
810
|
thoughtSpotHost: 'tshost',
|
|
821
811
|
customizations: customisations,
|
|
822
|
-
customCssUrl: 'http://localhost:5000',
|
|
823
812
|
authType: AuthType.TrustedAuthToken,
|
|
824
813
|
username: 'tsadmin',
|
|
825
814
|
getAuthToken: () => Promise.resolve('test_auth_token4'),
|
package/src/embed/ts-embed.ts
CHANGED
|
@@ -59,6 +59,7 @@ import {
|
|
|
59
59
|
} from './base';
|
|
60
60
|
import { AuthFailureType } from '../auth';
|
|
61
61
|
import { getEmbedConfig } from './embedConfig';
|
|
62
|
+
import { ERROR_MESSAGE } from '../errors';
|
|
62
63
|
|
|
63
64
|
const { version } = pkgInfo;
|
|
64
65
|
|
|
@@ -347,7 +348,7 @@ export class TsEmbed {
|
|
|
347
348
|
data: { authToken },
|
|
348
349
|
});
|
|
349
350
|
} catch (e) {
|
|
350
|
-
logger.error(
|
|
351
|
+
logger.error(`${ERROR_MESSAGE.INVALID_TOKEN_ERROR} Error : ${e?.message}`);
|
|
351
352
|
processAuthFailure(e, this.isPreRendered ? this.preRenderWrapper : this.el);
|
|
352
353
|
}
|
|
353
354
|
} else if (autoLogin) {
|
|
@@ -387,7 +388,9 @@ export class TsEmbed {
|
|
|
387
388
|
* @param queryParams
|
|
388
389
|
* @returns queryParams
|
|
389
390
|
*/
|
|
390
|
-
protected getBaseQueryParams(
|
|
391
|
+
protected getBaseQueryParams(
|
|
392
|
+
queryParams: Record<any, any> = {},
|
|
393
|
+
) {
|
|
391
394
|
let hostAppUrl = window?.location?.host || '';
|
|
392
395
|
|
|
393
396
|
// The below check is needed because TS Cloud firewall, blocks
|
|
@@ -438,6 +441,7 @@ export class TsEmbed {
|
|
|
438
441
|
contextMenuTrigger,
|
|
439
442
|
linkOverride,
|
|
440
443
|
insertInToSlide,
|
|
444
|
+
disableRedirectionLinksInNewTab,
|
|
441
445
|
} = this.viewConfig;
|
|
442
446
|
|
|
443
447
|
if (Array.isArray(visibleActions) && Array.isArray(hiddenActions)) {
|
|
@@ -450,13 +454,6 @@ export class TsEmbed {
|
|
|
450
454
|
return queryParams;
|
|
451
455
|
}
|
|
452
456
|
|
|
453
|
-
// TODO remove embedConfig.customCssUrl
|
|
454
|
-
const cssUrlParam = customizations?.style?.customCSSUrl || this.embedConfig.customCssUrl;
|
|
455
|
-
|
|
456
|
-
if (cssUrlParam) {
|
|
457
|
-
queryParams[Param.CustomCSSUrl] = cssUrlParam;
|
|
458
|
-
}
|
|
459
|
-
|
|
460
457
|
if (disabledActions?.length) {
|
|
461
458
|
queryParams[Param.DisableActions] = disabledActions;
|
|
462
459
|
}
|
|
@@ -496,19 +493,27 @@ export class TsEmbed {
|
|
|
496
493
|
if (locale !== undefined) {
|
|
497
494
|
queryParams[Param.Locale] = locale;
|
|
498
495
|
}
|
|
499
|
-
|
|
500
|
-
Object.assign(queryParams, additionalFlags);
|
|
501
|
-
}
|
|
496
|
+
|
|
502
497
|
if (linkOverride) {
|
|
503
498
|
queryParams[Param.LinkOverride] = linkOverride;
|
|
504
499
|
}
|
|
505
500
|
if (insertInToSlide) {
|
|
506
501
|
queryParams[Param.ShowInsertToSlide] = insertInToSlide;
|
|
507
502
|
}
|
|
503
|
+
if (disableRedirectionLinksInNewTab) {
|
|
504
|
+
queryParams[Param.DisableRedirectionLinksInNewTab] = disableRedirectionLinksInNewTab;
|
|
505
|
+
}
|
|
508
506
|
|
|
509
507
|
queryParams[Param.OverrideNativeConsole] = true;
|
|
510
508
|
queryParams[Param.ClientLogLevel] = this.embedConfig.logLevel;
|
|
511
509
|
|
|
510
|
+
if (additionalFlags && additionalFlags.constructor.name === 'Object') {
|
|
511
|
+
Object.assign(queryParams, additionalFlags);
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
// Do not add any flags below this, as we want additional flags to
|
|
515
|
+
// override other flags
|
|
516
|
+
|
|
512
517
|
return queryParams;
|
|
513
518
|
}
|
|
514
519
|
|
|
@@ -557,7 +562,7 @@ export class TsEmbed {
|
|
|
557
562
|
iFrame.mozallowfullscreen = true;
|
|
558
563
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
559
564
|
// @ts-ignore
|
|
560
|
-
iFrame.allow = 'clipboard-read; clipboard-write';
|
|
565
|
+
iFrame.allow = 'clipboard-read; clipboard-write fullscreen';
|
|
561
566
|
|
|
562
567
|
const {
|
|
563
568
|
height: frameHeight,
|
|
@@ -1000,7 +1005,7 @@ export class TsEmbed {
|
|
|
1000
1005
|
*/
|
|
1001
1006
|
public preRender(showPreRenderByDefault = false): TsEmbed {
|
|
1002
1007
|
if (!this.viewConfig.preRenderId) {
|
|
1003
|
-
logger.error(
|
|
1008
|
+
logger.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
|
|
1004
1009
|
return this;
|
|
1005
1010
|
}
|
|
1006
1011
|
this.isPreRendered = true;
|
|
@@ -1015,7 +1020,9 @@ export class TsEmbed {
|
|
|
1015
1020
|
* THOUGHTSPOT URL params starts with a prefix "ts-"
|
|
1016
1021
|
* @version SDK: 1.14.0 | ThoughtSpot: 8.4.0.cl, 8.4.1-sw
|
|
1017
1022
|
*/
|
|
1018
|
-
public getThoughtSpotPostUrlParams(
|
|
1023
|
+
public getThoughtSpotPostUrlParams(
|
|
1024
|
+
additionalParams: { [key: string]: string | number } = {},
|
|
1025
|
+
): string {
|
|
1019
1026
|
const urlHash = window.location.hash;
|
|
1020
1027
|
const queryParams = window.location.search;
|
|
1021
1028
|
const postHashParams = urlHash.split('?');
|
|
@@ -1031,6 +1038,7 @@ export class TsEmbed {
|
|
|
1031
1038
|
};
|
|
1032
1039
|
queryParamsObj.forEach(addKeyValuePairCb);
|
|
1033
1040
|
postURLParamsObj.forEach(addKeyValuePairCb);
|
|
1041
|
+
Object.entries(additionalParams).forEach(([k, v]) => params.append(k, v as string));
|
|
1034
1042
|
|
|
1035
1043
|
let tsParams = params.toString();
|
|
1036
1044
|
tsParams = tsParams ? `?${tsParams}` : '';
|
|
@@ -1107,7 +1115,7 @@ export class TsEmbed {
|
|
|
1107
1115
|
*/
|
|
1108
1116
|
public showPreRender(): void {
|
|
1109
1117
|
if (!this.viewConfig.preRenderId) {
|
|
1110
|
-
logger.error(
|
|
1118
|
+
logger.error(ERROR_MESSAGE.PRERENDER_ID_MISSING);
|
|
1111
1119
|
return;
|
|
1112
1120
|
}
|
|
1113
1121
|
if (!this.isPreRenderAvailable()) {
|
|
@@ -1155,7 +1163,7 @@ export class TsEmbed {
|
|
|
1155
1163
|
*/
|
|
1156
1164
|
public syncPreRenderStyle(): void {
|
|
1157
1165
|
if (!this.isPreRenderAvailable() || !this.el) {
|
|
1158
|
-
logger.error(
|
|
1166
|
+
logger.error(ERROR_MESSAGE.SYNC_STYLE_CALLED_BEFORE_RENDER);
|
|
1159
1167
|
return;
|
|
1160
1168
|
}
|
|
1161
1169
|
const elBoundingClient = this.el.getBoundingClientRect();
|
|
@@ -1214,7 +1222,7 @@ export class TsEmbed {
|
|
|
1214
1222
|
* @version SDK: 1.25.0 / ThoughtSpot 9.10.0
|
|
1215
1223
|
*/
|
|
1216
1224
|
public async getAnswerService(vizId?: string): Promise<AnswerService> {
|
|
1217
|
-
const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId);
|
|
1225
|
+
const { session } = await this.trigger(HostEvent.GetAnswerSession, vizId ? { vizId } : {});
|
|
1218
1226
|
|
|
1219
1227
|
return new AnswerService(session, null, this.embedConfig.thoughtSpotHost);
|
|
1220
1228
|
}
|
|
@@ -1291,7 +1299,6 @@ export class V1Embed extends TsEmbed {
|
|
|
1291
1299
|
|
|
1292
1300
|
/**
|
|
1293
1301
|
* Only for testing purposes.
|
|
1294
|
-
*
|
|
1295
1302
|
* @hidden
|
|
1296
1303
|
*/
|
|
1297
1304
|
// eslint-disable-next-line camelcase
|
package/src/errors.ts
CHANGED
|
@@ -4,4 +4,15 @@ export const ERROR_MESSAGE = {
|
|
|
4
4
|
TRIGGER_TIMED_OUT: 'Trigger timedout in getting response',
|
|
5
5
|
SEARCHEMBED_BETA_WRANING_MESSAGE: 'Search Embed is in Beta in this release.',
|
|
6
6
|
SAGE_EMBED_BETA_WARNING_MESSAGE: 'Sage Embed is in Beta in this release.',
|
|
7
|
+
THIRD_PARTY_COOKIE_BLOCKED_ALERT: 'Third party cookie access is blocked on this browser, please allow third party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.',
|
|
8
|
+
DUPLICATE_TOKEN_ERR: 'Duplicate token, please issue a new token every time getAuthToken callback is called. See https://developers.thoughtspot.com/docs/?pageid=embed-auth#trusted-auth-embed for more details.',
|
|
9
|
+
SDK_NOT_INITIALIZED: 'SDK not initialized',
|
|
10
|
+
SESSION_INFO_FAILED: 'Failed to get session info',
|
|
11
|
+
INVALID_TOKEN_ERROR: 'Received invalid token from getAuthToken callback or authToken endpoint.',
|
|
12
|
+
MIXPANEL_TOKEN_NOT_FOUND: 'Mixpanel token not found in session info',
|
|
13
|
+
PRERENDER_ID_MISSING: 'PreRender id is required for preRender',
|
|
14
|
+
SYNC_STYLE_CALLED_BEFORE_RENDER: 'PreRender should be called before using syncPreRenderStyle',
|
|
15
|
+
CSP_VIOLATION_ALERT: 'CSP violation detected. Please check the console errors for more details.',
|
|
16
|
+
CSP_FRAME_HOST_VIOLATION_LOG_MESSAGE: 'Please setup CSP Correctly for the Application to start working. You can know more about setting CSP Correctly here: https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts. \n In case you are still facing error, please read: https://developers.thoughtspot.com/docs/security-settings#csp-viz-embed-hosts',
|
|
17
|
+
MISSING_REPORTING_OBSERVER: 'ReportingObserver not supported',
|
|
7
18
|
};
|
package/src/index.ts
CHANGED
|
@@ -19,6 +19,7 @@ import {
|
|
|
19
19
|
import { PinboardEmbed, LiveboardViewConfig, LiveboardEmbed } from './embed/liveboard';
|
|
20
20
|
import { SearchEmbed, SearchViewConfig } from './embed/search';
|
|
21
21
|
import { SearchBarEmbed, SearchBarViewConfig } from './embed/search-bar';
|
|
22
|
+
import { BodylessConversation, BodylessConversationViewConfig } from './embed/bodyless-conversation';
|
|
22
23
|
import {
|
|
23
24
|
AuthFailureType, AuthStatus, AuthEvent, AuthEventEmitter,
|
|
24
25
|
} from './auth';
|
|
@@ -55,6 +56,8 @@ import { AnswerService, SessionInterface, UnderlyingDataPoint } from './utils/gr
|
|
|
55
56
|
import { getEmbedConfig } from './embed/embedConfig';
|
|
56
57
|
import { uploadMixpanelEvent, MIXPANEL_EVENT } from './mixpanel-service';
|
|
57
58
|
import { tokenizedFetch } from './tokenizedFetch';
|
|
59
|
+
import { getAnswerFromQuery } from './utils/graphql/nlsService/nls-answer-service';
|
|
60
|
+
import { createLiveboardWithAnswers } from './utils/liveboardService/liveboardService';
|
|
58
61
|
|
|
59
62
|
export {
|
|
60
63
|
init,
|
|
@@ -67,12 +70,16 @@ export {
|
|
|
67
70
|
getEmbedConfig as getInitConfig,
|
|
68
71
|
getSessionInfo,
|
|
69
72
|
tokenizedFetch,
|
|
73
|
+
getAnswerFromQuery,
|
|
74
|
+
createLiveboardWithAnswers,
|
|
70
75
|
SearchEmbed,
|
|
71
76
|
SearchBarEmbed,
|
|
72
77
|
PinboardEmbed,
|
|
73
78
|
LiveboardEmbed,
|
|
74
79
|
SageEmbed,
|
|
75
80
|
AppEmbed,
|
|
81
|
+
BodylessConversation,
|
|
82
|
+
BodylessConversationViewConfig,
|
|
76
83
|
AuthFailureType,
|
|
77
84
|
AuthStatus,
|
|
78
85
|
AuthEvent,
|
package/src/mixpanel-service.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as mixpanel from 'mixpanel-browser';
|
|
2
2
|
import { logger } from './utils/logger';
|
|
3
3
|
import { SessionInfo } from './utils/sessionInfoService';
|
|
4
|
+
import { ERROR_MESSAGE } from './errors';
|
|
4
5
|
|
|
5
6
|
export const EndPoints = {
|
|
6
7
|
CONFIG: '/callosum/v1/system/config',
|
|
@@ -10,6 +11,10 @@ export const EndPoints = {
|
|
|
10
11
|
const mixpanelLib = mixpanel.default || mixpanel;
|
|
11
12
|
let mixpanelInstance: mixpanel.Mixpanel;
|
|
12
13
|
|
|
14
|
+
/**
|
|
15
|
+
* Enum of mixpanel events
|
|
16
|
+
* @hidden
|
|
17
|
+
*/
|
|
13
18
|
export const MIXPANEL_EVENT = {
|
|
14
19
|
VISUAL_SDK_RENDER_START: 'visual-sdk-render-start',
|
|
15
20
|
VISUAL_SDK_CALLED_INIT: 'visual-sdk-called-init',
|
|
@@ -57,7 +62,7 @@ function emptyQueue() {
|
|
|
57
62
|
*/
|
|
58
63
|
export function initMixpanel(sessionInfo: SessionInfo): void {
|
|
59
64
|
if (!sessionInfo || !sessionInfo.mixpanelToken) {
|
|
60
|
-
logger.error(
|
|
65
|
+
logger.error(ERROR_MESSAGE.MIXPANEL_TOKEN_NOT_FOUND);
|
|
61
66
|
return;
|
|
62
67
|
}
|
|
63
68
|
// On a public cluster the user is anonymous, so don't set the identify to
|
package/src/react/index.spec.tsx
CHANGED
|
@@ -56,7 +56,7 @@ describe('React Components', () => {
|
|
|
56
56
|
),
|
|
57
57
|
).toBe(true);
|
|
58
58
|
expect(getIFrameSrc(container)).toBe(
|
|
59
|
-
`http://${thoughtSpotHost}/?hostAppUrl=local-host&viewPortHeight=768&viewPortWidth=1024&sdkVersion=${version}&authType=None&blockNonEmbedFullAppAccess=true&hideAction=[%22${Action.ReportError}%22,%22editACopy%22,%22saveAsView%22,%22updateTSL%22,%22editTSL%22,%22onDeleteAnswer%22]&overrideConsoleLogs=true&clientLogLevel=ERROR&enableDataPanelV2=
|
|
59
|
+
`http://${thoughtSpotHost}/?hostAppUrl=local-host&viewPortHeight=768&viewPortWidth=1024&sdkVersion=${version}&authType=None&blockNonEmbedFullAppAccess=true&hideAction=[%22${Action.ReportError}%22,%22editACopy%22,%22saveAsView%22,%22updateTSL%22,%22editTSL%22,%22onDeleteAnswer%22]&overrideConsoleLogs=true&clientLogLevel=ERROR&enableDataPanelV2=true&dataSourceMode=hide&useLastSelectedSources=false&isSearchEmbed=true&collapseSearchBarInitially=true&enableCustomColumnGroups=false&dataPanelCustomGroupsAccordionInitialState=EXPAND_ALL#/embed/answer`,
|
|
60
60
|
);
|
|
61
61
|
});
|
|
62
62
|
|
package/src/react/index.tsx
CHANGED
|
@@ -10,6 +10,7 @@ import { TsEmbed } from '../embed/ts-embed';
|
|
|
10
10
|
|
|
11
11
|
import { EmbedEvent, ViewConfig } from '../types';
|
|
12
12
|
import { EmbedProps, getViewPropsAndListeners } from './util';
|
|
13
|
+
import { ConversationEmbed as _ConversationEmbed, ConversationViewConfig } from '../embed/conversation';
|
|
13
14
|
|
|
14
15
|
const componentFactory = <T extends typeof TsEmbed, U extends EmbedProps, V extends ViewConfig>(
|
|
15
16
|
EmbedConstructor: T,
|
|
@@ -39,11 +40,11 @@ const componentFactory = <T extends typeof TsEmbed, U extends EmbedProps, V exte
|
|
|
39
40
|
tsEmbed.destroy();
|
|
40
41
|
};
|
|
41
42
|
|
|
42
|
-
const handlePreRenderRendering = (tsEmbed
|
|
43
|
+
const handlePreRenderRendering = (tsEmbed: InstanceType<T>) => {
|
|
43
44
|
tsEmbed.preRender();
|
|
44
45
|
};
|
|
45
46
|
|
|
46
|
-
const handleDefaultRendering = (tsEmbed
|
|
47
|
+
const handleDefaultRendering = (tsEmbed: InstanceType<T>) => {
|
|
47
48
|
// if component is connected to a preRendered component
|
|
48
49
|
if (props.preRenderId) {
|
|
49
50
|
tsEmbed.showPreRender();
|
|
@@ -53,7 +54,7 @@ const componentFactory = <T extends typeof TsEmbed, U extends EmbedProps, V exte
|
|
|
53
54
|
tsEmbed.render();
|
|
54
55
|
};
|
|
55
56
|
|
|
56
|
-
const handleRendering = (tsEmbed
|
|
57
|
+
const handleRendering = (tsEmbed: InstanceType<T>) => {
|
|
57
58
|
if (isPreRenderedComponent) {
|
|
58
59
|
handlePreRenderRendering(tsEmbed);
|
|
59
60
|
return;
|
|
@@ -63,16 +64,16 @@ const componentFactory = <T extends typeof TsEmbed, U extends EmbedProps, V exte
|
|
|
63
64
|
|
|
64
65
|
useDeepCompareEffect(() => {
|
|
65
66
|
const tsEmbed = new EmbedConstructor(
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
},
|
|
67
|
+
ref!.current,
|
|
68
|
+
deepMerge(
|
|
69
|
+
{
|
|
70
|
+
insertAsSibling: viewConfig.insertAsSibling,
|
|
71
|
+
frameParams: {
|
|
72
|
+
class: viewConfig.insertAsSibling ? className || '' : '',
|
|
73
73
|
},
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
},
|
|
75
|
+
viewConfig,
|
|
76
|
+
),
|
|
76
77
|
) as InstanceType<T>;
|
|
77
78
|
Object.keys(listeners).forEach((eventName) => {
|
|
78
79
|
tsEmbed.on(eventName as EmbedEvent, listeners[eventName as EmbedEvent]);
|
|
@@ -98,33 +99,33 @@ const componentFactory = <T extends typeof TsEmbed, U extends EmbedProps, V exte
|
|
|
98
99
|
interface SearchProps extends EmbedProps, SearchViewConfig { }
|
|
99
100
|
|
|
100
101
|
interface PreRenderProps {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
102
|
+
/**
|
|
103
|
+
* PreRender id to be used for PreRendering the embed.
|
|
104
|
+
* Use PreRender to render the embed in the background and then
|
|
105
|
+
* show or hide the rendered embed using showPreRender or hidePreRender respectively.
|
|
106
|
+
* @example
|
|
107
|
+
* ```js
|
|
108
|
+
* const embed = new LiveboardEmbed('#embed', {
|
|
109
|
+
* ... // other liveboard view config
|
|
110
|
+
* preRenderId: "preRenderId-123"
|
|
111
|
+
* });
|
|
112
|
+
* embed.showPreRender();
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* Use PreRendered react component for pre rendering embed components.
|
|
116
|
+
* @example
|
|
117
|
+
* ```tsx
|
|
118
|
+
* function LandingPageComponent() {
|
|
119
|
+
* return <PreRenderedLiveboardEmbed preRenderId="someId" liveboardId="libId" />
|
|
120
|
+
* }
|
|
121
|
+
* ```
|
|
122
|
+
* function MyComponent() {
|
|
123
|
+
* return <LiveboardEmbed preRenderId="someId" liveboardId="libId" />
|
|
124
|
+
* }
|
|
125
|
+
* ```
|
|
126
|
+
* @version SDK: 1.25.0 | Thoughtspot: 9.6.0.cl
|
|
127
|
+
*/
|
|
128
|
+
preRenderId: string;
|
|
128
129
|
}
|
|
129
130
|
|
|
130
131
|
/**
|
|
@@ -329,11 +330,58 @@ export const PreRenderedSageEmbed = componentFactory<
|
|
|
329
330
|
SageViewConfig
|
|
330
331
|
>(_SageEmbed, true);
|
|
331
332
|
|
|
333
|
+
interface ConversationEmbedProps extends EmbedProps, ConversationViewConfig { }
|
|
334
|
+
|
|
335
|
+
/**
|
|
336
|
+
* React component for LLM based conversation BI.
|
|
337
|
+
* @example
|
|
338
|
+
* ```tsx
|
|
339
|
+
* function Sage() {
|
|
340
|
+
* return <ConversationEmbed
|
|
341
|
+
* worksheetId="<worksheet-id-here>"
|
|
342
|
+
* searchOptions={{
|
|
343
|
+
* searchQuery: "<search query to start with>"
|
|
344
|
+
* }}
|
|
345
|
+
* ... other view config props or event listeners.
|
|
346
|
+
* />
|
|
347
|
+
* }
|
|
348
|
+
* ```
|
|
349
|
+
*/
|
|
350
|
+
export const ConversationEmbed = componentFactory<
|
|
351
|
+
typeof _ConversationEmbed, ConversationEmbedProps, ConversationViewConfig>(
|
|
352
|
+
_ConversationEmbed,
|
|
353
|
+
);
|
|
354
|
+
|
|
355
|
+
/**
|
|
356
|
+
* React component for PreRendered Conversation embed.
|
|
357
|
+
*
|
|
358
|
+
* PreRenderedConversationEmbed will preRender the ConversationEmbed and will be hidden by
|
|
359
|
+
* default.
|
|
360
|
+
*
|
|
361
|
+
* SageEmbed with preRenderId passed will call showPreRender on the embed.
|
|
362
|
+
* @example
|
|
363
|
+
* ```tsx
|
|
364
|
+
* function LandingPageComponent() {
|
|
365
|
+
* return <PreRenderedConversationEmbed preRenderId="someId" worksheetId={"id-"} />
|
|
366
|
+
* }
|
|
367
|
+
* ```
|
|
368
|
+
* function MyComponent() {
|
|
369
|
+
* return <ConversationEmbed preRenderId="someId" worksheetId="id" />
|
|
370
|
+
* }
|
|
371
|
+
* ```
|
|
372
|
+
*/
|
|
373
|
+
export const PreRenderedConversationEmbed = componentFactory<
|
|
374
|
+
typeof _ConversationEmbed,
|
|
375
|
+
SageEmbedProps & PreRenderProps,
|
|
376
|
+
ConversationViewConfig
|
|
377
|
+
>(_ConversationEmbed, true);
|
|
378
|
+
|
|
332
379
|
type EmbedComponent = typeof SearchEmbed
|
|
333
380
|
| typeof AppEmbed
|
|
334
381
|
| typeof LiveboardEmbed
|
|
335
382
|
| typeof SearchBarEmbed
|
|
336
|
-
| typeof SageEmbed
|
|
383
|
+
| typeof SageEmbed
|
|
384
|
+
| typeof ConversationEmbed;
|
|
337
385
|
|
|
338
386
|
/**
|
|
339
387
|
* Get a reference to the embed component to trigger events on the component.
|
|
@@ -352,7 +400,7 @@ type EmbedComponent = typeof SearchEmbed
|
|
|
352
400
|
* @returns {React.MutableRefObject<T extends TsEmbed>} ref
|
|
353
401
|
*/
|
|
354
402
|
export function useEmbedRef<T extends EmbedComponent>():
|
|
355
|
-
|
|
403
|
+
React.MutableRefObject<React.ComponentRef<T>> {
|
|
356
404
|
return React.useRef<React.ComponentRef<T>>(null);
|
|
357
405
|
}
|
|
358
406
|
|