botframework-webchat-component 4.18.0 → 4.18.1-hotfix.20260127.b53acdf
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/decorator.js +3 -0
- package/dist/botframework-webchat-component.d.mts +1044 -462
- package/{lib/Styles/createStyleSet.d.ts → dist/botframework-webchat-component.d.ts} +1380 -263
- package/dist/botframework-webchat-component.decorator.css +3 -0
- package/dist/botframework-webchat-component.decorator.css.map +1 -0
- package/dist/botframework-webchat-component.decorator.d.mts +9 -0
- package/dist/botframework-webchat-component.decorator.d.ts +9 -0
- package/dist/botframework-webchat-component.decorator.js +3 -0
- package/dist/botframework-webchat-component.decorator.js.LEGAL.txt +1 -0
- package/dist/botframework-webchat-component.decorator.js.map +1 -0
- package/dist/botframework-webchat-component.decorator.mjs +3 -0
- package/dist/botframework-webchat-component.decorator.mjs.LEGAL.txt +1 -0
- package/dist/botframework-webchat-component.decorator.mjs.map +1 -0
- package/dist/botframework-webchat-component.internal.d.mts +28 -3
- package/dist/botframework-webchat-component.internal.d.ts +30 -0
- package/dist/botframework-webchat-component.internal.js +3 -0
- package/dist/botframework-webchat-component.internal.js.LEGAL.txt +0 -0
- package/dist/botframework-webchat-component.internal.js.map +1 -0
- package/dist/botframework-webchat-component.internal.mjs +1 -1
- package/dist/botframework-webchat-component.js +33 -0
- package/dist/botframework-webchat-component.js.LEGAL.txt +0 -0
- package/dist/botframework-webchat-component.js.map +1 -0
- package/dist/botframework-webchat-component.mjs +29 -8
- package/dist/botframework-webchat-component.mjs.map +1 -1
- package/dist/chunk-2PXHDPNQ.js +3 -0
- package/dist/chunk-2PXHDPNQ.js.LEGAL.txt +0 -0
- package/dist/chunk-2PXHDPNQ.js.map +1 -0
- package/dist/chunk-HZWWJL43.mjs +3 -0
- package/dist/chunk-HZWWJL43.mjs.LEGAL.txt +0 -0
- package/dist/chunk-HZWWJL43.mjs.map +1 -0
- package/dist/chunk-O4CKKYSK.js +3 -0
- package/dist/chunk-O4CKKYSK.js.LEGAL.txt +2 -0
- package/dist/chunk-O4CKKYSK.js.map +1 -0
- package/dist/chunk-Q5KJQWAB.mjs +3 -0
- package/dist/chunk-Q5KJQWAB.mjs.LEGAL.txt +0 -0
- package/dist/chunk-Q5KJQWAB.mjs.map +1 -0
- package/dist/chunk-TTVXUQC5.mjs +3 -0
- package/dist/chunk-TTVXUQC5.mjs.LEGAL.txt +2 -0
- package/dist/chunk-TTVXUQC5.mjs.map +1 -0
- package/dist/chunk-XOE3AOSM.js +3 -0
- package/dist/chunk-XOE3AOSM.js.LEGAL.txt +0 -0
- package/dist/chunk-XOE3AOSM.js.map +1 -0
- package/dist/metafile-cjs.json +1 -0
- package/dist/metafile-esm.json +1 -1
- package/internal.js +1 -1
- package/package.json +58 -49
- package/src/Activity/Avatar.tsx +19 -22
- package/src/Activity/Bubble.tsx +30 -32
- package/src/Activity/CarouselFilmStrip.js +2 -2
- package/src/Activity/CarouselLayout.js +11 -3
- package/src/Activity/SayAlt.tsx +30 -0
- package/src/Activity/Speak.tsx +66 -35
- package/src/Activity/StackedLayout.tsx +34 -68
- package/src/ActivityFeedback/ActivityFeedback.tsx +27 -0
- package/src/ActivityFeedback/private/FeedbackForm.tsx +88 -0
- package/src/ActivityFeedback/private/FeedbackLoopWithMessage.tsx +29 -0
- package/src/ActivityFeedback/private/FeedbackLoopWithoutMessage.tsx +8 -0
- package/src/ActivityFeedback/private/FeedbackTextArea.tsx +122 -0
- package/src/ActivityFeedback/private/FeedbackVoteButton.tsx +63 -0
- package/src/ActivityFeedback/private/FeedbackVoteButtonBar.tsx +25 -0
- package/src/{ActivityStatus/private/Feedback → ActivityFeedback}/private/ThumbButton.Image.tsx +4 -4
- package/src/{ActivityStatus/private/Feedback → ActivityFeedback}/private/ThumbButton.tsx +21 -8
- package/src/ActivityFeedback/private/getDisclaimer.ts +6 -0
- package/src/ActivityFeedback/private/hasFeedbackLoop.ts +36 -0
- package/src/ActivityFeedback/providers/ActivityFeedbackComposer.tsx +302 -0
- package/src/ActivityFeedback/providers/private/ActivityFeedbackContext.ts +23 -0
- package/src/ActivityFeedback/providers/private/useActivityFeedbackContext.ts +6 -0
- package/src/ActivityFeedback/providers/useActions.ts +6 -0
- package/src/ActivityFeedback/providers/useActivity.ts +6 -0
- package/src/ActivityFeedback/providers/useHasSubmitted.ts +5 -0
- package/src/ActivityFeedback/providers/useSelectedAction.ts +6 -0
- package/src/ActivityFeedback/providers/useShouldAllowResubmit.ts +5 -0
- package/src/ActivityFeedback/providers/useShouldShowFeedbackForm.ts +5 -0
- package/src/ActivityFeedback/providers/useSubmitCallback.ts +6 -0
- package/src/ActivityStatus/OthersActivityStatus.tsx +25 -36
- package/src/ActivityStatus/SelfActivityStatus.tsx +6 -5
- package/src/ActivityStatus/SendStatus/SendStatus.tsx +20 -21
- package/src/ActivityStatus/StatusSlot.tsx +12 -0
- package/src/ActivityStatus/Timestamp.tsx +17 -12
- package/src/Assets/TypingAnimation.js +3 -1
- package/src/Attachment/Assets/DownloadIcon.tsx +35 -0
- package/src/Attachment/AudioContent.tsx +20 -29
- package/src/Attachment/FileContent.tsx +40 -44
- package/src/Attachment/HTMLVideoContent.tsx +21 -27
- package/src/Attachment/ImageContent.tsx +13 -27
- package/src/Attachment/Text/TextAttachment.tsx +38 -14
- package/src/Attachment/Text/TextContent.tsx +49 -16
- package/src/Attachment/Text/private/ActivityButton.tsx +72 -0
- package/src/Attachment/Text/private/ActivityCopyButton.tsx +114 -0
- package/src/Attachment/Text/private/ActivityViewCodeButton.tsx +67 -0
- package/src/Attachment/Text/private/CitationModalContent.tsx +21 -11
- package/src/Attachment/Text/private/CodeContent.tsx +41 -0
- package/src/Attachment/Text/private/MarkdownTextContent.tsx +47 -11
- package/src/Attachment/Text/private/Markdownable.tsx +33 -0
- package/src/Attachment/Text/private/MessageSensitivityLabel.tsx +37 -29
- package/src/Attachment/Text/private/PlainTextContent.tsx +26 -7
- package/src/Attachment/Text/private/ShieldIcon.tsx +52 -34
- package/src/Attachment/Text/private/isAIGeneratedActivity.ts +5 -0
- package/src/Attachment/Text/private/isBasedOnSoftwareSourceCode.ts +18 -0
- package/src/Attachment/VideoAttachment.js +1 -1
- package/src/Attachment/VideoContent.tsx +21 -27
- package/src/Attachment/VimeoContent.tsx +21 -25
- package/src/Attachment/YouTubeContent.tsx +21 -25
- package/src/Avatar/ImageAvatar.tsx +48 -0
- package/src/Avatar/{InitialsAvatar.js → InitialsAvatar.tsx} +19 -14
- package/src/BasicToast.js +1 -1
- package/src/BasicToaster.js +41 -5
- package/src/BasicTranscript.tsx +90 -268
- package/src/BasicWebChat.tsx +34 -35
- package/src/BuiltInDecorator.tsx +17 -0
- package/src/ChatHistory/ChatHistoryBox.tsx +28 -0
- package/src/ChatHistory/ChatHistoryToolbar.tsx +38 -0
- package/src/ChatHistory/private/ScrollToEndButton.tsx +105 -0
- package/src/Composer.tsx +99 -56
- package/src/ConnectivityStatus/{Connecting.js → Connecting.tsx} +25 -20
- package/src/Dictation.js +15 -23
- package/src/ErrorBox.tsx +19 -19
- package/src/LinkDefinition/LinkDefinitions.tsx +61 -12
- package/src/LinkDefinition/private/extractHostnameWithSubdomain.ts +1 -1
- package/src/LiveRegion/LiveRegionActivity.tsx +18 -18
- package/src/LiveRegion/private/LiveRegionSuggestedActions.tsx +34 -25
- package/src/Middleware/Activity/createCoreMiddleware.tsx +20 -52
- package/src/Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware.tsx +22 -0
- package/src/Middleware/ActivityGrouping/ui/RenderActivityGrouping.tsx +33 -0
- package/src/Middleware/ActivityGrouping/ui/SenderGrouping/SenderGrouping.tsx +49 -0
- package/src/Middleware/ActivityGrouping/ui/SenderGrouping/private/SenderGroupingContext.ts +18 -0
- package/src/Middleware/ActivityGrouping/ui/SenderGrouping/private/useSenderGroupingContext.ts +6 -0
- package/src/Middleware/ActivityGrouping/ui/SenderGrouping/useFirstActivity.ts +6 -0
- package/src/Middleware/ActivityGrouping/ui/SenderGrouping/useLastActivity.ts +6 -0
- package/src/Middleware/ActivityGrouping/ui/StatusGrouping/StatusGrouping.tsx +49 -0
- package/src/Middleware/ActivityGrouping/ui/StatusGrouping/private/StatusGroupingContext.ts +18 -0
- package/src/Middleware/ActivityGrouping/ui/StatusGrouping/private/useStatusGroupingContext.ts +6 -0
- package/src/Middleware/ActivityGrouping/ui/StatusGrouping/useFirstActivity.ts +6 -0
- package/src/Middleware/ActivityGrouping/ui/StatusGrouping/useLastActivity.ts +6 -0
- package/src/Middleware/ActivityStatus/createTimestampMiddleware.tsx +2 -2
- package/src/Middleware/Avatar/createCoreMiddleware.tsx +23 -24
- package/src/Middleware/ScrollToEndButton/ScrollToEndButton.tsx +58 -0
- package/src/ScreenReaderText.tsx +27 -34
- package/src/SendBox/Assets/SendIcon.js +1 -1
- package/src/SendBox/AutoResizeTextArea.tsx +28 -64
- package/src/SendBox/BasicSendBox.tsx +21 -23
- package/src/SendBox/DictationInterims.tsx +32 -21
- package/src/SendBox/IconButton.tsx +35 -30
- package/src/SendBox/MicrophoneButton.tsx +21 -21
- package/src/SendBox/SendButton.tsx +19 -20
- package/src/SendBox/SuggestedAction.tsx +57 -71
- package/src/SendBox/SuggestedActions.tsx +1 -3
- package/src/SendBox/TextBox.tsx +25 -38
- package/src/SendBoxToolbar/Assets/AttachmentIcon.tsx +1 -1
- package/src/SendBoxToolbar/UploadButton.tsx +22 -20
- package/src/Styles/CustomPropertyNames.ts +14 -6
- package/src/Styles/StyleSet/ActivityButton.ts +46 -0
- package/src/Styles/StyleSet/ActivityCopyButton.ts +40 -0
- package/src/Styles/StyleSet/AudioAttachment.ts +3 -3
- package/src/Styles/StyleSet/Avatar.ts +4 -3
- package/src/Styles/StyleSet/CarouselFilmStrip.ts +9 -7
- package/src/Styles/StyleSet/CarouselFilmStripAttachment.ts +3 -4
- package/src/Styles/StyleSet/ChatHistoryBox.ts +22 -0
- package/src/Styles/StyleSet/CodeBlock.ts +39 -0
- package/src/Styles/StyleSet/CodeBlockCopyButton.ts +80 -0
- package/src/Styles/StyleSet/FeedbackForm.ts +78 -0
- package/src/Styles/StyleSet/FeedbackTextArea.ts +81 -0
- package/src/Styles/StyleSet/ImageAvatar.ts +8 -5
- package/src/Styles/StyleSet/InitialsAvatar.ts +4 -5
- package/src/Styles/StyleSet/LinkDefinitions.ts +14 -8
- package/src/Styles/StyleSet/ModalDialog.ts +7 -1
- package/src/Styles/StyleSet/MonochromeImageMasker.ts +10 -0
- package/src/Styles/StyleSet/RenderMarkdown.ts +26 -0
- package/src/Styles/StyleSet/ScrollToEndButton.ts +0 -11
- package/src/Styles/StyleSet/SendStatus.ts +12 -0
- package/src/Styles/StyleSet/StackedLayout.ts +18 -9
- package/src/Styles/StyleSet/TextContent.ts +13 -1
- package/src/Styles/StyleSet/ThumbButton.ts +54 -16
- package/src/Styles/StyleSet/Tooltip.ts +62 -0
- package/src/Styles/StyleSet/ViewCodeDialog.ts +70 -0
- package/src/Styles/createStyleSet.ts +23 -11
- package/src/Styles/createStyles.ts +5 -0
- package/src/Styles/index.ts +3 -0
- package/src/Styles/useCustomPropertiesClassName.ts +75 -0
- package/src/Tooltip/index.ts +1 -0
- package/src/Tooltip/private/Tooltip.tsx +26 -0
- package/src/Transcript/ActivityRow.tsx +57 -9
- package/src/Transcript/ActivityTree.tsx +35 -0
- package/src/Transcript/FocusTrap.tsx +82 -34
- package/src/Transcript/LiveRegion/SendFailed.tsx +8 -10
- package/src/Transcript/LiveRegionTranscript.tsx +11 -62
- package/src/Transcript/TranscriptActivity.tsx +105 -0
- package/src/Utils/AccessibleInputText.tsx +30 -59
- package/src/Utils/AccessibleTextArea.tsx +10 -41
- package/src/Utils/FixedWidthImage.tsx +60 -0
- package/src/Utils/FocusRedirector.tsx +31 -26
- package/src/Utils/InlineMarkdown.js +1 -1
- package/src/Utils/JSONLinkedData/dereferenceBlankNodes.ts +1 -1
- package/src/Utils/JSONLinkedData/getSafeOwnPropertyNames.ts +2 -2
- package/src/Utils/MonochromeImageMasker.tsx +21 -0
- package/src/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.ts +4 -4
- package/src/Utils/firstTabbableDescendant.js +0 -1
- package/src/Utils/parseDocumentFragmentFromString.ts +9 -0
- package/src/Utils/serializeDocumentFragmentIntoString.ts +3 -0
- package/src/Utils/supportPseudoClass.ts +1 -1
- package/src/Utils/{textFormatToContentType.js → textFormatToContentType.ts} +3 -1
- package/src/decorator/index.ts +1 -0
- package/src/decorator/private/BorderFlair.module.css +564 -0
- package/src/decorator/private/BorderFlair.tsx +30 -0
- package/src/decorator/private/BorderLoader.module.css +48 -0
- package/src/decorator/private/BorderLoader.tsx +19 -0
- package/src/decorator/private/WebChatDecorator.tsx +30 -0
- package/src/decorator/private/WebChatTheme.tsx +17 -0
- package/src/decorator/private/createStyles.ts +5 -0
- package/src/env.d.ts +1 -0
- package/src/hooks/index.ts +4 -0
- package/src/hooks/internal/codeHighlighter/index.ts +3 -0
- package/src/hooks/internal/codeHighlighter/private/CodeHighlighterComposer.tsx +32 -0
- package/src/hooks/internal/codeHighlighter/private/createCodeHighlighterComposer.tsx +32 -0
- package/src/hooks/internal/codeHighlighter/private/defaultHighlightCode.tsx +22 -0
- package/src/hooks/internal/createWaitUntilable.spec.ts +2 -2
- package/src/hooks/internal/createWaitUntilable.ts +1 -1
- package/src/hooks/internal/styleToEmotionObject/index.ts +1 -0
- package/src/hooks/internal/styleToEmotionObject/private/StyleToEmotionObjectComposer.tsx +20 -0
- package/src/hooks/internal/styleToEmotionObject/private/createStyleToEmotionObjectComposer.tsx +22 -0
- package/src/hooks/internal/useEmotion.ts +37 -0
- package/src/hooks/internal/useFeedbackActions.ts +114 -0
- package/src/hooks/internal/useInjectStyles.ts +86 -0
- package/src/hooks/internal/useMemoWithPrevious.ts +1 -1
- package/src/hooks/internal/useMemoized.spec.jsx +3 -3
- package/src/hooks/internal/useObserveFocusVisible.ts +0 -1
- package/src/hooks/internal/useStateRef.ts +1 -1
- package/src/hooks/sendBoxFocus.ts +6 -2
- package/src/hooks/transcriptScrollRelative.ts +6 -3
- package/src/hooks/useRenderMarkdownAsHTML.ts +11 -9
- package/src/index.ts +25 -4
- package/src/internal.ts +19 -3
- package/src/providers/ChatHistoryDOM/ChatHistoryDOMComposer.tsx +18 -0
- package/src/providers/ChatHistoryDOM/private/ChatHistoryDOMContext.ts +11 -0
- package/src/providers/ChatHistoryDOM/useActivityElementRef.ts +6 -0
- package/src/providers/CustomElements/CustomElementsComposer.tsx +58 -0
- package/src/providers/CustomElements/customElements/CodeBlock.ts +230 -0
- package/src/providers/CustomElements/customElements/CodeBlockCopyButton.tsx +101 -0
- package/src/providers/CustomElements/customElements/wrapAsCustomElement.ts +85 -0
- package/src/providers/CustomElements/private/CustomElementsContext.ts +15 -0
- package/src/providers/CustomElements/private/useCustomElementsContext.ts +6 -0
- package/src/providers/CustomElements/useCodeBlockCopyButtonTagName.ts +8 -0
- package/src/providers/CustomElements/useCodeBlockTagName.ts +19 -0
- package/src/providers/GroupedRenderingActivities/GroupedRenderingActivities.ts +10 -0
- package/src/providers/GroupedRenderingActivities/GroupedRenderingActivitiesComposer.tsx +87 -0
- package/src/providers/GroupedRenderingActivities/private/GroupedRenderingActivitiesContext.ts +14 -0
- package/src/providers/GroupedRenderingActivities/private/group.spec.ts +29 -0
- package/src/providers/GroupedRenderingActivities/private/group.ts +19 -0
- package/src/providers/GroupedRenderingActivities/private/pick.spec.ts +33 -0
- package/src/providers/GroupedRenderingActivities/private/pick.ts +22 -0
- package/src/providers/GroupedRenderingActivities/useGroupedRenderingActivities.ts +6 -0
- package/src/providers/GroupedRenderingActivities/useNumRenderingActivities.ts +5 -0
- package/src/providers/HTMLContentTransformCOR/HTMLContentTransformComposer.tsx +41 -0
- package/src/providers/HTMLContentTransformCOR/index.ts +8 -0
- package/src/providers/HTMLContentTransformCOR/private/HTMLContentTransformContext.ts +34 -0
- package/src/providers/HTMLContentTransformCOR/private/useHTMLContentTransformContext.ts +6 -0
- package/src/providers/HTMLContentTransformCOR/useTransformHTMLContent.ts +187 -0
- package/src/providers/LiveRegionTwin/index.ts +3 -0
- package/src/providers/LiveRegionTwin/private/LiveRegionTwinComposer.ts +27 -0
- package/src/providers/LiveRegionTwin/private/LiveRegionTwinContainer.tsx +27 -39
- package/src/providers/LiveRegionTwin/private/createLiveRegionTwinComposer.tsx +155 -0
- package/src/providers/LiveRegionTwin/private/useContext.ts +2 -8
- package/src/providers/LiveRegionTwin/useLiveRegion.ts +27 -0
- package/src/providers/LiveRegionTwin/useQueueStaticElement.ts +2 -2
- package/src/providers/ModalDialog/private/Popover.tsx +3 -3
- package/src/providers/ReducedMotion/ReducedMotionComposer.tsx +35 -0
- package/src/providers/ReducedMotion/private/Context.ts +22 -0
- package/src/providers/ReducedMotion/private/useContext.ts +8 -0
- package/src/providers/ReducedMotion/useShouldReduceMotion.ts +5 -0
- package/src/providers/RenderingActivities/RenderingActivitiesComposer.tsx +84 -0
- package/src/providers/RenderingActivities/private/RenderingActivitiesContext.ts +15 -0
- package/src/providers/RenderingActivities/private/useInternalActivitiesWithRenderer.ts +78 -0
- package/src/providers/RenderingActivities/useGetRenderActivityCallback.ts +11 -0
- package/src/providers/RenderingActivities/useRenderingActivities.ts +7 -0
- package/src/providers/RenderingActivities/useRenderingActivityKeys.ts +5 -0
- package/src/providers/RovingTabIndex/RovingTabIndexComposer.tsx +32 -23
- package/src/providers/Theme/ThemeProvider.tsx +24 -16
- package/src/providers/Theme/private/Context.ts +4 -2
- package/src/providers/TranscriptFocus/TranscriptFocusComposer.tsx +17 -27
- package/src/providers/TranscriptFocus/useFocusRelativeActivity.ts +1 -1
- package/src/providers/createContextAndHook.ts +23 -0
- package/src/providers/internal/SendBox/SendBoxComposer.tsx +28 -38
- package/src/testIds.ts +11 -0
- package/src/tsconfig.json +5 -8
- package/src/types/internal/mutableRefObject.ts +33 -0
- package/src/types/internal/reactNode.ts +16 -0
- package/src/types/internal/refObject.ts +40 -0
- package/dist/chunk-X37JABN5.mjs +0 -5
- package/dist/chunk-X37JABN5.mjs.map +0 -1
- package/lib/Activity/Avatar.d.ts +0 -10
- package/lib/Activity/Avatar.d.ts.map +0 -1
- package/lib/Activity/Avatar.js +0 -35
- package/lib/Activity/Bubble.d.ts +0 -11
- package/lib/Activity/Bubble.d.ts.map +0 -1
- package/lib/Activity/Bubble.js +0 -137
- package/lib/Activity/CarouselFilmStrip.js +0 -264
- package/lib/Activity/CarouselFilmStripAttachment.js +0 -93
- package/lib/Activity/CarouselLayout.js +0 -133
- package/lib/Activity/SayAlt.js +0 -31
- package/lib/Activity/Speak.d.ts +0 -8
- package/lib/Activity/Speak.d.ts.map +0 -1
- package/lib/Activity/Speak.js +0 -99
- package/lib/Activity/StackedLayout.d.ts +0 -17
- package/lib/Activity/StackedLayout.d.ts.map +0 -1
- package/lib/Activity/StackedLayout.js +0 -233
- package/lib/ActivityStatus/AbsoluteTime.js +0 -38
- package/lib/ActivityStatus/OthersActivityStatus.d.ts +0 -8
- package/lib/ActivityStatus/OthersActivityStatus.d.ts.map +0 -1
- package/lib/ActivityStatus/OthersActivityStatus.js +0 -105
- package/lib/ActivityStatus/SelfActivityStatus.d.ts +0 -8
- package/lib/ActivityStatus/SelfActivityStatus.d.ts.map +0 -1
- package/lib/ActivityStatus/SelfActivityStatus.js +0 -37
- package/lib/ActivityStatus/SendStatus/SendStatus.d.ts +0 -10
- package/lib/ActivityStatus/SendStatus/SendStatus.d.ts.map +0 -1
- package/lib/ActivityStatus/SendStatus/SendStatus.js +0 -58
- package/lib/ActivityStatus/SendStatus/private/SendFailedRetry.js +0 -35
- package/lib/ActivityStatus/Slotted.d.ts +0 -7
- package/lib/ActivityStatus/Slotted.d.ts.map +0 -1
- package/lib/ActivityStatus/Slotted.js +0 -31
- package/lib/ActivityStatus/Timestamp.d.ts +0 -7
- package/lib/ActivityStatus/Timestamp.d.ts.map +0 -1
- package/lib/ActivityStatus/Timestamp.js +0 -36
- package/lib/ActivityStatus/private/Feedback/Feedback.d.ts +0 -8
- package/lib/ActivityStatus/private/Feedback/Feedback.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/Feedback.js +0 -67
- package/lib/ActivityStatus/private/Feedback/private/ThumbButton.Image.d.ts +0 -9
- package/lib/ActivityStatus/private/Feedback/private/ThumbButton.Image.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/ThumbButton.Image.js +0 -34
- package/lib/ActivityStatus/private/Feedback/private/ThumbButton.d.ts +0 -9
- package/lib/ActivityStatus/private/Feedback/private/ThumbButton.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/ThumbButton.js +0 -57
- package/lib/ActivityStatus/private/Feedback/private/VoteButton.d.ts +0 -10
- package/lib/ActivityStatus/private/Feedback/private/VoteButton.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/VoteButton.js +0 -43
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Filled.d.ts +0 -7
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Filled.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Filled.js +0 -28
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Regular.d.ts +0 -7
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Regular.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Regular.js +0 -28
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbLike16Filled.d.ts +0 -7
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbLike16Filled.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbLike16Filled.js +0 -28
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbLike16Regular.d.ts +0 -7
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbLike16Regular.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Feedback/private/icons/ThumbLike16Regular.js +0 -28
- package/lib/ActivityStatus/private/Originator.d.ts +0 -8
- package/lib/ActivityStatus/private/Originator.d.ts.map +0 -1
- package/lib/ActivityStatus/private/Originator.js +0 -29
- package/lib/ActivityStatus/private/RelativeTime.js +0 -37
- package/lib/Assets/TypingAnimation.js +0 -47
- package/lib/Attachment/Assets/DownloadIcon.js +0 -35
- package/lib/Attachment/AudioAttachment.js +0 -38
- package/lib/Attachment/AudioContent.d.ts +0 -11
- package/lib/Attachment/AudioContent.d.ts.map +0 -1
- package/lib/Attachment/AudioContent.js +0 -51
- package/lib/Attachment/FileAttachment.js +0 -43
- package/lib/Attachment/FileContent.d.ts +0 -10
- package/lib/Attachment/FileContent.d.ts.map +0 -1
- package/lib/Attachment/FileContent.js +0 -120
- package/lib/Attachment/HTMLVideoContent.d.ts +0 -11
- package/lib/Attachment/HTMLVideoContent.d.ts.map +0 -1
- package/lib/Attachment/HTMLVideoContent.js +0 -51
- package/lib/Attachment/ImageAttachment.js +0 -41
- package/lib/Attachment/ImageContent.d.ts +0 -8
- package/lib/Attachment/ImageContent.d.ts.map +0 -1
- package/lib/Attachment/ImageContent.js +0 -41
- package/lib/Attachment/Text/TextAttachment.d.ts +0 -12
- package/lib/Attachment/Text/TextAttachment.d.ts.map +0 -1
- package/lib/Attachment/Text/TextAttachment.js +0 -27
- package/lib/Attachment/Text/TextContent.d.ts +0 -10
- package/lib/Attachment/Text/TextContent.d.ts.map +0 -1
- package/lib/Attachment/Text/TextContent.js +0 -34
- package/lib/Attachment/Text/private/CitationModalContent.d.ts +0 -8
- package/lib/Attachment/Text/private/CitationModalContent.d.ts.map +0 -1
- package/lib/Attachment/Text/private/CitationModalContent.js +0 -45
- package/lib/Attachment/Text/private/MarkdownTextContent.d.ts +0 -9
- package/lib/Attachment/Text/private/MarkdownTextContent.d.ts.map +0 -1
- package/lib/Attachment/Text/private/MarkdownTextContent.js +0 -204
- package/lib/Attachment/Text/private/MessageSensitivityLabel.d.ts +0 -12
- package/lib/Attachment/Text/private/MessageSensitivityLabel.d.ts.map +0 -1
- package/lib/Attachment/Text/private/MessageSensitivityLabel.js +0 -38
- package/lib/Attachment/Text/private/PlainTextContent.d.ts +0 -7
- package/lib/Attachment/Text/private/PlainTextContent.d.ts.map +0 -1
- package/lib/Attachment/Text/private/PlainTextContent.js +0 -35
- package/lib/Attachment/Text/private/ShieldIcon.d.ts +0 -9
- package/lib/Attachment/Text/private/ShieldIcon.d.ts.map +0 -1
- package/lib/Attachment/Text/private/ShieldIcon.js +0 -39
- package/lib/Attachment/Text/private/isHTMLButtonElement.d.ts +0 -2
- package/lib/Attachment/Text/private/isHTMLButtonElement.d.ts.map +0 -1
- package/lib/Attachment/Text/private/isHTMLButtonElement.js +0 -10
- package/lib/Attachment/VideoAttachment.js +0 -45
- package/lib/Attachment/VideoContent.d.ts +0 -11
- package/lib/Attachment/VideoContent.d.ts.map +0 -1
- package/lib/Attachment/VideoContent.js +0 -103
- package/lib/Attachment/VimeoContent.d.ts +0 -10
- package/lib/Attachment/VimeoContent.d.ts.map +0 -1
- package/lib/Attachment/VimeoContent.js +0 -59
- package/lib/Attachment/YouTubeContent.d.ts +0 -10
- package/lib/Attachment/YouTubeContent.d.ts.map +0 -1
- package/lib/Attachment/YouTubeContent.js +0 -60
- package/lib/Attachment/createMiddleware.d.ts +0 -3
- package/lib/Attachment/createMiddleware.d.ts.map +0 -1
- package/lib/Attachment/createMiddleware.js +0 -64
- package/lib/Attachment/private/types/WebChatAttachment.d.ts +0 -9
- package/lib/Attachment/private/types/WebChatAttachment.d.ts.map +0 -1
- package/lib/Attachment/private/types/WebChatAttachment.js +0 -2
- package/lib/Avatar/ImageAvatar.js +0 -59
- package/lib/Avatar/InitialsAvatar.js +0 -57
- package/lib/BasicConnectivityStatus.js +0 -46
- package/lib/BasicToast.js +0 -103
- package/lib/BasicToaster.js +0 -176
- package/lib/BasicTranscript.d.ts +0 -7
- package/lib/BasicTranscript.d.ts.map +0 -1
- package/lib/BasicTranscript.js +0 -735
- package/lib/BasicTypingIndicator.d.ts +0 -6
- package/lib/BasicTypingIndicator.d.ts.map +0 -1
- package/lib/BasicTypingIndicator.js +0 -54
- package/lib/BasicWebChat.d.ts +0 -9
- package/lib/BasicWebChat.d.ts.map +0 -1
- package/lib/BasicWebChat.js +0 -90
- package/lib/Composer.d.ts +0 -50
- package/lib/Composer.d.ts.map +0 -1
- package/lib/Composer.js +0 -336
- package/lib/ConnectivityStatus/Assets/ErrorNotificationIcon.js +0 -47
- package/lib/ConnectivityStatus/Assets/SpinnerAnimation.js +0 -32
- package/lib/ConnectivityStatus/Assets/WarningNotificationIcon.js +0 -47
- package/lib/ConnectivityStatus/Connected.js +0 -20
- package/lib/ConnectivityStatus/Connecting.js +0 -82
- package/lib/ConnectivityStatus/FailedToConnect.js +0 -41
- package/lib/ConnectivityStatus/JavaScriptError.js +0 -41
- package/lib/Dictation.js +0 -158
- package/lib/ErrorBox.d.ts +0 -8
- package/lib/ErrorBox.d.ts.map +0 -1
- package/lib/ErrorBox.js +0 -42
- package/lib/LinkDefinition/LinkDefinitionItem.d.ts +0 -12
- package/lib/LinkDefinition/LinkDefinitionItem.d.ts.map +0 -1
- package/lib/LinkDefinition/LinkDefinitionItem.js +0 -57
- package/lib/LinkDefinition/LinkDefinitions.d.ts +0 -12
- package/lib/LinkDefinition/LinkDefinitions.d.ts.map +0 -1
- package/lib/LinkDefinition/LinkDefinitions.js +0 -69
- package/lib/LinkDefinition/index.d.ts +0 -4
- package/lib/LinkDefinition/index.d.ts.map +0 -1
- package/lib/LinkDefinition/index.js +0 -21
- package/lib/LinkDefinition/private/Badge.d.ts +0 -7
- package/lib/LinkDefinition/private/Badge.d.ts.map +0 -1
- package/lib/LinkDefinition/private/Badge.js +0 -20
- package/lib/LinkDefinition/private/Chevron.d.ts +0 -4
- package/lib/LinkDefinition/private/Chevron.d.ts.map +0 -1
- package/lib/LinkDefinition/private/Chevron.js +0 -27
- package/lib/LinkDefinition/private/ItemBody.d.ts +0 -11
- package/lib/LinkDefinition/private/ItemBody.d.ts.map +0 -1
- package/lib/LinkDefinition/private/ItemBody.js +0 -41
- package/lib/LinkDefinition/private/OpenInNewWindowIcon.d.ts +0 -7
- package/lib/LinkDefinition/private/OpenInNewWindowIcon.d.ts.map +0 -1
- package/lib/LinkDefinition/private/OpenInNewWindowIcon.js +0 -23
- package/lib/LinkDefinition/private/extractHostnameWithSubdomain.d.ts +0 -2
- package/lib/LinkDefinition/private/extractHostnameWithSubdomain.d.ts.map +0 -1
- package/lib/LinkDefinition/private/extractHostnameWithSubdomain.js +0 -24
- package/lib/LinkDefinition/private/extractHostnameWithSubdomain.spec.d.ts +0 -2
- package/lib/LinkDefinition/private/extractHostnameWithSubdomain.spec.d.ts.map +0 -1
- package/lib/LiveRegion/LiveRegionActivity.d.ts +0 -9
- package/lib/LiveRegion/LiveRegionActivity.d.ts.map +0 -1
- package/lib/LiveRegion/LiveRegionActivity.js +0 -70
- package/lib/LiveRegion/private/LiveRegionAttachments.d.ts +0 -11
- package/lib/LiveRegion/private/LiveRegionAttachments.d.ts.map +0 -1
- package/lib/LiveRegion/private/LiveRegionAttachments.js +0 -53
- package/lib/LiveRegion/private/LiveRegionSuggestedActions.d.ts +0 -8
- package/lib/LiveRegion/private/LiveRegionSuggestedActions.d.ts.map +0 -1
- package/lib/LiveRegion/private/LiveRegionSuggestedActions.js +0 -37
- package/lib/Middleware/Activity/createCoreMiddleware.d.ts +0 -3
- package/lib/Middleware/Activity/createCoreMiddleware.d.ts.map +0 -1
- package/lib/Middleware/Activity/createCoreMiddleware.js +0 -95
- package/lib/Middleware/ActivityStatus/createCoreMiddleware.d.ts +0 -3
- package/lib/Middleware/ActivityStatus/createCoreMiddleware.d.ts.map +0 -1
- package/lib/Middleware/ActivityStatus/createCoreMiddleware.js +0 -13
- package/lib/Middleware/ActivityStatus/createSendStatusMiddleware.d.ts +0 -3
- package/lib/Middleware/ActivityStatus/createSendStatusMiddleware.d.ts.map +0 -1
- package/lib/Middleware/ActivityStatus/createSendStatusMiddleware.js +0 -41
- package/lib/Middleware/ActivityStatus/createTimestampMiddleware.d.ts +0 -3
- package/lib/Middleware/ActivityStatus/createTimestampMiddleware.d.ts.map +0 -1
- package/lib/Middleware/ActivityStatus/createTimestampMiddleware.js +0 -48
- package/lib/Middleware/AttachmentForScreenReader/AudioAttachment.js +0 -18
- package/lib/Middleware/AttachmentForScreenReader/FileAttachment.js +0 -28
- package/lib/Middleware/AttachmentForScreenReader/ImageAttachment.js +0 -18
- package/lib/Middleware/AttachmentForScreenReader/TextAttachment.js +0 -28
- package/lib/Middleware/AttachmentForScreenReader/VideoAttachment.js +0 -18
- package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.d.ts +0 -3
- package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.d.ts.map +0 -1
- package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.js +0 -61
- package/lib/Middleware/Avatar/createCoreMiddleware.d.ts +0 -11
- package/lib/Middleware/Avatar/createCoreMiddleware.d.ts.map +0 -1
- package/lib/Middleware/Avatar/createCoreMiddleware.js +0 -82
- package/lib/Middleware/CardAction/createCoreMiddleware.js +0 -108
- package/lib/Middleware/ScrollToEndButton/ScrollToEndButton.js +0 -52
- package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.d.ts +0 -3
- package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.d.ts.map +0 -1
- package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.js +0 -27
- package/lib/Middleware/Toast/createCoreMiddleware.d.ts +0 -4
- package/lib/Middleware/Toast/createCoreMiddleware.d.ts.map +0 -1
- package/lib/Middleware/Toast/createCoreMiddleware.js +0 -27
- package/lib/Middleware/TypingIndicator/createCoreMiddleware.d.ts +0 -3
- package/lib/Middleware/TypingIndicator/createCoreMiddleware.d.ts.map +0 -1
- package/lib/Middleware/TypingIndicator/createCoreMiddleware.js +0 -47
- package/lib/ReactWebChat.d.ts +0 -42
- package/lib/ReactWebChat.d.ts.map +0 -1
- package/lib/ReactWebChat.js +0 -52
- package/lib/ScreenReaderText.d.ts +0 -9
- package/lib/ScreenReaderText.d.ts.map +0 -1
- package/lib/ScreenReaderText.js +0 -58
- package/lib/SendBox/Assets/MicrophoneIcon.js +0 -25
- package/lib/SendBox/Assets/SendIcon.js +0 -45
- package/lib/SendBox/AutoResizeTextArea.d.ts +0 -24
- package/lib/SendBox/AutoResizeTextArea.d.ts.map +0 -1
- package/lib/SendBox/AutoResizeTextArea.js +0 -113
- package/lib/SendBox/BasicSendBox.d.ts +0 -9
- package/lib/SendBox/BasicSendBox.d.ts.map +0 -1
- package/lib/SendBox/BasicSendBox.js +0 -123
- package/lib/SendBox/DictationInterims.d.ts +0 -7
- package/lib/SendBox/DictationInterims.d.ts.map +0 -1
- package/lib/SendBox/DictationInterims.js +0 -68
- package/lib/SendBox/IconButton.d.ts +0 -11
- package/lib/SendBox/IconButton.d.ts.map +0 -1
- package/lib/SendBox/IconButton.js +0 -73
- package/lib/SendBox/MicrophoneButton.d.ts +0 -10
- package/lib/SendBox/MicrophoneButton.d.ts.map +0 -1
- package/lib/SendBox/MicrophoneButton.js +0 -160
- package/lib/SendBox/SendButton.d.ts +0 -7
- package/lib/SendBox/SendButton.d.ts.map +0 -1
- package/lib/SendBox/SendButton.js +0 -53
- package/lib/SendBox/SuggestedAction.d.ts +0 -16
- package/lib/SendBox/SuggestedAction.d.ts.map +0 -1
- package/lib/SendBox/SuggestedAction.js +0 -166
- package/lib/SendBox/SuggestedActions.d.ts +0 -7
- package/lib/SendBox/SuggestedActions.d.ts.map +0 -1
- package/lib/SendBox/SuggestedActions.js +0 -256
- package/lib/SendBox/TextBox.d.ts +0 -24
- package/lib/SendBox/TextBox.d.ts.map +0 -1
- package/lib/SendBox/TextBox.js +0 -252
- package/lib/SendBox/createMiddleware.d.ts +0 -4
- package/lib/SendBox/createMiddleware.d.ts.map +0 -1
- package/lib/SendBox/createMiddleware.js +0 -38
- package/lib/SendBoxToolbar/Assets/AttachmentIcon.d.ts +0 -7
- package/lib/SendBoxToolbar/Assets/AttachmentIcon.d.ts.map +0 -1
- package/lib/SendBoxToolbar/Assets/AttachmentIcon.js +0 -63
- package/lib/SendBoxToolbar/BasicSendBoxToolbar.d.ts +0 -6
- package/lib/SendBoxToolbar/BasicSendBoxToolbar.d.ts.map +0 -1
- package/lib/SendBoxToolbar/BasicSendBoxToolbar.js +0 -32
- package/lib/SendBoxToolbar/UploadButton.d.ts +0 -7
- package/lib/SendBoxToolbar/UploadButton.d.ts.map +0 -1
- package/lib/SendBoxToolbar/UploadButton.js +0 -156
- package/lib/SendBoxToolbar/createMiddleware.d.ts +0 -4
- package/lib/SendBoxToolbar/createMiddleware.d.ts.map +0 -1
- package/lib/SendBoxToolbar/createMiddleware.js +0 -20
- package/lib/Styles/CSSTokens.d.ts +0 -16
- package/lib/Styles/CSSTokens.d.ts.map +0 -1
- package/lib/Styles/CSSTokens.js +0 -19
- package/lib/Styles/CustomPropertyNames.d.ts +0 -13
- package/lib/Styles/CustomPropertyNames.d.ts.map +0 -1
- package/lib/Styles/CustomPropertyNames.js +0 -24
- package/lib/Styles/StyleSet/Activities.d.ts +0 -5
- package/lib/Styles/StyleSet/Activities.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Activities.js +0 -13
- package/lib/Styles/StyleSet/AudioAttachment.d.ts +0 -6
- package/lib/Styles/StyleSet/AudioAttachment.d.ts.map +0 -1
- package/lib/Styles/StyleSet/AudioAttachment.js +0 -15
- package/lib/Styles/StyleSet/AudioContent.d.ts +0 -4
- package/lib/Styles/StyleSet/AudioContent.d.ts.map +0 -1
- package/lib/Styles/StyleSet/AudioContent.js +0 -12
- package/lib/Styles/StyleSet/AutoResizeTextArea.d.ts +0 -37
- package/lib/Styles/StyleSet/AutoResizeTextArea.d.ts.map +0 -1
- package/lib/Styles/StyleSet/AutoResizeTextArea.js +0 -45
- package/lib/Styles/StyleSet/Avatar.d.ts +0 -9
- package/lib/Styles/StyleSet/Avatar.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Avatar.js +0 -18
- package/lib/Styles/StyleSet/BasicTranscript.d.ts +0 -85
- package/lib/Styles/StyleSet/BasicTranscript.d.ts.map +0 -1
- package/lib/Styles/StyleSet/BasicTranscript.js +0 -110
- package/lib/Styles/StyleSet/Bubble.d.ts +0 -5
- package/lib/Styles/StyleSet/Bubble.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Bubble.js +0 -153
- package/lib/Styles/StyleSet/CSSCustomProperties.d.ts +0 -16
- package/lib/Styles/StyleSet/CSSCustomProperties.d.ts.map +0 -1
- package/lib/Styles/StyleSet/CSSCustomProperties.js +0 -27
- package/lib/Styles/StyleSet/CarouselFilmStrip.d.ts +0 -5
- package/lib/Styles/StyleSet/CarouselFilmStrip.d.ts.map +0 -1
- package/lib/Styles/StyleSet/CarouselFilmStrip.js +0 -90
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.d.ts +0 -3
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.d.ts.map +0 -1
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.js +0 -57
- package/lib/Styles/StyleSet/CarouselFlipper.d.ts +0 -27
- package/lib/Styles/StyleSet/CarouselFlipper.d.ts.map +0 -1
- package/lib/Styles/StyleSet/CarouselFlipper.js +0 -42
- package/lib/Styles/StyleSet/CitationModalDialog.d.ts +0 -8
- package/lib/Styles/StyleSet/CitationModalDialog.d.ts.map +0 -1
- package/lib/Styles/StyleSet/CitationModalDialog.js +0 -16
- package/lib/Styles/StyleSet/ConnectivityNotification.d.ts +0 -13
- package/lib/Styles/StyleSet/ConnectivityNotification.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ConnectivityNotification.js +0 -26
- package/lib/Styles/StyleSet/Constants.d.ts +0 -6
- package/lib/Styles/StyleSet/Constants.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Constants.js +0 -15
- package/lib/Styles/StyleSet/DictationInterims.d.ts +0 -13
- package/lib/Styles/StyleSet/DictationInterims.d.ts.map +0 -1
- package/lib/Styles/StyleSet/DictationInterims.js +0 -22
- package/lib/Styles/StyleSet/ErrorBox.d.ts +0 -33
- package/lib/Styles/StyleSet/ErrorBox.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ErrorBox.js +0 -43
- package/lib/Styles/StyleSet/ErrorNotification.d.ts +0 -23
- package/lib/Styles/StyleSet/ErrorNotification.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ErrorNotification.js +0 -36
- package/lib/Styles/StyleSet/FileContent.d.ts +0 -32
- package/lib/Styles/StyleSet/FileContent.d.ts.map +0 -1
- package/lib/Styles/StyleSet/FileContent.js +0 -43
- package/lib/Styles/StyleSet/ImageAvatar.d.ts +0 -7
- package/lib/Styles/StyleSet/ImageAvatar.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ImageAvatar.js +0 -15
- package/lib/Styles/StyleSet/InitialsAvatar.d.ts +0 -19
- package/lib/Styles/StyleSet/InitialsAvatar.d.ts.map +0 -1
- package/lib/Styles/StyleSet/InitialsAvatar.js +0 -31
- package/lib/Styles/StyleSet/KeyboardHelp.d.ts +0 -152
- package/lib/Styles/StyleSet/KeyboardHelp.d.ts.map +0 -1
- package/lib/Styles/StyleSet/KeyboardHelp.js +0 -168
- package/lib/Styles/StyleSet/LinkDefinitions.d.ts +0 -165
- package/lib/Styles/StyleSet/LinkDefinitions.d.ts.map +0 -1
- package/lib/Styles/StyleSet/LinkDefinitions.js +0 -180
- package/lib/Styles/StyleSet/MicrophoneButton.d.ts +0 -13
- package/lib/Styles/StyleSet/MicrophoneButton.d.ts.map +0 -1
- package/lib/Styles/StyleSet/MicrophoneButton.js +0 -21
- package/lib/Styles/StyleSet/ModalDialog.d.ts +0 -94
- package/lib/Styles/StyleSet/ModalDialog.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ModalDialog.js +0 -98
- package/lib/Styles/StyleSet/RenderMarkdown.d.ts +0 -51
- package/lib/Styles/StyleSet/RenderMarkdown.d.ts.map +0 -1
- package/lib/Styles/StyleSet/RenderMarkdown.js +0 -67
- package/lib/Styles/StyleSet/Root.d.ts +0 -8
- package/lib/Styles/StyleSet/Root.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Root.js +0 -19
- package/lib/Styles/StyleSet/ScrollToEndButton.d.ts +0 -36
- package/lib/Styles/StyleSet/ScrollToEndButton.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ScrollToEndButton.js +0 -55
- package/lib/Styles/StyleSet/SendBox.d.ts +0 -24
- package/lib/Styles/StyleSet/SendBox.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SendBox.js +0 -37
- package/lib/Styles/StyleSet/SendBoxButton.d.ts +0 -79
- package/lib/Styles/StyleSet/SendBoxButton.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SendBoxButton.js +0 -112
- package/lib/Styles/StyleSet/SendBoxTextBox.d.ts +0 -41
- package/lib/Styles/StyleSet/SendBoxTextBox.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SendBoxTextBox.js +0 -57
- package/lib/Styles/StyleSet/SendStatus.d.ts +0 -19
- package/lib/Styles/StyleSet/SendStatus.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SendStatus.js +0 -29
- package/lib/Styles/StyleSet/SingleAttachmentActivity.d.ts +0 -11
- package/lib/Styles/StyleSet/SingleAttachmentActivity.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SingleAttachmentActivity.js +0 -21
- package/lib/Styles/StyleSet/SlottedActivityStatus.d.ts +0 -12
- package/lib/Styles/StyleSet/SlottedActivityStatus.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SlottedActivityStatus.js +0 -22
- package/lib/Styles/StyleSet/SpinnerAnimation.d.ts +0 -15
- package/lib/Styles/StyleSet/SpinnerAnimation.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SpinnerAnimation.js +0 -34
- package/lib/Styles/StyleSet/StackedLayout.d.ts +0 -63
- package/lib/Styles/StyleSet/StackedLayout.d.ts.map +0 -1
- package/lib/Styles/StyleSet/StackedLayout.js +0 -77
- package/lib/Styles/StyleSet/SuggestedAction.d.ts +0 -94
- package/lib/Styles/StyleSet/SuggestedAction.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SuggestedAction.js +0 -152
- package/lib/Styles/StyleSet/SuggestedActions.d.ts +0 -139
- package/lib/Styles/StyleSet/SuggestedActions.d.ts.map +0 -1
- package/lib/Styles/StyleSet/SuggestedActions.js +0 -165
- package/lib/Styles/StyleSet/TextContent.d.ts +0 -24
- package/lib/Styles/StyleSet/TextContent.d.ts.map +0 -1
- package/lib/Styles/StyleSet/TextContent.js +0 -34
- package/lib/Styles/StyleSet/ThumbButton.d.ts +0 -32
- package/lib/Styles/StyleSet/ThumbButton.d.ts.map +0 -1
- package/lib/Styles/StyleSet/ThumbButton.js +0 -44
- package/lib/Styles/StyleSet/Toast.d.ts +0 -65
- package/lib/Styles/StyleSet/Toast.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Toast.js +0 -83
- package/lib/Styles/StyleSet/Toaster.d.ts +0 -111
- package/lib/Styles/StyleSet/Toaster.d.ts.map +0 -1
- package/lib/Styles/StyleSet/Toaster.js +0 -137
- package/lib/Styles/StyleSet/TypingAnimation.d.ts +0 -8
- package/lib/Styles/StyleSet/TypingAnimation.d.ts.map +0 -1
- package/lib/Styles/StyleSet/TypingAnimation.js +0 -26
- package/lib/Styles/StyleSet/TypingIndicator.d.ts +0 -11
- package/lib/Styles/StyleSet/TypingIndicator.d.ts.map +0 -1
- package/lib/Styles/StyleSet/TypingIndicator.js +0 -19
- package/lib/Styles/StyleSet/UploadButton.d.ts +0 -14
- package/lib/Styles/StyleSet/UploadButton.d.ts.map +0 -1
- package/lib/Styles/StyleSet/UploadButton.js +0 -27
- package/lib/Styles/StyleSet/VideoAttachment.d.ts +0 -2
- package/lib/Styles/StyleSet/VideoAttachment.d.ts.map +0 -1
- package/lib/Styles/StyleSet/VideoAttachment.js +0 -10
- package/lib/Styles/StyleSet/VideoContent.d.ts +0 -6
- package/lib/Styles/StyleSet/VideoContent.d.ts.map +0 -1
- package/lib/Styles/StyleSet/VideoContent.js +0 -14
- package/lib/Styles/StyleSet/VimeoContent.d.ts +0 -7
- package/lib/Styles/StyleSet/VimeoContent.d.ts.map +0 -1
- package/lib/Styles/StyleSet/VimeoContent.js +0 -15
- package/lib/Styles/StyleSet/WarningNotification.d.ts +0 -22
- package/lib/Styles/StyleSet/WarningNotification.d.ts.map +0 -1
- package/lib/Styles/StyleSet/WarningNotification.js +0 -37
- package/lib/Styles/StyleSet/YouTubeContent.d.ts +0 -7
- package/lib/Styles/StyleSet/YouTubeContent.d.ts.map +0 -1
- package/lib/Styles/StyleSet/YouTubeContent.js +0 -15
- package/lib/Styles/createStyleSet.d.ts.map +0 -1
- package/lib/Styles/createStyleSet.js +0 -121
- package/lib/Styles/mirrorStyle.js +0 -40
- package/lib/Toast/CheckMarkIcon.js +0 -36
- package/lib/Toast/CollapseIcon.js +0 -32
- package/lib/Toast/DismissIcon.js +0 -32
- package/lib/Toast/ExclamationMarkIcon.js +0 -34
- package/lib/Toast/ExpandIcon.js +0 -32
- package/lib/Toast/NotificationIcon.js +0 -46
- package/lib/Toast/createToastMiddleware.d.ts +0 -4
- package/lib/Toast/createToastMiddleware.d.ts.map +0 -1
- package/lib/Toast/createToastMiddleware.js +0 -26
- package/lib/Transcript/ActivityRow.d.ts +0 -9
- package/lib/Transcript/ActivityRow.d.ts.map +0 -1
- package/lib/Transcript/ActivityRow.js +0 -137
- package/lib/Transcript/FocusTrap.d.ts +0 -9
- package/lib/Transcript/FocusTrap.d.ts.map +0 -1
- package/lib/Transcript/FocusTrap.js +0 -76
- package/lib/Transcript/KeyboardHelp.d.ts +0 -4
- package/lib/Transcript/KeyboardHelp.d.ts.map +0 -1
- package/lib/Transcript/KeyboardHelp.js +0 -562
- package/lib/Transcript/LiveRegion/SendFailed.d.ts +0 -14
- package/lib/Transcript/LiveRegion/SendFailed.d.ts.map +0 -1
- package/lib/Transcript/LiveRegion/SendFailed.js +0 -90
- package/lib/Transcript/LiveRegion/isPresentational.d.ts +0 -9
- package/lib/Transcript/LiveRegion/isPresentational.d.ts.map +0 -1
- package/lib/Transcript/LiveRegion/isPresentational.js +0 -30
- package/lib/Transcript/LiveRegionTranscript.d.ts +0 -8
- package/lib/Transcript/LiveRegionTranscript.d.ts.map +0 -1
- package/lib/Transcript/LiveRegionTranscript.js +0 -178
- package/lib/Transcript/types.d.ts +0 -2
- package/lib/Transcript/types.d.ts.map +0 -1
- package/lib/Transcript/types.js +0 -2
- package/lib/Transcript/useActivityAccessibleName.d.ts +0 -11
- package/lib/Transcript/useActivityAccessibleName.d.ts.map +0 -1
- package/lib/Transcript/useActivityAccessibleName.js +0 -103
- package/lib/Transcript/useTypistNames.d.ts +0 -3
- package/lib/Transcript/useTypistNames.d.ts.map +0 -1
- package/lib/Transcript/useTypistNames.js +0 -50
- package/lib/TranscriptActivity.d.ts +0 -17
- package/lib/TranscriptActivity.d.ts.map +0 -1
- package/lib/TranscriptActivity.js +0 -48
- package/lib/Utils/AccessKeySink/Surface.js +0 -74
- package/lib/Utils/AccessKeySink/internal/Context.js +0 -11
- package/lib/Utils/AccessKeySink/internal/useContext.js +0 -13
- package/lib/Utils/AccessKeySink/useFocusAccessKeyEffect.js +0 -34
- package/lib/Utils/AccessibleButton.d.ts +0 -11
- package/lib/Utils/AccessibleButton.d.ts.map +0 -1
- package/lib/Utils/AccessibleButton.js +0 -78
- package/lib/Utils/AccessibleInputText.d.ts +0 -22
- package/lib/Utils/AccessibleInputText.d.ts.map +0 -1
- package/lib/Utils/AccessibleInputText.js +0 -114
- package/lib/Utils/AccessibleTextArea.d.ts +0 -20
- package/lib/Utils/AccessibleTextArea.d.ts.map +0 -1
- package/lib/Utils/AccessibleTextArea.js +0 -105
- package/lib/Utils/CroppedImage.js +0 -61
- package/lib/Utils/FocusRedirector.d.ts +0 -9
- package/lib/Utils/FocusRedirector.d.ts.map +0 -1
- package/lib/Utils/FocusRedirector.js +0 -61
- package/lib/Utils/InlineMarkdown.js +0 -166
- package/lib/Utils/JSONLinkedData/BlankNode.d.ts +0 -15
- package/lib/Utils/JSONLinkedData/BlankNode.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/BlankNode.js +0 -2
- package/lib/Utils/JSONLinkedData/__snapshots__/dereferenceBlankNodes.spec.ts.snap +0 -92
- package/lib/Utils/JSONLinkedData/dereferenceBlankNodes.d.ts +0 -16
- package/lib/Utils/JSONLinkedData/dereferenceBlankNodes.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/dereferenceBlankNodes.js +0 -96
- package/lib/Utils/JSONLinkedData/dereferenceBlankNodes.spec.d.ts +0 -2
- package/lib/Utils/JSONLinkedData/dereferenceBlankNodes.spec.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/getSafeOwnPropertyNames.d.ts +0 -10
- package/lib/Utils/JSONLinkedData/getSafeOwnPropertyNames.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/getSafeOwnPropertyNames.js +0 -22
- package/lib/Utils/JSONLinkedData/isBlankNode.d.ts +0 -10
- package/lib/Utils/JSONLinkedData/isBlankNode.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/isBlankNode.js +0 -22
- package/lib/Utils/JSONLinkedData/isBlankNode.spec.d.ts +0 -2
- package/lib/Utils/JSONLinkedData/isBlankNode.spec.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/isUnconnectedBlankNode.d.ts +0 -10
- package/lib/Utils/JSONLinkedData/isUnconnectedBlankNode.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/isUnconnectedBlankNode.js +0 -21
- package/lib/Utils/JSONLinkedData/isUnconnectedBlankNode.spec.d.ts +0 -2
- package/lib/Utils/JSONLinkedData/isUnconnectedBlankNode.spec.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/visitOnce.d.ts +0 -2
- package/lib/Utils/JSONLinkedData/visitOnce.d.ts.map +0 -1
- package/lib/Utils/JSONLinkedData/visitOnce.js +0 -17
- package/lib/Utils/LocalizedString.d.ts +0 -26
- package/lib/Utils/LocalizedString.d.ts.map +0 -1
- package/lib/Utils/LocalizedString.js +0 -138
- package/lib/Utils/TypeFocusSink/Context.js +0 -14
- package/lib/Utils/TypeFocusSink/FocusBox.js +0 -91
- package/lib/Utils/TypeFocusSink/getTabIndex.d.ts +0 -2
- package/lib/Utils/TypeFocusSink/getTabIndex.d.ts.map +0 -1
- package/lib/Utils/TypeFocusSink/getTabIndex.js +0 -27
- package/lib/Utils/TypeFocusSink/index.js +0 -18
- package/lib/Utils/TypeFocusSink/inputtableKey.d.ts +0 -2
- package/lib/Utils/TypeFocusSink/inputtableKey.d.ts.map +0 -1
- package/lib/Utils/TypeFocusSink/inputtableKey.js +0 -28
- package/lib/Utils/TypeFocusSink/navigableEvent.js +0 -59
- package/lib/Utils/activityAltText.d.ts +0 -8
- package/lib/Utils/activityAltText.d.ts.map +0 -1
- package/lib/Utils/activityAltText.js +0 -79
- package/lib/Utils/addTargetBlankToHyperlinksMarkdown.js +0 -34
- package/lib/Utils/betterLinks.d.ts +0 -28
- package/lib/Utils/betterLinks.d.ts.map +0 -1
- package/lib/Utils/betterLinks.js +0 -142
- package/lib/Utils/computeSuggestedActionText.d.ts +0 -3
- package/lib/Utils/computeSuggestedActionText.d.ts.map +0 -1
- package/lib/Utils/computeSuggestedActionText.js +0 -24
- package/lib/Utils/createCSSKey.js +0 -16
- package/lib/Utils/createCustomEvent.js +0 -34
- package/lib/Utils/detectBrowser.js +0 -27
- package/lib/Utils/downscaleImageToDataURL/WorkerJob.d.ts +0 -16
- package/lib/Utils/downscaleImageToDataURL/WorkerJob.d.ts.map +0 -1
- package/lib/Utils/downscaleImageToDataURL/WorkerJob.js +0 -2
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingBrowser.d.ts +0 -2
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingBrowser.d.ts.map +0 -1
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingBrowser.js +0 -90
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.d.ts +0 -4
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.d.ts.map +0 -1
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.js +0 -198
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.worker.js +0 -96
- package/lib/Utils/downscaleImageToDataURL/index.d.ts +0 -2
- package/lib/Utils/downscaleImageToDataURL/index.d.ts.map +0 -1
- package/lib/Utils/downscaleImageToDataURL/index.js +0 -44
- package/lib/Utils/filterMap.js +0 -28
- package/lib/Utils/findAncestor.d.ts +0 -2
- package/lib/Utils/findAncestor.d.ts.map +0 -1
- package/lib/Utils/findAncestor.js +0 -15
- package/lib/Utils/firstTabbableDescendant.js +0 -40
- package/lib/Utils/getActivityUniqueId.d.ts +0 -3
- package/lib/Utils/getActivityUniqueId.d.ts.map +0 -1
- package/lib/Utils/getActivityUniqueId.js +0 -11
- package/lib/Utils/intersectionOf.d.ts +0 -5
- package/lib/Utils/intersectionOf.d.ts.map +0 -1
- package/lib/Utils/intersectionOf.js +0 -27
- package/lib/Utils/isZeroOrPositive.d.ts +0 -5
- package/lib/Utils/isZeroOrPositive.d.ts.map +0 -1
- package/lib/Utils/isZeroOrPositive.js +0 -14
- package/lib/Utils/mapMap.js +0 -27
- package/lib/Utils/parseDocumentFromString.d.ts +0 -2
- package/lib/Utils/parseDocumentFromString.d.ts.map +0 -1
- package/lib/Utils/parseDocumentFromString.js +0 -11
- package/lib/Utils/randomId.js +0 -15
- package/lib/Utils/readDataURIToBlob.js +0 -44
- package/lib/Utils/removeInline.js +0 -18
- package/lib/Utils/scrollIntoViewWithBlockNearest.d.ts +0 -7
- package/lib/Utils/scrollIntoViewWithBlockNearest.d.ts.map +0 -1
- package/lib/Utils/scrollIntoViewWithBlockNearest.js +0 -38
- package/lib/Utils/serializeDocumentIntoString.d.ts +0 -2
- package/lib/Utils/serializeDocumentIntoString.d.ts.map +0 -1
- package/lib/Utils/serializeDocumentIntoString.js +0 -27
- package/lib/Utils/shallowEquals.js +0 -21
- package/lib/Utils/singleToArray.d.ts +0 -2
- package/lib/Utils/singleToArray.d.ts.map +0 -1
- package/lib/Utils/singleToArray.js +0 -10
- package/lib/Utils/supportPseudoClass.d.ts +0 -2
- package/lib/Utils/supportPseudoClass.d.ts.map +0 -1
- package/lib/Utils/supportPseudoClass.js +0 -21
- package/lib/Utils/tabbableElements.d.ts +0 -2
- package/lib/Utils/tabbableElements.d.ts.map +0 -1
- package/lib/Utils/tabbableElements.js +0 -20
- package/lib/Utils/textFormatToContentType.js +0 -17
- package/lib/Utils/updateMarkdownAttrs.js +0 -16
- package/lib/Utils/walkMarkdownTokens.js +0 -19
- package/lib/hooks/index.d.ts +0 -22
- package/lib/hooks/index.d.ts.map +0 -1
- package/lib/hooks/index.js +0 -152
- package/lib/hooks/internal/BypassSpeechSynthesisPonyfill.js +0 -278
- package/lib/hooks/internal/UITracker.js +0 -39
- package/lib/hooks/internal/WebChatUIContext.d.ts +0 -8
- package/lib/hooks/internal/WebChatUIContext.d.ts.map +0 -1
- package/lib/hooks/internal/WebChatUIContext.js +0 -11
- package/lib/hooks/internal/createWaitUntilable.d.ts +0 -5
- package/lib/hooks/internal/createWaitUntilable.d.ts.map +0 -1
- package/lib/hooks/internal/createWaitUntilable.js +0 -50
- package/lib/hooks/internal/createWaitUntilable.spec.d.ts +0 -2
- package/lib/hooks/internal/createWaitUntilable.spec.d.ts.map +0 -1
- package/lib/hooks/internal/private/createOnEventShim.d.ts +0 -5
- package/lib/hooks/internal/private/createOnEventShim.d.ts.map +0 -1
- package/lib/hooks/internal/private/createOnEventShim.js +0 -25
- package/lib/hooks/internal/private/createOnEventShim.spec.d.ts +0 -2
- package/lib/hooks/internal/private/createOnEventShim.spec.d.ts.map +0 -1
- package/lib/hooks/internal/useChanged.d.ts +0 -9
- package/lib/hooks/internal/useChanged.d.ts.map +0 -1
- package/lib/hooks/internal/useChanged.js +0 -21
- package/lib/hooks/internal/useDispatchScrollPosition.js +0 -12
- package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.d.ts +0 -2
- package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.d.ts.map +0 -1
- package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.js +0 -12
- package/lib/hooks/internal/useEnterKeyHint.js +0 -18
- package/lib/hooks/internal/useFocusVisible.d.ts +0 -3
- package/lib/hooks/internal/useFocusVisible.d.ts.map +0 -1
- package/lib/hooks/internal/useFocusVisible.js +0 -37
- package/lib/hooks/internal/useFocusWithin.d.ts +0 -3
- package/lib/hooks/internal/useFocusWithin.d.ts.map +0 -1
- package/lib/hooks/internal/useFocusWithin.js +0 -38
- package/lib/hooks/internal/useForceRender.js +0 -24
- package/lib/hooks/internal/useForceRenderAtInterval.d.ts +0 -3
- package/lib/hooks/internal/useForceRenderAtInterval.d.ts.map +0 -1
- package/lib/hooks/internal/useForceRenderAtInterval.js +0 -57
- package/lib/hooks/internal/useInternalMarkdownIt.js +0 -14
- package/lib/hooks/internal/useInternalRenderMarkdownInline.js +0 -16
- package/lib/hooks/internal/useLocalizeAccessKey.d.ts +0 -2
- package/lib/hooks/internal/useLocalizeAccessKey.d.ts.map +0 -1
- package/lib/hooks/internal/useLocalizeAccessKey.js +0 -38
- package/lib/hooks/internal/useMemoWithPrevious.d.ts +0 -3
- package/lib/hooks/internal/useMemoWithPrevious.d.ts.map +0 -1
- package/lib/hooks/internal/useMemoWithPrevious.js +0 -20
- package/lib/hooks/internal/useMemoized.d.ts +0 -11
- package/lib/hooks/internal/useMemoized.d.ts.map +0 -1
- package/lib/hooks/internal/useMemoized.js +0 -82
- package/lib/hooks/internal/useMemoized.spec.jsx +0 -159
- package/lib/hooks/internal/useNavigatorPlatform.js +0 -31
- package/lib/hooks/internal/useNonce.js +0 -14
- package/lib/hooks/internal/useObserveFocusVisible.d.ts +0 -3
- package/lib/hooks/internal/useObserveFocusVisible.d.ts.map +0 -1
- package/lib/hooks/internal/useObserveFocusVisible.js +0 -201
- package/lib/hooks/internal/usePrevious.d.ts +0 -2
- package/lib/hooks/internal/usePrevious.d.ts.map +0 -1
- package/lib/hooks/internal/usePrevious.js +0 -17
- package/lib/hooks/internal/useRegisterFocusTranscript.js +0 -27
- package/lib/hooks/internal/useRegisterScrollTo.js +0 -27
- package/lib/hooks/internal/useRegisterScrollToEnd.js +0 -25
- package/lib/hooks/internal/useReplaceEmoticon.js +0 -58
- package/lib/hooks/internal/useResumeAudioContext.d.ts +0 -2
- package/lib/hooks/internal/useResumeAudioContext.d.ts.map +0 -1
- package/lib/hooks/internal/useResumeAudioContext.js +0 -23
- package/lib/hooks/internal/useSendBoxFocusRef.js +0 -12
- package/lib/hooks/internal/useSettableDictateAbortable.js +0 -15
- package/lib/hooks/internal/useStateRef.d.ts +0 -3
- package/lib/hooks/internal/useStateRef.d.ts.map +0 -1
- package/lib/hooks/internal/useStateRef.js +0 -30
- package/lib/hooks/internal/useStyleToEmotionObject.js +0 -12
- package/lib/hooks/internal/useSuggestedActionsAccessKey.js +0 -14
- package/lib/hooks/internal/useTimer.d.ts +0 -5
- package/lib/hooks/internal/useTimer.d.ts.map +0 -1
- package/lib/hooks/internal/useTimer.js +0 -46
- package/lib/hooks/internal/useTranscriptActivityElementsRef.js +0 -12
- package/lib/hooks/internal/useTranscriptFocusRef.js +0 -12
- package/lib/hooks/internal/useUniqueId.d.ts +0 -2
- package/lib/hooks/internal/useUniqueId.d.ts.map +0 -1
- package/lib/hooks/internal/useUniqueId.js +0 -19
- package/lib/hooks/internal/useValueRef.d.ts +0 -3
- package/lib/hooks/internal/useValueRef.d.ts.map +0 -1
- package/lib/hooks/internal/useValueRef.js +0 -24
- package/lib/hooks/internal/useWebChatUIContext.js +0 -17
- package/lib/hooks/sendBoxFocus.d.ts +0 -7
- package/lib/hooks/sendBoxFocus.d.ts.map +0 -1
- package/lib/hooks/sendBoxFocus.js +0 -13
- package/lib/hooks/transcriptScrollRelative.d.ts +0 -7
- package/lib/hooks/transcriptScrollRelative.d.ts.map +0 -1
- package/lib/hooks/transcriptScrollRelative.js +0 -13
- package/lib/hooks/useDictateAbortable.d.ts +0 -2
- package/lib/hooks/useDictateAbortable.d.ts.map +0 -1
- package/lib/hooks/useDictateAbortable.js +0 -22
- package/lib/hooks/useFocus.d.ts +0 -2
- package/lib/hooks/useFocus.d.ts.map +0 -1
- package/lib/hooks/useFocus.js +0 -65
- package/lib/hooks/useMakeThumbnail.d.ts +0 -2
- package/lib/hooks/useMakeThumbnail.d.ts.map +0 -1
- package/lib/hooks/useMakeThumbnail.js +0 -74
- package/lib/hooks/useObserveScrollPosition.d.ts +0 -3
- package/lib/hooks/useObserveScrollPosition.d.ts.map +0 -1
- package/lib/hooks/useObserveScrollPosition.js +0 -31
- package/lib/hooks/useObserveTranscriptFocus.d.ts +0 -5
- package/lib/hooks/useObserveTranscriptFocus.d.ts.map +0 -1
- package/lib/hooks/useObserveTranscriptFocus.js +0 -31
- package/lib/hooks/useRenderMarkdownAsHTML.d.ts +0 -5
- package/lib/hooks/useRenderMarkdownAsHTML.d.ts.map +0 -1
- package/lib/hooks/useRenderMarkdownAsHTML.js +0 -62
- package/lib/hooks/useScrollDown.d.ts +0 -4
- package/lib/hooks/useScrollDown.d.ts.map +0 -1
- package/lib/hooks/useScrollDown.js +0 -20
- package/lib/hooks/useScrollTo.d.ts +0 -5
- package/lib/hooks/useScrollTo.d.ts.map +0 -1
- package/lib/hooks/useScrollTo.js +0 -22
- package/lib/hooks/useScrollToEnd.d.ts +0 -2
- package/lib/hooks/useScrollToEnd.d.ts.map +0 -1
- package/lib/hooks/useScrollToEnd.js +0 -21
- package/lib/hooks/useScrollUp.d.ts +0 -4
- package/lib/hooks/useScrollUp.d.ts.map +0 -1
- package/lib/hooks/useScrollUp.js +0 -20
- package/lib/hooks/useSendFiles.d.ts +0 -5
- package/lib/hooks/useSendFiles.d.ts.map +0 -1
- package/lib/hooks/useSendFiles.js +0 -63
- package/lib/hooks/useSendMessage.d.ts +0 -8
- package/lib/hooks/useSendMessage.d.ts.map +0 -1
- package/lib/hooks/useSendMessage.js +0 -102
- package/lib/hooks/useStyleSet.d.ts +0 -3
- package/lib/hooks/useStyleSet.d.ts.map +0 -1
- package/lib/hooks/useStyleSet.js +0 -13
- package/lib/hooks/useWebSpeechPonyfill.d.ts +0 -3
- package/lib/hooks/useWebSpeechPonyfill.d.ts.map +0 -1
- package/lib/hooks/useWebSpeechPonyfill.js +0 -12
- package/lib/index.d.ts +0 -330
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -164
- package/lib/internal.d.ts +0 -4
- package/lib/internal.d.ts.map +0 -1
- package/lib/internal.js +0 -21
- package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts +0 -7
- package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts.map +0 -1
- package/lib/providers/ActivityTree/ActivityTreeComposer.js +0 -90
- package/lib/providers/ActivityTree/private/Context.d.ts +0 -9
- package/lib/providers/ActivityTree/private/Context.d.ts.map +0 -1
- package/lib/providers/ActivityTree/private/Context.js +0 -10
- package/lib/providers/ActivityTree/private/types.d.ts +0 -10
- package/lib/providers/ActivityTree/private/types.d.ts.map +0 -1
- package/lib/providers/ActivityTree/private/types.js +0 -2
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts +0 -4
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts.map +0 -1
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.js +0 -36
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts +0 -5
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts.map +0 -1
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.js +0 -147
- package/lib/providers/ActivityTree/private/useContext.d.ts +0 -3
- package/lib/providers/ActivityTree/private/useContext.d.ts.map +0 -1
- package/lib/providers/ActivityTree/private/useContext.js +0 -18
- package/lib/providers/ActivityTree/useActivityTreeWithRenderer.d.ts +0 -8
- package/lib/providers/ActivityTree/useActivityTreeWithRenderer.d.ts.map +0 -1
- package/lib/providers/ActivityTree/useActivityTreeWithRenderer.js +0 -14
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts +0 -37
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.js +0 -145
- package/lib/providers/LiveRegionTwin/private/Context.d.ts +0 -10
- package/lib/providers/LiveRegionTwin/private/Context.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/private/Context.js +0 -11
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts +0 -12
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.js +0 -77
- package/lib/providers/LiveRegionTwin/private/types.d.ts +0 -8
- package/lib/providers/LiveRegionTwin/private/types.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/private/types.js +0 -2
- package/lib/providers/LiveRegionTwin/private/useContext.d.ts +0 -3
- package/lib/providers/LiveRegionTwin/private/useContext.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/private/useContext.js +0 -18
- package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.d.ts +0 -2
- package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.js +0 -20
- package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.d.ts +0 -3
- package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.js +0 -12
- package/lib/providers/LiveRegionTwin/useQueueStaticElement.d.ts +0 -8
- package/lib/providers/LiveRegionTwin/useQueueStaticElement.d.ts.map +0 -1
- package/lib/providers/LiveRegionTwin/useQueueStaticElement.js +0 -17
- package/lib/providers/ModalDialog/ModalDialogComposer.d.ts +0 -7
- package/lib/providers/ModalDialog/ModalDialogComposer.d.ts.map +0 -1
- package/lib/providers/ModalDialog/ModalDialogComposer.js +0 -51
- package/lib/providers/ModalDialog/private/Context.d.ts +0 -13
- package/lib/providers/ModalDialog/private/Context.d.ts.map +0 -1
- package/lib/providers/ModalDialog/private/Context.js +0 -24
- package/lib/providers/ModalDialog/private/Popover.d.ts +0 -10
- package/lib/providers/ModalDialog/private/Popover.d.ts.map +0 -1
- package/lib/providers/ModalDialog/private/Popover.js +0 -79
- package/lib/providers/ModalDialog/private/useContext.d.ts +0 -4
- package/lib/providers/ModalDialog/private/useContext.d.ts.map +0 -1
- package/lib/providers/ModalDialog/private/useContext.js +0 -13
- package/lib/providers/ModalDialog/useClose.d.ts +0 -3
- package/lib/providers/ModalDialog/useClose.d.ts.map +0 -1
- package/lib/providers/ModalDialog/useClose.js +0 -12
- package/lib/providers/ModalDialog/useShowModal.d.ts +0 -3
- package/lib/providers/ModalDialog/useShowModal.d.ts.map +0 -1
- package/lib/providers/ModalDialog/useShowModal.js +0 -12
- package/lib/providers/RovingTabIndex/RovingTabIndexComposer.d.ts +0 -8
- package/lib/providers/RovingTabIndex/RovingTabIndexComposer.d.ts.map +0 -1
- package/lib/providers/RovingTabIndex/RovingTabIndexComposer.js +0 -163
- package/lib/providers/RovingTabIndex/private/Context.d.ts +0 -8
- package/lib/providers/RovingTabIndex/private/Context.d.ts.map +0 -1
- package/lib/providers/RovingTabIndex/private/Context.js +0 -17
- package/lib/providers/RovingTabIndex/private/useContext.d.ts +0 -2
- package/lib/providers/RovingTabIndex/private/useContext.d.ts.map +0 -1
- package/lib/providers/RovingTabIndex/private/useContext.js +0 -18
- package/lib/providers/RovingTabIndex/useItemRef.d.ts +0 -3
- package/lib/providers/RovingTabIndex/useItemRef.d.ts.map +0 -1
- package/lib/providers/RovingTabIndex/useItemRef.js +0 -19
- package/lib/providers/Theme/ThemeProvider.d.ts +0 -7
- package/lib/providers/Theme/ThemeProvider.d.ts.map +0 -1
- package/lib/providers/Theme/ThemeProvider.js +0 -103
- package/lib/providers/Theme/private/Context.d.ts +0 -19
- package/lib/providers/Theme/private/Context.d.ts.map +0 -1
- package/lib/providers/Theme/private/Context.js +0 -26
- package/lib/providers/Theme/useTheme.d.ts +0 -2
- package/lib/providers/Theme/useTheme.d.ts.map +0 -1
- package/lib/providers/Theme/useTheme.js +0 -13
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.d.ts +0 -7
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.js +0 -153
- package/lib/providers/TranscriptFocus/private/Context.d.ts +0 -12
- package/lib/providers/TranscriptFocus/private/Context.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/private/Context.js +0 -11
- package/lib/providers/TranscriptFocus/private/useContext.d.ts +0 -2
- package/lib/providers/TranscriptFocus/private/useContext.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/private/useContext.js +0 -18
- package/lib/providers/TranscriptFocus/useActiveDescendantId.d.ts +0 -2
- package/lib/providers/TranscriptFocus/useActiveDescendantId.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/useActiveDescendantId.js +0 -12
- package/lib/providers/TranscriptFocus/useFocusByActivityKey.d.ts +0 -8
- package/lib/providers/TranscriptFocus/useFocusByActivityKey.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/useFocusByActivityKey.js +0 -18
- package/lib/providers/TranscriptFocus/useFocusRelativeActivity.d.ts +0 -2
- package/lib/providers/TranscriptFocus/useFocusRelativeActivity.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/useFocusRelativeActivity.js +0 -12
- package/lib/providers/TranscriptFocus/useFocusedActivityKey.d.ts +0 -2
- package/lib/providers/TranscriptFocus/useFocusedActivityKey.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/useFocusedActivityKey.js +0 -12
- package/lib/providers/TranscriptFocus/useFocusedExplicitly.d.ts +0 -2
- package/lib/providers/TranscriptFocus/useFocusedExplicitly.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/useFocusedExplicitly.js +0 -12
- package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.d.ts +0 -2
- package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.d.ts.map +0 -1
- package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.js +0 -12
- package/lib/providers/internal/SendBox/SendBoxComposer.d.ts +0 -4
- package/lib/providers/internal/SendBox/SendBoxComposer.d.ts.map +0 -1
- package/lib/providers/internal/SendBox/SendBoxComposer.js +0 -161
- package/lib/providers/internal/SendBox/private/Context.d.ts +0 -4
- package/lib/providers/internal/SendBox/private/Context.d.ts.map +0 -1
- package/lib/providers/internal/SendBox/private/Context.js +0 -11
- package/lib/providers/internal/SendBox/private/types.d.ts +0 -8
- package/lib/providers/internal/SendBox/private/types.d.ts.map +0 -1
- package/lib/providers/internal/SendBox/private/types.js +0 -2
- package/lib/providers/internal/SendBox/private/useContext.d.ts +0 -3
- package/lib/providers/internal/SendBox/private/useContext.d.ts.map +0 -1
- package/lib/providers/internal/SendBox/private/useContext.js +0 -17
- package/lib/providers/internal/SendBox/useErrorMessageId.d.ts +0 -12
- package/lib/providers/internal/SendBox/useErrorMessageId.d.ts.map +0 -1
- package/lib/providers/internal/SendBox/useErrorMessageId.js +0 -22
- package/lib/providers/internal/SendBox/useSubmit.d.ts +0 -14
- package/lib/providers/internal/SendBox/useSubmit.d.ts.map +0 -1
- package/lib/providers/internal/SendBox/useSubmit.js +0 -20
- package/lib/tsconfig.json +0 -18
- package/lib/types/ContextOf.d.ts +0 -4
- package/lib/types/ContextOf.d.ts.map +0 -1
- package/lib/types/ContextOf.js +0 -2
- package/lib/types/PropsOf.d.ts +0 -3
- package/lib/types/PropsOf.d.ts.map +0 -1
- package/lib/types/PropsOf.js +0 -2
- package/lib/types/ScrollPosition.d.ts +0 -6
- package/lib/types/ScrollPosition.d.ts.map +0 -1
- package/lib/types/ScrollPosition.js +0 -2
- package/lib/types/internal/FocusTranscriptInit.d.ts +0 -4
- package/lib/types/internal/FocusTranscriptInit.d.ts.map +0 -1
- package/lib/types/internal/FocusTranscriptInit.js +0 -2
- package/lib/types/internal/SendStatus.d.ts +0 -7
- package/lib/types/internal/SendStatus.d.ts.map +0 -1
- package/lib/types/internal/SendStatus.js +0 -19
- package/lib/types/internal/TypeOfArray.d.ts +0 -2
- package/lib/types/internal/TypeOfArray.d.ts.map +0 -1
- package/lib/types/internal/TypeOfArray.js +0 -2
- package/lib/withEmoji/private/UndoEntry.d.ts +0 -9
- package/lib/withEmoji/private/UndoEntry.d.ts.map +0 -1
- package/lib/withEmoji/private/UndoEntry.js +0 -69
- package/lib/withEmoji/private/useUndoStack.d.ts +0 -6
- package/lib/withEmoji/private/useUndoStack.d.ts.map +0 -1
- package/lib/withEmoji/private/useUndoStack.js +0 -64
- package/lib/withEmoji/withEmoji.d.ts +0 -15
- package/lib/withEmoji/withEmoji.d.ts.map +0 -1
- package/lib/withEmoji/withEmoji.js +0 -128
- package/src/Activity/SayAlt.js +0 -26
- package/src/ActivityStatus/Slotted.tsx +0 -26
- package/src/ActivityStatus/private/Feedback/Feedback.tsx +0 -60
- package/src/ActivityStatus/private/Feedback/private/VoteButton.tsx +0 -36
- package/src/Attachment/Assets/DownloadIcon.js +0 -29
- package/src/Avatar/ImageAvatar.js +0 -49
- package/src/Middleware/ScrollToEndButton/ScrollToEndButton.js +0 -45
- package/src/Styles/StyleSet/CSSCustomProperties.ts +0 -46
- package/src/Styles/StyleSet/KeyboardHelp.ts +0 -204
- package/src/Styles/StyleSet/SingleAttachmentActivity.ts +0 -18
- package/src/Styles/StyleSet/SlottedActivityStatus.ts +0 -16
- package/src/Transcript/KeyboardHelp.tsx +0 -319
- package/src/TranscriptActivity.tsx +0 -64
- package/src/Utils/CroppedImage.js +0 -45
- package/src/Utils/parseDocumentFromString.ts +0 -5
- package/src/Utils/serializeDocumentIntoString.ts +0 -10
- package/src/hooks/internal/useStyleToEmotionObject.js +0 -5
- package/src/providers/ActivityTree/ActivityTreeComposer.tsx +0 -90
- package/src/providers/ActivityTree/private/Context.ts +0 -12
- package/src/providers/ActivityTree/private/types.ts +0 -12
- package/src/providers/ActivityTree/private/useActivitiesWithRenderer.ts +0 -40
- package/src/providers/ActivityTree/private/useActivityTreeWithRenderer.ts +0 -140
- package/src/providers/ActivityTree/private/useContext.ts +0 -15
- package/src/providers/ActivityTree/useActivityTreeWithRenderer.ts +0 -16
- package/src/providers/LiveRegionTwin/LiveRegionTwinComposer.tsx +0 -172
- package/src/providers/LiveRegionTwin/private/Context.ts +0 -15
- /package/dist/{chunk-X37JABN5.mjs.LEGAL.txt → botframework-webchat-component.decorator.css.LEGAL.txt} +0 -0
- /package/src/{ActivityStatus/private/Feedback/private/icons → ActivityFeedback/private}/ThumbDislike16Filled.tsx +0 -0
- /package/src/{ActivityStatus/private/Feedback/private/icons → ActivityFeedback/private}/ThumbDislike16Regular.tsx +0 -0
- /package/src/{ActivityStatus/private/Feedback/private/icons → ActivityFeedback/private}/ThumbLike16Filled.tsx +0 -0
- /package/src/{ActivityStatus/private/Feedback/private/icons → ActivityFeedback/private}/ThumbLike16Regular.tsx +0 -0
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import { useChatHistoryDOMContext } from './private/ChatHistoryDOMContext';
|
|
3
|
+
|
|
4
|
+
export default function useActivityElementMapRef(): RefObject<Map<string, HTMLElement>> {
|
|
5
|
+
return useChatHistoryDOMContext().activityElementRef;
|
|
6
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import mathRandom from 'math-random';
|
|
2
|
+
import React, { memo, useCallback, useMemo, type ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
import useReactCodeBlockClass from './customElements/CodeBlock';
|
|
5
|
+
import { CodeBlockCopyButtonElement } from './customElements/CodeBlockCopyButton';
|
|
6
|
+
import CustomElementsContext from './private/CustomElementsContext';
|
|
7
|
+
|
|
8
|
+
type CustomElementsComposerProps = Readonly<{
|
|
9
|
+
children?: ReactNode | undefined;
|
|
10
|
+
}>;
|
|
11
|
+
|
|
12
|
+
const CustomElementsComposer = ({ children }: CustomElementsComposerProps) => {
|
|
13
|
+
// eslint-disable-next-line no-magic-numbers
|
|
14
|
+
const hash = useMemo(() => mathRandom().toString(36).substring(2, 7), []);
|
|
15
|
+
|
|
16
|
+
const registerCustomElement = useCallback(
|
|
17
|
+
(tagName: string, customElementConstructor: CustomElementConstructor): string => {
|
|
18
|
+
const fullTagName = `webchat-${hash}--${tagName}` as const;
|
|
19
|
+
|
|
20
|
+
customElements.define(
|
|
21
|
+
fullTagName,
|
|
22
|
+
class extends customElementConstructor {
|
|
23
|
+
static get observedAttributes(): readonly string[] {
|
|
24
|
+
return Object.freeze(
|
|
25
|
+
'observedAttributes' in customElementConstructor
|
|
26
|
+
? (customElementConstructor.observedAttributes as string[])
|
|
27
|
+
: []
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
return fullTagName;
|
|
34
|
+
},
|
|
35
|
+
[hash]
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
const codeBlockCopyButtonTagName = useMemo(
|
|
39
|
+
() => registerCustomElement('code-block-copy-button', CodeBlockCopyButtonElement),
|
|
40
|
+
[registerCustomElement]
|
|
41
|
+
);
|
|
42
|
+
|
|
43
|
+
const CodeBlockClass = useReactCodeBlockClass(codeBlockCopyButtonTagName);
|
|
44
|
+
|
|
45
|
+
const codeBlockTagName = useMemo(
|
|
46
|
+
() => registerCustomElement('code-block', CodeBlockClass),
|
|
47
|
+
[CodeBlockClass, registerCustomElement]
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
const context = useMemo(
|
|
51
|
+
() => Object.freeze({ codeBlockTagName, codeBlockCopyButtonTagName }),
|
|
52
|
+
[codeBlockTagName, codeBlockCopyButtonTagName]
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
return <CustomElementsContext.Provider value={context}>{children}</CustomElementsContext.Provider>;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export default memo(CustomElementsComposer);
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/* eslint-disable class-methods-use-this */
|
|
2
|
+
import { hooks } from 'botframework-webchat-api';
|
|
3
|
+
import { ReactNode, useMemo, useRef } from 'react';
|
|
4
|
+
|
|
5
|
+
import { useStyleSet } from '../../../hooks';
|
|
6
|
+
import { defaultHighlightCode, HighlightCodeFn } from '../../../hooks/internal/codeHighlighter';
|
|
7
|
+
import { parseDocumentFragmentFromString, useCodeHighlighter } from '../../../internal';
|
|
8
|
+
|
|
9
|
+
const { useStyleOptions, useLocalizer } = hooks;
|
|
10
|
+
|
|
11
|
+
class CodeBlock extends HTMLElement {
|
|
12
|
+
static observedAttributes = ['theme', 'language'];
|
|
13
|
+
|
|
14
|
+
#connected = false;
|
|
15
|
+
#originalFragment: DocumentFragment = undefined;
|
|
16
|
+
#updateTask?: Promise<void>;
|
|
17
|
+
|
|
18
|
+
copyButtonElement: HTMLElement;
|
|
19
|
+
|
|
20
|
+
get code() {
|
|
21
|
+
return this.querySelector('code')?.textContent ?? '';
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
get theme() {
|
|
25
|
+
return this.getAttribute('theme');
|
|
26
|
+
}
|
|
27
|
+
set theme(value: string) {
|
|
28
|
+
this.setAttribute('theme', value);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
get language() {
|
|
32
|
+
return this.getAttribute('language');
|
|
33
|
+
}
|
|
34
|
+
set language(value: string) {
|
|
35
|
+
this.setAttribute('language', value);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
get options() {
|
|
39
|
+
const { theme } = this;
|
|
40
|
+
return theme ? { theme } : undefined;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
connectedCallback() {
|
|
44
|
+
this.#connected = true;
|
|
45
|
+
this.scheduleUpdate();
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
disconnectedCallback() {
|
|
49
|
+
this.#connected = false;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
attributeChangedCallback(_name: string, oldValue: string, newValue: string) {
|
|
53
|
+
const updated = !Object.is(oldValue, newValue);
|
|
54
|
+
|
|
55
|
+
this.#connected && updated && this.scheduleUpdate();
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
scheduleUpdate() {
|
|
59
|
+
if (this.#updateTask) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
this.#updateTask = Promise.resolve().then(() => {
|
|
64
|
+
this.#updateTask = undefined;
|
|
65
|
+
this.update();
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
update() {
|
|
70
|
+
const { code, language, options, ownerDocument: document } = this;
|
|
71
|
+
|
|
72
|
+
if (!code) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
if (!this.#originalFragment) {
|
|
77
|
+
this.#originalFragment = document.createDocumentFragment();
|
|
78
|
+
this.#originalFragment.replaceChildren(...this.children);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
const result = this.highlightCode(code, language, options);
|
|
82
|
+
const highlightedCodeFragment =
|
|
83
|
+
result instanceof DocumentFragment ? result : parseDocumentFragmentFromString(result);
|
|
84
|
+
|
|
85
|
+
const body = highlightedCodeFragment.querySelector('pre');
|
|
86
|
+
|
|
87
|
+
body?.classList.add('webchat__code-block__body');
|
|
88
|
+
options?.theme && body?.classList.add(`webchat__code-block__theme--${options.theme}`);
|
|
89
|
+
|
|
90
|
+
highlightedCodeFragment.insertBefore(this.copyButtonElement, highlightedCodeFragment.firstChild);
|
|
91
|
+
|
|
92
|
+
this.replaceChildren(highlightedCodeFragment);
|
|
93
|
+
|
|
94
|
+
if (this.copyButtonElement) {
|
|
95
|
+
this.copyButtonElement.dataset.value = code;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
highlightCode(...args: Parameters<HighlightCodeFn>) {
|
|
100
|
+
return defaultHighlightCode(...args);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export type CodeBlockProps = Readonly<{
|
|
105
|
+
children?: ReactNode | undefined;
|
|
106
|
+
className?: string | undefined;
|
|
107
|
+
language?: string | undefined;
|
|
108
|
+
theme?: string | undefined;
|
|
109
|
+
}>;
|
|
110
|
+
|
|
111
|
+
type CodeBlockReactProps = Readonly<{
|
|
112
|
+
codeBlockClass: string | undefined;
|
|
113
|
+
codeBlockTheme: 'github-light-default' | 'github-dark-default';
|
|
114
|
+
copyButtonAltCopied: string;
|
|
115
|
+
copyButtonAltCopy: string;
|
|
116
|
+
copyButtonClassName: string;
|
|
117
|
+
copyButtonTagName: string;
|
|
118
|
+
highlightCode: HighlightCodeFn;
|
|
119
|
+
}>;
|
|
120
|
+
|
|
121
|
+
const useCodeBlockProps = (copyButtonTagName: string) => {
|
|
122
|
+
const highlightCode = useCodeHighlighter();
|
|
123
|
+
const localize = useLocalizer();
|
|
124
|
+
const [{ codeBlock: codeBlockClass, codeBlockCopyButton: copyButtonClassName }] = useStyleSet();
|
|
125
|
+
const [{ codeBlockTheme }] = useStyleOptions();
|
|
126
|
+
const copyButtonAltCopied = localize('COPY_BUTTON_COPIED_TEXT');
|
|
127
|
+
const copyButtonAltCopy = localize('COPY_BUTTON_TEXT');
|
|
128
|
+
const propsChangedEventTarget = useMemo<EventTarget>(() => new EventTarget(), []);
|
|
129
|
+
const propsRef = useRef<CodeBlockReactProps>();
|
|
130
|
+
|
|
131
|
+
useMemo(() => {
|
|
132
|
+
propsRef.current = Object.freeze({
|
|
133
|
+
codeBlockClass,
|
|
134
|
+
codeBlockTheme,
|
|
135
|
+
copyButtonAltCopied,
|
|
136
|
+
copyButtonAltCopy,
|
|
137
|
+
copyButtonClassName,
|
|
138
|
+
copyButtonTagName,
|
|
139
|
+
highlightCode
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
propsChangedEventTarget.dispatchEvent(new CustomEvent('change'));
|
|
143
|
+
}, [
|
|
144
|
+
codeBlockClass,
|
|
145
|
+
codeBlockTheme,
|
|
146
|
+
copyButtonAltCopied,
|
|
147
|
+
copyButtonAltCopy,
|
|
148
|
+
copyButtonClassName,
|
|
149
|
+
copyButtonTagName,
|
|
150
|
+
highlightCode,
|
|
151
|
+
propsChangedEventTarget
|
|
152
|
+
]);
|
|
153
|
+
|
|
154
|
+
return useMemo(
|
|
155
|
+
() => Object.freeze([propsChangedEventTarget, propsRef] as const),
|
|
156
|
+
[propsChangedEventTarget, propsRef]
|
|
157
|
+
);
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
export default function useReactCodeBlockClass(copyButtonTagName: string) {
|
|
161
|
+
const [codeBlockTarget, codeBlockPropsRef] = useCodeBlockProps(copyButtonTagName);
|
|
162
|
+
|
|
163
|
+
return useMemo(
|
|
164
|
+
() =>
|
|
165
|
+
class ReactCodeBlock extends CodeBlock {
|
|
166
|
+
static observedAttributes = CodeBlock.observedAttributes;
|
|
167
|
+
|
|
168
|
+
#prevProps: CodeBlockReactProps | undefined;
|
|
169
|
+
|
|
170
|
+
get #props() {
|
|
171
|
+
return codeBlockPropsRef.current;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
#handlePropsChange = () => {
|
|
175
|
+
const props = this.#props;
|
|
176
|
+
const prevProps = this.#prevProps;
|
|
177
|
+
|
|
178
|
+
this.#prevProps = props;
|
|
179
|
+
|
|
180
|
+
if (prevProps?.codeBlockClass !== props?.codeBlockClass) {
|
|
181
|
+
prevProps?.codeBlockClass && this.classList.remove(prevProps.codeBlockClass);
|
|
182
|
+
props?.codeBlockClass && this.classList.add(props.codeBlockClass);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
this.setAttribute('theme', props.codeBlockTheme);
|
|
186
|
+
|
|
187
|
+
if (prevProps?.highlightCode !== props.highlightCode) {
|
|
188
|
+
this.scheduleUpdate();
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
if (prevProps?.copyButtonTagName !== props.copyButtonTagName || !this.copyButtonElement) {
|
|
192
|
+
const { ownerDocument: document } = this;
|
|
193
|
+
|
|
194
|
+
this.copyButtonElement = document.createElement(props.copyButtonTagName);
|
|
195
|
+
this.scheduleUpdate();
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
this.copyButtonElement.className = props.copyButtonClassName;
|
|
199
|
+
this.copyButtonElement.dataset.altCopy = props.copyButtonAltCopy;
|
|
200
|
+
this.copyButtonElement.dataset.altCopied = props.copyButtonAltCopied;
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
connectedCallback(): void {
|
|
204
|
+
this.classList.add('webchat__code-block');
|
|
205
|
+
|
|
206
|
+
codeBlockTarget.addEventListener('change', this.#handlePropsChange);
|
|
207
|
+
|
|
208
|
+
this.#handlePropsChange();
|
|
209
|
+
super.connectedCallback();
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
disconnectedCallback(): void {
|
|
213
|
+
codeBlockTarget.removeEventListener('change', this.#handlePropsChange);
|
|
214
|
+
|
|
215
|
+
super.disconnectedCallback();
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
highlightCode(...args: Parameters<HighlightCodeFn>) {
|
|
219
|
+
const [, language, options] = args;
|
|
220
|
+
|
|
221
|
+
if (!language || !options) {
|
|
222
|
+
return defaultHighlightCode(...args);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
return this.#props.highlightCode(...args);
|
|
226
|
+
}
|
|
227
|
+
},
|
|
228
|
+
[codeBlockPropsRef, codeBlockTarget]
|
|
229
|
+
);
|
|
230
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import classNames from 'classnames';
|
|
2
|
+
import React, { memo, useCallback, useState } from 'react';
|
|
3
|
+
import { useRefFrom } from 'use-ref-from';
|
|
4
|
+
import { useStateWithRef } from 'use-state-with-ref';
|
|
5
|
+
import testIds from '../../../testIds';
|
|
6
|
+
import wrapAsCustomElement from './wrapAsCustomElement';
|
|
7
|
+
|
|
8
|
+
export type CodeBlockCopyButtonProps = Readonly<{
|
|
9
|
+
className: string;
|
|
10
|
+
'data-alt-copied': string;
|
|
11
|
+
'data-alt-copy': string;
|
|
12
|
+
'data-value': string;
|
|
13
|
+
}>;
|
|
14
|
+
|
|
15
|
+
const CodeBlockCopyButton = memo(
|
|
16
|
+
({
|
|
17
|
+
className,
|
|
18
|
+
'data-alt-copied': copiedAlt,
|
|
19
|
+
'data-alt-copy': copyAlt,
|
|
20
|
+
'data-value': value
|
|
21
|
+
}: CodeBlockCopyButtonProps) => {
|
|
22
|
+
const [disabled, setDisabled, disabledRef] = useStateWithRef(false);
|
|
23
|
+
const [pressed, setPressed] = useState(false);
|
|
24
|
+
const valueRef = useRefFrom(value);
|
|
25
|
+
|
|
26
|
+
const handleClick = useCallback(() => {
|
|
27
|
+
if (disabledRef.current) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
let obsoleted = false;
|
|
32
|
+
|
|
33
|
+
(async () => {
|
|
34
|
+
try {
|
|
35
|
+
const { state } = await navigator.permissions.query({ name: 'clipboard-write' as any });
|
|
36
|
+
|
|
37
|
+
if (!obsoleted) {
|
|
38
|
+
if (state === 'granted') {
|
|
39
|
+
await navigator.clipboard?.write([
|
|
40
|
+
new ClipboardItem({ 'text/plain': new Blob([valueRef.current], { type: 'text/plain' }) })
|
|
41
|
+
]);
|
|
42
|
+
|
|
43
|
+
obsoleted || setPressed(true);
|
|
44
|
+
} else if (state === 'denied') {
|
|
45
|
+
setDisabled(true);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
} catch (error) {
|
|
49
|
+
console.warn('botframework-webchat: Failed to copy code block to clipboard.', error);
|
|
50
|
+
}
|
|
51
|
+
})();
|
|
52
|
+
|
|
53
|
+
return () => {
|
|
54
|
+
obsoleted = true;
|
|
55
|
+
};
|
|
56
|
+
}, [disabledRef, setDisabled, setPressed, valueRef]);
|
|
57
|
+
|
|
58
|
+
const handleAnimationEnd = useCallback(() => setPressed(false), [setPressed]);
|
|
59
|
+
|
|
60
|
+
return (
|
|
61
|
+
<button
|
|
62
|
+
aria-disabled={disabled}
|
|
63
|
+
aria-live="assertive"
|
|
64
|
+
aria-pressed={pressed ? 'true' : undefined}
|
|
65
|
+
className={classNames(className, 'webchat__code-block-copy-button', {
|
|
66
|
+
'webchat__code-block-copy-button--copied': pressed
|
|
67
|
+
})}
|
|
68
|
+
data-testid={testIds.codeBlockCopyButton}
|
|
69
|
+
onAnimationEnd={handleAnimationEnd}
|
|
70
|
+
onClick={handleClick}
|
|
71
|
+
type="button"
|
|
72
|
+
>
|
|
73
|
+
<div
|
|
74
|
+
aria-hidden={pressed ? 'true' : undefined}
|
|
75
|
+
aria-label={copyAlt}
|
|
76
|
+
className="webchat__code-block-copy-button__icon webchat__code-block-copy-button__icon--copy"
|
|
77
|
+
role="img"
|
|
78
|
+
/>
|
|
79
|
+
<div
|
|
80
|
+
aria-hidden={pressed ? undefined : 'true'}
|
|
81
|
+
aria-label={copiedAlt}
|
|
82
|
+
className="webchat__code-block-copy-button__icon webchat__code-block-copy-button__icon--copied"
|
|
83
|
+
role="img"
|
|
84
|
+
/>
|
|
85
|
+
</button>
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
);
|
|
89
|
+
|
|
90
|
+
CodeBlockCopyButton.displayName = 'CodeBlockCopyButton';
|
|
91
|
+
|
|
92
|
+
const CodeBlockCopyButtonElement = wrapAsCustomElement(CodeBlockCopyButton, [
|
|
93
|
+
'className',
|
|
94
|
+
'data-alt-copied',
|
|
95
|
+
'data-alt-copy',
|
|
96
|
+
'data-value'
|
|
97
|
+
]);
|
|
98
|
+
|
|
99
|
+
export default CodeBlockCopyButton;
|
|
100
|
+
|
|
101
|
+
export { CodeBlockCopyButtonElement };
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { createElement, type ComponentType } from 'react';
|
|
2
|
+
import { render, unmountComponentAtNode } from 'react-dom';
|
|
3
|
+
|
|
4
|
+
const ConnectionState = {
|
|
5
|
+
DISCONNECTED: 0,
|
|
6
|
+
CONNECTED: 1,
|
|
7
|
+
PENDING: 2
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export default function wrapAsCustomElement<Props extends { [key: string]: string | undefined } & { children?: never }>(
|
|
11
|
+
component: ComponentType<Props>,
|
|
12
|
+
propKeys: (keyof Props)[]
|
|
13
|
+
) {
|
|
14
|
+
type AttributeName = keyof { [K in keyof Props as K extends 'className' ? 'class' : K]: Props[K] } & string;
|
|
15
|
+
|
|
16
|
+
const attributeNames = propKeys.map(key => (key === 'className' ? 'class' : key)) as AttributeName[];
|
|
17
|
+
|
|
18
|
+
return class ReactWrapper extends HTMLElement {
|
|
19
|
+
static get observedAttributes(): string[] {
|
|
20
|
+
return attributeNames;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
#connected = ConnectionState.DISCONNECTED;
|
|
24
|
+
|
|
25
|
+
constructor() {
|
|
26
|
+
super();
|
|
27
|
+
|
|
28
|
+
const propMap = (this.#propMap = new Map<keyof Props, null | string | undefined>());
|
|
29
|
+
|
|
30
|
+
for (const key of attributeNames) {
|
|
31
|
+
const value = this.getAttribute(key);
|
|
32
|
+
|
|
33
|
+
typeof value === 'string' && propMap.set(key === 'class' ? 'className' : key, value);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
#propMap: Map<keyof Props, string>;
|
|
38
|
+
|
|
39
|
+
#getProps(): Props {
|
|
40
|
+
const propEntries: [keyof Props, string][] = Array.from<[keyof Props, string]>(this.#propMap.entries());
|
|
41
|
+
|
|
42
|
+
return Object.freeze(Object.fromEntries(propEntries) as Props);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
attributeChangedCallback(name: AttributeName, _oldValue: string, newValue: string) {
|
|
46
|
+
if (name === 'class') {
|
|
47
|
+
name = 'className';
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const prevProps = new Map(this.#propMap);
|
|
51
|
+
|
|
52
|
+
if (typeof newValue === 'string') {
|
|
53
|
+
this.#propMap.set(name, newValue);
|
|
54
|
+
} else {
|
|
55
|
+
this.#propMap.delete(name);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
const areEqual =
|
|
59
|
+
prevProps.size === this.#propMap.size &&
|
|
60
|
+
Array.from(new Set(prevProps.keys()).union(new Set(this.#propMap))).every((key: string) =>
|
|
61
|
+
Object.is(prevProps.get(key), this.#propMap.get(key))
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
// For every attribute change, browser will call this function again. It is not batched.
|
|
65
|
+
!areEqual &&
|
|
66
|
+
this.#connected === ConnectionState.CONNECTED &&
|
|
67
|
+
render(createElement(component, this.#getProps()), this);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
connectedCallback() {
|
|
71
|
+
this.#connected !== ConnectionState.PENDING && render(createElement(component, this.#getProps()), this);
|
|
72
|
+
this.#connected = ConnectionState.CONNECTED;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
async disconnectedCallback() {
|
|
76
|
+
this.#connected = ConnectionState.PENDING;
|
|
77
|
+
await Promise.resolve();
|
|
78
|
+
if (this.#connected === ConnectionState.PENDING) {
|
|
79
|
+
this.#connected = ConnectionState.DISCONNECTED;
|
|
80
|
+
unmountComponentAtNode(this);
|
|
81
|
+
this.replaceChildren();
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
|
|
3
|
+
export type CustomElementsContextType = Readonly<{ codeBlockTagName: string; codeBlockCopyButtonTagName: string }>;
|
|
4
|
+
|
|
5
|
+
const CustomElementsContext = createContext<CustomElementsContextType>(
|
|
6
|
+
new Proxy({} as CustomElementsContextType, {
|
|
7
|
+
get() {
|
|
8
|
+
throw new Error('botframework-webchat: Cannot use this hook outside of <CustomElementsComposer>.');
|
|
9
|
+
}
|
|
10
|
+
})
|
|
11
|
+
);
|
|
12
|
+
|
|
13
|
+
CustomElementsContext.displayName = 'CustomElementsContext';
|
|
14
|
+
|
|
15
|
+
export default CustomElementsContext;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import useCustomElementsContext from './private/useCustomElementsContext';
|
|
3
|
+
|
|
4
|
+
export default function useCodeBlockCopyButtonTagName(): readonly [string] {
|
|
5
|
+
const { codeBlockCopyButtonTagName } = useCustomElementsContext();
|
|
6
|
+
|
|
7
|
+
return useMemo(() => Object.freeze([codeBlockCopyButtonTagName]), [codeBlockCopyButtonTagName]);
|
|
8
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { createElement, memo, useMemo } from 'react';
|
|
2
|
+
|
|
3
|
+
import { CodeBlockProps } from './customElements/CodeBlock';
|
|
4
|
+
import useCustomElementsContext from './private/useCustomElementsContext';
|
|
5
|
+
|
|
6
|
+
export default function useCodeBlockTag() {
|
|
7
|
+
const { codeBlockTagName } = useCustomElementsContext();
|
|
8
|
+
|
|
9
|
+
return useMemo(
|
|
10
|
+
() =>
|
|
11
|
+
Object.freeze([
|
|
12
|
+
codeBlockTagName,
|
|
13
|
+
memo((props: CodeBlockProps) =>
|
|
14
|
+
createElement(codeBlockTagName, { ...props, class: props.className, className: undefined })
|
|
15
|
+
)
|
|
16
|
+
] as const),
|
|
17
|
+
[codeBlockTagName]
|
|
18
|
+
);
|
|
19
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type WebChatActivity } from 'botframework-webchat-core';
|
|
2
|
+
|
|
3
|
+
type GroupedRenderingActivities = Readonly<{
|
|
4
|
+
activities: readonly WebChatActivity[];
|
|
5
|
+
children: readonly GroupedRenderingActivities[];
|
|
6
|
+
key: string;
|
|
7
|
+
groupingName: string | undefined;
|
|
8
|
+
}>;
|
|
9
|
+
|
|
10
|
+
export { type GroupedRenderingActivities };
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { hooks } from 'botframework-webchat-api';
|
|
2
|
+
import { type WebChatActivity } from 'botframework-webchat-core';
|
|
3
|
+
import React, { memo, useMemo } from 'react';
|
|
4
|
+
import { object, optional, parse, pipe, readonly, type InferOutput } from 'valibot';
|
|
5
|
+
|
|
6
|
+
import reactNode from '../../types/internal/reactNode';
|
|
7
|
+
import useRenderingActivities from '../RenderingActivities/useRenderingActivities';
|
|
8
|
+
import { type GroupedRenderingActivities } from './GroupedRenderingActivities';
|
|
9
|
+
import GroupedRenderingActivitiesContext, {
|
|
10
|
+
type GroupedRenderingActivitiesContextType
|
|
11
|
+
} from './private/GroupedRenderingActivitiesContext';
|
|
12
|
+
|
|
13
|
+
const { useGetKeyByActivity, useGroupActivitiesByName, useStyleOptions } = hooks;
|
|
14
|
+
|
|
15
|
+
const groupedRenderingActivitiesComposerPropsSchema = pipe(
|
|
16
|
+
object({
|
|
17
|
+
children: optional(reactNode())
|
|
18
|
+
}),
|
|
19
|
+
readonly()
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
type GroupedRenderingActivitiesComposerProps = InferOutput<typeof groupedRenderingActivitiesComposerPropsSchema>;
|
|
23
|
+
|
|
24
|
+
const GroupedRenderingActivitiesComposer = (props: GroupedRenderingActivitiesComposerProps) => {
|
|
25
|
+
const { children } = parse(groupedRenderingActivitiesComposerPropsSchema, props);
|
|
26
|
+
|
|
27
|
+
const [{ groupActivitiesBy }] = useStyleOptions();
|
|
28
|
+
const [activities] = useRenderingActivities();
|
|
29
|
+
const getKeyByActivity = useGetKeyByActivity();
|
|
30
|
+
const groupActivitiesByName = useGroupActivitiesByName();
|
|
31
|
+
|
|
32
|
+
const numRenderingActivitiesState = useMemo<readonly [number]>(
|
|
33
|
+
() => Object.freeze([activities.length] as const),
|
|
34
|
+
[activities]
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
const groupedRenderingActivitiesState = useMemo<readonly [readonly GroupedRenderingActivities[]]>(() => {
|
|
38
|
+
const run = (
|
|
39
|
+
activities: readonly WebChatActivity[],
|
|
40
|
+
groups: readonly string[]
|
|
41
|
+
): readonly GroupedRenderingActivities[] => {
|
|
42
|
+
const [name, ...nextNames] = groups;
|
|
43
|
+
|
|
44
|
+
if (typeof name === 'undefined') {
|
|
45
|
+
return Object.freeze([
|
|
46
|
+
Object.freeze({
|
|
47
|
+
activities,
|
|
48
|
+
children: Object.freeze([]),
|
|
49
|
+
key: getKeyByActivity(activities[0]),
|
|
50
|
+
groupingName: undefined
|
|
51
|
+
})
|
|
52
|
+
]);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return Object.freeze(
|
|
56
|
+
groupActivitiesByName(activities, name).map(grouping =>
|
|
57
|
+
Object.freeze({
|
|
58
|
+
activities: grouping,
|
|
59
|
+
children: run(grouping, nextNames),
|
|
60
|
+
groupingName: name,
|
|
61
|
+
key: getKeyByActivity(grouping[0])
|
|
62
|
+
} satisfies GroupedRenderingActivities)
|
|
63
|
+
)
|
|
64
|
+
);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
return Object.freeze([run(activities, groupActivitiesBy)]);
|
|
68
|
+
}, [activities, getKeyByActivity, groupActivitiesBy, groupActivitiesByName]);
|
|
69
|
+
|
|
70
|
+
const context = useMemo<GroupedRenderingActivitiesContextType>(
|
|
71
|
+
() =>
|
|
72
|
+
Object.freeze({
|
|
73
|
+
groupedRenderingActivitiesState,
|
|
74
|
+
numRenderingActivitiesState
|
|
75
|
+
}),
|
|
76
|
+
[groupedRenderingActivitiesState, numRenderingActivitiesState]
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
return (
|
|
80
|
+
<GroupedRenderingActivitiesContext.Provider value={context}>{children}</GroupedRenderingActivitiesContext.Provider>
|
|
81
|
+
);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
GroupedRenderingActivitiesComposer.displayName = 'GroupedRenderingActivitiesComposer';
|
|
85
|
+
|
|
86
|
+
export default memo(GroupedRenderingActivitiesComposer);
|
|
87
|
+
export { type GroupedRenderingActivitiesComposerProps };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import createContextAndHook from '../../createContextAndHook';
|
|
2
|
+
import { type GroupedRenderingActivities } from '../GroupedRenderingActivities';
|
|
3
|
+
|
|
4
|
+
type GroupedRenderingActivitiesContextType = Readonly<{
|
|
5
|
+
groupedRenderingActivitiesState: readonly [readonly GroupedRenderingActivities[]];
|
|
6
|
+
numRenderingActivitiesState: readonly [number];
|
|
7
|
+
}>;
|
|
8
|
+
|
|
9
|
+
const { contextComponentType, useContext } = createContextAndHook<GroupedRenderingActivitiesContextType>(
|
|
10
|
+
'GroupedRenderingActivitiesContext'
|
|
11
|
+
);
|
|
12
|
+
|
|
13
|
+
export default contextComponentType;
|
|
14
|
+
export { useContext as useGroupedRenderingActivitiesContext, type GroupedRenderingActivitiesContextType };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import group from './group';
|
|
2
|
+
|
|
3
|
+
test('when nothing is passed should return empty array', () => {
|
|
4
|
+
expect(
|
|
5
|
+
group([], () => {
|
|
6
|
+
throw new Error('Should not call');
|
|
7
|
+
})
|
|
8
|
+
).toEqual([]);
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
test('when a single item is passed should return it as grouped', () => {
|
|
12
|
+
expect(group([1], () => [1])).toEqual([[1]]);
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
test('when two separate items is passed should return it ungrouped', () => {
|
|
16
|
+
expect(group([1, 2], jest.fn().mockReturnValueOnce([1]).mockReturnValueOnce([2]))).toEqual([[1], [2]]);
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
test('with 3 items in 2 groups should return it grouped properly', () => {
|
|
20
|
+
expect(group([1, 2, 3], jest.fn().mockReturnValueOnce([1, 3]).mockReturnValueOnce([2]))).toEqual([[1, 3], [2]]);
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
test('when return items not in the array should be ignored', () => {
|
|
24
|
+
expect(group([1, 2], jest.fn().mockReturnValueOnce([1, 3]).mockReturnValueOnce([2]))).toEqual([[1], [2]]);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
test('when grouping with undefined', () => {
|
|
28
|
+
expect(group([1, 2], () => undefined)).toEqual([[1], [2]]);
|
|
29
|
+
});
|