UNPKG

@thoughtspot/visual-embed-sdk

Version:
460 lines 27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const conversation_1 = require("./conversation"); const authInstance = tslib_1.__importStar(require("../auth")); const index_1 = require("../index"); const types_1 = require("../types"); const test_utils_1 = require("../test/test-utils"); const errors_1 = require("../errors"); const thoughtSpotHost = 'tshost'; beforeAll(() => { (0, index_1.init)({ thoughtSpotHost, authType: types_1.AuthType.None, }); jest.spyOn(authInstance, 'postLoginService').mockImplementation(() => Promise.resolve(undefined)); jest.spyOn(window, 'alert'); document.body.innerHTML = (0, test_utils_1.getDocumentBody)(); }); describe('ConversationEmbed', () => { it('should render the conversation embed', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with worksheets disabled', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, disableSourceSelection: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&disableSourceSelection=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with spotter limitations text if flag is set', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, showSpotterLimitations: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&showSpotterLimitations=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with sample questions hidden', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, hideSampleQuestions: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&hideSampleQuestions=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with worksheets hidden', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, hideSourceSelection: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&hideSourceSelection=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should handle error when worksheetId is not provided', async () => { const viewConfig = { worksheetId: '', searchOptions: { searchQuery: 'searchQuery', }, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); conversationEmbed.handleError = jest.fn(); await conversationEmbed.render(); expect(conversationEmbed.handleError).toHaveBeenCalledWith({ errorType: types_1.ErrorDetailsTypes.VALIDATION_ERROR, message: errors_1.ERROR_MESSAGE.SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND, code: types_1.EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND, error: errors_1.ERROR_MESSAGE.SPOTTER_EMBED_WORKSHEED_ID_NOT_FOUND, }); }); it('should render the conversation embed if data panel v2 flag is true', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, dataPanelV2: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&enableDataPanelV2=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with hidden actions of InConversationTraining if set', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, dataPanelV2: true, hiddenActions: [index_1.Action.InConversationTraining], }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&hideAction=[%22${index_1.Action.ReportError}%22,%22${index_1.Action.InConversationTraining}%22]&isSpotterExperienceEnabled=true&enableDataPanelV2=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with disabled actions of InConversationTraining if set', async () => { const disabledReason = 'testing disabled reason'; const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, dataPanelV2: true, disabledActions: [index_1.Action.InConversationTraining], disabledActionReason: disabledReason, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&${types_1.Param.DisableActions}=[%22${index_1.Action.InConversationTraining}%22]&${types_1.Param.DisableActionReason}=${disabledReason}&isSpotterExperienceEnabled=true&enableDataPanelV2=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with runtime filters', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, runtimeFilters: [ { columnName: 'revenue', operator: types_1.RuntimeFilterOp.EQ, values: [1000], }, ], excludeRuntimeFiltersfromURL: false, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&col1=revenue&op1=EQ&val1=1000#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with runtime parameters', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, runtimeParameters: [ { name: 'Date Range', value: '30', }, ], excludeRuntimeParametersfromURL: false, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&param1=Date%20Range&paramVal1=30#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with runtime parameters excluded from URL', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, runtimeParameters: [ { name: 'Date Range', value: '30', }, { name: 'Region', value: 'North America', }, ], excludeRuntimeParametersfromURL: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with both runtime filters and parameters', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, runtimeParameters: [ { name: 'Date Range', value: '30', }, ], runtimeFilters: [ { columnName: 'revenue', operator: types_1.RuntimeFilterOp.EQ, values: [1000], }, ], excludeRuntimeParametersfromURL: false, excludeRuntimeFiltersfromURL: false, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&col1=revenue&op1=EQ&val1=1000&param1=Date%20Range&paramVal1=30#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with all boolean flags set', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, disableSourceSelection: true, hideSourceSelection: true, dataPanelV2: true, showSpotterLimitations: true, hideSampleQuestions: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&disableSourceSelection=true&hideSourceSelection=true&enableDataPanelV2=true&showSpotterLimitations=true&hideSampleQuestions=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with tool response card branding hidden', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, spotterChatConfig: { hideToolResponseCardBranding: true, }, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&hideToolResponseCardBranding=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with custom tool response card branding label', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, spotterChatConfig: { toolResponseCardBrandingLabel: 'MyBrand', }, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&toolResponseCardBrandingLabel=MyBrand#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should ensure deprecated ConversationEmbed class maintains same functionality as SpotterEmbed', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, runtimeParameters: [ { name: 'Date Range', value: '30', }, ], excludeRuntimeParametersfromURL: false, }; // Test with deprecated class const conversationEmbed = new conversation_1.ConversationEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); // Verify it generates the same URL structure as SpotterEmbed (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&param1=Date%20Range&paramVal1=30#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with updated spotter chat prompt', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, updatedSpotterChatPrompt: true, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&updatedSpotterChatPrompt=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render the conversation embed with updated spotter chat prompt disabled', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery', }, updatedSpotterChatPrompt: false, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&isSpotterExperienceEnabled=true&updatedSpotterChatPrompt=false#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); describe('spotter chat hiddenActions', () => { it.each([ ['SpotterChatConnectorResources', index_1.Action.SpotterChatConnectorResources], ['SpotterChatConnectors', index_1.Action.SpotterChatConnectors], ['SpotterChatModeSwitcher', index_1.Action.SpotterChatModeSwitcher], ])('should render with hiddenActions for %s', async (_, action) => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery' }, hiddenActions: [action], }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&hideAction=[%22${index_1.Action.ReportError}%22,%22${action}%22]&isSpotterExperienceEnabled=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render with multiple spotter chat actions hidden together', async () => { const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery' }, hiddenActions: [ index_1.Action.SpotterChatConnectorResources, index_1.Action.SpotterChatConnectors, index_1.Action.SpotterChatModeSwitcher, ], }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&hideAction=[%22${index_1.Action.ReportError}%22,%22${index_1.Action.SpotterChatConnectorResources}%22,%22${index_1.Action.SpotterChatConnectors}%22,%22${index_1.Action.SpotterChatModeSwitcher}%22]&isSpotterExperienceEnabled=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); }); describe('spotter chat disabledActions', () => { it.each([ ['SpotterChatConnectorResources', index_1.Action.SpotterChatConnectorResources], ['SpotterChatConnectors', index_1.Action.SpotterChatConnectors], ['SpotterChatModeSwitcher', index_1.Action.SpotterChatModeSwitcher], ])('should render with disabledActions for %s', async (_, action) => { const disabledReason = 'testing disabled reason'; const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery' }, disabledActions: [action], disabledActionReason: disabledReason, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&${types_1.Param.DisableActions}=[%22${action}%22]&${types_1.Param.DisableActionReason}=${disabledReason}&isSpotterExperienceEnabled=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); it('should render with multiple spotter chat actions disabled together', async () => { const disabledReason = 'not available'; const viewConfig = { worksheetId: 'worksheetId', searchOptions: { searchQuery: 'searchQuery' }, disabledActions: [ index_1.Action.SpotterChatConnectorResources, index_1.Action.SpotterChatConnectors, index_1.Action.SpotterChatModeSwitcher, ], disabledActionReason: disabledReason, }; const conversationEmbed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); await conversationEmbed.render(); (0, test_utils_1.expectUrlMatchesWithParams)((0, test_utils_1.getIFrameSrc)(), `http://${thoughtSpotHost}/v2/?${test_utils_1.defaultParamsWithoutHiddenActions}&${types_1.Param.DisableActions}=[%22${index_1.Action.SpotterChatConnectorResources}%22,%22${index_1.Action.SpotterChatConnectors}%22,%22${index_1.Action.SpotterChatModeSwitcher}%22]&${types_1.Param.DisableActionReason}=${disabledReason}&isSpotterExperienceEnabled=true#/embed/insights/conv-assist?worksheet=worksheetId&query=searchQuery`); }); }); }); describe('SpotterEmbed APP_INIT embedParams', () => { const mockEmbedEventPayload = { type: types_1.EmbedEvent.APP_INIT, data: {} }; async function getAppInitResponse(viewConfig) { var _a; const embed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), viewConfig); embed.render(); const mockPort = { postMessage: jest.fn() }; await (0, test_utils_1.executeAfterWait)(() => { (0, test_utils_1.postMessageToParent)((0, test_utils_1.getIFrameEl)().contentWindow, mockEmbedEventPayload, mockPort); }); await (0, test_utils_1.executeAfterWait)(() => { }); return (_a = mockPort.postMessage.mock.calls[0]) === null || _a === void 0 ? void 0 : _a[0]; } it('should include spotterSidebarConfig in embedParams when spotterSidebarConfig is provided', async () => { const response = await getAppInitResponse({ worksheetId: 'ws1', spotterSidebarConfig: { enablePastConversationsSidebar: true, spotterSidebarTitle: 'My Conversations', spotterSidebarDefaultExpanded: true, }, }); expect(response.data.embedParams.spotterSidebarConfig).toEqual({ enablePastConversationsSidebar: true, spotterSidebarTitle: 'My Conversations', spotterSidebarDefaultExpanded: true, }); }); it('should populate enablePastConversationsSidebar from deprecated standalone flag', async () => { const response = await getAppInitResponse({ worksheetId: 'ws1', enablePastConversationsSidebar: true, }); expect(response.data.embedParams.spotterSidebarConfig).toEqual({ enablePastConversationsSidebar: true, }); }); it('should use spotterSidebarConfig.enablePastConversationsSidebar over deprecated standalone flag', async () => { const response = await getAppInitResponse({ worksheetId: 'ws1', enablePastConversationsSidebar: false, spotterSidebarConfig: { enablePastConversationsSidebar: true, spotterSidebarTitle: 'Chats', }, }); expect(response.data.embedParams.spotterSidebarConfig.enablePastConversationsSidebar).toBe(true); expect(response.data.embedParams.spotterSidebarConfig.spotterSidebarTitle).toBe('Chats'); }); it('should fall back to deprecated standalone flag when spotterSidebarConfig omits enablePastConversationsSidebar', async () => { const response = await getAppInitResponse({ worksheetId: 'ws1', enablePastConversationsSidebar: true, spotterSidebarConfig: { spotterSidebarTitle: 'My Chats', }, }); expect(response.data.embedParams.spotterSidebarConfig.enablePastConversationsSidebar).toBe(true); expect(response.data.embedParams.spotterSidebarConfig.spotterSidebarTitle).toBe('My Chats'); }); it('should not include embedParams when neither spotterSidebarConfig nor standalone flag is set', async () => { const response = await getAppInitResponse({ worksheetId: 'ws1' }); expect(response.data.embedParams).toBeUndefined(); }); it('should call handleError and exclude spotterDocumentationUrl from embedParams when URL is invalid', async () => { var _a, _b, _c; const embed = new conversation_1.SpotterEmbed((0, test_utils_1.getRootEl)(), { worksheetId: 'ws1', spotterSidebarConfig: { spotterDocumentationUrl: 'invalid-url' }, }); embed.handleError = jest.fn(); embed.render(); const mockPort = { postMessage: jest.fn() }; await (0, test_utils_1.executeAfterWait)(() => { (0, test_utils_1.postMessageToParent)((0, test_utils_1.getIFrameEl)().contentWindow, mockEmbedEventPayload, mockPort); }); await (0, test_utils_1.executeAfterWait)(() => { }); expect(embed.handleError).toHaveBeenCalledWith(expect.objectContaining({ errorType: types_1.ErrorDetailsTypes.VALIDATION_ERROR, message: errors_1.ERROR_MESSAGE.INVALID_SPOTTER_DOCUMENTATION_URL, code: types_1.EmbedErrorCodes.INVALID_URL, })); expect((_c = (_b = (_a = mockPort.postMessage.mock.calls[0]) === null || _a === void 0 ? void 0 : _a[0].data.embedParams) === null || _b === void 0 ? void 0 : _b.spotterSidebarConfig) === null || _c === void 0 ? void 0 : _c.spotterDocumentationUrl).toBeUndefined(); }); }); //# sourceMappingURL=conversation.spec.js.map