@carbon/ai-chat 0.4.0-rc.2 → 0.4.0-rc.4
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/dist/es/aiChatEntry.js +220 -14
- package/dist/es/chat.AppContainer.js +6491 -0
- package/dist/es/chat.AppState.js +40 -0
- package/dist/es/{chat/shared/components/BasePanelComponent.js → chat.BasePanelComponent.js} +3 -3
- package/dist/es/{chat/shared/components/panels/BodyAndFooterPanelComponent.js → chat.BodyAndFooterPanelComponent.js} +92 -9
- package/dist/es/chat.BodyWithFooterComponent.js +140 -0
- package/dist/es/{chat/shared/components/header/BotHeader.js → chat.BotHeader.js} +7 -9
- package/dist/es/{chat/shared/components/responseTypes/carousel/Carousel.js → chat.Carousel.js} +3 -3
- package/dist/es/chat.CatastrophicError.js +381 -0
- package/dist/es/chat.Chat.js +2009 -0
- package/dist/es/chat.Disclaimer.js +553 -0
- package/dist/es/chat.Header.js +1025 -0
- package/dist/es/{chat/shared/components/util/HideComponent.js → chat.HideComponent.js} +9 -2
- package/dist/es/{types/config/HomeScreenConfig.js → chat.HomeScreenConfig.js} +1 -1
- package/dist/es/{chat/shared/components/homeScreen/HomeScreen.js → chat.HomeScreenContainer.js} +159 -14
- package/dist/es/{chat/shared/components/homeScreen/HomeScreenHeader.js → chat.HomeScreenHeader.js} +3 -3
- package/dist/es/{chat/shared/services/haa/HumanAgentServiceImpl.js → chat.HumanAgentServiceImpl.js} +215 -17
- package/dist/es/{chat/shared/components/responseTypes/iframe/IFrameComponent.js → chat.IFrameComponent.js} +4 -8
- package/dist/es/chat.IFramePanel.js +151 -0
- package/dist/es/{chat/shared/components/input/Input.js → chat.Input.js} +214 -18
- package/dist/es/{types/config/ServiceDeskConfig.js → chat.LocalMessageItem.js} +17 -1
- package/dist/es/chat.MessageTypeComponent.js +3580 -0
- package/dist/es/{types/messaging/Messages.js → chat.Messages.js} +1 -1
- package/dist/es/chat.MountChildrenOnDelay.js +97 -0
- package/dist/es/{chat/shared/components/OverlayPanel.js → chat.PageObjectId.js} +70 -4
- package/dist/es/{chat/web-components/components/markdownText/src/markdownText.scss.js → chat.RichText.js} +347 -1
- package/dist/es/chat.TourContainer.js +524 -0
- package/dist/es/{chat/languages/en.json.js → chat.VideoComponent.js} +561 -1
- package/dist/es/chat.ViewSourcePanel.js +187 -0
- package/dist/es/{chat/shared/store/actions.js → chat.actions.js} +2 -2
- package/dist/es/{chat/shared/utils/browserUtils.js → chat.browserUtils.js} +1 -1
- package/dist/es/{types/utilities/carbonTypes.js → chat.carbonTypes.js} +2 -2
- package/dist/es/{chat/web-components/components/codeElement/src/codeElement.scss.js → chat.cds-aichat-code.js} +64 -1
- package/dist/es/{chat/shared/utils/constants.js → chat.constants.js} +4 -7
- package/dist/es/{types/events/eventBusTypes.js → chat.customElement.js} +32 -1
- package/dist/es/chat.dynamic-imports.js +192 -0
- package/dist/es/{chat/shared/utils/htmlUtils.js → chat.htmlUtils.js} +16 -2
- package/dist/es/{chat/shared/utils/messageUtils.js → chat.messageUtils.js} +54 -7
- package/dist/es/{chat/shared/utils/miscUtils.js → chat.miscUtils.js} +24 -5
- package/dist/es/chat.resolvablePromise.js +315 -0
- package/dist/es/{chat/shared/store/selectors.js → chat.selectors.js} +1 -1
- package/dist/es/{chat/shared/utils/lang/stringUtils.js → chat.stringUtils.js} +2 -2
- package/dist/es/{chat/shared/hooks/useCounter.js → chat.useCounter.js} +1 -1
- package/dist/es/{chat/shared/hooks/useOnMount.js → chat.useOnMount.js} +1 -1
- package/dist/es/{chat/shared/utils/domUtils.js → chat.usePrevious.js} +47 -1
- package/dist/es/{chat/shared/utils/lang/UUIDType.js → chat.uuid.js} +15 -3
- package/dist/es/web-components/cds-aichat-container/index.js +73 -4
- package/dist/es/web-components/cds-aichat-custom-element/index.js +1 -3
- package/dist/types/aiChatEntry.d.ts +4767 -0
- package/package.json +5 -4
- package/dist/es/chat/dynamic-imports/dynamic-imports.js +0 -96
- package/dist/es/chat/react/components/AppContainer.js +0 -197
- package/dist/es/chat/react/components/UserDefinedResponsePortalsContainer.js +0 -31
- package/dist/es/chat/react/components/WriteableElementsPortalsContainer.js +0 -28
- package/dist/es/chat/react/components/chainOfThought/ChainOfThought.js +0 -20
- package/dist/es/chat/react/components/chatHeader/ChatHeaderAvatar.js +0 -20
- package/dist/es/chat/react/components/chatHeader/ChatHeaderLink.js +0 -22
- package/dist/es/chat/react/components/chatHeader/ChatHeaderMenu.js +0 -27
- package/dist/es/chat/react/components/chatHeader/ChatHeaderMenuButton.js +0 -60
- package/dist/es/chat/react/components/chatHeader/ChatHeaderMenuItem.js +0 -24
- package/dist/es/chat/react/components/chatHeader/ChatHeaderMenuItemRadioGroup.js +0 -28
- package/dist/es/chat/react/components/chatHeader/ChatHeaderOverflowMenu.js +0 -69
- package/dist/es/chat/react/components/chatHeader/ChatHeaderTitle.js +0 -22
- package/dist/es/chat/react/components/feedback/FeedbackButtonsComponent.js +0 -20
- package/dist/es/chat/react/components/feedback/FeedbackComponent.js +0 -20
- package/dist/es/chat/react/components/inlineLoading/InlineLoadingComponent.js +0 -20
- package/dist/es/chat/react/components/markdownText/MarkdownText.js +0 -20
- package/dist/es/chat/react/components/stopStreamingButton/StopStreamingButton.js +0 -20
- package/dist/es/chat/react/components/table/Table.js +0 -20
- package/dist/es/chat/shared/Chat.js +0 -115
- package/dist/es/chat/shared/ChatInstanceImpl.js +0 -360
- package/dist/es/chat/shared/chatEntryFunctions.js +0 -46
- package/dist/es/chat/shared/components/Avatar.js +0 -286
- package/dist/es/chat/shared/components/BodyWithFooterComponent.js +0 -56
- package/dist/es/chat/shared/components/CatastrophicError.js +0 -77
- package/dist/es/chat/shared/components/Chat.js +0 -244
- package/dist/es/chat/shared/components/ChatBubbleDark.js +0 -124
- package/dist/es/chat/shared/components/ChatBubbleLight.js +0 -216
- package/dist/es/chat/shared/components/Disclaimer.js +0 -86
- package/dist/es/chat/shared/components/ErrorIcon.js +0 -20
- package/dist/es/chat/shared/components/ErrorMessageDark.js +0 -89
- package/dist/es/chat/shared/components/ErrorMessageLight.js +0 -135
- package/dist/es/chat/shared/components/HydrationPanel.js +0 -58
- package/dist/es/chat/shared/components/LatestWelcomeNodes.js +0 -26
- package/dist/es/chat/shared/components/ResponseStopped.js +0 -19
- package/dist/es/chat/shared/components/SkeletonPicker.js +0 -32
- package/dist/es/chat/shared/components/WriteableElement.js +0 -22
- package/dist/es/chat/shared/components/agent/AgentAvatar.js +0 -54
- package/dist/es/chat/shared/components/agent/AgentBanner.js +0 -109
- package/dist/es/chat/shared/components/agent/AgentBannerContainer.js +0 -28
- package/dist/es/chat/shared/components/agent/AvailabilityMessage.js +0 -49
- package/dist/es/chat/shared/components/aria/AriaAnnouncerComponent.js +0 -122
- package/dist/es/chat/shared/components/aria/AriaAnnouncerProvider.js +0 -48
- package/dist/es/chat/shared/components/aria/AriaLiveMessage.js +0 -22
- package/dist/es/chat/shared/components/header/AISlug.js +0 -22
- package/dist/es/chat/shared/components/header/Header.js +0 -460
- package/dist/es/chat/shared/components/header/SimpleHeader.js +0 -27
- package/dist/es/chat/shared/components/homeScreen/HomeScreenContainer.js +0 -68
- package/dist/es/chat/shared/components/launcher/Launcher.js +0 -88
- package/dist/es/chat/shared/components/launcher/LauncherComplex.js +0 -63
- package/dist/es/chat/shared/components/launcher/LauncherContainer.js +0 -73
- package/dist/es/chat/shared/components/launcher/LauncherDesktopContainer.js +0 -221
- package/dist/es/chat/shared/components/launcher/LauncherExtended.js +0 -244
- package/dist/es/chat/shared/components/launcher/LauncherMobileContainer.js +0 -175
- package/dist/es/chat/shared/components/launcher/launcherUtils.js +0 -16
- package/dist/es/chat/shared/components/modals/ConfirmModal.js +0 -67
- package/dist/es/chat/shared/components/modals/EndAgentChatModal.js +0 -46
- package/dist/es/chat/shared/components/modals/RequestScreenShareModal.js +0 -43
- package/dist/es/chat/shared/components/notifications/Notifications.js +0 -58
- package/dist/es/chat/shared/components/panels/CustomPanel.js +0 -136
- package/dist/es/chat/shared/components/responseTypes/agent/ConnectToAgent.js +0 -30
- package/dist/es/chat/shared/components/responseTypes/agent/RealConnectToAgent.js +0 -102
- package/dist/es/chat/shared/components/responseTypes/audio/AudioComponent.js +0 -26
- package/dist/es/chat/shared/components/responseTypes/buttonItem/BaseButtonItemComponent.js +0 -69
- package/dist/es/chat/shared/components/responseTypes/buttonItem/ButtonItemComponent.js +0 -48
- package/dist/es/chat/shared/components/responseTypes/buttonItem/ButtonItemCustomEventComponent.js +0 -42
- package/dist/es/chat/shared/components/responseTypes/buttonItem/ButtonItemPostBackComponent.js +0 -54
- package/dist/es/chat/shared/components/responseTypes/buttonItem/ButtonItemShowPanelComponent.js +0 -36
- package/dist/es/chat/shared/components/responseTypes/buttonItem/ButtonItemURLComponent.js +0 -42
- package/dist/es/chat/shared/components/responseTypes/card/CardItemComponent.js +0 -34
- package/dist/es/chat/shared/components/responseTypes/carousel/CarouselItemComponent.js +0 -39
- package/dist/es/chat/shared/components/responseTypes/conversationalSearch/ConversationalSearch.js +0 -92
- package/dist/es/chat/shared/components/responseTypes/conversationalSearch/ConversationalSearchText.js +0 -158
- package/dist/es/chat/shared/components/responseTypes/custom/UserDefinedResponse.js +0 -33
- package/dist/es/chat/shared/components/responseTypes/datePicker/DatePickerComponent.js +0 -176
- package/dist/es/chat/shared/components/responseTypes/error/InlineError.js +0 -32
- package/dist/es/chat/shared/components/responseTypes/grid/GridItemComponent.js +0 -109
- package/dist/es/chat/shared/components/responseTypes/iframe/IFrameMessage.js +0 -32
- package/dist/es/chat/shared/components/responseTypes/iframe/IFramePanel.js +0 -51
- package/dist/es/chat/shared/components/responseTypes/iframe/IFramePreviewCard.js +0 -64
- package/dist/es/chat/shared/components/responseTypes/iframe/InlineIFrame.js +0 -55
- package/dist/es/chat/shared/components/responseTypes/image/Image.js +0 -120
- package/dist/es/chat/shared/components/responseTypes/options/OptionComponent.js +0 -83
- package/dist/es/chat/shared/components/responseTypes/options/SelectComponent.js +0 -84
- package/dist/es/chat/shared/components/responseTypes/table/TableContainer.js +0 -96
- package/dist/es/chat/shared/components/responseTypes/text/TextArea.js +0 -68
- package/dist/es/chat/shared/components/responseTypes/tour/TourCard.js +0 -73
- package/dist/es/chat/shared/components/responseTypes/util/BodyMessageComponents.js +0 -65
- package/dist/es/chat/shared/components/responseTypes/util/ClickableImage.js +0 -36
- package/dist/es/chat/shared/components/responseTypes/util/Description.js +0 -21
- package/dist/es/chat/shared/components/responseTypes/util/FooterButtonComponents.js +0 -36
- package/dist/es/chat/shared/components/responseTypes/util/MediaPlayer.js +0 -157
- package/dist/es/chat/shared/components/responseTypes/util/Metablock.js +0 -27
- package/dist/es/chat/shared/components/responseTypes/util/RichText.js +0 -31
- package/dist/es/chat/shared/components/responseTypes/util/SearchResultBody.js +0 -53
- package/dist/es/chat/shared/components/responseTypes/util/StreamingRichText.js +0 -38
- package/dist/es/chat/shared/components/responseTypes/util/TextHolderTile.js +0 -35
- package/dist/es/chat/shared/components/responseTypes/util/citations/CitationCard.js +0 -65
- package/dist/es/chat/shared/components/responseTypes/util/citations/CitationCardContent.js +0 -62
- package/dist/es/chat/shared/components/responseTypes/util/citations/CitationClickableCard.js +0 -23
- package/dist/es/chat/shared/components/responseTypes/util/citations/ExpandToPanelCard.js +0 -50
- package/dist/es/chat/shared/components/responseTypes/util/citations/ViewSourcePanel.js +0 -57
- package/dist/es/chat/shared/components/responseTypes/video/VideoComponent.js +0 -23
- package/dist/es/chat/shared/components/tour/TourCloseMinimizeComponent.js +0 -44
- package/dist/es/chat/shared/components/tour/TourContainer.js +0 -212
- package/dist/es/chat/shared/components/tour/TourControlsComponent.js +0 -98
- package/dist/es/chat/shared/components/tour/TourStepContentComponent.js +0 -156
- package/dist/es/chat/shared/components/tour/TourStepSkeletonComponent.js +0 -20
- package/dist/es/chat/shared/components/util/AnnounceOnMountComponent.js +0 -42
- package/dist/es/chat/shared/components/util/IconHolder.js +0 -16
- package/dist/es/chat/shared/components/util/ImageWithFallback.js +0 -31
- package/dist/es/chat/shared/components/util/MaybeDangerouslySetInnerHTML.js +0 -42
- package/dist/es/chat/shared/components/util/MountChildrenOnDelay.js +0 -40
- package/dist/es/chat/shared/components/util/VisuallyHidden.js +0 -18
- package/dist/es/chat/shared/containers/App.js +0 -181
- package/dist/es/chat/shared/containers/MessageComponent.js +0 -465
- package/dist/es/chat/shared/containers/MessageTypeComponent.js +0 -496
- package/dist/es/chat/shared/containers/MessagesComponent.js +0 -469
- package/dist/es/chat/shared/containers/ModalPortal.js +0 -53
- package/dist/es/chat/shared/containers/main/MainWindow.js +0 -708
- package/dist/es/chat/shared/contexts/AriaAnnouncerContext.js +0 -12
- package/dist/es/chat/shared/contexts/HideComponentContext.js +0 -12
- package/dist/es/chat/shared/contexts/LanguagePackContext.js +0 -12
- package/dist/es/chat/shared/contexts/ModalPortalRootContext.js +0 -12
- package/dist/es/chat/shared/contexts/ServiceManagerContext.js +0 -12
- package/dist/es/chat/shared/contexts/WindowSizeContext.js +0 -12
- package/dist/es/chat/shared/environmentVariables.js +0 -13
- package/dist/es/chat/shared/events/ChatActionsImpl.js +0 -783
- package/dist/es/chat/shared/events/EventBus.js +0 -161
- package/dist/es/chat/shared/hocs/withAriaAnnouncer.js +0 -25
- package/dist/es/chat/shared/hocs/withServiceManager.js +0 -25
- package/dist/es/chat/shared/hooks/useAriaAnnouncer.js +0 -16
- package/dist/es/chat/shared/hooks/useCSSCustomProperties.js +0 -21
- package/dist/es/chat/shared/hooks/useCallbackOnChange.js +0 -24
- package/dist/es/chat/shared/hooks/useEffectDidUpdate.js +0 -21
- package/dist/es/chat/shared/hooks/useLanguagePack.js +0 -16
- package/dist/es/chat/shared/hooks/usePrevious.js +0 -18
- package/dist/es/chat/shared/hooks/useServiceManager.js +0 -16
- package/dist/es/chat/shared/hooks/useShouldSanitizeHTML.js +0 -15
- package/dist/es/chat/shared/hooks/useUUID.js +0 -22
- package/dist/es/chat/shared/hooks/useWindowSize.js +0 -16
- package/dist/es/chat/shared/loadServices.js +0 -72
- package/dist/es/chat/shared/schema/historyToMessages.js +0 -231
- package/dist/es/chat/shared/schema/inputItemToLocalItem.js +0 -30
- package/dist/es/chat/shared/schema/outputItemToLocalItem.js +0 -124
- package/dist/es/chat/shared/services/CustomPanelInstance.js +0 -26
- package/dist/es/chat/shared/services/CustomPanelManager.js +0 -23
- package/dist/es/chat/shared/services/HistoryService.js +0 -59
- package/dist/es/chat/shared/services/MessageService.js +0 -351
- package/dist/es/chat/shared/services/NamespaceService.js +0 -26
- package/dist/es/chat/shared/services/ServiceManager.js +0 -19
- package/dist/es/chat/shared/services/UserSessionStorageService.js +0 -89
- package/dist/es/chat/shared/services/haa/agentStatusMessage.js +0 -108
- package/dist/es/chat/shared/services/haa/humanAgentUtils.js +0 -114
- package/dist/es/chat/shared/services/mockStorage.js +0 -30
- package/dist/es/chat/shared/store/agentActions.js +0 -125
- package/dist/es/chat/shared/store/agentReducers.js +0 -215
- package/dist/es/chat/shared/store/doCreateStore.js +0 -142
- package/dist/es/chat/shared/store/reducerUtils.js +0 -320
- package/dist/es/chat/shared/store/reducers.js +0 -871
- package/dist/es/chat/shared/store/subscriptions.js +0 -55
- package/dist/es/chat/shared/store/tourReducerUtils.js +0 -51
- package/dist/es/chat/shared/utils/ListenerList.js +0 -26
- package/dist/es/chat/shared/utils/PageObjectId.js +0 -25
- package/dist/es/chat/shared/utils/animationUtils.js +0 -77
- package/dist/es/chat/shared/utils/colors.js +0 -71
- package/dist/es/chat/shared/utils/customizers.js +0 -16
- package/dist/es/chat/shared/utils/dateUtils.js +0 -38
- package/dist/es/chat/shared/utils/homeScreenUtils.js +0 -27
- package/dist/es/chat/shared/utils/intlUtils.js +0 -21
- package/dist/es/chat/shared/utils/lang/arrayUtils.js +0 -53
- package/dist/es/chat/shared/utils/lang/langUtils.js +0 -13
- package/dist/es/chat/shared/utils/lang/objectUtils.js +0 -19
- package/dist/es/chat/shared/utils/lang/promiseUtils.js +0 -25
- package/dist/es/chat/shared/utils/lang/uuid.js +0 -16
- package/dist/es/chat/shared/utils/languages.js +0 -156
- package/dist/es/chat/shared/utils/memoizerUtils.js +0 -38
- package/dist/es/chat/shared/utils/messageServiceUtils.js +0 -36
- package/dist/es/chat/shared/utils/resolvablePromise.js +0 -32
- package/dist/es/chat/shared/utils/styleUtils.js +0 -231
- package/dist/es/chat/shared/utils/timeUtils.js +0 -14
- package/dist/es/chat/shared/utils/viewStateUtils.js +0 -38
- package/dist/es/chat/web-components/components/chainOfThought/cds-aichat-chain-of-thought.js +0 -26
- package/dist/es/chat/web-components/components/chainOfThought/src/ChainOfThoughtElement.js +0 -130
- package/dist/es/chat/web-components/components/chainOfThought/src/chainOfThoughtElement.scss.js +0 -3
- package/dist/es/chat/web-components/components/chainOfThought/src/chainOfThoughtElement.template.js +0 -186
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderAvatar/cds-aichat-chat-header-avatar.js +0 -26
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderAvatar/src/chatHeaderAvatar.template.js +0 -32
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderAvatar/src/chatHeaderAvatarElement.js +0 -52
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderAvatar/src/chatHeaderAvatarElement.scss.js +0 -3
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderLink/cds-aichat-chat-header-link.js +0 -44
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderLink/src/chatHeaderLinkElement.template.js +0 -28
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderTitle/cds-aichat-chat-header-title.js +0 -42
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderTitle/src/chatHeaderTitle.scss.js +0 -3
- package/dist/es/chat/web-components/components/chatHeader/chatHeaderTitle/src/chatHeaderTitle.template.js +0 -20
- package/dist/es/chat/web-components/components/codeElement/cds-aichat-code.js +0 -66
- package/dist/es/chat/web-components/components/feedbackButtonsElement/cds-aichat-feedback-buttons.js +0 -26
- package/dist/es/chat/web-components/components/feedbackButtonsElement/src/FeedbackButtonsElement.js +0 -93
- package/dist/es/chat/web-components/components/feedbackButtonsElement/src/feedbackButtonsElement.scss.js +0 -3
- package/dist/es/chat/web-components/components/feedbackButtonsElement/src/feedbackButtonsElement.template.js +0 -84
- package/dist/es/chat/web-components/components/feedbackElement/cds-aichat-feedback.js +0 -30
- package/dist/es/chat/web-components/components/feedbackElement/src/FeedbackElement.js +0 -157
- package/dist/es/chat/web-components/components/feedbackElement/src/feedbackElement.scss.js +0 -3
- package/dist/es/chat/web-components/components/feedbackElement/src/feedbackElement.template.js +0 -95
- package/dist/es/chat/web-components/components/inlineLoadingElement/cds-aichat-inline-loading.js +0 -85
- package/dist/es/chat/web-components/components/inlineLoadingElement/src/styles.scss.js +0 -3
- package/dist/es/chat/web-components/components/markdownText/cds-aichat-markdown-text.js +0 -32
- package/dist/es/chat/web-components/components/markdownText/markdown/markdownToHTML.js +0 -28
- package/dist/es/chat/web-components/components/markdownText/markdown/utils/renderTokenTree.js +0 -191
- package/dist/es/chat/web-components/components/markdownText/markdown/workers/workerManager.js +0 -16
- package/dist/es/chat/web-components/components/markdownText/src/MarkdownElement.js +0 -70
- package/dist/es/chat/web-components/components/markdownText/src/markdownElement.template.js +0 -19
- package/dist/es/chat/web-components/components/roundedButton/cds-aichat-rounded-button.js +0 -29
- package/dist/es/chat/web-components/components/stopStreamingButton/cds-aichat-stop-streaming-button.js +0 -26
- package/dist/es/chat/web-components/components/stopStreamingButton/src/StopStreamingButtonElement.js +0 -49
- package/dist/es/chat/web-components/components/stopStreamingButton/src/stopStreamingButton.scss.js +0 -3
- package/dist/es/chat/web-components/components/stopStreamingButton/src/stopStreamingButton.template.js +0 -44
- package/dist/es/chat/web-components/components/table/cds-aichat-table.js +0 -229
- package/dist/es/chat/web-components/components/table/src/table.scss.js +0 -3
- package/dist/es/chat/web-components/components/table/src/table.template.js +0 -81
- package/dist/es/chat/web-components/components/table/src/tablePagination.template.js +0 -43
- package/dist/es/chat/web-components/components/table/src/tableSkeleton.template.js +0 -17
- package/dist/es/chat/web-components/components/tagListElement/cds-aichat-tag-list.js +0 -28
- package/dist/es/chat/web-components/components/tagListElement/src/TagListElement.js +0 -70
- package/dist/es/chat/web-components/components/tagListElement/src/tagListElement.scss.js +0 -3
- package/dist/es/chat/web-components/components/tagListElement/src/tagListElement.template.js +0 -40
- package/dist/es/chat/web-components/decorators/customElement.js +0 -33
- package/dist/es/chat/web-components/internal/cds-aichat-internal.js +0 -78
- package/dist/es/chat/web-components/settings.js +0 -13
- package/dist/es/node_modules/@carbon/colors/es/index.js +0 -11
- package/dist/es/react/ChatContainer.js +0 -162
- package/dist/es/react/ChatCustomElement.js +0 -58
- package/dist/es/types/config/ChatHeaderConfig.js +0 -18
- package/dist/es/types/config/CornersType.js +0 -16
- package/dist/es/types/config/LauncherConfig.js +0 -19
- package/dist/es/types/config/PublicConfig.js +0 -36
- package/dist/es/types/instance/ChatInstance.js +0 -31
- package/dist/es/types/instance/apiTypes.js +0 -33
- package/dist/es/types/messaging/LocalMessageItem.js +0 -18
- package/dist/es/types/state/AppState.js +0 -18
- package/dist/es/types/utilities/Animation.js +0 -31
- package/dist/es/types/utilities/HasAddRemoveClassName.js +0 -27
- /package/dist/es/{chat/shared/styles/export.carbon.scss.js → chat.export.carbon.js} +0 -0
- /package/dist/es/{chat/shared/styles/export.scss.js → chat.export.js} +0 -0
- /package/dist/es/{chat/web-components/components/markdownText/markdown/utils/markdown.js → chat.markdown.js} +0 -0
- /package/dist/es/{chat/web-components/components/markdownText/markdown/utils/tokenTree.js → chat.tokenTree.js} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carbon/ai-chat",
|
|
3
|
-
"version": "0.4.0-rc.
|
|
3
|
+
"version": "0.4.0-rc.4",
|
|
4
4
|
"description": "Be sure to review the [chat documentation](https://web-chat.global.assistant.watson.cloud.ibm.com/carbon-chat.html).",
|
|
5
5
|
"author": "IBM Corp",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -23,10 +23,11 @@
|
|
|
23
23
|
"types": "./dist/types/aiChatEntry.d.ts",
|
|
24
24
|
"import": "./dist/es/web-components/cds-aichat-custom-element/index.js"
|
|
25
25
|
},
|
|
26
|
-
"./dist/es
|
|
26
|
+
"./dist/es/": "./dist/es/"
|
|
27
27
|
},
|
|
28
28
|
"files": [
|
|
29
|
-
"dist/es
|
|
29
|
+
"dist/es",
|
|
30
|
+
"dist/types"
|
|
30
31
|
],
|
|
31
32
|
"browserslist": [
|
|
32
33
|
"> 0.5%",
|
|
@@ -138,5 +139,5 @@
|
|
|
138
139
|
"url": "https://github.com/carbon-design-system/carbon-ai-chat/issues"
|
|
139
140
|
},
|
|
140
141
|
"homepage": "https://github.com/carbon-design-system/carbon-ai-chat#readme",
|
|
141
|
-
"gitHead": "
|
|
142
|
+
"gitHead": "91eaa2e0d5540d576c15024b232da381686dadae"
|
|
142
143
|
}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
* Copyright IBM Corp. 2025
|
|
5
|
-
*
|
|
6
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
7
|
-
* LICENSE file in the root directory of this source tree.
|
|
8
|
-
*
|
|
9
|
-
* @license
|
|
10
|
-
*/ async function loadHAA() {
|
|
11
|
-
const {createService: createService} = await DYNAMIC_IMPORTS.HumanAgentService();
|
|
12
|
-
return createService;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
function lazyWithPreload(factory) {
|
|
16
|
-
const Component = React.lazy(factory);
|
|
17
|
-
Component.preload = factory;
|
|
18
|
-
return Component;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const DYNAMIC_IMPORTS = {
|
|
22
|
-
Chat: () => import("../shared/components/Chat.js"),
|
|
23
|
-
CatastrophicError: () => import("../shared/components/CatastrophicError.js").then(mod => ({
|
|
24
|
-
default: mod.CatastrophicError
|
|
25
|
-
})),
|
|
26
|
-
Disclaimer: () => import("../shared/components/Disclaimer.js").then(mod => ({
|
|
27
|
-
default: mod.Disclaimer
|
|
28
|
-
})),
|
|
29
|
-
HomeScreenContainer: () => import("../shared/components/homeScreen/HomeScreenContainer.js").then(mod => ({
|
|
30
|
-
default: mod.HomeScreenContainer
|
|
31
|
-
})),
|
|
32
|
-
IFramePanel: () => import("../shared/components/responseTypes/iframe/IFramePanel.js").then(mod => ({
|
|
33
|
-
default: mod.IFramePanel
|
|
34
|
-
})),
|
|
35
|
-
ViewSourcePanel: () => import("../shared/components/responseTypes/util/citations/ViewSourcePanel.js").then(mod => ({
|
|
36
|
-
default: mod.ViewSourcePanel
|
|
37
|
-
})),
|
|
38
|
-
BodyAndFooterPanelComponent: () => import("../shared/components/panels/BodyAndFooterPanelComponent.js").then(mod => ({
|
|
39
|
-
default: mod.BodyAndFooterPanelComponent
|
|
40
|
-
})),
|
|
41
|
-
TourContainer: () => import("../shared/components/tour/TourContainer.js"),
|
|
42
|
-
Carousel: () => import("../shared/components/responseTypes/carousel/Carousel.js"),
|
|
43
|
-
MediaPlayer: () => import("react-player/lazy/index.js").then(mod => {
|
|
44
|
-
let exported = mod.default ?? mod;
|
|
45
|
-
if (exported && typeof exported === "object" && "default" in exported) {
|
|
46
|
-
exported = exported.default;
|
|
47
|
-
}
|
|
48
|
-
return {
|
|
49
|
-
default: exported
|
|
50
|
-
};
|
|
51
|
-
}),
|
|
52
|
-
AppContainer: () => import("../react/components/AppContainer.js"),
|
|
53
|
-
HumanAgentService: () => import("../shared/services/haa/HumanAgentServiceImpl.js")
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
function lazyChat() {
|
|
57
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.Chat);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
function lazyCatastrophicError() {
|
|
61
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.CatastrophicError);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
function lazyDisclaimer() {
|
|
65
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.Disclaimer);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
function lazyHomeScreenContainer() {
|
|
69
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.HomeScreenContainer);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
function lazyIFramePanel() {
|
|
73
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.IFramePanel);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
function lazyViewSourcePanel() {
|
|
77
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.ViewSourcePanel);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
function lazyBodyAndFooterPanelComponent() {
|
|
81
|
-
return lazyWithPreload(DYNAMIC_IMPORTS.BodyAndFooterPanelComponent);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
function lazyTourComponent() {
|
|
85
|
-
return React.lazy(DYNAMIC_IMPORTS.TourContainer);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
function lazyMediaPlayer() {
|
|
89
|
-
return React.lazy(DYNAMIC_IMPORTS.MediaPlayer);
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
function lazyCarousel() {
|
|
93
|
-
return React.lazy(DYNAMIC_IMPORTS.Carousel);
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
export { DYNAMIC_IMPORTS, lazyBodyAndFooterPanelComponent, lazyCarousel, lazyCatastrophicError, lazyChat, lazyDisclaimer, lazyHomeScreenContainer, lazyIFramePanel, lazyMediaPlayer, lazyTourComponent, lazyViewSourcePanel, loadHAA };
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
import isEqual from "lodash-es/isEqual.js";
|
|
2
|
-
|
|
3
|
-
import React, { useState, useRef, useEffect } from "react";
|
|
4
|
-
|
|
5
|
-
import Chat from "../../shared/Chat.js";
|
|
6
|
-
|
|
7
|
-
import { instantiateWidget } from "../../shared/chatEntryFunctions.js";
|
|
8
|
-
|
|
9
|
-
import App from "../../shared/containers/App.js";
|
|
10
|
-
|
|
11
|
-
import { sleep } from "../../shared/utils/lang/promiseUtils.js";
|
|
12
|
-
|
|
13
|
-
import { UserDefinedResponsePortalsContainer as UserDefinedResponsePortalsContainerExport } from "./UserDefinedResponsePortalsContainer.js";
|
|
14
|
-
|
|
15
|
-
import { WriteableElementsPortalsContainer as WriteableElementsPortalsContainerExport } from "./WriteableElementsPortalsContainer.js";
|
|
16
|
-
|
|
17
|
-
import { BusEventType } from "../../../types/events/eventBusTypes.js";
|
|
18
|
-
|
|
19
|
-
/*
|
|
20
|
-
* Copyright IBM Corp. 2025
|
|
21
|
-
*
|
|
22
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
23
|
-
* LICENSE file in the root directory of this source tree.
|
|
24
|
-
*
|
|
25
|
-
* @license
|
|
26
|
-
*/ function AppContainer({config: config, onBeforeRender: onBeforeRender, onAfterRender: onAfterRender, renderUserDefinedResponse: renderUserDefinedResponse, renderWriteableElements: renderWriteableElements, container: container, setParentInstance: setParentInstance, element: element}) {
|
|
27
|
-
const [instance, setInstance] = useState(null);
|
|
28
|
-
const [renderProps, setRenderProps] = useState(null);
|
|
29
|
-
const [applicationStyles, setApplicationStyles] = useState(null);
|
|
30
|
-
const setInstances = instance => {
|
|
31
|
-
setInstance(instance);
|
|
32
|
-
setParentInstance?.(instance);
|
|
33
|
-
};
|
|
34
|
-
const [userDefinedResponseEventsBySlot, setUserDefinedResponseEventsBySlot] = useState({});
|
|
35
|
-
const managedWebChatRef = useRef(null);
|
|
36
|
-
const previousConfigRef = useRef(null);
|
|
37
|
-
useEffect(() => {
|
|
38
|
-
const previousConfig = previousConfigRef.current;
|
|
39
|
-
previousConfigRef.current = config;
|
|
40
|
-
async function render({serviceManager: serviceManager}) {
|
|
41
|
-
const applicationStyles = await loadStyles();
|
|
42
|
-
serviceManager.container = container;
|
|
43
|
-
if (serviceManager.customHostElement) {
|
|
44
|
-
container.style.setProperty("width", "100%", "important");
|
|
45
|
-
container.style.setProperty("height", "100%", "important");
|
|
46
|
-
} else {
|
|
47
|
-
container.style.setProperty("width", "0", "important");
|
|
48
|
-
container.style.setProperty("height", "0", "important");
|
|
49
|
-
}
|
|
50
|
-
setApplicationStyles(applicationStyles);
|
|
51
|
-
setRenderProps({
|
|
52
|
-
serviceManager: serviceManager
|
|
53
|
-
});
|
|
54
|
-
await sleep(0);
|
|
55
|
-
}
|
|
56
|
-
if (!isEqual(previousConfig, config)) {
|
|
57
|
-
const managedWebChat = {
|
|
58
|
-
instance: null,
|
|
59
|
-
shouldDestroy: false,
|
|
60
|
-
config: config
|
|
61
|
-
};
|
|
62
|
-
if (config) {
|
|
63
|
-
loadChat({
|
|
64
|
-
managedWebChatRef: managedWebChatRef,
|
|
65
|
-
managedWebChat: managedWebChat,
|
|
66
|
-
render: render,
|
|
67
|
-
setInstance: setInstances,
|
|
68
|
-
onBeforeRender: onBeforeRender,
|
|
69
|
-
onAfterRender: onAfterRender,
|
|
70
|
-
setUserDefinedResponseEventsBySlot: setUserDefinedResponseEventsBySlot,
|
|
71
|
-
element: element
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
return () => {
|
|
75
|
-
destroyWebChat(managedWebChat, setInstances);
|
|
76
|
-
previousConfigRef.current = null;
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
return undefined;
|
|
80
|
-
}, [ config, container ]);
|
|
81
|
-
if (renderProps && instance) {
|
|
82
|
-
return React.createElement(React.Fragment, null, React.createElement(App, {
|
|
83
|
-
serviceManager: renderProps.serviceManager,
|
|
84
|
-
hostElement: renderProps.serviceManager.customHostElement,
|
|
85
|
-
applicationStyles: applicationStyles
|
|
86
|
-
}), renderUserDefinedResponse && React.createElement(UserDefinedResponsePortalsContainerExport, {
|
|
87
|
-
chatInstance: instance,
|
|
88
|
-
renderUserDefinedResponse: renderUserDefinedResponse,
|
|
89
|
-
userDefinedResponseEventsBySlot: userDefinedResponseEventsBySlot
|
|
90
|
-
}), renderWriteableElements && React.createElement(WriteableElementsPortalsContainerExport, {
|
|
91
|
-
chatInstance: instance,
|
|
92
|
-
renderResponseMap: renderWriteableElements
|
|
93
|
-
}));
|
|
94
|
-
}
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
async function destroyWebChat(managedWebChat, setInstance) {
|
|
99
|
-
if (managedWebChat) {
|
|
100
|
-
if (managedWebChat.instance) {
|
|
101
|
-
managedWebChat.instance.destroy();
|
|
102
|
-
await sleep(0);
|
|
103
|
-
}
|
|
104
|
-
managedWebChat.shouldDestroy = true;
|
|
105
|
-
managedWebChat.instance = null;
|
|
106
|
-
}
|
|
107
|
-
setInstance(null);
|
|
108
|
-
await sleep(0);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
function addUserDefinedResponseHandler(webChatInstance, setUserDefinedResponseEventsBySlot) {
|
|
112
|
-
function userDefinedResponseHandler(event) {
|
|
113
|
-
setUserDefinedResponseEventsBySlot(userDefinedEventsBySlot => ({
|
|
114
|
-
...userDefinedEventsBySlot,
|
|
115
|
-
[event.data.slot]: {
|
|
116
|
-
fullMessage: event.data.fullMessage,
|
|
117
|
-
messageItem: event.data.message,
|
|
118
|
-
element: event.data.element
|
|
119
|
-
}
|
|
120
|
-
}));
|
|
121
|
-
}
|
|
122
|
-
function userDefinedChunkHandler(event) {
|
|
123
|
-
if ("complete_item" in event.data.chunk) {
|
|
124
|
-
const messageItem = event.data.chunk.complete_item;
|
|
125
|
-
setUserDefinedResponseEventsBySlot(userDefinedEventsBySlot => ({
|
|
126
|
-
...userDefinedEventsBySlot,
|
|
127
|
-
[event.data.slot]: {
|
|
128
|
-
messageItem: messageItem,
|
|
129
|
-
element: event.data.element
|
|
130
|
-
}
|
|
131
|
-
}));
|
|
132
|
-
} else if ("partial_item" in event.data.chunk) {
|
|
133
|
-
const itemChunk = event.data.chunk.partial_item;
|
|
134
|
-
setUserDefinedResponseEventsBySlot(userDefinedEventsBySlot => ({
|
|
135
|
-
...userDefinedEventsBySlot,
|
|
136
|
-
[event.data.slot]: {
|
|
137
|
-
partialItems: [ ...userDefinedEventsBySlot[event.data.slot]?.partialItems || [], itemChunk ],
|
|
138
|
-
element: event.data.element
|
|
139
|
-
}
|
|
140
|
-
}));
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
function restartHandler() {
|
|
144
|
-
setUserDefinedResponseEventsBySlot({});
|
|
145
|
-
}
|
|
146
|
-
webChatInstance.on({
|
|
147
|
-
type: BusEventType.CHUNK_USER_DEFINED_RESPONSE,
|
|
148
|
-
handler: userDefinedChunkHandler
|
|
149
|
-
});
|
|
150
|
-
webChatInstance.on({
|
|
151
|
-
type: BusEventType.USER_DEFINED_RESPONSE,
|
|
152
|
-
handler: userDefinedResponseHandler
|
|
153
|
-
});
|
|
154
|
-
webChatInstance.on({
|
|
155
|
-
type: BusEventType.RESTART_CONVERSATION,
|
|
156
|
-
handler: restartHandler
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
async function loadChat({managedWebChatRef: managedWebChatRef, managedWebChat: managedWebChat, render: render, setInstance: setInstance, onBeforeRender: onBeforeRender, onAfterRender: onAfterRender, setUserDefinedResponseEventsBySlot: setUserDefinedResponseEventsBySlot, element: element}) {
|
|
161
|
-
await destroyWebChat(managedWebChatRef.current, setInstance);
|
|
162
|
-
managedWebChatRef.current = managedWebChat;
|
|
163
|
-
if (managedWebChat.shouldDestroy) {
|
|
164
|
-
await destroyWebChat(managedWebChat, setInstance);
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
const widget = await instantiateWidget(managedWebChat.config, () => Promise.resolve(Chat), Promise.resolve(render), element);
|
|
168
|
-
const instance = await widget.start();
|
|
169
|
-
addUserDefinedResponseHandler(instance, setUserDefinedResponseEventsBySlot);
|
|
170
|
-
onBeforeRender?.(instance);
|
|
171
|
-
await instance.render();
|
|
172
|
-
onAfterRender?.(instance);
|
|
173
|
-
setInstance(instance);
|
|
174
|
-
managedWebChat.instance = instance;
|
|
175
|
-
if (managedWebChat.shouldDestroy) {
|
|
176
|
-
await destroyWebChat(managedWebChat, setInstance);
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
const AppContainerExport = React.memo(AppContainer);
|
|
181
|
-
|
|
182
|
-
const loadBaseStyles = async () => {
|
|
183
|
-
const {default: styles} = await import("../../shared/styles/export.scss.js");
|
|
184
|
-
return styles;
|
|
185
|
-
};
|
|
186
|
-
|
|
187
|
-
const loadCarbon = async () => {
|
|
188
|
-
const {default: carbon} = await import("../../shared/styles/export.carbon.scss.js");
|
|
189
|
-
return carbon;
|
|
190
|
-
};
|
|
191
|
-
|
|
192
|
-
async function loadStyles() {
|
|
193
|
-
const [styles, carbonStyles] = await Promise.all([ loadBaseStyles(), loadCarbon() ]);
|
|
194
|
-
return carbonStyles + styles;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
export { AppContainerExport as AppContainer };
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
|
|
3
|
-
import ReactDOM from "react-dom";
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
* Copyright IBM Corp. 2025
|
|
7
|
-
*
|
|
8
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
9
|
-
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*
|
|
11
|
-
* @license
|
|
12
|
-
*/ function UserDefinedResponsePortalsContainer({chatInstance: chatInstance, renderUserDefinedResponse: renderUserDefinedResponse, userDefinedResponseEventsBySlot: userDefinedResponseEventsBySlot}) {
|
|
13
|
-
return renderUserDefinedResponse ? Object.entries(userDefinedResponseEventsBySlot).map(([slot, slotState]) => {
|
|
14
|
-
const {element: element} = slotState;
|
|
15
|
-
if (!element) {
|
|
16
|
-
return null;
|
|
17
|
-
}
|
|
18
|
-
return React.createElement(UserDefinedResponseComponentPortal, {
|
|
19
|
-
key: slot,
|
|
20
|
-
hostElement: element
|
|
21
|
-
}, renderUserDefinedResponse(slotState, chatInstance));
|
|
22
|
-
}) : null;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
function UserDefinedResponseComponentPortal({hostElement: hostElement, children: children}) {
|
|
26
|
-
return ReactDOM.createPortal(children, hostElement);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const UserDefinedResponsePortalsContainerExport = React.memo(UserDefinedResponsePortalsContainer);
|
|
30
|
-
|
|
31
|
-
export { UserDefinedResponsePortalsContainerExport as UserDefinedResponsePortalsContainer };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
|
|
3
|
-
import ReactDOM from "react-dom";
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
* Copyright IBM Corp. 2025
|
|
7
|
-
*
|
|
8
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
9
|
-
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*
|
|
11
|
-
* @license
|
|
12
|
-
*/ function WriteableElementsPortalsContainer({chatInstance: chatInstance, renderResponseMap: renderResponseMap}) {
|
|
13
|
-
return React.createElement(React.Fragment, null, Object.keys(chatInstance.writeableElements).map(key => {
|
|
14
|
-
const responseItem = renderResponseMap[key];
|
|
15
|
-
return responseItem ? React.createElement(WriteableElementsComponentPortal, {
|
|
16
|
-
key: key,
|
|
17
|
-
hostElement: chatInstance.writeableElements[key]
|
|
18
|
-
}, responseItem) : null;
|
|
19
|
-
}));
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
function WriteableElementsComponentPortal({hostElement: hostElement, children: children}) {
|
|
23
|
-
return ReactDOM.createPortal(children, hostElement);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const WriteableElementsPortalsContainerExport = React.memo(WriteableElementsPortalsContainer);
|
|
27
|
-
|
|
28
|
-
export { WriteableElementsPortalsContainerExport as WriteableElementsPortalsContainer };
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { createComponent } from "@lit/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
import CDSChatChainOfThoughtElement, { CHAIN_OF_THOUGHT_COMPONENT_TAG_NAME } from "../../../web-components/components/chainOfThought/cds-aichat-chain-of-thought.js";
|
|
6
|
-
|
|
7
|
-
/*
|
|
8
|
-
* Copyright IBM Corp. 2025
|
|
9
|
-
*
|
|
10
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
11
|
-
* LICENSE file in the root directory of this source tree.
|
|
12
|
-
*
|
|
13
|
-
* @license
|
|
14
|
-
*/ const ChainOfThought = createComponent({
|
|
15
|
-
tagName: CHAIN_OF_THOUGHT_COMPONENT_TAG_NAME,
|
|
16
|
-
elementClass: CDSChatChainOfThoughtElement,
|
|
17
|
-
react: React
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
export { ChainOfThought };
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { createComponent } from "@lit/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
import CDSChatHeaderAvatarElement, { CHAT_HEADER_AVATAR_TAG_NAME } from "../../../web-components/components/chatHeader/chatHeaderAvatar/cds-aichat-chat-header-avatar.js";
|
|
6
|
-
|
|
7
|
-
/*
|
|
8
|
-
* Copyright IBM Corp. 2025
|
|
9
|
-
*
|
|
10
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
11
|
-
* LICENSE file in the root directory of this source tree.
|
|
12
|
-
*
|
|
13
|
-
* @license
|
|
14
|
-
*/ const ChatHeaderAvatar = createComponent({
|
|
15
|
-
tagName: CHAT_HEADER_AVATAR_TAG_NAME,
|
|
16
|
-
elementClass: CDSChatHeaderAvatarElement,
|
|
17
|
-
react: React
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
export { ChatHeaderAvatar };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { createComponent } from "@lit/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
import { ChatHeaderLinkElement } from "../../../web-components/components/chatHeader/chatHeaderLink/cds-aichat-chat-header-link.js";
|
|
6
|
-
|
|
7
|
-
import { WEB_COMPONENT_PREFIX } from "../../../web-components/settings.js";
|
|
8
|
-
|
|
9
|
-
/*
|
|
10
|
-
* Copyright IBM Corp. 2025
|
|
11
|
-
*
|
|
12
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
13
|
-
* LICENSE file in the root directory of this source tree.
|
|
14
|
-
*
|
|
15
|
-
* @license
|
|
16
|
-
*/ const ChatHeaderLink = createComponent({
|
|
17
|
-
tagName: `${WEB_COMPONENT_PREFIX}-chat-header-link`,
|
|
18
|
-
elementClass: ChatHeaderLinkElement,
|
|
19
|
-
react: React
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
export { ChatHeaderLink };
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Menu } from "@carbon/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
* Copyright IBM Corp. 2025
|
|
7
|
-
*
|
|
8
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
9
|
-
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*
|
|
11
|
-
* @license
|
|
12
|
-
*/ function ChatHeaderMenu({id: id, className: className, label: label, isOpen: isOpen, target: target, children: children, menuAlignment: menuAlignment, containerRef: containerRef}) {
|
|
13
|
-
return React.createElement(Menu, {
|
|
14
|
-
id: id,
|
|
15
|
-
className: className,
|
|
16
|
-
open: isOpen,
|
|
17
|
-
target: target,
|
|
18
|
-
label: label,
|
|
19
|
-
size: "md",
|
|
20
|
-
menuAlignment: menuAlignment,
|
|
21
|
-
mode: "full",
|
|
22
|
-
legacyAutoalign: false,
|
|
23
|
-
containerRef: containerRef
|
|
24
|
-
}, children);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export { ChatHeaderMenu };
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import ChevronDown from "@carbon/icons-react/es/ChevronDown.js";
|
|
2
|
-
|
|
3
|
-
import ChevronUp from "@carbon/icons-react/es/ChevronUp.js";
|
|
4
|
-
|
|
5
|
-
import { Button } from "@carbon/react";
|
|
6
|
-
|
|
7
|
-
import { useFloating, useInteractions, useClick, useDismiss } from "@floating-ui/react";
|
|
8
|
-
|
|
9
|
-
import React, { useState } from "react";
|
|
10
|
-
|
|
11
|
-
import { useUUID } from "../../../shared/hooks/useUUID.js";
|
|
12
|
-
|
|
13
|
-
import { ChatHeaderMenu } from "./ChatHeaderMenu.js";
|
|
14
|
-
|
|
15
|
-
import { ButtonKindEnum, ButtonSizeEnum } from "../../../../types/utilities/carbonTypes.js";
|
|
16
|
-
|
|
17
|
-
/*
|
|
18
|
-
* Copyright IBM Corp. 2025
|
|
19
|
-
*
|
|
20
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
21
|
-
* LICENSE file in the root directory of this source tree.
|
|
22
|
-
*
|
|
23
|
-
* @license
|
|
24
|
-
*/ function ChatHeaderMenuButton(props) {
|
|
25
|
-
const [isOpen, setIsOpen] = useState(false);
|
|
26
|
-
const {refs: menuRefs, context: menuContext} = useFloating({
|
|
27
|
-
open: isOpen,
|
|
28
|
-
onOpenChange: setIsOpen
|
|
29
|
-
});
|
|
30
|
-
const {getReferenceProps: getMenuReferenceProps, getFloatingProps: getMenuFloatingProps} = useInteractions([ useClick(menuContext), useDismiss(menuContext) ]);
|
|
31
|
-
const id = useUUID();
|
|
32
|
-
return React.createElement("div", {
|
|
33
|
-
ref: menuRefs.setReference,
|
|
34
|
-
"aria-owns": id,
|
|
35
|
-
...getMenuReferenceProps()
|
|
36
|
-
}, React.createElement(Button, {
|
|
37
|
-
size: ButtonSizeEnum.MEDIUM,
|
|
38
|
-
kind: ButtonKindEnum.GHOST,
|
|
39
|
-
onClick: () => setIsOpen(!isOpen),
|
|
40
|
-
renderIcon: isOpen ? ChevronUp : ChevronDown,
|
|
41
|
-
onMouseDown: event => event.preventDefault(),
|
|
42
|
-
"aria-label": props.ariaLabel,
|
|
43
|
-
"aria-haspopup": true,
|
|
44
|
-
"aria-expanded": isOpen,
|
|
45
|
-
"aria-controls": id
|
|
46
|
-
}, props.label), React.createElement(ChatHeaderMenu, {
|
|
47
|
-
id: id,
|
|
48
|
-
isOpen: isOpen,
|
|
49
|
-
target: menuRefs.floating.current,
|
|
50
|
-
label: props.label,
|
|
51
|
-
containerRef: props.containerRef,
|
|
52
|
-
menuAlignment: props.menuAlignment
|
|
53
|
-
}, props.children), React.createElement("div", {
|
|
54
|
-
ref: menuRefs.setFloating,
|
|
55
|
-
className: "WAChatHeaderMenuButton_HostElement",
|
|
56
|
-
...getMenuFloatingProps()
|
|
57
|
-
}));
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
export { ChatHeaderMenuButton };
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { MenuItem } from "@carbon/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
* Copyright IBM Corp. 2025
|
|
7
|
-
*
|
|
8
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
9
|
-
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*
|
|
11
|
-
* @license
|
|
12
|
-
*/ function ChatHeaderMenuItem({label: label, url: url, isNewTab: isNewTab = true, onClick: onClick, children: children}) {
|
|
13
|
-
return React.createElement(MenuItem, {
|
|
14
|
-
label: label,
|
|
15
|
-
onClick: () => {
|
|
16
|
-
onClick?.();
|
|
17
|
-
if (url) {
|
|
18
|
-
window.open(url, isNewTab ? "_blank" : "_self");
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}, children);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export { ChatHeaderMenuItem };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { MenuItemRadioGroup } from "@carbon/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
* Copyright IBM Corp. 2025
|
|
7
|
-
*
|
|
8
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
9
|
-
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*
|
|
11
|
-
* @license
|
|
12
|
-
*/ function ChatHeaderMenuItemRadioGroup(props) {
|
|
13
|
-
const {label: label, items: items, defaultSelectedItem: defaultSelectedItem, selectedItem: selectedItem, onChange: onChange} = props;
|
|
14
|
-
return React.createElement(MenuItemRadioGroup, {
|
|
15
|
-
label: label,
|
|
16
|
-
items: items,
|
|
17
|
-
defaultSelectedItem: defaultSelectedItem,
|
|
18
|
-
selectedItem: selectedItem,
|
|
19
|
-
onChange: selectedItem => {
|
|
20
|
-
if (!selectedItem.preventDefault) {
|
|
21
|
-
onChange(selectedItem);
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
itemToString: menuItem => typeof menuItem === "string" ? menuItem : menuItem.label || menuItem.value
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export { ChatHeaderMenuItemRadioGroup };
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { Button } from "@carbon/react";
|
|
2
|
-
|
|
3
|
-
import { useFloating, useInteractions, useClick, useDismiss } from "@floating-ui/react";
|
|
4
|
-
|
|
5
|
-
import cx from "classnames";
|
|
6
|
-
|
|
7
|
-
import React, { useState } from "react";
|
|
8
|
-
|
|
9
|
-
import { useUUID } from "../../../shared/hooks/useUUID.js";
|
|
10
|
-
|
|
11
|
-
import { ChatHeaderMenu } from "./ChatHeaderMenu.js";
|
|
12
|
-
|
|
13
|
-
import { ButtonKindEnum, ButtonSizeEnum } from "../../../../types/utilities/carbonTypes.js";
|
|
14
|
-
|
|
15
|
-
/*
|
|
16
|
-
* Copyright IBM Corp. 2025
|
|
17
|
-
*
|
|
18
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
19
|
-
* LICENSE file in the root directory of this source tree.
|
|
20
|
-
*
|
|
21
|
-
* @license
|
|
22
|
-
*/ function ChatHeaderOverflowMenu(props) {
|
|
23
|
-
const [isOpen, setIsOpen] = useState(false);
|
|
24
|
-
const {refs: menuRefs, context: menuContext} = useFloating({
|
|
25
|
-
open: isOpen,
|
|
26
|
-
onOpenChange: isOpen => {
|
|
27
|
-
setIsOpen(isOpen);
|
|
28
|
-
if (isOpen) {
|
|
29
|
-
props.onOpen?.();
|
|
30
|
-
} else {
|
|
31
|
-
props.onClose?.();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
const {getReferenceProps: getMenuReferenceProps, getFloatingProps: getMenuFloatingProps} = useInteractions([ useClick(menuContext), useDismiss(menuContext) ]);
|
|
36
|
-
const id = useUUID();
|
|
37
|
-
return React.createElement("div", {
|
|
38
|
-
ref: menuRefs.setReference,
|
|
39
|
-
"aria-owns": id,
|
|
40
|
-
...getMenuReferenceProps()
|
|
41
|
-
}, React.createElement(Button, {
|
|
42
|
-
className: cx("WACChatHeaderOverflowMenu__Button", props.className),
|
|
43
|
-
size: ButtonSizeEnum.MEDIUM,
|
|
44
|
-
kind: ButtonKindEnum.GHOST,
|
|
45
|
-
onClick: () => setIsOpen(!isOpen),
|
|
46
|
-
tooltipPosition: props.tooltipPosition,
|
|
47
|
-
renderIcon: props.renderIcon,
|
|
48
|
-
onMouseDown: event => event.preventDefault(),
|
|
49
|
-
iconDescription: props.iconDescription,
|
|
50
|
-
hasIconOnly: true,
|
|
51
|
-
"aria-label": props.ariaLabel,
|
|
52
|
-
"aria-haspopup": true,
|
|
53
|
-
"aria-expanded": isOpen,
|
|
54
|
-
"aria-controls": id
|
|
55
|
-
}), React.createElement(ChatHeaderMenu, {
|
|
56
|
-
id: id,
|
|
57
|
-
label: props.ariaLabel,
|
|
58
|
-
isOpen: isOpen,
|
|
59
|
-
target: menuRefs.floating.current,
|
|
60
|
-
containerRef: props.containerRef,
|
|
61
|
-
menuAlignment: props.menuAlignment
|
|
62
|
-
}, props.children), React.createElement("div", {
|
|
63
|
-
ref: menuRefs.setFloating,
|
|
64
|
-
className: "WACChatHeaderOverflowMenu__HostElement",
|
|
65
|
-
...getMenuFloatingProps()
|
|
66
|
-
}));
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
export { ChatHeaderOverflowMenu };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { createComponent } from "@lit/react";
|
|
2
|
-
|
|
3
|
-
import React from "react";
|
|
4
|
-
|
|
5
|
-
import { ChatHeaderTitleElement } from "../../../web-components/components/chatHeader/chatHeaderTitle/cds-aichat-chat-header-title.js";
|
|
6
|
-
|
|
7
|
-
import { WEB_COMPONENT_PREFIX } from "../../../web-components/settings.js";
|
|
8
|
-
|
|
9
|
-
/*
|
|
10
|
-
* Copyright IBM Corp. 2025
|
|
11
|
-
*
|
|
12
|
-
* This source code is licensed under the Apache-2.0 license found in the
|
|
13
|
-
* LICENSE file in the root directory of this source tree.
|
|
14
|
-
*
|
|
15
|
-
* @license
|
|
16
|
-
*/ const ChatHeaderTitle = createComponent({
|
|
17
|
-
tagName: `${WEB_COMPONENT_PREFIX}-chat-header-title`,
|
|
18
|
-
elementClass: ChatHeaderTitleElement,
|
|
19
|
-
react: React
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
export { ChatHeaderTitle };
|