botframework-webchat-component 4.18.1 → 4.19.0
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/LICENSE +21 -0
- package/boot/deprecated/component.js +7 -0
- package/boot/deprecated/component.mjs +5 -0
- package/boot/deprecated/decorator.js +7 -0
- package/boot/deprecated/decorator.mjs +5 -0
- package/boot/deprecated/hook.js +7 -0
- package/boot/deprecated/hook.mjs +5 -0
- package/boot/deprecated/internal.js +7 -0
- package/boot/deprecated/internal.mjs +5 -0
- package/component.js +3 -0
- package/decorator.js +3 -0
- package/dist/TextBox-BEU2rUID.d.mts +46 -0
- package/dist/TextBox-BEU2rUID.d.ts +46 -0
- package/dist/_dtsroll-chunks/BlpMO3PT-empty-object.d.ts +34 -0
- package/dist/_dtsroll-chunks/Cha1SOtx-botframework-webchat-styles.react.d.ts +38 -0
- package/dist/_dtsroll-chunks/DP9nda2m-botframework-webchat-react-hooks.d.ts +19 -0
- package/dist/botframework-webchat-component.component.css +2 -0
- package/dist/botframework-webchat-component.component.css.map +1 -0
- package/dist/botframework-webchat-component.component.d.mts +9 -0
- package/dist/botframework-webchat-component.component.d.ts +9 -0
- package/dist/botframework-webchat-component.component.js +2 -0
- package/dist/botframework-webchat-component.component.js.map +1 -0
- package/dist/botframework-webchat-component.component.mjs +2 -0
- package/dist/botframework-webchat-component.component.mjs.map +1 -0
- package/dist/botframework-webchat-component.css +2 -0
- package/dist/botframework-webchat-component.css.map +1 -0
- package/dist/botframework-webchat-component.d.mts +64 -2312
- package/dist/botframework-webchat-component.d.ts +90 -0
- package/dist/botframework-webchat-component.decorator.css +2 -0
- package/dist/botframework-webchat-component.decorator.css.map +1 -0
- package/dist/botframework-webchat-component.decorator.d.mts +28 -0
- package/dist/botframework-webchat-component.decorator.d.ts +28 -0
- package/dist/botframework-webchat-component.decorator.js +2 -0
- package/dist/botframework-webchat-component.decorator.js.map +1 -0
- package/dist/botframework-webchat-component.decorator.mjs +2 -0
- package/dist/botframework-webchat-component.decorator.mjs.map +1 -0
- package/dist/botframework-webchat-component.hook.css +2 -0
- package/dist/botframework-webchat-component.hook.css.map +1 -0
- package/dist/botframework-webchat-component.hook.d.mts +8 -0
- package/dist/botframework-webchat-component.hook.d.ts +8 -0
- package/dist/botframework-webchat-component.hook.js +2 -0
- package/dist/botframework-webchat-component.hook.js.map +1 -0
- package/dist/botframework-webchat-component.hook.mjs +2 -0
- package/dist/botframework-webchat-component.hook.mjs.map +1 -0
- package/dist/botframework-webchat-component.internal.css +2 -0
- package/dist/botframework-webchat-component.internal.css.map +1 -0
- package/dist/botframework-webchat-component.internal.d.mts +68 -3
- package/dist/botframework-webchat-component.internal.d.ts +70 -0
- package/dist/botframework-webchat-component.internal.js +2 -0
- package/dist/botframework-webchat-component.internal.js.map +1 -0
- package/dist/botframework-webchat-component.internal.mjs +1 -2
- package/dist/botframework-webchat-component.js +2 -0
- package/dist/botframework-webchat-component.js.map +1 -0
- package/dist/botframework-webchat-component.mjs +1 -11
- package/dist/botframework-webchat-component.mjs.map +1 -1
- package/dist/chunk-2R7BJ63Z.js +2 -0
- package/dist/chunk-2R7BJ63Z.js.map +1 -0
- package/dist/chunk-A4NDFSZM.mjs +77 -0
- package/dist/chunk-A4NDFSZM.mjs.map +1 -0
- package/dist/chunk-CNTMOACS.mjs +2 -0
- package/dist/chunk-CNTMOACS.mjs.map +1 -0
- package/dist/chunk-GTOP3WPD.mjs +2 -0
- package/dist/chunk-GTOP3WPD.mjs.map +1 -0
- package/dist/chunk-H5YR7OLF.js +2 -0
- package/dist/chunk-H5YR7OLF.js.map +1 -0
- package/dist/chunk-I6DJ35K3.mjs +2 -0
- package/dist/chunk-I6DJ35K3.mjs.map +1 -0
- package/dist/chunk-I6EXXZUN.js +2 -0
- package/dist/chunk-I6EXXZUN.js.map +1 -0
- package/dist/chunk-LVVCSDZ4.mjs +2 -0
- package/dist/chunk-LVVCSDZ4.mjs.map +1 -0
- package/dist/chunk-MOJMHOVH.js +2 -0
- package/dist/chunk-MOJMHOVH.js.map +1 -0
- package/dist/chunk-TMUNLKZW.js +2 -0
- package/dist/chunk-TMUNLKZW.js.map +1 -0
- package/dist/chunk-TYPS3H4I.mjs +2 -0
- package/dist/chunk-TYPS3H4I.mjs.map +1 -0
- package/dist/chunk-U6OWCHTQ.js +2 -0
- package/dist/chunk-U6OWCHTQ.js.map +1 -0
- package/dist/chunk-UKBRB4EA.mjs +2 -0
- package/dist/chunk-UKBRB4EA.mjs.map +1 -0
- package/dist/chunk-VDF6GQAL.js +77 -0
- package/dist/chunk-VDF6GQAL.js.map +1 -0
- package/dist/component-BtSxgJS5.d.mts +539 -0
- package/dist/component-Fyy8iCRE.d.ts +539 -0
- package/dist/hook-B7KuomGm.d.mts +2259 -0
- package/dist/hook-o9AgRedV.d.ts +2259 -0
- package/dist/metafile-cjs.json +1 -0
- package/dist/metafile-esm.json +1 -1
- package/hook.js +3 -0
- package/internal.js +1 -1
- package/package.json +146 -81
- package/src/Activity/AttachmentRow.tsx +56 -0
- package/src/Activity/Avatar.tsx +20 -23
- package/src/Activity/Bubble.module.css +131 -0
- package/src/Activity/Bubble.tsx +45 -70
- package/src/Activity/CarouselFilmStrip.js +31 -112
- package/src/Activity/CarouselFilmStrip.module.css +155 -0
- package/src/Activity/CarouselFilmStripAttachment.js +14 -15
- package/src/Activity/CarouselFilmStripAttachment.module.css +38 -0
- package/src/Activity/CarouselLayout.js +16 -17
- package/src/Activity/CarouselLayout.module.css +30 -0
- package/src/Activity/CodeBlockContent.module.css +40 -0
- package/src/Activity/CodeBlockContent.tsx +42 -0
- package/src/Activity/CollapsibleContent.module.css +43 -0
- package/src/Activity/CollapsibleContent.tsx +68 -0
- package/src/Activity/SayAlt.module.css +4 -0
- package/src/Activity/SayAlt.tsx +25 -0
- package/src/Activity/Speak.tsx +84 -42
- package/src/Activity/StackedLayout.module.css +233 -0
- package/src/Activity/StackedLayout.tsx +265 -198
- package/src/Activity/StackedLayoutMain.tsx +36 -0
- package/src/Activity/StackedLayoutMessageStatus.tsx +57 -0
- package/src/Activity/StackedLayoutRoot.tsx +71 -0
- package/src/Activity/StackedLayoutStatus.tsx +36 -0
- package/src/Activity/private/MessageStatusLoader.module.css +18 -0
- package/src/Activity/private/MessageStatusLoader.tsx +27 -0
- package/src/ActivityDebug/RestrictedActivityDebugAPI.ts +15 -0
- package/src/ActivityDebug/index.ts +1 -0
- package/src/ActivityFeedback/ActivityFeedback.tsx +88 -0
- package/src/ActivityFeedback/private/FeedbackForm.module.css +123 -0
- package/src/ActivityFeedback/private/FeedbackForm.tsx +83 -0
- package/src/ActivityFeedback/private/FeedbackVoteButton.tsx +88 -0
- package/src/ActivityFeedback/private/FeedbackVoteButtonBar.tsx +40 -0
- package/src/ActivityFeedback/private/ThumbButton.Image.tsx +35 -0
- package/src/ActivityFeedback/private/ThumbButton.module.css +91 -0
- package/src/ActivityFeedback/private/ThumbButton.tsx +103 -0
- package/src/ActivityFeedback/private/canActionResubmit.ts +6 -0
- package/src/ActivityFeedback/private/getDisclaimerFromFeedbackLoop.ts +10 -0
- package/src/ActivityFeedback/private/getDisclaimerFromReviewAction.ts +12 -0
- package/src/ActivityFeedback/private/hasFeedbackLoop.ts +42 -0
- package/src/ActivityFeedback/private/isActionRequireReview.ts +10 -0
- package/src/ActivityFeedback/providers/ActivityFeedbackComposer.tsx +372 -0
- package/src/ActivityFeedback/providers/private/ActivityFeedbackContext.ts +24 -0
- package/src/ActivityFeedback/providers/private/FocusPropagation.ts +10 -0
- package/src/ActivityFeedback/providers/useActivityFeedbackHooks.ts +6 -0
- package/src/ActivityStatus/AbsoluteTime.tsx +37 -0
- package/src/ActivityStatus/ActivityStatus.module.css +31 -0
- package/src/ActivityStatus/OthersActivityStatus.tsx +52 -53
- package/src/ActivityStatus/SelfActivityStatus.tsx +11 -8
- package/src/ActivityStatus/SendStatus/SendStatus.tsx +23 -23
- package/src/ActivityStatus/StatusSlot.tsx +17 -0
- package/src/ActivityStatus/Timestamp.tsx +17 -12
- package/src/ActivityStatus/private/Originator.tsx +33 -10
- package/src/ActivityStatus/private/RelativeTime.tsx +43 -0
- package/src/Assets/TypingAnimation.js +3 -1
- package/src/Attachment/AudioContent.tsx +20 -29
- package/src/Attachment/FileContent.tsx +46 -46
- package/src/Attachment/HTMLVideoContent.tsx +21 -27
- package/src/Attachment/ImageAttachment.tsx +58 -0
- package/src/Attachment/ImageContent.tsx +13 -27
- package/src/Attachment/Text/TextAttachment.tsx +38 -14
- package/src/Attachment/Text/TextContent.module.css +45 -0
- package/src/Attachment/Text/TextContent.tsx +40 -16
- package/src/Attachment/Text/private/ActivityButton.module.css +45 -0
- package/src/Attachment/Text/private/ActivityButton.tsx +71 -0
- package/src/Attachment/Text/private/ActivityCopyButton.module.css +45 -0
- package/src/Attachment/Text/private/ActivityCopyButton.tsx +109 -0
- package/src/Attachment/Text/private/ActivityViewCodeButton.tsx +66 -0
- package/src/Attachment/Text/private/CitationModal.module.css +9 -0
- package/src/Attachment/Text/private/CitationModalContent.tsx +28 -21
- package/src/Attachment/Text/private/CodeContent.tsx +44 -0
- package/src/Attachment/Text/private/MarkdownTextContent.tsx +223 -126
- package/src/Attachment/Text/private/Markdownable.tsx +39 -0
- package/src/Attachment/Text/private/MessageSensitivityLabel.tsx +47 -34
- package/src/Attachment/Text/private/PlainTextContent.tsx +24 -14
- package/src/Attachment/Text/private/ShieldIcon.tsx +52 -34
- package/src/Attachment/Text/private/ViewCodeDialog.module.css +59 -0
- package/src/Attachment/Text/private/isAIGeneratedActivity.ts +5 -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.tsx +55 -0
- package/src/BasicConnectivityStatus.js +7 -7
- package/src/BasicToast.js +1 -1
- package/src/BasicToaster.js +47 -8
- package/src/BasicTranscript.tsx +402 -587
- package/src/BasicWebChat.tsx +28 -34
- package/src/BuiltInDecorator.tsx +17 -0
- package/src/ChatHistory/ChatHistoryBox.tsx +27 -0
- package/src/ChatHistory/ChatHistoryToolbar.tsx +36 -0
- package/src/ChatHistory/private/ScrollToEndButton.tsx +105 -0
- package/src/Composer.tsx +226 -128
- package/src/ConnectivityStatus/Connecting.tsx +77 -0
- package/src/Dictation.js +16 -24
- package/src/ErrorBox.tsx +54 -26
- package/src/Icon/ComponentIcon.module.css +113 -0
- package/src/Icon/ComponentIcon.tsx +59 -0
- package/src/Icon/index.ts +1 -0
- package/src/LinkDefinition/LinkDefinitionItem.tsx +51 -21
- package/src/LinkDefinition/LinkDefinitions.module.css +209 -0
- package/src/LinkDefinition/LinkDefinitions.tsx +84 -19
- package/src/LinkDefinition/index.ts +6 -4
- package/src/LinkDefinition/private/Badge.tsx +12 -1
- package/src/LinkDefinition/private/ItemBody.tsx +24 -15
- package/src/LinkDefinition/private/OpenInNewWindowIcon.tsx +20 -13
- package/src/LinkDefinition/private/extractHostnameWithSubdomain.spec.ts +2 -0
- 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/defaultActivityPolymiddleware.tsx +104 -0
- package/src/Middleware/ActivityGrouping/createDefaultActivityGroupingDecoratorMiddleware.tsx +21 -0
- package/src/Middleware/ActivityGrouping/ui/LegacyActivityBridgeComposer.tsx +91 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.module.css +76 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.tsx +97 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGroupingList.tsx +30 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGroupingTitle.tsx +29 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/PartGrouping.tsx +52 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.module.css +29 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx +258 -0
- package/src/Middleware/ActivityGrouping/ui/PartGrouping/private/usePartGroupingLogicalGroup.ts +41 -0
- package/src/Middleware/ActivityGrouping/ui/RenderActivity.tsx +37 -0
- package/src/Middleware/ActivityGrouping/ui/RenderActivityGrouping.tsx +41 -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/DefaultAvatar.tsx +61 -0
- package/src/Middleware/Avatar/createDefaultAvatarPolymiddleware.tsx +22 -0
- package/src/Middleware/ScrollToEndButton/ScrollToEndButton.tsx +58 -0
- package/src/ReactWebChat.tsx +3 -8
- package/src/ScreenReaderText.tsx +27 -34
- package/src/SendBox/AttachmentBar/AttachmentBar.module.css +32 -0
- package/src/SendBox/AttachmentBar/AttachmentBar.tsx +71 -0
- package/src/SendBox/AttachmentBar/AttachmentBarItem.module.css +137 -0
- package/src/SendBox/AttachmentBar/AttachmentBarItem.tsx +103 -0
- package/src/SendBox/AttachmentBar/ItemDeleteButton.tsx +61 -0
- package/src/SendBox/AttachmentBar/ItemPreview.tsx +52 -0
- package/src/SendBox/AttachmentBar/Preview/FilePreview.module.css +35 -0
- package/src/SendBox/AttachmentBar/Preview/FilePreview.tsx +63 -0
- package/src/SendBox/AttachmentBar/Preview/ImagePreview.module.css +5 -0
- package/src/SendBox/AttachmentBar/Preview/ImagePreview.tsx +46 -0
- package/src/SendBox/AttachmentBar/Preview/sendBoxAttachment.ts +13 -0
- package/src/SendBox/AttachmentBar/index.ts +3 -0
- package/src/SendBox/AutoResizeTextArea.tsx +28 -64
- package/src/SendBox/BasicSendBox.tsx +99 -30
- package/src/SendBox/DictationInterims.tsx +32 -21
- package/src/SendBox/DropZone.tsx +64 -0
- package/src/SendBox/IconButton.tsx +32 -30
- package/src/SendBox/MicrophoneButton.tsx +29 -23
- package/src/SendBox/SendButton.tsx +26 -21
- package/src/SendBox/SuggestedAction.tsx +60 -72
- package/src/SendBox/SuggestedActions.tsx +6 -9
- package/src/SendBox/TextBox.tsx +57 -39
- package/src/SendBoxToolbar/Assets/AttachmentIcon.tsx +6 -23
- package/src/SendBoxToolbar/BasicSendBoxToolbar.tsx +4 -2
- package/src/SendBoxToolbar/UploadButton.tsx +47 -26
- package/src/Styles/CSSCustomPropertiesContainer.tsx +195 -0
- package/src/Styles/CustomPropertyNames.ts +66 -6
- package/src/Styles/StyleSet/ActivityButton.ts +49 -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 +71 -0
- package/src/Styles/StyleSet/ErrorBox.ts +2 -2
- package/src/Styles/StyleSet/FileContent.ts +2 -1
- package/src/Styles/StyleSet/ImageAvatar.ts +8 -5
- package/src/Styles/StyleSet/InitialsAvatar.ts +4 -5
- package/src/Styles/StyleSet/LinkDefinitions.ts +17 -11
- package/src/Styles/StyleSet/MicrophoneButton.ts +1 -1
- package/src/Styles/StyleSet/ModalDialog.ts +14 -8
- package/src/Styles/StyleSet/RenderMarkdown.ts +35 -0
- package/src/Styles/StyleSet/ScrollToEndButton.ts +0 -11
- package/src/Styles/StyleSet/SendBox.ts +57 -7
- package/src/Styles/StyleSet/SendBoxButton.ts +7 -5
- package/src/Styles/StyleSet/SendBoxTextBox.ts +6 -1
- package/src/Styles/StyleSet/SendStatus.ts +12 -0
- package/src/Styles/StyleSet/SpinnerAnimation.ts +3 -1
- package/src/Styles/StyleSet/StackedLayout.ts +18 -9
- package/src/Styles/StyleSet/SuggestedAction.ts +1 -13
- package/src/Styles/StyleSet/TextContent.ts +17 -2
- package/src/Styles/StyleSet/ThumbButton.ts +77 -24
- package/src/Styles/StyleSet/Tooltip.ts +66 -0
- package/src/Styles/StyleSet/TypingAnimation.ts +3 -1
- package/src/Styles/StyleSet/ViewCodeDialog.ts +70 -0
- package/src/Styles/StyleSet/types/StyleSet.ts +11 -0
- package/src/Styles/createStyleSet.ts +14 -14
- package/src/TextArea/TextArea.module.css +75 -0
- package/src/TextArea/TextArea.tsx +126 -0
- package/src/TextArea/index.ts +1 -0
- package/src/Tooltip/index.ts +1 -0
- package/src/Tooltip/private/Tooltip.tsx +26 -0
- package/src/Transcript/ActivityRow.tsx +100 -39
- package/src/Transcript/ActivityTree.tsx +35 -0
- package/src/Transcript/FocusTrap.tsx +96 -38
- package/src/Transcript/LiveRegion/SendFailed.tsx +8 -10
- package/src/Transcript/LiveRegionTranscript.tsx +11 -62
- package/src/Transcript/TranscriptFocus/TranscriptActivityList.tsx +22 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocus.module.css +117 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusArea.tsx +27 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusContent.tsx +34 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusContentActiveDescendant.tsx +26 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusContentBody.tsx +20 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusContentOverlay.tsx +20 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusIndicator.tsx +28 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusTerminator.tsx +42 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusTerminatorBody.tsx +20 -0
- package/src/Transcript/TranscriptFocus/TranscriptFocusTerminatorText.tsx +20 -0
- package/src/Transcript/TranscriptFocus/index.ts +25 -0
- package/src/Transcript/hooks/useRenderActivityProps.ts +88 -0
- package/src/Utils/AccessKeySink/Surface.tsx +63 -0
- package/src/Utils/AccessibleButton.tsx +64 -49
- package/src/Utils/AccessibleInputText.tsx +97 -106
- 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 +6 -1
- package/src/Utils/JSONLinkedData/__snapshots__/dereferenceBlankNodes.spec.ts.snap +17 -17
- package/src/Utils/JSONLinkedData/dereferenceBlankNodes.spec.ts +2 -0
- package/src/Utils/JSONLinkedData/dereferenceBlankNodes.ts +1 -1
- package/src/Utils/JSONLinkedData/getSafeOwnPropertyNames.ts +2 -2
- package/src/Utils/JSONLinkedData/isUnconnectedBlankNode.spec.ts +2 -0
- package/src/Utils/LocalizedString.tsx +3 -3
- package/src/Utils/addTargetBlankToHyperlinksMarkdown.spec.js +4 -4
- package/src/Utils/createIconComponent.tsx +126 -0
- package/src/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingBrowser.ts +2 -0
- package/src/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.ts +4 -4
- package/src/Utils/firstTabbableDescendant.js +0 -1
- package/src/Utils/orgSchema/getFirstBaseOfSoftwareSourceCode.ts +15 -0
- package/src/Utils/parseDocumentFragmentFromString.ts +9 -0
- package/src/Utils/readDataURIToBlob.ts +37 -0
- package/src/Utils/serializeDocumentFragmentIntoString.ts +3 -0
- package/src/Utils/supportPseudoClass.ts +1 -1
- package/src/Utils/tabbableElements.ts +7 -1
- package/src/Utils/textFormatToContentType.ts +14 -0
- package/src/Utils/updateMarkdownAttrs.spec.js +14 -14
- package/src/Utils/walkMarkdownTokens.spec.js +1 -1
- package/src/__tests__/addMetaTag.spec.js +8 -0
- package/src/__tests__/addMetaTag.spec.mjs +8 -0
- package/src/boot/component.ts +45 -0
- package/src/boot/decorator.ts +1 -0
- package/src/boot/hook.ts +118 -0
- package/src/boot/internal.ts +15 -0
- package/src/buildInfo.ts +9 -0
- package/src/decorator/index.ts +3 -0
- package/src/decorator/private/BorderFlair.module.css +566 -0
- package/src/decorator/private/BorderFlair.tsx +39 -0
- package/src/decorator/private/BorderLoader.module.css +53 -0
- package/src/decorator/private/BorderLoader.tsx +24 -0
- package/src/decorator/private/WebChatDecorator.tsx +64 -0
- package/src/decorator/stylesheet/DecoratorStylesheet.tsx +33 -0
- package/src/decorator/stylesheet/createDecoratorStyleElements.ts +8 -0
- package/src/env.d.ts +11 -0
- package/src/hooks/RenderMarkdown.module.css +102 -0
- package/src/hooks/index.ts +4 -0
- package/src/hooks/internal/UITracker.js +1 -1
- package/src/hooks/internal/WebChatUIContext.ts +19 -1
- 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 +4 -2
- package/src/hooks/internal/createWaitUntilable.ts +1 -1
- package/src/hooks/internal/private/createOnEventShim.spec.ts +2 -0
- 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 +120 -0
- package/src/hooks/internal/useForceRenderAtInterval.ts +6 -6
- package/src/hooks/internal/useMemoized.spec.jsx +3 -3
- package/src/hooks/internal/useMemoized.ts +1 -1
- package/src/hooks/internal/useNonce.ts +7 -0
- package/src/hooks/internal/useObserveFocusVisible.ts +0 -1
- package/src/hooks/internal/useSanitizeHrefCallback.ts +37 -0
- 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/useObserveScrollPosition.ts +3 -0
- package/src/hooks/useObserveTranscriptFocus.ts +9 -3
- package/src/hooks/useRenderMarkdownAsHTML.ts +32 -29
- package/src/hooks/useSendFiles.ts +4 -1
- package/src/hooks/useStreamingMarkdownWithDefinitions.ts +193 -0
- package/src/index.ts +30 -125
- package/src/providers/ActivityLogicalGrouping/ActivityLogicalGroupingComposer.ts +100 -0
- package/src/providers/ActivityLogicalGrouping/index.ts +7 -0
- package/src/providers/ActivityLogicalGrouping/private/ActivityLogicalGroupingContext.ts +31 -0
- package/src/providers/ActivityLogicalGrouping/private/useStateWithOptimisticRef.ts +13 -0
- package/src/providers/ActivityLogicalGrouping/useAddLogicalGrouping.ts +5 -0
- package/src/providers/ActivityLogicalGrouping/useGetGroupState.ts +5 -0
- package/src/providers/ActivityLogicalGrouping/useGetLogicalGroupBoundaries.ts +5 -0
- package/src/providers/ActivityLogicalGrouping/useGetLogicalGroupKey.ts +5 -0
- package/src/providers/ActivityLogicalGrouping/useRemoveLogicalGrouping.ts +5 -0
- 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.module.css +35 -0
- package/src/providers/CustomElements/customElements/CodeBlock.ts +230 -0
- package/src/providers/CustomElements/customElements/CodeBlockCopyButton.module.css +63 -0
- package/src/providers/CustomElements/customElements/CodeBlockCopyButton.tsx +108 -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 +31 -0
- package/src/providers/GroupedRenderingActivities/private/group.ts +19 -0
- package/src/providers/GroupedRenderingActivities/private/pick.spec.ts +35 -0
- package/src/providers/GroupedRenderingActivities/private/pick.ts +20 -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 +5 -15
- 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 +103 -0
- package/src/providers/RenderingActivities/private/RenderingActivitiesContext.ts +15 -0
- package/src/providers/RenderingActivities/useActivityRendererMap.ts +9 -0
- package/src/providers/RenderingActivities/useRenderingActivities.ts +7 -0
- package/src/providers/RenderingActivities/useRenderingActivityKeys.ts +5 -0
- package/src/providers/RovingTabIndex/RovingTabIndexComposer.tsx +20 -23
- package/src/providers/Theme/ThemeProvider.tsx +119 -40
- package/src/providers/Theme/private/Context.ts +18 -18
- package/src/providers/TranscriptFocus/TranscriptFocusComposer.spec.tsx +611 -0
- package/src/providers/TranscriptFocus/TranscriptFocusComposer.tsx +325 -68
- package/src/providers/TranscriptFocus/private/Context.ts +4 -0
- package/src/providers/TranscriptFocus/useActiveDescendantId.ts +4 -1
- package/src/providers/TranscriptFocus/useFocusByGroupKey.ts +11 -0
- package/src/providers/TranscriptFocus/useFocusRelativeActivity.ts +1 -1
- package/src/providers/TranscriptFocus/useFocusedKey.ts +6 -0
- package/src/providers/TranscriptFocus/useGetGroupDescendantIdByActivityKey.ts +5 -0
- package/src/providers/createContextAndHook.ts +23 -0
- package/src/providers/internal/SendBox/SendBoxComposer.tsx +30 -38
- package/src/stylesheet/ComponentStylesheet.tsx +33 -0
- package/src/stylesheet/createComponentStyleElements.ts +8 -0
- package/src/testIds.ts +18 -0
- package/src/tsconfig.json +8 -14
- package/src/types/internal/mutableRefObject.ts +40 -0
- package/src/types/internal/refObject.ts +40 -0
- package/dist/botframework-webchat-component.internal.mjs.LEGAL.txt +0 -0
- package/dist/botframework-webchat-component.mjs.LEGAL.txt +0 -0
- package/dist/chunk-X37JABN5.mjs +0 -5
- package/dist/chunk-X37JABN5.mjs.LEGAL.txt +0 -0
- 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 +0 -1803
- 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/AbsoluteTime.js +0 -32
- package/src/ActivityStatus/Slotted.tsx +0 -26
- package/src/ActivityStatus/private/Feedback/Feedback.tsx +0 -60
- package/src/ActivityStatus/private/Feedback/private/ThumbButton.Image.tsx +0 -30
- package/src/ActivityStatus/private/Feedback/private/ThumbButton.tsx +0 -54
- package/src/ActivityStatus/private/Feedback/private/VoteButton.tsx +0 -36
- package/src/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Filled.tsx +0 -16
- package/src/ActivityStatus/private/Feedback/private/icons/ThumbDislike16Regular.tsx +0 -16
- package/src/ActivityStatus/private/Feedback/private/icons/ThumbLike16Filled.tsx +0 -16
- package/src/ActivityStatus/private/Feedback/private/icons/ThumbLike16Regular.tsx +0 -16
- package/src/ActivityStatus/private/RelativeTime.js +0 -31
- package/src/Attachment/Assets/DownloadIcon.js +0 -29
- package/src/Attachment/ImageAttachment.js +0 -37
- package/src/Avatar/ImageAvatar.js +0 -49
- package/src/Avatar/InitialsAvatar.js +0 -50
- package/src/ConnectivityStatus/Connecting.js +0 -72
- package/src/LinkDefinition/private/Chevron.tsx +0 -21
- package/src/Middleware/Activity/createCoreMiddleware.tsx +0 -102
- package/src/Middleware/Avatar/createCoreMiddleware.tsx +0 -76
- package/src/Middleware/ScrollToEndButton/ScrollToEndButton.js +0 -45
- package/src/SendBox/Assets/MicrophoneIcon.js +0 -12
- package/src/SendBox/Assets/SendIcon.js +0 -36
- 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/AccessKeySink/Surface.js +0 -56
- package/src/Utils/CroppedImage.js +0 -45
- package/src/Utils/parseDocumentFromString.ts +0 -5
- package/src/Utils/readDataURIToBlob.js +0 -31
- package/src/Utils/serializeDocumentIntoString.ts +0 -10
- package/src/Utils/singleToArray.ts +0 -3
- package/src/Utils/textFormatToContentType.js +0 -12
- package/src/hooks/internal/useMemoWithPrevious.ts +0 -16
- package/src/hooks/internal/useNonce.js +0 -7
- package/src/hooks/internal/useStyleToEmotionObject.js +0 -5
- package/src/internal.ts +0 -4
- 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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ScreenReaderText.tsx","../src/Middleware/ActivityGrouping/ui/PartGrouping/PartGrouping.tsx","../src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.tsx","../src/Activity/StackedLayoutMain.tsx","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Activity/StackedLayout.module.css?css_module","../src/Activity/StackedLayoutMessageStatus.tsx","../src/Activity/private/MessageStatusLoader.tsx","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Activity/private/MessageStatusLoader.module.css?css_module","../src/Activity/StackedLayoutRoot.tsx","../src/Activity/StackedLayoutStatus.tsx","../src/providers/createContextAndHook.ts","../src/providers/ChatHistoryDOM/private/ChatHistoryDOMContext.ts","../src/providers/ChatHistoryDOM/useActivityElementRef.ts","../src/providers/TranscriptFocus/private/useContext.ts","../src/providers/TranscriptFocus/private/Context.ts","../src/providers/TranscriptFocus/useActiveDescendantId.ts","../src/providers/TranscriptFocus/useFocusByGroupKey.ts","../src/providers/TranscriptFocus/useGetGroupDescendantIdByActivityKey.ts","../src/Transcript/FocusTrap.tsx","../src/Utils/tabbableElements.ts","../src/Transcript/hooks/useRenderActivityProps.ts","../src/Middleware/ActivityGrouping/ui/SenderGrouping/private/useSenderGroupingContext.ts","../src/Middleware/ActivityGrouping/ui/SenderGrouping/private/SenderGroupingContext.ts","../src/Middleware/ActivityGrouping/ui/SenderGrouping/useFirstActivity.ts","../src/Middleware/ActivityGrouping/ui/SenderGrouping/useLastActivity.ts","../src/Middleware/ActivityGrouping/ui/StatusGrouping/private/useStatusGroupingContext.ts","../src/Middleware/ActivityGrouping/ui/StatusGrouping/private/StatusGroupingContext.ts","../src/Middleware/ActivityGrouping/ui/StatusGrouping/useFirstActivity.ts","../src/Middleware/ActivityGrouping/ui/StatusGrouping/useLastActivity.ts","../src/Utils/isZeroOrPositive.ts","../src/Transcript/TranscriptFocus/TranscriptActivityList.tsx","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Transcript/TranscriptFocus/TranscriptFocus.module.css?css_module","../src/Transcript/TranscriptFocus/TranscriptFocusArea.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusIndicator.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusContent.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusContentOverlay.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusContentActiveDescendant.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusContentBody.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusTerminator.tsx","../src/hooks/internal/useUniqueId.ts","../src/Transcript/TranscriptFocus/TranscriptFocusTerminatorBody.tsx","../src/Transcript/TranscriptFocus/TranscriptFocusTerminatorText.tsx","../src/Utils/detectBrowser.js","../src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.tsx","../src/Attachment/Text/private/ActivityButton.tsx","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Attachment/Text/private/ActivityButton.module.css?css_module","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.module.css?css_module","../src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGroupingList.tsx","../src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGroupingTitle.tsx","../src/Middleware/ActivityGrouping/ui/PartGrouping/private/usePartGroupingLogicalGroup.ts","../src/providers/ActivityLogicalGrouping/ActivityLogicalGroupingComposer.ts","../src/providers/ActivityLogicalGrouping/private/ActivityLogicalGroupingContext.ts","../src/providers/ActivityLogicalGrouping/private/useStateWithOptimisticRef.ts","../src/providers/ActivityLogicalGrouping/useAddLogicalGrouping.ts","../src/providers/ActivityLogicalGrouping/useRemoveLogicalGrouping.ts","../src/providers/ActivityLogicalGrouping/useGetLogicalGroupKey.ts","../src/providers/ActivityLogicalGrouping/useGetGroupState.ts","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.module.css?css_module","../src/hooks/internal/codeHighlighter/private/CodeHighlighterComposer.tsx","../src/hooks/internal/codeHighlighter/private/createCodeHighlighterComposer.tsx","../src/hooks/internal/codeHighlighter/private/defaultHighlightCode.tsx"],"sourcesContent":["/* eslint react/forbid-dom-props: [\"off\"] */\n\nimport { validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport React, { forwardRef, memo } from 'react';\n\nimport { boolean, object, optional, pipe, readonly, string, type InferInput } from 'valibot';\nimport { useStyleToEmotionObject } from './hooks/internal/styleToEmotionObject';\n\nconst ROOT_STYLE = {\n // .sr-only - This component is intended to be invisible to the visual Web Chat user, but read by the AT when using a screen reader\n color: 'transparent',\n height: 1,\n overflow: 'hidden',\n position: 'absolute',\n // We need to set top: 0, otherwise, it will repro:\n // - Run NVDA\n // - Make the transcript long enough to show the scrollbar\n // - Press SHIFT-TAB, focus on upload button\n // - Press up arrow multiple times\n top: 0,\n whiteSpace: 'nowrap',\n width: 1\n};\n\nconst screenReaderTextPropsSchema = pipe(\n object({\n 'aria-hidden': optional(boolean()),\n id: optional(string()),\n text: string()\n }),\n readonly()\n);\n\ntype ScreenReaderTextProps = InferInput<typeof screenReaderTextPropsSchema>;\n\n// eslint-disable-next-line prefer-arrow-callback\nconst ScreenReaderText = forwardRef<HTMLDivElement, ScreenReaderTextProps>(function ScreenReaderText(props, ref) {\n const { 'aria-hidden': ariaHidden, id, text } = validateProps(screenReaderTextPropsSchema, props);\n\n const rootClassName = useStyleToEmotionObject()(ROOT_STYLE) + '';\n\n if (ariaHidden && !id) {\n console.warn(\n 'botframework-webchat assertion: when \"aria-hidden\" is set, the screen reader text should be read by \"aria-labelledby\". Thus, \"id\" must be set.'\n );\n }\n\n return (\n <div aria-hidden={ariaHidden} className={rootClassName} id={id} ref={ref}>\n {text}\n </div>\n );\n});\n\nexport default memo(ScreenReaderText);\nexport { screenReaderTextPropsSchema, type ScreenReaderTextProps };\n","import { reactNode } from '@msinternal/botframework-webchat-react-valibot';\nimport { getActivityLivestreamingMetadata, getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat-core';\nimport { IdentifierSchema } from 'botframework-webchat-core/graph.js';\nimport React, { Fragment, memo, useMemo } from 'react';\nimport { array, custom, is, minLength, object, optional, parse, pipe, readonly, type InferOutput } from 'valibot';\n\nimport PartGroupingActivity from './private/PartGroupingActivity';\n\nconst partGroupingPropsSchema = pipe(\n object({\n activities: pipe(\n array(custom<Readonly<WebChatActivity>>(value => is(object({}), value))),\n minLength(1, 'botframework-webchat: \"activities\" must have at least 1 activity'),\n readonly()\n ),\n children: optional(reactNode())\n }),\n readonly()\n);\n\ntype PartGroupingProps = InferOutput<typeof partGroupingPropsSchema>;\n\nfunction PartGrouping(props: PartGroupingProps) {\n const { activities, children } = parse(partGroupingPropsSchema, props);\n\n // eslint-disable-next-line no-magic-numbers\n const lastActivity = activities.at(-1);\n\n const lastMessage = useMemo(\n () =>\n getOrgSchemaMessage(\n (\n activities\n .toReversed()\n .find(activity => getActivityLivestreamingMetadata(activity)?.type === 'informative message') ||\n lastActivity\n )?.entities\n ),\n [activities, lastActivity]\n );\n\n const isGroup = activities.length > 1 || is(IdentifierSchema, lastMessage?.isPartOf[0]?.['@id']);\n\n return isGroup ? (\n <PartGroupingActivity activities={activities}>{children}</PartGroupingActivity>\n ) : (\n <Fragment>{children}</Fragment>\n );\n}\n\nexport default memo(PartGrouping);\nexport { partGroupingPropsSchema, type PartGroupingProps };\n","import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport { hooks } from 'botframework-webchat-api';\nimport { getOrgSchemaMessage, type WebChatActivity } from 'botframework-webchat-core';\nimport React, { Fragment, memo, useCallback, useMemo, useState, type MouseEventHandler } from 'react';\nimport cx from 'classnames';\nimport { array, custom, is, minLength, object, optional, pipe, readonly, string, type InferOutput } from 'valibot';\n\nimport StackedLayoutMain from '../../../../../Activity/StackedLayoutMain';\nimport StackedLayoutMessageStatus from '../../../../../Activity/StackedLayoutMessageStatus';\nimport StackedLayoutRoot from '../../../../../Activity/StackedLayoutRoot';\nimport StackedLayoutStatus from '../../../../../Activity/StackedLayoutStatus';\nimport useActivityElementMapRef from '../../../../../providers/ChatHistoryDOM/useActivityElementRef';\nimport useActiveDescendantId from '../../../../../providers/TranscriptFocus/useActiveDescendantId';\nimport useFocusByGroupKey from '../../../../../providers/TranscriptFocus/useFocusByGroupKey';\nimport useGetGroupDescendantIdByActivityKey from '../../../../../providers/TranscriptFocus/useGetGroupDescendantIdByActivityKey';\nimport FocusTrap from '../../../../../Transcript/FocusTrap';\nimport useRenderActivityProps from '../../../../../Transcript/hooks/useRenderActivityProps';\nimport {\n TranscriptActivityList,\n TranscriptFocusContent,\n TranscriptFocusContentActiveDescendant,\n TranscriptFocusContentOverlay,\n TranscriptFocusIndicator\n} from '../../../../../Transcript/TranscriptFocus';\nimport { android } from '../../../../../Utils/detectBrowser';\nimport isZeroOrPositive from '../../../../../Utils/isZeroOrPositive';\nimport CollapsibleGrouping from '../CollapsibleGrouping';\nimport CollapsibleGroupingList from '../CollapsibleGroupingList';\nimport CollapsibleGroupingTitle from '../CollapsibleGroupingTitle';\nimport usePartGroupingLogicalGroup from './usePartGroupingLogicalGroup';\n\nimport styles from './PartGroupingActivity.module.css';\n\nconst { useAvatarForBot, useGetKeyByActivity, useLocalizer, useStyleOptions } = hooks;\n\nconst partGroupingActivityPropsSchema = pipe(\n object({\n activities: pipe(\n array(pipe(custom<Readonly<WebChatActivity>>(value => is(object({}), value)))),\n minLength(1, 'botframework-webchat: \"activities\" must have at least 1 activity'),\n readonly()\n ),\n children: optional(reactNode())\n }),\n readonly()\n);\n\ntype PartGroupingActivityProps = InferOutput<typeof partGroupingActivityPropsSchema>;\n\nconst partGroupingFocusableActivityPropsSchema = pipe(\n object({\n activity: custom<WebChatActivity>(value => is(object({}), value)),\n children: optional(reactNode()),\n className: optional(string()),\n groupKey: string()\n }),\n readonly()\n);\n\ntype FocusablePartGroupingActivityProps = InferOutput<typeof partGroupingFocusableActivityPropsSchema>;\n\n// eslint-disable-next-line prefer-arrow-callback\nconst FocusablePartGroupingActivity = memo(function FocusablePartGroupingActivity(\n props: FocusablePartGroupingActivityProps\n) {\n const { activity, children, className, groupKey } = validateProps(partGroupingFocusableActivityPropsSchema, props);\n\n const [activeDescendantId] = useActiveDescendantId();\n\n const getGroupDescendantIdByActivityKey = useGetGroupDescendantIdByActivityKey();\n const focusByGroupKey = useFocusByGroupKey();\n\n const getKeyByActivity = useGetKeyByActivity();\n const groupingActivityDescendantId = getGroupDescendantIdByActivityKey(getKeyByActivity(activity));\n\n const focusSelf = useCallback<(withFocus?: boolean) => void>(\n (withFocus?: boolean) => focusByGroupKey(groupKey, withFocus),\n [groupKey, focusByGroupKey]\n );\n\n // When a child of the group receives focus, notify the transcript to set the `aria-activedescendant` to this activity.\n const handleDescendantFocus: () => void = useCallback(() => focusSelf(false), [focusSelf]);\n\n // When receive Escape key from descendant, focus back to the group.\n const handleLeaveFocusTrap = useCallback(() => focusSelf(), [focusSelf]);\n\n // When the user press UP/DOWN arrow keys, we put a visual focus indicator around the focused group.\n // We should do the same for mouse, when the user click on the activity, we should also put a visual focus indicator around the activity.\n // We are doing it in event capture phase to prevent descendants from stopping event propagation to us.\n const handleMouseDownCapture: MouseEventHandler = useCallback(() => focusSelf(false), [focusSelf]);\n\n const isActiveDescendant = groupingActivityDescendantId === activeDescendantId;\n\n const activityElementMapRef = useActivityElementMapRef();\n\n const groupCallbackRef = useCallback(\n (activityElement: HTMLElement) => {\n activityElement\n ? activityElementMapRef.current.set(groupKey, activityElement)\n : activityElementMapRef.current.delete(groupKey);\n },\n [activityElementMapRef, groupKey]\n );\n\n return (\n <TranscriptFocusContent\n className={className}\n focused={isActiveDescendant}\n onMouseDownCapture={handleMouseDownCapture}\n ref={groupCallbackRef}\n role=\"article\"\n >\n <FocusTrap\n onFocus={handleDescendantFocus}\n onLeave={handleLeaveFocusTrap}\n targetClassName=\"webchat__basic-transcript__group-focus-target\"\n >\n {children}\n </FocusTrap>\n <TranscriptFocusContentOverlay>\n {!android && <TranscriptFocusContentActiveDescendant id={groupingActivityDescendantId} />}\n <TranscriptFocusIndicator type=\"content\" />\n </TranscriptFocusContentOverlay>\n </TranscriptFocusContent>\n );\n});\n\nfunction PartGroupingActivity(props: PartGroupingActivityProps) {\n const localize = useLocalizer();\n const { activities, children } = validateProps(partGroupingActivityPropsSchema, props);\n\n const classNames = useStyles(styles);\n const getKeyByActivity = useGetKeyByActivity();\n const [{ partGroupDefaultOpen }] = useStyleOptions();\n const [isGroupOpen, setIsGroupOpen] = useState(partGroupDefaultOpen);\n\n const messages = useMemo(\n () => activities.map(activity => getOrgSchemaMessage(activity.entities)).filter(Boolean),\n [activities]\n );\n // eslint-disable-next-line no-magic-numbers\n const lastMessage = messages.at(-1);\n\n const activityKeys = useMemo(\n () => activities.map(activity => getKeyByActivity(activity)),\n [activities, getKeyByActivity]\n );\n\n const groupKey = usePartGroupingLogicalGroup({\n activityKeys,\n isCollapsed: !isGroupOpen\n });\n\n const firstActivity = activities.at(0);\n // eslint-disable-next-line no-magic-numbers\n const lastActivity = activities.at(-1);\n\n const currentMessage = useMemo(\n () => messages.find(message => message.creativeWorkStatus[0] === 'Incomplete') || lastMessage,\n [messages, lastMessage]\n );\n\n const { renderAvatar, showCallout } = useRenderActivityProps(firstActivity);\n const { renderActivityStatus, hideTimestamp } = useRenderActivityProps(lastActivity);\n const [{ initials: botInitials }] = useAvatarForBot();\n\n const hasAvatar = botInitials || typeof botInitials === 'string';\n const showAvatar = showCallout && hasAvatar && !!renderAvatar;\n const [{ bubbleNubOffset }] = useStyleOptions();\n\n const topAlignedCallout = isZeroOrPositive(bubbleNubOffset);\n\n // The HowTo entity (the group root) may carry an explicit `creativeWorkStatus` and `abstract`.\n // When present, it takes precedence over status derived from individual messages.\n const [howToAbstract, howToStatus] = useMemo<[string | undefined, string | undefined]>(() => {\n const howTo = messages.find(message => message.isPartOf[0]?.creativeWorkStatus[0])?.isPartOf[0];\n\n return [howTo?.abstract[0], howTo?.creativeWorkStatus[0]];\n }, [messages]);\n\n const defaultWorkStatus = useMemo<'Incomplete' | undefined>(\n () => (messages.some(message => message.creativeWorkStatus[0]) ? 'Incomplete' : undefined),\n [messages]\n );\n\n // Group status resolution:\n // 1. If the HowTo entity has an explicit `creativeWorkStatus`, use it.\n // 2. Otherwise, derive from the active message: find the first 'Incomplete' message's status.\n // 3. Fall back to `defaultWorkStatus` which is 'Incomplete' if any message has a `creativeWorkStatus` property.\n const currentGroupStatus: string | undefined =\n howToStatus || currentMessage?.creativeWorkStatus[0] || defaultWorkStatus;\n\n /**\n * The idea behind group header is that it displays the state of the entire group:\n * - We first check if the HowTo entity (isPartOf) has an explicit `creativeWorkStatus`.\n * - If it does, we use it directly as the group status.\n * - Otherwise, we derive status from messages: find the active 'Incomplete' message.\n * - For the title we check if the current group status is 'Incomplete'.\n * - If it is 'Incomplete', we show the abstract of the first message with 'Incomplete' status.\n * - If not, we fall back to a default title.\n */\n const groupHeader = useMemo(\n () => (\n <Fragment>\n {(howToStatus || defaultWorkStatus) && (\n <StackedLayoutMessageStatus\n className={classNames['part-grouping-activity__message-status']}\n creativeWorkStatus={currentGroupStatus}\n />\n )}\n <CollapsibleGroupingTitle>\n {currentGroupStatus === 'Incomplete' || howToAbstract\n ? howToAbstract || currentMessage?.abstract[0] || localize('COLLAPSIBLE_GROUPING_TITLE')\n : localize('COLLAPSIBLE_GROUPING_TITLE')}\n </CollapsibleGroupingTitle>\n </Fragment>\n ),\n [classNames, currentGroupStatus, currentMessage?.abstract, defaultWorkStatus, howToAbstract, howToStatus, localize]\n );\n\n return (\n <FocusablePartGroupingActivity\n activity={firstActivity}\n className={classNames['part-grouping-activity']}\n groupKey={groupKey}\n >\n <StackedLayoutRoot\n hideAvatar={hasAvatar && !showAvatar}\n isGroup={true}\n showAvatar={showAvatar}\n topCallout={topAlignedCallout}\n >\n <StackedLayoutMain avatar={showAvatar && renderAvatar && renderAvatar()}>\n <CollapsibleGrouping\n className={cx(classNames['part-grouping-activity__collapsible'], {\n [classNames['part-grouping-activity__collapsible--open']]: isGroupOpen\n })}\n header={groupHeader}\n isOpen={isGroupOpen}\n onToggle={setIsGroupOpen}\n >\n <CollapsibleGroupingList\n className={classNames['part-grouping-activity__activities']}\n tag={TranscriptActivityList}\n >\n {children}\n </CollapsibleGroupingList>\n </CollapsibleGrouping>\n </StackedLayoutMain>\n {renderActivityStatus && <StackedLayoutStatus>{renderActivityStatus({ hideTimestamp })}</StackedLayoutStatus>}\n </StackedLayoutRoot>\n </FocusablePartGroupingActivity>\n );\n}\n\nexport default memo(PartGroupingActivity);\nexport { type PartGroupingActivityProps, partGroupingActivityPropsSchema };\n","import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { object, optional, pipe, readonly, type InferOutput } from 'valibot';\n\nimport styles from './StackedLayout.module.css';\n\nconst stackedLayoutMainPropsSchema = pipe(\n object({\n avatar: optional(reactNode()),\n children: optional(reactNode())\n }),\n readonly()\n);\n\ntype StackedLayoutMainProps = InferOutput<typeof stackedLayoutMainPropsSchema>;\n\nconst StackedLayoutMain = memo((props: StackedLayoutMainProps) => {\n const { avatar, children } = validateProps(stackedLayoutMainPropsSchema, props);\n\n const classNames = useStyles(styles);\n\n return (\n <div className={classNames['stacked-layout__main']}>\n <div className={cx(classNames['stacked-layout__avatar-gutter'])}>{avatar}</div>\n <div className={cx(classNames['stacked-layout__content'])}>{children}</div>\n <div className={classNames['stacked-layout__alignment-pad']} />\n </div>\n );\n});\n\nStackedLayoutMain.displayName = 'StackedLayoutMain';\n\nexport default StackedLayoutMain;\nexport { stackedLayoutMainPropsSchema, type StackedLayoutMainProps };\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Activity/StackedLayout.module_built.css\";\nconst classes = {\"stacked-layout__message-status-unset-icon\":\"wRAis8G_stacked-layout__message-status-unset-icon\",\"stacked-layout__title\":\"wRAis8G_stacked-layout__title\",\"stacked-layout__bubble\":\"wRAis8G_stacked-layout__bubble\",\"stacked-layout__attachment-row\":\"wRAis8G_stacked-layout__attachment-row\",\"stacked-layout__message-status--incomplete\":\"wRAis8G_stacked-layout__message-status--incomplete\",\"stacked-layout__nub-pad\":\"wRAis8G_stacked-layout__nub-pad\",\"stacked-layout__message\":\"wRAis8G_stacked-layout__message\",\"stacked-layout--extra-trailing\":\"wRAis8G_stacked-layout--extra-trailing\",\"stacked-layout__attachment\":\"wRAis8G_stacked-layout__attachment\",\"stacked-layout--show-avatar\":\"wRAis8G_stacked-layout--show-avatar\",\"stacked-layout__message-status-loader\":\"wRAis8G_stacked-layout__message-status-loader\",\"stacked-layout__message-status--unset\":\"wRAis8G_stacked-layout__message-status--unset\",\"stacked-layout__message-status--published\":\"wRAis8G_stacked-layout__message-status--published\",\"stacked-layout--from-user\":\"wRAis8G_stacked-layout--from-user\",\"stacked-layout__message-row\":\"wRAis8G_stacked-layout__message-row\",\"stacked-layout--no-message\":\"wRAis8G_stacked-layout--no-message\",\"stacked-layout--group\":\"wRAis8G_stacked-layout--group\",\"stacked-layout--show-nub\":\"wRAis8G_stacked-layout--show-nub\",\"stacked-layout--hide-nub\":\"wRAis8G_stacked-layout--hide-nub\",\"stacked-layout__content\":\"wRAis8G_stacked-layout__content\",\"stacked-layout--top-callout\":\"wRAis8G_stacked-layout--top-callout\",\"stacked-layout__attachment-list\":\"wRAis8G_stacked-layout__attachment-list\",\"stacked-layout__message-status-complete-icon\":\"wRAis8G_stacked-layout__message-status-complete-icon\",\"stacked-layout__avatar-gutter\":\"wRAis8G_stacked-layout__avatar-gutter\",\"stacked-layout--hide-avatar\":\"wRAis8G_stacked-layout--hide-avatar\",\"stacked-layout\":\"wRAis8G_stacked-layout\",\"stacked-layout__main\":\"wRAis8G_stacked-layout__main\",\"stacked-layout--activity\":\"wRAis8G_stacked-layout--activity\",\"stacked-layout__alignment-pad\":\"wRAis8G_stacked-layout__alignment-pad\",\"stacked-layout__message-status\":\"wRAis8G_stacked-layout__message-status\",\"stacked-layout__status\":\"wRAis8G_stacked-layout__status\"}\nexport default classes\n\nconst _stacked_layout__message_status_unset_icon0 = classes[\"stacked-layout__message-status-unset-icon\"]\nexport { _stacked_layout__message_status_unset_icon0 as \"stacked-layout__message-status-unset-icon\" }\n\nconst _stacked_layout__title0 = classes[\"stacked-layout__title\"]\nexport { _stacked_layout__title0 as \"stacked-layout__title\" }\n\nconst _stacked_layout__bubble0 = classes[\"stacked-layout__bubble\"]\nexport { _stacked_layout__bubble0 as \"stacked-layout__bubble\" }\n\nconst _stacked_layout__attachment_row0 = classes[\"stacked-layout__attachment-row\"]\nexport { _stacked_layout__attachment_row0 as \"stacked-layout__attachment-row\" }\n\nconst _stacked_layout__message_status__incomplete0 = classes[\"stacked-layout__message-status--incomplete\"]\nexport { _stacked_layout__message_status__incomplete0 as \"stacked-layout__message-status--incomplete\" }\n\nconst _stacked_layout__nub_pad0 = classes[\"stacked-layout__nub-pad\"]\nexport { _stacked_layout__nub_pad0 as \"stacked-layout__nub-pad\" }\n\nconst _stacked_layout__message0 = classes[\"stacked-layout__message\"]\nexport { _stacked_layout__message0 as \"stacked-layout__message\" }\n\nconst _stacked_layout__extra_trailing0 = classes[\"stacked-layout--extra-trailing\"]\nexport { _stacked_layout__extra_trailing0 as \"stacked-layout--extra-trailing\" }\n\nconst _stacked_layout__attachment0 = classes[\"stacked-layout__attachment\"]\nexport { _stacked_layout__attachment0 as \"stacked-layout__attachment\" }\n\nconst _stacked_layout__show_avatar0 = classes[\"stacked-layout--show-avatar\"]\nexport { _stacked_layout__show_avatar0 as \"stacked-layout--show-avatar\" }\n\nconst _stacked_layout__message_status_loader0 = classes[\"stacked-layout__message-status-loader\"]\nexport { _stacked_layout__message_status_loader0 as \"stacked-layout__message-status-loader\" }\n\nconst _stacked_layout__message_status__unset0 = classes[\"stacked-layout__message-status--unset\"]\nexport { _stacked_layout__message_status__unset0 as \"stacked-layout__message-status--unset\" }\n\nconst _stacked_layout__message_status__published0 = classes[\"stacked-layout__message-status--published\"]\nexport { _stacked_layout__message_status__published0 as \"stacked-layout__message-status--published\" }\n\nconst _stacked_layout__from_user0 = classes[\"stacked-layout--from-user\"]\nexport { _stacked_layout__from_user0 as \"stacked-layout--from-user\" }\n\nconst _stacked_layout__message_row0 = classes[\"stacked-layout__message-row\"]\nexport { _stacked_layout__message_row0 as \"stacked-layout__message-row\" }\n\nconst _stacked_layout__no_message0 = classes[\"stacked-layout--no-message\"]\nexport { _stacked_layout__no_message0 as \"stacked-layout--no-message\" }\n\nconst _stacked_layout__group0 = classes[\"stacked-layout--group\"]\nexport { _stacked_layout__group0 as \"stacked-layout--group\" }\n\nconst _stacked_layout__show_nub0 = classes[\"stacked-layout--show-nub\"]\nexport { _stacked_layout__show_nub0 as \"stacked-layout--show-nub\" }\n\nconst _stacked_layout__hide_nub0 = classes[\"stacked-layout--hide-nub\"]\nexport { _stacked_layout__hide_nub0 as \"stacked-layout--hide-nub\" }\n\nconst _stacked_layout__content0 = classes[\"stacked-layout__content\"]\nexport { _stacked_layout__content0 as \"stacked-layout__content\" }\n\nconst _stacked_layout__top_callout0 = classes[\"stacked-layout--top-callout\"]\nexport { _stacked_layout__top_callout0 as \"stacked-layout--top-callout\" }\n\nconst _stacked_layout__attachment_list0 = classes[\"stacked-layout__attachment-list\"]\nexport { _stacked_layout__attachment_list0 as \"stacked-layout__attachment-list\" }\n\nconst _stacked_layout__message_status_complete_icon0 = classes[\"stacked-layout__message-status-complete-icon\"]\nexport { _stacked_layout__message_status_complete_icon0 as \"stacked-layout__message-status-complete-icon\" }\n\nconst _stacked_layout__avatar_gutter0 = classes[\"stacked-layout__avatar-gutter\"]\nexport { _stacked_layout__avatar_gutter0 as \"stacked-layout__avatar-gutter\" }\n\nconst _stacked_layout__hide_avatar0 = classes[\"stacked-layout--hide-avatar\"]\nexport { _stacked_layout__hide_avatar0 as \"stacked-layout--hide-avatar\" }\n\nconst _stacked_layout0 = classes[\"stacked-layout\"]\nexport { _stacked_layout0 as \"stacked-layout\" }\n\nconst _stacked_layout__main0 = classes[\"stacked-layout__main\"]\nexport { _stacked_layout__main0 as \"stacked-layout__main\" }\n\nconst _stacked_layout__activity0 = classes[\"stacked-layout--activity\"]\nexport { _stacked_layout__activity0 as \"stacked-layout--activity\" }\n\nconst _stacked_layout__alignment_pad0 = classes[\"stacked-layout__alignment-pad\"]\nexport { _stacked_layout__alignment_pad0 as \"stacked-layout__alignment-pad\" }\n\nconst _stacked_layout__message_status0 = classes[\"stacked-layout__message-status\"]\nexport { _stacked_layout__message_status0 as \"stacked-layout__message-status\" }\n\nconst _stacked_layout__status0 = classes[\"stacked-layout__status\"]\nexport { _stacked_layout__status0 as \"stacked-layout__status\" }\n","import { validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport { ComponentIcon } from '../Icon';\nimport MessageStatusLoader from './private/MessageStatusLoader';\n\nimport styles from './StackedLayout.module.css';\n\nconst stackedLayoutMessageStatusPropsSchema = pipe(\n object({\n className: optional(string()),\n creativeWorkStatus: optional(string())\n }),\n readonly()\n);\n\ntype StackedLayoutMessageStatusProps = InferInput<typeof stackedLayoutMessageStatusPropsSchema>;\n\nconst StackedLayoutMessageStatus = (props: StackedLayoutMessageStatusProps) => {\n const { className, creativeWorkStatus } = validateProps(stackedLayoutMessageStatusPropsSchema, props);\n\n const classNames = useStyles(styles);\n\n return (\n <div\n className={cx(\n classNames['stacked-layout__message-status'],\n {\n [classNames['stacked-layout__message-status--incomplete']]: creativeWorkStatus === 'Incomplete',\n [classNames['stacked-layout__message-status--published']]: creativeWorkStatus === 'Published',\n [classNames['stacked-layout__message-status--unset']]: !creativeWorkStatus\n },\n className\n )}\n >\n <ComponentIcon\n appearance=\"text\"\n className={classNames['stacked-layout__message-status-unset-icon']}\n icon=\"unchecked-circle\"\n />\n <ComponentIcon\n appearance=\"text\"\n className={classNames['stacked-layout__message-status-complete-icon']}\n icon=\"checkmark-circle\"\n />\n <MessageStatusLoader className={classNames['stacked-layout__message-status-loader']} />\n </div>\n );\n};\n\nStackedLayoutMessageStatus.displayName = 'StackedLayoutMessageStatus';\n\nexport default memo(StackedLayoutMessageStatus);\nexport { stackedLayoutMessageStatusPropsSchema, type StackedLayoutMessageStatusProps };\n","import { validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport { ComponentIcon } from '../../Icon';\nimport styles from './MessageStatusLoader.module.css';\n\nconst messageStatusLoaderPropsSchema = pipe(\n object({\n className: optional(string())\n }),\n readonly()\n);\n\ntype MessageStatusLoaderProps = InferInput<typeof messageStatusLoaderPropsSchema>;\n\nfunction MessageStatusLoader(props: MessageStatusLoaderProps) {\n const { className } = validateProps(messageStatusLoaderPropsSchema, props);\n const classNames = useStyles(styles);\n\n return <ComponentIcon appearance=\"text\" className={cx(classNames['message-status-loader'], className)} />;\n}\n\nexport default memo(MessageStatusLoader);\nexport { messageStatusLoaderPropsSchema, type MessageStatusLoaderProps };\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Activity/private/MessageStatusLoader.module_built.css\";\nconst classes = {\"message-status-loader\":\"wgymfeG_message-status-loader\"}\nexport default classes\n\nconst _message_status_loader0 = classes[\"message-status-loader\"]\nexport { _message_status_loader0 as \"message-status-loader\" }\n","import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { boolean, object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport styles from './StackedLayout.module.css';\n\nconst stackedLayoutRootPropsSchema = pipe(\n object({\n ariaLabelId: optional(string()),\n children: optional(reactNode()),\n extraTrailing: optional(boolean()),\n fromUser: optional(boolean()),\n hideAvatar: optional(boolean()),\n hideNub: optional(boolean()),\n isActivity: optional(boolean()),\n isGroup: optional(boolean()),\n noMessage: optional(boolean()),\n showAvatar: optional(boolean()),\n showNub: optional(boolean()),\n topCallout: optional(boolean())\n }),\n readonly()\n);\n\ntype StackedLayoutRootProps = InferInput<typeof stackedLayoutRootPropsSchema>;\n\nconst StackedLayoutRoot = memo((props: StackedLayoutRootProps) => {\n const {\n ariaLabelId,\n children,\n extraTrailing,\n fromUser,\n hideAvatar,\n hideNub,\n isActivity,\n isGroup,\n noMessage,\n showAvatar,\n showNub,\n topCallout\n } = validateProps(stackedLayoutRootPropsSchema, props);\n\n const classNames = useStyles(styles);\n\n return (\n <div\n aria-labelledby={ariaLabelId}\n className={cx(classNames['stacked-layout'], {\n [classNames['stacked-layout--from-user']]: fromUser,\n [classNames['stacked-layout--extra-trailing']]: extraTrailing,\n [classNames['stacked-layout--hide-avatar']]: hideAvatar,\n [classNames['stacked-layout--hide-nub']]: hideNub,\n [classNames['stacked-layout--activity']]: isActivity,\n [classNames['stacked-layout--group']]: isGroup,\n [classNames['stacked-layout--no-message']]: noMessage,\n [classNames['stacked-layout--show-avatar']]: showAvatar,\n [classNames['stacked-layout--show-nub']]: showNub,\n [classNames['stacked-layout--top-callout']]: topCallout\n })}\n >\n {children}\n </div>\n );\n});\n\nStackedLayoutRoot.displayName = 'StackedLayoutRoot';\n\nexport default StackedLayoutRoot;\nexport { stackedLayoutRootPropsSchema, type StackedLayoutRootProps };\n","import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { object, optional, pipe, readonly, type InferInput } from 'valibot';\n\nimport styles from './StackedLayout.module.css';\n\nconst stackedLayoutStatusPropsSchema = pipe(\n object({\n children: optional(reactNode())\n }),\n readonly()\n);\n\ntype StackedLayoutStatusProps = InferInput<typeof stackedLayoutStatusPropsSchema>;\n\nconst StackedLayoutStatus = memo((props: StackedLayoutStatusProps) => {\n const { children } = validateProps(stackedLayoutStatusPropsSchema, props);\n\n const classNames = useStyles(styles);\n\n return (\n <div className={cx(classNames['stacked-layout__status'])}>\n <div className={cx(classNames['stacked-layout__avatar-gutter'])} />\n <div className={cx(classNames['stacked-layout__nub-pad'])} />\n {children}\n <div className={cx(classNames['stacked-layout__alignment-pad'])} />\n </div>\n );\n});\n\nStackedLayoutStatus.displayName = 'StackedLayoutStatus';\n\nexport default StackedLayoutStatus;\nexport { stackedLayoutStatusPropsSchema, type StackedLayoutStatusProps };\n","import { createContext, useContext as reactUseContext, type Context } from 'react';\n\nexport default function createContextAndHook<T extends object>(\n displayName: string\n): Readonly<{\n contextComponentType: Context<T>;\n useContext: () => T;\n}> {\n const contextComponentType = createContext<T>(\n new Proxy({} as T, {\n get() {\n throw new Error(`botframework-webchat: This hook can only be used under <${displayName}>`);\n }\n })\n );\n\n contextComponentType.displayName = displayName;\n\n return {\n contextComponentType,\n useContext: (): T => reactUseContext(contextComponentType)\n };\n}\n","import { type MutableRefObject } from 'react';\nimport createContextAndHook from '../../createContextAndHook';\n\ntype ChatHistoryDOMContextType = Readonly<{\n activityElementRef: MutableRefObject<Map<string, HTMLElement>>;\n}>;\n\nconst { contextComponentType, useContext } = createContextAndHook<ChatHistoryDOMContextType>('ChatHistoryDOMContext');\n\nexport default contextComponentType;\nexport { useContext as useChatHistoryDOMContext, type ChatHistoryDOMContextType };\n","import { type RefObject } from 'react';\nimport { useChatHistoryDOMContext } from './private/ChatHistoryDOMContext';\n\nexport default function useActivityElementMapRef(): RefObject<Map<string, HTMLElement>> {\n return useChatHistoryDOMContext().activityElementRef;\n}\n","import { useContext } from 'react';\n\nimport TranscriptFocusContext from './Context';\n\nexport default function useTranscriptFocusContext(throwOnUndefined = true) {\n const contextValue = useContext(TranscriptFocusContext);\n\n if (throwOnUndefined && !contextValue) {\n throw new Error('botframework-webchat internal: This hook can only be used under <TranscriptFocusComposer>.');\n }\n\n return contextValue;\n}\n","import { createContext } from 'react';\n\ntype TranscriptFocusContextType = {\n activeDescendantIdState: readonly [string];\n activeGroupDescendantIdState: readonly [string];\n focusByActivityKey: (activityKey: boolean | string | undefined, withFocus: boolean | undefined) => void;\n focusByGroupKey: (groupKey: string | undefined, withFocus: boolean | undefined) => void;\n focusedActivityKeyState: readonly [string];\n focusedExplicitlyState: readonly [boolean];\n focusedGroupKeyState: readonly [string];\n focusRelativeActivity: (delta: number) => void;\n getDescendantIdByActivityKey: (activityKey?: string) => string | undefined;\n getGroupDescendantIdByActivityKey: (activityKey?: string) => string | undefined;\n};\n\nconst TranscriptFocusContext = createContext<TranscriptFocusContextType>(undefined);\n\nexport default TranscriptFocusContext;\n\nexport type { TranscriptFocusContextType };\n","import useTranscriptFocusContext from './private/useContext';\n\nexport default function useActiveDescendantId(): readonly [string] {\n const context = useTranscriptFocusContext();\n return context.activeGroupDescendantIdState[0]\n ? context.activeGroupDescendantIdState\n : context.activeDescendantIdState;\n}\n","import useTranscriptFocusContext from './private/useContext';\n\n/**\n * Put the focus on an activity based on its activity key.\n *\n * @param {boolean | string | undefined} activityKey - The activity key to focus on, `false` to reset focus to most recent activity, `true` to focus on anything, `undefined` for not changing the focus.\n * @param {boolean} withFocus - `true` if the user agent focus should be sent to the transcript, otherwise, `false`.\n */\nexport default function useFocusByGroupKey(): (groupKey: string | undefined, withFocus?: boolean) => void {\n return useTranscriptFocusContext().focusByGroupKey;\n}\n","import useTranscriptFocusContext from './private/useContext';\n\nexport default function useGetGroupDescendantIdByActivityKey(): (activityKey?: string) => string | undefined {\n return useTranscriptFocusContext().getGroupDescendantIdByActivityKey;\n}\n","/* eslint-disable no-magic-numbers */\nimport React, {\n Fragment,\n memo,\n type FocusEvent,\n type KeyboardEventHandler,\n type ReactNode,\n useCallback,\n useRef\n} from 'react';\n\nimport tabbableElements from '../Utils/tabbableElements';\nimport { useRefFrom } from 'use-ref-from';\n\nconst FocusTrap = ({\n children,\n onFocus,\n onLeave,\n targetClassName\n}: Readonly<{\n children: ReactNode;\n onFocus: () => void;\n onLeave: () => void;\n targetClassName?: string | undefined;\n}>) => {\n const bodyRef = useRef<HTMLDivElement>();\n const lastFocused = useRef<HTMLElement>();\n const onFocusRef = useRefFrom(onFocus);\n const onLeaveRef = useRefFrom(onLeave);\n\n const getTabbableElementsInBody = useCallback(() => {\n const nestedTraps = Array.from(bodyRef.current?.querySelectorAll('.webchat__focus-trap'));\n return tabbableElements(bodyRef.current)\n .filter(element => element.getAttribute('aria-disabled') !== 'true')\n .filter(element => !nestedTraps.some(trap => trap.contains(element)));\n }, [bodyRef]);\n\n const focusOrTriggerLeave = useCallback(\n (element: HTMLElement | undefined) => (element ? element.focus() : onLeaveRef.current?.()),\n [onLeaveRef]\n );\n\n const handleBodyKeyDown: KeyboardEventHandler = useCallback(\n event => {\n if (event.key === 'Escape') {\n event.preventDefault();\n event.stopPropagation();\n\n onLeaveRef.current?.();\n } else if (event.key === 'Tab') {\n const activeElement = document.activeElement as HTMLElement;\n const focusables = getTabbableElementsInBody();\n const focusedIndex = focusables.indexOf(activeElement);\n\n if (event.shiftKey && focusedIndex === 0) {\n event.preventDefault();\n\n focusOrTriggerLeave(focusables.at(-1));\n } else if (!event.shiftKey && focusedIndex === focusables.length - 1) {\n event.preventDefault();\n\n focusOrTriggerLeave(focusables.at(0));\n }\n }\n },\n [focusOrTriggerLeave, getTabbableElementsInBody, onLeaveRef]\n );\n\n const handleFocus = useCallback(\n (event: FocusEvent<HTMLDivElement, Element>) => {\n onFocusRef.current?.();\n\n lastFocused.current = event.target;\n },\n [lastFocused, onFocusRef]\n );\n\n const handleBlur = useCallback(\n event => {\n const { target } = event;\n const focusables = getTabbableElementsInBody();\n\n // When blurred element became non-focusable, move to the first focusable element if available.\n // Otherwise trigger leave.\n if (!focusables.includes(target)) {\n event.preventDefault();\n event.stopPropagation();\n\n focusOrTriggerLeave(focusables.at(0));\n } else if (bodyRef.current.contains(target)) {\n event.stopPropagation();\n }\n },\n [focusOrTriggerLeave, getTabbableElementsInBody]\n );\n\n const handleTrapFocus = useCallback(\n event => {\n event.preventDefault();\n event.stopPropagation();\n event.target.blur();\n\n const focusables = getTabbableElementsInBody();\n\n if (lastFocused.current && focusables.includes(lastFocused.current)) {\n lastFocused.current.focus();\n } else {\n focusOrTriggerLeave(focusables.at(0));\n }\n },\n [focusOrTriggerLeave, getTabbableElementsInBody]\n );\n\n return (\n <Fragment>\n <div\n className=\"webchat__focus-trap\"\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleBodyKeyDown}\n ref={bodyRef}\n >\n {children}\n </div>\n <div aria-hidden=\"true\" className={targetClassName} onFocus={handleTrapFocus} tabIndex={-1} />\n </Fragment>\n );\n};\n\nFocusTrap.displayName = 'FocusTrap';\n\nexport default memo(FocusTrap);\n","export default function tabbableElements(element?: HTMLElement): HTMLElement[] {\n // This is an incomplete list, due to the complexity of testing for every scenario.\n // For full-list, please refer to https://allyjs.io/data-tables/focusable.html\n const candidates: ArrayLike<HTMLElement> =\n element?.querySelectorAll(\n 'a[href], area[href], audio[controls], button:not(:disabled), iframe, input:not(:disabled), keygen, select:not(:disabled), summary, textarea:not(:disabled), video[controls], [contenteditable], [tabindex]'\n ) || [];\n\n return ([] as HTMLElement[]).filter.call(candidates, (element: HTMLElement) => {\n const style = window.getComputedStyle(element);\n\n if (style.visibility === 'hidden' || style.display === 'none' || style.display === 'contents') {\n return false;\n }\n\n const tabIndexAttribute = element.attributes.getNamedItem('tabindex');\n\n if (tabIndexAttribute) {\n const value = parseInt(tabIndexAttribute.value, 10);\n\n return value >= 0 || (isNaN(value) && element.nodeName.toLowerCase() === 'input');\n }\n\n return true;\n });\n}\n","import { hooks } from 'botframework-webchat-api';\nimport { useBuildRenderAvatarCallback } from 'botframework-webchat-api/middleware.js';\nimport { type WebChatActivity } from 'botframework-webchat-core';\nimport { useMemo, type ReactNode } from 'react';\n\nimport useFirstActivityInSenderGroup from '../../Middleware/ActivityGrouping/ui/SenderGrouping/useFirstActivity';\nimport useLastActivityInSenderGroup from '../../Middleware/ActivityGrouping/ui/SenderGrouping/useLastActivity';\nimport useFirstActivityInStatusGroup from '../../Middleware/ActivityGrouping/ui/StatusGrouping/useFirstActivity';\nimport useLastActivityInStatusGroup from '../../Middleware/ActivityGrouping/ui/StatusGrouping/useLastActivity';\nimport isZeroOrPositive from '../../Utils/isZeroOrPositive';\n\nconst { useCreateActivityStatusRenderer, useStyleOptions } = hooks;\n\ntype RenderActivityProps = {\n hideTimestamp: boolean;\n renderActivityStatus: ((options: { hideTimestamp: boolean }) => ReactNode) | undefined;\n renderAvatar: false | (() => Exclude<ReactNode, boolean | null | undefined>) | undefined;\n showCallout: boolean;\n};\n\nconst useRenderActivityProps = (activity: WebChatActivity): RenderActivityProps => {\n const [styleOptions] = useStyleOptions();\n const [firstActivityInSenderGroup] = useFirstActivityInSenderGroup();\n const [firstActivityInStatusGroup] = useFirstActivityInStatusGroup();\n const [lastActivityInSenderGroup] = useLastActivityInSenderGroup();\n const [lastActivityInStatusGroup] = useLastActivityInStatusGroup();\n const createActivityStatusRenderer = useCreateActivityStatusRenderer();\n const buildRenderAvatar = useBuildRenderAvatarCallback();\n\n const { bubbleFromUserNubOffset, bubbleNubOffset, groupTimestamp, showAvatarInGroup } = styleOptions;\n\n const hideAllTimestamps = groupTimestamp === false;\n const isFirstInSenderGroup =\n firstActivityInSenderGroup === activity || typeof firstActivityInSenderGroup === 'undefined';\n const isFirstInStatusGroup =\n firstActivityInStatusGroup === activity || typeof firstActivityInStatusGroup === 'undefined';\n const isLastInSenderGroup =\n lastActivityInSenderGroup === activity || typeof lastActivityInSenderGroup === 'undefined';\n const isLastInStatusGroup =\n lastActivityInStatusGroup === activity || typeof lastActivityInStatusGroup === 'undefined';\n\n const renderAvatarForSenderGroup = useMemo<false | (() => Exclude<ReactNode, boolean | null | undefined>)>(() => {\n // Pass styleOptions through the runtime object (not typed in public request) for internal use\n // by the core middleware and legacy bridge handlers.\n const renderer = buildRenderAvatar(Object.freeze({ activity }));\n\n return renderer ? (): ReactNode => renderer({}) : false;\n }, [activity, buildRenderAvatar]);\n\n const isTopSideBotNub = isZeroOrPositive(bubbleNubOffset);\n const isTopSideUserNub = isZeroOrPositive(bubbleFromUserNubOffset);\n\n const renderActivityStatus = useMemo(\n () => createActivityStatusRenderer({ activity }),\n [activity, createActivityStatusRenderer]\n );\n\n const hideTimestamp = hideAllTimestamps || !isLastInStatusGroup;\n const isTopSideNub = activity.from?.role === 'user' ? isTopSideUserNub : isTopSideBotNub;\n\n let showCallout: boolean;\n\n // Depending on the \"showAvatarInGroup\" setting, the avatar will render in different positions.\n if (showAvatarInGroup === 'sender') {\n if (isTopSideNub) {\n showCallout = isFirstInSenderGroup && isFirstInStatusGroup;\n } else {\n showCallout = isLastInSenderGroup && isLastInStatusGroup;\n }\n } else if (showAvatarInGroup === 'status') {\n if (isTopSideNub) {\n showCallout = isFirstInStatusGroup;\n } else {\n showCallout = isLastInStatusGroup;\n }\n } else {\n showCallout = true;\n }\n\n return {\n hideTimestamp,\n renderActivityStatus,\n renderAvatar: renderAvatarForSenderGroup,\n showCallout\n };\n};\n\nexport default useRenderActivityProps;\n","import { useContext } from 'react';\nimport SenderGroupingContext, { type SenderGroupingContextType } from './SenderGroupingContext';\n\nexport default function useSenderGroupingContext(): SenderGroupingContextType {\n return useContext(SenderGroupingContext);\n}\n","import { type WebChatActivity } from 'botframework-webchat-core';\nimport { createContext } from 'react';\n\ntype SenderGroupingContextType = Readonly<{\n firstActivityState: readonly [WebChatActivity];\n lastActivityState: readonly [WebChatActivity];\n}>;\n\nconst EMPTY_STATE = Object.freeze([undefined] as const);\n\n// SenderGroupingContext may not available if `styleOptions.groupActivitiesBy` does not have `sender`.\nconst SenderGroupingContext = createContext<SenderGroupingContextType>({\n firstActivityState: EMPTY_STATE,\n lastActivityState: EMPTY_STATE\n});\n\nexport default SenderGroupingContext;\nexport { type SenderGroupingContextType };\n","import { type WebChatActivity } from 'botframework-webchat-core';\nimport useSenderGroupingContext from './private/useSenderGroupingContext';\n\nexport default function useFirstActivity(): readonly [WebChatActivity] {\n return useSenderGroupingContext().firstActivityState;\n}\n","import { type WebChatActivity } from 'botframework-webchat-core';\nimport useSenderGroupingContext from './private/useSenderGroupingContext';\n\nexport default function useLastActivity(): readonly [WebChatActivity] {\n return useSenderGroupingContext().lastActivityState;\n}\n","import { useContext } from 'react';\nimport StatusGroupingContext, { type StatusGroupingContextType } from './StatusGroupingContext';\n\nexport default function useStatusGroupingContext(): StatusGroupingContextType {\n return useContext(StatusGroupingContext);\n}\n","import { type WebChatActivity } from 'botframework-webchat-core';\nimport { createContext } from 'react';\n\ntype StatusGroupingContextType = Readonly<{\n firstActivityState: readonly [WebChatActivity];\n lastActivityState: readonly [WebChatActivity];\n}>;\n\nconst EMPTY_STATE = Object.freeze([undefined] as const);\n\n// StatusGroupingContext may not available if `styleOptions.groupActivitiesBy` does not have `status`.\nconst StatusGroupingContext = createContext<StatusGroupingContextType>({\n firstActivityState: EMPTY_STATE,\n lastActivityState: EMPTY_STATE\n});\n\nexport default StatusGroupingContext;\nexport { type StatusGroupingContextType };\n","import { type WebChatActivity } from 'botframework-webchat-core';\nimport useStatusGroupingContext from './private/useStatusGroupingContext';\n\nexport default function useFirstActivity(): readonly [WebChatActivity] {\n return useStatusGroupingContext().firstActivityState;\n}\n","import { type WebChatActivity } from 'botframework-webchat-core';\nimport useStatusGroupingContext from './private/useStatusGroupingContext';\n\nexport default function useLastActivity(): readonly [WebChatActivity] {\n return useStatusGroupingContext().lastActivityState;\n}\n","/**\n * Returns `true`, if the number is zero or positive, otherwise, `false`, including minus zeroes.\n */\nexport default function isZeroOrPositive(value: number): boolean {\n // This will handle minus-zero.\n return 1 / value >= 0;\n}\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, memo, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptActivityListProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptActivityList = forwardRef<HTMLDivElement, TranscriptActivityListProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return (\n <section {...props} className={cx(classNames['transcript-focus-area__activity-list'], className)} ref={ref} />\n );\n }\n);\n\nTranscriptActivityList.displayName = 'TranscriptActivityList';\n\nexport default memo(TranscriptActivityList);\nexport { type TranscriptActivityListProps };\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Transcript/TranscriptFocus/TranscriptFocus.module_built.css\";\nconst classes = {\"transcript-focus-area__root\":\"wHUVgzG_transcript-focus-area__root\",\"transcript-focus-area__content-overlay\":\"wHUVgzG_transcript-focus-area__content-overlay\",\"transcript-focus-area__activity-list\":\"wHUVgzG_transcript-focus-area__activity-list\",\"transcript-focus-area__terminator\":\"wHUVgzG_transcript-focus-area__terminator\",\"transcript-focus-area__content-active-descendant\":\"wHUVgzG_transcript-focus-area__content-active-descendant\",\"transcript-focus-area__terminator-body\":\"wHUVgzG_transcript-focus-area__terminator-body\",\"transcript-focus-area\":\"wHUVgzG_transcript-focus-area\",\"transcript-focus-area__content\":\"wHUVgzG_transcript-focus-area__content\",\"transcript-focus-area__indicator\":\"wHUVgzG_transcript-focus-area__indicator\",\"transcript-focus-area__content-root\":\"wHUVgzG_transcript-focus-area__content-root\",\"transcript-focus-area__content--focused\":\"wHUVgzG_transcript-focus-area__content--focused\",\"transcript-focus-area__terminator-text\":\"wHUVgzG_transcript-focus-area__terminator-text\",\"transcript-focus-area__transcript-indicator\":\"wHUVgzG_transcript-focus-area__transcript-indicator\"}\nexport default classes\n\nconst _transcript_focus_area__root0 = classes[\"transcript-focus-area__root\"]\nexport { _transcript_focus_area__root0 as \"transcript-focus-area__root\" }\n\nconst _transcript_focus_area__content_overlay0 = classes[\"transcript-focus-area__content-overlay\"]\nexport { _transcript_focus_area__content_overlay0 as \"transcript-focus-area__content-overlay\" }\n\nconst _transcript_focus_area__activity_list0 = classes[\"transcript-focus-area__activity-list\"]\nexport { _transcript_focus_area__activity_list0 as \"transcript-focus-area__activity-list\" }\n\nconst _transcript_focus_area__terminator0 = classes[\"transcript-focus-area__terminator\"]\nexport { _transcript_focus_area__terminator0 as \"transcript-focus-area__terminator\" }\n\nconst _transcript_focus_area__content_active_descendant0 = classes[\"transcript-focus-area__content-active-descendant\"]\nexport { _transcript_focus_area__content_active_descendant0 as \"transcript-focus-area__content-active-descendant\" }\n\nconst _transcript_focus_area__terminator_body0 = classes[\"transcript-focus-area__terminator-body\"]\nexport { _transcript_focus_area__terminator_body0 as \"transcript-focus-area__terminator-body\" }\n\nconst _transcript_focus_area0 = classes[\"transcript-focus-area\"]\nexport { _transcript_focus_area0 as \"transcript-focus-area\" }\n\nconst _transcript_focus_area__content0 = classes[\"transcript-focus-area__content\"]\nexport { _transcript_focus_area__content0 as \"transcript-focus-area__content\" }\n\nconst _transcript_focus_area__indicator0 = classes[\"transcript-focus-area__indicator\"]\nexport { _transcript_focus_area__indicator0 as \"transcript-focus-area__indicator\" }\n\nconst _transcript_focus_area__content_root0 = classes[\"transcript-focus-area__content-root\"]\nexport { _transcript_focus_area__content_root0 as \"transcript-focus-area__content-root\" }\n\nconst _transcript_focus_area__content__focused0 = classes[\"transcript-focus-area__content--focused\"]\nexport { _transcript_focus_area__content__focused0 as \"transcript-focus-area__content--focused\" }\n\nconst _transcript_focus_area__terminator_text0 = classes[\"transcript-focus-area__terminator-text\"]\nexport { _transcript_focus_area__terminator_text0 as \"transcript-focus-area__terminator-text\" }\n\nconst _transcript_focus_area__transcript_indicator0 = classes[\"transcript-focus-area__transcript-indicator\"]\nexport { _transcript_focus_area__transcript_indicator0 as \"transcript-focus-area__transcript-indicator\" }\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport TranscriptFocusIndicator from './TranscriptFocusIndicator';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusAreaProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptFocusArea = forwardRef<HTMLDivElement, TranscriptFocusAreaProps>(\n ({ className, children, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return (\n <div {...props} className={cx(classNames['transcript-focus-area'], className)} ref={ref}>\n <div className={classNames['transcript-focus-area__root']}>{children}</div>\n <TranscriptFocusIndicator type=\"transcript\" />\n </div>\n );\n }\n);\n\nTranscriptFocusArea.displayName = 'TranscriptFocusArea';\n\nexport default TranscriptFocusArea;\nexport { type TranscriptFocusAreaProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusIndicatorProps = HTMLAttributes<HTMLDivElement> &\n Readonly<{\n type?: 'content' | 'transcript';\n }>;\n\nconst TranscriptFocusIndicator = forwardRef<HTMLDivElement, TranscriptFocusIndicatorProps>(\n ({ className, type = 'content', ...props }, ref) => {\n const classNames = useStyles(styles);\n\n const indicatorClass =\n type === 'content'\n ? classNames['transcript-focus-area__indicator']\n : classNames['transcript-focus-area__transcript-indicator'];\n\n return <div {...props} className={cx(indicatorClass, className)} ref={ref} />;\n }\n);\n\nTranscriptFocusIndicator.displayName = 'TranscriptFocusIndicator';\n\nexport default TranscriptFocusIndicator;\nexport { type TranscriptFocusIndicatorProps };\n","/* eslint-disable react/require-default-props */\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusContentProps = HTMLAttributes<HTMLDivElement> & {\n readonly focused?: boolean;\n readonly tag?: string | React.JSXElementConstructor<any>;\n};\n\nconst TranscriptFocusContent = forwardRef<HTMLDivElement, TranscriptFocusContentProps>(\n ({ className, focused, tag: Tag = 'div', ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return (\n <Tag\n {...props}\n className={cx(\n classNames['transcript-focus-area__content'],\n { [classNames['transcript-focus-area__content--focused']]: focused },\n className\n )}\n ref={ref}\n />\n );\n }\n);\n\nTranscriptFocusContent.displayName = 'TranscriptFocusContent';\n\nexport default TranscriptFocusContent;\nexport { type TranscriptFocusContentProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusContentOverlayProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptFocusContentOverlay = forwardRef<HTMLDivElement, TranscriptFocusContentOverlayProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return <div {...props} className={cx(classNames['transcript-focus-area__content-overlay'], className)} ref={ref} />;\n }\n);\n\nTranscriptFocusContentOverlay.displayName = 'TranscriptFocusContentOverlay';\n\nexport default TranscriptFocusContentOverlay;\nexport { type TranscriptFocusContentOverlayProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusContentActiveDescendantProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptFocusContentActiveDescendant = forwardRef<HTMLDivElement, TranscriptFocusContentActiveDescendantProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return (\n <div\n {...props}\n className={cx(classNames['transcript-focus-area__content-active-descendant'], className)}\n ref={ref}\n />\n );\n }\n);\n\nTranscriptFocusContentActiveDescendant.displayName = 'TranscriptFocusContentActiveDescendant';\n\nexport default TranscriptFocusContentActiveDescendant;\nexport { type TranscriptFocusContentActiveDescendantProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusContentBodyProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptFocusContentBody = forwardRef<HTMLDivElement, TranscriptFocusContentBodyProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return <div {...props} className={cx(classNames['transcript-focus-area__content-body'], className)} ref={ref} />;\n }\n);\n\nTranscriptFocusContentBody.displayName = 'TranscriptFocusContentBody';\n\nexport default TranscriptFocusContentBody;\nexport { type TranscriptFocusContentBodyProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport { hooks } from 'botframework-webchat-api';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\nimport useUniqueId from '../../hooks/internal/useUniqueId';\n\ntype TranscriptFocusTerminatorProps = HTMLAttributes<HTMLDivElement>;\n\nconst { useLocalizer } = hooks;\n\nconst TranscriptFocusTerminator = forwardRef<HTMLDivElement, TranscriptFocusTerminatorProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n const localize = useLocalizer();\n const terminatorText = localize('TRANSCRIPT_TERMINATOR_TEXT');\n const terminatorLabelId = useUniqueId('webchat__basic-transcript__terminator-label');\n\n return (\n <div\n {...props}\n aria-labelledby={terminatorLabelId}\n className={cx(classNames['transcript-focus-area__terminator'], className)}\n ref={ref}\n >\n <div className={cx(classNames['transcript-focus-area__terminator-body'])}>\n {/* `id` is required for `aria-labelledby` */}\n {/* eslint-disable-next-line react/forbid-dom-props */}\n <div className={cx(classNames['transcript-focus-area__terminator-text'])} id={terminatorLabelId}>\n {terminatorText}\n </div>\n </div>\n </div>\n );\n }\n);\n\nTranscriptFocusTerminator.displayName = 'TranscriptFocusTerminator';\n\nexport default TranscriptFocusTerminator;\nexport { type TranscriptFocusTerminatorProps };\n","/* eslint no-magic-numbers: [\"error\", { \"ignore\": [2, 5, 36] }] */\n\nimport { useMemo } from 'react';\nimport random from 'math-random';\n\nexport default function useUniqueId(prefix?: string): string {\n const id = useMemo(() => random().toString(36).substr(2, 5), []);\n\n prefix = prefix ? `${prefix}--` : '';\n\n return `${prefix}${id}`;\n}\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusTerminatorBodyProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptFocusTerminatorBody = forwardRef<HTMLDivElement, TranscriptFocusTerminatorBodyProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return <div {...props} className={cx(classNames['transcript-focus-area__terminator-body'], className)} ref={ref} />;\n }\n);\n\nTranscriptFocusTerminatorBody.displayName = 'TranscriptFocusTerminatorBody';\n\nexport default TranscriptFocusTerminatorBody;\nexport { type TranscriptFocusTerminatorBodyProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, type HTMLAttributes } from 'react';\n\nimport styles from './TranscriptFocus.module.css';\n\ntype TranscriptFocusTerminatorTextProps = HTMLAttributes<HTMLDivElement>;\n\nconst TranscriptFocusTerminatorText = forwardRef<HTMLDivElement, TranscriptFocusTerminatorTextProps>(\n ({ className, ...props }, ref) => {\n const classNames = useStyles(styles);\n\n return <div {...props} className={cx(classNames['transcript-focus-area__terminator-text'], className)} ref={ref} />;\n }\n);\n\nTranscriptFocusTerminatorText.displayName = 'TranscriptFocusTerminatorText';\n\nexport default TranscriptFocusTerminatorText;\nexport { type TranscriptFocusTerminatorTextProps };\n","const { userAgent } = navigator;\n\n// not DRY so that list can be alphabetical\nconst android = /Linux; Android/u.test(userAgent);\nconst chromium = !/Edge\\//u.test(userAgent) && /Chrome\\//u.test(userAgent);\nconst edgeAnaheim = /Edg\\//u.test(userAgent);\nconst edgeUWP = /Edge\\//u.test(userAgent);\nconst firefox = /Firefox\\//u.test(userAgent);\nconst ie11 = /Trident\\/7.0/u.test(userAgent);\n\nconst chrome = chromium && !edgeAnaheim;\nconst safari = !(chrome || edgeUWP || ie11 || firefox);\n\nexport { android, chrome, chromium, edgeAnaheim, edgeUWP, firefox, ie11, safari };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { hooks } from 'botframework-webchat-api';\nimport cx from 'classnames';\nimport random from 'math-random';\nimport React, { memo, useCallback, useRef, useState } from 'react';\nimport { boolean, custom, object, optional, pipe, readonly, string, type InferInput } from 'valibot';\nimport { useRefFrom } from 'use-ref-from';\n\nimport ActivityButton from '../../../../Attachment/Text/private/ActivityButton';\nimport { ComponentIcon } from '../../../../Icon';\n\nimport styles from './CollapsibleGrouping.module.css';\n\nconst { useLocalizer } = hooks;\n\nconst collapsibleGroupingPropsSchema = pipe(\n object({\n children: reactNode(),\n className: optional(string()),\n header: optional(reactNode()),\n isOpen: optional(boolean()),\n onToggle: optional(custom<(isOpen: boolean) => void>(toggle => typeof toggle === 'function'))\n }),\n readonly()\n);\n\ntype CollapsibleGroupingProps = InferInput<typeof collapsibleGroupingPropsSchema>;\n\nfunction uniqueId(count = Infinity) {\n return (\n random()\n // eslint-disable-next-line no-magic-numbers\n .toString(36)\n // eslint-disable-next-line no-magic-numbers\n .substring(2, 2 + count)\n );\n}\n\nfunction CollapsibleGrouping(props: CollapsibleGroupingProps) {\n const { children, className, header, isOpen = true, onToggle } = validateProps(collapsibleGroupingPropsSchema, props);\n const [id] = useState(() => `webchat-collapsible-grouping-${uniqueId()}`);\n const classNames = useStyles(styles);\n const buttonRef = useRef<HTMLButtonElement>(null);\n const isOpenRef = useRefFrom(isOpen);\n const onToggleRef = useRefFrom(onToggle);\n const localize = useLocalizer();\n\n const handleToggle = useCallback(() => {\n const newIsOpen = !isOpenRef.current;\n const button = buttonRef.current;\n if (button) {\n button.setAttribute('aria-expanded', newIsOpen.toString());\n button.setAttribute('aria-pressed', newIsOpen.toString());\n }\n onToggleRef.current?.(newIsOpen);\n }, [isOpenRef, onToggleRef]);\n\n const text = isOpen ? localize('COLLAPSE_BUTTON_LESS') : localize('COLLAPSE_BUTTON_MORE');\n\n return (\n <div\n className={cx(\n classNames['collapsible-grouping'],\n { [classNames['collapsible-grouping--open']]: isOpen },\n className\n )}\n >\n <div className={cx(classNames['collapsible-grouping__header'])}>\n {header}\n <ActivityButton\n aria-controls={id}\n aria-expanded={isOpen}\n aria-pressed={isOpen}\n className={cx(classNames['collapsible-grouping__toggle'])}\n onClick={handleToggle}\n ref={buttonRef}\n text={text}\n >\n <ComponentIcon appearance=\"text\" className={classNames['collapsible-grouping__chevron']} icon=\"chevron\" />\n </ActivityButton>\n </div>\n <div\n className={cx(classNames['collapsible-grouping__content'], {\n [classNames['collapsible-grouping__content--open']]: isOpen\n })}\n // eslint-disable-next-line react/forbid-dom-props\n id={id}\n >\n {children}\n </div>\n </div>\n );\n}\n\nexport default memo(CollapsibleGrouping);\nexport { collapsibleGroupingPropsSchema, type CollapsibleGroupingProps };\n","import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { forwardRef, memo, useCallback } from 'react';\nimport { useRefFrom } from 'use-ref-from';\nimport { boolean, custom, function_, is, object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport { ComponentIcon, componentIconPropsSchema } from '../../../Icon';\n\nimport styles from './ActivityButton.module.css';\n\nconst activityButtonPropsSchema = pipe(\n object({\n 'aria-controls': optional(string()),\n 'aria-expanded': optional(boolean()),\n 'aria-pressed': optional(boolean()),\n children: optional(reactNode()),\n className: optional(string()),\n 'data-testid': optional(string()),\n disabled: optional(boolean()),\n icon: componentIconPropsSchema.entries.icon,\n onClick: optional(custom<() => void>(value => is(function_(), value))),\n text: optional(string())\n }),\n readonly()\n);\n\ntype ActivityButtonProps = InferInput<typeof activityButtonPropsSchema>;\n\nconst ActivityButton = forwardRef<HTMLButtonElement, ActivityButtonProps>((props, ref) => {\n const {\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-pressed': ariaPressed,\n children,\n className,\n 'data-testid': dataTestId,\n disabled,\n icon,\n onClick,\n text\n } = validateProps(activityButtonPropsSchema, props);\n\n const classNames = useStyles(styles);\n const onClickRef = useRefFrom(onClick);\n\n const handleClick = useCallback(() => onClickRef.current?.(), [onClickRef]);\n\n return (\n <button\n aria-controls={ariaControls}\n aria-disabled={disabled ? 'true' : undefined}\n aria-expanded={ariaExpanded}\n aria-pressed={ariaPressed}\n className={cx(classNames['activity-button'], className)}\n data-testid={dataTestId}\n onClick={disabled ? undefined : handleClick}\n ref={ref}\n // eslint-disable-next-line no-magic-numbers\n tabIndex={disabled ? -1 : undefined}\n type=\"button\"\n >\n {icon && <ComponentIcon appearance=\"text\" className={classNames['activity-button__icon']} icon={icon} />}\n {text && <span className=\"activity-button__text\">{text}</span>}\n {children}\n </button>\n );\n});\n\nexport default memo(ActivityButton);\nexport { activityButtonPropsSchema, type ActivityButtonProps };\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Attachment/Text/private/ActivityButton.module_built.css\";\nconst classes = {\"activity-button\":\"wMObAfW_activity-button\",\"activity-button__icon\":\"wMObAfW_activity-button__icon\"}\nexport default classes\n\nconst _activity_button0 = classes[\"activity-button\"]\nexport { _activity_button0 as \"activity-button\" }\n\nconst _activity_button__icon0 = classes[\"activity-button__icon\"]\nexport { _activity_button__icon0 as \"activity-button__icon\" }\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/CollapsibleGrouping.module_built.css\";\nconst classes = {\"collapsible-grouping__list\":\"wDvoJHW_collapsible-grouping__list\",\"collapsible-grouping__chevron\":\"wDvoJHW_collapsible-grouping__chevron\",\"collapsible-grouping--open\":\"wDvoJHW_collapsible-grouping--open\",\"collapsible-grouping__content--open\":\"wDvoJHW_collapsible-grouping__content--open\",\"collapsible-grouping__content\":\"wDvoJHW_collapsible-grouping__content\",\"collapsible-grouping\":\"wDvoJHW_collapsible-grouping\",\"collapsible-grouping__header\":\"wDvoJHW_collapsible-grouping__header\",\"collapsible-grouping__title\":\"wDvoJHW_collapsible-grouping__title\",\"collapsible-grouping__toggle\":\"wDvoJHW_collapsible-grouping__toggle\"}\nexport default classes\n\nconst _collapsible_grouping__list0 = classes[\"collapsible-grouping__list\"]\nexport { _collapsible_grouping__list0 as \"collapsible-grouping__list\" }\n\nconst _collapsible_grouping__chevron0 = classes[\"collapsible-grouping__chevron\"]\nexport { _collapsible_grouping__chevron0 as \"collapsible-grouping__chevron\" }\n\nconst _collapsible_grouping__open0 = classes[\"collapsible-grouping--open\"]\nexport { _collapsible_grouping__open0 as \"collapsible-grouping--open\" }\n\nconst _collapsible_grouping__content__open0 = classes[\"collapsible-grouping__content--open\"]\nexport { _collapsible_grouping__content__open0 as \"collapsible-grouping__content--open\" }\n\nconst _collapsible_grouping__content0 = classes[\"collapsible-grouping__content\"]\nexport { _collapsible_grouping__content0 as \"collapsible-grouping__content\" }\n\nconst _collapsible_grouping0 = classes[\"collapsible-grouping\"]\nexport { _collapsible_grouping0 as \"collapsible-grouping\" }\n\nconst _collapsible_grouping__header0 = classes[\"collapsible-grouping__header\"]\nexport { _collapsible_grouping__header0 as \"collapsible-grouping__header\" }\n\nconst _collapsible_grouping__title0 = classes[\"collapsible-grouping__title\"]\nexport { _collapsible_grouping__title0 as \"collapsible-grouping__title\" }\n\nconst _collapsible_grouping__toggle0 = classes[\"collapsible-grouping__toggle\"]\nexport { _collapsible_grouping__toggle0 as \"collapsible-grouping__toggle\" }\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { any, object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport styles from './CollapsibleGrouping.module.css';\n\nconst collapsibleGroupingListPropsSchema = pipe(\n object({\n children: optional(reactNode()),\n className: optional(string()),\n tag: optional(any())\n }),\n readonly()\n);\n\ntype CollapsibleGroupingListProps = InferInput<typeof collapsibleGroupingListPropsSchema>;\n\nconst CollapsibleGroupingList = (props: CollapsibleGroupingListProps) => {\n const { className, children, tag: Tag = 'div' } = validateProps(collapsibleGroupingListPropsSchema, props);\n const classNames = useStyles(styles);\n\n return <Tag className={cx(classNames['collapsible-grouping__list'], className)}>{children}</Tag>;\n};\n\nCollapsibleGroupingList.displayName = 'CollapsibleGroupingList';\n\nexport default memo(CollapsibleGroupingList);\nexport { collapsibleGroupingListPropsSchema, type CollapsibleGroupingListProps };\n","import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport styles from './CollapsibleGrouping.module.css';\n\nconst collapsibleGroupingTitlePropsSchema = pipe(\n object({\n children: optional(reactNode()),\n className: optional(string())\n }),\n readonly()\n);\n\ntype CollapsibleGroupingTitleProps = InferInput<typeof collapsibleGroupingTitlePropsSchema>;\n\nconst CollapsibleGroupingTitle = (props: CollapsibleGroupingTitleProps) => {\n const { className, children } = validateProps(collapsibleGroupingTitlePropsSchema, props);\n const classNames = useStyles(styles);\n\n return <div className={cx(classNames['collapsible-grouping__title'], className)}>{children}</div>;\n};\n\nCollapsibleGroupingTitle.displayName = 'CollapsibleGroupingTitle';\n\nexport default memo(CollapsibleGroupingTitle);\nexport { collapsibleGroupingTitlePropsSchema, type CollapsibleGroupingTitleProps };\n","import random from 'math-random';\nimport { useCallback, useEffect, useMemo } from 'react';\nimport { useRefFrom } from 'use-ref-from';\nimport { useStateWithRef } from 'use-state-with-ref';\n\nimport { useAddLogicalGrouping, useRemoveLogicalGrouping } from '../../../../../providers/ActivityLogicalGrouping';\n\ntype UsePartGroupingLogicalGroupOptions = {\n activityKeys: readonly string[];\n isCollapsed: boolean;\n};\n\nfunction usePartGroupingLogicalGroup({ activityKeys, isCollapsed }: UsePartGroupingLogicalGroupOptions): string {\n // eslint-disable-next-line no-magic-numbers\n const [partGroupKey, _setPartKey, partKeyRef] = useStateWithRef(() => `part-${random().toString(36).slice(2, 11)}`);\n const addLogicalGrouping = useAddLogicalGrouping();\n const removeLogicalGrouping = useRemoveLogicalGrouping();\n\n const isCollapsedRef = useRefFrom(isCollapsed);\n\n const getGroupState = useCallback(() => ({ isCollapsed: isCollapsedRef.current }), [isCollapsedRef]);\n\n useMemo(\n () =>\n addLogicalGrouping({\n key: partKeyRef.current,\n activityKeys: Array.from(activityKeys),\n getGroupState\n }),\n [activityKeys, addLogicalGrouping, getGroupState, partKeyRef]\n );\n\n const removeLogicalGroupingRef = useRefFrom(removeLogicalGrouping);\n\n useEffect(() => () => removeLogicalGroupingRef.current(partKeyRef.current), [partKeyRef, removeLogicalGroupingRef]);\n\n return partGroupKey;\n}\n\nexport default usePartGroupingLogicalGroup;\nexport { type UsePartGroupingLogicalGroupOptions };\n","import { reactNode, validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { createElement, memo, useCallback, useMemo, useRef } from 'react';\nimport { object, optional, pipe, readonly, type InferInput } from 'valibot';\n\nimport ActivityLogicalGroupingContext, {\n type ActivityLogicalGroupingContextType,\n type GroupState,\n type LogicalGrouping\n} from './private/ActivityLogicalGroupingContext';\nimport useStateWithOptimisticRef from './private/useStateWithOptimisticRef';\n\nconst activityLogicalGroupingComposerPropsSchema = pipe(\n object({\n children: optional(reactNode())\n }),\n readonly()\n);\n\ntype ActivityLogicalGroupingComposerProps = InferInput<typeof activityLogicalGroupingComposerPropsSchema>;\n\nconst ActivityLogicalGroupingComposer = (props: ActivityLogicalGroupingComposerProps) => {\n const { children } = validateProps(activityLogicalGroupingComposerPropsSchema, props);\n\n const logicalGroupingsRef = useRef<Map<string, LogicalGrouping>>(new Map());\n const [_activityToGroupMap, setActivityToGroupMap, activityToGroupMapRef] = useStateWithOptimisticRef<\n ReadonlyMap<string, string | undefined>\n >(new Map());\n\n const addLogicalGrouping = useCallback(\n (grouping: LogicalGrouping) => {\n const prevGroupingKeys = logicalGroupingsRef.current.get(grouping.key)?.activityKeys ?? [];\n\n logicalGroupingsRef.current.set(grouping.key, grouping);\n\n const toRemoveSet = new Set(prevGroupingKeys).difference(new Set(grouping.activityKeys));\n const toAddSet = new Set(grouping.activityKeys).difference(new Set(prevGroupingKeys));\n\n setActivityToGroupMap(\n new Map(\n [].concat(\n Array.from(activityToGroupMapRef.current).filter(([, value]) => !!value && !toRemoveSet.has(value)),\n Array.from(toAddSet).map(activityKey => [activityKey, grouping.key] as const)\n )\n )\n );\n },\n [activityToGroupMapRef, setActivityToGroupMap]\n );\n\n const removeLogicalGrouping = useCallback(\n (key: string) => {\n logicalGroupingsRef.current.delete(key);\n setActivityToGroupMap(new Map([...activityToGroupMapRef.current].filter(([, value]) => value !== key)));\n },\n [activityToGroupMapRef, setActivityToGroupMap]\n );\n\n const getLogicalGroupKey = useCallback(\n (activityKey: string): string | undefined => activityToGroupMapRef.current.get(activityKey),\n [activityToGroupMapRef]\n );\n\n const getGroupState = useCallback(\n (groupKey: string): GroupState | undefined => {\n const group = logicalGroupingsRef.current.get(groupKey);\n return group?.getGroupState?.();\n },\n [logicalGroupingsRef]\n );\n\n const getGroupBoundaries = useCallback(\n (groupKey: string): [string, string] => {\n const group = logicalGroupingsRef.current.get(groupKey);\n if (!group || !group.activityKeys.length) {\n return [undefined, undefined];\n }\n // eslint-disable-next-line no-magic-numbers\n return [group.activityKeys.at(0), group.activityKeys.at(-1)];\n },\n [logicalGroupingsRef]\n );\n\n const contextValue: ActivityLogicalGroupingContextType = useMemo(\n () => ({\n addLogicalGrouping,\n getLogicalGroupKey,\n getGroupState,\n getGroupBoundaries,\n removeLogicalGrouping\n }),\n [addLogicalGrouping, getLogicalGroupKey, getGroupState, getGroupBoundaries, removeLogicalGrouping]\n );\n\n return createElement(ActivityLogicalGroupingContext.Provider, { value: contextValue }, children);\n};\n\nActivityLogicalGroupingComposer.displayName = 'ActivityLogicalGroupingComposer';\n\nexport default memo(ActivityLogicalGroupingComposer);\nexport { activityLogicalGroupingComposerPropsSchema, type ActivityLogicalGroupingComposerProps };\n","import createContextAndHook from '../../createContextAndHook';\n\ntype GroupState = Readonly<{\n isCollapsed: boolean;\n}>;\n\ntype LogicalGrouping = Readonly<{\n activityKeys: string[];\n getGroupState?: () => GroupState;\n key: string;\n}>;\n\ntype ActivityLogicalGroupingContextType = Readonly<{\n addLogicalGrouping: (grouping: LogicalGrouping) => void;\n getGroupBoundaries: (groupKey: string) => [string | undefined, string | undefined];\n getGroupState: (groupKey: string) => GroupState | undefined;\n getLogicalGroupKey: (activityKey: string) => string | undefined;\n removeLogicalGrouping: (key: string) => void;\n}>;\n\nconst { contextComponentType, useContext } = createContextAndHook<ActivityLogicalGroupingContextType>(\n 'ActivityLogicalGroupingContext'\n);\n\nexport default contextComponentType;\nexport {\n useContext as useActivityLogicalGroupingContext,\n type ActivityLogicalGroupingContextType,\n type GroupState,\n type LogicalGrouping\n};\n","import { useCallback, useRef, useState } from 'react';\n\nexport default function useStateWithOptimisticRef<T>(initialState: T | (() => T)) {\n const [state, setState] = useState(initialState);\n const stateRef = useRef<T>(state);\n\n const setStateWithRefUpdate = useCallback((newState: T) => {\n setState(newState);\n stateRef.current = newState;\n }, []);\n\n return [state, setStateWithRefUpdate, stateRef] as const;\n}\n","import { useActivityLogicalGroupingContext, type LogicalGrouping } from './private/ActivityLogicalGroupingContext';\n\nexport default function useAddLogicalGrouping(): (grouping: LogicalGrouping) => void {\n return useActivityLogicalGroupingContext().addLogicalGrouping;\n}\n","import { useActivityLogicalGroupingContext } from './private/ActivityLogicalGroupingContext';\n\nexport default function useRemoveLogicalGrouping(): (key: string) => void {\n return useActivityLogicalGroupingContext().removeLogicalGrouping;\n}\n","import { useActivityLogicalGroupingContext } from './private/ActivityLogicalGroupingContext';\n\nexport default function useGetLogicalGroupKey(): (activityKey: string) => string | undefined {\n return useActivityLogicalGroupingContext().getLogicalGroupKey;\n}\n","import { useActivityLogicalGroupingContext, type GroupState } from './private/ActivityLogicalGroupingContext';\n\nexport default function useGetGroupState(): (groupKey: string) => GroupState | undefined {\n return useActivityLogicalGroupingContext().getGroupState;\n}\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Middleware/ActivityGrouping/ui/PartGrouping/private/PartGroupingActivity.module_built.css\";\nconst classes = {\"part-grouping-activity__activities\":\"wjtNCTG_part-grouping-activity__activities\",\"part-grouping-activity__message-status\":\"wjtNCTG_part-grouping-activity__message-status\",\"part-grouping-activity__collapsible--open\":\"wjtNCTG_part-grouping-activity__collapsible--open\",\"part-grouping-activity\":\"wjtNCTG_part-grouping-activity\",\"part-grouping-activity__collapsible\":\"wjtNCTG_part-grouping-activity__collapsible\"}\nexport default classes\n\nconst _part_grouping_activity__activities0 = classes[\"part-grouping-activity__activities\"]\nexport { _part_grouping_activity__activities0 as \"part-grouping-activity__activities\" }\n\nconst _part_grouping_activity__message_status0 = classes[\"part-grouping-activity__message-status\"]\nexport { _part_grouping_activity__message_status0 as \"part-grouping-activity__message-status\" }\n\nconst _part_grouping_activity__collapsible__open0 = classes[\"part-grouping-activity__collapsible--open\"]\nexport { _part_grouping_activity__collapsible__open0 as \"part-grouping-activity__collapsible--open\" }\n\nconst _part_grouping_activity0 = classes[\"part-grouping-activity\"]\nexport { _part_grouping_activity0 as \"part-grouping-activity\" }\n\nconst _part_grouping_activity__collapsible0 = classes[\"part-grouping-activity__collapsible\"]\nexport { _part_grouping_activity__collapsible0 as \"part-grouping-activity__collapsible\" }\n","import { createContext, useContext, memo } from 'react';\n\nimport createCodeHighlighterComposer from './createCodeHighlighterComposer';\nimport { defaultHighlightCode } from './defaultHighlightCode';\n\nexport type HighlightCodeFn = (\n code: string,\n language?: string | undefined,\n options?:\n | {\n theme: string;\n }\n | undefined\n) => string | DocumentFragment;\n\nexport type CodeHighlighterContextType = {\n highlightCode: HighlightCodeFn;\n};\n\nconst CodeHighlighterContext = createContext<CodeHighlighterContextType>(\n Object.freeze({\n highlightCode: defaultHighlightCode\n })\n);\n\nexport function useCodeHighlighter() {\n return useContext(CodeHighlighterContext).highlightCode;\n}\n\nexport const CodeHighlighterComposer = memo(createCodeHighlighterComposer(CodeHighlighterContext));\n\nCodeHighlighterComposer.displayName = 'CodeHighlighterComposer';\n","import React, { type ReactNode, useCallback, useMemo } from 'react';\n\nimport { useCodeHighlighter, type CodeHighlighterContextType, type HighlightCodeFn } from './CodeHighlighterComposer';\n\nconst createCodeHighlighterComposer =\n ({ Provider }: React.Context<CodeHighlighterContextType>) =>\n ({ children, highlightCode }: Readonly<{ children: ReactNode; highlightCode: HighlightCodeFn }>) => {\n const previousCodeHighlighter = useCodeHighlighter();\n\n const safeHighlightCode = useCallback<HighlightCodeFn>(\n (...args) => {\n try {\n return highlightCode(...args);\n } catch (error) {\n console.warn(`botframework-webchat: Failed to highlight code using ${highlightCode.name}`, error);\n return previousCodeHighlighter(...args);\n }\n },\n [highlightCode, previousCodeHighlighter]\n );\n\n const CodeHighlighterContextValue = useMemo(\n () => ({\n highlightCode: safeHighlightCode\n }),\n [safeHighlightCode]\n );\n\n return <Provider value={CodeHighlighterContextValue}>{children}</Provider>;\n };\n\nexport default createCodeHighlighterComposer;\n","import type { HighlightCodeFn } from './CodeHighlighterComposer';\n\nexport const defaultHighlightCode: HighlightCodeFn = (source, language) => {\n try {\n const fragment = document.createDocumentFragment();\n const pre = document.createElement('pre');\n const code = document.createElement('code');\n\n code.textContent = source;\n\n // Follow commonmark convention\n language && code.classList.add(`language-${language}`);\n\n pre.append(code);\n fragment.append(pre);\n\n return fragment;\n } catch (error) {\n console.warn(`botframework-webchat: Failed to display code`, error);\n return '<pre></pre>';\n }\n};\n"],"mappings":"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","names":["React","forwardRef","memo","boolean","object","optional","pipe","readonly","string","ROOT_STYLE","screenReaderTextPropsSchema","pipe","object","optional","boolean","string","readonly","ScreenReaderText","forwardRef","props","ref","ariaHidden","id","text","o","rootClassName","useStyleToEmotionObject","React","ScreenReaderText_default","memo","getActivityLivestreamingMetadata","getOrgSchemaMessage","IdentifierSchema","React","Fragment","memo","useMemo","array","custom","is","minLength","object","optional","parse","pipe","readonly","hooks","getOrgSchemaMessage","React","Fragment","memo","useCallback","useMemo","useState","cx","array","custom","is","minLength","object","optional","pipe","readonly","string","cx","React","memo","object","optional","pipe","readonly","classes","StackedLayout_module_default","_stacked_layout__message_status_unset_icon0","_stacked_layout__title0","classes","_stacked_layout__bubble0","classes","_stacked_layout__attachment_row0","classes","_stacked_layout__message_status__incomplete0","classes","_stacked_layout__nub_pad0","classes","_stacked_layout__message0","classes","_stacked_layout__extra_trailing0","classes","_stacked_layout__attachment0","classes","_stacked_layout__show_avatar0","classes","_stacked_layout__message_status_loader0","classes","_stacked_layout__message_status__unset0","classes","_stacked_layout__message_status__published0","classes","_stacked_layout__from_user0","classes","_stacked_layout__message_row0","classes","_stacked_layout__no_message0","classes","_stacked_layout__group0","classes","_stacked_layout__show_nub0","classes","_stacked_layout__hide_nub0","classes","_stacked_layout__content0","classes","_stacked_layout__top_callout0","classes","_stacked_layout__attachment_list0","classes","_stacked_layout__message_status_complete_icon0","classes","_stacked_layout__avatar_gutter0","classes","_stacked_layout__hide_avatar0","classes","_stacked_layout0","classes","_stacked_layout__main0","classes","_stacked_layout__activity0","classes","_stacked_layout__alignment_pad0","classes","_stacked_layout__message_status0","classes","_stacked_layout__status0","classes","stackedLayoutMainPropsSchema","pipe","object","optional","c","readonly","StackedLayoutMain","memo","props","avatar","children","o","classNames","St","StackedLayout_module_default","React","cx","StackedLayoutMain_default","cx","React","memo","object","optional","pipe","readonly","string","cx","React","memo","object","optional","pipe","readonly","string","classes","MessageStatusLoader_module_default","_message_status_loader0","messageStatusLoaderPropsSchema","pipe","object","optional","string","readonly","MessageStatusLoader","props","className","o","classNames","St","MessageStatusLoader_module_default","React","ComponentIcon_default","cx","MessageStatusLoader_default","memo","stackedLayoutMessageStatusPropsSchema","pipe","object","optional","string","readonly","StackedLayoutMessageStatus","props","className","creativeWorkStatus","o","classNames","St","StackedLayout_module_default","React","cx","ComponentIcon_default","MessageStatusLoader_default","StackedLayoutMessageStatus_default","memo","cx","React","memo","boolean","object","optional","pipe","readonly","string","stackedLayoutRootPropsSchema","pipe","object","optional","string","c","boolean","readonly","StackedLayoutRoot","memo","props","ariaLabelId","children","extraTrailing","fromUser","hideAvatar","hideNub","isActivity","isGroup","noMessage","showAvatar","showNub","topCallout","o","classNames","St","StackedLayout_module_default","React","cx","StackedLayoutRoot_default","cx","React","memo","object","optional","pipe","readonly","stackedLayoutStatusPropsSchema","pipe","object","optional","c","readonly","StackedLayoutStatus","memo","props","children","o","classNames","St","StackedLayout_module_default","React","cx","StackedLayoutStatus_default","createContext","reactUseContext","createContextAndHook","displayName","contextComponentType","contextComponentType","useContext","createContextAndHook","ChatHistoryDOMContext_default","useActivityElementMapRef","useContext","useContext","createContext","TranscriptFocusContext","Context_default","useTranscriptFocusContext","throwOnUndefined","contextValue","useContext","Context_default","useActiveDescendantId","context","useTranscriptFocusContext","useFocusByGroupKey","useTranscriptFocusContext","useGetGroupDescendantIdByActivityKey","useTranscriptFocusContext","React","Fragment","memo","useCallback","useRef","tabbableElements","element","candidates","style","tabIndexAttribute","value","useRefFrom","FocusTrap","children","onFocus","onLeave","targetClassName","bodyRef","useRef","lastFocused","onFocusRef","onLeaveRef","getTabbableElementsInBody","useCallback","nestedTraps","tabbableElements","element","trap","focusOrTriggerLeave","handleBodyKeyDown","event","activeElement","focusables","focusedIndex","handleFocus","handleBlur","target","handleTrapFocus","React","Fragment","FocusTrap_default","memo","hooks","useBuildRenderAvatarCallback","useMemo","useContext","createContext","EMPTY_STATE","SenderGroupingContext","SenderGroupingContext_default","useSenderGroupingContext","useContext","SenderGroupingContext_default","useFirstActivity","useSenderGroupingContext","useLastActivity","useSenderGroupingContext","useContext","createContext","EMPTY_STATE","StatusGroupingContext","StatusGroupingContext_default","useStatusGroupingContext","useContext","StatusGroupingContext_default","useFirstActivity","useStatusGroupingContext","useLastActivity","useStatusGroupingContext","isZeroOrPositive","value","useCreateActivityStatusRenderer","useStyleOptions","hooks","useRenderActivityProps","activity","styleOptions","firstActivityInSenderGroup","useFirstActivity","firstActivityInStatusGroup","lastActivityInSenderGroup","useLastActivity","lastActivityInStatusGroup","createActivityStatusRenderer","buildRenderAvatar","useBuildRenderAvatarCallback","bubbleFromUserNubOffset","bubbleNubOffset","groupTimestamp","showAvatarInGroup","hideAllTimestamps","isFirstInSenderGroup","isFirstInStatusGroup","isLastInSenderGroup","isLastInStatusGroup","renderAvatarForSenderGroup","useMemo","renderer","isTopSideBotNub","isZeroOrPositive","isTopSideUserNub","renderActivityStatus","hideTimestamp","isTopSideNub","showCallout","useRenderActivityProps_default","cx","React","forwardRef","memo","classes","TranscriptFocus_module_default","_transcript_focus_area__root0","_transcript_focus_area__content_overlay0","classes","_transcript_focus_area__activity_list0","classes","_transcript_focus_area__terminator0","classes","_transcript_focus_area__content_active_descendant0","classes","_transcript_focus_area__terminator_body0","classes","_transcript_focus_area0","classes","_transcript_focus_area__content0","classes","_transcript_focus_area__indicator0","classes","_transcript_focus_area__content_root0","classes","_transcript_focus_area__content__focused0","classes","_transcript_focus_area__terminator_text0","classes","_transcript_focus_area__transcript_indicator0","classes","TranscriptActivityList","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","TranscriptActivityList_default","memo","cx","React","forwardRef","cx","React","forwardRef","TranscriptFocusIndicator","forwardRef","className","type","props","ref","classNames","St","TranscriptFocus_module_default","indicatorClass","React","cx","TranscriptFocusIndicator_default","TranscriptFocusArea","forwardRef","className","children","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","TranscriptFocusIndicator_default","TranscriptFocusArea_default","cx","React","forwardRef","TranscriptFocusContent","forwardRef","className","focused","Tag","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","TranscriptFocusContent_default","cx","React","forwardRef","TranscriptFocusContentOverlay","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","TranscriptFocusContentOverlay_default","cx","React","forwardRef","TranscriptFocusContentActiveDescendant","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","TranscriptFocusContentActiveDescendant_default","cx","React","forwardRef","TranscriptFocusContentBody","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","hooks","cx","React","forwardRef","useMemo","random","useUniqueId","prefix","id","useLocalizer","hooks","TranscriptFocusTerminator","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","terminatorText","terminatorLabelId","useUniqueId","React","cx","TranscriptFocusTerminator_default","cx","React","forwardRef","TranscriptFocusTerminatorBody","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","cx","React","forwardRef","TranscriptFocusTerminatorText","forwardRef","className","props","ref","classNames","St","TranscriptFocus_module_default","React","cx","userAgent","android","chromium","edgeAnaheim","edgeUWP","firefox","ie11","hooks","cx","random","React","memo","useCallback","useRef","useState","boolean","custom","object","optional","pipe","readonly","string","useRefFrom","cx","React","forwardRef","memo","useCallback","useRefFrom","boolean","custom","function_","is","object","optional","pipe","readonly","string","classes","ActivityButton_module_default","_activity_button0","_activity_button__icon0","classes","activityButtonPropsSchema","pipe","object","optional","string","boolean","c","componentIconPropsSchema","custom","value","is","function_","readonly","ActivityButton","forwardRef","props","ref","ariaControls","ariaExpanded","ariaPressed","children","className","dataTestId","disabled","icon","onClick","text","o","classNames","St","ActivityButton_module_default","onClickRef","useRefFrom","handleClick","useCallback","React","cx","ComponentIcon_default","ActivityButton_default","memo","classes","CollapsibleGrouping_module_default","_collapsible_grouping__list0","_collapsible_grouping__chevron0","classes","_collapsible_grouping__open0","classes","_collapsible_grouping__content__open0","classes","_collapsible_grouping__content0","classes","_collapsible_grouping0","classes","_collapsible_grouping__header0","classes","_collapsible_grouping__title0","classes","_collapsible_grouping__toggle0","classes","useLocalizer","hooks","collapsibleGroupingPropsSchema","pipe","object","c","optional","string","boolean","custom","toggle","readonly","uniqueId","count","random","CollapsibleGrouping","props","children","className","header","isOpen","onToggle","o","id","useState","classNames","St","CollapsibleGrouping_module_default","buttonRef","useRef","isOpenRef","useRefFrom","onToggleRef","localize","handleToggle","useCallback","newIsOpen","button","text","React","cx","ActivityButton_default","ComponentIcon_default","CollapsibleGrouping_default","memo","cx","React","memo","any","object","optional","pipe","readonly","string","collapsibleGroupingListPropsSchema","pipe","object","optional","c","string","any","readonly","CollapsibleGroupingList","props","className","children","Tag","o","classNames","St","CollapsibleGrouping_module_default","React","cx","CollapsibleGroupingList_default","memo","cx","React","memo","object","optional","pipe","readonly","string","collapsibleGroupingTitlePropsSchema","pipe","object","optional","c","string","readonly","CollapsibleGroupingTitle","props","className","children","o","classNames","St","CollapsibleGrouping_module_default","React","cx","CollapsibleGroupingTitle_default","memo","random","useCallback","useEffect","useMemo","useRefFrom","useStateWithRef","createElement","memo","useCallback","useMemo","useRef","object","optional","pipe","readonly","contextComponentType","useContext","createContextAndHook","ActivityLogicalGroupingContext_default","useCallback","useRef","useState","useStateWithOptimisticRef","initialState","state","setState","stateRef","setStateWithRefUpdate","newState","activityLogicalGroupingComposerPropsSchema","pipe","object","optional","c","readonly","ActivityLogicalGroupingComposer","props","children","o","logicalGroupingsRef","useRef","_activityToGroupMap","setActivityToGroupMap","activityToGroupMapRef","useStateWithOptimisticRef","addLogicalGrouping","useCallback","grouping","prevGroupingKeys","toRemoveSet","toAddSet","value","activityKey","removeLogicalGrouping","key","getLogicalGroupKey","getGroupState","groupKey","getGroupBoundaries","group","contextValue","useMemo","createElement","ActivityLogicalGroupingContext_default","ActivityLogicalGroupingComposer_default","memo","useAddLogicalGrouping","useContext","useRemoveLogicalGrouping","useContext","useGetLogicalGroupKey","useContext","useGetGroupState","useContext","usePartGroupingLogicalGroup","activityKeys","isCollapsed","partGroupKey","_setPartKey","partKeyRef","useStateWithRef","random","addLogicalGrouping","useAddLogicalGrouping","removeLogicalGrouping","useRemoveLogicalGrouping","isCollapsedRef","useRefFrom","getGroupState","useCallback","useMemo","removeLogicalGroupingRef","useEffect","usePartGroupingLogicalGroup_default","classes","PartGroupingActivity_module_default","_part_grouping_activity__activities0","_part_grouping_activity__message_status0","classes","_part_grouping_activity__collapsible__open0","classes","_part_grouping_activity0","classes","_part_grouping_activity__collapsible0","classes","useAvatarForBot","useGetKeyByActivity","useLocalizer","useStyleOptions","hooks","partGroupingActivityPropsSchema","pipe","object","array","custom","value","is","minLength","readonly","optional","c","partGroupingFocusableActivityPropsSchema","string","FocusablePartGroupingActivity","memo","props","activity","children","className","groupKey","o","activeDescendantId","useActiveDescendantId","getGroupDescendantIdByActivityKey","useGetGroupDescendantIdByActivityKey","focusByGroupKey","useFocusByGroupKey","getKeyByActivity","groupingActivityDescendantId","focusSelf","useCallback","withFocus","handleDescendantFocus","handleLeaveFocusTrap","handleMouseDownCapture","isActiveDescendant","activityElementMapRef","useActivityElementMapRef","groupCallbackRef","activityElement","React","TranscriptFocusContent_default","FocusTrap_default","TranscriptFocusContentOverlay_default","android","TranscriptFocusContentActiveDescendant_default","TranscriptFocusIndicator_default","PartGroupingActivity","localize","activities","classNames","St","PartGroupingActivity_module_default","partGroupDefaultOpen","isGroupOpen","setIsGroupOpen","useState","messages","useMemo","getOrgSchemaMessage","lastMessage","activityKeys","usePartGroupingLogicalGroup_default","firstActivity","lastActivity","currentMessage","message","renderAvatar","showCallout","useRenderActivityProps_default","renderActivityStatus","hideTimestamp","botInitials","hasAvatar","showAvatar","bubbleNubOffset","topAlignedCallout","isZeroOrPositive","howToAbstract","howToStatus","howTo","defaultWorkStatus","currentGroupStatus","groupHeader","Fragment","StackedLayoutMessageStatus_default","CollapsibleGroupingTitle_default","StackedLayoutRoot_default","StackedLayoutMain_default","CollapsibleGrouping_default","cx","CollapsibleGroupingList_default","TranscriptActivityList_default","StackedLayoutStatus_default","PartGroupingActivity_default","partGroupingPropsSchema","pipe","object","array","custom","value","is","minLength","readonly","optional","c","PartGrouping","props","activities","children","parse","lastActivity","lastMessage","useMemo","getOrgSchemaMessage","activity","getActivityLivestreamingMetadata","IdentifierSchema","React","PartGroupingActivity_default","Fragment","PartGrouping_default","memo","createContext","useContext","memo","React","useCallback","useMemo","createCodeHighlighterComposer","Provider","children","highlightCode","previousCodeHighlighter","useCodeHighlighter","safeHighlightCode","useCallback","args","error","CodeHighlighterContextValue","useMemo","React","createCodeHighlighterComposer_default","defaultHighlightCode","source","language","fragment","pre","code","error","CodeHighlighterContext","createContext","defaultHighlightCode","useCodeHighlighter","useContext","CodeHighlighterComposer","memo","createCodeHighlighterComposer_default"]}
|