@projectcor/maia-components 2.35.4-3 → 2.35.6
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/lib/App.js +19 -44
- package/lib/components/atoms/ActionableButton.js +6 -1
- package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +20 -4
- package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +18 -7
- package/lib/components/atoms/MAIAInput/MAIAInput.js +26 -10
- package/lib/components/atoms/MAIAInput/styles.js +34 -27
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.js +2 -7
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.styles.js +14 -10
- package/lib/components/atoms/ReasoningBlock/ReasoningSteps.js +1 -1
- package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.js +37 -57
- package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.js +12 -18
- package/lib/components/index.js +1 -2
- package/lib/components/molecules/ChatAIContent/ChatAIContent.js +3 -7
- package/lib/components/molecules/ChatAIHome/ChatAIHome.js +16 -5
- package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.js +23 -2
- package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.styles.js +33 -5
- package/lib/components/molecules/ChatAIHome/styles.js +11 -2
- package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.js +31 -20
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +9 -10
- package/lib/components/molecules/ChatAIMessages/newStyles.js +26 -29
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +2 -4
- package/lib/components/molecules/ChatAIModal/ChatAIModal.styles.js +2 -2
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +8 -1
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.styles.js +15 -9
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +14 -3
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +2 -2
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +74 -67
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.styles.js +14 -5
- package/lib/components/molecules/ChatAIModal/layout.js +2 -2
- package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.js +12 -2
- package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.styles.js +3 -3
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.js +36 -7
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.styles.js +10 -6
- package/lib/components/molecules/ChatFooter/ChatFooter.js +64 -48
- package/lib/components/molecules/ChatFooter/styles.js +12 -6
- package/lib/components/molecules/MessageFeedback/MessageFeedback.js +15 -5
- package/lib/components/molecules/Sidebar/Sidebar.js +22 -27
- package/lib/components/molecules/Sidebar/Sidebar.layout.styles.js +2 -2
- package/lib/components/molecules/UsageBlockedBanner/UsageBlockedBanner.js +33 -0
- package/lib/components/molecules/UsageBlockedBanner/UsageBlockedBanner.styles.js +47 -0
- package/lib/components/molecules/UsageBlockedBanner/index.js +2 -0
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +37 -12
- package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.js +38 -19
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.js +43 -18
- package/lib/components/organisms/ChatAI/ChatAI.js +6 -1
- package/lib/constants/permissions/index.js +2 -2
- package/lib/constants/permissions/utils.js +1 -4
- package/lib/dev/DevReasoningTimeline.js +17 -11
- package/lib/hooks/useChatManager/useChatManager.js +55 -34
- package/lib/index.js +2 -5
- package/lib/lang/br/index.js +4 -26
- package/lib/lang/en/index.js +4 -26
- package/lib/lang/es/index.js +4 -26
- package/lib/lang/fr/index.js +5 -27
- package/lib/services/maia/Chats/getChatsByUserId.js +1 -1
- package/lib/services/maia/Orchestrator/orchestrator.js +5 -11
- package/lib/services/maia/Usage/getUsage.js +45 -0
- package/lib/services/maia/Usage/index.js +6 -0
- package/lib/services/maia/index.js +4 -2
- package/lib/services/utils/MaiaApiError.js +34 -0
- package/lib/services/utils/fetchCOR.js +106 -57
- package/lib/services/utils/index.js +2 -1
- package/lib/store/faqsStore.types.js +1 -1
- package/lib/store/index.js +2 -1
- package/lib/store/sessions/sessionStreamManager.js +112 -74
- package/lib/store/sessions/sessions.types.js +1 -1
- package/lib/store/useChatsStore.js +3 -3
- package/lib/store/useUsageStore.js +108 -0
- package/lib/styles/cascade.js +3 -29
- package/lib/styles/transitions.js +1 -3
- package/lib/types/Chat.js +1 -1
- package/lib/types/FrequentlyAskedQuestion.js +1 -1
- package/lib/types/global.d.js +1 -1
- package/lib/types/usage.js +9 -0
- package/lib/utils/streamActivityMessages.js +19 -32
- package/package.json +6 -9
- package/CHANGELOG.md +0 -727
- package/lib/components/atoms/ApprovalBox/ApprovalBox.spec.js +0 -107
- package/lib/components/atoms/Checkbox/Checkbox.spec.js +0 -27
- package/lib/components/atoms/Chip/Chip.spec.js +0 -32
- package/lib/components/atoms/ContextMentionChip/ContextMentionChip.spec.js +0 -29
- package/lib/components/atoms/Fade/Fade.spec.js +0 -31
- package/lib/components/atoms/MAIAButton/MAIAButton.spec.js +0 -42
- package/lib/components/atoms/MAIAInput/MAIAInput.spec.js +0 -201
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.spec.js +0 -69
- package/lib/components/atoms/ReasoningBlock/ReasoningSteps.spec.js +0 -59
- package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.spec.js +0 -58
- package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.spec.js +0 -68
- package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.js +0 -52
- package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.spec.js +0 -90
- package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.spec.js +0 -85
- package/lib/components/atoms/Switch/Switch.spec.js +0 -41
- package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.spec.js +0 -104
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.spec.js +0 -291
- package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.spec.js +0 -46
- package/lib/components/molecules/ChatFooter/ChatFooter.spec.js +0 -112
- package/lib/components/molecules/ContextMentionInput/ContextMentionInput.spec.js +0 -84
- package/lib/components/molecules/MessageFeedback/MessageFeedback.spec.js +0 -116
- package/lib/components/molecules/Sidebar/Sidebar.spec.js +0 -203
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.spec.js +0 -335
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.spec.js +0 -237
- package/lib/components/organisms/ChatAI/ChatAI.spec.js +0 -174
- package/lib/components/organisms/ChatAIPage/ChatAIPage.js +0 -486
- package/lib/components/organisms/ChatAIPage/ChatAIPage.spec.js +0 -231
- package/lib/components/organisms/ChatAIPage/ChatAIPage.styles.js +0 -16
- package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.js +0 -253
- package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.spec.js +0 -139
- package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.styles.js +0 -13
- package/lib/components/organisms/ChatAIPage/ChatAIPageHome.js +0 -229
- package/lib/components/organisms/ChatAIPage/ChatAIPageHome.spec.js +0 -142
- package/lib/components/organisms/ChatAIPage/ChatAIPageHome.styles.js +0 -144
- package/lib/components/organisms/ChatAIPage/getDaypart.js +0 -9
- package/lib/components/organisms/ChatAIPage/getDaypart.spec.js +0 -19
- package/lib/components/organisms/ChatAIPage/index.js +0 -3
- package/lib/components/organisms/ChatAIPage/pageHomeMockCards.js +0 -17
- package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.spec.js +0 -59
- package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.spec.js +0 -79
- package/lib/components/organisms/EditQuestionModal/EditQuestionModal.spec.js +0 -86
- package/lib/dev/DevMaiaPage.js +0 -30
- package/lib/hooks/useCaretPosition.spec.js +0 -58
- package/lib/hooks/useDebounce.spec.js +0 -42
- package/lib/hooks/useEvent.spec.js +0 -35
- package/lib/hooks/useIsMaiaPageRoute.js +0 -26
- package/lib/hooks/useIsMaiaPageRoute.spec.js +0 -26
- package/lib/hooks/useMentionAllowedTypes.spec.js +0 -100
- package/lib/hooks/useModal/useModal.spec.js +0 -73
- package/lib/hooks/useResize.spec.js +0 -37
- package/lib/hooks/useSnackBarManager/useSnackBarManager.spec.js +0 -33
- package/lib/hooks/useT.spec.js +0 -20
- package/lib/hooks/useToggle.spec.js +0 -33
- package/lib/services/maia/Access/updateAccess.spec.js +0 -108
- package/lib/services/maia/Actions/getFrequentlyUsedActions.spec.js +0 -69
- package/lib/services/maia/Actions/getSlashCommands.spec.js +0 -74
- package/lib/services/maia/Agents/createAgent.spec.js +0 -55
- package/lib/services/maia/Agents/deleteAgent.spec.js +0 -42
- package/lib/services/maia/Agents/fetchAgentDetail.spec.js +0 -108
- package/lib/services/maia/Agents/getAgentById.spec.js +0 -55
- package/lib/services/maia/Agents/getAgentSuggestions.spec.js +0 -82
- package/lib/services/maia/Agents/setAgentToolGroups.spec.js +0 -45
- package/lib/services/maia/Agents/toggleFavorite.spec.js +0 -47
- package/lib/services/maia/Agents/updateAgent.spec.js +0 -48
- package/lib/services/maia/Chats/deleteChat.spec.js +0 -31
- package/lib/services/maia/Chats/getChatMessages.spec.js +0 -150
- package/lib/services/maia/Chats/getChatsByUserId.spec.js +0 -149
- package/lib/services/maia/Chats/markSessionAsRead.spec.js +0 -30
- package/lib/services/maia/Chats/patchChat.spec.js +0 -41
- package/lib/services/maia/Chats/wasHelpfulChat.spec.js +0 -28
- package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.spec.js +0 -58
- package/lib/services/maia/Knowledge/delete.spec.js +0 -45
- package/lib/services/maia/Knowledge/download.spec.js +0 -78
- package/lib/services/maia/Knowledge/save.spec.js +0 -58
- package/lib/services/maia/RecentClients/getRecentClients.spec.js +0 -52
- package/lib/services/maia/RecentContexts/getRecentContexts.spec.js +0 -83
- package/lib/services/maia/RecentProjects/getRecentProjects.spec.js +0 -82
- package/lib/services/maia/RecentTasks/getRecentTasks.spec.js +0 -63
- package/lib/services/maia/RecentUsers/getRecentUsers.spec.js +0 -82
- package/lib/services/maia/Skills/createSkill.spec.js +0 -59
- package/lib/services/maia/Skills/deleteSkill.spec.js +0 -42
- package/lib/services/maia/Skills/generateSkill.spec.js +0 -48
- package/lib/services/maia/Skills/updateSkill.spec.js +0 -55
- package/lib/services/maia/client.spec.js +0 -56
- package/lib/services/utils/fetchCOR.spec.js +0 -211
- package/lib/services/utils/getCookie.spec.js +0 -20
- package/lib/store/chatsSidebarOptimistic.spec.js +0 -120
- package/lib/store/maiaLastChatPersistence.spec.js +0 -22
- package/lib/store/maiaPanelSessionPersistence.spec.js +0 -62
- package/lib/store/sessions/sessions.types.spec.js +0 -16
- package/lib/store/sessions/useSessionsStore.spec.js +0 -135
- package/lib/store/useChatsStore.spec.js +0 -619
- package/lib/store/useFaqsStore.spec.js +0 -57
- package/lib/test/buttonMock.js +0 -22
- package/lib/test/fetchPolyfill.js +0 -160
- package/lib/test/fileMock.js +0 -2
- package/lib/test/global-context.js +0 -49
- package/lib/test/iconMock.js +0 -19
- package/lib/test/mockFetch.js +0 -49
- package/lib/test/portalRoot.js +0 -13
- package/lib/test/styleMock.js +0 -2
- package/lib/test/test-utils.js +0 -26
- package/lib/test/tooltipMock.js +0 -11
- package/lib/utils/agentDisplayName.spec.js +0 -44
- package/lib/utils/autoApproveStorage.spec.js +0 -25
- package/lib/utils/chatInputFiles.spec.js +0 -39
- package/lib/utils/contextMentionLabel.spec.js +0 -13
- package/lib/utils/contextMentionTriggers.spec.js +0 -36
- package/lib/utils/contextMentionTypeLabel.spec.js +0 -14
- package/lib/utils/corConnectorMentionTypes.spec.js +0 -23
- package/lib/utils/fileDownloadHelper.spec.js +0 -67
- package/lib/utils/formatQuickActionMessage.spec.js +0 -27
- package/lib/utils/formatUnreadCount.spec.js +0 -12
- package/lib/utils/getUnitFileSize.spec.js +0 -18
- package/lib/utils/hitlAnalytics.spec.js +0 -100
- package/lib/utils/hoursPlannerQuickActionType.spec.js +0 -64
- package/lib/utils/maiaPageRoute.js +0 -24
- package/lib/utils/maiaPageRoute.spec.js +0 -23
- package/lib/utils/mapBackendLang.spec.js +0 -19
- package/lib/utils/normalizeAgentConnectors.spec.js +0 -59
- package/lib/utils/orchestratorSubagents.spec.js +0 -32
- package/lib/utils/reasoningMappers.spec.js +0 -103
- package/lib/utils/retryCompletion.spec.js +0 -99
- package/lib/utils/skillContentSize.spec.js +0 -13
- package/lib/utils/slashCommandMarker.spec.js +0 -43
- package/lib/utils/sortManagerHoursHomeFuas.spec.js +0 -51
- package/lib/utils/sseStreamContent.spec.js +0 -31
- package/lib/utils/streamActivityMessages.spec.js +0 -131
- package/lib/utils/validateTrimmedFields.spec.js +0 -26
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { resolveRowConnections } from './ReasoningSteps';
|
|
2
|
-
jest.mock('../MaiaStreamdown/MaiaStreamdown', function () {
|
|
3
|
-
return {
|
|
4
|
-
MaiaStreamdown: function MaiaStreamdown(_ref) {
|
|
5
|
-
var children = _ref.children;
|
|
6
|
-
return children;
|
|
7
|
-
}
|
|
8
|
-
};
|
|
9
|
-
});
|
|
10
|
-
var narration = function narration(i, text) {
|
|
11
|
-
return {
|
|
12
|
-
kind: 'single',
|
|
13
|
-
step: {
|
|
14
|
-
i: i,
|
|
15
|
-
type: 'narration',
|
|
16
|
-
text: text
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
var tool = function tool(i) {
|
|
21
|
-
return {
|
|
22
|
-
kind: 'single',
|
|
23
|
-
step: {
|
|
24
|
-
i: i,
|
|
25
|
-
type: 'tool',
|
|
26
|
-
tool: 'edit_task',
|
|
27
|
-
status: 'ok'
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
describe('resolveRowConnections', function () {
|
|
32
|
-
it('does not hang a rail from the last action onto the final narration', function () {
|
|
33
|
-
var rows = [narration(-1, 'Revisando'), tool(1), narration(2, 'Listo')];
|
|
34
|
-
expect(resolveRowConnections(rows, 0)).toEqual({
|
|
35
|
-
connectAbove: false,
|
|
36
|
-
connectBelow: true
|
|
37
|
-
});
|
|
38
|
-
expect(resolveRowConnections(rows, 1)).toEqual({
|
|
39
|
-
connectAbove: true,
|
|
40
|
-
connectBelow: false
|
|
41
|
-
});
|
|
42
|
-
expect(resolveRowConnections(rows, 2)).toEqual({
|
|
43
|
-
connectAbove: true,
|
|
44
|
-
connectBelow: false
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
it('keeps the rail through an intermediate narration', function () {
|
|
48
|
-
var rows = [narration(-1, 'Revisando'), tool(1), narration(2, 'Sigo'), tool(3)];
|
|
49
|
-
expect(resolveRowConnections(rows, 2)).toEqual({
|
|
50
|
-
connectAbove: true,
|
|
51
|
-
connectBelow: true
|
|
52
|
-
});
|
|
53
|
-
expect(resolveRowConnections(rows, 3)).toEqual({
|
|
54
|
-
connectAbove: true,
|
|
55
|
-
connectBelow: false
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXNvbHZlUm93Q29ubmVjdGlvbnMiLCJqZXN0IiwibW9jayIsIk1haWFTdHJlYW1kb3duIiwiX3JlZiIsImNoaWxkcmVuIiwibmFycmF0aW9uIiwiaSIsInRleHQiLCJraW5kIiwic3RlcCIsInR5cGUiLCJ0b29sIiwic3RhdHVzIiwiZGVzY3JpYmUiLCJpdCIsInJvd3MiLCJleHBlY3QiLCJ0b0VxdWFsIiwiY29ubmVjdEFib3ZlIiwiY29ubmVjdEJlbG93Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvUmVhc29uaW5nQmxvY2svUmVhc29uaW5nU3RlcHMuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlYXNvbmluZ0Rpc3BsYXlSb3cgfSBmcm9tICcuL2dyb3VwUGFyYWxsZWxTdGVwcydcbmltcG9ydCB7IHJlc29sdmVSb3dDb25uZWN0aW9ucyB9IGZyb20gJy4vUmVhc29uaW5nU3RlcHMnXG5cbmplc3QubW9jaygnLi4vTWFpYVN0cmVhbWRvd24vTWFpYVN0cmVhbWRvd24nLCAoKSA9PiAoe1xuICBNYWlhU3RyZWFtZG93bjogKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbj86IHN0cmluZyB9KSA9PiBjaGlsZHJlbixcbn0pKVxuXG5jb25zdCBuYXJyYXRpb24gPSAoaTogbnVtYmVyLCB0ZXh0OiBzdHJpbmcpOiBSZWFzb25pbmdEaXNwbGF5Um93ID0+ICh7XG4gIGtpbmQ6ICdzaW5nbGUnLFxuICBzdGVwOiB7IGksIHR5cGU6ICduYXJyYXRpb24nLCB0ZXh0IH0sXG59KVxuXG5jb25zdCB0b29sID0gKGk6IG51bWJlcik6IFJlYXNvbmluZ0Rpc3BsYXlSb3cgPT4gKHtcbiAga2luZDogJ3NpbmdsZScsXG4gIHN0ZXA6IHsgaSwgdHlwZTogJ3Rvb2wnLCB0b29sOiAnZWRpdF90YXNrJywgc3RhdHVzOiAnb2snIH0sXG59KVxuXG5kZXNjcmliZSgncmVzb2x2ZVJvd0Nvbm5lY3Rpb25zJywgKCkgPT4ge1xuICBpdCgnZG9lcyBub3QgaGFuZyBhIHJhaWwgZnJvbSB0aGUgbGFzdCBhY3Rpb24gb250byB0aGUgZmluYWwgbmFycmF0aW9uJywgKCkgPT4ge1xuICAgIGNvbnN0IHJvd3MgPSBbbmFycmF0aW9uKC0xLCAnUmV2aXNhbmRvJyksIHRvb2woMSksIG5hcnJhdGlvbigyLCAnTGlzdG8nKV1cblxuICAgIGV4cGVjdChyZXNvbHZlUm93Q29ubmVjdGlvbnMocm93cywgMCkpLnRvRXF1YWwoeyBjb25uZWN0QWJvdmU6IGZhbHNlLCBjb25uZWN0QmVsb3c6IHRydWUgfSlcbiAgICBleHBlY3QocmVzb2x2ZVJvd0Nvbm5lY3Rpb25zKHJvd3MsIDEpKS50b0VxdWFsKHsgY29ubmVjdEFib3ZlOiB0cnVlLCBjb25uZWN0QmVsb3c6IGZhbHNlIH0pXG4gICAgZXhwZWN0KHJlc29sdmVSb3dDb25uZWN0aW9ucyhyb3dzLCAyKSkudG9FcXVhbCh7IGNvbm5lY3RBYm92ZTogdHJ1ZSwgY29ubmVjdEJlbG93OiBmYWxzZSB9KVxuICB9KVxuXG4gIGl0KCdrZWVwcyB0aGUgcmFpbCB0aHJvdWdoIGFuIGludGVybWVkaWF0ZSBuYXJyYXRpb24nLCAoKSA9PiB7XG4gICAgY29uc3Qgcm93cyA9IFtuYXJyYXRpb24oLTEsICdSZXZpc2FuZG8nKSwgdG9vbCgxKSwgbmFycmF0aW9uKDIsICdTaWdvJyksIHRvb2woMyldXG5cbiAgICBleHBlY3QocmVzb2x2ZVJvd0Nvbm5lY3Rpb25zKHJvd3MsIDIpKS50b0VxdWFsKHsgY29ubmVjdEFib3ZlOiB0cnVlLCBjb25uZWN0QmVsb3c6IHRydWUgfSlcbiAgICBleHBlY3QocmVzb2x2ZVJvd0Nvbm5lY3Rpb25zKHJvd3MsIDMpKS50b0VxdWFsKHsgY29ubmVjdEFib3ZlOiB0cnVlLCBjb25uZWN0QmVsb3c6IGZhbHNlIH0pXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFDQSxTQUFTQSxxQkFBcUIsUUFBUSxrQkFBa0I7QUFFeERDLElBQUksQ0FBQ0MsSUFB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
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { act, cleanup, renderWithProviders, screen } from '../../../test/test-utils';
|
|
2
|
-
import { reasoningStore } from '../../../hooks/useReasoningTrace/reasoningStore';
|
|
3
|
-
import { ReasoningTimeline } from './ReasoningTimeline';
|
|
4
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
jest.mock('../MaiaStreamdown/MaiaStreamdown', function () {
|
|
6
|
-
return {
|
|
7
|
-
MaiaStreamdown: function MaiaStreamdown(_ref) {
|
|
8
|
-
var children = _ref.children;
|
|
9
|
-
return /*#__PURE__*/_jsx("div", {
|
|
10
|
-
children: children
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
});
|
|
15
|
-
var writing = {
|
|
16
|
-
phase: 'writing',
|
|
17
|
-
message: 'Escribiendo'
|
|
18
|
-
};
|
|
19
|
-
describe('ReasoningTimeline', function () {
|
|
20
|
-
afterEach(function () {
|
|
21
|
-
cleanup();
|
|
22
|
-
act(function () {
|
|
23
|
-
reasoningStore.clear();
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
it('keeps the leading narration out of the timeline before any action', function () {
|
|
27
|
-
reasoningStore.start('m1');
|
|
28
|
-
reasoningStore.captureLeadingFromBody('m1', 'Voy a revisar');
|
|
29
|
-
var _renderWithProviders = renderWithProviders(/*#__PURE__*/_jsx(ReasoningTimeline, {
|
|
30
|
-
messageId: "m1",
|
|
31
|
-
streamActivity: writing,
|
|
32
|
-
streamingText: "Voy a revisar"
|
|
33
|
-
})),
|
|
34
|
-
container = _renderWithProviders.container;
|
|
35
|
-
expect(container).toBeEmptyDOMElement();
|
|
36
|
-
expect(screen.queryByText('Voy a revisar')).not.toBeInTheDocument();
|
|
37
|
-
});
|
|
38
|
-
it('shows action chrome once a tool arrives', function () {
|
|
39
|
-
reasoningStore.start('m1');
|
|
40
|
-
reasoningStore.captureLeadingFromBody('m1', 'Voy a revisar');
|
|
41
|
-
reasoningStore.applyStep('m1', {
|
|
42
|
-
i: 1,
|
|
43
|
-
type: 'tool',
|
|
44
|
-
tool: 'edit_task',
|
|
45
|
-
status: 'running'
|
|
46
|
-
});
|
|
47
|
-
var _renderWithProviders2 = renderWithProviders(/*#__PURE__*/_jsx(ReasoningTimeline, {
|
|
48
|
-
messageId: "m1",
|
|
49
|
-
streamActivity: writing,
|
|
50
|
-
streamingText: ""
|
|
51
|
-
})),
|
|
52
|
-
container = _renderWithProviders2.container;
|
|
53
|
-
expect(screen.getByText('Voy a revisar')).toBeInTheDocument();
|
|
54
|
-
expect(screen.getByText('chat.activity.actions.editTask.past')).toBeInTheDocument();
|
|
55
|
-
expect(container.querySelector('.ReasoningBlock-marker')).toBeInTheDocument();
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhY3QiLCJjbGVhbnVwIiwicmVuZGVyV2l0aFByb3ZpZGVycyIsInNjcmVlbiIsInJlYXNvbmluZ1N0b3JlIiwiUmVhc29uaW5nVGltZWxpbmUiLCJqc3giLCJfanN4IiwiamVzdCIsIm1vY2siLCJNYWlhU3RyZWFtZG93biIsIl9yZWYiLCJjaGlsZHJlbiIsIndyaXRpbmciLCJwaGFzZSIsIm1lc3NhZ2UiLCJkZXNjcmliZSIsImFmdGVyRWFjaCIsImNsZWFyIiwiaXQiLCJzdGFydCIsImNhcHR1cmVMZWFkaW5nRnJvbUJvZHkiLCJfcmVuZGVyV2l0aFByb3ZpZGVycyIsIm1lc3NhZ2VJZCIsInN0cmVhbUFjdGl2aXR5Iiwic3RyZWFtaW5nVGV4dCIsImNvbnRhaW5lciIsImV4cGVjdCIsInRvQmVFbXB0eURPTUVsZW1lbnQiLCJxdWVyeUJ5VGV4dCIsIm5vdCIsInRvQmVJblRoZURvY3VtZW50IiwiYXBwbHlTdGVwIiwiaSIsInR5cGUiLCJ0b29sIiwic3RhdHVzIiwiX3JlbmRlcldpdGhQcm92aWRlcnMyIiwiZ2V0QnlUZXh0IiwicXVlcnlTZWxlY3RvciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL1JlYXNvbmluZ0Jsb2NrL1JlYXNvbmluZ1RpbWVsaW5lLnNwZWMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFjdCwgY2xlYW51cCwgcmVuZGVyV2l0aFByb3ZpZGVycywgc2NyZWVuIH0gZnJvbSAnLi4vLi4vLi4vdGVzdC90ZXN0LXV0aWxzJ1xuaW1wb3J0IHsgcmVhc29uaW5nU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9ob29rcy91c2VSZWFzb25pbmdUcmFjZS9yZWFzb25pbmdTdG9yZSdcbmltcG9ydCB7IFJlYXNvbmluZ1RpbWVsaW5lIH0gZnJvbSAnLi9SZWFzb25pbmdUaW1lbGluZSdcblxuamVzdC5tb2NrKCcuLi9NYWlhU3RyZWFtZG93bi9NYWlhU3RyZWFtZG93bicsICgpID0+ICh7XG4gIE1haWFTdHJlYW1kb3duOiAoeyBjaGlsZHJlbiB9OiB7IGNoaWxkcmVuPzogc3RyaW5nIH0pID0+IDxkaXY+e2NoaWxkcmVufTwvZGl2Pixcbn0pKVxuXG5jb25zdCB3cml0aW5nID0geyBwaGFzZTogJ3dyaXRpbmcnIGFzIGNvbnN0LCBtZXNzYWdlOiAnRXNjcmliaWVuZG8nIH1cblxuZGVzY3JpYmUoJ1JlYXNvbmluZ1RpbWVsaW5lJywgKCkgPT4ge1xuICBhZnRlckVhY2goKCkgPT4ge1xuICAgIGNsZWFudXAoKVxuICAgIGFjdCgoKSA9PiB7XG4gICAgICByZWFzb25pbmdTdG9yZS5jbGVhcigpXG4gICAgfSlcbiAgfSlcblxuICBpdCgna2VlcHMgdGhlIGxlYWRpbmcgbmFycmF0aW9uIG91dCBvZiB0aGUgdGltZWxpbmUgYmVmb3JlIGFueSBhY3Rpb24nLCAoKSA9PiB7XG4gICAgcmVhc29uaW5nU3RvcmUuc3RhcnQoJ20xJylcbiAgICByZWFzb25pbmdTdG9yZS5jYXB0dXJlTGVhZGluZ0Zyb21Cb2R5KCdtMScsICdWb3kgYSByZXZpc2FyJylcblxuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJXaXRoUHJvdmlkZXJzKFxuICAgICAgPFJlYXNvbmluZ1RpbWVsaW5lIG1lc3NhZ2VJZD1cIm0xXCIgc3RyZWFtQWN0aXZpdHk9e3dyaXRpbmd9IHN0cmVhbWluZ1RleHQ9XCJWb3kgYSByZXZpc2FyXCIgLz5cbiAgICApXG5cbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlRW1wdHlET01FbGVtZW50KClcbiAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlUZXh0KCdWb3kgYSByZXZpc2FyJykpLm5vdC50b0JlSW5UaGVEb2N1bWVudCgpXG4gIH0pXG5cbiAgaXQoJ3Nob3dzIGFjdGlvbiBjaHJvbWUgb25jZSBhIHRvb2wgYXJyaXZlcycsICgpID0+IHtcbiAgICByZWFzb25pbmdTdG9yZS5zdGFydCgnbTEnKVxuICAgIHJlYXNvbmluZ1N0b3JlLmNhcHR1cmVMZWFkaW5nRnJvbUJvZHkoJ20xJywgJ1ZveSBhIHJldmlzYXInKVxuICAgIHJlYXNvbmluZ1N0b3JlLmFwcGx5U3RlcCgnbTEnLCB7IGk6IDEsIHR5cGU6ICd0b29sJywgdG9vbDogJ2VkaXRfdGFzaycsIHN0YXR1czogJ3J1bm5pbmcnIH0pXG5cbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyV2l0aFByb3ZpZGVycyhcbiAgICAgIDxSZWFzb25pbmdUaW1lbGluZSBtZXNzYWdlSWQ9XCJtMVwiIHN0cmVhbUFjdGl2aXR5PXt3cml0aW5nfSBzdHJlYW1pbmdUZXh0PVwiXCIgLz5cbiAgICApXG5cbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnVm95IGEgcmV2aXNhcicpKS50b0JlSW5UaGVEb2N1bWVudCgpXG4gICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ2NoYXQuYWN0aXZpdHkuYWN0aW9ucy5lZGl0VGFzay5wYXN0JykpLnRvQmVJblRoZURvY3VtZW50KClcbiAgICBleHBlY3QoY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5SZWFzb25pbmdCbG9jay1tYXJrZXInKSkudG9CZUluVGhlRG9jdW1lbnQoKVxuICB9KVxufSlcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsR0FBRyxFQUFFQyxPQUFPLEVBQUVDLG1CQUFtQixFQUFFQyxNQUFNLFFBQVEsMEJBQTBCO0FBQ3BGLFNBQVNDLGNBQWMsUUFBUSxpREFBaUQ7QUFDaEYsU0FBU0MsaUJBQWlCLFFBQVEscUJBQXFCO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBRXZEQyxJQUFJLENBQUNDLElBQUksQ0FBQyxrQ0FBa0MsRUFBRTtFQUFBLE9BQU87SUFDbkRDLGNBQWMsRUFBRSxTQUFoQkEsY0FBY0EsQ0FBQUMsSUFBQTtNQUFBLElBQUtDLFFBQVEsR0FBQUQsSUFBQSxDQUFSQyxRQUFRO01BQUEsb0JBQThCTCxJQUFBO1FBQUFLLFFBQUEsRUFBTUE7TUFBUSxDQUFNLENBQUM7SUFBQTtFQUNoRixDQUFDO0FBQUEsQ0FBQyxDQUFDO0FBRUgsSUFBTUMsT0FBTyxHQUFHO0VBQUVDLEtBQUssRUFBRSxTQUFrQjtFQUFFQyxPQUFPLEVBQUU7QUFBYyxDQUFDO0FBRXJFQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsWUFBTTtFQUNsQ0MsU0FBUyxDQUFDLFlBQU07SUFDZGhCLE9BQU8sQ0FBQyxDQUFDO0lBQ1RELEdBQUcsQ0FBQyxZQUFNO01BQ1JJLGNBQWMsQ0FBQ2MsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUZDLEVBQUUsQ0FBQyxtRUFBbUUsRUFBRSxZQUFNO0lBQzVFZixjQUFjLENBQUNnQixLQUFLLENBQUMsSUFBSSxDQUFDO0lBQzFCaEIsY0FBYyxDQUFDaUIsc0JBQXNCLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQztJQUU1RCxJQUFBQyxvQkFBQSxHQUFzQnBCLG1CQUFtQixjQUN2Q0ssSUFBQSxDQUFDRixpQkFBaUI7UUFBQ2tCLFNBQVMsRUFBQyxJQUFJO1FBQUNDLGNBQWMsRUFBRVgsT0FBUTtRQUFDWSxhQUFhLEVBQUM7TUFBZSxDQUFFLENBQzVGLENBQUM7TUFGT0MsU0FBUyxHQUFBSixvQkFBQSxDQUFUSSxTQUFTO0lBSWpCQyxNQUFNLENBQUNELFNBQVMsQ0FBQyxDQUFDRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3ZDRCxNQUFNLENBQUN4QixNQUFNLENBQUMwQixXQUFXLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQ0MsR0FBRyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDO0VBQ3JFLENBQUMsQ0FBQztFQUVGWixFQUFFLENBQUMseUNBQXlDLEVBQUUsWUFBTTtJQUNsRGYsY0FBYyxDQUFDZ0IsS0FBSyxDQUFDLElBQUksQ0FBQztJQUMxQmhCLGNBQWMsQ0FBQ2lCLHNCQUFzQixDQUFDLElBQUksRUFBRSxlQUFlLENBQUM7SUFDNURqQixjQUFjLENBQUM0QixTQUFTLENBQUMsSUFBSSxFQUFFO01BQUVDLENBQUMsRUFBRSxDQUFDO01BQUVDLElBQUksRUFBRSxNQUFNO01BQUVDLElBQUksRUFBRSxXQUFXO01BQUVDLE1BQU0sRUFBRTtJQUFVLENBQUMsQ0FBQztJQUU1RixJQUFBQyxxQkFBQSxHQUFzQm5DLG1CQUFtQixjQUN2Q0ssSUFBQSxDQUFDRixpQkFBaUI7UUFBQ2tCLFNBQVMsRUFBQyxJQUFJO1FBQUNDLGNBQWMsRUFBRVgsT0FBUTtRQUFDWSxhQUFhLEVBQUM7TUFBRSxDQUFFLENBQy9FLENBQUM7TUFGT0MsU0FBUyxHQUFBVyxxQkFBQSxDQUFUWCxTQUFTO0lBSWpCQyxNQUFNLENBQUN4QixNQUFNLENBQUNtQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQ1AsaUJBQWlCLENBQUMsQ0FBQztJQUM3REosTUFBTSxDQUFDeEIsTUFBTSxDQUFDbUMsU0FBUyxDQUFDLHFDQUFxQyxDQUFDLENBQUMsQ0FBQ1AsaUJBQWlCLENBQUMsQ0FBQztJQUNuRkosTUFBTSxDQUFDRCxTQUFTLENBQUNhLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUNSLGlCQUFpQixDQUFDLENBQUM7RUFDL0UsQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { reasoningStore } from '../../../hooks/useReasoningTrace/reasoningStore';
|
|
2
|
-
import { LEADING_NARRATION_INDEX } from './reasoningLeading';
|
|
3
|
-
import { resolvePendingNarrationText, shouldHideOrphanLeadingNarration, shouldStreamNarrationInTimeline } from './reasoningLiveNarration';
|
|
4
|
-
jest.mock('../MaiaStreamdown/MaiaStreamdown', function () {
|
|
5
|
-
return {
|
|
6
|
-
MaiaStreamdown: function MaiaStreamdown(_ref) {
|
|
7
|
-
var children = _ref.children;
|
|
8
|
-
return children;
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
});
|
|
12
|
-
var writing = {
|
|
13
|
-
phase: 'writing',
|
|
14
|
-
message: 'Escribiendo'
|
|
15
|
-
};
|
|
16
|
-
var leadingOnly = [{
|
|
17
|
-
i: LEADING_NARRATION_INDEX,
|
|
18
|
-
type: 'narration',
|
|
19
|
-
text: 'Voy a revisar el proyecto'
|
|
20
|
-
}];
|
|
21
|
-
var withTool = [{
|
|
22
|
-
i: LEADING_NARRATION_INDEX,
|
|
23
|
-
type: 'narration',
|
|
24
|
-
text: 'Voy a revisar el proyecto'
|
|
25
|
-
}, {
|
|
26
|
-
i: 1,
|
|
27
|
-
type: 'tool',
|
|
28
|
-
tool: 'edit_task',
|
|
29
|
-
status: 'running'
|
|
30
|
-
}];
|
|
31
|
-
describe('shouldStreamNarrationInTimeline', function () {
|
|
32
|
-
afterEach(function () {
|
|
33
|
-
reasoningStore.clear();
|
|
34
|
-
});
|
|
35
|
-
it('keeps the leading narration in the body before any action', function () {
|
|
36
|
-
expect(shouldStreamNarrationInTimeline(leadingOnly, writing, 'Voy a revisar el proyecto')).toBe(false);
|
|
37
|
-
});
|
|
38
|
-
it('does not treat post-tool tokens as timeline narration', function () {
|
|
39
|
-
expect(shouldStreamNarrationInTimeline(withTool, writing, 'Esta es la respuesta final del turno')).toBe(false);
|
|
40
|
-
});
|
|
41
|
-
it('keeps a committed narration in the timeline while the handoff is pending', function () {
|
|
42
|
-
reasoningStore.start('m1');
|
|
43
|
-
reasoningStore.applyStep('m1', {
|
|
44
|
-
i: 2,
|
|
45
|
-
type: 'narration',
|
|
46
|
-
text: 'Listo, ahora edito'
|
|
47
|
-
});
|
|
48
|
-
expect(shouldStreamNarrationInTimeline([].concat(withTool, [{
|
|
49
|
-
i: 2,
|
|
50
|
-
type: 'narration',
|
|
51
|
-
text: 'Listo, ahora edito'
|
|
52
|
-
}]), writing, 'Listo, ahora edito', {
|
|
53
|
-
messageId: 'm1'
|
|
54
|
-
})).toBe(true);
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
describe('resolvePendingNarrationText', function () {
|
|
58
|
-
it('returns null when the leading narration belongs in the body', function () {
|
|
59
|
-
expect(resolvePendingNarrationText(leadingOnly, writing, 'Voy a revisar el proyecto')).toBeNull();
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
describe('shouldHideOrphanLeadingNarration', function () {
|
|
63
|
-
it('hides the leading step until an action arrives', function () {
|
|
64
|
-
expect(shouldHideOrphanLeadingNarration(leadingOnly)).toBe(true);
|
|
65
|
-
expect(shouldHideOrphanLeadingNarration(withTool)).toBe(false);
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZWFzb25pbmdTdG9yZSIsIkxFQURJTkdfTkFSUkFUSU9OX0lOREVYIiwicmVzb2x2ZVBlbmRpbmdOYXJyYXRpb25UZXh0Iiwic2hvdWxkSGlkZU9ycGhhbkxlYWRpbmdOYXJyYXRpb24iLCJzaG91bGRTdHJlYW1OYXJyYXRpb25JblRpbWVsaW5lIiwiamVzdCIsIm1vY2siLCJNYWlhU3RyZWFtZG93biIsIl9yZWYiLCJjaGlsZHJlbiIsIndyaXRpbmciLCJwaGFzZSIsIm1lc3NhZ2UiLCJsZWFkaW5nT25seSIsImkiLCJ0eXBlIiwidGV4dCIsIndpdGhUb29sIiwidG9vbCIsInN0YXR1cyIsImRlc2NyaWJlIiwiYWZ0ZXJFYWNoIiwiY2xlYXIiLCJpdCIsImV4cGVjdCIsInRvQmUiLCJzdGFydCIsImFwcGx5U3RlcCIsImNvbmNhdCIsIm1lc3NhZ2VJZCIsInRvQmVOdWxsIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvUmVhc29uaW5nQmxvY2svcmVhc29uaW5nTGl2ZU5hcnJhdGlvbi5zcGVjLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlYXNvbmluZ1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlUmVhc29uaW5nVHJhY2UvcmVhc29uaW5nU3RvcmUnXG5pbXBvcnQgdHlwZSB7IFJlYXNvbmluZ1N0ZXAgfSBmcm9tICcuLi8uLi8uLi90eXBlcy9yZWFzb25pbmcnXG5pbXBvcnQgdHlwZSB7IFN0cmVhbUFjdGl2aXR5IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvc3RyZWFtQWN0aXZpdHknXG5pbXBvcnQgeyBMRUFESU5HX05BUlJBVElPTl9JTkRFWCB9IGZyb20gJy4vcmVhc29uaW5nTGVhZGluZydcbmltcG9ydCB7XG4gIHJlc29sdmVQZW5kaW5nTmFycmF0aW9uVGV4dCxcbiAgc2hvdWxkSGlkZU9ycGhhbkxlYWRpbmdOYXJyYXRpb24sXG4gIHNob3VsZFN0cmVhbU5hcnJhdGlvbkluVGltZWxpbmUsXG59IGZyb20gJy4vcmVhc29uaW5nTGl2ZU5hcnJhdGlvbidcblxuamVzdC5tb2NrKCcuLi9NYWlhU3RyZWFtZG93bi9NYWlhU3RyZWFtZG93bicsICgpID0+ICh7XG4gIE1haWFTdHJlYW1kb3duOiAoeyBjaGlsZHJlbiB9OiB7IGNoaWxkcmVuPzogc3RyaW5nIH0pID0+IGNoaWxkcmVuLFxufSkpXG5cbmNvbnN0IHdyaXRpbmc6IFN0cmVhbUFjdGl2aXR5ID0geyBwaGFzZTogJ3dyaXRpbmcnLCBtZXNzYWdlOiAnRXNjcmliaWVuZG8nIH1cblxuY29uc3QgbGVhZGluZ09ubHk6IFJlYXNvbmluZ1N0ZXBbXSA9IFtcbiAgeyBpOiBMRUFESU5HX05BUlJBVElPTl9JTkRFWCwgdHlwZTogJ25hcnJhdGlvbicsIHRleHQ6ICdWb3kgYSByZXZpc2FyIGVsIHByb3llY3RvJyB9LFxuXVxuXG5jb25zdCB3aXRoVG9vbDogUmVhc29uaW5nU3RlcFtdID0gW1xuICB7IGk6IExFQURJTkdfTkFSUkFUSU9OX0lOREVYLCB0eXBlOiAnbmFycmF0aW9uJywgdGV4dDogJ1ZveSBhIHJldmlzYXIgZWwgcHJveWVjdG8nIH0sXG4gIHsgaTogMSwgdHlwZTogJ3Rvb2wnLCB0b29sOiAnZWRpdF90YXNrJywgc3RhdHVzOiAncnVubmluZycgfSxcbl1cblxuZGVzY3JpYmUoJ3Nob3VsZFN0cmVhbU5hcnJhdGlvbkluVGltZWxpbmUnLCAoKSA9PiB7XG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgcmVhc29uaW5nU3RvcmUuY2xlYXIoKVxuICB9KVxuXG4gIGl0KCdrZWVwcyB0aGUgbGVhZGluZyBuYXJyYXRpb24gaW4gdGhlIGJvZHkgYmVmb3JlIGFueSBhY3Rpb24nLCAoKSA9PiB7XG4gICAgZXhwZWN0KHNob3VsZFN0cmVhbU5hcnJhdGlvbkluVGltZWxpbmUobGVhZGluZ09ubHksIHdyaXRpbmcsICdWb3kgYSByZXZpc2FyIGVsIHByb3llY3RvJykpLnRvQmUoZmFsc2UpXG4gIH0pXG5cbiAgaXQoJ2RvZXMgbm90IHRyZWF0IHBvc3QtdG9vbCB0b2tlbnMgYXMgdGltZWxpbmUgbmFycmF0aW9uJywgKCkgPT4ge1xuICAgIGV4cGVjdChzaG91bGRTdHJlYW1OYXJyYXRpb25JblRpbWVsaW5lKHdpdGhUb29sLCB3cml0aW5nLCAnRXN0YSBlcyBsYSByZXNwdWVzdGEgZmluYWwgZGVsIHR1cm5vJykpLnRvQmUoZmFsc2UpXG4gIH0pXG5cbiAgaXQoJ2tlZXBzIGEgY29tbWl0dGVkIG5hcnJhdGlvbiBpbiB0aGUgdGltZWxpbmUgd2hpbGUgdGhlIGhhbmRvZmYgaXMgcGVuZGluZycsICgpID0+IHtcbiAgICByZWFzb25pbmdTdG9yZS5zdGFydCgnbTEnKVxuICAgIHJlYXNvbmluZ1N0b3JlLmFwcGx5U3RlcCgnbTEnLCB7IGk6IDIsIHR5cGU6ICduYXJyYXRpb24nLCB0ZXh0OiAnTGlzdG8sIGFob3JhIGVkaXRvJyB9KVxuXG4gICAgZXhwZWN0KFxuICAgICAgc2hvdWxkU3RyZWFtTmFycmF0aW9uSW5UaW1lbGluZShcbiAgICAgICAgWy4uLndpdGhUb29sLCB7IGk6IDIsIHR5cGU6ICduYXJyYXRpb24nLCB0ZXh0OiAnTGlzdG8sIGFob3JhIGVkaXRvJyB9XSxcbiAgICAgICAgd3JpdGluZyxcbiAgICAgICAgJ0xpc3RvLCBhaG9yYSBlZGl0bycsXG4gICAgICAgIHsgbWVzc2FnZUlkOiAnbTEnIH1cbiAgICAgIClcbiAgICApLnRvQmUodHJ1ZSlcbiAgfSlcbn0pXG5cbmRlc2NyaWJlKCdyZXNvbHZlUGVuZGluZ05hcnJhdGlvblRleHQnLCAoKSA9PiB7XG4gIGl0KCdyZXR1cm5zIG51bGwgd2hlbiB0aGUgbGVhZGluZyBuYXJyYXRpb24gYmVsb25ncyBpbiB0aGUgYm9keScsICgpID0+IHtcbiAgICBleHBlY3QocmVzb2x2ZVBlbmRpbmdOYXJyYXRpb25UZXh0KGxlYWRpbmdPbmx5LCB3cml0aW5nLCAnVm95IGEgcmV2aXNhciBlbCBwcm95ZWN0bycpKS50b0JlTnVsbCgpXG4gIH0pXG59KVxuXG5kZXNjcmliZSgnc2hvdWxkSGlkZU9ycGhhbkxlYWRpbmdOYXJyYXRpb24nLCAoKSA9PiB7XG4gIGl0KCdoaWRlcyB0aGUgbGVhZGluZyBzdGVwIHVudGlsIGFuIGFjdGlvbiBhcnJpdmVzJywgKCkgPT4ge1xuICAgIGV4cGVjdChzaG91bGRIaWRlT3JwaGFuTGVhZGluZ05hcnJhdGlvbihsZWFkaW5nT25seSkpLnRvQmUodHJ1ZSlcbiAgICBleHBlY3Qoc2hvdWxkSGlkZU9ycGhhbkxlYWRpbmdOYXJyYXRpb24od2l0aFRvb2wpKS50b0JlKGZhbHNlKVxuICB9KVxufSlcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsY0FBYyxRQUFRLGlEQUFpRDtBQUdoRixTQUFTQyx1QkFBdUIsUUFBUSxvQkFBb0I7QUFDNUQsU0FDRUMsMkJBQTJCLEVBQzNCQyxnQ0FBZ0MsRUFDaENDLCtCQUErQixRQUMxQiwwQkFBMEI7QUFFakNDLElBQUksQ0FBQ0MsSUFBSSxDQUFDLGtDQUFrQyxFQUFFO0VBQUEsT0FBTztJQUNuREMsY0FBYyxFQUFFLFNBQWhCQSxjQUFjQSxDQUFBQyxJQUFBO01BQUEsSUFBS0MsUUFBUSxHQUFBRCxJQUFBLENBQVJDLFFBQVE7TUFBQSxPQUE4QkEsUUFBUTtJQUFBO0VBQ25FLENBQUM7QUFBQSxDQUFDLENBQUM7QUFFSCxJQUFNQyxPQUF1QixHQUFHO0VBQUVDLEtBQUssRUFBRSxTQUFTO0VBQUVDLE9BQU8sRUFBRTtBQUFjLENBQUM7QUFFNUUsSUFBTUMsV0FBNEIsR0FBRyxDQUNuQztFQUFFQyxDQUFDLEVBQUViLHVCQUF1QjtFQUFFYyxJQUFJLEVBQUUsV0FBVztFQUFFQyxJQUFJLEVBQUU7QUFBNEIsQ0FBQyxDQUNyRjtBQUVELElBQU1DLFFBQXlCLEdBQUcsQ0FDaEM7RUFBRUgsQ0FBQyxFQUFFYix1QkFBdUI7RUFBRWMsSUFBSSxFQUFFLFdBQVc7RUFBRUMsSUFBSSxFQUFFO0FBQTRCLENBQUMsRUFDcEY7RUFBRUYsQ0FBQyxFQUFFLENBQUM7RUFBRUMsSUFBSSxFQUFFLE1BQU07RUFBRUcsSUFBSSxFQUFFLFdBQVc7RUFBRUMsTUFBTSxFQUFFO0FBQVUsQ0FBQyxDQUM3RDtBQUVEQyxRQUFRLENBQUMsaUNBQWlDLEVBQUUsWUFBTTtFQUNoREMsU0FBUyxDQUFDLFlBQU07SUFDZHJCLGNBQWMsQ0FBQ3NCLEtBQUssQ0FBQyxDQUFDO0VBQ3hCLENBQUMsQ0FBQztFQUVGQyxFQUFFLENBQUMsMkRBQTJELEVBQUUsWUFBTTtJQUNwRUMsTUFBTSxDQUFDcEIsK0JBQStCLENBQUNTLFdBQVcsRUFBRUgsT0FBTyxFQUFFLDJCQUEyQixDQUFDLENBQUMsQ0FBQ2UsSUFBSSxDQUFDLEtBQUssQ0FBQztFQUN4RyxDQUFDLENBQUM7RUFFRkYsRUFBRSxDQUFDLHVEQUF1RCxFQUFFLFlBQU07SUFDaEVDLE1BQU0sQ0FBQ3BCLCtCQUErQixDQUFDYSxRQUFRLEVBQUVQLE9BQU8sRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDLENBQUNlLElBQUksQ0FBQyxLQUFLLENBQUM7RUFDaEgsQ0FBQyxDQUFDO0VBRUZGLEVBQUUsQ0FBQywwRUFBMEUsRUFBRSxZQUFNO0lBQ25GdkIsY0FBYyxDQUFDMEIsS0FBSyxDQUFDLElBQUksQ0FBQztJQUMxQjFCLGNBQWMsQ0FBQzJCLFNBQVMsQ0FBQyxJQUFJLEVBQUU7TUFBRWIsQ0FBQyxFQUFFLENBQUM7TUFBRUMsSUFBSSxFQUFFLFdBQVc7TUFBRUMsSUFBSSxFQUFFO0lBQXFCLENBQUMsQ0FBQztJQUV2RlEsTUFBTSxDQUNKcEIsK0JBQStCLElBQUF3QixNQUFBLENBQ3pCWCxRQUFRLEdBQUU7TUFBRUgsQ0FBQyxFQUFFLENBQUM7TUFBRUMsSUFBSSxFQUFFLFdBQVc7TUFBRUMsSUFBSSxFQUFFO0lBQXFCLENBQUMsSUFDckVOLE9BQU8sRUFDUCxvQkFBb0IsRUFDcEI7TUFBRW1CLFNBQVMsRUFBRTtJQUFLLENBQ3BCLENBQ0YsQ0FBQyxDQUFDSixJQUFJLENBQUMsSUFBSSxDQUFDO0VBQ2QsQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUZMLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxZQUFNO0VBQzVDRyxFQUFFLENBQUMsNkRBQTZELEVBQUUsWUFBTTtJQUN0RUMsTUFBTSxDQUFDdEIsMkJBQTJCLENBQUNXLFdBQVcsRUFBRUgsT0FBTyxFQUFFLDJCQUEyQixDQUFDLENBQUMsQ0FBQ29CLFFBQVEsQ0FBQyxDQUFDO0VBQ25HLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGVixRQUFRLENBQUMsa0NBQWtDLEVBQUUsWUFBTTtFQUNqREcsRUFBRSxDQUFDLGdEQUFnRCxFQUFFLFlBQU07SUFDekRDLE1BQU0sQ0FBQ3JCLGdDQUFnQyxDQUFDVSxXQUFXLENBQUMsQ0FBQyxDQUFDWSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ2hFRCxNQUFNLENBQUNyQixnQ0FBZ0MsQ0FBQ2MsUUFBUSxDQUFDLENBQUMsQ0FBQ1EsSUFBSSxDQUFDLEtBQUssQ0FBQztFQUNoRSxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
-
import { useLayoutEffect, useRef, useState } from 'react';
|
|
3
|
-
export var REASONING_COLLAPSE_MS = 760;
|
|
4
|
-
export var REASONING_COLLAPSE_EASE = 'cubic-bezier(0.4, 0, 0.2, 1)';
|
|
5
|
-
var prefersReducedMotion = function prefersReducedMotion() {
|
|
6
|
-
return typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
7
|
-
};
|
|
8
|
-
export var useCollapsibleHeight = function useCollapsibleHeight(isOpen) {
|
|
9
|
-
var innerRef = useRef(null);
|
|
10
|
-
var isFirstRender = useRef(true);
|
|
11
|
-
var _useState = useState(function () {
|
|
12
|
-
return isOpen ? 'auto' : 0;
|
|
13
|
-
}),
|
|
14
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
15
|
-
height = _useState2[0],
|
|
16
|
-
setHeight = _useState2[1];
|
|
17
|
-
useLayoutEffect(function () {
|
|
18
|
-
if (isFirstRender.current) {
|
|
19
|
-
isFirstRender.current = false;
|
|
20
|
-
setHeight(isOpen ? 'auto' : 0);
|
|
21
|
-
return undefined;
|
|
22
|
-
}
|
|
23
|
-
var node = innerRef.current;
|
|
24
|
-
if (!node) return undefined;
|
|
25
|
-
if (prefersReducedMotion()) {
|
|
26
|
-
setHeight(isOpen ? 'auto' : 0);
|
|
27
|
-
return undefined;
|
|
28
|
-
}
|
|
29
|
-
if (isOpen) {
|
|
30
|
-
var measured = node.scrollHeight;
|
|
31
|
-
setHeight(measured);
|
|
32
|
-
var timeoutId = window.setTimeout(function () {
|
|
33
|
-
return setHeight('auto');
|
|
34
|
-
}, REASONING_COLLAPSE_MS);
|
|
35
|
-
return function () {
|
|
36
|
-
return window.clearTimeout(timeoutId);
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
setHeight(node.scrollHeight);
|
|
40
|
-
var rafId = window.requestAnimationFrame(function () {
|
|
41
|
-
return setHeight(0);
|
|
42
|
-
});
|
|
43
|
-
return function () {
|
|
44
|
-
return window.cancelAnimationFrame(rafId);
|
|
45
|
-
};
|
|
46
|
-
}, [isOpen]);
|
|
47
|
-
return {
|
|
48
|
-
innerRef: innerRef,
|
|
49
|
-
height: height
|
|
50
|
-
};
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VMYXlvdXRFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsIlJFQVNPTklOR19DT0xMQVBTRV9NUyIsIlJFQVNPTklOR19DT0xMQVBTRV9FQVNFIiwicHJlZmVyc1JlZHVjZWRNb3Rpb24iLCJ3aW5kb3ciLCJtYXRjaE1lZGlhIiwibWF0Y2hlcyIsInVzZUNvbGxhcHNpYmxlSGVpZ2h0IiwiaXNPcGVuIiwiaW5uZXJSZWYiLCJpc0ZpcnN0UmVuZGVyIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaGVpZ2h0Iiwic2V0SGVpZ2h0IiwiY3VycmVudCIsInVuZGVmaW5lZCIsIm5vZGUiLCJtZWFzdXJlZCIsInNjcm9sbEhlaWdodCIsInRpbWVvdXRJZCIsInNldFRpbWVvdXQiLCJjbGVhclRpbWVvdXQiLCJyYWZJZCIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsImNhbmNlbEFuaW1hdGlvbkZyYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvUmVhc29uaW5nQmxvY2svdXNlQ29sbGFwc2libGVIZWlnaHQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlTGF5b3V0RWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlLCB0eXBlIE11dGFibGVSZWZPYmplY3QgfSBmcm9tICdyZWFjdCdcblxuZXhwb3J0IGNvbnN0IFJFQVNPTklOR19DT0xMQVBTRV9NUyA9IDc2MFxuZXhwb3J0IGNvbnN0IFJFQVNPTklOR19DT0xMQVBTRV9FQVNFID0gJ2N1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSknXG5cbmNvbnN0IHByZWZlcnNSZWR1Y2VkTW90aW9uID0gKCk6IGJvb2xlYW4gPT5cbiAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm1hdGNoTWVkaWEoJyhwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpJykubWF0Y2hlc1xuXG5leHBvcnQgY29uc3QgdXNlQ29sbGFwc2libGVIZWlnaHQgPSAoXG4gIGlzT3BlbjogYm9vbGVhblxuKTogeyBpbm5lclJlZjogTXV0YWJsZVJlZk9iamVjdDxIVE1MRGl2RWxlbWVudCB8IG51bGw+OyBoZWlnaHQ6IG51bWJlciB8ICdhdXRvJyB9ID0+IHtcbiAgY29uc3QgaW5uZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IGlzRmlyc3RSZW5kZXIgPSB1c2VSZWYodHJ1ZSlcbiAgY29uc3QgW2hlaWdodCwgc2V0SGVpZ2h0XSA9IHVzZVN0YXRlPG51bWJlciB8ICdhdXRvJz4oKCkgPT4gKGlzT3BlbiA/ICdhdXRvJyA6IDApKVxuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzRmlyc3RSZW5kZXIuY3VycmVudCkge1xuICAgICAgaXNGaXJzdFJlbmRlci5jdXJyZW50ID0gZmFsc2VcbiAgICAgIHNldEhlaWdodChpc09wZW4gPyAnYXV0bycgOiAwKVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuICAgIH1cblxuICAgIGNvbnN0IG5vZGUgPSBpbm5lclJlZi5jdXJyZW50XG4gICAgaWYgKCFub2RlKSByZXR1cm4gdW5kZWZpbmVkXG5cbiAgICBpZiAocHJlZmVyc1JlZHVjZWRNb3Rpb24oKSkge1xuICAgICAgc2V0SGVpZ2h0KGlzT3BlbiA/ICdhdXRvJyA6IDApXG4gICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgaWYgKGlzT3Blbikge1xuICAgICAgY29uc3QgbWVhc3VyZWQgPSBub2RlLnNjcm9sbEhlaWdodFxuICAgICAgc2V0SGVpZ2h0KG1lYXN1cmVkKVxuICAgICAgY29uc3QgdGltZW91dElkID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4gc2V0SGVpZ2h0KCdhdXRvJyksIFJFQVNPTklOR19DT0xMQVBTRV9NUylcbiAgICAgIHJldHVybiAoKSA9PiB3aW5kb3cuY2xlYXJUaW1lb3V0KHRpbWVvdXRJZClcbiAgICB9XG5cbiAgICBzZXRIZWlnaHQobm9kZS5zY3JvbGxIZWlnaHQpXG4gICAgY29uc3QgcmFmSWQgPSB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHNldEhlaWdodCgwKSlcbiAgICByZXR1cm4gKCkgPT4gd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKHJhZklkKVxuICB9LCBbaXNPcGVuXSlcblxuICByZXR1cm4geyBpbm5lclJlZiwgaGVpZ2h0IH1cbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVNBLGVBQWUsRUFBRUMsTUFBTSxFQUFFQyxRQUFRLFFBQStCLE9BQU87QUFFaEYsT0FBTyxJQUFNQyxxQkFBcUIsR0FBRyxHQUFHO0FBQ3hDLE9BQU8sSUFBTUMsdUJBQXVCLEdBQUcsOEJBQThCO0FBRXJFLElBQU1DLG9CQUFvQixHQUFHLFNBQXZCQSxvQkFBb0JBLENBQUE7RUFBQSxPQUN4QixPQUFPQyxNQUFNLEtBQUssV0FBVyxJQUFJQSxNQUFNLENBQUNDLFVBQVUsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDQyxPQUFPO0FBQUE7QUFFaEcsT0FBTyxJQUFNQyxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQW9CQSxDQUMvQkMsTUFBZSxFQUNvRTtFQUNuRixJQUFNQyxRQUFRLEdBQUdWLE1BQU0sQ0FBaUIsSUFBSSxDQUFDO0VBQzdDLElBQU1XLGFBQWEsR0FBR1gsTUFBTSxDQUFDLElBQUksQ0FBQztFQUNsQyxJQUFBWSxTQUFBLEdBQTRCWCxRQUFRLENBQWtCO01BQUEsT0FBT1EsTUFBTSxHQUFHLE1BQU0sR0FBRyxDQUFDO0lBQUEsQ0FBQyxDQUFDO0lBQUFJLFVBQUEsR0FBQUMsY0FBQSxDQUFBRixTQUFBO0lBQTNFRyxNQUFNLEdBQUFGLFVBQUE7SUFBRUcsU0FBUyxHQUFBSCxVQUFBO0VBRXhCZCxlQUFlLENBQUMsWUFBTTtJQUNwQixJQUFJWSxhQUFhLENBQUNNLE9BQU8sRUFBRTtNQUN6Qk4sYUFBYSxDQUFDTSxPQUFPLEdBQUcsS0FBSztNQUM3QkQsU0FBUyxDQUFDUCxNQUFNLEdBQUcsTUFBTSxHQUFHLENBQUMsQ0FBQztNQUM5QixPQUFPUyxTQUFTO0lBQ2xCO0lBRUEsSUFBTUMsSUFBSSxHQUFHVCxRQUFRLENBQUNPLE9BQU87SUFDN0IsSUFBSSxDQUFDRSxJQUFJLEVBQUUsT0FBT0QsU0FBUztJQUUzQixJQUFJZCxvQkFBb0IsQ0FBQyxDQUFDLEVBQUU7TUFDMUJZLFNBQVMsQ0FBQ1AsTUFBTSxHQUFHLE1BQU0sR0FBRyxDQUFDLENBQUM7TUFDOUIsT0FBT1MsU0FBUztJQUNsQjtJQUVBLElBQUlULE1BQU0sRUFBRTtNQUNWLElBQU1XLFFBQVEsR0FBR0QsSUFBSSxDQUFDRSxZQUFZO01BQ2xDTCxTQUFTLENBQUNJLFFBQVEsQ0FBQztNQUNuQixJQUFNRSxTQUFTLEdBQUdqQixNQUFNLENBQUNrQixVQUFVLENBQUM7UUFBQSxPQUFNUCxTQUFTLENBQUMsTUFBTSxDQUFDO01BQUEsR0FBRWQscUJBQXFCLENBQUM7TUFDbkYsT0FBTztRQUFBLE9BQU1HLE1BQU0sQ0FBQ21CLFlBQVksQ0FBQ0YsU0FBUyxDQUFDO01BQUE7SUFDN0M7SUFFQU4sU0FBUyxDQUFDRyxJQUFJLENBQUNFLFlBQVksQ0FBQztJQUM1QixJQUFNSSxLQUFLLEdBQUdwQixNQUFNLENBQUNxQixxQkFBcUIsQ0FBQztNQUFBLE9BQU1WLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFBQSxFQUFDO0lBQzlELE9BQU87TUFBQSxPQUFNWCxNQUFNLENBQUNzQixvQkFBb0IsQ0FBQ0YsS0FBSyxDQUFDO0lBQUE7RUFDakQsQ0FBQyxFQUFFLENBQUNoQixNQUFNLENBQUMsQ0FBQztFQUVaLE9BQU87SUFBRUMsUUFBUSxFQUFSQSxRQUFRO0lBQUVLLE1BQU0sRUFBTkE7RUFBTyxDQUFDO0FBQzdCLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { act, renderHook } from '@testing-library/react';
|
|
2
|
-
import { REASONING_COLLAPSE_MS, useCollapsibleHeight } from './useCollapsibleHeight';
|
|
3
|
-
var createMeasuredNode = function createMeasuredNode(scrollHeight) {
|
|
4
|
-
var node = document.createElement('div');
|
|
5
|
-
Object.defineProperty(node, 'scrollHeight', {
|
|
6
|
-
configurable: true,
|
|
7
|
-
value: scrollHeight
|
|
8
|
-
});
|
|
9
|
-
return node;
|
|
10
|
-
};
|
|
11
|
-
describe('useCollapsibleHeight', function () {
|
|
12
|
-
var originalMatchMedia = window.matchMedia;
|
|
13
|
-
beforeEach(function () {
|
|
14
|
-
window.matchMedia = jest.fn().mockImplementation(function () {
|
|
15
|
-
return {
|
|
16
|
-
matches: false,
|
|
17
|
-
addListener: jest.fn(),
|
|
18
|
-
removeListener: jest.fn(),
|
|
19
|
-
addEventListener: jest.fn(),
|
|
20
|
-
removeEventListener: jest.fn(),
|
|
21
|
-
dispatchEvent: jest.fn()
|
|
22
|
-
};
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
afterEach(function () {
|
|
26
|
-
window.matchMedia = originalMatchMedia;
|
|
27
|
-
});
|
|
28
|
-
it('starts closed at 0 and open at auto', function () {
|
|
29
|
-
var closed = renderHook(function () {
|
|
30
|
-
return useCollapsibleHeight(false);
|
|
31
|
-
});
|
|
32
|
-
expect(closed.result.current.height).toBe(0);
|
|
33
|
-
var opened = renderHook(function () {
|
|
34
|
-
return useCollapsibleHeight(true);
|
|
35
|
-
});
|
|
36
|
-
expect(opened.result.current.height).toBe('auto');
|
|
37
|
-
});
|
|
38
|
-
it('locks the measured height and then collapses to 0', function () {
|
|
39
|
-
var rafCallbacks = [];
|
|
40
|
-
jest.spyOn(window, 'requestAnimationFrame').mockImplementation(function (cb) {
|
|
41
|
-
rafCallbacks.push(cb);
|
|
42
|
-
return rafCallbacks.length;
|
|
43
|
-
});
|
|
44
|
-
var _renderHook = renderHook(function (_ref) {
|
|
45
|
-
var isOpen = _ref.isOpen;
|
|
46
|
-
return useCollapsibleHeight(isOpen);
|
|
47
|
-
}, {
|
|
48
|
-
initialProps: {
|
|
49
|
-
isOpen: true
|
|
50
|
-
}
|
|
51
|
-
}),
|
|
52
|
-
result = _renderHook.result,
|
|
53
|
-
rerender = _renderHook.rerender;
|
|
54
|
-
result.current.innerRef.current = createMeasuredNode(180);
|
|
55
|
-
rerender({
|
|
56
|
-
isOpen: false
|
|
57
|
-
});
|
|
58
|
-
expect(result.current.height).toBe(180);
|
|
59
|
-
act(function () {
|
|
60
|
-
rafCallbacks.forEach(function (cb) {
|
|
61
|
-
return cb(0);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
expect(result.current.height).toBe(0);
|
|
65
|
-
});
|
|
66
|
-
it('measures the content when opening and releases to auto after the transition', function () {
|
|
67
|
-
jest.useFakeTimers();
|
|
68
|
-
var _renderHook2 = renderHook(function (_ref2) {
|
|
69
|
-
var isOpen = _ref2.isOpen;
|
|
70
|
-
return useCollapsibleHeight(isOpen);
|
|
71
|
-
}, {
|
|
72
|
-
initialProps: {
|
|
73
|
-
isOpen: false
|
|
74
|
-
}
|
|
75
|
-
}),
|
|
76
|
-
result = _renderHook2.result,
|
|
77
|
-
rerender = _renderHook2.rerender;
|
|
78
|
-
result.current.innerRef.current = createMeasuredNode(220);
|
|
79
|
-
rerender({
|
|
80
|
-
isOpen: true
|
|
81
|
-
});
|
|
82
|
-
expect(result.current.height).toBe(220);
|
|
83
|
-
act(function () {
|
|
84
|
-
jest.advanceTimersByTime(REASONING_COLLAPSE_MS);
|
|
85
|
-
});
|
|
86
|
-
expect(result.current.height).toBe('auto');
|
|
87
|
-
jest.useRealTimers();
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhY3QiLCJyZW5kZXJIb29rIiwiUkVBU09OSU5HX0NPTExBUFNFX01TIiwidXNlQ29sbGFwc2libGVIZWlnaHQiLCJjcmVhdGVNZWFzdXJlZE5vZGUiLCJzY3JvbGxIZWlnaHQiLCJub2RlIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJjb25maWd1cmFibGUiLCJ2YWx1ZSIsImRlc2NyaWJlIiwib3JpZ2luYWxNYXRjaE1lZGlhIiwid2luZG93IiwibWF0Y2hNZWRpYSIsImJlZm9yZUVhY2giLCJqZXN0IiwiZm4iLCJtb2NrSW1wbGVtZW50YXRpb24iLCJtYXRjaGVzIiwiYWRkTGlzdGVuZXIiLCJyZW1vdmVMaXN0ZW5lciIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiZGlzcGF0Y2hFdmVudCIsImFmdGVyRWFjaCIsIml0IiwiY2xvc2VkIiwiZXhwZWN0IiwicmVzdWx0IiwiY3VycmVudCIsImhlaWdodCIsInRvQmUiLCJvcGVuZWQiLCJyYWZDYWxsYmFja3MiLCJzcHlPbiIsImNiIiwicHVzaCIsImxlbmd0aCIsIl9yZW5kZXJIb29rIiwiX3JlZiIsImlzT3BlbiIsImluaXRpYWxQcm9wcyIsInJlcmVuZGVyIiwiaW5uZXJSZWYiLCJmb3JFYWNoIiwidXNlRmFrZVRpbWVycyIsIl9yZW5kZXJIb29rMiIsIl9yZWYyIiwiYWR2YW5jZVRpbWVyc0J5VGltZSIsInVzZVJlYWxUaW1lcnMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9SZWFzb25pbmdCbG9jay91c2VDb2xsYXBzaWJsZUhlaWdodC5zcGVjLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFjdCwgcmVuZGVySG9vayB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnXG5pbXBvcnQgeyBSRUFTT05JTkdfQ09MTEFQU0VfTVMsIHVzZUNvbGxhcHNpYmxlSGVpZ2h0IH0gZnJvbSAnLi91c2VDb2xsYXBzaWJsZUhlaWdodCdcblxuY29uc3QgY3JlYXRlTWVhc3VyZWROb2RlID0gKHNjcm9sbEhlaWdodDogbnVtYmVyKTogSFRNTERpdkVsZW1lbnQgPT4ge1xuICBjb25zdCBub2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JylcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5vZGUsICdzY3JvbGxIZWlnaHQnLCB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSwgdmFsdWU6IHNjcm9sbEhlaWdodCB9KVxuICByZXR1cm4gbm9kZVxufVxuXG5kZXNjcmliZSgndXNlQ29sbGFwc2libGVIZWlnaHQnLCAoKSA9PiB7XG4gIGNvbnN0IG9yaWdpbmFsTWF0Y2hNZWRpYSA9IHdpbmRvdy5tYXRjaE1lZGlhXG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgd2luZG93Lm1hdGNoTWVkaWEgPSBqZXN0LmZuKCkubW9ja0ltcGxlbWVudGF0aW9uKCgpID0+ICh7XG4gICAgICBtYXRjaGVzOiBmYWxzZSxcbiAgICAgIGFkZExpc3RlbmVyOiBqZXN0LmZuKCksXG4gICAgICByZW1vdmVMaXN0ZW5lcjogamVzdC5mbigpLFxuICAgICAgYWRkRXZlbnRMaXN0ZW5lcjogamVzdC5mbigpLFxuICAgICAgcmVtb3ZlRXZlbnRMaXN0ZW5lcjogamVzdC5mbigpLFxuICAgICAgZGlzcGF0Y2hFdmVudDogamVzdC5mbigpLFxuICAgIH0pKVxuICB9KVxuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgd2luZG93Lm1hdGNoTWVkaWEgPSBvcmlnaW5hbE1hdGNoTWVkaWFcbiAgfSlcblxuICBpdCgnc3RhcnRzIGNsb3NlZCBhdCAwIGFuZCBvcGVuIGF0IGF1dG8nLCAoKSA9PiB7XG4gICAgY29uc3QgY2xvc2VkID0gcmVuZGVySG9vaygoKSA9PiB1c2VDb2xsYXBzaWJsZUhlaWdodChmYWxzZSkpXG4gICAgZXhwZWN0KGNsb3NlZC5yZXN1bHQuY3VycmVudC5oZWlnaHQpLnRvQmUoMClcblxuICAgIGNvbnN0IG9wZW5lZCA9IHJlbmRlckhvb2soKCkgPT4gdXNlQ29sbGFwc2libGVIZWlnaHQodHJ1ZSkpXG4gICAgZXhwZWN0KG9wZW5lZC5yZXN1bHQuY3VycmVudC5oZWlnaHQpLnRvQmUoJ2F1dG8nKVxuICB9KVxuXG4gIGl0KCdsb2NrcyB0aGUgbWVhc3VyZWQgaGVpZ2h0IGFuZCB0aGVuIGNvbGxhcHNlcyB0byAwJywgKCkgPT4ge1xuICAgIGNvbnN0IHJhZkNhbGxiYWNrczogQXJyYXk8KHRpbWU6IG51bWJlcikgPT4gdm9pZD4gPSBbXVxuICAgIGplc3Quc3B5T24od2luZG93LCAncmVxdWVzdEFuaW1hdGlvbkZyYW1lJykubW9ja0ltcGxlbWVudGF0aW9uKGNiID0+IHtcbiAgICAgIHJhZkNhbGxiYWNrcy5wdXNoKGNiKVxuICAgICAgcmV0dXJuIHJhZkNhbGxiYWNrcy5sZW5ndGhcbiAgICB9KVxuXG4gICAgY29uc3QgeyByZXN1bHQsIHJlcmVuZGVyIH0gPSByZW5kZXJIb29rKCh7IGlzT3BlbiB9KSA9PiB1c2VDb2xsYXBzaWJsZUhlaWdodChpc09wZW4pLCB7XG4gICAgICBpbml0aWFsUHJvcHM6IHsgaXNPcGVuOiB0cnVlIH0sXG4gICAgfSlcbiAgICByZXN1bHQuY3VycmVudC5pbm5lclJlZi5jdXJyZW50ID0gY3JlYXRlTWVhc3VyZWROb2RlKDE4MClcblxuICAgIHJlcmVuZGVyKHsgaXNPcGVuOiBmYWxzZSB9KVxuICAgIGV4cGVjdChyZXN1bHQuY3VycmVudC5oZWlnaHQpLnRvQmUoMTgwKVxuXG4gICAgYWN0KCgpID0+IHtcbiAgICAgIHJhZkNhbGxiYWNrcy5mb3JFYWNoKGNiID0+IGNiKDApKVxuICAgIH0pXG4gICAgZXhwZWN0KHJlc3VsdC5jdXJyZW50LmhlaWdodCkudG9CZSgwKVxuICB9KVxuXG4gIGl0KCdtZWFzdXJlcyB0aGUgY29udGVudCB3aGVuIG9wZW5pbmcgYW5kIHJlbGVhc2VzIHRvIGF1dG8gYWZ0ZXIgdGhlIHRyYW5zaXRpb24nLCAoKSA9PiB7XG4gICAgamVzdC51c2VGYWtlVGltZXJzKClcbiAgICBjb25zdCB7IHJlc3VsdCwgcmVyZW5kZXIgfSA9IHJlbmRlckhvb2soKHsgaXNPcGVuIH0pID0+IHVzZUNvbGxhcHNpYmxlSGVpZ2h0KGlzT3BlbiksIHtcbiAgICAgIGluaXRpYWxQcm9wczogeyBpc09wZW46IGZhbHNlIH0sXG4gICAgfSlcbiAgICByZXN1bHQuY3VycmVudC5pbm5lclJlZi5jdXJyZW50ID0gY3JlYXRlTWVhc3VyZWROb2RlKDIyMClcblxuICAgIHJlcmVuZGVyKHsgaXNPcGVuOiB0cnVlIH0pXG4gICAgZXhwZWN0KHJlc3VsdC5jdXJyZW50LmhlaWdodCkudG9CZSgyMjApXG5cbiAgICBhY3QoKCkgPT4ge1xuICAgICAgamVzdC5hZHZhbmNlVGltZXJzQnlUaW1lKFJFQVNPTklOR19DT0xMQVBTRV9NUylcbiAgICB9KVxuICAgIGV4cGVjdChyZXN1bHQuY3VycmVudC5oZWlnaHQpLnRvQmUoJ2F1dG8nKVxuICAgIGplc3QudXNlUmVhbFRpbWVycygpXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxHQUFHLEVBQUVDLFVBQVUsUUFBUSx3QkFBd0I7QUFDeEQsU0FBU0MscUJBQXFCLEVBQUVDLG9CQUFvQixRQUFRLHdCQUF3QjtBQUVwRixJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJQyxZQUFvQixFQUFxQjtFQUNuRSxJQUFNQyxJQUFJLEdBQUdDLFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLEtBQUssQ0FBQztFQUMxQ0MsTUFBTSxDQUFDQyxjQUFjLENBQUNKLElBQUksRUFBRSxjQUFjLEVBQUU7SUFBRUssWUFBWSxFQUFFLElBQUk7SUFBRUMsS0FBSyxFQUFFUDtFQUFhLENBQUMsQ0FBQztFQUN4RixPQUFPQyxJQUFJO0FBQ2IsQ0FBQztBQUVETyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsWUFBTTtFQUNyQyxJQUFNQyxrQkFBa0IsR0FBR0MsTUFBTSxDQUFDQyxVQUFVO0VBRTVDQyxVQUFV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
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
-
import { fireEvent, renderWithProviders, screen } from '../../../test/test-utils';
|
|
5
|
-
import { SlashCommandDropdown } from './SlashCommandDropdown';
|
|
6
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
var action = function action(overrides) {
|
|
8
|
-
return _objectSpread({
|
|
9
|
-
id: '1',
|
|
10
|
-
title: 'Crear tarea',
|
|
11
|
-
subtitle: 'Nueva tarea',
|
|
12
|
-
prompt: 'p',
|
|
13
|
-
language: null,
|
|
14
|
-
category: 'tasks'
|
|
15
|
-
}, overrides);
|
|
16
|
-
};
|
|
17
|
-
var commands = [action({
|
|
18
|
-
id: 'task',
|
|
19
|
-
title: 'Crear tarea',
|
|
20
|
-
category: 'tasks'
|
|
21
|
-
}), action({
|
|
22
|
-
id: 'hours',
|
|
23
|
-
title: 'Cargar horas',
|
|
24
|
-
subtitle: 'Esta semana',
|
|
25
|
-
category: 'hours'
|
|
26
|
-
})];
|
|
27
|
-
describe('SlashCommandDropdown', function () {
|
|
28
|
-
var onSelect = jest.fn();
|
|
29
|
-
var onClose = jest.fn();
|
|
30
|
-
beforeEach(function () {
|
|
31
|
-
onSelect.mockClear();
|
|
32
|
-
onClose.mockClear();
|
|
33
|
-
});
|
|
34
|
-
it('filters commands by query and selects one', function () {
|
|
35
|
-
renderWithProviders(/*#__PURE__*/_jsx(SlashCommandDropdown, {
|
|
36
|
-
commands: commands,
|
|
37
|
-
query: "horas",
|
|
38
|
-
onSelect: onSelect,
|
|
39
|
-
onClose: onClose,
|
|
40
|
-
bottom: 0,
|
|
41
|
-
left: 0
|
|
42
|
-
}));
|
|
43
|
-
var hoursButton = screen.getByRole('button', {
|
|
44
|
-
name: /Cargar horas/
|
|
45
|
-
});
|
|
46
|
-
expect(hoursButton).toBeInTheDocument();
|
|
47
|
-
expect(screen.queryByRole('button', {
|
|
48
|
-
name: /Crear tarea/
|
|
49
|
-
})).not.toBeInTheDocument();
|
|
50
|
-
fireEvent.click(hoursButton);
|
|
51
|
-
expect(onSelect).toHaveBeenCalledWith(expect.objectContaining({
|
|
52
|
-
id: 'hours'
|
|
53
|
-
}));
|
|
54
|
-
});
|
|
55
|
-
it('closes on Escape and outside click', function () {
|
|
56
|
-
renderWithProviders(/*#__PURE__*/_jsx(SlashCommandDropdown, {
|
|
57
|
-
commands: commands,
|
|
58
|
-
query: "",
|
|
59
|
-
onSelect: onSelect,
|
|
60
|
-
onClose: onClose,
|
|
61
|
-
bottom: 0,
|
|
62
|
-
left: 0
|
|
63
|
-
}));
|
|
64
|
-
fireEvent.keyDown(document, {
|
|
65
|
-
key: 'Escape'
|
|
66
|
-
});
|
|
67
|
-
expect(onClose).toHaveBeenCalled();
|
|
68
|
-
onClose.mockClear();
|
|
69
|
-
fireEvent.mouseDown(document.body);
|
|
70
|
-
expect(onClose).toHaveBeenCalled();
|
|
71
|
-
});
|
|
72
|
-
it('returns null when nothing matches', function () {
|
|
73
|
-
var _renderWithProviders = renderWithProviders(/*#__PURE__*/_jsx(SlashCommandDropdown, {
|
|
74
|
-
commands: commands,
|
|
75
|
-
query: "zzz",
|
|
76
|
-
onSelect: onSelect,
|
|
77
|
-
onClose: onClose,
|
|
78
|
-
bottom: 0,
|
|
79
|
-
left: 0
|
|
80
|
-
})),
|
|
81
|
-
container = _renderWithProviders.container;
|
|
82
|
-
expect(container).toBeEmptyDOMElement();
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmaXJlRXZlbnQiLCJyZW5kZXJXaXRoUHJvdmlkZXJzIiwic2NyZWVuIiwiU2xhc2hDb21tYW5kRHJvcGRvd24iLCJqc3giLCJfanN4IiwiYWN0aW9uIiwib3ZlcnJpZGVzIiwiX29iamVjdFNwcmVhZCIsImlkIiwidGl0bGUiLCJzdWJ0aXRsZSIsInByb21wdCIsImxhbmd1YWdlIiwiY2F0ZWdvcnkiLCJjb21tYW5kcyIsImRlc2NyaWJlIiwib25TZWxlY3QiLCJqZXN0IiwiZm4iLCJvbkNsb3NlIiwiYmVmb3JlRWFjaCIsIm1vY2tDbGVhciIsIml0IiwicXVlcnkiLCJib3R0b20iLCJsZWZ0IiwiaG91cnNCdXR0b24iLCJnZXRCeVJvbGUiLCJuYW1lIiwiZXhwZWN0IiwidG9CZUluVGhlRG9jdW1lbnQiLCJxdWVyeUJ5Um9sZSIsIm5vdCIsImNsaWNrIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJvYmplY3RDb250YWluaW5nIiwia2V5RG93biIsImRvY3VtZW50Iiwia2V5IiwidG9IYXZlQmVlbkNhbGxlZCIsIm1vdXNlRG93biIsImJvZHkiLCJfcmVuZGVyV2l0aFByb3ZpZGVycyIsImNvbnRhaW5lciIsInRvQmVFbXB0eURPTUVsZW1lbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9hdG9tcy9TbGFzaENvbW1hbmREcm9wZG93bi9TbGFzaENvbW1hbmREcm9wZG93bi5zcGVjLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJlRXZlbnQsIHJlbmRlcldpdGhQcm92aWRlcnMsIHNjcmVlbiB9IGZyb20gJy4uLy4uLy4uL3Rlc3QvdGVzdC11dGlscydcbmltcG9ydCB0eXBlIHsgQWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvQWN0aW9uJ1xuaW1wb3J0IHsgU2xhc2hDb21tYW5kRHJvcGRvd24gfSBmcm9tICcuL1NsYXNoQ29tbWFuZERyb3Bkb3duJ1xuXG5jb25zdCBhY3Rpb24gPSAob3ZlcnJpZGVzOiBQYXJ0aWFsPEFjdGlvbj4pOiBBY3Rpb24gPT4gKHtcbiAgaWQ6ICcxJyxcbiAgdGl0bGU6ICdDcmVhciB0YXJlYScsXG4gIHN1YnRpdGxlOiAnTnVldmEgdGFyZWEnLFxuICBwcm9tcHQ6ICdwJyxcbiAgbGFuZ3VhZ2U6IG51bGwsXG4gIGNhdGVnb3J5OiAndGFza3MnLFxuICAuLi5vdmVycmlkZXMsXG59KVxuXG5jb25zdCBjb21tYW5kcyA9IFtcbiAgYWN0aW9uKHsgaWQ6ICd0YXNrJywgdGl0bGU6ICdDcmVhciB0YXJlYScsIGNhdGVnb3J5OiAndGFza3MnIH0pLFxuICBhY3Rpb24oeyBpZDogJ2hvdXJzJywgdGl0bGU6ICdDYXJnYXIgaG9yYXMnLCBzdWJ0aXRsZTogJ0VzdGEgc2VtYW5hJywgY2F0ZWdvcnk6ICdob3VycycgfSksXG5dXG5cbmRlc2NyaWJlKCdTbGFzaENvbW1hbmREcm9wZG93bicsICgpID0+IHtcbiAgY29uc3Qgb25TZWxlY3QgPSBqZXN0LmZuKClcbiAgY29uc3Qgb25DbG9zZSA9IGplc3QuZm4oKVxuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIG9uU2VsZWN0Lm1vY2tDbGVhcigpXG4gICAgb25DbG9zZS5tb2NrQ2xlYXIoKVxuICB9KVxuXG4gIGl0KCdmaWx0ZXJzIGNvbW1hbmRzIGJ5IHF1ZXJ5IGFuZCBzZWxlY3RzIG9uZScsICgpID0+IHtcbiAgICByZW5kZXJXaXRoUHJvdmlkZXJzKFxuICAgICAgPFNsYXNoQ29tbWFuZERyb3Bkb3duXG4gICAgICAgIGNvbW1hbmRzPXtjb21tYW5kc31cbiAgICAgICAgcXVlcnk9XCJob3Jhc1wiXG4gICAgICAgIG9uU2VsZWN0PXtvblNlbGVjdH1cbiAgICAgICAgb25DbG9zZT17b25DbG9zZX1cbiAgICAgICAgYm90dG9tPXswfVxuICAgICAgICBsZWZ0PXswfVxuICAgICAgLz5cbiAgICApXG5cbiAgICBjb25zdCBob3Vyc0J1dHRvbiA9IHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicsIHsgbmFtZTogL0NhcmdhciBob3Jhcy8gfSlcbiAgICBleHBlY3QoaG91cnNCdXR0b24pLnRvQmVJblRoZURvY3VtZW50KClcbiAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9DcmVhciB0YXJlYS8gfSkpLm5vdC50b0JlSW5UaGVEb2N1bWVudCgpXG5cbiAgICBmaXJlRXZlbnQuY2xpY2soaG91cnNCdXR0b24pXG4gICAgZXhwZWN0KG9uU2VsZWN0KS50b0hhdmVCZWVuQ2FsbGVkV2l0aChleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7IGlkOiAnaG91cnMnIH0pKVxuICB9KVxuXG4gIGl0KCdjbG9zZXMgb24gRXNjYXBlIGFuZCBvdXRzaWRlIGNsaWNrJywgKCkgPT4ge1xuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoXG4gICAgICA8U2xhc2hDb21tYW5kRHJvcGRvd24gY29tbWFuZHM9e2NvbW1hbmRzfSBxdWVyeT1cIlwiIG9uU2VsZWN0PXtvblNlbGVjdH0gb25DbG9zZT17b25DbG9zZX0gYm90dG9tPXswfSBsZWZ0PXswfSAvPlxuICAgIClcblxuICAgIGZpcmVFdmVudC5rZXlEb3duKGRvY3VtZW50LCB7IGtleTogJ0VzY2FwZScgfSlcbiAgICBleHBlY3Qob25DbG9zZSkudG9IYXZlQmVlbkNhbGxlZCgpXG5cbiAgICBvbkNsb3NlLm1vY2tDbGVhcigpXG4gICAgZmlyZUV2ZW50Lm1vdXNlRG93bihkb2N1bWVudC5ib2R5KVxuICAgIGV4cGVjdChvbkNsb3NlKS50b0hhdmVCZWVuQ2FsbGVkKClcbiAgfSlcblxuICBpdCgncmV0dXJucyBudWxsIHdoZW4gbm90aGluZyBtYXRjaGVzJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJXaXRoUHJvdmlkZXJzKFxuICAgICAgPFNsYXNoQ29tbWFuZERyb3Bkb3duIGNvbW1hbmRzPXtjb21tYW5kc30gcXVlcnk9XCJ6enpcIiBvblNlbGVjdD17b25TZWxlY3R9IG9uQ2xvc2U9e29uQ2xvc2V9IGJvdHRvbT17MH0gbGVmdD17MH0gLz5cbiAgICApXG5cbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlRW1wdHlET01FbGVtZW50KClcbiAgfSlcbn0pXG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQVNBLFNBQVMsRUFBRUMsbUJBQW1CLEVBQUVDLE1BQU0sUUFBUSwwQkFBMEI7QUFFakYsU0FBU0Msb0JBQW9CLFFBQVEsd0JBQXdCO0FBQUEsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBRTdELElBQU1DLE1BQU0sR0FBRyxTQUFUQSxNQUFNQSxDQUFJQyxTQUEwQjtFQUFBLE9BQUFDLGFBQUE7SUFDeENDLEVBQUUsRUFBRSxHQUFHO0lBQ1BDLEtBQUssRUFBRSxhQUFhO0lBQ3BCQyxRQUFRLEVBQUUsYUFBYTtJQUN2QkMsTUFBTSxFQUFFLEdBQUc7SUFDWEMsUUFBUSxFQUFFLElBQUk7SUFDZEMsUUFBUSxFQUFFO0VBQU8sR0FDZFAsU0FBUztBQUFBLENBQ1o7QUFFRixJQUFNUSxRQUFRLEdBQUcsQ0FDZlQsTUFBTSxDQUFDO0VBQUVHLEVBQUUsRUFBRSxNQUFNO0VBQUVDLEtBQUssRUFBRSxhQUFhO0VBQUVJLFFBQVEsRUFBRTtBQUFRLENBQUMsQ0FBQyxFQUMvRFIsTUFBTSxDQUFDO0VBQUVHLEVBQUUsRUFBRSxPQUFPO0VBQUVDLEtBQUssRUFBRSxjQUFjO0VBQUVDLFFBQVEsRUFBRSxhQUFhO0VBQUVHLFFBQVEsRUFBRTtBQUFRLENBQUMsQ0FBQyxDQUMzRjtBQUVERSxRQUFRLENBQUMsc0JBQXNCLEVBQUUsWUFBTTtFQUNyQyxJQUFNQyxRQUFRLEdBQUdDLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUM7RUFDMUIsSUFBTUMsT0FBTyxHQUFHRixJQUFJLENBQUNDLEVBQUUsQ0FBQyxDQUFDO0VBRXpCRSxVQUFVLENBQUMsWUFBTTtJQUNmSixRQUFRLENBQUNLLFNBQVMsQ0FBQyxDQUFDO0lBQ3BCRixPQUFPLENBQUNFLFNBQVMsQ0FBQyxDQUFDO0VBQ3JCLENBQUMsQ0FBQztFQUVGQyxFQUFFLENBQUMsMkNBQTJDLEVBQUUsWUFBTTtJQUNwRHRCLG1CQUFtQixjQUNqQkksSUFBQSxDQUFDRixvQkFBb0I7TUFDbkJZLFFBQVEsRUFBRUEsUUFBUztNQUNuQlMsS0FBSyxFQUFDLE9BQU87TUFDYlAsUUFBUSxFQUFFQSxRQUFTO01BQ25CRyxPQUFPLEVBQUVBLE9BQVE7TUFDakJLLE1BQU0sRUFBRSxDQUFFO01BQ1ZDLElBQUksRUFBRTtJQUFFLENBQ1QsQ0FDSCxDQUFDO0lBRUQsSUFBTUMsV0FBVyxHQUFHekIsTUFBTSxDQUFDMEIsU0FBUyxDQUFDLFFBQVEsRUFBRTtNQUFFQyxJQUFJLEVBQUU7SUFBZSxDQUFDLENBQUM7SUFDeEVDLE1BQU0sQ0FBQ0gsV0FBVyxDQUFDLENBQUNJLGlCQUFpQixDQUFDLENBQUM7SUFDdkNELE1BQU0sQ0FBQzVCLE1BQU0sQ0FBQzhCLFdBQVcsQ0FBQyxRQUFRLEVBQUU7TUFBRUgsSUFBSSxFQUFFO0lBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQ0ksR0FBRyxDQUFDRixpQkFBaUIsQ0FBQyxDQUFDO0lBRXJGL0IsU0FBUyxDQUFDa0MsS0FBSyxDQUFDUCxXQUFXLENBQUM7SUFDNUJHLE1BQU0sQ0FBQ2IsUUFBUSxDQUFDLENBQUNrQixvQkFBb0IsQ0FBQ0wsTUFBTSxDQUFDTSxnQkFBZ0IsQ0FBQztNQUFFM0IsRUFBRSxFQUFFO0lBQVEsQ0FBQyxDQUFDLENBQUM7RUFDakYsQ0FBQyxDQUFDO0VBRUZjLEVBQUUsQ0FBQyxvQ0FBb0MsRUFBRSxZQUFNO0lBQzdDdEIsbUJBQW1CLGNBQ2pCSSxJQUFBLENBQUNGLG9CQUFvQjtNQUFDWSxRQUFRLEVBQUVBLFFBQVM7TUFBQ1MsS0FBSyxFQUFDLEVBQUU7TUFBQ1AsUUFBUSxFQUFFQSxRQUFTO01BQUNHLE9BQU8sRUFBRUEsT0FBUTtNQUFDSyxNQUFNLEVBQUUsQ0FBRTtNQUFDQyxJQUFJLEVBQUU7SUFBRSxDQUFFLENBQ2hILENBQUM7SUFFRDFCLFNBQVMsQ0FBQ3FDLE9BQU8sQ0FBQ0MsUUFBUSxFQUFFO01BQUVDLEdBQUcsRUFBRTtJQUFTLENBQUMsQ0FBQztJQUM5Q1QsTUFBTSxDQUFDVixPQUFPLENBQUMsQ0FBQ29CLGdCQUFnQixDQUFDLENBQUM7SUFFbENwQixPQUFPLENBQUNFLFNBQVMsQ0FBQyxDQUFDO0lBQ25CdEIsU0FBUyxDQUFDeUMsU0FBUyxDQUFDSCxRQUFRLENBQUNJLElBQUksQ0FBQztJQUNsQ1osTUFBTSxDQUFDVixPQUFPLENBQUMsQ0FBQ29CLGdCQUFnQixDQUFDLENBQUM7RUFDcEMsQ0FBQyxDQUFDO0VBRUZqQixFQUFFLENBQUMsbUNBQW1DLEVBQUUsWUFBTTtJQUM1QyxJQUFBb0Isb0JBQUEsR0FBc0IxQyxtQkFBbUIsY0FDdkNJLElBQUEsQ0FBQ0Ysb0JBQW9CO1FBQUNZLFFBQVEsRUFBRUEsUUFBUztRQUFDUyxLQUFLLEVBQUMsS0FBSztRQUFDUCxRQUFRLEVBQUVBLFFBQVM7UUFBQ0csT0FBTyxFQUFFQSxPQUFRO1FBQUNLLE1BQU0sRUFBRSxDQUFFO1FBQUNDLElBQUksRUFBRTtNQUFFLENBQUUsQ0FDbkgsQ0FBQztNQUZPa0IsU0FBUyxHQUFBRCxvQkFBQSxDQUFUQyxTQUFTO0lBSWpCZCxNQUFNLENBQUNjLFNBQVMsQ0FBQyxDQUFDQyxtQkFBbUIsQ0FBQyxDQUFDO0VBQ3pDLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { renderWithProviders, screen } from '../../../test/test-utils';
|
|
2
|
-
import { Switch } from './Switch';
|
|
3
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
-
describe('Switch', function () {
|
|
5
|
-
it('exposes the checked state to assistive tech', function () {
|
|
6
|
-
renderWithProviders(/*#__PURE__*/_jsx(Switch, {
|
|
7
|
-
checked: true,
|
|
8
|
-
"aria-label": "Auto approve",
|
|
9
|
-
onChange: jest.fn()
|
|
10
|
-
}));
|
|
11
|
-
expect(screen.getByRole('switch', {
|
|
12
|
-
name: 'Auto approve'
|
|
13
|
-
})).toHaveAttribute('aria-checked', 'true');
|
|
14
|
-
});
|
|
15
|
-
it('calls onChange with the opposite value', function () {
|
|
16
|
-
var onChange = jest.fn();
|
|
17
|
-
renderWithProviders(/*#__PURE__*/_jsx(Switch, {
|
|
18
|
-
checked: false,
|
|
19
|
-
"aria-label": "Auto approve",
|
|
20
|
-
onChange: onChange
|
|
21
|
-
}));
|
|
22
|
-
screen.getByRole('switch', {
|
|
23
|
-
name: 'Auto approve'
|
|
24
|
-
}).click();
|
|
25
|
-
expect(onChange).toHaveBeenCalledWith(true);
|
|
26
|
-
});
|
|
27
|
-
it('does not call onChange when disabled', function () {
|
|
28
|
-
var onChange = jest.fn();
|
|
29
|
-
renderWithProviders(/*#__PURE__*/_jsx(Switch, {
|
|
30
|
-
checked: false,
|
|
31
|
-
disabled: true,
|
|
32
|
-
"aria-label": "Auto approve",
|
|
33
|
-
onChange: onChange
|
|
34
|
-
}));
|
|
35
|
-
screen.getByRole('switch', {
|
|
36
|
-
name: 'Auto approve'
|
|
37
|
-
}).click();
|
|
38
|
-
expect(onChange).not.toHaveBeenCalled();
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZW5kZXJXaXRoUHJvdmlkZXJzIiwic2NyZWVuIiwiU3dpdGNoIiwianN4IiwiX2pzeCIsImRlc2NyaWJlIiwiaXQiLCJjaGVja2VkIiwib25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJleHBlY3QiLCJnZXRCeVJvbGUiLCJuYW1lIiwidG9IYXZlQXR0cmlidXRlIiwiY2xpY2siLCJ0b0hhdmVCZWVuQ2FsbGVkV2l0aCIsImRpc2FibGVkIiwibm90IiwidG9IYXZlQmVlbkNhbGxlZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL1N3aXRjaC9Td2l0Y2guc3BlYy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyV2l0aFByb3ZpZGVycywgc2NyZWVuIH0gZnJvbSAnLi4vLi4vLi4vdGVzdC90ZXN0LXV0aWxzJ1xuaW1wb3J0IHsgU3dpdGNoIH0gZnJvbSAnLi9Td2l0Y2gnXG5cbmRlc2NyaWJlKCdTd2l0Y2gnLCAoKSA9PiB7XG4gIGl0KCdleHBvc2VzIHRoZSBjaGVja2VkIHN0YXRlIHRvIGFzc2lzdGl2ZSB0ZWNoJywgKCkgPT4ge1xuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoPFN3aXRjaCBjaGVja2VkIGFyaWEtbGFiZWw9XCJBdXRvIGFwcHJvdmVcIiBvbkNoYW5nZT17amVzdC5mbigpfSAvPilcblxuICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlSb2xlKCdzd2l0Y2gnLCB7IG5hbWU6ICdBdXRvIGFwcHJvdmUnIH0pKS50b0hhdmVBdHRyaWJ1dGUoJ2FyaWEtY2hlY2tlZCcsICd0cnVlJylcbiAgfSlcblxuICBpdCgnY2FsbHMgb25DaGFuZ2Ugd2l0aCB0aGUgb3Bwb3NpdGUgdmFsdWUnLCAoKSA9PiB7XG4gICAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKClcbiAgICByZW5kZXJXaXRoUHJvdmlkZXJzKDxTd2l0Y2ggY2hlY2tlZD17ZmFsc2V9IGFyaWEtbGFiZWw9XCJBdXRvIGFwcHJvdmVcIiBvbkNoYW5nZT17b25DaGFuZ2V9IC8+KVxuXG4gICAgc2NyZWVuLmdldEJ5Um9sZSgnc3dpdGNoJywgeyBuYW1lOiAnQXV0byBhcHByb3ZlJyB9KS5jbGljaygpXG5cbiAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHRydWUpXG4gIH0pXG5cbiAgaXQoJ2RvZXMgbm90IGNhbGwgb25DaGFuZ2Ugd2hlbiBkaXNhYmxlZCcsICgpID0+IHtcbiAgICBjb25zdCBvbkNoYW5nZSA9IGplc3QuZm4oKVxuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoPFN3aXRjaCBjaGVja2VkPXtmYWxzZX0gZGlzYWJsZWQgYXJpYS1sYWJlbD1cIkF1dG8gYXBwcm92ZVwiIG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz4pXG5cbiAgICBzY3JlZW4uZ2V0QnlSb2xlKCdzd2l0Y2gnLCB7IG5hbWU6ICdBdXRvIGFwcHJvdmUnIH0pLmNsaWNrKClcblxuICAgIGV4cGVjdChvbkNoYW5nZSkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKVxuICB9KVxufSlcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsbUJBQW1CLEVBQUVDLE1BQU0sUUFBUSwwQkFBMEI7QUFDdEUsU0FBU0MsTUFBTSxRQUFRLFVBQVU7QUFBQSxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFFakNDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsWUFBTTtFQUN2QkMsRUFBRSxDQUFDLDZDQUE2QyxFQUFFLFlBQU07SUFDdEROLG1CQUFtQixjQUFDSSxJQUFBLENBQUNGLE1BQU07TUFBQ0ssT0FBTztNQUFDLGNBQVcsY0FBYztNQUFDQyxRQUFRLEVBQUVDLElBQUksQ0FBQ0MsRUFBRSxDQUFDO0lBQUUsQ0FBRSxDQUFDLENBQUM7SUFFdEZDLE1BQU0sQ0FBQ1YsTUFBTSxDQUFDVyxTQUFTLENBQUMsUUFBUSxFQUFFO01BQUVDLElBQUksRUFBRTtJQUFlLENBQUMsQ0FBQyxDQUFDLENBQUNDLGVBQWUsQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDO0VBQ3RHLENBQUMsQ0FBQztFQUVGUixFQUFFLENBQUMsd0NBQXdDLEVBQUUsWUFBTTtJQUNqRCxJQUFNRSxRQUFRLEdBQUdDLElBQUksQ0FBQ0MsRUFBRSxDQUFDLENBQUM7SUFDMUJWLG1CQUFtQixjQUFDSSxJQUFBLENBQUNGLE1BQU07TUFBQ0ssT0FBTyxFQUFFLEtBQU07TUFBQyxjQUFXLGNBQWM7TUFBQ0MsUUFBUSxFQUFFQTtJQUFTLENBQUUsQ0FBQyxDQUFDO0lBRTdGUCxNQUFNLENBQUNXLFNBQVMsQ0FBQyxRQUFRLEVBQUU7TUFBRUMsSUFBSSxFQUFFO0lBQWUsQ0FBQyxDQUFDLENBQUNFLEtBQUssQ0FBQyxDQUFDO0lBRTVESixNQUFNLENBQUNILFFBQVEsQ0FBQyxDQUFDUSxvQkFBb0IsQ0FBQyxJQUFJLENBQUM7RUFDN0MsQ0FBQyxDQUFDO0VBRUZWLEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRSxZQUFNO0lBQy9DLElBQU1FLFFBQVEsR0FBR0MsSUFBSSxDQUFDQyxFQUFFLENBQUMsQ0FBQztJQUMxQlYsbUJBQW1CLGNBQUNJLElBQUEsQ0FBQ0YsTUFBTTtNQUFDSyxPQUFPLEVBQUUsS0FBTTtNQUFDVSxRQUFRO01BQUMsY0FBVyxjQUFjO01BQUNULFFBQVEsRUFBRUE7SUFBUyxDQUFFLENBQUMsQ0FBQztJQUV0R1AsTUFBTSxDQUFDVyxTQUFTLENBQUMsUUFBUSxFQUFFO01BQUVDLElBQUksRUFBRTtJQUFlLENBQUMsQ0FBQyxDQUFDRSxLQUFLLENBQUMsQ0FBQztJQUU1REosTUFBTSxDQUFDSCxRQUFRLENBQUMsQ0FBQ1UsR0FBRyxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDO0VBQ3pDLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
-
import { fireEvent, renderWithProviders, screen, waitFor } from '../../../test/test-utils';
|
|
4
|
-
import { fetchAgentDetailAndParsedForAbm } from '../../../services/maia/Agents/fetchAgentDetail';
|
|
5
|
-
import { ChatAICreateAgentActions } from './ChatAICreateAgentActions';
|
|
6
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
jest.mock('../../../services/maia/Agents/fetchAgentDetail', function () {
|
|
8
|
-
return {
|
|
9
|
-
fetchAgentDetailAndParsedForAbm: jest.fn()
|
|
10
|
-
};
|
|
11
|
-
});
|
|
12
|
-
jest.mock('../../../hooks/useSnackBarManager/useSnackBarManager', function () {
|
|
13
|
-
return {
|
|
14
|
-
useSnackBarManager: function useSnackBarManager() {
|
|
15
|
-
return {
|
|
16
|
-
handleSnackbarError: jest.fn()
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
});
|
|
21
|
-
var fetchDetail = fetchAgentDetailAndParsedForAbm;
|
|
22
|
-
var flags = window;
|
|
23
|
-
describe('ChatAICreateAgentActions', function () {
|
|
24
|
-
beforeEach(function () {
|
|
25
|
-
flags.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS = true;
|
|
26
|
-
fetchDetail.mockResolvedValue({
|
|
27
|
-
chatAgent: {
|
|
28
|
-
id: 'a1',
|
|
29
|
-
name: 'Nuevo',
|
|
30
|
-
emoji: '✨',
|
|
31
|
-
type: 'custom'
|
|
32
|
-
},
|
|
33
|
-
abmParsed: {
|
|
34
|
-
id: 'a1',
|
|
35
|
-
name: 'Nuevo'
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
afterEach(function () {
|
|
40
|
-
delete flags.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
|
|
41
|
-
});
|
|
42
|
-
it('returns null without the multi-agents flag', function () {
|
|
43
|
-
delete flags.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS;
|
|
44
|
-
var _renderWithProviders = renderWithProviders(/*#__PURE__*/_jsx(ChatAICreateAgentActions, {
|
|
45
|
-
agentId: "a1"
|
|
46
|
-
})),
|
|
47
|
-
container = _renderWithProviders.container;
|
|
48
|
-
expect(container).toBeEmptyDOMElement();
|
|
49
|
-
});
|
|
50
|
-
it('opens a new chat with the created agent', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
51
|
-
var onOpen;
|
|
52
|
-
return _regeneratorRuntime.wrap(function (_context) {
|
|
53
|
-
while (1) switch (_context.prev = _context.next) {
|
|
54
|
-
case 0:
|
|
55
|
-
onOpen = jest.fn();
|
|
56
|
-
document.addEventListener('maia-open-new-chat-with-agent', onOpen);
|
|
57
|
-
renderWithProviders(/*#__PURE__*/_jsx(ChatAICreateAgentActions, {
|
|
58
|
-
agentId: "a1"
|
|
59
|
-
}));
|
|
60
|
-
fireEvent.click(screen.getByRole('button', {
|
|
61
|
-
name: 'chat.createAgentActionStartChat'
|
|
62
|
-
}));
|
|
63
|
-
_context.next = 1;
|
|
64
|
-
return waitFor(function () {
|
|
65
|
-
expect(fetchDetail).toHaveBeenCalledWith('a1');
|
|
66
|
-
expect(onOpen).toHaveBeenCalled();
|
|
67
|
-
});
|
|
68
|
-
case 1:
|
|
69
|
-
document.removeEventListener('maia-open-new-chat-with-agent', onOpen);
|
|
70
|
-
case 2:
|
|
71
|
-
case "end":
|
|
72
|
-
return _context.stop();
|
|
73
|
-
}
|
|
74
|
-
}, _callee);
|
|
75
|
-
})));
|
|
76
|
-
it('opens the ABM on the knowledge section', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
77
|
-
var onAbm, event;
|
|
78
|
-
return _regeneratorRuntime.wrap(function (_context2) {
|
|
79
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
80
|
-
case 0:
|
|
81
|
-
onAbm = jest.fn();
|
|
82
|
-
document.addEventListener('abm-agent-modal-set-values', onAbm);
|
|
83
|
-
renderWithProviders(/*#__PURE__*/_jsx(ChatAICreateAgentActions, {
|
|
84
|
-
agentId: "a1"
|
|
85
|
-
}));
|
|
86
|
-
fireEvent.click(screen.getByRole('button', {
|
|
87
|
-
name: 'chat.createAgentActionKnowledge'
|
|
88
|
-
}));
|
|
89
|
-
_context2.next = 1;
|
|
90
|
-
return waitFor(function () {
|
|
91
|
-
expect(onAbm).toHaveBeenCalled();
|
|
92
|
-
});
|
|
93
|
-
case 1:
|
|
94
|
-
event = onAbm.mock.calls[0][0];
|
|
95
|
-
expect(event.detail.agentValues.initialSection).toBe('knowledge');
|
|
96
|
-
document.removeEventListener('abm-agent-modal-set-values', onAbm);
|
|
97
|
-
case 2:
|
|
98
|
-
case "end":
|
|
99
|
-
return _context2.stop();
|
|
100
|
-
}
|
|
101
|
-
}, _callee2);
|
|
102
|
-
})));
|
|
103
|
-
});
|
|
104
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmaXJlRXZlbnQiLCJyZW5kZXJXaXRoUHJvdmlkZXJzIiwic2NyZWVuIiwid2FpdEZvciIsImZldGNoQWdlbnREZXRhaWxBbmRQYXJzZWRGb3JBYm0iLCJDaGF0QUlDcmVhdGVBZ2VudEFjdGlvbnMiLCJqc3giLCJfanN4IiwiamVzdCIsIm1vY2siLCJmbiIsInVzZVNuYWNrQmFyTWFuYWdlciIsImhhbmRsZVNuYWNrYmFyRXJyb3IiLCJmZXRjaERldGFpbCIsImZsYWdzIiwid2luZG93IiwiZGVzY3JpYmUiLCJiZWZvcmVFYWNoIiwiTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyIsIm1vY2tSZXNvbHZlZFZhbHVlIiwiY2hhdEFnZW50IiwiaWQiLCJuYW1lIiwiZW1vamkiLCJ0eXBlIiwiYWJtUGFyc2VkIiwiYWZ0ZXJFYWNoIiwiaXQiLCJfcmVuZGVyV2l0aFByb3ZpZGVycyIsImFnZW50SWQiLCJjb250YWluZXIiLCJleHBlY3QiLCJ0b0JlRW1wdHlET01FbGVtZW50IiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJvbk9wZW4iLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsImNsaWNrIiwiZ2V0QnlSb2xlIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJ0b0hhdmVCZWVuQ2FsbGVkIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInN0b3AiLCJfY2FsbGVlMiIsIm9uQWJtIiwiZXZlbnQiLCJfY29udGV4dDIiLCJjYWxscyIsImRldGFpbCIsImFnZW50VmFsdWVzIiwiaW5pdGlhbFNlY3Rpb24iLCJ0b0JlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1lc3NhZ2VzL0NoYXRBSUNyZWF0ZUFnZW50QWN0aW9ucy5zcGVjLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaXJlRXZlbnQsIHJlbmRlcldpdGhQcm92aWRlcnMsIHNjcmVlbiwgd2FpdEZvciB9IGZyb20gJy4uLy4uLy4uL3Rlc3QvdGVzdC11dGlscydcbmltcG9ydCB7IGZldGNoQWdlbnREZXRhaWxBbmRQYXJzZWRGb3JBYm0gfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tYWlhL0FnZW50cy9mZXRjaEFnZW50RGV0YWlsJ1xuaW1wb3J0IHsgQ2hhdEFJQ3JlYXRlQWdlbnRBY3Rpb25zIH0gZnJvbSAnLi9DaGF0QUlDcmVhdGVBZ2VudEFjdGlvbnMnXG5cbmplc3QubW9jaygnLi4vLi4vLi4vc2VydmljZXMvbWFpYS9BZ2VudHMvZmV0Y2hBZ2VudERldGFpbCcsICgpID0+ICh7XG4gIGZldGNoQWdlbnREZXRhaWxBbmRQYXJzZWRGb3JBYm06IGplc3QuZm4oKSxcbn0pKVxuXG5qZXN0Lm1vY2soJy4uLy4uLy4uL2hvb2tzL3VzZVNuYWNrQmFyTWFuYWdlci91c2VTbmFja0Jhck1hbmFnZXInLCAoKSA9PiAoe1xuICB1c2VTbmFja0Jhck1hbmFnZXI6ICgpID0+ICh7IGhhbmRsZVNuYWNrYmFyRXJyb3I6IGplc3QuZm4oKSB9KSxcbn0pKVxuXG5jb25zdCBmZXRjaERldGFpbCA9IGZldGNoQWdlbnREZXRhaWxBbmRQYXJzZWRGb3JBYm0gYXMgamVzdC5Nb2NrZWRGdW5jdGlvbjx0eXBlb2YgZmV0Y2hBZ2VudERldGFpbEFuZFBhcnNlZEZvckFibT5cblxudHlwZSBNdWx0aUFnZW50V2luZG93ID0gV2luZG93ICYgeyBNQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTPzogYm9vbGVhbiB9XG5cbmNvbnN0IGZsYWdzID0gd2luZG93IGFzIE11bHRpQWdlbnRXaW5kb3dcblxuZGVzY3JpYmUoJ0NoYXRBSUNyZWF0ZUFnZW50QWN0aW9ucycsICgpID0+IHtcbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgZmxhZ3MuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UUyA9IHRydWVcbiAgICBmZXRjaERldGFpbC5tb2NrUmVzb2x2ZWRWYWx1ZSh7XG4gICAgICBjaGF0QWdlbnQ6IHsgaWQ6ICdhMScsIG5hbWU6ICdOdWV2bycsIGVtb2ppOiAn4pyoJywgdHlwZTogJ2N1c3RvbScgfSxcbiAgICAgIGFibVBhcnNlZDogeyBpZDogJ2ExJywgbmFtZTogJ051ZXZvJyB9LFxuICAgIH0gYXMgQXdhaXRlZDxSZXR1cm5UeXBlPHR5cGVvZiBmZXRjaEFnZW50RGV0YWlsQW5kUGFyc2VkRm9yQWJtPj4pXG4gIH0pXG5cbiAgYWZ0ZXJFYWNoKCgpID0+IHtcbiAgICBkZWxldGUgZmxhZ3MuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTX01VTFRJX0FHRU5UU1xuICB9KVxuXG4gIGl0KCdyZXR1cm5zIG51bGwgd2l0aG91dCB0aGUgbXVsdGktYWdlbnRzIGZsYWcnLCAoKSA9PiB7XG4gICAgZGVsZXRlIGZsYWdzLk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFNcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyV2l0aFByb3ZpZGVycyg8Q2hhdEFJQ3JlYXRlQWdlbnRBY3Rpb25zIGFnZW50SWQ9XCJhMVwiIC8+KVxuXG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUVtcHR5RE9NRWxlbWVudCgpXG4gIH0pXG5cbiAgaXQoJ29wZW5zIGEgbmV3IGNoYXQgd2l0aCB0aGUgY3JlYXRlZCBhZ2VudCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBvbk9wZW4gPSBqZXN0LmZuKClcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtYWlhLW9wZW4tbmV3LWNoYXQtd2l0aC1hZ2VudCcsIG9uT3BlbilcblxuICAgIHJlbmRlcldpdGhQcm92aWRlcnMoPENoYXRBSUNyZWF0ZUFnZW50QWN0aW9ucyBhZ2VudElkPVwiYTFcIiAvPilcbiAgICBmaXJlRXZlbnQuY2xpY2soc2NyZWVuLmdldEJ5Um9sZSgnYnV0dG9uJywgeyBuYW1lOiAnY2hhdC5jcmVhdGVBZ2VudEFjdGlvblN0YXJ0Q2hhdCcgfSkpXG5cbiAgICBhd2FpdCB3YWl0Rm9yKCgpID0+IHtcbiAgICAgIGV4cGVjdChmZXRjaERldGFpbCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ2ExJylcbiAgICAgIGV4cGVjdChvbk9wZW4pLnRvSGF2ZUJlZW5DYWxsZWQoKVxuICAgIH0pXG5cbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtYWlhLW9wZW4tbmV3LWNoYXQtd2l0aC1hZ2VudCcsIG9uT3BlbilcbiAgfSlcblxuICBpdCgnb3BlbnMgdGhlIEFCTSBvbiB0aGUga25vd2xlZGdlIHNlY3Rpb24nLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb25BYm0gPSBqZXN0LmZuKClcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdhYm0tYWdlbnQtbW9kYWwtc2V0LXZhbHVlcycsIG9uQWJtKVxuXG4gICAgcmVuZGVyV2l0aFByb3ZpZGVycyg8Q2hhdEFJQ3JlYXRlQWdlbnRBY3Rpb25zIGFnZW50SWQ9XCJhMVwiIC8+KVxuICAgIGZpcmVFdmVudC5jbGljayhzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6ICdjaGF0LmNyZWF0ZUFnZW50QWN0aW9uS25vd2xlZGdlJyB9KSlcblxuICAgIGF3YWl0IHdhaXRGb3IoKCkgPT4ge1xuICAgICAgZXhwZWN0KG9uQWJtKS50b0hhdmVCZWVuQ2FsbGVkKClcbiAgICB9KVxuXG4gICAgY29uc3QgZXZlbnQgPSBvbkFibS5tb2NrLmNhbGxzWzBdWzBdIGFzIEN1c3RvbUV2ZW50XG4gICAgZXhwZWN0KGV2ZW50LmRldGFpbC5hZ2VudFZhbHVlcy5pbml0aWFsU2VjdGlvbikudG9CZSgna25vd2xlZGdlJylcblxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2FibS1hZ2VudC1tb2RhbC1zZXQtdmFsdWVzJywgb25BYm0pXG4gIH0pXG59KVxuIl0sIm1hcHBpbmdzIjoiOztB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
|