botframework-webchat-component 4.13.0 → 4.15.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/.eslintrc.yml +4 -100
- package/.prettierrc.yml +1 -1
- package/lib/Activity/Avatar.d.ts +10 -0
- package/lib/Activity/Avatar.d.ts.map +1 -0
- package/lib/Activity/Avatar.js +2 -1
- package/lib/Activity/Bubble.d.ts +11 -0
- package/lib/Activity/Bubble.d.ts.map +1 -0
- package/lib/Activity/Bubble.js +2 -2
- package/lib/Activity/CarouselFilmStrip.js +21 -31
- package/lib/Activity/CarouselFilmStripAttachment.js +120 -0
- package/lib/Activity/CarouselLayout.js +5 -5
- package/lib/Activity/Speak.d.ts +10 -0
- package/lib/Activity/Speak.d.ts.map +1 -0
- package/lib/Activity/Speak.js +11 -13
- package/lib/Activity/StackedLayout.d.ts +18 -0
- package/lib/Activity/StackedLayout.d.ts.map +1 -0
- package/lib/Activity/StackedLayout.js +19 -15
- package/lib/Assets/TypingAnimation.js +2 -2
- package/lib/Attachment/Assets/DownloadIcon.js +3 -1
- package/lib/Attachment/AudioAttachment.js +2 -2
- package/lib/Attachment/AudioContent.d.ts +11 -0
- package/lib/Attachment/AudioContent.d.ts.map +1 -0
- package/lib/Attachment/AudioContent.js +4 -4
- package/lib/Attachment/FileAttachment.js +2 -2
- package/lib/Attachment/FileContent.d.ts +10 -0
- package/lib/Attachment/FileContent.d.ts.map +1 -0
- package/lib/Attachment/FileContent.js +14 -9
- package/lib/Attachment/HTMLVideoContent.d.ts +11 -0
- package/lib/Attachment/HTMLVideoContent.d.ts.map +1 -0
- package/lib/Attachment/HTMLVideoContent.js +2 -2
- package/lib/Attachment/ImageContent.d.ts +8 -0
- package/lib/Attachment/ImageContent.d.ts.map +1 -0
- package/lib/Attachment/ImageContent.js +2 -2
- package/lib/Attachment/TextContent.d.ts +8 -0
- package/lib/Attachment/TextContent.d.ts.map +1 -0
- package/lib/Attachment/TextContent.js +4 -4
- package/lib/Attachment/VideoAttachment.js +2 -2
- package/lib/Attachment/VideoContent.d.ts +11 -0
- package/lib/Attachment/VideoContent.d.ts.map +1 -0
- package/lib/Attachment/VideoContent.js +1 -1
- package/lib/Attachment/VimeoContent.d.ts +10 -0
- package/lib/Attachment/VimeoContent.d.ts.map +1 -0
- package/lib/Attachment/VimeoContent.js +8 -8
- package/lib/Attachment/YouTubeContent.d.ts +10 -0
- package/lib/Attachment/YouTubeContent.d.ts.map +1 -0
- package/lib/Attachment/YouTubeContent.js +5 -5
- package/lib/Avatar/ImageAvatar.js +2 -2
- package/lib/Avatar/InitialsAvatar.js +2 -2
- package/lib/BasicConnectivityStatus.js +2 -2
- package/lib/BasicSendBox.d.ts +9 -0
- package/lib/BasicSendBox.d.ts.map +1 -0
- package/lib/BasicSendBox.js +7 -6
- package/lib/BasicToast.js +4 -4
- package/lib/BasicToaster.js +8 -5
- package/lib/BasicTranscript.d.ts +7 -0
- package/lib/BasicTranscript.d.ts.map +1 -0
- package/lib/BasicTranscript.js +406 -743
- package/lib/BasicTypingIndicator.d.ts +6 -0
- package/lib/BasicTypingIndicator.d.ts.map +1 -0
- package/lib/BasicTypingIndicator.js +13 -5
- package/lib/BasicWebChat.d.ts +9 -0
- package/lib/BasicWebChat.d.ts.map +1 -0
- package/lib/BasicWebChat.js +6 -4
- package/lib/Composer.d.ts +23 -0
- package/lib/Composer.d.ts.map +1 -0
- package/lib/Composer.js +65 -82
- package/lib/ConnectivityStatus/Assets/ErrorNotificationIcon.js +2 -2
- package/lib/ConnectivityStatus/Assets/SpinnerAnimation.js +2 -2
- package/lib/ConnectivityStatus/Assets/WarningNotificationIcon.js +2 -2
- package/lib/ConnectivityStatus/Connected.js +1 -1
- package/lib/ConnectivityStatus/Connecting.js +4 -4
- package/lib/ConnectivityStatus/FailedToConnect.js +2 -2
- package/lib/ConnectivityStatus/JavaScriptError.js +2 -2
- package/lib/Dictation.js +13 -4
- package/lib/ErrorBox.d.ts +8 -0
- package/lib/ErrorBox.d.ts.map +1 -0
- package/lib/ErrorBox.js +2 -2
- package/lib/Middleware/Activity/createCoreMiddleware.d.ts +3 -0
- package/lib/Middleware/Activity/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/Activity/createCoreMiddleware.js +1 -1
- package/lib/Middleware/ActivityStatus/AbsoluteTime.js +1 -1
- package/lib/Middleware/ActivityStatus/RelativeTime.js +1 -1
- package/lib/Middleware/ActivityStatus/SendStatus/SendFailedRetry.js +3 -3
- package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.d.ts +11 -0
- package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.d.ts.map +1 -0
- package/lib/Middleware/ActivityStatus/SendStatus/SendStatus.js +5 -5
- package/lib/Middleware/ActivityStatus/Timestamp.d.ts +9 -0
- package/lib/Middleware/ActivityStatus/Timestamp.d.ts.map +1 -0
- package/lib/Middleware/ActivityStatus/Timestamp.js +2 -2
- package/lib/Middleware/ActivityStatus/createCoreMiddleware.d.ts +3 -0
- package/lib/Middleware/ActivityStatus/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/ActivityStatus/createCoreMiddleware.js +1 -1
- package/lib/Middleware/ActivityStatus/createSendStatusMiddleware.js +21 -16
- package/lib/Middleware/ActivityStatus/createTimestampMiddleware.js +1 -1
- package/lib/Middleware/Attachment/createCoreMiddleware.d.ts +3 -0
- package/lib/Middleware/Attachment/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/Attachment/createCoreMiddleware.js +10 -13
- package/lib/Middleware/AttachmentForScreenReader/AudioAttachment.js +1 -1
- package/lib/Middleware/AttachmentForScreenReader/FileAttachment.js +1 -1
- package/lib/Middleware/AttachmentForScreenReader/ImageAttachment.js +1 -1
- package/lib/Middleware/AttachmentForScreenReader/TextAttachment.js +1 -1
- package/lib/Middleware/AttachmentForScreenReader/VideoAttachment.js +1 -1
- package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.d.ts +3 -0
- package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/AttachmentForScreenReader/createCoreMiddleware.js +9 -5
- package/lib/Middleware/Avatar/createCoreMiddleware.d.ts +11 -0
- package/lib/Middleware/Avatar/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/Avatar/createCoreMiddleware.js +3 -4
- package/lib/Middleware/CardAction/createCoreMiddleware.js +11 -4
- package/lib/Middleware/GroupActivities/createCoreMiddleware.js +1 -1
- package/lib/Middleware/ScrollToEndButton/ScrollToEndButton.js +71 -0
- package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.d.ts +3 -0
- package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.d.ts.map +1 -0
- package/lib/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.js +27 -0
- package/lib/Middleware/Toast/createCoreMiddleware.d.ts +4 -0
- package/lib/Middleware/Toast/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/Toast/createCoreMiddleware.js +1 -1
- package/lib/Middleware/TypingIndicator/createCoreMiddleware.d.ts +3 -0
- package/lib/Middleware/TypingIndicator/createCoreMiddleware.d.ts.map +1 -0
- package/lib/Middleware/TypingIndicator/createCoreMiddleware.js +9 -6
- package/lib/ReactWebChat.d.ts +10 -0
- package/lib/ReactWebChat.d.ts.map +1 -0
- package/lib/ReactWebChat.js +19 -7
- package/lib/ScreenReaderActivity.js +76 -48
- package/lib/ScreenReaderText.d.ts +9 -0
- package/lib/ScreenReaderText.d.ts.map +1 -0
- package/lib/ScreenReaderText.js +22 -8
- package/lib/SendBox/Assets/AttachmentIcon.js +3 -1
- package/lib/SendBox/Assets/MicrophoneIcon.js +3 -1
- package/lib/SendBox/Assets/SendIcon.js +2 -2
- package/lib/SendBox/AutoResizeTextArea.d.ts +23 -0
- package/lib/SendBox/AutoResizeTextArea.d.ts.map +1 -0
- package/lib/SendBox/AutoResizeTextArea.js +6 -6
- package/lib/SendBox/DictationInterims.d.ts +9 -0
- package/lib/SendBox/DictationInterims.d.ts.map +1 -0
- package/lib/SendBox/DictationInterims.js +3 -3
- package/lib/SendBox/IconButton.d.ts +11 -0
- package/lib/SendBox/IconButton.d.ts.map +1 -0
- package/lib/SendBox/IconButton.js +27 -7
- package/lib/SendBox/MicrophoneButton.d.ts +11 -0
- package/lib/SendBox/MicrophoneButton.d.ts.map +1 -0
- package/lib/SendBox/MicrophoneButton.js +25 -24
- package/lib/SendBox/SendButton.d.ts +9 -0
- package/lib/SendBox/SendButton.d.ts.map +1 -0
- package/lib/SendBox/SendButton.js +8 -6
- package/lib/SendBox/SuggestedAction.d.ts +17 -0
- package/lib/SendBox/SuggestedAction.d.ts.map +1 -0
- package/lib/SendBox/SuggestedAction.js +29 -24
- package/lib/SendBox/SuggestedActions.d.ts +5 -0
- package/lib/SendBox/SuggestedActions.d.ts.map +1 -0
- package/lib/SendBox/SuggestedActions.js +33 -13
- package/lib/SendBox/TextBox.d.ts +28 -0
- package/lib/SendBox/TextBox.d.ts.map +1 -0
- package/lib/SendBox/TextBox.js +13 -8
- package/lib/SendBox/UploadButton.d.ts +9 -0
- package/lib/SendBox/UploadButton.d.ts.map +1 -0
- package/lib/SendBox/UploadButton.js +6 -6
- package/lib/Styles/StyleSet/Activities.d.ts +5 -0
- package/lib/Styles/StyleSet/Activities.d.ts.map +1 -0
- package/lib/Styles/StyleSet/AudioAttachment.d.ts +6 -0
- package/lib/Styles/StyleSet/AudioAttachment.d.ts.map +1 -0
- package/lib/Styles/StyleSet/AudioContent.d.ts +4 -0
- package/lib/Styles/StyleSet/AudioContent.d.ts.map +1 -0
- package/lib/Styles/StyleSet/AutoResizeTextArea.d.ts +37 -0
- package/lib/Styles/StyleSet/AutoResizeTextArea.d.ts.map +1 -0
- package/lib/Styles/StyleSet/Avatar.d.ts +9 -0
- package/lib/Styles/StyleSet/Avatar.d.ts.map +1 -0
- package/lib/Styles/StyleSet/BasicTranscript.d.ts +85 -0
- package/lib/Styles/StyleSet/BasicTranscript.d.ts.map +1 -0
- package/lib/Styles/StyleSet/BasicTranscript.js +21 -9
- package/lib/Styles/StyleSet/Bubble.d.ts +5 -0
- package/lib/Styles/StyleSet/Bubble.d.ts.map +1 -0
- package/lib/Styles/StyleSet/Bubble.js +2 -2
- package/lib/Styles/StyleSet/CarouselFilmStrip.d.ts +5 -0
- package/lib/Styles/StyleSet/CarouselFilmStrip.d.ts.map +1 -0
- package/lib/Styles/StyleSet/CarouselFilmStrip.js +2 -18
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.d.ts +3 -0
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.d.ts.map +1 -0
- package/lib/Styles/StyleSet/CarouselFilmStripAttachment.js +63 -0
- package/lib/Styles/StyleSet/CarouselFlipper.d.ts +27 -0
- package/lib/Styles/StyleSet/CarouselFlipper.d.ts.map +1 -0
- package/lib/Styles/StyleSet/ConnectivityNotification.d.ts +13 -0
- package/lib/Styles/StyleSet/ConnectivityNotification.d.ts.map +1 -0
- package/lib/Styles/StyleSet/DictationInterims.d.ts +13 -0
- package/lib/Styles/StyleSet/DictationInterims.d.ts.map +1 -0
- package/lib/Styles/StyleSet/ErrorBox.d.ts +33 -0
- package/lib/Styles/StyleSet/ErrorBox.d.ts.map +1 -0
- package/lib/Styles/StyleSet/ErrorNotification.d.ts +23 -0
- package/lib/Styles/StyleSet/ErrorNotification.d.ts.map +1 -0
- package/lib/Styles/StyleSet/FileContent.d.ts +32 -0
- package/lib/Styles/StyleSet/FileContent.d.ts.map +1 -0
- package/lib/Styles/StyleSet/ImageAvatar.d.ts +7 -0
- package/lib/Styles/StyleSet/ImageAvatar.d.ts.map +1 -0
- package/lib/Styles/StyleSet/InitialsAvatar.d.ts +19 -0
- package/lib/Styles/StyleSet/InitialsAvatar.d.ts.map +1 -0
- package/lib/Styles/StyleSet/KeyboardHelp.d.ts +123 -0
- package/lib/Styles/StyleSet/KeyboardHelp.d.ts.map +1 -0
- package/lib/Styles/StyleSet/KeyboardHelp.js +145 -0
- package/lib/Styles/StyleSet/MicrophoneButton.d.ts +13 -0
- package/lib/Styles/StyleSet/MicrophoneButton.d.ts.map +1 -0
- package/lib/Styles/StyleSet/Root.d.ts +8 -0
- package/lib/Styles/StyleSet/Root.d.ts.map +1 -0
- package/lib/Styles/StyleSet/ScrollToEndButton.d.ts +36 -0
- package/lib/Styles/StyleSet/ScrollToEndButton.d.ts.map +1 -0
- package/lib/Styles/StyleSet/ScrollToEndButton.js +36 -34
- package/lib/Styles/StyleSet/SendBox.d.ts +24 -0
- package/lib/Styles/StyleSet/SendBox.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SendBoxButton.d.ts +79 -0
- package/lib/Styles/StyleSet/SendBoxButton.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SendBoxButton.js +76 -12
- package/lib/Styles/StyleSet/SendBoxTextBox.d.ts +41 -0
- package/lib/Styles/StyleSet/SendBoxTextBox.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SendBoxTextBox.js +3 -3
- package/lib/Styles/StyleSet/SendStatus.d.ts +8 -0
- package/lib/Styles/StyleSet/SendStatus.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SingleAttachmentActivity.d.ts +11 -0
- package/lib/Styles/StyleSet/SingleAttachmentActivity.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SpinnerAnimation.d.ts +15 -0
- package/lib/Styles/StyleSet/SpinnerAnimation.d.ts.map +1 -0
- package/lib/Styles/StyleSet/StackedLayout.d.ts +63 -0
- package/lib/Styles/StyleSet/StackedLayout.d.ts.map +1 -0
- package/lib/Styles/StyleSet/StackedLayout.js +1 -1
- package/lib/Styles/StyleSet/SuggestedAction.d.ts +94 -0
- package/lib/Styles/StyleSet/SuggestedAction.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SuggestedAction.js +116 -41
- package/lib/Styles/StyleSet/SuggestedActions.d.ts +125 -0
- package/lib/Styles/StyleSet/SuggestedActions.d.ts.map +1 -0
- package/lib/Styles/StyleSet/SuggestedActions.js +13 -6
- package/lib/Styles/StyleSet/TextContent.d.ts +28 -0
- package/lib/Styles/StyleSet/TextContent.d.ts.map +1 -0
- package/lib/Styles/StyleSet/Toast.d.ts +65 -0
- package/lib/Styles/StyleSet/Toast.d.ts.map +1 -0
- package/lib/Styles/StyleSet/Toaster.d.ts +111 -0
- package/lib/Styles/StyleSet/Toaster.d.ts.map +1 -0
- package/lib/Styles/StyleSet/TypingAnimation.d.ts +8 -0
- package/lib/Styles/StyleSet/TypingAnimation.d.ts.map +1 -0
- package/lib/Styles/StyleSet/TypingIndicator.d.ts +11 -0
- package/lib/Styles/StyleSet/TypingIndicator.d.ts.map +1 -0
- package/lib/Styles/StyleSet/UploadButton.d.ts +14 -0
- package/lib/Styles/StyleSet/UploadButton.d.ts.map +1 -0
- package/lib/Styles/StyleSet/VideoAttachment.d.ts +2 -0
- package/lib/Styles/StyleSet/VideoAttachment.d.ts.map +1 -0
- package/lib/Styles/StyleSet/VideoContent.d.ts +6 -0
- package/lib/Styles/StyleSet/VideoContent.d.ts.map +1 -0
- package/lib/Styles/StyleSet/VimeoContent.d.ts +7 -0
- package/lib/Styles/StyleSet/VimeoContent.d.ts.map +1 -0
- package/lib/Styles/StyleSet/WarningNotification.d.ts +22 -0
- package/lib/Styles/StyleSet/WarningNotification.d.ts.map +1 -0
- package/lib/Styles/StyleSet/YouTubeContent.d.ts +7 -0
- package/lib/Styles/StyleSet/YouTubeContent.d.ts.map +1 -0
- package/lib/Styles/createStyleSet.d.ts +1372 -0
- package/lib/Styles/createStyleSet.d.ts.map +1 -0
- package/lib/Styles/createStyleSet.js +47 -41
- package/lib/Styles/mirrorStyle.js +13 -4
- package/lib/Toast/CollapseIcon.js +3 -1
- package/lib/Toast/DismissIcon.js +3 -1
- package/lib/Toast/ExpandIcon.js +3 -1
- package/lib/Toast/NotificationIcon.js +7 -3
- package/lib/Toast/createToastMiddleware.d.ts +4 -0
- package/lib/Toast/createToastMiddleware.d.ts.map +1 -0
- package/lib/Toast/createToastMiddleware.js +2 -2
- package/lib/Transcript/ActivityRow.d.ts +9 -0
- package/lib/Transcript/ActivityRow.d.ts.map +1 -0
- package/lib/Transcript/ActivityRow.js +157 -0
- package/lib/Transcript/ActivityTextAlt.js +57 -0
- package/lib/Transcript/FocusTrap.d.ts +8 -0
- package/lib/Transcript/FocusTrap.d.ts.map +1 -0
- package/lib/Transcript/FocusTrap.js +74 -0
- package/lib/Transcript/KeyboardHelp.d.ts +4 -0
- package/lib/Transcript/KeyboardHelp.d.ts.map +1 -0
- package/lib/Transcript/KeyboardHelp.js +550 -0
- package/lib/Transcript/LiveRegionTranscript.d.ts +8 -0
- package/lib/Transcript/LiveRegionTranscript.d.ts.map +1 -0
- package/lib/Transcript/LiveRegionTranscript.js +214 -0
- package/lib/Transcript/types.d.ts +2 -0
- package/lib/Transcript/types.d.ts.map +1 -0
- package/lib/Transcript/types.js +2 -0
- package/lib/Transcript/useActivityAccessibleName.d.ts +4 -0
- package/lib/Transcript/useActivityAccessibleName.d.ts.map +1 -0
- package/lib/Transcript/useActivityAccessibleName.js +97 -0
- package/lib/Utils/AccessKeySink/Surface.js +7 -5
- package/lib/Utils/AccessibleButton.d.ts +11 -0
- package/lib/Utils/AccessibleButton.d.ts.map +1 -0
- package/lib/Utils/AccessibleButton.js +15 -8
- package/lib/Utils/AccessibleInputText.d.ts +21 -0
- package/lib/Utils/AccessibleInputText.d.ts.map +1 -0
- package/lib/Utils/AccessibleInputText.js +29 -25
- package/lib/Utils/AccessibleTextArea.d.ts +20 -0
- package/lib/Utils/AccessibleTextArea.d.ts.map +1 -0
- package/lib/Utils/AccessibleTextArea.js +35 -24
- package/lib/Utils/CroppedImage.js +2 -2
- package/lib/Utils/Fade.js +2 -2
- package/lib/Utils/FocusRedirector.d.ts +9 -0
- package/lib/Utils/FocusRedirector.d.ts.map +1 -0
- package/lib/Utils/FocusRedirector.js +18 -15
- package/lib/Utils/InlineMarkdown.js +17 -10
- package/lib/Utils/TypeFocusSink/FocusBox.js +6 -4
- package/lib/Utils/TypeFocusSink/getTabIndex.d.ts +2 -0
- package/lib/Utils/TypeFocusSink/getTabIndex.d.ts.map +1 -0
- package/lib/Utils/TypeFocusSink/getTabIndex.js +1 -1
- package/lib/Utils/TypeFocusSink/inputtableKey.d.ts +2 -0
- package/lib/Utils/TypeFocusSink/inputtableKey.d.ts.map +1 -0
- package/lib/Utils/TypeFocusSink/inputtableKey.js +5 -2
- package/lib/Utils/TypeFocusSink/navigableEvent.js +1 -1
- package/lib/Utils/activityAltText.d.ts +8 -0
- package/lib/Utils/activityAltText.d.ts.map +1 -0
- package/lib/Utils/activityAltText.js +100 -0
- package/lib/Utils/addTargetBlankToHyperlinksMarkdown.js +1 -1
- package/lib/Utils/createCustomEvent.js +9 -3
- package/lib/Utils/debounce.js +1 -1
- package/lib/Utils/detectBrowser.js +4 -2
- package/lib/Utils/downscaleImageToDataURL/downscaleImageToDataURLUsingWorker.js +3 -3
- package/lib/Utils/downscaleImageToDataURL/index.js +2 -2
- package/lib/Utils/filterMap.js +1 -1
- package/lib/Utils/findAncestor.js +17 -0
- package/lib/Utils/getActivityUniqueId.js +4 -2
- package/lib/Utils/intersectionOf.d.ts +5 -0
- package/lib/Utils/intersectionOf.d.ts.map +1 -0
- package/lib/Utils/intersectionOf.js +17 -2
- package/lib/Utils/isZeroOrPositive.d.ts +5 -0
- package/lib/Utils/isZeroOrPositive.d.ts.map +1 -0
- package/lib/Utils/isZeroOrPositive.js +4 -1
- package/lib/Utils/mapMap.js +10 -3
- package/lib/Utils/readDataURIToBlob.js +3 -3
- package/lib/Utils/scrollIntoViewWithBlockNearest.d.ts +7 -0
- package/lib/Utils/scrollIntoViewWithBlockNearest.d.ts.map +1 -0
- package/lib/Utils/scrollIntoViewWithBlockNearest.js +48 -0
- package/lib/Utils/shallowEquals.js +7 -3
- package/lib/Utils/singleToArray.js +1 -1
- package/lib/Utils/supportPseudoClass.d.ts +2 -0
- package/lib/Utils/supportPseudoClass.d.ts.map +1 -0
- package/lib/Utils/supportPseudoClass.js +23 -0
- package/lib/Utils/tabbableElements.d.ts +2 -0
- package/lib/Utils/tabbableElements.d.ts.map +1 -0
- package/lib/Utils/tabbableElements.js +2 -2
- package/lib/connectToWebChat.js +17 -7
- package/lib/hooks/index.d.ts +21 -0
- package/lib/hooks/index.d.ts.map +1 -0
- package/lib/hooks/index.js +25 -25
- package/lib/hooks/internal/BypassSpeechSynthesisPonyfill.js +100 -41
- package/lib/hooks/internal/UITracker.js +2 -2
- package/lib/hooks/internal/useChanged.js +8 -1
- package/lib/hooks/internal/useDispatchScrollPosition.js +3 -7
- package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.d.ts +2 -0
- package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.d.ts.map +1 -0
- package/lib/hooks/internal/useDispatchTranscriptFocusByActivityKey.js +15 -0
- package/lib/hooks/internal/useEnterKeyHint.js +1 -1
- package/lib/hooks/internal/useFocusVisible.d.ts +3 -0
- package/lib/hooks/internal/useFocusVisible.d.ts.map +1 -0
- package/lib/hooks/internal/useFocusVisible.js +48 -0
- package/lib/hooks/internal/useForceRender.js +2 -2
- package/lib/hooks/internal/useForceRenderAtInterval.js +2 -2
- package/lib/hooks/internal/useInternalRenderMarkdownInline.js +1 -1
- package/lib/hooks/internal/useLocalizeAccessKey.js +2 -2
- package/lib/hooks/internal/useMemoWithPrevious.d.ts +3 -0
- package/lib/hooks/internal/useMemoWithPrevious.d.ts.map +1 -0
- package/lib/hooks/internal/useMemoWithPrevious.js +22 -0
- package/lib/hooks/internal/useMemoize.d.ts +14 -0
- package/lib/hooks/internal/useMemoize.d.ts.map +1 -0
- package/lib/hooks/internal/useMemoize.js +12 -3
- package/lib/hooks/internal/useNavigatorPlatform.js +1 -1
- package/lib/hooks/internal/useNonce.js +1 -1
- package/lib/hooks/internal/useObserveFocusVisible.d.ts +3 -0
- package/lib/hooks/internal/useObserveFocusVisible.d.ts.map +1 -0
- package/lib/hooks/internal/useObserveFocusVisible.js +208 -0
- package/lib/hooks/internal/usePrevious.d.ts +2 -0
- package/lib/hooks/internal/usePrevious.d.ts.map +1 -0
- package/lib/hooks/internal/usePrevious.js +18 -0
- package/lib/hooks/internal/useRegisterFocusSendBox.js +1 -1
- package/lib/hooks/internal/useRegisterFocusTranscript.js +1 -1
- package/lib/hooks/internal/useRegisterScrollRelative.js +1 -1
- package/lib/hooks/internal/useRegisterScrollTo.js +1 -1
- package/lib/hooks/internal/useRegisterScrollToEnd.js +1 -1
- package/lib/hooks/internal/useReplaceEmoticon.js +2 -2
- package/lib/hooks/internal/useResumeAudioContext.js +33 -0
- package/lib/hooks/internal/useScrollRelative.js +1 -1
- package/lib/hooks/internal/useSettableDictateAbortable.js +1 -1
- package/lib/hooks/internal/useStateRef.d.ts +3 -0
- package/lib/hooks/internal/useStateRef.d.ts.map +1 -0
- package/lib/hooks/internal/useStateRef.js +40 -0
- package/lib/hooks/internal/useSuggestedActionsAccessKey.js +1 -1
- package/lib/hooks/internal/useUniqueId.d.ts +2 -0
- package/lib/hooks/internal/useUniqueId.d.ts.map +1 -0
- package/lib/hooks/internal/useUniqueId.js +1 -1
- package/lib/hooks/internal/useValueRef.d.ts +3 -0
- package/lib/hooks/internal/useValueRef.d.ts.map +1 -0
- package/lib/hooks/internal/useValueRef.js +25 -0
- package/lib/hooks/useDictateAbortable.d.ts +2 -0
- package/lib/hooks/useDictateAbortable.d.ts.map +1 -0
- package/lib/hooks/useDictateAbortable.js +2 -2
- package/lib/hooks/useFocus.d.ts +2 -0
- package/lib/hooks/useFocus.d.ts.map +1 -0
- package/lib/hooks/useFocus.js +1 -1
- package/lib/hooks/useFocusSendBox.d.ts +3 -0
- package/lib/hooks/useFocusSendBox.d.ts.map +1 -0
- package/lib/hooks/useFocusSendBox.js +2 -1
- package/lib/hooks/useObserveScrollPosition.d.ts +3 -0
- package/lib/hooks/useObserveScrollPosition.d.ts.map +1 -0
- package/lib/hooks/useObserveScrollPosition.js +2 -2
- package/lib/hooks/useObserveTranscriptFocus.d.ts +5 -0
- package/lib/hooks/useObserveTranscriptFocus.d.ts.map +1 -0
- package/lib/hooks/useObserveTranscriptFocus.js +2 -2
- package/lib/hooks/useRenderMarkdownAsHTML.d.ts +5 -0
- package/lib/hooks/useRenderMarkdownAsHTML.d.ts.map +1 -0
- package/lib/hooks/useRenderMarkdownAsHTML.js +2 -2
- package/lib/hooks/useScrollDown.d.ts +4 -0
- package/lib/hooks/useScrollDown.d.ts.map +1 -0
- package/lib/hooks/useScrollDown.js +1 -1
- package/lib/hooks/useScrollTo.d.ts +5 -0
- package/lib/hooks/useScrollTo.d.ts.map +1 -0
- package/lib/hooks/useScrollTo.js +1 -1
- package/lib/hooks/useScrollToEnd.d.ts +2 -0
- package/lib/hooks/useScrollToEnd.d.ts.map +1 -0
- package/lib/hooks/useScrollToEnd.js +1 -1
- package/lib/hooks/useScrollUp.d.ts +4 -0
- package/lib/hooks/useScrollUp.d.ts.map +1 -0
- package/lib/hooks/useScrollUp.js +1 -1
- package/lib/hooks/useSendFiles.d.ts +2 -0
- package/lib/hooks/useSendFiles.d.ts.map +1 -0
- package/lib/hooks/useSendFiles.js +3 -3
- package/lib/hooks/useStyleSet.d.ts +2 -0
- package/lib/hooks/useStyleSet.d.ts.map +1 -0
- package/lib/hooks/useStyleSet.js +1 -1
- package/lib/hooks/useWebSpeechPonyfill.d.ts +3 -0
- package/lib/hooks/useWebSpeechPonyfill.d.ts.map +1 -0
- package/lib/hooks/useWebSpeechPonyfill.js +1 -1
- package/lib/index.d.ts +219 -22
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +22 -20
- package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts +5 -0
- package/lib/providers/ActivityTree/ActivityTreeComposer.d.ts.map +1 -0
- package/lib/providers/ActivityTree/ActivityTreeComposer.js +86 -0
- package/lib/providers/ActivityTree/private/Context.d.ts +9 -0
- package/lib/providers/ActivityTree/private/Context.d.ts.map +1 -0
- package/lib/providers/ActivityTree/private/Context.js +13 -0
- package/lib/providers/ActivityTree/private/types.d.ts +10 -0
- package/lib/providers/ActivityTree/private/types.d.ts.map +1 -0
- package/lib/providers/ActivityTree/private/types.js +2 -0
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts +4 -0
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.d.ts.map +1 -0
- package/lib/providers/ActivityTree/private/useActivitiesWithRenderer.js +58 -0
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts +5 -0
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.d.ts.map +1 -0
- package/lib/providers/ActivityTree/private/useActivityTreeWithRenderer.js +166 -0
- package/lib/providers/ActivityTree/private/useContext.d.ts +3 -0
- package/lib/providers/ActivityTree/private/useContext.d.ts.map +1 -0
- package/lib/providers/ActivityTree/private/useContext.js +24 -0
- package/lib/providers/ActivityTree/useActivityTreeWithRenderer.d.ts +8 -0
- package/lib/providers/ActivityTree/useActivityTreeWithRenderer.d.ts.map +1 -0
- package/lib/providers/ActivityTree/useActivityTreeWithRenderer.js +17 -0
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts +35 -0
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/LiveRegionTwinComposer.js +156 -0
- package/lib/providers/LiveRegionTwin/private/Context.d.ts +10 -0
- package/lib/providers/LiveRegionTwin/private/Context.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/private/Context.js +13 -0
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts +11 -0
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/private/LiveRegionTwinContainer.js +86 -0
- package/lib/providers/LiveRegionTwin/private/types.d.ts +8 -0
- package/lib/providers/LiveRegionTwin/private/types.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/private/types.js +2 -0
- package/lib/providers/LiveRegionTwin/private/useContext.d.ts +3 -0
- package/lib/providers/LiveRegionTwin/private/useContext.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/private/useContext.js +24 -0
- package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.d.ts +2 -0
- package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.js +24 -0
- package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.d.ts +3 -0
- package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/private/useStaticElementEntries.js +15 -0
- package/lib/providers/LiveRegionTwin/useQueueStaticElement.d.ts +8 -0
- package/lib/providers/LiveRegionTwin/useQueueStaticElement.d.ts.map +1 -0
- package/lib/providers/LiveRegionTwin/useQueueStaticElement.js +20 -0
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.d.ts +7 -0
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/TranscriptFocusComposer.js +184 -0
- package/lib/providers/TranscriptFocus/private/Context.d.ts +12 -0
- package/lib/providers/TranscriptFocus/private/Context.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/private/Context.js +13 -0
- package/lib/providers/TranscriptFocus/private/useContext.d.ts +2 -0
- package/lib/providers/TranscriptFocus/private/useContext.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/private/useContext.js +24 -0
- package/lib/providers/TranscriptFocus/useActiveDescendantId.d.ts +2 -0
- package/lib/providers/TranscriptFocus/useActiveDescendantId.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/useActiveDescendantId.js +15 -0
- package/lib/providers/TranscriptFocus/useFocusByActivityKey.d.ts +8 -0
- package/lib/providers/TranscriptFocus/useFocusByActivityKey.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/useFocusByActivityKey.js +21 -0
- package/lib/providers/TranscriptFocus/useFocusRelativeActivity.d.ts +2 -0
- package/lib/providers/TranscriptFocus/useFocusRelativeActivity.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/useFocusRelativeActivity.js +15 -0
- package/lib/providers/TranscriptFocus/useFocusedActivityKey.d.ts +2 -0
- package/lib/providers/TranscriptFocus/useFocusedActivityKey.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/useFocusedActivityKey.js +15 -0
- package/lib/providers/TranscriptFocus/useFocusedExplicitly.d.ts +2 -0
- package/lib/providers/TranscriptFocus/useFocusedExplicitly.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/useFocusedExplicitly.js +15 -0
- package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.d.ts +2 -0
- package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.d.ts.map +1 -0
- package/lib/providers/TranscriptFocus/useGetDescendantIdByActivityKey.js +15 -0
- package/lib/tsconfig.json +1 -1
- package/lib/types/ScrollPosition.d.ts +6 -0
- package/lib/types/ScrollPosition.d.ts.map +1 -0
- package/lib/types/ScrollPosition.js +2 -0
- package/package.json +33 -40
- package/src/Activity/{Avatar.js → Avatar.tsx} +9 -2
- package/src/Activity/{Bubble.js → Bubble.tsx} +10 -2
- package/src/Activity/CarouselFilmStrip.js +20 -29
- package/src/Activity/CarouselFilmStripAttachment.js +91 -0
- package/src/Activity/{Speak.js → Speak.tsx} +12 -5
- package/src/Activity/{StackedLayout.js → StackedLayout.tsx} +46 -20
- package/src/Attachment/Assets/DownloadIcon.js +8 -1
- package/src/Attachment/{AudioContent.js → AudioContent.tsx} +12 -3
- package/src/Attachment/FileAttachment.js +1 -1
- package/src/Attachment/{FileContent.js → FileContent.tsx} +22 -7
- package/src/Attachment/{HTMLVideoContent.js → HTMLVideoContent.tsx} +10 -2
- package/src/Attachment/{ImageContent.js → ImageContent.tsx} +7 -2
- package/src/Attachment/{TextContent.js → TextContent.tsx} +14 -7
- package/src/Attachment/{VideoContent.js → VideoContent.tsx} +10 -2
- package/src/Attachment/{VimeoContent.js → VimeoContent.tsx} +15 -8
- package/src/Attachment/{YouTubeContent.js → YouTubeContent.tsx} +12 -5
- package/src/{BasicSendBox.js → BasicSendBox.tsx} +9 -5
- package/src/BasicToaster.js +9 -5
- package/src/BasicTranscript.tsx +878 -0
- package/src/{BasicTypingIndicator.js → BasicTypingIndicator.tsx} +4 -3
- package/src/{BasicWebChat.js → BasicWebChat.tsx} +13 -4
- package/src/{Composer.js → Composer.tsx} +82 -71
- package/src/Dictation.js +13 -4
- package/src/{ErrorBox.js → ErrorBox.tsx} +7 -2
- package/src/Middleware/Activity/createCoreMiddleware.tsx +78 -0
- package/src/Middleware/ActivityStatus/SendStatus/{SendStatus.js → SendStatus.tsx} +8 -3
- package/src/Middleware/ActivityStatus/{Timestamp.js → Timestamp.tsx} +8 -2
- package/src/Middleware/ActivityStatus/{createCoreMiddleware.js → createCoreMiddleware.tsx} +3 -1
- package/src/Middleware/ActivityStatus/createSendStatusMiddleware.js +10 -6
- package/src/Middleware/ActivityStatus/createTimestampMiddleware.js +10 -8
- package/src/Middleware/Attachment/createCoreMiddleware.tsx +44 -0
- package/src/Middleware/AttachmentForScreenReader/createCoreMiddleware.tsx +40 -0
- package/src/Middleware/Avatar/{createCoreMiddleware.js → createCoreMiddleware.tsx} +19 -11
- package/src/Middleware/CardAction/createCoreMiddleware.js +51 -42
- package/src/Middleware/GroupActivities/createCoreMiddleware.js +6 -4
- package/src/Middleware/ScrollToEndButton/ScrollToEndButton.js +45 -0
- package/src/Middleware/ScrollToEndButton/createScrollToEndButtonMiddleware.ts +19 -0
- package/src/Middleware/Toast/createCoreMiddleware.tsx +24 -0
- package/src/Middleware/TypingIndicator/{createCoreMiddleware.js → createCoreMiddleware.tsx} +10 -5
- package/src/{ReactWebChat.js → ReactWebChat.tsx} +25 -7
- package/src/ScreenReaderActivity.js +65 -40
- package/src/{ScreenReaderText.js → ScreenReaderText.tsx} +27 -9
- package/src/SendBox/Assets/AttachmentIcon.js +1 -1
- package/src/SendBox/Assets/MicrophoneIcon.js +1 -1
- package/src/SendBox/{AutoResizeTextArea.js → AutoResizeTextArea.tsx} +30 -4
- package/src/SendBox/{DictationInterims.js → DictationInterims.tsx} +6 -2
- package/src/SendBox/{IconButton.js → IconButton.tsx} +19 -3
- package/src/SendBox/{MicrophoneButton.js → MicrophoneButton.tsx} +35 -25
- package/src/SendBox/{SendButton.js → SendButton.tsx} +8 -3
- package/src/SendBox/{SuggestedAction.js → SuggestedAction.tsx} +62 -39
- package/src/SendBox/{SuggestedActions.js → SuggestedActions.tsx} +70 -22
- package/src/SendBox/{TextBox.js → TextBox.tsx} +21 -7
- package/src/SendBox/{UploadButton.js → UploadButton.tsx} +7 -3
- package/src/Styles/StyleSet/BasicTranscript.ts +34 -20
- package/src/Styles/StyleSet/Bubble.ts +0 -1
- package/src/Styles/StyleSet/CarouselFilmStrip.ts +12 -30
- package/src/Styles/StyleSet/CarouselFilmStripAttachment.ts +57 -0
- package/src/Styles/StyleSet/KeyboardHelp.ts +157 -0
- package/src/Styles/StyleSet/ScrollToEndButton.ts +33 -31
- package/src/Styles/StyleSet/SendBoxButton.ts +84 -13
- package/src/Styles/StyleSet/SendBoxTextBox.ts +1 -2
- package/src/Styles/StyleSet/StackedLayout.ts +13 -11
- package/src/Styles/StyleSet/SuggestedAction.ts +130 -43
- package/src/Styles/StyleSet/SuggestedActions.ts +13 -5
- package/src/Styles/createStyleSet.ts +43 -40
- package/src/Styles/mirrorStyle.js +10 -2
- package/src/Toast/CollapseIcon.js +9 -1
- package/src/Toast/DismissIcon.js +9 -1
- package/src/Toast/ExpandIcon.js +9 -1
- package/src/Toast/NotificationIcon.js +4 -1
- package/src/Toast/createToastMiddleware.tsx +15 -0
- package/src/Transcript/ActivityRow.tsx +124 -0
- package/src/Transcript/ActivityTextAlt.tsx +32 -0
- package/src/Transcript/FocusTrap.tsx +64 -0
- package/src/Transcript/KeyboardHelp.tsx +282 -0
- package/src/Transcript/LiveRegionTranscript.tsx +181 -0
- package/src/Transcript/types.ts +1 -0
- package/src/Transcript/useActivityAccessibleName.ts +85 -0
- package/src/Utils/{AccessibleButton.js → AccessibleButton.tsx} +19 -4
- package/src/Utils/{AccessibleInputText.js → AccessibleInputText.tsx} +48 -5
- package/src/Utils/{AccessibleTextArea.js → AccessibleTextArea.tsx} +67 -6
- package/src/Utils/{FocusRedirector.js → FocusRedirector.tsx} +21 -8
- package/src/Utils/InlineMarkdown.js +18 -2
- package/src/Utils/TypeFocusSink/FocusBox.js +4 -4
- package/src/Utils/TypeFocusSink/getTabIndex.ts +1 -1
- package/src/Utils/TypeFocusSink/inputtableKey.ts +5 -1
- package/src/Utils/activityAltText.ts +135 -0
- package/src/Utils/createCustomEvent.js +7 -1
- package/src/Utils/detectBrowser.js +2 -1
- package/src/Utils/findAncestor.ts +12 -0
- package/src/Utils/getActivityUniqueId.ts +5 -0
- package/src/Utils/intersectionOf.spec.js +2 -0
- package/src/Utils/intersectionOf.ts +14 -0
- package/src/Utils/isZeroOrPositive.ts +7 -0
- package/src/Utils/mapMap.js +7 -1
- package/src/Utils/mapMap.spec.js +2 -0
- package/src/Utils/removeInline.spec.js +2 -0
- package/src/Utils/scrollIntoViewWithBlockNearest.ts +20 -0
- package/src/Utils/shallowEquals.js +8 -1
- package/src/Utils/{singleToArray.js → singleToArray.ts} +1 -1
- package/src/Utils/supportPseudoClass.ts +17 -0
- package/src/Utils/{tabbableElements.js → tabbableElements.ts} +6 -5
- package/src/Utils/walkMarkdownTokens.spec.js +3 -3
- package/src/connectToWebChat.js +11 -4
- package/src/hooks/{index.js → index.ts} +1 -0
- package/src/hooks/internal/BypassSpeechSynthesisPonyfill.js +70 -17
- package/src/hooks/internal/useChanged.ts +17 -0
- package/src/hooks/internal/useDispatchScrollPosition.js +1 -3
- package/src/hooks/internal/useDispatchTranscriptFocusByActivityKey.ts +5 -0
- package/src/hooks/internal/useFocusVisible.ts +22 -0
- package/src/hooks/internal/useMemoWithPrevious.ts +16 -0
- package/src/hooks/internal/useMemoize.spec.js +3 -1
- package/src/hooks/internal/useMemoize.ts +53 -0
- package/src/hooks/internal/useObserveFocusVisible.ts +252 -0
- package/src/hooks/internal/usePrevious.ts +12 -0
- package/src/hooks/internal/useResumeAudioContext.ts +7 -0
- package/src/hooks/internal/useScrollRelative.js +4 -3
- package/src/hooks/internal/useStateRef.ts +31 -0
- package/src/hooks/internal/{useUniqueId.js → useUniqueId.ts} +1 -1
- package/src/hooks/internal/useValueRef.ts +22 -0
- package/src/hooks/{useDictateAbortable.js → useDictateAbortable.ts} +1 -1
- package/src/hooks/{useFocus.js → useFocus.ts} +1 -1
- package/src/hooks/{useFocusSendBox.js → useFocusSendBox.ts} +2 -1
- package/src/hooks/{useObserveScrollPosition.js → useObserveScrollPosition.ts} +6 -1
- package/src/hooks/{useObserveTranscriptFocus.js → useObserveTranscriptFocus.ts} +6 -1
- package/src/hooks/useRenderMarkdownAsHTML.ts +23 -0
- package/src/hooks/{useScrollDown.js → useScrollDown.ts} +1 -1
- package/src/hooks/useScrollTo.ts +16 -0
- package/src/hooks/useScrollToEnd.ts +12 -0
- package/src/hooks/{useScrollUp.js → useScrollUp.ts} +1 -1
- package/src/hooks/{useSendFiles.js → useSendFiles.ts} +3 -2
- package/src/hooks/{useStyleSet.js → useStyleSet.ts} +1 -1
- package/src/hooks/useWebSpeechPonyfill.ts +7 -0
- package/src/index.ts +7 -12
- package/src/providers/ActivityTree/ActivityTreeComposer.tsx +74 -0
- package/src/providers/ActivityTree/private/Context.ts +12 -0
- package/src/providers/ActivityTree/private/types.ts +12 -0
- package/src/providers/ActivityTree/private/useActivitiesWithRenderer.ts +66 -0
- package/src/providers/ActivityTree/private/useActivityTreeWithRenderer.ts +140 -0
- package/src/providers/ActivityTree/private/useContext.ts +15 -0
- package/src/providers/ActivityTree/useActivityTreeWithRenderer.ts +16 -0
- package/src/providers/LiveRegionTwin/LiveRegionTwinComposer.tsx +154 -0
- package/src/providers/LiveRegionTwin/private/Context.ts +15 -0
- package/src/providers/LiveRegionTwin/private/LiveRegionTwinContainer.tsx +64 -0
- package/src/providers/LiveRegionTwin/private/types.ts +10 -0
- package/src/providers/LiveRegionTwin/private/useContext.ts +15 -0
- package/src/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.ts +13 -0
- package/src/providers/LiveRegionTwin/private/useStaticElementEntries.ts +7 -0
- package/src/providers/LiveRegionTwin/useQueueStaticElement.ts +12 -0
- package/src/providers/TranscriptFocus/TranscriptFocusComposer.tsx +180 -0
- package/src/providers/TranscriptFocus/private/Context.ts +16 -0
- package/src/providers/TranscriptFocus/private/useContext.ts +13 -0
- package/src/providers/TranscriptFocus/useActiveDescendantId.ts +5 -0
- package/src/providers/TranscriptFocus/useFocusByActivityKey.ts +14 -0
- package/src/providers/TranscriptFocus/useFocusRelativeActivity.ts +5 -0
- package/src/providers/TranscriptFocus/useFocusedActivityKey.ts +5 -0
- package/src/providers/TranscriptFocus/useFocusedExplicitly.ts +5 -0
- package/src/providers/TranscriptFocus/useGetDescendantIdByActivityKey.ts +5 -0
- package/src/tsconfig.json +1 -1
- package/src/types/ScrollPosition.ts +6 -0
- package/.eslintignore +0 -9
- package/lib/Activity/ScrollToEndButton.js +0 -81
- package/lib/Attachment/Assets/ErrorIcon.js +0 -22
- package/lib/Utils/findLastIndex.js +0 -32
- package/lib/Utils/remarkStripMarkdown.js +0 -26
- package/lib/hooks/internal/useAcknowledgedActivity.js +0 -90
- package/lib/hooks/internal/useDispatchTranscriptFocus.js +0 -19
- package/lib/hooks/internal/useStripMarkdown.js +0 -19
- package/src/Activity/ScrollToEndButton.js +0 -58
- package/src/Attachment/Assets/ErrorIcon.js +0 -9
- package/src/BasicTranscript.js +0 -1123
- package/src/Middleware/Activity/createCoreMiddleware.js +0 -71
- package/src/Middleware/Attachment/createCoreMiddleware.js +0 -43
- package/src/Middleware/AttachmentForScreenReader/createCoreMiddleware.js +0 -37
- package/src/Middleware/Toast/createCoreMiddleware.js +0 -20
- package/src/Toast/createToastMiddleware.js +0 -11
- package/src/Utils/findLastIndex.js +0 -11
- package/src/Utils/findLastIndex.spec.js +0 -29
- package/src/Utils/getActivityUniqueId.js +0 -3
- package/src/Utils/intersectionOf.js +0 -11
- package/src/Utils/isZeroOrPositive.js +0 -4
- package/src/Utils/remarkStripMarkdown.js +0 -13
- package/src/hooks/internal/useAcknowledgedActivity.js +0 -65
- package/src/hooks/internal/useChanged.js +0 -10
- package/src/hooks/internal/useDispatchTranscriptFocus.js +0 -7
- package/src/hooks/internal/useMemoize.js +0 -37
- package/src/hooks/internal/useStripMarkdown.js +0 -7
- package/src/hooks/useRenderMarkdownAsHTML.js +0 -20
- package/src/hooks/useScrollTo.js +0 -11
- package/src/hooks/useScrollToEnd.js +0 -11
- package/src/hooks/useWebSpeechPonyfill.js +0 -5
- package/src/index.tsx +0 -35
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ActivityWithRenderer, ReadonlyActivityTree } from './types';
|
|
2
|
+
declare function useActivityTreeWithRenderer(entries: readonly ActivityWithRenderer[]): ReadonlyActivityTree;
|
|
3
|
+
export type { ActivityWithRenderer };
|
|
4
|
+
export default useActivityTreeWithRenderer;
|
|
5
|
+
//# sourceMappingURL=useActivityTreeWithRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useActivityTreeWithRenderer.d.ts","sourceRoot":"","sources":["../../../../src/providers/ActivityTree/private/useActivityTreeWithRenderer.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAiC1E,iBAAS,2BAA2B,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,GAAG,oBAAoB,CA8FnG;AAED,YAAY,EAAE,oBAAoB,EAAE,CAAC;AAErC,eAAe,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _botframeworkWebchatApi = require("botframework-webchat-api");
|
|
9
|
+
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
|
|
12
|
+
var _intersectionOf = _interopRequireDefault(require("../../../Utils/intersectionOf"));
|
|
13
|
+
|
|
14
|
+
var _removeInline = _interopRequireDefault(require("../../../Utils/removeInline"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
19
|
+
|
|
20
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
21
|
+
|
|
22
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
23
|
+
|
|
24
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
25
|
+
|
|
26
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
27
|
+
|
|
28
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
29
|
+
|
|
30
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
31
|
+
|
|
32
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
33
|
+
|
|
34
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
35
|
+
|
|
36
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
37
|
+
|
|
38
|
+
var useGroupActivities = _botframeworkWebchatApi.hooks.useGroupActivities;
|
|
39
|
+
|
|
40
|
+
function validateAllEntriesTagged(entries, bins) {
|
|
41
|
+
return entries.every(function (entry) {
|
|
42
|
+
return bins.some(function (bin) {
|
|
43
|
+
return bin.includes(entry);
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
} // Activity tree is a multidimensional array, while activities is a 1D array.
|
|
47
|
+
// - The first dimension of the array contains activities with same sender;
|
|
48
|
+
// - The second dimension of the array contains activities with same status.
|
|
49
|
+
// [
|
|
50
|
+
// [
|
|
51
|
+
// // Both messages are from bot and is sent as a batch, we will group them as an array.
|
|
52
|
+
// 'Bot: Hello!'
|
|
53
|
+
// 'Bot: What can I help today?'
|
|
54
|
+
// ],
|
|
55
|
+
// [
|
|
56
|
+
// 'User: What is the weather?'
|
|
57
|
+
// ],
|
|
58
|
+
// [
|
|
59
|
+
// 'Bot: Let me look it up... hold on.'
|
|
60
|
+
// ],
|
|
61
|
+
// [
|
|
62
|
+
// // This message is in a different group because it is more than a few seconds apart from the previous message.
|
|
63
|
+
// 'Bot: Here is the weather forecast.'
|
|
64
|
+
// ]
|
|
65
|
+
// ]
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
function useActivityTreeWithRenderer(entries) {
|
|
69
|
+
var groupActivities = useGroupActivities(); // We bin activities in 2 different ways:
|
|
70
|
+
// - `activitiesBySender` is a 2D array containing activities with same sender
|
|
71
|
+
// - `activitiesByStatus` is a 2D array containing activities with same status
|
|
72
|
+
// Both arrays should contains all activities.
|
|
73
|
+
|
|
74
|
+
var _useMemo = (0, _react.useMemo)(function () {
|
|
75
|
+
var visibleActivities = entries.map(function (_ref) {
|
|
76
|
+
var activity = _ref.activity;
|
|
77
|
+
return activity;
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
var _groupActivities = groupActivities({
|
|
81
|
+
activities: visibleActivities
|
|
82
|
+
}),
|
|
83
|
+
activitiesBySender = _groupActivities.sender,
|
|
84
|
+
activitiesByStatus = _groupActivities.status;
|
|
85
|
+
|
|
86
|
+
var _map = [activitiesBySender, activitiesByStatus].map(function (bins) {
|
|
87
|
+
return bins.map(function (bin) {
|
|
88
|
+
return bin.map(function (activity) {
|
|
89
|
+
return entries.find(function (entry) {
|
|
90
|
+
return entry.activity === activity;
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
}),
|
|
95
|
+
_map2 = _slicedToArray(_map, 2),
|
|
96
|
+
entriesBySender = _map2[0],
|
|
97
|
+
entriesByStatus = _map2[1];
|
|
98
|
+
|
|
99
|
+
if (!validateAllEntriesTagged(visibleActivities, activitiesBySender)) {
|
|
100
|
+
console.warn('botframework-webchat: Not every activities are grouped in the "sender" property. Please fix "groupActivitiesMiddleware" and group every activities.');
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (!validateAllEntriesTagged(visibleActivities, activitiesByStatus)) {
|
|
104
|
+
console.warn('botframework-webchat: Not every activities are grouped in the "status" property. Please fix "groupActivitiesMiddleware" and group every activities.');
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
return {
|
|
108
|
+
entriesBySender: entriesBySender,
|
|
109
|
+
entriesByStatus: entriesByStatus
|
|
110
|
+
};
|
|
111
|
+
}, [entries, groupActivities]),
|
|
112
|
+
entriesBySender = _useMemo.entriesBySender,
|
|
113
|
+
entriesByStatus = _useMemo.entriesByStatus; // Create a tree of activities with 2 dimensions: sender, followed by status.
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
var activityTree = (0, _react.useMemo)(function () {
|
|
117
|
+
var entriesPendingGrouping = _toConsumableArray(entries);
|
|
118
|
+
|
|
119
|
+
var activityTree = [];
|
|
120
|
+
|
|
121
|
+
var _loop = function _loop() {
|
|
122
|
+
var entriesWithSameSender = entriesBySender.find(function (bin) {
|
|
123
|
+
return bin.includes(entriesPendingGrouping[0]);
|
|
124
|
+
});
|
|
125
|
+
var senderTree = [];
|
|
126
|
+
entriesWithSameSender.forEach(function (entry) {
|
|
127
|
+
var entriesWithSameStatus = entriesByStatus.find(function (bin) {
|
|
128
|
+
return bin.includes(entry);
|
|
129
|
+
});
|
|
130
|
+
var entriesWithSameSenderAndStatus = (0, _intersectionOf.default)(entriesPendingGrouping, entriesWithSameSender, entriesWithSameStatus);
|
|
131
|
+
|
|
132
|
+
if (entriesWithSameSenderAndStatus.length) {
|
|
133
|
+
senderTree.push(Object.freeze(entriesWithSameSenderAndStatus));
|
|
134
|
+
|
|
135
|
+
_removeInline.default.apply(void 0, [entriesPendingGrouping].concat(_toConsumableArray(entriesWithSameSenderAndStatus)));
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
activityTree.push(Object.freeze(senderTree));
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
while (entriesPendingGrouping.length) {
|
|
142
|
+
_loop();
|
|
143
|
+
} // Assertion: All entries must be assigned to the activityTree.
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
if (!entries.every(function (activity) {
|
|
147
|
+
return activityTree.some(function (activitiesWithSameSender) {
|
|
148
|
+
return activitiesWithSameSender.some(function (activitiesWithSameSenderAndStatus) {
|
|
149
|
+
return activitiesWithSameSenderAndStatus.includes(activity);
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
})) {
|
|
153
|
+
console.warn('botframework-webchat internal: Not all visible activities are grouped in the activityTree.', {
|
|
154
|
+
entries: entries,
|
|
155
|
+
activityTree: activityTree
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
return Object.freeze(activityTree);
|
|
160
|
+
}, [entriesBySender, entriesByStatus, entries]);
|
|
161
|
+
return activityTree;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
var _default = useActivityTreeWithRenderer;
|
|
165
|
+
exports.default = _default;
|
|
166
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlUcmVlL3ByaXZhdGUvdXNlQWN0aXZpdHlUcmVlV2l0aFJlbmRlcmVyLnRzIl0sIm5hbWVzIjpbInVzZUdyb3VwQWN0aXZpdGllcyIsImhvb2tzIiwidmFsaWRhdGVBbGxFbnRyaWVzVGFnZ2VkIiwiZW50cmllcyIsImJpbnMiLCJldmVyeSIsImVudHJ5Iiwic29tZSIsImJpbiIsImluY2x1ZGVzIiwidXNlQWN0aXZpdHlUcmVlV2l0aFJlbmRlcmVyIiwiZ3JvdXBBY3Rpdml0aWVzIiwidmlzaWJsZUFjdGl2aXRpZXMiLCJtYXAiLCJhY3Rpdml0eSIsImFjdGl2aXRpZXMiLCJhY3Rpdml0aWVzQnlTZW5kZXIiLCJzZW5kZXIiLCJhY3Rpdml0aWVzQnlTdGF0dXMiLCJzdGF0dXMiLCJmaW5kIiwiZW50cmllc0J5U2VuZGVyIiwiZW50cmllc0J5U3RhdHVzIiwiY29uc29sZSIsIndhcm4iLCJhY3Rpdml0eVRyZWUiLCJlbnRyaWVzUGVuZGluZ0dyb3VwaW5nIiwiZW50cmllc1dpdGhTYW1lU2VuZGVyIiwic2VuZGVyVHJlZSIsImZvckVhY2giLCJlbnRyaWVzV2l0aFNhbWVTdGF0dXMiLCJlbnRyaWVzV2l0aFNhbWVTZW5kZXJBbmRTdGF0dXMiLCJsZW5ndGgiLCJwdXNoIiwiT2JqZWN0IiwiZnJlZXplIiwicmVtb3ZlSW5saW5lIiwiYWN0aXZpdGllc1dpdGhTYW1lU2VuZGVyIiwiYWN0aXZpdGllc1dpdGhTYW1lU2VuZGVyQW5kU3RhdHVzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBSUE7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlBLElBQVFBLGtCQUFSLEdBQStCQyw2QkFBL0IsQ0FBUUQsa0JBQVI7O0FBRUEsU0FBU0Usd0JBQVQsQ0FDRUMsT0FERixFQUVFQyxJQUZGLEVBR1c7QUFDVCxTQUFPRCxPQUFPLENBQUNFLEtBQVIsQ0FBYyxVQUFBQyxLQUFLO0FB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bnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaG9va3MgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1hcGknO1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHR5cGUgeyBEaXJlY3RMaW5lQWN0aXZpdHkgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1jb3JlJztcblxuaW1wb3J0IGludGVyc2VjdGlvbk9mIGZyb20gJy4uLy4uLy4uL1V0aWxzL2ludGVyc2VjdGlvbk9mJztcbmltcG9ydCByZW1vdmVJbmxpbmUgZnJvbSAnLi4vLi4vLi4vVXRpbHMvcmVtb3ZlSW5saW5lJztcblxuaW1wb3J0IHR5cGUgeyBBY3Rpdml0eVdpdGhSZW5kZXJlciwgUmVhZG9ubHlBY3Rpdml0eVRyZWUgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgeyB1c2VHcm91cEFjdGl2aXRpZXMgfSA9IGhvb2tzO1xuXG5mdW5jdGlvbiB2YWxpZGF0ZUFsbEVudHJpZXNUYWdnZWQoXG4gIGVudHJpZXM6IHJlYWRvbmx5IEFjdGl2aXR5V2l0aFJlbmRlcmVyW10sXG4gIGJpbnM6IHJlYWRvbmx5IChyZWFkb25seSBBY3Rpdml0eVdpdGhSZW5kZXJlcltdKVtdXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIGVudHJpZXMuZXZlcnkoZW50cnkgPT4gYmlucy5zb21lKGJpbiA9PiBiaW4uaW5jbHVkZXMoZW50cnkpKSk7XG59XG5cbi8vIEFjdGl2aXR5IHRyZWUgaXMgYSBtdWx0aWRpbWVuc2lvbmFsIGFycmF5LCB3aGlsZSBhY3Rpdml0aWVzIGlzIGEgMUQgYXJyYXkuXG4vLyAtIFRoZSBmaXJzdCBkaW1lbnNpb24gb2YgdGhlIGFycmF5IGNvbnRhaW5zIGFjdGl2aXRpZXMgd2l0aCBzYW1lIHNlbmRlcjtcbi8vIC0gVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIGFycmF5IGNvbnRhaW5zIGFjdGl2aXRpZXMgd2l0aCBzYW1lIHN0YXR1cy5cblxuLy8gW1xuLy8gICBbXG4vLyAgICAgLy8gQm90aCBtZXNzYWdlcyBhcmUgZnJvbSBib3QgYW5kIGlzIHNlbnQgYXMgYSBiYXRjaCwgd2Ugd2lsbCBncm91cCB0aGVtIGFzIGFuIGFycmF5LlxuLy8gICAgICdCb3Q6IEhlbGxvISdcbi8vICAgICAnQm90OiBXaGF0IGNhbiBJIGhlbHAgdG9kYXk/J1xuLy8gICBdLFxuLy8gICBbXG4vLyAgICAgJ1VzZXI6IFdoYXQgaXMgdGhlIHdlYXRoZXI/J1xuLy8gICBdLFxuLy8gICBbXG4vLyAgICAgJ0JvdDogTGV0IG1lIGxvb2sgaXQgdXAuLi4gaG9sZCBvbi4nXG4vLyAgIF0sXG4vLyAgIFtcbi8vICAgICAvLyBUaGlzIG1lc3NhZ2UgaXMgaW4gYSBkaWZmZXJlbnQgZ3JvdXAgYmVjYXVzZSBpdCBpcyBtb3JlIHRoYW4gYSBmZXcgc2Vjb25kcyBhcGFydCBmcm9tIHRoZSBwcmV2aW91cyBtZXNzYWdlLlxuLy8gICAgICdCb3Q6IEhlcmUgaXMgdGhlIHdlYXRoZXIgZm9yZWNhc3QuJ1xuLy8gICBdXG4vLyBdXG5cbmZ1bmN0aW9uIHVzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlcihlbnRyaWVzOiByZWFkb25seSBBY3Rpdml0eVdpdGhSZW5kZXJlcltdKTogUmVhZG9ubHlBY3Rpdml0eVRyZWUge1xuICBjb25zdCBncm91cEFjdGl2aXRpZXMgPSB1c2VHcm91cEFjdGl2aXRpZXMoKTtcblxuICAvLyBXZSBiaW4gYWN0aXZpdGllcyBpbiAyIGRpZmZlcmVudCB3YXlzOlxuICAvLyAtIGBhY3Rpdml0aWVzQnlTZW5kZXJgIGlzIGEgMkQgYXJyYXkgY29udGFpbmluZyBhY3Rpdml0aWVzIHdpdGggc2FtZSBzZW5kZXJcbiAgLy8gLSBgYWN0aXZpdGllc0J5U3RhdHVzYCBpcyBhIDJEIGFycmF5IGNvbnRhaW5pbmcgYWN0aXZpdGllcyB3aXRoIHNhbWUgc3RhdHVzXG4gIC8vIEJvdGggYXJyYXlzIHNob3VsZCBjb250YWlucyBhbGwgYWN0aXZpdGllcy5cblxuICBjb25zdCB7IGVudHJpZXNCeVNlbmRlciwgZW50cmllc0J5U3RhdHVzIH0gPSB1c2VNZW1vPHtcbiAgICBlbnRyaWVzQnlTZW5kZXI6IHJlYWRvbmx5IChyZWFkb25seSBEaXJlY3RMaW5lQWN0aXZpdHlbXSlbXTtcbiAgICBlbnRyaWVzQnlTdGF0dXM6IHJlYWRvbmx5IChyZWFkb25seSBEaXJlY3RMaW5lQWN0aXZpdHlbXSlbXTtcbiAgfT4oKCkgPT4ge1xuICAgIGNvbnN0IHZpc2libGVBY3Rpdml0aWVzID0gZW50cmllcy5tYXAoKHsgYWN0aXZpdHkgfSkgPT4gYWN0aXZpdHkpO1xuXG4gICAgY29uc3Qge1xuICAgICAgc2VuZGVyOiBhY3Rpdml0aWVzQnlTZW5kZXIsXG4gICAgICBzdGF0dXM6IGFjdGl2aXRpZXNCeVN0YXR1c1xuICAgIH06IHtcbiAgICAgIHNlbmRlcjogcmVhZG9ubHkgKHJlYWRvbmx5IERpcmVjdExpbmVBY3Rpdml0eVtdKVtdO1xuICAgICAgc3RhdHVzOiByZWFkb25seSAocmVhZG9ubHkgRGlyZWN0TGluZUFjdGl2aXR5W10pW107XG4gICAgfSA9IGdyb3VwQWN0aXZpdGllcyh7XG4gICAgICBhY3Rpdml0aWVzOiB2aXNpYmxlQWN0aXZpdGllc1xuICAgIH0pO1xuXG4gICAgY29uc3QgW2VudHJpZXNCeVNlbmRlciwgZW50cmllc0J5U3RhdHVzXSA9IFthY3Rpdml0aWVzQnlTZW5kZXIsIGFjdGl2aXRpZXNCeVN0YXR1c10ubWFwKGJpbnMgPT5cbiAgICAgIGJpbnMubWFwKGJpbiA9PiBiaW4ubWFwKGFjdGl2aXR5ID0+IGVudHJpZXMuZmluZChlbnRyeSA9PiBlbnRyeS5hY3Rpdml0eSA9PT0gYWN0aXZpdHkpKSlcbiAgICApO1xuXG4gICAgaWYgKCF2YWxpZGF0ZUFsbEVudHJpZXNUYWdnZWQodmlzaWJsZUFjdGl2aXRpZXMsIGFjdGl2aXRpZXNCeVNlbmRlcikpIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ2JvdGZyYW1ld29yay13ZWJjaGF0OiBOb3QgZXZlcnkgYWN0aXZpdGllcyBhcmUgZ3JvdXBlZCBpbiB0aGUgXCJzZW5kZXJcIiBwcm9wZXJ0eS4gUGxlYXNlIGZpeCBcImdyb3VwQWN0aXZpdGllc01pZGRsZXdhcmVcIiBhbmQgZ3JvdXAgZXZlcnkgYWN0aXZpdGllcy4nXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghdmFsaWRhdGVBbGxFbnRyaWVzVGFnZ2VkKHZpc2libGVBY3Rpdml0aWVzLCBhY3Rpdml0aWVzQnlTdGF0dXMpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdib3RmcmFtZXdvcmstd2ViY2hhdDogTm90IGV2ZXJ5IGFjdGl2aXRpZXMgYXJlIGdyb3VwZWQgaW4gdGhlIFwic3RhdHVzXCIgcHJvcGVydHkuIFBsZWFzZSBmaXggXCJncm91cEFjdGl2aXRpZXNNaWRkbGV3YXJlXCIgYW5kIGdyb3VwIGV2ZXJ5IGFjdGl2aXRpZXMuJ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZW50cmllc0J5U2VuZGVyLFxuICAgICAgZW50cmllc0J5U3RhdHVzXG4gICAgfTtcbiAgfSwgW2VudHJpZXMsIGdyb3VwQWN0aXZpdGllc10pO1xuXG4gIC8vIENyZWF0ZSBhIHRyZWUgb2YgYWN0aXZpdGllcyB3aXRoIDIgZGltZW5zaW9uczogc2VuZGVyLCBmb2xsb3dlZCBieSBzdGF0dXMuXG5cbiAgY29uc3QgYWN0aXZpdHlUcmVlOiBSZWFkb25seUFjdGl2aXR5VHJlZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGVudHJpZXNQZW5kaW5nR3JvdXBpbmcgPSBbLi4uZW50cmllc107XG4gICAgY29uc3QgYWN0aXZpdHlUcmVlOiAocmVhZG9ubHkgKHJlYWRvbmx5IEFjdGl2aXR5V2l0aFJlbmRlcmVyW10pW10pW10gPSBbXTtcblxuICAgIHdoaWxlIChlbnRyaWVzUGVuZGluZ0dyb3VwaW5nLmxlbmd0aCkge1xuICAgICAgY29uc3QgZW50cmllc1dpdGhTYW1lU2VuZGVyID0gZW50cmllc0J5U2VuZGVyLmZpbmQoYmluID0+IGJpbi5pbmNsdWRlcyhlbnRyaWVzUGVuZGluZ0dyb3VwaW5nWzBdKSk7XG4gICAgICBjb25zdCBzZW5kZXJUcmVlOiAocmVhZG9ubHkgQWN0aXZpdHlXaXRoUmVuZGVyZXJbXSlbXSA9IFtdO1xuXG4gICAgICBlbnRyaWVzV2l0aFNhbWVTZW5kZXIuZm9yRWFjaChlbnRyeSA9PiB7XG4gICAgICAgIGNvbnN0IGVudHJpZXNXaXRoU2FtZVN0YXR1cyA9IGVudHJpZXNCeVN0YXR1cy5maW5kKGJpbiA9PiBiaW4uaW5jbHVkZXMoZW50cnkpKTtcblxuICAgICAgICBjb25zdCBlbnRyaWVzV2l0aFNhbWVTZW5kZXJBbmRTdGF0dXMgPSBpbnRlcnNlY3Rpb25PZjxBY3Rpdml0eVdpdGhSZW5kZXJlcj4oXG4gICAgICAgICAgZW50cmllc1BlbmRpbmdHcm91cGluZyxcbiAgICAgICAgICBlbnRyaWVzV2l0aFNhbWVTZW5kZXIsXG4gICAgICAgICAgZW50cmllc1dpdGhTYW1lU3RhdHVzXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGVudHJpZXNXaXRoU2FtZVNlbmRlckFuZFN0YXR1cy5sZW5ndGgpIHtcbiAgICAgICAgICBzZW5kZXJUcmVlLnB1c2goT2JqZWN0LmZyZWV6ZShlbnRyaWVzV2l0aFNhbWVTZW5kZXJBbmRTdGF0dXMpKTtcbiAgICAgICAgICByZW1vdmVJbmxpbmUoZW50cmllc1BlbmRpbmdHcm91cGluZywgLi4uZW50cmllc1dpdGhTYW1lU2VuZGVyQW5kU3RhdHVzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGFjdGl2aXR5VHJlZS5wdXNoKE9iamVjdC5mcmVlemUoc2VuZGVyVHJlZSkpO1xuICAgIH1cblxuICAgIC8vIEFzc2VydGlvbjogQWxsIGVudHJpZXMgbXVzdCBiZSBhc3NpZ25lZCB0byB0aGUgYWN0aXZpdHlUcmVlLlxuICAgIGlmIChcbiAgICAgICFlbnRyaWVzLmV2ZXJ5KGFjdGl2aXR5ID0+XG4gICAgICAgIGFjdGl2aXR5VHJlZS5zb21lKGFjdGl2aXRpZXNXaXRoU2FtZVNlbmRlciA9PlxuICAgICAgICAgIGFjdGl2aXRpZXNXaXRoU2FtZVNlbmRlci5zb21lKGFjdGl2aXRpZXNXaXRoU2FtZVNlbmRlckFuZFN0YXR1cyA9PlxuICAgICAgICAgICAgYWN0aXZpdGllc1dpdGhTYW1lU2VuZGVyQW5kU3RhdHVzLmluY2x1ZGVzKGFjdGl2aXR5KVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKVxuICAgICkge1xuICAgICAgY29uc29sZS53YXJuKCdib3RmcmFtZXdvcmstd2ViY2hhdCBpbnRlcm5hbDogTm90IGFsbCB2aXNpYmxlIGFjdGl2aXRpZXMgYXJlIGdyb3VwZWQgaW4gdGhlIGFjdGl2aXR5VHJlZS4nLCB7XG4gICAgICAgIGVudHJpZXMsXG4gICAgICAgIGFjdGl2aXR5VHJlZVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIE9iamVjdC5mcmVlemUoYWN0aXZpdHlUcmVlKTtcbiAgfSwgW2VudHJpZXNCeVNlbmRlciwgZW50cmllc0J5U3RhdHVzLCBlbnRyaWVzXSk7XG5cbiAgcmV0dXJuIGFjdGl2aXR5VHJlZTtcbn1cblxuZXhwb3J0IHR5cGUgeyBBY3Rpdml0eVdpdGhSZW5kZXJlciB9O1xuXG5leHBvcnQgZGVmYXVsdCB1c2VBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXI7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useContext.d.ts","sourceRoot":"","sources":["../../../../src/providers/ActivityTree/private/useContext.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEzD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,iBAAiB,UAAO,GAAG,uBAAuB,CAQhG"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = useActivityTreeContext;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var _Context = _interopRequireDefault(require("./Context"));
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function useActivityTreeContext() {
|
|
15
|
+
var thrownOnUndefined = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
16
|
+
var contextValue = (0, _react.useContext)(_Context.default);
|
|
17
|
+
|
|
18
|
+
if (thrownOnUndefined && !contextValue) {
|
|
19
|
+
throw new Error('botframework-webchat internal: This hook can only be used under <ActivityTreeComposer>.');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return contextValue;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlUcmVlL3ByaXZhdGUvdXNlQ29udGV4dC50cyJdLCJuYW1lcyI6WyJ1c2VBY3Rpdml0eVRyZWVDb250ZXh0IiwidGhyb3duT25VbmRlZmluZWQiLCJjb250ZXh0VmFsdWUiLCJBY3Rpdml0eVRyZWVDb250ZXh0IiwiRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFFQTs7OztBQUllLFNBQVNBLHNCQUFULEdBQW1GO0FBQUEsTUFBbkRDLGlCQUFtRCx1RUFBL0IsSUFBK0I7QUFDaEcsTUFBTUMsWUFBWSxHQUFHLHVCQUFXQyxnQkFBWCxDQUFyQjs7QUFFQSxNQUFJRixpQkFBaUIsSUFBSSxDQUFDQyxZQUExQixFQUF3QztBQUN0QyxVQUFNLElBQUlFLEtBQUosQ0FBVSx5RkFBVixDQUFOO0FBQ0Q7O0FBRUQsU0FBT0YsWUFBUDtBQUNEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgQWN0aXZpdHlUcmVlQ29udGV4dCBmcm9tICcuL0NvbnRleHQnO1xuXG5pbXBvcnQgdHlwZSB7IEFjdGl2aXR5VHJlZUNvbnRleHRUeXBlIH0gZnJvbSAnLi9Db250ZXh0JztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlQWN0aXZpdHlUcmVlQ29udGV4dCh0aHJvd25PblVuZGVmaW5lZCA9IHRydWUpOiBBY3Rpdml0eVRyZWVDb250ZXh0VHlwZSB7XG4gIGNvbnN0IGNvbnRleHRWYWx1ZSA9IHVzZUNvbnRleHQoQWN0aXZpdHlUcmVlQ29udGV4dCk7XG5cbiAgaWYgKHRocm93bk9uVW5kZWZpbmVkICYmICFjb250ZXh0VmFsdWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2JvdGZyYW1ld29yay13ZWJjaGF0IGludGVybmFsOiBUaGlzIGhvb2sgY2FuIG9ubHkgYmUgdXNlZCB1bmRlciA8QWN0aXZpdHlUcmVlQ29tcG9zZXI+LicpO1xuICB9XG5cbiAgcmV0dXJuIGNvbnRleHRWYWx1ZTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ActivityWithRenderer, ReadonlyActivityTree } from './private/types';
|
|
2
|
+
export default function useActivityTreeWithRenderer(options?: {
|
|
3
|
+
flat?: false;
|
|
4
|
+
}): readonly [ReadonlyActivityTree];
|
|
5
|
+
export default function useActivityTreeWithRenderer(options: {
|
|
6
|
+
flat: true;
|
|
7
|
+
}): readonly [readonly ActivityWithRenderer[]];
|
|
8
|
+
//# sourceMappingURL=useActivityTreeWithRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useActivityTreeWithRenderer.d.ts","sourceRoot":"","sources":["../../../src/providers/ActivityTree/useActivityTreeWithRenderer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAElF,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG,SAAS,CAAC,oBAAoB,CAAC,CAAC;AACjH,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,OAAO,EAAE;IAC3D,IAAI,EAAE,IAAI,CAAC;CACZ,GAAG,SAAS,CAAC,SAAS,oBAAoB,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = useActivityTreeWithRenderer;
|
|
7
|
+
|
|
8
|
+
var _useContext = _interopRequireDefault(require("./private/useContext"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
function useActivityTreeWithRenderer() {
|
|
13
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
14
|
+
var context = (0, _useContext.default)();
|
|
15
|
+
return (options === null || options === void 0 ? void 0 : options.flat) === true ? context.flattenedActivityTreeWithRendererState : context.activityTreeWithRendererState;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvQWN0aXZpdHlUcmVlL3VzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlci50cyJdLCJuYW1lcyI6WyJ1c2VBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXIiLCJvcHRpb25zIiwiY29udGV4dCIsImZsYXQiLCJmbGF0dGVuZWRBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXJTdGF0ZSIsImFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlclN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7QUFTZSxTQUFTQSwyQkFBVCxHQUF1RTtBQUFBLE1BQWxDQyxPQUFrQyx1RUFBSixFQUFJO0FBQ3BGLE1BQU1DLE9BQU8sR0FBRywwQkFBaEI7QUFFQSxTQUFPLENBQUFELE9BQU8sU0FBUCxJQUFBQSxPQUFPLFdBQVAsWUFBQUEsT0FBTyxDQUFFRSxJQUFULE1BQWtCLElBQWxCLEdBQ0hELE9BQU8sQ0FBQ0Usc0NBREwsR0FFSEYsT0FBTyxDQUFDRyw2QkFGWjtBQUdEIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdXNlQWN0aXZpdHlUcmVlQ29udGV4dCBmcm9tICcuL3ByaXZhdGUvdXNlQ29udGV4dCc7XG5cbmltcG9ydCB0eXBlIHsgQWN0aXZpdHlXaXRoUmVuZGVyZXIsIFJlYWRvbmx5QWN0aXZpdHlUcmVlIH0gZnJvbSAnLi9wcml2YXRlL3R5cGVzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlQWN0aXZpdHlUcmVlV2l0aFJlbmRlcmVyKG9wdGlvbnM/OiB7IGZsYXQ/OiBmYWxzZSB9KTogcmVhZG9ubHkgW1JlYWRvbmx5QWN0aXZpdHlUcmVlXTtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVzZUFjdGl2aXR5VHJlZVdpdGhSZW5kZXJlcihvcHRpb25zOiB7XG4gIGZsYXQ6IHRydWU7XG59KTogcmVhZG9ubHkgW3JlYWRvbmx5IEFjdGl2aXR5V2l0aFJlbmRlcmVyW11dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXIob3B0aW9uczogeyBmbGF0PzogYm9vbGVhbiB9ID0ge30pIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUFjdGl2aXR5VHJlZUNvbnRleHQoKTtcblxuICByZXR1cm4gb3B0aW9ucz8uZmxhdCA9PT0gdHJ1ZVxuICAgID8gY29udGV4dC5mbGF0dGVuZWRBY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXJTdGF0ZVxuICAgIDogY29udGV4dC5hY3Rpdml0eVRyZWVXaXRoUmVuZGVyZXJTdGF0ZTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { FC, PropsWithChildren } from 'react';
|
|
2
|
+
declare type LiveRegionTwinComposerProps = PropsWithChildren<{
|
|
3
|
+
/** Optional "aria-label" attribute for the live region twin container. */
|
|
4
|
+
'aria-label'?: string;
|
|
5
|
+
/** "aria-live" attribute for the live region twin container, defaults to `'polite'`. */
|
|
6
|
+
'aria-live'?: 'assertive' | 'polite';
|
|
7
|
+
/** Optional "aria-roledescription" attribute for the live region twin container. */
|
|
8
|
+
'aria-roledescription'?: string;
|
|
9
|
+
/** Optional "className" attribute for the live region twin container. */
|
|
10
|
+
className?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Static elements will fade out after this timeout value specified in milliseconds, defaults to `1000`.
|
|
13
|
+
*
|
|
14
|
+
* When lowering this value, make sure screen reader can continue to pick up new static elements before fading out.
|
|
15
|
+
*
|
|
16
|
+
* If this prop is updated, it will be reflected in next queueing elements.
|
|
17
|
+
*/
|
|
18
|
+
fadeAfter?: number;
|
|
19
|
+
/** Optional "role" attribute for the live region twin container. */
|
|
20
|
+
role?: string;
|
|
21
|
+
}>;
|
|
22
|
+
/**
|
|
23
|
+
* Live region twin is an UI component for queueing texts or elements to the screen reader using
|
|
24
|
+
* a container element with `aria-live` attribute set.
|
|
25
|
+
*
|
|
26
|
+
* After the text is rendered and queued, it will be removed to reduce burden on the DOM tree.
|
|
27
|
+
* Currently, we assume the assistive technologies should pick up the text within 1 second of rendering.
|
|
28
|
+
* This value is configurable.
|
|
29
|
+
*
|
|
30
|
+
* By default, the live region is visible. If is is not desirable, the caller can use `className` prop to
|
|
31
|
+
* hide its visuals.
|
|
32
|
+
*/
|
|
33
|
+
declare const LiveRegionTwinComposer: FC<LiveRegionTwinComposerProps>;
|
|
34
|
+
export default LiveRegionTwinComposer;
|
|
35
|
+
//# sourceMappingURL=LiveRegionTwinComposer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiveRegionTwinComposer.d.ts","sourceRoot":"","sources":["../../../src/providers/LiveRegionTwin/LiveRegionTwinComposer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAWnD,aAAK,2BAA2B,GAAG,iBAAiB,CAAC;IACnD,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,wFAAwF;IACxF,WAAW,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;IAErC,oFAAoF;IACpF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,QAAA,MAAM,sBAAsB,EAAE,EAAE,CAAC,2BAA2B,CAgF3D,CAAC;AAsBF,eAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
|
|
14
|
+
var _LiveRegionTwinContainer = _interopRequireDefault(require("./private/LiveRegionTwinContainer"));
|
|
15
|
+
|
|
16
|
+
var _Context = _interopRequireDefault(require("./private/Context"));
|
|
17
|
+
|
|
18
|
+
var _useValueRef = _interopRequireDefault(require("../../hooks/internal/useValueRef"));
|
|
19
|
+
|
|
20
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
|
+
|
|
22
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
26
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
27
|
+
|
|
28
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
29
|
+
|
|
30
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
31
|
+
|
|
32
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
33
|
+
|
|
34
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
35
|
+
|
|
36
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
37
|
+
|
|
38
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
39
|
+
|
|
40
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
41
|
+
|
|
42
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
43
|
+
|
|
44
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
45
|
+
|
|
46
|
+
var DEFAULT_ARIA_LIVE = 'polite';
|
|
47
|
+
var DEFAULT_FADE_AFTER = 1000;
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Live region twin is an UI component for queueing texts or elements to the screen reader using
|
|
51
|
+
* a container element with `aria-live` attribute set.
|
|
52
|
+
*
|
|
53
|
+
* After the text is rendered and queued, it will be removed to reduce burden on the DOM tree.
|
|
54
|
+
* Currently, we assume the assistive technologies should pick up the text within 1 second of rendering.
|
|
55
|
+
* This value is configurable.
|
|
56
|
+
*
|
|
57
|
+
* By default, the live region is visible. If is is not desirable, the caller can use `className` prop to
|
|
58
|
+
* hide its visuals.
|
|
59
|
+
*/
|
|
60
|
+
var LiveRegionTwinComposer = function LiveRegionTwinComposer(_ref) {
|
|
61
|
+
var ariaLabel = _ref['aria-label'],
|
|
62
|
+
_ref$ariaLive = _ref['aria-live'],
|
|
63
|
+
ariaLive = _ref$ariaLive === void 0 ? DEFAULT_ARIA_LIVE : _ref$ariaLive,
|
|
64
|
+
ariaRoleDescription = _ref['aria-roledescription'],
|
|
65
|
+
children = _ref.children,
|
|
66
|
+
className = _ref.className,
|
|
67
|
+
_ref$fadeAfter = _ref.fadeAfter,
|
|
68
|
+
fadeAfter = _ref$fadeAfter === void 0 ? DEFAULT_FADE_AFTER : _ref$fadeAfter,
|
|
69
|
+
role = _ref.role;
|
|
70
|
+
|
|
71
|
+
var _useState = (0, _react.useState)([]),
|
|
72
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
73
|
+
staticElementEntries = _useState2[0],
|
|
74
|
+
setStaticElementEntries = _useState2[1];
|
|
75
|
+
|
|
76
|
+
var fadeAfterRef = (0, _useValueRef.default)(fadeAfter);
|
|
77
|
+
var markAllAsRenderedTimeoutIdRef = (0, _react.useRef)();
|
|
78
|
+
var nextKeyRef = (0, _react.useRef)(1);
|
|
79
|
+
var staticElementEntriesRef = (0, _useValueRef.default)(staticElementEntries); // This function is called by an effect hook `useMarkAllAsRenderedEffect`, it must be designed with converging in mind.
|
|
80
|
+
// To prevent infinite render loop, after multiple calls to this function, it should eventually no-op.
|
|
81
|
+
|
|
82
|
+
var markAllAsRendered = (0, _react.useCallback)(function () {
|
|
83
|
+
if (!staticElementEntriesRef.current.length) {
|
|
84
|
+
// Nothing to remove.
|
|
85
|
+
return;
|
|
86
|
+
} // When removing each element one-by-one based on an individual timeout, Narrator would narrate them twice occasionally.
|
|
87
|
+
// Possibly it think some elements that is not removed during the current cycle, are new elements and queued them twice.
|
|
88
|
+
// Thus, we are removing all at once to prevent bugs in Narrator.
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
markAllAsRenderedTimeoutIdRef.current && clearTimeout(markAllAsRenderedTimeoutIdRef.current);
|
|
92
|
+
markAllAsRenderedTimeoutIdRef.current = setTimeout(function () {
|
|
93
|
+
// We are playing safe by using value ref to check its length here.
|
|
94
|
+
// If we are certain that `setStaticElements(emptyArray => emptyArray)` is a no-op,
|
|
95
|
+
// we could replace it with just the setter function.
|
|
96
|
+
staticElementEntriesRef.current.length && setStaticElementEntries([]);
|
|
97
|
+
}, fadeAfterRef.current);
|
|
98
|
+
}, [fadeAfterRef, markAllAsRenderedTimeoutIdRef, setStaticElementEntries, staticElementEntriesRef]); // When this component is unmounting, make sure all future `setTimeout` are cleared and should not be fired.
|
|
99
|
+
|
|
100
|
+
(0, _react.useEffect)(function () {
|
|
101
|
+
return function () {
|
|
102
|
+
return markAllAsRenderedTimeoutIdRef.current && clearTimeout(markAllAsRenderedTimeoutIdRef.current);
|
|
103
|
+
};
|
|
104
|
+
}, [markAllAsRenderedTimeoutIdRef]);
|
|
105
|
+
var queueStaticElement = (0, _react.useCallback)(function (element) {
|
|
106
|
+
var key = nextKeyRef.current;
|
|
107
|
+
nextKeyRef.current = nextKeyRef.current + 1;
|
|
108
|
+
setStaticElementEntries(function (entries) {
|
|
109
|
+
return [].concat(_toConsumableArray(entries), [{
|
|
110
|
+
element: element,
|
|
111
|
+
key: key
|
|
112
|
+
}]);
|
|
113
|
+
});
|
|
114
|
+
}, [nextKeyRef, setStaticElementEntries]);
|
|
115
|
+
var staticElementEntriesState = (0, _react.useMemo)(function () {
|
|
116
|
+
return Object.freeze([Object.freeze(staticElementEntries)]);
|
|
117
|
+
}, [staticElementEntries]);
|
|
118
|
+
var context = (0, _react.useMemo)(function () {
|
|
119
|
+
return {
|
|
120
|
+
markAllAsRendered: markAllAsRendered,
|
|
121
|
+
queueStaticElement: queueStaticElement,
|
|
122
|
+
staticElementEntriesState: staticElementEntriesState
|
|
123
|
+
};
|
|
124
|
+
}, [markAllAsRendered, queueStaticElement, staticElementEntriesState]);
|
|
125
|
+
return /*#__PURE__*/_react.default.createElement(_Context.default.Provider, {
|
|
126
|
+
value: context
|
|
127
|
+
}, /*#__PURE__*/_react.default.createElement(_LiveRegionTwinContainer.default, {
|
|
128
|
+
"aria-label": ariaLabel,
|
|
129
|
+
"aria-live": ariaLive,
|
|
130
|
+
"aria-roledescription": ariaRoleDescription,
|
|
131
|
+
className: className,
|
|
132
|
+
role: role
|
|
133
|
+
}), children);
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
LiveRegionTwinComposer.defaultProps = {
|
|
137
|
+
'aria-label': undefined,
|
|
138
|
+
'aria-live': DEFAULT_ARIA_LIVE,
|
|
139
|
+
'aria-roledescription': undefined,
|
|
140
|
+
children: undefined,
|
|
141
|
+
className: undefined,
|
|
142
|
+
fadeAfter: DEFAULT_FADE_AFTER,
|
|
143
|
+
role: undefined
|
|
144
|
+
};
|
|
145
|
+
LiveRegionTwinComposer.propTypes = {
|
|
146
|
+
'aria-label': _propTypes.default.string,
|
|
147
|
+
'aria-live': _propTypes.default.oneOf(['assertive', 'polite']),
|
|
148
|
+
'aria-roledescription': _propTypes.default.string,
|
|
149
|
+
children: _propTypes.default.any,
|
|
150
|
+
className: _propTypes.default.string,
|
|
151
|
+
fadeAfter: _propTypes.default.number,
|
|
152
|
+
role: _propTypes.default.string
|
|
153
|
+
};
|
|
154
|
+
var _default = LiveRegionTwinComposer;
|
|
155
|
+
exports.default = _default;
|
|
156
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vTGl2ZVJlZ2lvblR3aW5Db21wb3Nlci50c3giXSwibmFtZXMiOlsiREVGQVVMVF9BUklBX0xJVkUiLCJERUZBVUxUX0ZBREVfQUZURVIiLCJMaXZlUmVnaW9uVHdpbkNvbXBvc2VyIiwiYXJpYUxhYmVsIiwiYXJpYUxpdmUiLCJhcmlhUm9sZURlc2NyaXB0aW9uIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJmYWRlQWZ0ZXIiLCJyb2xlIiwic3RhdGljRWxlbWVudEVudHJpZXMiLCJzZXRTdGF0aWNFbGVtZW50RW50cmllcyIsImZhZGVBZnRlclJlZiIsIm1hcmtBbGxBc1JlbmRlcmVkVGltZW91dElkUmVmIiwibmV4dEtleVJlZiIsInN0YXRpY0VsZW1lbnRFbnRyaWVzUmVmIiwibWFya0FsbEFzUmVuZGVyZWQiLCJjdXJyZW50IiwibGVuZ3RoIiwiY2xlYXJUaW1lb3V0Iiwic2V0VGltZW91dCIsInF1ZXVlU3RhdGljRWxlbWVudCIsImVsZW1lbnQiLCJrZXkiLCJlbnRyaWVzIiwic3RhdGljRWxlbWVudEVudHJpZXNTdGF0ZSIsIk9iamVjdCIsImZyZWV6ZSIsImNvbnRleHQiLCJkZWZhdWx0UHJvcHMiLCJ1bmRlZmluZWQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJzdHJpbmciLCJvbmVPZiIsImFueSIsIm51bWJlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBSUE7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSxJQUFNQSxpQkFBaUIsR0FBRyxRQUExQjtBQUNBLElBQU1DLGtCQUFrQixHQUFHLElBQTNCOztBQTRCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBTUMsc0JBQXVELEdBQUcsU0FBMURBLHNCQUEwRCxPQVExRDtBQUFBLE1BUFVDLFNBT1YsUUFQSixZ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QyxJQUFBLEtBQUssRUFBRUc7QUFBdkMsa0JBQ0UsNkJBQUMsZ0NBQUQ7QUFDRSxrQkFBWXpCLFNBRGQ7QUFFRSxpQkFBV0MsUUFGYjtBQUdFLDRCQUFzQkMsbUJBSHhCO0FBSUUsSUFBQSxTQUFTLEVBQUVFLFNBSmI7QUFLRSxJQUFBLElBQUksRUFBRUU7QUFMUixJQURGLEVBUUdILFFBUkgsQ0FERjtBQVlELENBaEZEOztBQWtGQUosc0JBQXNCLENBQUMyQixZQUF2QixHQUFzQztBQUNwQyxnQkFBY0MsU0FEc0I7QUFFcEMsZUFBYTlCLGlCQUZ1QjtBQUdwQywwQkFBd0I4QixTQUhZO0FBSXBDeEIsRUFBQUEsUUFBUSxFQUFFd0IsU0FKMEI7QUFLcEN2QixFQUFBQSxTQUFTLEVBQUV1QixTQUx5QjtBQU1wQ3RCLEVBQUFBLFNBQVMsRUFBRVAsa0JBTnlCO0FBT3BDUSxFQUFBQSxJQUFJLEVBQUVxQjtBQVA4QixDQUF0QztBQVVBNUIsc0JBQXNCLENBQUM2QixTQUF2QixHQUFtQztBQUNqQyxnQkFBY0MsbUJBQVVDLE1BRFM7QUFFakMsZUFBYUQsbUJBQVVFLEtBQVYsQ0FBZ0IsQ0FBQyxXQUFELEVBQWMsUUFBZCxDQUFoQixDQUZvQjtBQUdqQywwQkFBd0JGLG1CQUFVQyxNQUhEO0FBSWpDM0IsRUFBQUEsUUFBUSxFQUFFMEIsbUJBQVVHLEdBSmE7QUFLakM1QixFQUFBQSxTQUFTLEVBQUV5QixtQkFBVUMsTUFMWTtBQU1qQ3pCLEVBQUFBLFNBQVMsRUFBRXdCLG1CQUFVSSxNQU5ZO0FBT2pDM0IsRUFBQUEsSUFBSSxFQUFFdUIsbUJBQVVDO0FBUGlCLENBQW5DO2VBVWUvQixzQiIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IEZDLCBQcm9wc1dpdGhDaGlsZHJlbiB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IExpdmVSZWdpb25Ud2luQ29udGFpbmVyIGZyb20gJy4vcHJpdmF0ZS9MaXZlUmVnaW9uVHdpbkNvbnRhaW5lcic7XG5pbXBvcnQgTGl2ZVJlZ2lvblR3aW5Db250ZXh0IGZyb20gJy4vcHJpdmF0ZS9Db250ZXh0JztcbmltcG9ydCB1c2VWYWx1ZVJlZiBmcm9tICcuLi8uLi9ob29rcy9pbnRlcm5hbC91c2VWYWx1ZVJlZic7XG5cbmltcG9ydCB0eXBlIHsgU3RhdGljRWxlbWVudCwgU3RhdGljRWxlbWVudEVudHJ5IH0gZnJvbSAnLi9wcml2YXRlL3R5cGVzJztcblxuY29uc3QgREVGQVVMVF9BUklBX0xJVkUgPSAncG9saXRlJztcbmNvbnN0IERFRkFVTFRfRkFERV9BRlRFUiA9IDEwMDA7XG5cbnR5cGUgTGl2ZVJlZ2lvblR3aW5Db21wb3NlclByb3BzID0gUHJvcHNXaXRoQ2hpbGRyZW48e1xuICAvKiogT3B0aW9uYWwgXCJhcmlhLWxhYmVsXCIgYXR0cmlidXRlIGZvciB0aGUgbGl2ZSByZWdpb24gdHdpbiBjb250YWluZXIuICovXG4gICdhcmlhLWxhYmVsJz86IHN0cmluZztcblxuICAvKiogXCJhcmlhLWxpdmVcIiBhdHRyaWJ1dGUgZm9yIHRoZSBsaXZlIHJlZ2lvbiB0d2luIGNvbnRhaW5lciwgZGVmYXVsdHMgdG8gYCdwb2xpdGUnYC4gKi9cbiAgJ2FyaWEtbGl2ZSc/OiAnYXNzZXJ0aXZlJyB8ICdwb2xpdGUnO1xuXG4gIC8qKiBPcHRpb25hbCBcImFyaWEtcm9sZWRlc2NyaXB0aW9uXCIgYXR0cmlidXRlIGZvciB0aGUgbGl2ZSByZWdpb24gdHdpbiBjb250YWluZXIuICovXG4gICdhcmlhLXJvbGVkZXNjcmlwdGlvbic/OiBzdHJpbmc7XG5cbiAgLyoqIE9wdGlvbmFsIFwiY2xhc3NOYW1lXCIgYXR0cmlidXRlIGZvciB0aGUgbGl2ZSByZWdpb24gdHdpbiBjb250YWluZXIuICovXG4gIGNsYXNzTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogU3RhdGljIGVsZW1lbnRzIHdpbGwgZmFkZSBvdXQgYWZ0ZXIgdGhpcyB0aW1lb3V0IHZhbHVlIHNwZWNpZmllZCBpbiBtaWxsaXNlY29uZHMsIGRlZmF1bHRzIHRvIGAxMDAwYC5cbiAgICpcbiAgICogV2hlbiBsb3dlcmluZyB0aGlzIHZhbHVlLCBtYWtlIHN1cmUgc2NyZWVuIHJlYWRlciBjYW4gY29udGludWUgdG8gcGljayB1cCBuZXcgc3RhdGljIGVsZW1lbnRzIGJlZm9yZSBmYWRpbmcgb3V0LlxuICAgKlxuICAgKiBJZiB0aGlzIHByb3AgaXMgdXBkYXRlZCwgaXQgd2lsbCBiZSByZWZsZWN0ZWQgaW4gbmV4dCBxdWV1ZWluZyBlbGVtZW50cy5cbiAgICovXG4gIGZhZGVBZnRlcj86IG51bWJlcjtcblxuICAvKiogT3B0aW9uYWwgXCJyb2xlXCIgYXR0cmlidXRlIGZvciB0aGUgbGl2ZSByZWdpb24gdHdpbiBjb250YWluZXIuICovXG4gIHJvbGU/OiBzdHJpbmc7XG59PjtcblxuLyoqXG4gKiBMaXZlIHJlZ2lvbiB0d2luIGlzIGFuIFVJIGNvbXBvbmVudCBmb3IgcXVldWVpbmcgdGV4dHMgb3IgZWxlbWVudHMgdG8gdGhlIHNjcmVlbiByZWFkZXIgdXNpbmdcbiAqIGEgY29udGFpbmVyIGVsZW1lbnQgd2l0aCBgYXJpYS1saXZlYCBhdHRyaWJ1dGUgc2V0LlxuICpcbiAqIEFmdGVyIHRoZSB0ZXh0IGlzIHJlbmRlcmVkIGFuZCBxdWV1ZWQsIGl0IHdpbGwgYmUgcmVtb3ZlZCB0byByZWR1Y2UgYnVyZGVuIG9uIHRoZSBET00gdHJlZS5cbiAqIEN1cnJlbnRseSwgd2UgYXNzdW1lIHRoZSBhc3Npc3RpdmUgdGVjaG5vbG9naWVzIHNob3VsZCBwaWNrIHVwIHRoZSB0ZXh0IHdpdGhpbiAxIHNlY29uZCBvZiByZW5kZXJpbmcuXG4gKiBUaGlzIHZhbHVlIGlzIGNvbmZpZ3VyYWJsZS5cbiAqXG4gKiBCeSBkZWZhdWx0LCB0aGUgbGl2ZSByZWdpb24gaXMgdmlzaWJsZS4gSWYgaXMgaXMgbm90IGRlc2lyYWJsZSwgdGhlIGNhbGxlciBjYW4gdXNlIGBjbGFzc05hbWVgIHByb3AgdG9cbiAqIGhpZGUgaXRzIHZpc3VhbHMuXG4gKi9cbmNvbnN0IExpdmVSZWdpb25Ud2luQ29tcG9zZXI6IEZDPExpdmVSZWdpb25Ud2luQ29tcG9zZXJQcm9wcz4gPSAoe1xuICAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCxcbiAgJ2FyaWEtbGl2ZSc6IGFyaWFMaXZlID0gREVGQVVMVF9BUklBX0xJVkUsXG4gICdhcmlhLXJvbGVkZXNjcmlwdGlvbic6IGFyaWFSb2xlRGVzY3JpcHRpb24sXG4gIGNoaWxkcmVuLFxuICBjbGFzc05hbWUsXG4gIGZhZGVBZnRlciA9IERFRkFVTFRfRkFERV9BRlRFUixcbiAgcm9sZVxufSkgPT4ge1xuICBjb25zdCBbc3RhdGljRWxlbWVudEVudHJpZXMsIHNldFN0YXRpY0VsZW1lbnRFbnRyaWVzXSA9IHVzZVN0YXRlPFN0YXRpY0VsZW1lbnRFbnRyeVtdPihbXSk7XG4gIGNvbnN0IGZhZGVBZnRlclJlZiA9IHVzZVZhbHVlUmVmKGZhZGVBZnRlcik7XG4gIGNvbnN0IG1hcmtBbGxBc1JlbmRlcmVkVGltZW91dElkUmVmID0gdXNlUmVmPGFueT4oKTtcbiAgY29uc3QgbmV4dEtleVJlZiA9IHVzZVJlZjxudW1iZXI+KDEpO1xuXG4gIGNvbnN0IHN0YXRpY0VsZW1lbnRFbnRyaWVzUmVmID0gdXNlVmFsdWVSZWYoc3RhdGljRWxlbWVudEVudHJpZXMpO1xuXG4gIC8vIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGJ5IGFuIGVmZmVjdCBob29rIGB1c2VNYXJrQWxsQXNSZW5kZXJlZEVmZmVjdGAsIGl0IG11c3QgYmUgZGVzaWduZWQgd2l0aCBjb252ZXJnaW5nIGluIG1pbmQuXG4gIC8vIFRvIHByZXZlbnQgaW5maW5pdGUgcmVuZGVyIGxvb3AsIGFmdGVyIG11bHRpcGxlIGNhbGxzIHRvIHRoaXMgZnVuY3Rpb24sIGl0IHNob3VsZCBldmVudHVhbGx5IG5vLW9wLlxuICBjb25zdCBtYXJrQWxsQXNSZW5kZXJlZCA9IHVzZUNhbGxiYWNrPCgpID0+IHZvaWQ+KCgpID0+IHtcbiAgICBpZiAoIXN0YXRpY0VsZW1lbnRFbnRyaWVzUmVmLmN1cnJlbnQubGVuZ3RoKSB7XG4gICAgICAvLyBOb3RoaW5nIHRvIHJlbW92ZS5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBXaGVuIHJlbW92aW5nIGVhY2ggZWxlbWVudCBvbmUtYnktb25lIGJhc2VkIG9uIGFuIGluZGl2aWR1YWwgdGltZW91dCwgTmFycmF0b3Igd291bGQgbmFycmF0ZSB0aGVtIHR3aWNlIG9jY2FzaW9uYWxseS5cbiAgICAvLyBQb3NzaWJseSBpdCB0aGluayBzb21lIGVsZW1lbnRzIHRoYXQgaXMgbm90IHJlbW92ZWQgZHVyaW5nIHRoZSBjdXJyZW50IGN5Y2xlLCBhcmUgbmV3IGVsZW1lbnRzIGFuZCBxdWV1ZWQgdGhlbSB0d2ljZS5cbiAgICAvLyBUaHVzLCB3ZSBhcmUgcmVtb3ZpbmcgYWxsIGF0IG9uY2UgdG8gcHJldmVudCBidWdzIGluIE5hcnJhdG9yLlxuICAgIG1hcmtBbGxBc1JlbmRlcmVkVGltZW91dElkUmVmLmN1cnJlbnQgJiYgY2xlYXJUaW1lb3V0KG1hcmtBbGxBc1JlbmRlcmVkVGltZW91dElkUmVmLmN1cnJlbnQpO1xuXG4gICAgbWFya0FsbEFzUmVuZGVyZWRUaW1lb3V0SWRSZWYuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gV2UgYXJlIHBsYXlpbmcgc2FmZSBieSB1c2luZyB2YWx1ZSByZWYgdG8gY2hlY2sgaXRzIGxlbmd0aCBoZXJlLlxuICAgICAgLy8gSWYgd2UgYXJlIGNlcnRhaW4gdGhhdCBgc2V0U3RhdGljRWxlbWVudHMoZW1wdHlBcnJheSA9PiBlbXB0eUFycmF5KWAgaXMgYSBuby1vcCxcbiAgICAgIC8vIHdlIGNvdWxkIHJlcGxhY2UgaXQgd2l0aCBqdXN0IHRoZSBzZXR0ZXIgZnVuY3Rpb24uXG4gICAgICBzdGF0aWNFbGVtZW50RW50cmllc1JlZi5jdXJyZW50Lmxlbmd0aCAmJiBzZXRTdGF0aWNFbGVtZW50RW50cmllcyhbXSk7XG4gICAgfSwgZmFkZUFmdGVyUmVmLmN1cnJlbnQpO1xuICB9LCBbZmFkZUFmdGVyUmVmLCBtYXJrQWxsQXNSZW5kZXJlZFRpbWVvdXRJZFJlZiwgc2V0U3RhdGljRWxlbWVudEVudHJpZXMsIHN0YXRpY0VsZW1lbnRFbnRyaWVzUmVmXSk7XG5cbiAgLy8gV2hlbiB0aGlzIGNvbXBvbmVudCBpcyB1bm1vdW50aW5nLCBtYWtlIHN1cmUgYWxsIGZ1dHVyZSBgc2V0VGltZW91dGAgYXJlIGNsZWFyZWQgYW5kIHNob3VsZCBub3QgYmUgZmlyZWQuXG4gIHVzZUVmZmVjdChcbiAgICAoKSA9PiAoKSA9PiBtYXJrQWxsQXNSZW5kZXJlZFRpbWVvdXRJZFJlZi5jdXJyZW50ICYmIGNsZWFyVGltZW91dChtYXJrQWxsQXNSZW5kZXJlZFRpbWVvdXRJZFJlZi5jdXJyZW50KSxcbiAgICBbbWFya0FsbEFzUmVuZGVyZWRUaW1lb3V0SWRSZWZdXG4gICk7XG5cbiAgY29uc3QgcXVldWVTdGF0aWNFbGVtZW50ID0gdXNlQ2FsbGJhY2s8KHN0YXRpY0VsZW1lbnQ6IFN0YXRpY0VsZW1lbnQpID0+IHZvaWQ+KFxuICAgIChlbGVtZW50OiBTdGF0aWNFbGVtZW50KTogdm9pZCA9PiB7XG4gICAgICBjb25zdCBrZXkgPSBuZXh0S2V5UmVmLmN1cnJlbnQ7XG5cbiAgICAgIG5leHRLZXlSZWYuY3VycmVudCA9IG5leHRLZXlSZWYuY3VycmVudCArIDE7XG5cbiAgICAgIHNldFN0YXRpY0VsZW1lbnRFbnRyaWVzKGVudHJpZXMgPT4gWy4uLmVudHJpZXMsIHsgZWxlbWVudCwga2V5IH1dKTtcbiAgICB9LFxuICAgIFtuZXh0S2V5UmVmLCBzZXRTdGF0aWNFbGVtZW50RW50cmllc11cbiAgKTtcblxuICBjb25zdCBzdGF0aWNFbGVtZW50RW50cmllc1N0YXRlID0gdXNlTWVtbzxyZWFkb25seSBbcmVhZG9ubHkgU3RhdGljRWxlbWVudEVudHJ5W11dPihcbiAgICAoKSA9PiBPYmplY3QuZnJlZXplKFtPYmplY3QuZnJlZXplKHN0YXRpY0VsZW1lbnRFbnRyaWVzKV0pIGFzIHJlYWRvbmx5IFtyZWFkb25seSBTdGF0aWNFbGVtZW50RW50cnlbXV0sXG4gICAgW3N0YXRpY0VsZW1lbnRFbnRyaWVzXVxuICApO1xuXG4gIGNvbnN0IGNvbnRleHQgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBtYXJrQWxsQXNSZW5kZXJlZCxcbiAgICAgIHF1ZXVlU3RhdGljRWxlbWVudCxcbiAgICAgIHN0YXRpY0VsZW1lbnRFbnRyaWVzU3RhdGVcbiAgICB9KSxcbiAgICBbbWFya0FsbEFzUmVuZGVyZWQsIHF1ZXVlU3RhdGljRWxlbWVudCwgc3RhdGljRWxlbWVudEVudHJpZXNTdGF0ZV1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxMaXZlUmVnaW9uVHdpbkNvbnRleHQuUHJvdmlkZXIgdmFsdWU9e2NvbnRleHR9PlxuICAgICAgPExpdmVSZWdpb25Ud2luQ29udGFpbmVyXG4gICAgICAgIGFyaWEtbGFiZWw9e2FyaWFMYWJlbH1cbiAgICAgICAgYXJpYS1saXZlPXthcmlhTGl2ZX1cbiAgICAgICAgYXJpYS1yb2xlZGVzY3JpcHRpb249e2FyaWFSb2xlRGVzY3JpcHRpb259XG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgICByb2xlPXtyb2xlfVxuICAgICAgLz5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0xpdmVSZWdpb25Ud2luQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcbn07XG5cbkxpdmVSZWdpb25Ud2luQ29tcG9zZXIuZGVmYXVsdFByb3BzID0ge1xuICAnYXJpYS1sYWJlbCc6IHVuZGVmaW5lZCxcbiAgJ2FyaWEtbGl2ZSc6IERFRkFVTFRfQVJJQV9MSVZFLFxuICAnYXJpYS1yb2xlZGVzY3JpcHRpb24nOiB1bmRlZmluZWQsXG4gIGNoaWxkcmVuOiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZTogdW5kZWZpbmVkLFxuICBmYWRlQWZ0ZXI6IERFRkFVTFRfRkFERV9BRlRFUixcbiAgcm9sZTogdW5kZWZpbmVkXG59O1xuXG5MaXZlUmVnaW9uVHdpbkNvbXBvc2VyLnByb3BUeXBlcyA9IHtcbiAgJ2FyaWEtbGFiZWwnOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAnYXJpYS1saXZlJzogUHJvcFR5cGVzLm9uZU9mKFsnYXNzZXJ0aXZlJywgJ3BvbGl0ZSddKSxcbiAgJ2FyaWEtcm9sZWRlc2NyaXB0aW9uJzogUHJvcFR5cGVzLnN0cmluZyxcbiAgY2hpbGRyZW46IFByb3BUeXBlcy5hbnksXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgZmFkZUFmdGVyOiBQcm9wVHlwZXMubnVtYmVyLFxuICByb2xlOiBQcm9wVHlwZXMuc3RyaW5nXG59O1xuXG5leHBvcnQgZGVmYXVsdCBMaXZlUmVnaW9uVHdpbkNvbXBvc2VyO1xuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { StaticElement, StaticElementEntry } from './types';
|
|
2
|
+
declare type LiveRegionTwinContextType = {
|
|
3
|
+
markAllAsRendered: () => void;
|
|
4
|
+
queueStaticElement: (element: StaticElement) => void;
|
|
5
|
+
staticElementEntriesState: readonly [readonly StaticElementEntry[]];
|
|
6
|
+
};
|
|
7
|
+
declare const LiveRegionTwinContext: import("react").Context<LiveRegionTwinContextType>;
|
|
8
|
+
export default LiveRegionTwinContext;
|
|
9
|
+
export type { LiveRegionTwinContextType };
|
|
10
|
+
//# sourceMappingURL=Context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/providers/LiveRegionTwin/private/Context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEjE,aAAK,yBAAyB,GAAG;IAC/B,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,kBAAkB,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IACrD,yBAAyB,EAAE,SAAS,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;CACrE,CAAC;AAEF,QAAA,MAAM,qBAAqB,oDAAsD,CAAC;AAElF,eAAe,qBAAqB,CAAC;AAErC,YAAY,EAAE,yBAAyB,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var LiveRegionTwinContext = /*#__PURE__*/(0, _react.createContext)(undefined);
|
|
11
|
+
var _default = LiveRegionTwinContext;
|
|
12
|
+
exports.default = _default;
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvTGl2ZVJlZ2lvblR3aW4vcHJpdmF0ZS9Db250ZXh0LnRzIl0sIm5hbWVzIjpbIkxpdmVSZWdpb25Ud2luQ29udGV4dCIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQVVBLElBQU1BLHFCQUFxQixnQkFBRywwQkFBeUNDLFNBQXpDLENBQTlCO2VBRWVELHFCIiwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFN0YXRpY0VsZW1lbnQsIFN0YXRpY0VsZW1lbnRFbnRyeSB9IGZyb20gJy4vdHlwZXMnO1xuXG50eXBlIExpdmVSZWdpb25Ud2luQ29udGV4dFR5cGUgPSB7XG4gIG1hcmtBbGxBc1JlbmRlcmVkOiAoKSA9PiB2b2lkO1xuICBxdWV1ZVN0YXRpY0VsZW1lbnQ6IChlbGVtZW50OiBTdGF0aWNFbGVtZW50KSA9PiB2b2lkO1xuICBzdGF0aWNFbGVtZW50RW50cmllc1N0YXRlOiByZWFkb25seSBbcmVhZG9ubHkgU3RhdGljRWxlbWVudEVudHJ5W11dO1xufTtcblxuY29uc3QgTGl2ZVJlZ2lvblR3aW5Db250ZXh0ID0gY3JlYXRlQ29udGV4dDxMaXZlUmVnaW9uVHdpbkNvbnRleHRUeXBlPih1bmRlZmluZWQpO1xuXG5leHBvcnQgZGVmYXVsdCBMaXZlUmVnaW9uVHdpbkNvbnRleHQ7XG5cbmV4cG9ydCB0eXBlIHsgTGl2ZVJlZ2lvblR3aW5Db250ZXh0VHlwZSB9O1xuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { VFC } from 'react';
|
|
2
|
+
declare type LiveRegionTwinContainerProps = {
|
|
3
|
+
'aria-label'?: string;
|
|
4
|
+
'aria-live': 'assertive' | 'polite';
|
|
5
|
+
'aria-roledescription'?: string;
|
|
6
|
+
className?: string;
|
|
7
|
+
role?: string;
|
|
8
|
+
};
|
|
9
|
+
declare const LiveRegionTwinContainer: VFC<LiveRegionTwinContainerProps>;
|
|
10
|
+
export default LiveRegionTwinContainer;
|
|
11
|
+
//# sourceMappingURL=LiveRegionTwinContainer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiveRegionTwinContainer.d.ts","sourceRoot":"","sources":["../../../../src/providers/LiveRegionTwin/private/LiveRegionTwinContainer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAKjC,aAAK,4BAA4B,GAAG;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,WAAW,GAAG,QAAQ,CAAC;IACpC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAGF,QAAA,MAAM,uBAAuB,EAAE,GAAG,CAAC,4BAA4B,CA2B9D,CAAC;AAmBF,eAAe,uBAAuB,CAAC"}
|