@thoughtspot/visual-embed-sdk 1.40.1-alpha.2 → 1.40.1-alpha.3
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 +7 -6
- package/cjs/src/css-variables.d.ts +316 -0
- package/cjs/src/css-variables.d.ts.map +1 -1
- package/cjs/src/embed/app.d.ts +6 -1
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +27 -1
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/app.spec.js +72 -5
- package/cjs/src/embed/app.spec.js.map +1 -1
- package/cjs/src/embed/bodyless-conversation.d.ts +0 -1
- package/cjs/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/cjs/src/embed/bodyless-conversation.js +3 -7
- package/cjs/src/embed/bodyless-conversation.js.map +1 -1
- package/cjs/src/embed/conversation.d.ts +63 -3
- package/cjs/src/embed/conversation.d.ts.map +1 -1
- package/cjs/src/embed/conversation.js +11 -8
- package/cjs/src/embed/conversation.js.map +1 -1
- package/cjs/src/embed/conversation.spec.js +102 -0
- package/cjs/src/embed/conversation.spec.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +11 -3
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +25 -34
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/liveboard.spec.js +204 -29
- package/cjs/src/embed/liveboard.spec.js.map +1 -1
- package/cjs/src/embed/sage.d.ts +0 -1
- package/cjs/src/embed/sage.d.ts.map +1 -1
- package/cjs/src/embed/sage.js +6 -10
- package/cjs/src/embed/sage.js.map +1 -1
- package/cjs/src/embed/search-bar.d.ts +0 -1
- package/cjs/src/embed/search-bar.d.ts.map +1 -1
- package/cjs/src/embed/search-bar.js +7 -11
- package/cjs/src/embed/search-bar.js.map +1 -1
- package/cjs/src/embed/search.d.ts +0 -1
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +8 -7
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +22 -9
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +77 -60
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +175 -3
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/types.d.ts +190 -55
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +157 -52
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/liveboardService/liveboardService.d.ts +21 -6
- package/cjs/src/utils/liveboardService/liveboardService.d.ts.map +1 -1
- package/cjs/src/utils/liveboardService/liveboardService.js +21 -6
- package/cjs/src/utils/liveboardService/liveboardService.js.map +1 -1
- package/cjs/src/utils/processData.d.ts.map +1 -1
- package/cjs/src/utils/processData.js +10 -0
- package/cjs/src/utils/processData.js.map +1 -1
- package/cjs/src/utils/processData.spec.js +11 -0
- package/cjs/src/utils/processData.spec.js.map +1 -1
- package/dist/{index-D1pyb7RG.js → es/index-BwesxE_h.js} +0 -2
- package/dist/es/index.js +17539 -0
- package/dist/es/react/index.js +24039 -0
- package/dist/es/react/src/auth.d.ts +171 -0
- package/dist/es/react/src/auth.d.ts.map +1 -0
- package/dist/es/react/src/auth.spec.d.ts +15 -0
- package/dist/es/react/src/auth.spec.d.ts.map +1 -0
- package/dist/es/react/src/authToken.d.ts +17 -0
- package/dist/es/react/src/authToken.d.ts.map +1 -0
- package/dist/es/react/src/authToken.spec.d.ts +2 -0
- package/dist/es/react/src/authToken.spec.d.ts.map +1 -0
- package/dist/es/react/src/config.d.ts +21 -0
- package/dist/es/react/src/config.d.ts.map +1 -0
- package/dist/es/react/src/config.spec.d.ts +5 -0
- package/dist/es/react/src/config.spec.d.ts.map +1 -0
- package/dist/es/react/src/css-variables.d.ts +384 -0
- package/dist/es/react/src/css-variables.d.ts.map +1 -0
- package/dist/es/react/src/embed/app.d.ts +478 -0
- package/dist/es/react/src/embed/app.d.ts.map +1 -0
- package/dist/es/react/src/embed/app.spec.d.ts +2 -0
- package/dist/es/react/src/embed/app.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/base.d.ts +136 -0
- package/dist/es/react/src/embed/base.d.ts.map +1 -0
- package/dist/es/react/src/embed/base.spec.d.ts +2 -0
- package/dist/es/react/src/embed/base.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/bodyless-conversation.d.ts +26 -0
- package/dist/es/react/src/embed/bodyless-conversation.d.ts.map +1 -0
- package/dist/es/react/src/embed/bodyless-conversation.spec.d.ts +2 -0
- package/dist/es/react/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/conversation.d.ts +43 -0
- package/dist/es/react/src/embed/conversation.d.ts.map +1 -0
- package/dist/es/react/src/embed/conversation.spec.d.ts +2 -0
- package/dist/es/react/src/embed/conversation.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/embed.spec.d.ts +2 -0
- package/dist/es/react/src/embed/embed.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/embedConfig.d.ts +17 -0
- package/dist/es/react/src/embed/embedConfig.d.ts.map +1 -0
- package/dist/es/react/src/embed/events.spec.d.ts +2 -0
- package/dist/es/react/src/embed/events.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/liveboard.d.ts +379 -0
- package/dist/es/react/src/embed/liveboard.d.ts.map +1 -0
- package/dist/es/react/src/embed/liveboard.spec.d.ts +2 -0
- package/dist/es/react/src/embed/liveboard.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/pinboard.spec.d.ts +2 -0
- package/dist/es/react/src/embed/pinboard.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/sage.d.ts +148 -0
- package/dist/es/react/src/embed/sage.d.ts.map +1 -0
- package/dist/es/react/src/embed/sage.spec.d.ts +2 -0
- package/dist/es/react/src/embed/sage.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/search-bar.d.ts +93 -0
- package/dist/es/react/src/embed/search-bar.d.ts.map +1 -0
- package/dist/es/react/src/embed/search.d.ts +282 -0
- package/dist/es/react/src/embed/search.d.ts.map +1 -0
- package/dist/es/react/src/embed/search.spec.d.ts +2 -0
- package/dist/es/react/src/embed/search.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/ts-embed-trigger.spec.d.ts +2 -0
- package/dist/es/react/src/embed/ts-embed-trigger.spec.d.ts.map +1 -0
- package/dist/es/react/src/embed/ts-embed.d.ts +374 -0
- package/dist/es/react/src/embed/ts-embed.d.ts.map +1 -0
- package/dist/es/react/src/embed/ts-embed.spec.d.ts +2 -0
- package/dist/es/react/src/embed/ts-embed.spec.d.ts.map +1 -0
- package/dist/es/react/src/errors.d.ts +19 -0
- package/dist/es/react/src/errors.d.ts.map +1 -0
- package/dist/es/react/src/index.d.ts +29 -0
- package/dist/es/react/src/index.d.ts.map +1 -0
- package/dist/es/react/src/mixpanel-service.d.ts +35 -0
- package/dist/es/react/src/mixpanel-service.d.ts.map +1 -0
- package/dist/es/react/src/mixpanel-service.spec.d.ts +2 -0
- package/dist/es/react/src/mixpanel-service.spec.d.ts.map +1 -0
- package/dist/es/react/src/react/all-types-export.d.ts +3 -0
- package/dist/es/react/src/react/all-types-export.d.ts.map +1 -0
- package/dist/es/react/src/react/all-types-export.spec.d.ts +2 -0
- package/dist/es/react/src/react/all-types-export.spec.d.ts.map +1 -0
- package/dist/es/react/src/react/index.d.ts +254 -0
- package/dist/es/react/src/react/index.d.ts.map +1 -0
- package/dist/es/react/src/react/index.spec.d.ts +3 -0
- package/dist/es/react/src/react/index.spec.d.ts.map +1 -0
- package/dist/es/react/src/react/util.d.ts +19 -0
- package/dist/es/react/src/react/util.d.ts.map +1 -0
- package/dist/es/react/src/test/test-utils.d.ts +61 -0
- package/dist/es/react/src/test/test-utils.d.ts.map +1 -0
- package/dist/es/react/src/tokenizedFetch.d.ts +18 -0
- package/dist/es/react/src/tokenizedFetch.d.ts.map +1 -0
- package/dist/es/react/src/types.d.ts +4363 -0
- package/dist/es/react/src/types.d.ts.map +1 -0
- package/dist/es/react/src/utils/authService/authService.d.ts +45 -0
- package/dist/es/react/src/utils/authService/authService.d.ts.map +1 -0
- package/dist/es/react/src/utils/authService/authService.spec.d.ts +2 -0
- package/dist/es/react/src/utils/authService/authService.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/authService/index.d.ts +3 -0
- package/dist/es/react/src/utils/authService/index.d.ts.map +1 -0
- package/dist/es/react/src/utils/authService/tokenizedAuthService.d.ts +22 -0
- package/dist/es/react/src/utils/authService/tokenizedAuthService.d.ts.map +1 -0
- package/dist/es/react/src/utils/authService/tokenizedAuthService.spec.d.ts +2 -0
- package/dist/es/react/src/utils/authService/tokenizedAuthService.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/global-styles.d.ts +2 -0
- package/dist/es/react/src/utils/global-styles.d.ts.map +1 -0
- package/dist/es/react/src/utils/global-styles.spec.d.ts +2 -0
- package/dist/es/react/src/utils/global-styles.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/answerService/answer-queries.d.ts +10 -0
- package/dist/es/react/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/answerService/answerService.d.ts +180 -0
- package/dist/es/react/src/utils/graphql/answerService/answerService.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/answerService/answerService.spec.d.ts +2 -0
- package/dist/es/react/src/utils/graphql/answerService/answerService.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/graphql-request.d.ts +15 -0
- package/dist/es/react/src/utils/graphql/graphql-request.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/dist/es/react/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
- package/dist/es/react/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
- package/dist/es/react/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
- package/dist/es/react/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/nlsService/nls-answer-service.d.ts +17 -0
- package/dist/es/react/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
- package/dist/es/react/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/preview-service.d.ts +9 -0
- package/dist/es/react/src/utils/graphql/preview-service.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/preview-service.spec.d.ts +2 -0
- package/dist/es/react/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/sourceService.d.ts +8 -0
- package/dist/es/react/src/utils/graphql/sourceService.d.ts.map +1 -0
- package/dist/es/react/src/utils/graphql/sourceService.spec.d.ts +2 -0
- package/dist/es/react/src/utils/graphql/sourceService.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/liveboardService/liveboardService.d.ts +16 -0
- package/dist/es/react/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
- package/dist/es/react/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
- package/dist/es/react/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/logger.d.ts +18 -0
- package/dist/es/react/src/utils/logger.d.ts.map +1 -0
- package/dist/es/react/src/utils/logger.spec.d.ts +25 -0
- package/dist/es/react/src/utils/logger.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/processData.d.ts +22 -0
- package/dist/es/react/src/utils/processData.d.ts.map +1 -0
- package/dist/es/react/src/utils/processData.spec.d.ts +2 -0
- package/dist/es/react/src/utils/processData.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/processTrigger.d.ts +16 -0
- package/dist/es/react/src/utils/processTrigger.d.ts.map +1 -0
- package/dist/es/react/src/utils/processTrigger.spec.d.ts +2 -0
- package/dist/es/react/src/utils/processTrigger.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/reporting.d.ts +16 -0
- package/dist/es/react/src/utils/reporting.d.ts.map +1 -0
- package/dist/es/react/src/utils/reporting.spec.d.ts +2 -0
- package/dist/es/react/src/utils/reporting.spec.d.ts.map +1 -0
- package/dist/es/react/src/utils/sessionInfoService.d.ts +66 -0
- package/dist/es/react/src/utils/sessionInfoService.d.ts.map +1 -0
- package/dist/es/react/src/utils.d.ts +104 -0
- package/dist/es/react/src/utils.d.ts.map +1 -0
- package/dist/es/react/src/utils.spec.d.ts +2 -0
- package/dist/es/react/src/utils.spec.d.ts.map +1 -0
- package/dist/es/src/auth.d.ts +171 -0
- package/dist/es/src/auth.d.ts.map +1 -0
- package/dist/es/src/auth.spec.d.ts +15 -0
- package/dist/es/src/auth.spec.d.ts.map +1 -0
- package/dist/es/src/authToken.d.ts +17 -0
- package/dist/es/src/authToken.d.ts.map +1 -0
- package/dist/es/src/authToken.spec.d.ts +2 -0
- package/dist/es/src/authToken.spec.d.ts.map +1 -0
- package/dist/es/src/config.d.ts +21 -0
- package/dist/es/src/config.d.ts.map +1 -0
- package/dist/es/src/config.spec.d.ts +5 -0
- package/dist/es/src/config.spec.d.ts.map +1 -0
- package/dist/es/src/css-variables.d.ts +384 -0
- package/dist/es/src/css-variables.d.ts.map +1 -0
- package/dist/es/src/embed/app.d.ts +478 -0
- package/dist/es/src/embed/app.d.ts.map +1 -0
- package/dist/es/src/embed/app.spec.d.ts +2 -0
- package/dist/es/src/embed/app.spec.d.ts.map +1 -0
- package/dist/es/src/embed/base.d.ts +136 -0
- package/dist/es/src/embed/base.d.ts.map +1 -0
- package/dist/es/src/embed/base.spec.d.ts +2 -0
- package/dist/es/src/embed/base.spec.d.ts.map +1 -0
- package/dist/es/src/embed/bodyless-conversation.d.ts +26 -0
- package/dist/es/src/embed/bodyless-conversation.d.ts.map +1 -0
- package/dist/es/src/embed/bodyless-conversation.spec.d.ts +2 -0
- package/dist/es/src/embed/bodyless-conversation.spec.d.ts.map +1 -0
- package/dist/es/src/embed/conversation.d.ts +43 -0
- package/dist/es/src/embed/conversation.d.ts.map +1 -0
- package/dist/es/src/embed/conversation.spec.d.ts +2 -0
- package/dist/es/src/embed/conversation.spec.d.ts.map +1 -0
- package/dist/es/src/embed/embed.spec.d.ts +2 -0
- package/dist/es/src/embed/embed.spec.d.ts.map +1 -0
- package/dist/es/src/embed/embedConfig.d.ts +17 -0
- package/dist/es/src/embed/embedConfig.d.ts.map +1 -0
- package/dist/es/src/embed/events.spec.d.ts +2 -0
- package/dist/es/src/embed/events.spec.d.ts.map +1 -0
- package/dist/es/src/embed/liveboard.d.ts +379 -0
- package/dist/es/src/embed/liveboard.d.ts.map +1 -0
- package/dist/es/src/embed/liveboard.spec.d.ts +2 -0
- package/dist/es/src/embed/liveboard.spec.d.ts.map +1 -0
- package/dist/es/src/embed/pinboard.spec.d.ts +2 -0
- package/dist/es/src/embed/pinboard.spec.d.ts.map +1 -0
- package/dist/es/src/embed/sage.d.ts +148 -0
- package/dist/es/src/embed/sage.d.ts.map +1 -0
- package/dist/es/src/embed/sage.spec.d.ts +2 -0
- package/dist/es/src/embed/sage.spec.d.ts.map +1 -0
- package/dist/es/src/embed/search-bar.d.ts +93 -0
- package/dist/es/src/embed/search-bar.d.ts.map +1 -0
- package/dist/es/src/embed/search.d.ts +282 -0
- package/dist/es/src/embed/search.d.ts.map +1 -0
- package/dist/es/src/embed/search.spec.d.ts +2 -0
- package/dist/es/src/embed/search.spec.d.ts.map +1 -0
- package/dist/es/src/embed/ts-embed-trigger.spec.d.ts +2 -0
- package/dist/es/src/embed/ts-embed-trigger.spec.d.ts.map +1 -0
- package/dist/es/src/embed/ts-embed.d.ts +374 -0
- package/dist/es/src/embed/ts-embed.d.ts.map +1 -0
- package/dist/es/src/embed/ts-embed.spec.d.ts +2 -0
- package/dist/es/src/embed/ts-embed.spec.d.ts.map +1 -0
- package/dist/es/src/errors.d.ts +19 -0
- package/dist/es/src/errors.d.ts.map +1 -0
- package/dist/es/src/index.d.ts +29 -0
- package/dist/es/src/index.d.ts.map +1 -0
- package/dist/es/src/mixpanel-service.d.ts +35 -0
- package/dist/es/src/mixpanel-service.d.ts.map +1 -0
- package/dist/es/src/mixpanel-service.spec.d.ts +2 -0
- package/dist/es/src/mixpanel-service.spec.d.ts.map +1 -0
- package/dist/es/src/react/all-types-export.d.ts +3 -0
- package/dist/es/src/react/all-types-export.d.ts.map +1 -0
- package/dist/es/src/react/all-types-export.spec.d.ts +2 -0
- package/dist/es/src/react/all-types-export.spec.d.ts.map +1 -0
- package/dist/es/src/react/index.d.ts +254 -0
- package/dist/es/src/react/index.d.ts.map +1 -0
- package/dist/es/src/react/index.spec.d.ts +3 -0
- package/dist/es/src/react/index.spec.d.ts.map +1 -0
- package/dist/es/src/react/util.d.ts +19 -0
- package/dist/es/src/react/util.d.ts.map +1 -0
- package/dist/es/src/test/test-utils.d.ts +61 -0
- package/dist/es/src/test/test-utils.d.ts.map +1 -0
- package/dist/es/src/tokenizedFetch.d.ts +18 -0
- package/dist/es/src/tokenizedFetch.d.ts.map +1 -0
- package/dist/es/src/types.d.ts +4363 -0
- package/dist/es/src/types.d.ts.map +1 -0
- package/dist/es/src/utils/authService/authService.d.ts +45 -0
- package/dist/es/src/utils/authService/authService.d.ts.map +1 -0
- package/dist/es/src/utils/authService/authService.spec.d.ts +2 -0
- package/dist/es/src/utils/authService/authService.spec.d.ts.map +1 -0
- package/dist/es/src/utils/authService/index.d.ts +3 -0
- package/dist/es/src/utils/authService/index.d.ts.map +1 -0
- package/dist/es/src/utils/authService/tokenizedAuthService.d.ts +22 -0
- package/dist/es/src/utils/authService/tokenizedAuthService.d.ts.map +1 -0
- package/dist/es/src/utils/authService/tokenizedAuthService.spec.d.ts +2 -0
- package/dist/es/src/utils/authService/tokenizedAuthService.spec.d.ts.map +1 -0
- package/dist/es/src/utils/global-styles.d.ts +2 -0
- package/dist/es/src/utils/global-styles.d.ts.map +1 -0
- package/dist/es/src/utils/global-styles.spec.d.ts +2 -0
- package/dist/es/src/utils/global-styles.spec.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/answerService/answer-queries.d.ts +10 -0
- package/dist/es/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/answerService/answerService.d.ts +180 -0
- package/dist/es/src/utils/graphql/answerService/answerService.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/answerService/answerService.spec.d.ts +2 -0
- package/dist/es/src/utils/graphql/answerService/answerService.spec.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/graphql-request.d.ts +15 -0
- package/dist/es/src/utils/graphql/graphql-request.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/dist/es/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/nlsService/conversation-queries.d.ts +3 -0
- package/dist/es/src/utils/graphql/nlsService/conversation-queries.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/nlsService/conversation-service.d.ts +12 -0
- package/dist/es/src/utils/graphql/nlsService/conversation-service.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/nlsService/nls-answer-queries.d.ts +2 -0
- package/dist/es/src/utils/graphql/nlsService/nls-answer-queries.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/nlsService/nls-answer-service.d.ts +17 -0
- package/dist/es/src/utils/graphql/nlsService/nls-answer-service.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts +2 -0
- package/dist/es/src/utils/graphql/nlsService/nls-answer-service.spec.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/preview-service.d.ts +9 -0
- package/dist/es/src/utils/graphql/preview-service.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/preview-service.spec.d.ts +2 -0
- package/dist/es/src/utils/graphql/preview-service.spec.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/sourceService.d.ts +8 -0
- package/dist/es/src/utils/graphql/sourceService.d.ts.map +1 -0
- package/dist/es/src/utils/graphql/sourceService.spec.d.ts +2 -0
- package/dist/es/src/utils/graphql/sourceService.spec.d.ts.map +1 -0
- package/dist/es/src/utils/liveboardService/liveboardService.d.ts +16 -0
- package/dist/es/src/utils/liveboardService/liveboardService.d.ts.map +1 -0
- package/dist/es/src/utils/liveboardService/liveboardService.spec.d.ts +2 -0
- package/dist/es/src/utils/liveboardService/liveboardService.spec.d.ts.map +1 -0
- package/dist/es/src/utils/logger.d.ts +18 -0
- package/dist/es/src/utils/logger.d.ts.map +1 -0
- package/dist/es/src/utils/logger.spec.d.ts +25 -0
- package/dist/es/src/utils/logger.spec.d.ts.map +1 -0
- package/dist/es/src/utils/processData.d.ts +22 -0
- package/dist/es/src/utils/processData.d.ts.map +1 -0
- package/dist/es/src/utils/processData.spec.d.ts +2 -0
- package/dist/es/src/utils/processData.spec.d.ts.map +1 -0
- package/dist/es/src/utils/processTrigger.d.ts +16 -0
- package/dist/es/src/utils/processTrigger.d.ts.map +1 -0
- package/dist/es/src/utils/processTrigger.spec.d.ts +2 -0
- package/dist/es/src/utils/processTrigger.spec.d.ts.map +1 -0
- package/dist/es/src/utils/reporting.d.ts +16 -0
- package/dist/es/src/utils/reporting.d.ts.map +1 -0
- package/dist/es/src/utils/reporting.spec.d.ts +2 -0
- package/dist/es/src/utils/reporting.spec.d.ts.map +1 -0
- package/dist/es/src/utils/sessionInfoService.d.ts +66 -0
- package/dist/es/src/utils/sessionInfoService.d.ts.map +1 -0
- package/dist/es/src/utils.d.ts +104 -0
- package/dist/es/src/utils.d.ts.map +1 -0
- package/dist/es/src/utils.spec.d.ts +2 -0
- package/dist/es/src/utils.spec.d.ts.map +1 -0
- package/dist/{index-CmEQfuE3.js → index-B0uCTBbm.js} +1 -1
- package/dist/src/css-variables.d.ts +316 -0
- package/dist/src/css-variables.d.ts.map +1 -1
- package/dist/src/embed/app.d.ts +6 -1
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/bodyless-conversation.d.ts +0 -1
- package/dist/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/dist/src/embed/conversation.d.ts +63 -3
- package/dist/src/embed/conversation.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +11 -3
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/sage.d.ts +0 -1
- package/dist/src/embed/sage.d.ts.map +1 -1
- package/dist/src/embed/search-bar.d.ts +0 -1
- package/dist/src/embed/search-bar.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +0 -1
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +22 -9
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/types.d.ts +190 -55
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/liveboardService/liveboardService.d.ts +21 -6
- package/dist/src/utils/liveboardService/liveboardService.d.ts.map +1 -1
- package/dist/src/utils/processData.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +333 -193
- package/dist/tsembed-react.js +332 -192
- package/dist/tsembed.es.js +354 -199
- package/dist/tsembed.js +353 -198
- package/dist/visual-embed-sdk-react-full.d.ts +619 -77
- package/dist/visual-embed-sdk-react.d.ts +619 -77
- package/dist/visual-embed-sdk.d.ts +619 -77
- package/lib/package.json +7 -6
- package/lib/src/css-variables.d.ts +316 -0
- package/lib/src/css-variables.d.ts.map +1 -1
- package/lib/src/embed/app.d.ts +6 -1
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +27 -1
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/app.spec.js +72 -5
- package/lib/src/embed/app.spec.js.map +1 -1
- package/lib/src/embed/bodyless-conversation.d.ts +0 -1
- package/lib/src/embed/bodyless-conversation.d.ts.map +1 -1
- package/lib/src/embed/bodyless-conversation.js +3 -7
- package/lib/src/embed/bodyless-conversation.js.map +1 -1
- package/lib/src/embed/conversation.d.ts +63 -3
- package/lib/src/embed/conversation.d.ts.map +1 -1
- package/lib/src/embed/conversation.js +12 -9
- package/lib/src/embed/conversation.js.map +1 -1
- package/lib/src/embed/conversation.spec.js +104 -2
- package/lib/src/embed/conversation.spec.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +11 -3
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +25 -34
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/liveboard.spec.js +204 -29
- package/lib/src/embed/liveboard.spec.js.map +1 -1
- package/lib/src/embed/sage.d.ts +0 -1
- package/lib/src/embed/sage.d.ts.map +1 -1
- package/lib/src/embed/sage.js +6 -10
- package/lib/src/embed/sage.js.map +1 -1
- package/lib/src/embed/search-bar.d.ts +0 -1
- package/lib/src/embed/search-bar.d.ts.map +1 -1
- package/lib/src/embed/search-bar.js +7 -11
- package/lib/src/embed/search-bar.js.map +1 -1
- package/lib/src/embed/search.d.ts +0 -1
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +8 -7
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +22 -9
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +77 -60
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +175 -3
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/types.d.ts +190 -55
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +157 -52
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/liveboardService/liveboardService.d.ts +21 -6
- package/lib/src/utils/liveboardService/liveboardService.d.ts.map +1 -1
- package/lib/src/utils/liveboardService/liveboardService.js +21 -6
- package/lib/src/utils/liveboardService/liveboardService.js.map +1 -1
- package/lib/src/utils/processData.d.ts.map +1 -1
- package/lib/src/utils/processData.js +10 -0
- package/lib/src/utils/processData.js.map +1 -1
- package/lib/src/utils/processData.spec.js +11 -0
- package/lib/src/utils/processData.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +620 -78
- package/package.json +7 -6
- package/src/css-variables.ts +396 -1
- package/src/embed/app.spec.ts +102 -5
- package/src/embed/app.ts +29 -0
- package/src/embed/bodyless-conversation.ts +3 -9
- package/src/embed/conversation.spec.ts +131 -5
- package/src/embed/conversation.ts +87 -23
- package/src/embed/liveboard.spec.ts +263 -32
- package/src/embed/liveboard.ts +26 -39
- package/src/embed/sage.ts +6 -11
- package/src/embed/search-bar.tsx +7 -14
- package/src/embed/search.ts +7 -18
- package/src/embed/ts-embed.spec.ts +346 -114
- package/src/embed/ts-embed.ts +83 -71
- package/src/types.ts +190 -55
- package/src/utils/liveboardService/liveboardService.ts +21 -6
- package/src/utils/processData.spec.ts +12 -0
- package/src/utils/processData.ts +10 -0
- package/dist/index-DeFzsyFF.js +0 -7371
- package/dist/index-Dpf0rd6w.js +0 -7371
- package/dist/index-UuEbsISo.js +0 -7447
- package/dist/index-e3Uw3YFO.js +0 -7371
- package/dist/index-k7pkZMhx.js +0 -7371
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
2
|
import { resetValueFromWindow } from '../utils';
|
|
3
3
|
import { ERROR_MESSAGE } from '../errors';
|
|
4
4
|
import { resetCachedAuthToken } from '../authToken';
|
|
@@ -722,7 +722,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
722
722
|
runtimeFilterParams: null,
|
|
723
723
|
runtimeParameterParams: null,
|
|
724
724
|
hiddenHomeLeftNavItems:
|
|
725
|
-
|
|
725
|
+
[HomeLeftNavItem.Home, HomeLeftNavItem.MonitorSubscription],
|
|
726
726
|
hiddenHomepageModules: [],
|
|
727
727
|
hiddenListColumns: [],
|
|
728
728
|
reorderedHomepageModules: [],
|
|
@@ -1371,7 +1371,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
1371
1371
|
afterEach(() => {
|
|
1372
1372
|
jest.clearAllMocks();
|
|
1373
1373
|
});
|
|
1374
|
-
|
|
1374
|
+
|
|
1375
1375
|
afterAll(() => {
|
|
1376
1376
|
jest.clearAllMocks();
|
|
1377
1377
|
});
|
|
@@ -1395,11 +1395,11 @@ describe('Unit test case for ts embed', () => {
|
|
|
1395
1395
|
jest.spyOn(baseInstance, 'getAuthPromise').mockResolvedValueOnce(true);
|
|
1396
1396
|
|
|
1397
1397
|
let mockGetPreauthInfo = null;
|
|
1398
|
-
|
|
1398
|
+
|
|
1399
1399
|
// Determine if preauth cache should be enabled
|
|
1400
1400
|
const isAppEmbedWithPrimaryNavbar = embedType === 'AppEmbed' && showPrimaryNavbar === true;
|
|
1401
1401
|
const shouldDisableCache = overrideOrgId || disablePreauthCache || isAppEmbedWithPrimaryNavbar;
|
|
1402
|
-
|
|
1402
|
+
|
|
1403
1403
|
if (shouldDisableCache) {
|
|
1404
1404
|
mockGetPreauthInfo = jest.spyOn(sessionInfoService, 'getPreauthInfo')
|
|
1405
1405
|
.mockImplementation(jest.fn());
|
|
@@ -1465,18 +1465,18 @@ describe('Unit test case for ts embed', () => {
|
|
|
1465
1465
|
};
|
|
1466
1466
|
};
|
|
1467
1467
|
|
|
1468
|
-
test('should disable preauth cache for FullAppEmbed with showPrimaryNavbar = true (default)', async () => {
|
|
1468
|
+
test.skip('should disable preauth cache for FullAppEmbed with showPrimaryNavbar = true (default)', async () => {
|
|
1469
1469
|
const { mockGetPreauthInfo } = await setupPreauthTest('AppEmbed', true);
|
|
1470
|
-
|
|
1470
|
+
|
|
1471
1471
|
// Wait for any async operations
|
|
1472
1472
|
await executeAfterWait(() => {
|
|
1473
1473
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(0);
|
|
1474
1474
|
});
|
|
1475
1475
|
});
|
|
1476
1476
|
|
|
1477
|
-
test('should enable preauth cache for FullAppEmbed with showPrimaryNavbar = undefined (no longer defaults to true)', async () => {
|
|
1477
|
+
test.skip('should enable preauth cache for FullAppEmbed with showPrimaryNavbar = undefined (no longer defaults to true)', async () => {
|
|
1478
1478
|
const { mockGetPreauthInfo } = await setupPreauthTest('AppEmbed', undefined);
|
|
1479
|
-
|
|
1479
|
+
|
|
1480
1480
|
await executeAfterWait(() => {
|
|
1481
1481
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(1);
|
|
1482
1482
|
expect(mockProcessTrigger).toHaveBeenCalledWith(
|
|
@@ -1490,7 +1490,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
1490
1490
|
|
|
1491
1491
|
test('should enable preauth cache for FullAppEmbed with showPrimaryNavbar = false', async () => {
|
|
1492
1492
|
const { mockGetPreauthInfo } = await setupPreauthTest('AppEmbed', false);
|
|
1493
|
-
|
|
1493
|
+
|
|
1494
1494
|
await executeAfterWait(() => {
|
|
1495
1495
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(1);
|
|
1496
1496
|
expect(mockProcessTrigger).toHaveBeenCalledWith(
|
|
@@ -1504,7 +1504,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
1504
1504
|
|
|
1505
1505
|
test('should enable preauth cache for SearchEmbed regardless of showPrimaryNavbar', async () => {
|
|
1506
1506
|
const { mockGetPreauthInfo } = await setupPreauthTest('SearchEmbed', true);
|
|
1507
|
-
|
|
1507
|
+
|
|
1508
1508
|
await executeAfterWait(() => {
|
|
1509
1509
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(1);
|
|
1510
1510
|
expect(mockProcessTrigger).toHaveBeenCalledWith(
|
|
@@ -1518,7 +1518,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
1518
1518
|
|
|
1519
1519
|
test('should enable preauth cache for SearchEmbed (verifies fix for embed type regression)', async () => {
|
|
1520
1520
|
const { mockGetPreauthInfo } = await setupPreauthTest('SearchEmbed', false);
|
|
1521
|
-
|
|
1521
|
+
|
|
1522
1522
|
await executeAfterWait(() => {
|
|
1523
1523
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(1);
|
|
1524
1524
|
expect(mockProcessTrigger).toHaveBeenCalledWith(
|
|
@@ -1532,7 +1532,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
1532
1532
|
|
|
1533
1533
|
test('should disable preauth cache for FullAppEmbed with overrideOrgId (combined condition)', async () => {
|
|
1534
1534
|
const { mockGetPreauthInfo } = await setupPreauthTest('AppEmbed', false, 123);
|
|
1535
|
-
|
|
1535
|
+
|
|
1536
1536
|
await executeAfterWait(() => {
|
|
1537
1537
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(0);
|
|
1538
1538
|
});
|
|
@@ -1540,7 +1540,7 @@ describe('Unit test case for ts embed', () => {
|
|
|
1540
1540
|
|
|
1541
1541
|
test('should disable preauth cache for FullAppEmbed with disablePreauthCache = true', async () => {
|
|
1542
1542
|
const { mockGetPreauthInfo } = await setupPreauthTest('AppEmbed', false, undefined, true);
|
|
1543
|
-
|
|
1543
|
+
|
|
1544
1544
|
await executeAfterWait(() => {
|
|
1545
1545
|
expect(mockGetPreauthInfo).toHaveBeenCalledTimes(0);
|
|
1546
1546
|
});
|
|
@@ -2804,132 +2804,132 @@ describe('Unit test case for ts embed', () => {
|
|
|
2804
2804
|
});
|
|
2805
2805
|
|
|
2806
2806
|
describe('AutoLogin behavior in updateAuthToken', () => {
|
|
2807
|
-
|
|
2808
|
-
|
|
2809
|
-
|
|
2810
|
-
beforeEach(() => {
|
|
2811
|
-
jest.clearAllMocks();
|
|
2812
|
-
document.body.innerHTML = getDocumentBody();
|
|
2813
|
-
mockPort.postMessage.mockClear();
|
|
2814
|
-
jest.spyOn(authToken, 'getAuthenticationToken').mockResolvedValue('test-token');
|
|
2815
|
-
|
|
2816
|
-
jest.spyOn(baseInstance, 'handleAuth').mockImplementation(() => Promise.resolve(true));
|
|
2817
|
-
jest.spyOn(baseInstance, 'notifyAuthFailure').mockImplementation(() => {});
|
|
2818
|
-
});
|
|
2807
|
+
const mockPort = { postMessage: jest.fn() };
|
|
2808
|
+
const mockEmbedEventPayload = { type: EmbedEvent.AuthExpire, data: {} };
|
|
2819
2809
|
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
|
|
2823
|
-
|
|
2824
|
-
|
|
2825
|
-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
|
|
2826
|
-
});
|
|
2827
|
-
};
|
|
2810
|
+
beforeEach(() => {
|
|
2811
|
+
jest.clearAllMocks();
|
|
2812
|
+
document.body.innerHTML = getDocumentBody();
|
|
2813
|
+
mockPort.postMessage.mockClear();
|
|
2814
|
+
jest.spyOn(authToken, 'getAuthenticationToken').mockResolvedValue('test-token');
|
|
2828
2815
|
|
|
2829
|
-
|
|
2830
|
-
|
|
2831
|
-
thoughtSpotHost: 'tshost',
|
|
2832
|
-
authType: AuthType.TrustedAuthTokenCookieless,
|
|
2833
|
-
// autoLogin undefined
|
|
2816
|
+
jest.spyOn(baseInstance, 'handleAuth').mockImplementation(() => Promise.resolve(true));
|
|
2817
|
+
jest.spyOn(baseInstance, 'notifyAuthFailure').mockImplementation(() => { });
|
|
2834
2818
|
});
|
|
2835
2819
|
|
|
2836
|
-
|
|
2820
|
+
const renderAndTriggerAuthExpire = async () => {
|
|
2821
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
2822
|
+
await searchEmbed.render();
|
|
2823
|
+
await executeAfterWait(() => {
|
|
2824
|
+
const iframe = getIFrameEl();
|
|
2825
|
+
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
|
|
2826
|
+
});
|
|
2827
|
+
};
|
|
2837
2828
|
|
|
2838
|
-
|
|
2839
|
-
|
|
2840
|
-
|
|
2841
|
-
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
});
|
|
2845
|
-
});
|
|
2846
|
-
});
|
|
2829
|
+
test('Cookieless with autoLogin undefined should default to true', async () => {
|
|
2830
|
+
init({
|
|
2831
|
+
thoughtSpotHost: 'tshost',
|
|
2832
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
2833
|
+
// autoLogin undefined
|
|
2834
|
+
});
|
|
2847
2835
|
|
|
2848
|
-
|
|
2849
|
-
|
|
2850
|
-
|
|
2851
|
-
|
|
2852
|
-
|
|
2836
|
+
await renderAndTriggerAuthExpire();
|
|
2837
|
+
|
|
2838
|
+
await executeAfterWait(() => {
|
|
2839
|
+
expect(authToken.getAuthenticationToken).toHaveBeenCalled();
|
|
2840
|
+
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2841
|
+
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
2842
|
+
type: EmbedEvent.AuthExpire,
|
|
2843
|
+
data: { authToken: 'test-token' },
|
|
2844
|
+
});
|
|
2845
|
+
});
|
|
2853
2846
|
});
|
|
2854
2847
|
|
|
2855
|
-
|
|
2848
|
+
test('Cookieless with autoLogin false should not get auth token', async () => {
|
|
2849
|
+
init({
|
|
2850
|
+
thoughtSpotHost: 'tshost',
|
|
2851
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
2852
|
+
autoLogin: false,
|
|
2853
|
+
});
|
|
2856
2854
|
|
|
2857
|
-
|
|
2858
|
-
expect(authToken.getAuthenticationToken).not.toHaveBeenCalled();
|
|
2859
|
-
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2860
|
-
expect(mockPort.postMessage).not.toHaveBeenCalled();
|
|
2861
|
-
});
|
|
2862
|
-
});
|
|
2855
|
+
await renderAndTriggerAuthExpire();
|
|
2863
2856
|
|
|
2864
|
-
|
|
2865
|
-
|
|
2866
|
-
|
|
2867
|
-
|
|
2868
|
-
|
|
2857
|
+
await executeAfterWait(() => {
|
|
2858
|
+
expect(authToken.getAuthenticationToken).not.toHaveBeenCalled();
|
|
2859
|
+
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2860
|
+
expect(mockPort.postMessage).not.toHaveBeenCalled();
|
|
2861
|
+
});
|
|
2869
2862
|
});
|
|
2870
2863
|
|
|
2871
|
-
|
|
2864
|
+
test('Cookieless with autoLogin true should get auth token', async () => {
|
|
2865
|
+
init({
|
|
2866
|
+
thoughtSpotHost: 'tshost',
|
|
2867
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
2868
|
+
autoLogin: true,
|
|
2869
|
+
});
|
|
2872
2870
|
|
|
2873
|
-
|
|
2874
|
-
expect(authToken.getAuthenticationToken).toHaveBeenCalled();
|
|
2875
|
-
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2876
|
-
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
2877
|
-
type: EmbedEvent.AuthExpire,
|
|
2878
|
-
data: { authToken: 'test-token' },
|
|
2879
|
-
});
|
|
2880
|
-
});
|
|
2881
|
-
});
|
|
2871
|
+
await renderAndTriggerAuthExpire();
|
|
2882
2872
|
|
|
2883
|
-
|
|
2884
|
-
|
|
2885
|
-
|
|
2886
|
-
|
|
2887
|
-
|
|
2873
|
+
await executeAfterWait(() => {
|
|
2874
|
+
expect(authToken.getAuthenticationToken).toHaveBeenCalled();
|
|
2875
|
+
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2876
|
+
expect(mockPort.postMessage).toHaveBeenCalledWith({
|
|
2877
|
+
type: EmbedEvent.AuthExpire,
|
|
2878
|
+
data: { authToken: 'test-token' },
|
|
2879
|
+
});
|
|
2880
|
+
});
|
|
2888
2881
|
});
|
|
2889
2882
|
|
|
2890
|
-
|
|
2883
|
+
test('Other authType with autoLogin undefined should default to false', async () => {
|
|
2884
|
+
init({
|
|
2885
|
+
thoughtSpotHost: 'tshost',
|
|
2886
|
+
authType: AuthType.None,
|
|
2887
|
+
// autoLogin undefined
|
|
2888
|
+
});
|
|
2889
|
+
|
|
2890
|
+
await renderAndTriggerAuthExpire();
|
|
2891
2891
|
|
|
2892
|
-
|
|
2893
|
-
|
|
2894
|
-
|
|
2892
|
+
await executeAfterWait(() => {
|
|
2893
|
+
expect(authToken.getAuthenticationToken).not.toHaveBeenCalled();
|
|
2894
|
+
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2895
|
+
});
|
|
2895
2896
|
});
|
|
2896
|
-
});
|
|
2897
2897
|
|
|
2898
|
-
|
|
2899
|
-
|
|
2900
|
-
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
|
|
2898
|
+
test('Other authType with autoLogin true should call handleAuth', async () => {
|
|
2899
|
+
init({
|
|
2900
|
+
thoughtSpotHost: 'tshost',
|
|
2901
|
+
authType: AuthType.None,
|
|
2902
|
+
autoLogin: true,
|
|
2903
|
+
});
|
|
2904
2904
|
|
|
2905
|
-
|
|
2905
|
+
await renderAndTriggerAuthExpire();
|
|
2906
2906
|
|
|
2907
|
-
|
|
2908
|
-
|
|
2909
|
-
|
|
2907
|
+
await executeAfterWait(() => {
|
|
2908
|
+
expect(authToken.getAuthenticationToken).not.toHaveBeenCalled();
|
|
2909
|
+
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(2);
|
|
2910
|
+
});
|
|
2910
2911
|
});
|
|
2911
|
-
});
|
|
2912
2912
|
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
2913
|
+
test('Other authType with autoLogin false should not call handleAuth', async () => {
|
|
2914
|
+
init({
|
|
2915
|
+
thoughtSpotHost: 'tshost',
|
|
2916
|
+
authType: AuthType.None,
|
|
2917
|
+
autoLogin: false,
|
|
2918
|
+
});
|
|
2919
2919
|
|
|
2920
|
-
|
|
2920
|
+
await renderAndTriggerAuthExpire();
|
|
2921
2921
|
|
|
2922
|
-
|
|
2923
|
-
|
|
2924
|
-
|
|
2922
|
+
await executeAfterWait(() => {
|
|
2923
|
+
expect(authToken.getAuthenticationToken).not.toHaveBeenCalled();
|
|
2924
|
+
expect(baseInstance.handleAuth).toHaveBeenCalledTimes(1);
|
|
2925
|
+
});
|
|
2925
2926
|
});
|
|
2926
|
-
});
|
|
2927
2927
|
|
|
2928
|
-
|
|
2929
|
-
|
|
2930
|
-
|
|
2931
|
-
|
|
2932
|
-
|
|
2928
|
+
afterEach(() => {
|
|
2929
|
+
expect(baseInstance.notifyAuthFailure).toHaveBeenCalledWith(
|
|
2930
|
+
authInstance.AuthFailureType.EXPIRY
|
|
2931
|
+
);
|
|
2932
|
+
});
|
|
2933
2933
|
});
|
|
2934
2934
|
|
|
2935
2935
|
describe('Fullscreen Change Handler', () => {
|
|
@@ -2972,11 +2972,243 @@ describe('Unit test case for ts embed', () => {
|
|
|
2972
2972
|
authType: AuthType.None,
|
|
2973
2973
|
disableFullscreenPresentation: true,
|
|
2974
2974
|
});
|
|
2975
|
-
|
|
2975
|
+
|
|
2976
2976
|
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
2977
2977
|
expect(() => {
|
|
2978
2978
|
searchEmbed['setupFullscreenChangeHandler']();
|
|
2979
2979
|
}).not.toThrow();
|
|
2980
2980
|
});
|
|
2981
2981
|
});
|
|
2982
|
+
|
|
2983
|
+
describe('Embed Container Loading', () => {
|
|
2984
|
+
beforeEach(() => {
|
|
2985
|
+
document.body.innerHTML = getDocumentBody();
|
|
2986
|
+
init({
|
|
2987
|
+
thoughtSpotHost: 'tshost',
|
|
2988
|
+
authType: AuthType.None,
|
|
2989
|
+
});
|
|
2990
|
+
jest.spyOn(sessionInfoService, 'getSessionInfo').mockResolvedValue({
|
|
2991
|
+
releaseVersion: '1.0.0',
|
|
2992
|
+
userGUID: '1234567890',
|
|
2993
|
+
currentOrgId: 1,
|
|
2994
|
+
privileges: [],
|
|
2995
|
+
mixpanelToken: '1234567890',
|
|
2996
|
+
isPublicUser: false,
|
|
2997
|
+
clusterId: 'cluster1',
|
|
2998
|
+
clusterName: 'Test Cluster',
|
|
2999
|
+
});
|
|
3000
|
+
});
|
|
3001
|
+
|
|
3002
|
+
test('should initialize with isEmbedContainerLoaded as false', () => {
|
|
3003
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3004
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(false);
|
|
3005
|
+
});
|
|
3006
|
+
|
|
3007
|
+
test('should have empty embedContainerReadyCallbacks array initially', () => {
|
|
3008
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3009
|
+
expect(searchEmbed['embedContainerReadyCallbacks']).toEqual([]);
|
|
3010
|
+
});
|
|
3011
|
+
|
|
3012
|
+
test('should execute callback immediately if embed container is already loaded', () => {
|
|
3013
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3014
|
+
searchEmbed.isEmbedContainerLoaded = true;
|
|
3015
|
+
|
|
3016
|
+
const callback = jest.fn();
|
|
3017
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback);
|
|
3018
|
+
|
|
3019
|
+
expect(callback).toHaveBeenCalledTimes(1);
|
|
3020
|
+
});
|
|
3021
|
+
|
|
3022
|
+
test('should queue callback if embed container is not loaded', () => {
|
|
3023
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3024
|
+
searchEmbed.isEmbedContainerLoaded = false;
|
|
3025
|
+
|
|
3026
|
+
const callback = jest.fn();
|
|
3027
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback);
|
|
3028
|
+
|
|
3029
|
+
expect(callback).not.toHaveBeenCalled();
|
|
3030
|
+
expect(searchEmbed['embedContainerReadyCallbacks']).toContain(callback);
|
|
3031
|
+
});
|
|
3032
|
+
|
|
3033
|
+
test('should execute all queued callbacks when embed container becomes ready', () => {
|
|
3034
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3035
|
+
searchEmbed.isEmbedContainerLoaded = false;
|
|
3036
|
+
|
|
3037
|
+
const callback1 = jest.fn();
|
|
3038
|
+
const callback2 = jest.fn();
|
|
3039
|
+
const callback3 = jest.fn();
|
|
3040
|
+
|
|
3041
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback1);
|
|
3042
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback2);
|
|
3043
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback3);
|
|
3044
|
+
|
|
3045
|
+
expect(callback1).not.toHaveBeenCalled();
|
|
3046
|
+
expect(callback2).not.toHaveBeenCalled();
|
|
3047
|
+
expect(callback3).not.toHaveBeenCalled();
|
|
3048
|
+
|
|
3049
|
+
// Simulate embed container becoming ready
|
|
3050
|
+
searchEmbed['executeEmbedContainerReadyCallbacks']();
|
|
3051
|
+
|
|
3052
|
+
expect(callback1).toHaveBeenCalledTimes(1);
|
|
3053
|
+
expect(callback2).toHaveBeenCalledTimes(1);
|
|
3054
|
+
expect(callback3).toHaveBeenCalledTimes(1);
|
|
3055
|
+
});
|
|
3056
|
+
|
|
3057
|
+
test('should handle AuthInit event and set embed container as loaded after timeout', async () => {
|
|
3058
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3059
|
+
searchEmbed.render();
|
|
3060
|
+
|
|
3061
|
+
await executeAfterWait(() => {
|
|
3062
|
+
const iframe = getIFrameEl();
|
|
3063
|
+
expect(iframe).toBeTruthy();
|
|
3064
|
+
});
|
|
3065
|
+
|
|
3066
|
+
const iframe = getIFrameEl();
|
|
3067
|
+
const callback = jest.fn();
|
|
3068
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback);
|
|
3069
|
+
|
|
3070
|
+
// Simulate AuthInit event
|
|
3071
|
+
postMessageToParent(iframe.contentWindow, {
|
|
3072
|
+
type: EmbedEvent.AuthInit,
|
|
3073
|
+
});
|
|
3074
|
+
|
|
3075
|
+
expect(callback).not.toHaveBeenCalled();
|
|
3076
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(false);
|
|
3077
|
+
|
|
3078
|
+
// Wait for the 1-second timeout
|
|
3079
|
+
await executeAfterWait(() => {
|
|
3080
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(true);
|
|
3081
|
+
expect(callback).toHaveBeenCalledTimes(1);
|
|
3082
|
+
}, 1100);
|
|
3083
|
+
});
|
|
3084
|
+
|
|
3085
|
+
test('should handle EmbedListenerReady event and set embed container as loaded immediately', async () => {
|
|
3086
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3087
|
+
searchEmbed.render();
|
|
3088
|
+
|
|
3089
|
+
await executeAfterWait(() => {
|
|
3090
|
+
const iframe = getIFrameEl();
|
|
3091
|
+
expect(iframe).toBeTruthy();
|
|
3092
|
+
});
|
|
3093
|
+
|
|
3094
|
+
const iframe = getIFrameEl();
|
|
3095
|
+
const callback = jest.fn();
|
|
3096
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback);
|
|
3097
|
+
|
|
3098
|
+
// Simulate EmbedListenerReady event
|
|
3099
|
+
postMessageToParent(iframe.contentWindow, {
|
|
3100
|
+
type: EmbedEvent.EmbedListenerReady,
|
|
3101
|
+
});
|
|
3102
|
+
|
|
3103
|
+
await executeAfterWait(() => {
|
|
3104
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(true);
|
|
3105
|
+
expect(callback).toHaveBeenCalledTimes(1);
|
|
3106
|
+
});
|
|
3107
|
+
});
|
|
3108
|
+
|
|
3109
|
+
test('should check prerendered object for embed container loaded state', () => {
|
|
3110
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3111
|
+
|
|
3112
|
+
// Mock a prerendered object with loaded state
|
|
3113
|
+
const mockPreRenderObj = {
|
|
3114
|
+
isEmbedContainerLoaded: true,
|
|
3115
|
+
};
|
|
3116
|
+
|
|
3117
|
+
jest.spyOn(searchEmbed as any, 'getPreRenderObj').mockReturnValue(mockPreRenderObj as any);
|
|
3118
|
+
|
|
3119
|
+
const result = searchEmbed['checkEmbedContainerLoaded']();
|
|
3120
|
+
|
|
3121
|
+
expect(result).toBe(true);
|
|
3122
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(true);
|
|
3123
|
+
});
|
|
3124
|
+
|
|
3125
|
+
test('should return getPreRenderObj and log if same object', () => {
|
|
3126
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3127
|
+
const loggerSpy = jest.spyOn(logger, 'info');
|
|
3128
|
+
|
|
3129
|
+
// Mock insertedDomEl to have the embed object
|
|
3130
|
+
(searchEmbed as any).insertedDomEl = {
|
|
3131
|
+
[searchEmbed['embedNodeKey']]: searchEmbed,
|
|
3132
|
+
};
|
|
3133
|
+
|
|
3134
|
+
const result = searchEmbed['getPreRenderObj']();
|
|
3135
|
+
|
|
3136
|
+
expect(result).toBe(searchEmbed);
|
|
3137
|
+
expect(loggerSpy).toHaveBeenCalledWith('embedObj is same as this');
|
|
3138
|
+
});
|
|
3139
|
+
|
|
3140
|
+
test('should handle null/undefined callbacks gracefully', () => {
|
|
3141
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3142
|
+
|
|
3143
|
+
expect(() => {
|
|
3144
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](null);
|
|
3145
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](undefined);
|
|
3146
|
+
}).not.toThrow();
|
|
3147
|
+
});
|
|
3148
|
+
|
|
3149
|
+
test('should handle multiple callback executions correctly', () => {
|
|
3150
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3151
|
+
|
|
3152
|
+
const callback1 = jest.fn();
|
|
3153
|
+
const callback2 = jest.fn();
|
|
3154
|
+
|
|
3155
|
+
// Add callbacks when container is not loaded
|
|
3156
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback1);
|
|
3157
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback2);
|
|
3158
|
+
|
|
3159
|
+
// Execute callbacks
|
|
3160
|
+
searchEmbed['executeEmbedContainerReadyCallbacks']();
|
|
3161
|
+
|
|
3162
|
+
expect(callback1).toHaveBeenCalledTimes(1);
|
|
3163
|
+
expect(callback2).toHaveBeenCalledTimes(1);
|
|
3164
|
+
|
|
3165
|
+
// Add another callback after container is loaded
|
|
3166
|
+
searchEmbed.isEmbedContainerLoaded = true;
|
|
3167
|
+
const callback3 = jest.fn();
|
|
3168
|
+
searchEmbed['executeAfterEmbedContainerLoaded'](callback3);
|
|
3169
|
+
|
|
3170
|
+
expect(callback3).toHaveBeenCalledTimes(1);
|
|
3171
|
+
});
|
|
3172
|
+
|
|
3173
|
+
test('should register embed container event handlers during construction', () => {
|
|
3174
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3175
|
+
|
|
3176
|
+
// Check that the event handlers are registered
|
|
3177
|
+
const eventHandlerMap = searchEmbed['eventHandlerMap'];
|
|
3178
|
+
expect(eventHandlerMap.has(EmbedEvent.AuthInit)).toBe(true);
|
|
3179
|
+
expect(eventHandlerMap.has(EmbedEvent.EmbedListenerReady)).toBe(true);
|
|
3180
|
+
});
|
|
3181
|
+
|
|
3182
|
+
test('should handle handleEmbedContainerLoaded with AuthInit source', () => {
|
|
3183
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3184
|
+
jest.useFakeTimers();
|
|
3185
|
+
|
|
3186
|
+
const handler = searchEmbed['createEmbedContainerHandler'](EmbedEvent.AuthInit);
|
|
3187
|
+
|
|
3188
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(false);
|
|
3189
|
+
|
|
3190
|
+
handler();
|
|
3191
|
+
|
|
3192
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(false);
|
|
3193
|
+
|
|
3194
|
+
// Fast-forward time
|
|
3195
|
+
jest.advanceTimersByTime(1000);
|
|
3196
|
+
|
|
3197
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(true);
|
|
3198
|
+
|
|
3199
|
+
jest.useRealTimers();
|
|
3200
|
+
});
|
|
3201
|
+
|
|
3202
|
+
test('should handle handleEmbedContainerLoaded with EmbedListenerReady source', () => {
|
|
3203
|
+
const searchEmbed = new SearchEmbed(getRootEl(), defaultViewConfig);
|
|
3204
|
+
|
|
3205
|
+
const handler = searchEmbed['createEmbedContainerHandler'](EmbedEvent.EmbedListenerReady);
|
|
3206
|
+
|
|
3207
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(false);
|
|
3208
|
+
|
|
3209
|
+
handler();
|
|
3210
|
+
|
|
3211
|
+
expect(searchEmbed.isEmbedContainerLoaded).toBe(true);
|
|
3212
|
+
});
|
|
3213
|
+
});
|
|
2982
3214
|
});
|